-
Notifications
You must be signed in to change notification settings - Fork 28
Expand file tree
/
Copy pathintl_en.arb
More file actions
1758 lines (1758 loc) · 87.4 KB
/
Copy pathintl_en.arb
File metadata and controls
1758 lines (1758 loc) · 87.4 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
{
"@@locale": "en",
"backToHome": "Back to Home",
"newOrder": "Your offer has been published! Please wait until another user picks your order. It will be available for {expiration_hours} hours. You can cancel this order before another user picks it up by executing: cancel.",
"@newOrder": {
"placeholders": {
"expiration_hours": {
"type": "String",
"description": "The expiration time in hours"
}
}
},
"canceled": "You have canceled the order ID: {id}.",
"payInvoice": "Please pay this hold invoice of {amount} Sats for {fiat_code} {fiat_amount} to start the operation. If you do not pay it within {expiration_seconds} minutes, the trade will be canceled.",
"@payInvoice": {
"placeholders": {
"amount": {
"type": "String",
"description": "The amount of satoshis"
},
"expiration_seconds": {
"type": "int",
"description": "The expiration time in minutes"
},
"fiat_amount": {
"type": "String",
"description": "The fiat amount"
},
"fiat_code": {
"type": "String",
"description": "The fiat currency code"
}
}
},
"addInvoice": "Please send me an invoice for {amount} satoshis equivalent to {fiat_code} {fiat_amount}. This is where I will send the funds upon trade completion. If you don't provide the invoice within {expiration_seconds} minutes, the trade will be canceled.",
"@addInvoice": {
"placeholders": {
"amount": {
"type": "String",
"description": "The amount of satoshis"
},
"expiration_seconds": {
"type": "int",
"description": "The expiration time in minutes"
},
"fiat_amount": {
"type": "String",
"description": "The fiat amount"
},
"fiat_code": {
"type": "String",
"description": "The fiat currency code"
}
}
},
"addInvoicePaymentFailed": "The payment to your previous invoice could not be completed. Please send me a new invoice for {amount} satoshis equivalent to {fiat_amount} {fiat_code} to complete the payment.",
"@addInvoicePaymentFailed": {
"placeholders": {
"amount": {
"type": "String",
"description": "The amount of satoshis"
},
"fiat_amount": {
"type": "String",
"description": "The fiat amount"
},
"fiat_code": {
"type": "String",
"description": "The fiat currency code"
}
}
},
"waitingSellerToPay": "Please wait. I’ve sent a payment request to the seller to send the Sats for the order ID {id}. If the seller doesn’t complete the payment within {expiration_seconds} minutes, the trade will be canceled.",
"@waitingSellerToPay": {
"placeholders": {
"expiration_seconds": {
"type": "int",
"description": "The expiration time in minutes"
},
"id": {
"type": "String",
"description": "The order ID"
}
}
},
"orderTakenWaitingCounterpart": "Your order has been taken by another user. You must wait for them to decide if they want to continue. If they accept, I will notify you to complete your part. For now you don't need to do anything.\nIf they don't respond in {expiration_seconds} minutes, the order will be available again for other users to take.",
"@orderTakenWaitingCounterpart": {
"placeholders": {
"expiration_seconds": {
"type": "int",
"description": "The expiration time in minutes"
}
}
},
"waitingBuyerInvoice": "Payment received! Your Sats are now 'held' in your wallet. I’ve requested the buyer to provide an invoice. If they don’t do so within {expiration_seconds} minutes, your Sats will return to your wallet, and the trade will be canceled.",
"@waitingBuyerInvoice": {
"placeholders": {
"expiration_seconds": {
"type": "int",
"description": "The expiration time in minutes"
}
}
},
"buyerInvoiceAccepted": "The invoice has been successfully saved.",
"holdInvoicePaymentAccepted": "Contact the seller {seller_name} to arrange how to send {fiat_code} {fiat_amount} using {payment_method}. Once you’ve sent the fiat money, notify me by pressing the Fiat Sent button.",
"buyerTookOrder": "Contact the buyer {buyer_name} to inform them how to send {fiat_code} {fiat_amount} through {payment_method}. You’ll be notified when the buyer confirms the fiat payment. Afterward, verify if it has arrived. If the buyer does not respond, you can initiate a cancellation or a dispute. Remember, an administrator will NEVER contact you to resolve your order unless you open a dispute first.",
"fiatSentOkBuyer": "I have informed {seller_name} that you sent the fiat money. If the seller confirms receipt, they will release the funds. If they refuse, you can open a dispute.",
"fiatSentOkSeller": "{buyer_name} has informed me that the fiat money has already been sent to you. Once you’ve confirmed receipt, please release the satoshis. By doing so, they will be transferred to the buyer and the action cannot be undone. If you wish to proceed, press the Release button.",
"released": "{seller_name} has released the Sats! Expect your invoice to be paid shortly. Ensure your wallet is online to receive via Lightning Network.",
"purchaseCompleted": "Your purchase of Bitcoin has been completed successfully. I have paid your invoice; enjoy sound money!",
"holdInvoicePaymentSettled": "Your Sats sale has been completed after confirming the payment from {buyer_name}.",
"rate": "RATE",
"rateReceived": "Rating successfully saved!",
"cooperativeCancelInitiatedByYou": "You have initiated the cancellation of the order ID: {id}. Your counterparty must agree. If they do not respond, you can open a dispute. Note that no administrator will contact you regarding this cancellation unless you open a dispute first.",
"cooperativeCancelInitiatedByPeer": "Your counterparty wants to cancel order ID: {id}. If you agree, please send me cancel-order-message. Note that no administrator will contact you regarding this cancellation unless you open a dispute first.",
"cooperativeCancelAccepted": "Order {id} has been successfully canceled!",
"disputeInitiatedByYou": "You have initiated a dispute for order ID: {id}. A solver will be assigned soon. Once assigned, I will share their npub with you, and only they will be able to assist you. Your dispute ID is: {dispute_id}.",
"@disputeInitiatedByYou": {
"placeholders": {
"id": {
"type": "String",
"example": "abc123"
},
"dispute_id": {
"type": "String",
"example": "dispute-456"
}
}
},
"disputeInitiatedByPeer": "Your counterparty has initiated a dispute for order ID: {id}. A solver will be assigned soon. Once assigned, I will share their npub with you, and only they will be able to assist you. Your dispute ID is: {dispute_id}.",
"@disputeInitiatedByPeer": {
"placeholders": {
"id": {
"type": "String",
"example": "abc123"
},
"dispute_id": {
"type": "String",
"example": "dispute-456"
}
}
},
"adminTookDisputeAdmin": "Here are the details of the dispute order you have taken: {details}. You need to determine which user is correct and decide whether to cancel or complete the order. Please note that your decision will be final and cannot be reversed.",
"adminTookDisputeUsers": "A dispute resolver has been assigned to handle your dispute. They will contact you through the app.",
"adminCanceledAdmin": "You have canceled the order ID: {id}.",
"adminCanceledUsers": "Admin has canceled the order ID: {id}.",
"adminSettledAdmin": "You have completed the order ID: {id}.",
"adminSettledUsers": "Admin has completed the order ID: {id}.",
"paymentFailed": "The payment attempt to your invoice has failed. I will retry {payment_attempts} more times, with an interval of {payment_retries_interval} minutes between each attempt. Please ensure your wallet is online to complete the payment.",
"paymentFailedText": "Payment Failed",
"invoiceUpdated": "The invoice has been successfully updated!",
"holdInvoicePaymentCanceled": "The invoice was canceled; your Sats are available in your wallet again.",
"cantDo": "You are not allowed to {action} for this order!",
"adminAddSolver": "You have successfully added the solver {npub}.",
"invalidSignature": "The action cannot be completed because the signature is invalid.",
"invalidTradeIndex": "The trade index is not valid.",
"invalidAmount": "The provided amount is invalid. Please verify it and try again.",
"invalidInvoice": "The provided Lightning invoice is invalid. Please check the invoice details and try again.",
"invalidPaymentRequest": "The payment request is invalid or cannot be processed.",
"invalidPeer": "You are not authorized to perform this action.",
"invalidRating": "The rating value is invalid or out of range.",
"invalidTextMessage": "The text message is invalid or contains prohibited content.",
"invalidOrderKind": "The order kind is invalid.",
"invalidOrderStatus": "The action cannot be completed due to the current order status.",
"invalidPubkey": "The action cannot be completed because the public key is invalid.",
"invalidParameters": "The action cannot be completed due to invalid parameters. Please review the provided values and try again.",
"orderAlreadyCanceled": "The action cannot be completed because the order has already been canceled.",
"cantCreateUser": "The Mostro instance could not create your new user, please try again later.",
"isNotYourOrder": "This order does not belong to you.",
"notAllowedByStatus": "This action is not allowed in the current state.",
"outOfRangeFiatAmount": "The requested fiat amount is outside the acceptable range.",
"outOfRangeSatsAmount": "The Sats amount is out of the allowed range.",
"isNotYourDispute": "This dispute is not assigned to you.",
"disputeCreationError": "A dispute cannot be created for this order.",
"notFound": "The requested dispute could not be found.",
"invalidDisputeStatus": "The dispute status is invalid.",
"invalidAction": "The requested action is invalid.",
"invalidFiatCurrency": "This Mostro instance doesn't accept the selected currency, try another instance",
"pendingOrderExists": "You already have an order waiting for you, you must complete it or cancel it before taking another one.",
"login": "Login",
"register": "Register",
"pin": "PIN",
"pleaseEnterPin": "Please enter your PIN",
"pleaseEnterPrivateKey": "Please enter a private key",
"invalidPrivateKeyFormat": "Invalid private key format",
"privateKeyLabel": "Private Key (nsec or hex)",
"pinMustBeAtLeast4Digits": "PIN must be at least 4 digits",
"confirmPin": "Confirm PIN",
"pinsDoNotMatch": "PINs do not match",
"useBiometrics": "Use Biometrics",
"generateNewKey": "Generate New Key",
"welcomeHeading": "NO-KYC P2P Lightning\nexchange on top of\nnostr",
"welcomeDescription": "Peer-to-peer Lightning Network platform over nostr",
"registerButton": "REGISTER",
"skipForNow": "Skip for now",
"noOrdersAvailable": "No orders available",
"tryChangingFilters": "Try changing filter settings or check back later",
"buyBtc": "BUY BTC",
"sellBtc": "SELL BTC",
"filter": "FILTER",
"statusFilter": "Status",
"allStatuses": "All",
"all": "All",
"statusPending": "Pending",
"statusWaitingPayment": "Waiting-Payment",
"statusWaitingBuyerInvoice": "Waiting-Buyer-Invoice",
"statusActive": "Active",
"statusFiatSent": "Fiat-Sent",
"statusSuccess": "Success",
"statusCanceled": "Canceled",
"statusSettledHoldInvoice": "Paying sats",
"offersCount": "{count} offers",
"@offersCount": {
"placeholders": {
"count": {
"type": "String"
}
}
},
"creatingNewOrder": "CREATING NEW ORDER",
"enterSatsAmountBuy": "Enter the Sats amount you want to Buy",
"enterSatsAmountSell": "Enter the Sats amount you want to Sell",
"enterSatsAmount": "Enter sats amount",
"pleaseEnterSatsAmount": "Please enter sats amount",
"pleaseEnterNumbersOnly": "Please enter numbers only",
"pleaseSelectCurrency": "Please select a currency",
"pleaseSelectPaymentMethod": "Please select at least one payment method",
"error": "Error",
"ok": "OK",
"cancel": "Cancel",
"canceledStatus": "Canceled",
"cancelingStatus": "Canceling",
"cooperativelyCanceledStatus": "Cooperative cancellation",
"canceledByAdminStatus": "Order canceled by an administrator",
"submit": "Submit",
"settings": "Settings",
"currency": "Currency",
"setDefaultFiatCurrency": "Set your default fiat currency",
"defaultFiatCurrency": "Default Fiat Currency",
"setDefaultLightningAddress": "Set your default lightning address",
"defaultLightningAddress": "Default Lightning Address",
"lightningAddressUsed": "Using your configured Lightning address",
"relays": "Relays",
"selectNostrRelays": "Select the Nostr relays you connect to",
"addRelay": "Add Relay",
"mostro": "Mostro",
"enterMostroPublicKey": "Enter the public key of the Mostro you will use",
"mostroPubkey": "Mostro Pubkey",
"orderBook": "Order Book",
"myTrades": "My Trades",
"chat": "Chat",
"navigateToLabel": "Navigate to {label}",
"errorLoadingTrades": "Error loading trades",
"retry": "Retry",
"noTradesAvailable": "No trades available for this type",
"welcomeToMostroMobile": "Trade Bitcoin freely — no KYC",
"discoverSecurePlatform": "Mostro is a peer-to-peer exchange that lets you trade Bitcoin for any currency and payment method — no KYC, and no need to give your data to anyone.\n\nIt's built on Nostr, which makes it censorship-resistant. No one can stop you from trading.",
"easyOnboarding": "Privacy by default",
"guidedWalkthroughSimple": "Mostro generates a new identity for every exchange, so your trades can't be linked.\n\nYou can also decide how private you want to be:\n\n• Reputation mode – Lets others see your successful trades and trust level.\n\n• Full privacy mode – No reputation is built, but your activity is completely anonymous.\n\nSwitch modes anytime from the Account screen, where you should also save your secret words — they're the only way to recover your account.",
"tradeWithConfidence": "Security at every step",
"seamlessPeerToPeer": "Mostro uses Hold Invoices: sats stay in the seller's wallet until the end of the trade. This protects both sides.\n\nThe app is also designed to be intuitive and easy for all kinds of users.",
"encryptedChat": "Fully encrypted chat",
"encryptedChatDescription": "Each trade has its own private chat, end-to-end encrypted. Only the two users involved can read it.\n\nIn case of a dispute, you can give the shared key to an admin to help resolve the issue.",
"takeAnOffer": "Take an offer",
"takeAnOfferDescription": "Browse the order book, choose an offer that works for you, and follow the trade flow step by step.\n\nYou'll be able to check the other user's profile, chat securely, and complete the trade with ease.",
"cantFindWhatYouNeed": "Can't find what you need?",
"createYourOwnOffer": "You can also create your own offer and wait for someone to take it.\n\nSet the amount and preferred payment method — Mostro handles the rest.",
"skip": "Skip",
"done": "Done",
"@_comment_trade_detail_screen_new": "New Trade Detail Screen Strings",
"orderDetailsTitle": "ORDER DETAILS",
"buyOrderDetailsTitle": "BUY ORDER DETAILS",
"sellOrderDetailsTitle": "SELL ORDER DETAILS",
"someoneIsSellingTitle": "Someone is Selling Sats",
"someoneIsBuyingTitle": "Someone is Buying Sats",
"someoneIsSellingFixedTitle": "Someone is Selling {sats} Sats",
"someoneIsBuyingFixedTitle": "Someone is Buying {sats} Sats",
"youCreatedOfferMessage": "You created this offer. Below are the details of your offer. Wait for another user to take it. It will be published for {expiration_hours} hours. You can cancel it at any time using the 'Cancel' button.",
"@youCreatedOfferMessage": {
"placeholders": {
"expiration_hours": {
"type": "String",
"description": "The expiration time in hours"
}
}
},
"youAreSellingTitle": "You are selling{sats} sats",
"youAreBuyingTitle": "You are buying{sats} sats",
"canceledTradeTitle": "Trade of{sats} sats",
"forAmount": "for {amount}",
"timeLeftLabel": "Time Left: {time}",
"@timeLeftLabel": {
"placeholders": {
"time": {
"type": "String"
}
}
},
"cancelPendingButton": "CANCEL PENDING",
"acceptCancelButton": "CANCEL",
"disputeButton": "DISPUTE",
"fiatSentButton": "FIAT SENT",
"completePurchaseButton": "COMPLETE PURCHASE",
"paymentMethodLabel": "Payment Method",
"createdOnLabel": "Created On",
"orderIdLabel": "Order ID",
"creatorReputationLabel": "Creator's Reputation",
"ratingTitleLabel": "Rating",
"reviewsLabel": "Reviews",
"daysLabel": "Days",
"cancelTradeDialogTitle": "Cancel Trade",
"cooperativeCancelDialogMessage": "If you confirm, you will start a cooperative cancellation with your counterparty.",
"acceptCancelDialogMessage": "If you confirm, you will accept the cooperative cancellation initiated by your counterparty.",
"orderIdCopiedMessage": "Order ID copied to clipboard",
"disputeTradeDialogTitle": "Start Dispute",
"disputeTradeDialogContent": "You are about to start a dispute with your counterparty. Do you want to continue?",
"disputeCreatedSuccessfully": "Dispute created successfully",
"disputeCreationFailed": "Failed to create dispute",
"disputeCreationErrorWithMessage": "Error creating dispute: {error}",
"@disputeCreationErrorWithMessage": {
"placeholders": {
"error": {
"type": "String"
}
}
},
"typeToAdd": "Type to add...",
"noneSelected": "None selected",
"fiatCurrencies": "Fiat currencies",
"paymentMethods": "Payment methods",
"invalidMessageMissingId": "Invalid message: missing ID",
"invalidImageMessageFormat": "Invalid image message format",
"securityErrorInvalidChars": "Security error: Invalid characters in sanitized filename",
"ratingLabel": "Rating: {rating}",
"buyingBitcoin": "Buying Bitcoin",
"sellingBitcoin": "Selling Bitcoin",
"bankTransfer": "Bank Transfer",
"cashInPerson": "Cash in person",
"other": "Other",
"createdByYou": "Created by you",
"takenByYou": "Taken by you",
"active": "Active",
"pending": "Pending",
"waitingPayment": "Waiting payment",
"waitingInvoice": "Waiting invoice",
"fiatSent": "Fiat-sent",
"settled": "Settled",
"completed": "Completed",
"dispute": "Dispute",
"expired": "Expired",
"success": "Success",
"statusDetailActive": "Active order",
"statusDetailPending": "Pending order",
"statusDetailWaitingPayment": "Waiting for seller payment",
"statusDetailWaitingInvoice": "Waiting for buyer invoice",
"statusDetailFiatSent": "Fiat sent",
"statusDetailPaymentFailed": "Payment failed",
"statusDetailCanceled": "Order canceled",
"statusDetailCooperativelyCanceled": "Cooperative cancellation",
"statusDetailCanceledByAdmin": "Order canceled by an administrator",
"statusDetailSettled": "Sats released by an administrator",
"statusDetailCompleted": "Sats released by an administrator",
"statusDetailDispute": "Order in dispute",
"statusDetailExpired": "Order expired",
"statusDetailSuccess": "Successful order",
"statusDetailSettledHoldInvoice": "Paying sats",
"orderIdCopied": "Order ID copied to clipboard",
"noPaymentMethod": "No payment method",
"youAreSellingText": "You are selling{sats} sats for {amount} {price} {premium}",
"youAreBuyingText": "You are buying{sats} sats for {amount} {price} {premium}",
"withPremium": " with a +{premium}% premium",
"withDiscount": " with a {premium}% discount",
"createdOn": "Created on:",
"paymentMethodsLabel": "Payment methods",
"cancelTrade": "Cancel Trade",
"areYouSureCancel": "Are you sure you want to cancel this trade?",
"cooperativeCancelMessage": "If you confirm, you will start a cooperative cancellation with your counterparty.",
"acceptCancelMessage": "If you confirm, you will accept the cooperative cancellation initiated by your counterparty.",
"releaseTradeDialogTitle": "Release Bitcoin",
"areYouSureRelease": "Are you sure you want to release the Satoshis to the buyer?",
"confirm": "Confirm",
"yes": "Yes",
"no": "No",
"buy": "BUY",
"sell": "SELL",
"buying": "BUYING",
"selling": "SELLING",
"youAreBuying": "YOU ARE BUYING",
"youAreSelling": "YOU ARE SELLING",
"marketPrice": "Market Price",
"forSats": "For {amount} sats",
"@forSats": {
"placeholders": {
"amount": {
"type": "String"
}
}
},
"hoursAgo": "{count} hours ago",
"@hoursAgo": {
"placeholders": {
"count": {
"type": "String"
}
}
},
"reviews": "reviews",
"daysOld": "days old",
"reviewsAndDaysOld": "{reviews} reviews • {days} days old",
"@reviewsAndDaysOld": {
"placeholders": {
"reviews": {
"type": "String"
},
"days": {
"type": "String"
}
}
},
"account": "Account",
"about": "About",
"walkthrough": "Walkthrough",
"version": "Version",
"githubRepository": "GitHub Repository",
"commitHash": "Commit Hash",
"appInformation": "App Information",
"mostroNode": "Mostro Node",
"generalInfo": "General Info",
"pubkey": "Pubkey",
"mostroVersion": "Version",
"expirationHours": "Expiration Hours",
"expirationSeconds": "Expiration Seconds",
"fee": "Fee",
"proofOfWork": "Proof of Work",
"holdInvoiceExpirationWindow": "Hold Invoice Expiration Window",
"holdInvoiceCltvDelta": "Hold Invoice CLTV Delta",
"invoiceExpirationWindow": "Invoice Expiration Window",
"@_comment_order_creation": "Order Creation Form Strings",
"youWantToBuyBitcoin": "You want to buy Bitcoin",
"youWantToSellBitcoin": "You want to sell Bitcoin",
"lightningAddressOptional": "Lightning Address (optional)",
"enterLightningAddress": "Enter lightning address",
"enterAmountHint": "Enter amount",
"pleaseEnterAmount": "Please enter an amount",
"pleaseEnterValidAmount": "Please enter a valid amount",
"fiatAmountTooHigh": "The fiat amount is too high. The Mostro node you are using allows between {minAmount} and {maxAmount} sats.",
"@fiatAmountTooHigh": {
"placeholders": {
"minAmount": {
"type": "String",
"description": "The minimum allowed sats amount"
},
"maxAmount": {
"type": "String",
"description": "The maximum allowed sats amount"
}
}
},
"fiatAmountTooLow": "The fiat amount is too low. The Mostro node you are using allows between {minAmount} and {maxAmount} sats.",
"@fiatAmountTooLow": {
"placeholders": {
"minAmount": {
"type": "String",
"description": "The minimum allowed sats amount"
},
"maxAmount": {
"type": "String",
"description": "The maximum allowed sats amount"
}
}
},
"fiatAmountTooLowRange": "The amount is too low. This Mostro node allows between {minAmount} and {maxAmount} {fiatCode} ({minSats} - {maxSats} sats).",
"@fiatAmountTooLowRange": {
"placeholders": {
"minAmount": {
"type": "String",
"description": "The minimum allowed amount in fiat"
},
"maxAmount": {
"type": "String",
"description": "The maximum allowed amount in fiat"
},
"fiatCode": {
"type": "String",
"description": "The selected fiat currency code"
},
"minSats": {
"type": "String",
"description": "The minimum allowed amount in sats"
},
"maxSats": {
"type": "String",
"description": "The maximum allowed amount in sats"
}
}
},
"fiatAmountTooHighRange": "The amount is too high. This Mostro node allows between {minAmount} and {maxAmount} {fiatCode} ({minSats} - {maxSats} sats).",
"@fiatAmountTooHighRange": {
"placeholders": {
"minAmount": {
"type": "String",
"description": "The minimum allowed amount in fiat"
},
"maxAmount": {
"type": "String",
"description": "The maximum allowed amount in fiat"
},
"fiatCode": {
"type": "String",
"description": "The selected fiat currency code"
},
"minSats": {
"type": "String",
"description": "The minimum allowed amount in sats"
},
"maxSats": {
"type": "String",
"description": "The maximum allowed amount in sats"
}
}
},
"exchangeRateNotAvailable": "Exchange rate not available, please wait or refresh",
"mostroInstanceNotAvailable": "Mostro instance data not available, please wait",
"enterAmountYouWantToReceiveCurrency": "Enter the amount of {currency} you want to receive",
"@enterAmountYouWantToReceiveCurrency": {
"placeholders": {
"currency": {
"type": "String",
"description": "The selected fiat code, or \"fiat\" when none is selected"
}
}
},
"enterAmountYouWantToSendCurrency": "Enter the amount of {currency} you want to send",
"@enterAmountYouWantToSendCurrency": {
"placeholders": {
"currency": {
"type": "String",
"description": "The selected fiat code, or \"fiat\" when none is selected"
}
}
},
"creatingRangeOrder": "Creating a range order (you can receive between min and max amounts)",
"creatingRangeOrderBuySend": "Creating a range order (you can send between min and max amounts)",
"rangeOrder": "Range Order",
"maxAmount": "Max amount",
"tapSecondFieldForRange": "💡 Tap the second field to create a range order",
"to": "to",
"maxMustBeGreaterThanMin": "Maximum amount must be greater than minimum amount",
"paymentMethodsForCurrency": "Payment methods for {currency}",
"enterCustomPaymentMethod": "Enter custom payment method",
"loadingPaymentMethods": "Loading payment methods...",
"errorLoadingPaymentMethods": "Error loading payment methods: {error}",
"selectPaymentMethods": "Select payment methods",
"selectPaymentMethodsTitle": "Select Payment Methods",
"premiumTitle": "Premium (%)",
"premiumTooltip": "Adjust how much above or below the market price you want your offer. By default, it's set to 0%, with no premium or discount, so if you don't want to change the price, you can leave it as is.",
"premiumEditHint": "Edit",
"secretWords": "Secret Words",
"toRestoreYourAccount": "To restore your account",
"privacy": "Privacy",
"controlPrivacySettings": "Control your privacy settings",
"currentTradeIndex": "Current Trade Index",
"yourTradeCounter": "Your trade counter",
"incrementsWithEachTrade": "Increments with each trade",
"generateNewUser": "Generate New User",
"importMostroUser": "Import User",
"refreshUser": "Refresh User",
"keyImportedSuccessfully": "Key imported successfully",
"importFailed": "Import failed: {error}",
"@importFailed": {
"placeholders": {
"error": {
"type": "String"
}
}
},
"refreshSuccessful": "User data refreshed successfully",
"refreshFailed": "Refresh failed: {error}",
"@refreshFailed": {
"placeholders": {
"error": {
"type": "String"
}
}
},
"noMnemonicFound": "No mnemonic found",
"errorLoadingMnemonic": "Error: {error}",
"@errorLoadingMnemonic": {
"placeholders": {
"error": {
"type": "String"
}
}
},
"noMessagesAvailable": "No messages available",
"back": "BACK",
"typeAMessage": "Type a message...",
"youAreChattingWith": "You are chatting with {handle}",
"yourHandle": "Your Handle:",
"yourSharedKey": "Your Shared Key:",
"payInvoiceButton": "PAY INVOICE",
"addInvoiceButton": "ADD INVOICE",
"release": "RELEASE",
"takeSell": "TAKE SELL",
"takeBuy": "TAKE BUY",
"noExchangeDataAvailable": "No exchange data available",
"errorFetchingCurrencies": "Error fetching currencies",
"selectFiatCurrencyPay": "Select the fiat currency you will pay with",
"selectFiatCurrencyReceive": "Select the Fiat Currency you want to receive",
"loadingCurrencies": "Loading currencies...",
"errorLoadingCurrencies": "Error loading currencies",
"usDollar": "US Dollar",
"searchCurrencies": "Search currencies...",
"noCurrenciesFound": "No currencies found",
"priceType": "Price type",
"fixedPrice": "Fixed price",
"market": "Market",
"priceTypeTooltip": "• Select Market Price if you want to use the price that Bitcoin has when someone takes your offer.\n\n• Select Fixed Price if you want to define the exact amount of Bitcoin you will exchange.",
"@_comment_take_order_screen": "Take Order Screen Strings",
"orderDetails": "ORDER DETAILS",
"atMarketPrice": "at market price",
"withPremiumPercent": "with a +{premium}% premium",
"@withPremiumPercent": {
"placeholders": {
"premium": {
"type": "String"
}
}
},
"withDiscountPercent": "with a {premium}% discount",
"@withDiscountPercent": {
"placeholders": {
"premium": {
"type": "String"
}
}
},
"someoneIsSellingBuying": "Someone is {action}{satAmount} sats for {amountString} {price} {premiumText}",
"@someoneIsSellingBuying": {
"placeholders": {
"action": {
"type": "String"
},
"satAmount": {
"type": "String"
},
"amountString": {
"type": "String"
},
"price": {
"type": "String"
},
"premiumText": {
"type": "String"
}
}
},
"createdOnDate": "Created on: {date}",
"@createdOnDate": {
"placeholders": {
"date": {
"type": "String"
}
}
},
"paymentMethodsAre": "The payment methods are: {methods}",
"@paymentMethodsAre": {
"placeholders": {
"methods": {
"type": "String"
}
}
},
"timeLeft": "Time Left: {time}",
"@timeLeft": {
"placeholders": {
"time": {
"type": "String"
}
}
},
"close": "CLOSE",
"take": "TAKE",
"enterAmount": "Enter Amount",
"enterAmountBetween": "{min} - {max} {currency}",
"@enterAmountBetween": {
"placeholders": {
"min": {
"type": "String",
"description": "Minimum amount that can be entered"
},
"max": {
"type": "String",
"description": "Maximum amount that can be entered"
},
"currency": {
"type": "String",
"description": "Currency code or symbol shown after the range"
}
}
},
"pleaseEnterValidNumber": "Please enter a valid number.",
"amountMustBeBetween": "Amount must be between {min} and {max}.",
"@amountMustBeBetween": {
"placeholders": {
"min": {
"type": "String"
},
"max": {
"type": "String"
}
}
},
"@_comment_lightning_invoice": "Lightning Invoice Widget Strings",
"pleaseEnterLightningInvoiceFor": "Please enter a Lightning Invoice for {sats} Sats equivalent to {fiat_code} {fiat_amount} to continue the exchange for order with ID {order_id}",
"@pleaseEnterLightningInvoiceFor": {
"placeholders": {
"sats": {
"type": "String",
"description": "The amount of satoshis"
},
"fiat_code": {
"type": "String",
"description": "The fiat currency code"
},
"fiat_amount": {
"type": "String",
"description": "The fiat amount"
},
"order_id": {
"type": "String",
"description": "The order ID"
}
}
},
"sats": " sats",
"lightningInvoice": "Lightning Invoice",
"enterInvoiceHere": "Enter invoice here",
"rateButton": "RATE",
"contactButton": "CONTACT",
"viewDisputeButton": "VIEW DISPUTE",
"rateCounterpart": "Rate Counterpart",
"submitRating": "Submit Rating",
"addLightningInvoice": "Add Lightning Invoice",
"payLightningInvoice": "Pay Lightning Invoice",
"payInvoiceToContinue": "Pay this invoice for {sats} Sats equivalent to {fiat_code} {fiat_amount} to continue the exchange for order {order_id}",
"@payInvoiceToContinue": {
"placeholders": {
"sats": {
"type": "String",
"description": "The amount of satoshis"
},
"fiat_code": {
"type": "String",
"description": "The fiat currency code"
},
"fiat_amount": {
"type": "String",
"description": "The fiat amount"
},
"order_id": {
"type": "String",
"description": "The order ID"
}
}
},
"failedToGenerateQR": "Failed to generate QR code",
"invoiceCopiedToClipboard": "Invoice copied to clipboard",
"copiedToClipboard": "Copied to clipboard",
"copy": "Copy",
"share": "Share",
"failedToShareInvoice": "Failed to share invoice. Please try copying instead.",
"bondScreenTitle": "Anti-abuse deposit",
"bondExplanation": "To take this order you must pay an anti-abuse deposit. Here's how it works:\n\n• Your sats are held in your wallet, they are not spent.\n• If the exchange completes successfully, you get your deposit back automatically.\n• If you have a dispute on this order and lose it, you will lose the deposit.\n• This mechanism protects all users against scammers.",
"bondExplanationMaker": "Before your order can be created, you must pay an anti-abuse deposit. Keep this screen open until the payment is done — if you close it or don't pay, the order won't be created. Here's how it works:\n\n• Your sats are held in your wallet, they are not spent.\n• If the exchange completes successfully, you get your deposit back automatically.\n• If you have a dispute on this order and lose it, you will lose the deposit.\n• This mechanism protects all users against scammers.",
"bondPayInvoicePrompt": "Pay the following invoice for {amount} sats to continue, or cancel if you don't agree.",
"statusWaitingTakerBond": "Awaiting deposit payment",
"payBondMessage": "Please pay the anti-abuse deposit to continue this order.",
"payBondButton": "Pay deposit",
"failedToCancelOrder": "Failed to cancel order: {error}",
"@failedToCancelOrder": {
"placeholders": {
"error": {
"type": "String"
}
}
},
"failedToUpdateInvoice": "Failed to update invoice: {error}",
"@failedToUpdateInvoice": {
"placeholders": {
"error": {
"type": "String"
}
}
},
"refreshingExchangeRate": "Refreshing exchange rate...",
"language": "Language",
"systemDefault": "System Default",
"english": "English",
"spanish": "Spanish",
"italian": "Italian",
"french": "French",
"german": "German",
"loadingOrder": "Loading order...",
"chooseLanguageDescription": "Choose your preferred language or use system default",
"unsupportedLinkFormat": "Unsupported link format",
"failedToOpenLink": "Failed to open link",
"failedToLoadOrder": "Failed to load order",
"failedToOpenOrder": "Failed to open order",
"@_comment_chat": "Chat Section",
"messages": "Messages",
"disputes": "Disputes",
"noDisputesAvailable": "No disputes available",
"youAreChatting": "You are chatting with {handle}",
"@youAreChatting": {
"placeholders": {
"handle": {
"type": "String"
}
}
},
"tradeInformation": "Trade Information",
"userInformation": "User Information",
"youAreSellingTo": "You are selling sats to",
"youAreBuyingFrom": "You are buying sats from",
"noMessagesYet": "No messages yet",
"today": "Today",
"yesterday": "Yesterday",
"youPrefix": "You: ",
"conversationsDescription": "Here you'll find your conversations with other users during trades.",
"disputesDescription": "These are your open disputes and the chats with the admin helping resolve them.",
"disputeDetails": "Dispute Details",
"disputeForOrder": "Dispute for order",
"disputeStatusInitiated": "Initiated",
"disputeStatusInProgress": "In-progress",
"disputeStatusResolved": "Resolved",
"disputeStatusClosed": "Closed",
"disputeResolvedTitle": "Dispute Resolved",
"disputeResolvedMessage": "This dispute has been resolved. The solver made a decision based on the evidence presented. Check your wallet for any refunds or payments.",
"disputeClosedUserCompleted": "Dispute closed — the order was successfully completed by the parties.",
"disputeClosedCooperativeCancel": "Dispute closed — the order was cooperatively canceled by the parties.",
"disputeInProgress": "This dispute is currently in progress. A solver is reviewing your case.",
"disputeSellerRefunded": "This dispute has been resolved with the seller being refunded.",
"disputeUnknownStatus": "The status of this dispute is unknown.",
"disputeChatClosed": "This dispute has been resolved. The chat is now closed.",
"@_comment_dispute_descriptions": "Dispute Description Messages",
"disputeDescriptionInitiatedByUser": "You opened this dispute",
"disputeDescriptionInitiatedByPeer": "A dispute was opened against you",
"disputeDescriptionInitiatedPendingAdmin": "An admin will take this dispute soon",
"disputeDescriptionInProgress": "No messages yet",
"disputeDescriptionResolved": "Order was completed - buyer received the sats",
"disputeDescriptionSellerRefunded": "Order was canceled - seller refunded",
"disputeDescriptionUnknown": "Unknown status",
"disputeAdminSettledMessage": "The admin settled the order in favor of one party. Check your wallet for any payments.",
"disputeSellerRefundedMessage": "The admin canceled the order and refunded the seller. The dispute is now closed.",
"disputeSettledBuyerMessage": "The dispute was resolved in your favor. The order was completed successfully and you received the sats. Check your wallet.",
"disputeSettledSellerMessage": "The dispute was resolved. The order was completed successfully and the buyer received the sats.",
"disputeCanceledBuyerMessage": "The admin canceled the order. The seller was refunded and you did not receive the sats.",
"disputeCanceledSellerMessage": "The admin canceled the order and refunded you. The buyer did not receive the sats. Check your wallet for the refund.",
"disputeOpenedByYou": "You opened this dispute against the buyer {counterparty}, please read carefully below:",
"@disputeOpenedByYou": {
"placeholders": {
"counterparty": {
"type": "String"
}
}
},
"disputeOpenedByYouAgainstSeller": "You opened this dispute against the seller {counterparty}, please read carefully below:",
"@disputeOpenedByYouAgainstSeller": {
"placeholders": {
"counterparty": {
"type": "String"
}
}
},
"disputeOpenedByYouAgainstBuyer": "You opened this dispute against the buyer {counterparty}, please read carefully below:",
"@disputeOpenedByYouAgainstBuyer": {
"placeholders": {
"counterparty": {
"type": "String"
}
}
},
"disputeOpenedAgainstYou": "This dispute was opened against you by {counterparty}, please read carefully below:",
"@disputeOpenedAgainstYou": {
"placeholders": {
"counterparty": {
"type": "String"
}
}
},
"disputeWaitingForAdmin": "Waiting for admin assignment",
"disputeYouOpened": "You opened this dispute",
"disputeOpenedAgainstUser": "A dispute was opened against you",
"disputeResolved": "Dispute has been resolved",
"disputeInstruction1": "Wait for a solver to take your dispute. Once they arrive, share any relevant evidence to help clarify the situation.",
"disputeInstruction2": "The final decision will be made based on the evidence presented.",
"disputeInstruction3": "If you don't respond, the system will assume you don't want to cooperate and you might lose the dispute.",
"disputeInstruction4": "If you want to share your chat history with {counterparty}, you can give the solver the shared key found in User Info in your conversation with that user.",
"@disputeInstruction4": {
"placeholders": {
"counterparty": {
"type": "String"
}
}
},
"orderId": "Order ID:",
"paymentMethod": "Payment Method:",
"sellingSats": "Selling {amount} sats",
"@sellingSats": {
"placeholders": {
"amount": {
"type": "String"
}
}
},
"buyingSats": "Buying {amount} sats",
"@buyingSats": {
"placeholders": {
"amount": {
"type": "String"
}
}
},
"forAmountWithCurrency": "for {amount} {currency}",
"@forAmountWithCurrency": {
"placeholders": {
"amount": {
"type": "String"
},
"currency": {
"type": "String"
}
}
},
"yourInformation": "Your Information",
"peerPublicKey": "Peer Public Key:",
"notAvailable": "Not available",
"unknownDate": "Unknown date",
"messageCopiedToClipboard": "Message copied to clipboard",
"textCopiedToClipboard": "{text} copied to clipboard",
"@textCopiedToClipboard": {
"placeholders": {
"text": {
"type": "String"
}
}
},
"@_comment_deep_link_errors": "Deep Link Error Messages",
"deepLinkInvalidFormat": "Invalid mostro: URL format",
"deepLinkParseError": "Failed to parse mostro: URL",
"deepLinkInvalidOrderId": "Invalid order ID format",
"deepLinkNoRelays": "No relays specified in URL",
"deepLinkOrderNotFound": "Order not found or invalid",
"deepLinkNavigationError": "Navigation Error: {error}",
"@deepLinkNavigationError": {
"placeholders": {
"error": {
"type": "String"
}
}
},
"deepLinkGoHome": "Go Home",
"@_comment_order_disabled_messages": "Order Disabled Messages",
"orderCompletedMessagingDisabled": "Order completed - messaging disabled",
"orderCanceledMessagingDisabled": "Order canceled - messaging disabled",
"orderExpiredMessagingDisabled": "Order expired - messaging disabled",
"orderSettledMessagingDisabled": "Order settled - messaging disabled",
"orderNotActiveMessagingDisabled": "Order is no longer active - messaging disabled",
"@_comment_about_screen_new": "About Screen New Strings",
"documentation": "Documentation",
"usersDocumentationEnglish": "Users Documentation (English)",
"usersDocumentationSpanish": "Users Documentation (Spanish)",
"technicalDocumentation": "Technical Documentation",
"read": "Read",
"technicalDetails": "Technical Details",
"mostroDaemonVersion": "Mostro Version",
"protocolVersion": "Protocol Version",
"protocolVersionExplanation": "The wire transport protocol this node speaks: 1 = NIP-59 gift wrap, 2 = NIP-44 direct messages. The app detects this automatically and uses the matching transport.",
"mostroCommitId": "Mostro Commit ID",
"orderExpiration": "Order Expiration",
"holdInvoiceExpiration": "Hold Invoice Expiration",
"lightningNetwork": "Lightning Network",
"lndDaemonVersion": "LND Version",
"lndNodePublicKey": "LND Node Public Key",
"lndCommitId": "LND Commit ID",
"lndNodeAlias": "LND Node Alias",
"supportedChains": "Supported Chains",
"supportedNetworks": "Supported Networks",
"lndNodeUri": "LND Node URI",
"maxOrderAmount": "Maximum Order Amount",
"minOrderAmount": "Minimum Order Amount",
"orderLifespan": "Order Lifespan",
"serviceFee": "Service Fee",
"fiatCurrenciesAccepted": "Fiat Currencies Accepted",
"maxOrdersPerResponse": "Max Orders Per Response",
"satoshis": "Satoshis",
"hour": "hour",
"hours": "hours",
"sec": "sec",