diff --git a/android/app/build.gradle b/android/app/build.gradle index d1097bf7f..1c4606391 100644 --- a/android/app/build.gradle +++ b/android/app/build.gradle @@ -37,7 +37,7 @@ android { defaultConfig { applicationId "com.komodoplatform.atomicdex" - minSdkVersion 24 + minSdkVersion 27 targetSdkVersion 31 versionCode flutterVersionCode.toInteger() versionName flutterVersionName diff --git a/assets/coin-icons/0xbtc.png b/assets/coin-icons/0xbtc.png deleted file mode 100644 index f2622a1c3..000000000 Binary files a/assets/coin-icons/0xbtc.png and /dev/null differ diff --git a/assets/coin-icons/1st.png b/assets/coin-icons/1st.png deleted file mode 100644 index 810285970..000000000 Binary files a/assets/coin-icons/1st.png and /dev/null differ diff --git a/assets/coin-icons/2give.png b/assets/coin-icons/2give.png deleted file mode 100644 index 295722391..000000000 Binary files a/assets/coin-icons/2give.png and /dev/null differ diff --git a/assets/coin-icons/abt.png b/assets/coin-icons/abt.png deleted file mode 100644 index 5bae07a06..000000000 Binary files a/assets/coin-icons/abt.png and /dev/null differ diff --git a/assets/coin-icons/act.png b/assets/coin-icons/act.png deleted file mode 100644 index 84b1df532..000000000 Binary files a/assets/coin-icons/act.png and /dev/null differ diff --git a/assets/coin-icons/add.png b/assets/coin-icons/add.png deleted file mode 100644 index a59e65300..000000000 Binary files a/assets/coin-icons/add.png and /dev/null differ diff --git a/assets/coin-icons/adt.png b/assets/coin-icons/adt.png deleted file mode 100644 index 69b408cec..000000000 Binary files a/assets/coin-icons/adt.png and /dev/null differ diff --git a/assets/coin-icons/ae.png b/assets/coin-icons/ae.png deleted file mode 100644 index 2ebd021df..000000000 Binary files a/assets/coin-icons/ae.png and /dev/null differ diff --git a/assets/coin-icons/aeon.png b/assets/coin-icons/aeon.png deleted file mode 100644 index d4dec4735..000000000 Binary files a/assets/coin-icons/aeon.png and /dev/null differ diff --git a/assets/coin-icons/aeur.png b/assets/coin-icons/aeur.png deleted file mode 100644 index 3fdb8c2f6..000000000 Binary files a/assets/coin-icons/aeur.png and /dev/null differ diff --git a/assets/coin-icons/agrs.png b/assets/coin-icons/agrs.png deleted file mode 100644 index 8d7c36e8c..000000000 Binary files a/assets/coin-icons/agrs.png and /dev/null differ diff --git a/assets/coin-icons/aion.png b/assets/coin-icons/aion.png deleted file mode 100644 index 76a4021d4..000000000 Binary files a/assets/coin-icons/aion.png and /dev/null differ diff --git a/assets/coin-icons/amb.png b/assets/coin-icons/amb.png deleted file mode 100644 index cc07f3ccb..000000000 Binary files a/assets/coin-icons/amb.png and /dev/null differ diff --git a/assets/coin-icons/amp.png b/assets/coin-icons/amp.png deleted file mode 100644 index 930d8413d..000000000 Binary files a/assets/coin-icons/amp.png and /dev/null differ diff --git a/assets/coin-icons/ampl.png b/assets/coin-icons/ampl.png deleted file mode 100644 index da535f6df..000000000 Binary files a/assets/coin-icons/ampl.png and /dev/null differ diff --git a/assets/coin-icons/apex.png b/assets/coin-icons/apex.png deleted file mode 100644 index 71298094c..000000000 Binary files a/assets/coin-icons/apex.png and /dev/null differ diff --git a/assets/coin-icons/appc.png b/assets/coin-icons/appc.png deleted file mode 100644 index 29047887c..000000000 Binary files a/assets/coin-icons/appc.png and /dev/null differ diff --git a/assets/coin-icons/arc.png b/assets/coin-icons/arc.png deleted file mode 100644 index e6be466fd..000000000 Binary files a/assets/coin-icons/arc.png and /dev/null differ diff --git a/assets/coin-icons/ardr.png b/assets/coin-icons/ardr.png deleted file mode 100644 index 9cc64c2be..000000000 Binary files a/assets/coin-icons/ardr.png and /dev/null differ diff --git a/assets/coin-icons/arg.png b/assets/coin-icons/arg.png deleted file mode 100644 index 6fc3cbc75..000000000 Binary files a/assets/coin-icons/arg.png and /dev/null differ diff --git a/assets/coin-icons/ark.png b/assets/coin-icons/ark.png deleted file mode 100644 index b9f8e81f6..000000000 Binary files a/assets/coin-icons/ark.png and /dev/null differ diff --git a/assets/coin-icons/arn.png b/assets/coin-icons/arn.png deleted file mode 100644 index b82beeed5..000000000 Binary files a/assets/coin-icons/arn.png and /dev/null differ diff --git a/assets/coin-icons/ary.png b/assets/coin-icons/ary.png deleted file mode 100644 index a4600806c..000000000 Binary files a/assets/coin-icons/ary.png and /dev/null differ diff --git a/assets/coin-icons/ast.png b/assets/coin-icons/ast.png deleted file mode 100644 index 91581d5f4..000000000 Binary files a/assets/coin-icons/ast.png and /dev/null differ diff --git a/assets/coin-icons/atb.png b/assets/coin-icons/atb.png deleted file mode 100644 index 2e54f2d3e..000000000 Binary files a/assets/coin-icons/atb.png and /dev/null differ diff --git a/assets/coin-icons/atm.png b/assets/coin-icons/atm.png deleted file mode 100644 index fef94d2ac..000000000 Binary files a/assets/coin-icons/atm.png and /dev/null differ diff --git a/assets/coin-icons/atom-ibc_iris.png b/assets/coin-icons/atom-ibc_iris.png deleted file mode 100644 index 89a8f9525..000000000 Binary files a/assets/coin-icons/atom-ibc_iris.png and /dev/null differ diff --git a/assets/coin-icons/audr.png b/assets/coin-icons/audr.png deleted file mode 100644 index 0a897eb69..000000000 Binary files a/assets/coin-icons/audr.png and /dev/null differ diff --git a/assets/coin-icons/auto.png b/assets/coin-icons/auto.png deleted file mode 100644 index 120c1cc8b..000000000 Binary files a/assets/coin-icons/auto.png and /dev/null differ diff --git a/assets/coin-icons/axo.png b/assets/coin-icons/axo.png deleted file mode 100644 index 0f98ac3bf..000000000 Binary files a/assets/coin-icons/axo.png and /dev/null differ diff --git a/assets/coin-icons/aywa.png b/assets/coin-icons/aywa.png deleted file mode 100644 index 53ab7d2d6..000000000 Binary files a/assets/coin-icons/aywa.png and /dev/null differ diff --git a/assets/coin-icons/bab.png b/assets/coin-icons/bab.png deleted file mode 100644 index 65ea26de8..000000000 Binary files a/assets/coin-icons/bab.png and /dev/null differ diff --git a/assets/coin-icons/bay.png b/assets/coin-icons/bay.png deleted file mode 100644 index ccc361069..000000000 Binary files a/assets/coin-icons/bay.png and /dev/null differ diff --git a/assets/coin-icons/bbk.png b/assets/coin-icons/bbk.png new file mode 100644 index 000000000..28f307580 Binary files /dev/null and b/assets/coin-icons/bbk.png differ diff --git a/assets/coin-icons/bbt.png b/assets/coin-icons/bbt.png deleted file mode 100644 index bec2680b3..000000000 Binary files a/assets/coin-icons/bbt.png and /dev/null differ diff --git a/assets/coin-icons/bcbc.png b/assets/coin-icons/bcbc.png deleted file mode 100644 index 75279d4e4..000000000 Binary files a/assets/coin-icons/bcbc.png and /dev/null differ diff --git a/assets/coin-icons/bcc.png b/assets/coin-icons/bcc.png deleted file mode 100644 index a07d9433e..000000000 Binary files a/assets/coin-icons/bcc.png and /dev/null differ diff --git a/assets/coin-icons/bcd.png b/assets/coin-icons/bcd.png deleted file mode 100644 index 1d82c8352..000000000 Binary files a/assets/coin-icons/bcd.png and /dev/null differ diff --git a/assets/coin-icons/bcio.png b/assets/coin-icons/bcio.png deleted file mode 100644 index 8990ad187..000000000 Binary files a/assets/coin-icons/bcio.png and /dev/null differ diff --git a/assets/coin-icons/bcn.png b/assets/coin-icons/bcn.png deleted file mode 100644 index c02f2e277..000000000 Binary files a/assets/coin-icons/bcn.png and /dev/null differ diff --git a/assets/coin-icons/bco.png b/assets/coin-icons/bco.png deleted file mode 100644 index 5db75ec42..000000000 Binary files a/assets/coin-icons/bco.png and /dev/null differ diff --git a/assets/coin-icons/bcpt.png b/assets/coin-icons/bcpt.png deleted file mode 100644 index b8b2ee2e5..000000000 Binary files a/assets/coin-icons/bcpt.png and /dev/null differ diff --git a/assets/coin-icons/bdl.png b/assets/coin-icons/bdl.png deleted file mode 100644 index 40badd2f4..000000000 Binary files a/assets/coin-icons/bdl.png and /dev/null differ diff --git a/assets/coin-icons/beam.png b/assets/coin-icons/beam.png deleted file mode 100644 index 0b0e2c9a7..000000000 Binary files a/assets/coin-icons/beam.png and /dev/null differ diff --git a/assets/coin-icons/beer.png b/assets/coin-icons/beer.png deleted file mode 100644 index 76cd6e644..000000000 Binary files a/assets/coin-icons/beer.png and /dev/null differ diff --git a/assets/coin-icons/bela.png b/assets/coin-icons/bela.png deleted file mode 100644 index 5989ff114..000000000 Binary files a/assets/coin-icons/bela.png and /dev/null differ diff --git a/assets/coin-icons/bet.png b/assets/coin-icons/bet.png deleted file mode 100644 index 68e6a2d9b..000000000 Binary files a/assets/coin-icons/bet.png and /dev/null differ diff --git a/assets/coin-icons/bft.png b/assets/coin-icons/bft.png deleted file mode 100644 index bc79551c0..000000000 Binary files a/assets/coin-icons/bft.png and /dev/null differ diff --git a/assets/coin-icons/bits.png b/assets/coin-icons/bits.png deleted file mode 100644 index 4b75d8c28..000000000 Binary files a/assets/coin-icons/bits.png and /dev/null differ diff --git a/assets/coin-icons/bix.png b/assets/coin-icons/bix.png deleted file mode 100644 index 640ef3ae1..000000000 Binary files a/assets/coin-icons/bix.png and /dev/null differ diff --git a/assets/coin-icons/blcn.png b/assets/coin-icons/blcn.png deleted file mode 100644 index b5a67db2e..000000000 Binary files a/assets/coin-icons/blcn.png and /dev/null differ diff --git a/assets/coin-icons/block.png b/assets/coin-icons/block.png deleted file mode 100644 index ba9a80f96..000000000 Binary files a/assets/coin-icons/block.png and /dev/null differ diff --git a/assets/coin-icons/blz.png b/assets/coin-icons/blz.png deleted file mode 100644 index fa68b68e9..000000000 Binary files a/assets/coin-icons/blz.png and /dev/null differ diff --git a/assets/coin-icons/bnty.png b/assets/coin-icons/bnty.png deleted file mode 100644 index 2de4d7931..000000000 Binary files a/assets/coin-icons/bnty.png and /dev/null differ diff --git a/assets/coin-icons/booty.png b/assets/coin-icons/booty.png deleted file mode 100644 index 355250d0e..000000000 Binary files a/assets/coin-icons/booty.png and /dev/null differ diff --git a/assets/coin-icons/bos.png b/assets/coin-icons/bos.png deleted file mode 100644 index df11429cb..000000000 Binary files a/assets/coin-icons/bos.png and /dev/null differ diff --git a/assets/coin-icons/bots.png b/assets/coin-icons/bots.png deleted file mode 100644 index d8b08a228..000000000 Binary files a/assets/coin-icons/bots.png and /dev/null differ diff --git a/assets/coin-icons/bpt.png b/assets/coin-icons/bpt.png deleted file mode 100644 index b42695317..000000000 Binary files a/assets/coin-icons/bpt.png and /dev/null differ diff --git a/assets/coin-icons/bq.png b/assets/coin-icons/bq.png deleted file mode 100644 index 3ad2c3ca9..000000000 Binary files a/assets/coin-icons/bq.png and /dev/null differ diff --git a/assets/coin-icons/brc.png b/assets/coin-icons/brc.png deleted file mode 100644 index 8a65a4b14..000000000 Binary files a/assets/coin-icons/brc.png and /dev/null differ diff --git a/assets/coin-icons/brd.png b/assets/coin-icons/brd.png deleted file mode 100644 index 7fd845c2e..000000000 Binary files a/assets/coin-icons/brd.png and /dev/null differ diff --git a/assets/coin-icons/bsd.png b/assets/coin-icons/bsd.png deleted file mode 100644 index 35d5432c1..000000000 Binary files a/assets/coin-icons/bsd.png and /dev/null differ diff --git a/assets/coin-icons/bsv.png b/assets/coin-icons/bsv.png deleted file mode 100644 index 3d49385a5..000000000 Binary files a/assets/coin-icons/bsv.png and /dev/null differ diff --git a/assets/coin-icons/bta.png b/assets/coin-icons/bta.png deleted file mode 100644 index cf9335b68..000000000 Binary files a/assets/coin-icons/bta.png and /dev/null differ diff --git a/assets/coin-icons/btch.png b/assets/coin-icons/btch.png deleted file mode 100644 index 83f7b7e3b..000000000 Binary files a/assets/coin-icons/btch.png and /dev/null differ diff --git a/assets/coin-icons/btcl.png b/assets/coin-icons/btcl.png deleted file mode 100644 index f0bb7d5bb..000000000 Binary files a/assets/coin-icons/btcl.png and /dev/null differ diff --git a/assets/coin-icons/btcp.png b/assets/coin-icons/btcp.png deleted file mode 100644 index a950fccc4..000000000 Binary files a/assets/coin-icons/btcp.png and /dev/null differ diff --git a/assets/coin-icons/btdx.png b/assets/coin-icons/btdx.png deleted file mode 100644 index c5731a2dc..000000000 Binary files a/assets/coin-icons/btdx.png and /dev/null differ diff --git a/assets/coin-icons/btg.png b/assets/coin-icons/btg.png deleted file mode 100644 index db9564914..000000000 Binary files a/assets/coin-icons/btg.png and /dev/null differ diff --git a/assets/coin-icons/btm.png b/assets/coin-icons/btm.png deleted file mode 100644 index 4529ab777..000000000 Binary files a/assets/coin-icons/btm.png and /dev/null differ diff --git a/assets/coin-icons/bto.png b/assets/coin-icons/bto.png deleted file mode 100644 index c5dd7f453..000000000 Binary files a/assets/coin-icons/bto.png and /dev/null differ diff --git a/assets/coin-icons/btrs.png b/assets/coin-icons/btrs.png deleted file mode 100644 index 0916db716..000000000 Binary files a/assets/coin-icons/btrs.png and /dev/null differ diff --git a/assets/coin-icons/bts.png b/assets/coin-icons/bts.png deleted file mode 100644 index 885c953b9..000000000 Binary files a/assets/coin-icons/bts.png and /dev/null differ diff --git a/assets/coin-icons/buck.png b/assets/coin-icons/buck.png deleted file mode 100644 index 1c3cdc1a5..000000000 Binary files a/assets/coin-icons/buck.png and /dev/null differ diff --git a/assets/coin-icons/burst.png b/assets/coin-icons/burst.png deleted file mode 100644 index 8e9a5dd9e..000000000 Binary files a/assets/coin-icons/burst.png and /dev/null differ diff --git a/assets/coin-icons/bzc.png b/assets/coin-icons/bzc.png deleted file mode 100644 index 125a21a09..000000000 Binary files a/assets/coin-icons/bzc.png and /dev/null differ diff --git a/assets/coin-icons/call.png b/assets/coin-icons/call.png deleted file mode 100644 index 99b1aa0a0..000000000 Binary files a/assets/coin-icons/call.png and /dev/null differ diff --git a/assets/coin-icons/cc.png b/assets/coin-icons/cc.png deleted file mode 100644 index 22a1ba28b..000000000 Binary files a/assets/coin-icons/cc.png and /dev/null differ diff --git a/assets/coin-icons/cdt.png b/assets/coin-icons/cdt.png deleted file mode 100644 index 129303b81..000000000 Binary files a/assets/coin-icons/cdt.png and /dev/null differ diff --git a/assets/coin-icons/ceal.png b/assets/coin-icons/ceal.png deleted file mode 100644 index 4d315444b..000000000 Binary files a/assets/coin-icons/ceal.png and /dev/null differ diff --git a/assets/coin-icons/cennz.png b/assets/coin-icons/cennz.png deleted file mode 100644 index f79d10bd8..000000000 Binary files a/assets/coin-icons/cennz.png and /dev/null differ diff --git a/assets/coin-icons/chain.png b/assets/coin-icons/chain.png deleted file mode 100644 index 4f298c7c1..000000000 Binary files a/assets/coin-icons/chain.png and /dev/null differ diff --git a/assets/coin-icons/chat.png b/assets/coin-icons/chat.png deleted file mode 100644 index d317451fc..000000000 Binary files a/assets/coin-icons/chat.png and /dev/null differ diff --git a/assets/coin-icons/ciphs.png b/assets/coin-icons/ciphs.png deleted file mode 100644 index 5b3b3f15d..000000000 Binary files a/assets/coin-icons/ciphs.png and /dev/null differ diff --git a/assets/coin-icons/cix.png b/assets/coin-icons/cix.png deleted file mode 100644 index e797094fc..000000000 Binary files a/assets/coin-icons/cix.png and /dev/null differ diff --git a/assets/coin-icons/clam.png b/assets/coin-icons/clam.png deleted file mode 100644 index eea67d648..000000000 Binary files a/assets/coin-icons/clam.png and /dev/null differ diff --git a/assets/coin-icons/cloak.png b/assets/coin-icons/cloak.png deleted file mode 100644 index 34cef0bd1..000000000 Binary files a/assets/coin-icons/cloak.png and /dev/null differ diff --git a/assets/coin-icons/cmm.png b/assets/coin-icons/cmm.png deleted file mode 100644 index 631f3e6f4..000000000 Binary files a/assets/coin-icons/cmm.png and /dev/null differ diff --git a/assets/coin-icons/cmt.png b/assets/coin-icons/cmt.png deleted file mode 100644 index c5d3e4605..000000000 Binary files a/assets/coin-icons/cmt.png and /dev/null differ diff --git a/assets/coin-icons/cnd.png b/assets/coin-icons/cnd.png deleted file mode 100644 index 62638ebcd..000000000 Binary files a/assets/coin-icons/cnd.png and /dev/null differ diff --git a/assets/coin-icons/cnx.png b/assets/coin-icons/cnx.png deleted file mode 100644 index 3d631665c..000000000 Binary files a/assets/coin-icons/cnx.png and /dev/null differ diff --git a/assets/coin-icons/cny.png b/assets/coin-icons/cny.png deleted file mode 100644 index 06f1a4de0..000000000 Binary files a/assets/coin-icons/cny.png and /dev/null differ diff --git a/assets/coin-icons/cob.png b/assets/coin-icons/cob.png deleted file mode 100644 index 69401e7e1..000000000 Binary files a/assets/coin-icons/cob.png and /dev/null differ diff --git a/assets/coin-icons/coqui.png b/assets/coin-icons/coqui.png deleted file mode 100644 index ee6f760f4..000000000 Binary files a/assets/coin-icons/coqui.png and /dev/null differ diff --git a/assets/coin-icons/cred.png b/assets/coin-icons/cred.png deleted file mode 100644 index d64824194..000000000 Binary files a/assets/coin-icons/cred.png and /dev/null differ diff --git a/assets/coin-icons/crpt.png b/assets/coin-icons/crpt.png deleted file mode 100644 index 2ac36b488..000000000 Binary files a/assets/coin-icons/crpt.png and /dev/null differ diff --git a/assets/coin-icons/crw.png b/assets/coin-icons/crw.png deleted file mode 100644 index cd818a69d..000000000 Binary files a/assets/coin-icons/crw.png and /dev/null differ diff --git a/assets/coin-icons/crypto.png b/assets/coin-icons/crypto.png deleted file mode 100644 index 40b3d8f6b..000000000 Binary files a/assets/coin-icons/crypto.png and /dev/null differ diff --git a/assets/coin-icons/cs.png b/assets/coin-icons/cs.png deleted file mode 100644 index a6b55fbbb..000000000 Binary files a/assets/coin-icons/cs.png and /dev/null differ diff --git a/assets/coin-icons/ctr.png b/assets/coin-icons/ctr.png deleted file mode 100644 index 53c85fed3..000000000 Binary files a/assets/coin-icons/ctr.png and /dev/null differ diff --git a/assets/coin-icons/ctxc.png b/assets/coin-icons/ctxc.png deleted file mode 100644 index 9742942b0..000000000 Binary files a/assets/coin-icons/ctxc.png and /dev/null differ diff --git a/assets/coin-icons/d.png b/assets/coin-icons/d.png deleted file mode 100644 index 970a61579..000000000 Binary files a/assets/coin-icons/d.png and /dev/null differ diff --git a/assets/coin-icons/dat.png b/assets/coin-icons/dat.png deleted file mode 100644 index 5efc25dd5..000000000 Binary files a/assets/coin-icons/dat.png and /dev/null differ diff --git a/assets/coin-icons/data.png b/assets/coin-icons/data.png deleted file mode 100644 index 531bb198a..000000000 Binary files a/assets/coin-icons/data.png and /dev/null differ diff --git a/assets/coin-icons/dbc.png b/assets/coin-icons/dbc.png deleted file mode 100644 index f98cadf1f..000000000 Binary files a/assets/coin-icons/dbc.png and /dev/null differ diff --git a/assets/coin-icons/dcn.png b/assets/coin-icons/dcn.png deleted file mode 100644 index bfd3d47f1..000000000 Binary files a/assets/coin-icons/dcn.png and /dev/null differ diff --git a/assets/coin-icons/dcr.png b/assets/coin-icons/dcr.png deleted file mode 100644 index c261f77e5..000000000 Binary files a/assets/coin-icons/dcr.png and /dev/null differ diff --git a/assets/coin-icons/dec8.png b/assets/coin-icons/dec8.png deleted file mode 100644 index a8a967679..000000000 Binary files a/assets/coin-icons/dec8.png and /dev/null differ diff --git a/assets/coin-icons/deez.png b/assets/coin-icons/deez.png deleted file mode 100644 index a1900d6ef..000000000 Binary files a/assets/coin-icons/deez.png and /dev/null differ diff --git a/assets/coin-icons/dew.png b/assets/coin-icons/dew.png deleted file mode 100644 index 2317b3f66..000000000 Binary files a/assets/coin-icons/dew.png and /dev/null differ diff --git a/assets/coin-icons/dex.png b/assets/coin-icons/dex.png deleted file mode 100644 index c1ee7584f..000000000 Binary files a/assets/coin-icons/dex.png and /dev/null differ diff --git a/assets/coin-icons/dgd.png b/assets/coin-icons/dgd.png deleted file mode 100644 index 9a0233b2d..000000000 Binary files a/assets/coin-icons/dgd.png and /dev/null differ diff --git a/assets/coin-icons/dice.png b/assets/coin-icons/dice.png deleted file mode 100644 index 3b1a7fece..000000000 Binary files a/assets/coin-icons/dice.png and /dev/null differ diff --git a/assets/coin-icons/din.png b/assets/coin-icons/din.png deleted file mode 100644 index 576f94b62..000000000 Binary files a/assets/coin-icons/din.png and /dev/null differ diff --git a/assets/coin-icons/dion.png b/assets/coin-icons/dion.png deleted file mode 100644 index 23f2b76a8..000000000 Binary files a/assets/coin-icons/dion.png and /dev/null differ diff --git a/assets/coin-icons/dlt.png b/assets/coin-icons/dlt.png deleted file mode 100644 index 2ba7a32ae..000000000 Binary files a/assets/coin-icons/dlt.png and /dev/null differ diff --git a/assets/coin-icons/dnt.png b/assets/coin-icons/dnt.png deleted file mode 100644 index 2b53672a9..000000000 Binary files a/assets/coin-icons/dnt.png and /dev/null differ diff --git a/assets/coin-icons/dock.png b/assets/coin-icons/dock.png deleted file mode 100644 index 5f07984bd..000000000 Binary files a/assets/coin-icons/dock.png and /dev/null differ diff --git a/assets/coin-icons/dogec.png b/assets/coin-icons/dogec.png new file mode 100644 index 000000000..ee5892318 Binary files /dev/null and b/assets/coin-icons/dogec.png differ diff --git a/assets/coin-icons/dope.png b/assets/coin-icons/dope.png deleted file mode 100644 index 6c2c7b18f..000000000 Binary files a/assets/coin-icons/dope.png and /dev/null differ diff --git a/assets/coin-icons/drgn.png b/assets/coin-icons/drgn.png deleted file mode 100644 index 68cb5d9e1..000000000 Binary files a/assets/coin-icons/drgn.png and /dev/null differ diff --git a/assets/coin-icons/drop.png b/assets/coin-icons/drop.png deleted file mode 100644 index bbd53d1d7..000000000 Binary files a/assets/coin-icons/drop.png and /dev/null differ diff --git a/assets/coin-icons/drt.png b/assets/coin-icons/drt.png deleted file mode 100644 index 194438a70..000000000 Binary files a/assets/coin-icons/drt.png and /dev/null differ diff --git a/assets/coin-icons/dsec.png b/assets/coin-icons/dsec.png deleted file mode 100644 index ad31f0f57..000000000 Binary files a/assets/coin-icons/dsec.png and /dev/null differ diff --git a/assets/coin-icons/dsr.png b/assets/coin-icons/dsr.png deleted file mode 100644 index 99c92acc5..000000000 Binary files a/assets/coin-icons/dsr.png and /dev/null differ diff --git a/assets/coin-icons/dta.png b/assets/coin-icons/dta.png deleted file mode 100644 index 6ab8df411..000000000 Binary files a/assets/coin-icons/dta.png and /dev/null differ diff --git a/assets/coin-icons/dth.png b/assets/coin-icons/dth.png deleted file mode 100644 index dcea2a7ac..000000000 Binary files a/assets/coin-icons/dth.png and /dev/null differ diff --git a/assets/coin-icons/dtr.png b/assets/coin-icons/dtr.png deleted file mode 100644 index d1668709d..000000000 Binary files a/assets/coin-icons/dtr.png and /dev/null differ diff --git a/assets/coin-icons/dyn.png b/assets/coin-icons/dyn.png deleted file mode 100644 index 923946e1a..000000000 Binary files a/assets/coin-icons/dyn.png and /dev/null differ diff --git a/assets/coin-icons/ebst.png b/assets/coin-icons/ebst.png deleted file mode 100644 index 7c123bb26..000000000 Binary files a/assets/coin-icons/ebst.png and /dev/null differ diff --git a/assets/coin-icons/edg.png b/assets/coin-icons/edg.png deleted file mode 100644 index 8ecdfce0a..000000000 Binary files a/assets/coin-icons/edg.png and /dev/null differ diff --git a/assets/coin-icons/edo.png b/assets/coin-icons/edo.png deleted file mode 100644 index 5df2355b0..000000000 Binary files a/assets/coin-icons/edo.png and /dev/null differ diff --git a/assets/coin-icons/edoge.png b/assets/coin-icons/edoge.png deleted file mode 100644 index cece9d2c8..000000000 Binary files a/assets/coin-icons/edoge.png and /dev/null differ diff --git a/assets/coin-icons/ela.png b/assets/coin-icons/ela.png deleted file mode 100644 index 780668f64..000000000 Binary files a/assets/coin-icons/ela.png and /dev/null differ diff --git a/assets/coin-icons/elec.png b/assets/coin-icons/elec.png deleted file mode 100644 index e44f71be4..000000000 Binary files a/assets/coin-icons/elec.png and /dev/null differ diff --git a/assets/coin-icons/eli.png b/assets/coin-icons/eli.png deleted file mode 100644 index f8c3a6cb3..000000000 Binary files a/assets/coin-icons/eli.png and /dev/null differ diff --git a/assets/coin-icons/elix.png b/assets/coin-icons/elix.png deleted file mode 100644 index 403a10382..000000000 Binary files a/assets/coin-icons/elix.png and /dev/null differ diff --git a/assets/coin-icons/ella.png b/assets/coin-icons/ella.png deleted file mode 100644 index 568cbf4ea..000000000 Binary files a/assets/coin-icons/ella.png and /dev/null differ diff --git a/assets/coin-icons/ely.png b/assets/coin-icons/ely.png deleted file mode 100644 index ea0724ea0..000000000 Binary files a/assets/coin-icons/ely.png and /dev/null differ diff --git a/assets/coin-icons/emc.png b/assets/coin-icons/emc.png deleted file mode 100644 index dce936a2a..000000000 Binary files a/assets/coin-icons/emc.png and /dev/null differ diff --git a/assets/coin-icons/eng.png b/assets/coin-icons/eng.png deleted file mode 100644 index 4c323a4a2..000000000 Binary files a/assets/coin-icons/eng.png and /dev/null differ diff --git a/assets/coin-icons/entrp.png b/assets/coin-icons/entrp.png deleted file mode 100644 index daab767c8..000000000 Binary files a/assets/coin-icons/entrp.png and /dev/null differ diff --git a/assets/coin-icons/eon.png b/assets/coin-icons/eon.png deleted file mode 100644 index 737b98d15..000000000 Binary files a/assets/coin-icons/eon.png and /dev/null differ diff --git a/assets/coin-icons/eop.png b/assets/coin-icons/eop.png deleted file mode 100644 index 080242bbc..000000000 Binary files a/assets/coin-icons/eop.png and /dev/null differ diff --git a/assets/coin-icons/eqli.png b/assets/coin-icons/eqli.png deleted file mode 100644 index d051094f5..000000000 Binary files a/assets/coin-icons/eqli.png and /dev/null differ diff --git a/assets/coin-icons/equa.png b/assets/coin-icons/equa.png deleted file mode 100644 index 9593aa1a6..000000000 Binary files a/assets/coin-icons/equa.png and /dev/null differ diff --git a/assets/coin-icons/ethos.png b/assets/coin-icons/ethos.png deleted file mode 100644 index 62748527f..000000000 Binary files a/assets/coin-icons/ethos.png and /dev/null differ diff --git a/assets/coin-icons/etk.png b/assets/coin-icons/etk.png deleted file mode 100644 index 62506b3fc..000000000 Binary files a/assets/coin-icons/etk.png and /dev/null differ diff --git a/assets/coin-icons/etn.png b/assets/coin-icons/etn.png deleted file mode 100644 index 3813c31c1..000000000 Binary files a/assets/coin-icons/etn.png and /dev/null differ diff --git a/assets/coin-icons/etomic.png b/assets/coin-icons/etomic.png deleted file mode 100644 index e2d4f5f26..000000000 Binary files a/assets/coin-icons/etomic.png and /dev/null differ diff --git a/assets/coin-icons/etp.png b/assets/coin-icons/etp.png deleted file mode 100644 index cb944bae3..000000000 Binary files a/assets/coin-icons/etp.png and /dev/null differ diff --git a/assets/coin-icons/eum.png b/assets/coin-icons/eum.png deleted file mode 100644 index 45ce296d1..000000000 Binary files a/assets/coin-icons/eum.png and /dev/null differ diff --git a/assets/coin-icons/eur.png b/assets/coin-icons/eur.png deleted file mode 100644 index 6f750d7d0..000000000 Binary files a/assets/coin-icons/eur.png and /dev/null differ diff --git a/assets/coin-icons/evx.png b/assets/coin-icons/evx.png deleted file mode 100644 index 3a2abbbc7..000000000 Binary files a/assets/coin-icons/evx.png and /dev/null differ diff --git a/assets/coin-icons/exmo.png b/assets/coin-icons/exmo.png deleted file mode 100644 index 3bb91f163..000000000 Binary files a/assets/coin-icons/exmo.png and /dev/null differ diff --git a/assets/coin-icons/exp.png b/assets/coin-icons/exp.png deleted file mode 100644 index 6ca8fbfdd..000000000 Binary files a/assets/coin-icons/exp.png and /dev/null differ diff --git a/assets/coin-icons/fair.png b/assets/coin-icons/fair.png deleted file mode 100644 index bb3a2abcc..000000000 Binary files a/assets/coin-icons/fair.png and /dev/null differ diff --git a/assets/coin-icons/fct.png b/assets/coin-icons/fct.png deleted file mode 100644 index 9371e4ba2..000000000 Binary files a/assets/coin-icons/fct.png and /dev/null differ diff --git a/assets/coin-icons/flash.png b/assets/coin-icons/flash.png deleted file mode 100644 index bc2c3b7d6..000000000 Binary files a/assets/coin-icons/flash.png and /dev/null differ diff --git a/assets/coin-icons/fldc.png b/assets/coin-icons/fldc.png deleted file mode 100644 index 4a33afdc9..000000000 Binary files a/assets/coin-icons/fldc.png and /dev/null differ diff --git a/assets/coin-icons/fsn.png b/assets/coin-icons/fsn.png deleted file mode 100644 index 23a5e7877..000000000 Binary files a/assets/coin-icons/fsn.png and /dev/null differ diff --git a/assets/coin-icons/fuel.png b/assets/coin-icons/fuel.png deleted file mode 100644 index 5891bd908..000000000 Binary files a/assets/coin-icons/fuel.png and /dev/null differ diff --git a/assets/coin-icons/fun.png b/assets/coin-icons/fun.png deleted file mode 100644 index 73609d6bf..000000000 Binary files a/assets/coin-icons/fun.png and /dev/null differ diff --git a/assets/coin-icons/game.png b/assets/coin-icons/game.png index abe346d15..c5ab20320 100644 Binary files a/assets/coin-icons/game.png and b/assets/coin-icons/game.png differ diff --git a/assets/coin-icons/gas.png b/assets/coin-icons/gas.png deleted file mode 100644 index 2a4d78328..000000000 Binary files a/assets/coin-icons/gas.png and /dev/null differ diff --git a/assets/coin-icons/gbp.png b/assets/coin-icons/gbp.png deleted file mode 100644 index f96451816..000000000 Binary files a/assets/coin-icons/gbp.png and /dev/null differ diff --git a/assets/coin-icons/gbx.png b/assets/coin-icons/gbx.png index ece585e81..dad381688 100644 Binary files a/assets/coin-icons/gbx.png and b/assets/coin-icons/gbx.png differ diff --git a/assets/coin-icons/gbyte.png b/assets/coin-icons/gbyte.png deleted file mode 100644 index b67f462d9..000000000 Binary files a/assets/coin-icons/gbyte.png and /dev/null differ diff --git a/assets/coin-icons/geth.png b/assets/coin-icons/geth.png deleted file mode 100644 index c53f4b39c..000000000 Binary files a/assets/coin-icons/geth.png and /dev/null differ diff --git a/assets/coin-icons/gin.png b/assets/coin-icons/gin.png deleted file mode 100644 index 80742cfe0..000000000 Binary files a/assets/coin-icons/gin.png and /dev/null differ diff --git a/assets/coin-icons/gld.png b/assets/coin-icons/gld.png deleted file mode 100644 index 80c0356bf..000000000 Binary files a/assets/coin-icons/gld.png and /dev/null differ diff --git a/assets/coin-icons/glt.png b/assets/coin-icons/glt.png deleted file mode 100644 index 597cdb4fb..000000000 Binary files a/assets/coin-icons/glt.png and /dev/null differ diff --git a/assets/coin-icons/glxt.png b/assets/coin-icons/glxt.png deleted file mode 100644 index 1601db682..000000000 Binary files a/assets/coin-icons/glxt.png and /dev/null differ diff --git a/assets/coin-icons/gmr.png b/assets/coin-icons/gmr.png deleted file mode 100644 index 6b58ce25f..000000000 Binary files a/assets/coin-icons/gmr.png and /dev/null differ diff --git a/assets/coin-icons/gms.png b/assets/coin-icons/gms.png deleted file mode 100644 index 60a93b5cd..000000000 Binary files a/assets/coin-icons/gms.png and /dev/null differ diff --git a/assets/coin-icons/gold.png b/assets/coin-icons/gold.png deleted file mode 100644 index 146cb64de..000000000 Binary files a/assets/coin-icons/gold.png and /dev/null differ diff --git a/assets/coin-icons/grc.png b/assets/coin-icons/grc.png deleted file mode 100644 index 0b6d7abb2..000000000 Binary files a/assets/coin-icons/grc.png and /dev/null differ diff --git a/assets/coin-icons/grin.png b/assets/coin-icons/grin.png deleted file mode 100644 index 3cf688c72..000000000 Binary files a/assets/coin-icons/grin.png and /dev/null differ diff --git a/assets/coin-icons/gsc.png b/assets/coin-icons/gsc.png deleted file mode 100644 index 73dff1f2b..000000000 Binary files a/assets/coin-icons/gsc.png and /dev/null differ diff --git a/assets/coin-icons/gtc.png b/assets/coin-icons/gtc.png deleted file mode 100644 index bf1f70b53..000000000 Binary files a/assets/coin-icons/gtc.png and /dev/null differ diff --git a/assets/coin-icons/gto.png b/assets/coin-icons/gto.png deleted file mode 100644 index 7f963f0f3..000000000 Binary files a/assets/coin-icons/gto.png and /dev/null differ diff --git a/assets/coin-icons/gtu.png b/assets/coin-icons/gtu.png deleted file mode 100644 index 3ef5e1c59..000000000 Binary files a/assets/coin-icons/gtu.png and /dev/null differ diff --git a/assets/coin-icons/gup.png b/assets/coin-icons/gup.png deleted file mode 100644 index 08cdacc35..000000000 Binary files a/assets/coin-icons/gup.png and /dev/null differ diff --git a/assets/coin-icons/gvt.png b/assets/coin-icons/gvt.png deleted file mode 100644 index 0f4cfbafc..000000000 Binary files a/assets/coin-icons/gvt.png and /dev/null differ diff --git a/assets/coin-icons/gxs.png b/assets/coin-icons/gxs.png deleted file mode 100644 index 51ef1ef3f..000000000 Binary files a/assets/coin-icons/gxs.png and /dev/null differ diff --git a/assets/coin-icons/gxx.png b/assets/coin-icons/gxx.png deleted file mode 100644 index df3cffd38..000000000 Binary files a/assets/coin-icons/gxx.png and /dev/null differ diff --git a/assets/coin-icons/gzr.png b/assets/coin-icons/gzr.png deleted file mode 100644 index aa787de3e..000000000 Binary files a/assets/coin-icons/gzr.png and /dev/null differ diff --git a/assets/coin-icons/hgt.png b/assets/coin-icons/hgt.png deleted file mode 100644 index db9ff4fe4..000000000 Binary files a/assets/coin-icons/hgt.png and /dev/null differ diff --git a/assets/coin-icons/hmq.png b/assets/coin-icons/hmq.png deleted file mode 100644 index ed6d4cef1..000000000 Binary files a/assets/coin-icons/hmq.png and /dev/null differ diff --git a/assets/coin-icons/hodl.png b/assets/coin-icons/hodl.png deleted file mode 100644 index 7289d2e02..000000000 Binary files a/assets/coin-icons/hodl.png and /dev/null differ diff --git a/assets/coin-icons/hodlc.png b/assets/coin-icons/hodlc.png deleted file mode 100644 index 3cd26230f..000000000 Binary files a/assets/coin-icons/hodlc.png and /dev/null differ diff --git a/assets/coin-icons/honk.png b/assets/coin-icons/honk.png deleted file mode 100644 index dbd5c3114..000000000 Binary files a/assets/coin-icons/honk.png and /dev/null differ diff --git a/assets/coin-icons/hpb.png b/assets/coin-icons/hpb.png deleted file mode 100644 index 5ae30389d..000000000 Binary files a/assets/coin-icons/hpb.png and /dev/null differ diff --git a/assets/coin-icons/hsr.png b/assets/coin-icons/hsr.png deleted file mode 100644 index 45a956a60..000000000 Binary files a/assets/coin-icons/hsr.png and /dev/null differ diff --git a/assets/coin-icons/html.png b/assets/coin-icons/html.png deleted file mode 100644 index 39bb75157..000000000 Binary files a/assets/coin-icons/html.png and /dev/null differ diff --git a/assets/coin-icons/huc.png b/assets/coin-icons/huc.png deleted file mode 100644 index cb1aac368..000000000 Binary files a/assets/coin-icons/huc.png and /dev/null differ diff --git a/assets/coin-icons/hyn.png b/assets/coin-icons/hyn.png deleted file mode 100644 index cdebf2aca..000000000 Binary files a/assets/coin-icons/hyn.png and /dev/null differ diff --git a/assets/coin-icons/i0c.png b/assets/coin-icons/i0c.png deleted file mode 100644 index 8a2722f3a..000000000 Binary files a/assets/coin-icons/i0c.png and /dev/null differ diff --git a/assets/coin-icons/icn.png b/assets/coin-icons/icn.png deleted file mode 100644 index c7ff27c9c..000000000 Binary files a/assets/coin-icons/icn.png and /dev/null differ diff --git a/assets/coin-icons/ilk.png b/assets/coin-icons/ilk.png deleted file mode 100644 index d10c830dd..000000000 Binary files a/assets/coin-icons/ilk.png and /dev/null differ diff --git a/assets/coin-icons/img.png b/assets/coin-icons/img.png deleted file mode 100644 index 680ad2831..000000000 Binary files a/assets/coin-icons/img.png and /dev/null differ diff --git a/assets/coin-icons/ind.png b/assets/coin-icons/ind.png deleted file mode 100644 index c84cf55ee..000000000 Binary files a/assets/coin-icons/ind.png and /dev/null differ diff --git a/assets/coin-icons/inn.png b/assets/coin-icons/inn.png deleted file mode 100644 index 2e85d8cdf..000000000 Binary files a/assets/coin-icons/inn.png and /dev/null differ diff --git a/assets/coin-icons/ins.png b/assets/coin-icons/ins.png deleted file mode 100644 index 087b82efb..000000000 Binary files a/assets/coin-icons/ins.png and /dev/null differ diff --git a/assets/coin-icons/ion.png b/assets/coin-icons/ion.png deleted file mode 100644 index 6df3fa0e0..000000000 Binary files a/assets/coin-icons/ion.png and /dev/null differ diff --git a/assets/coin-icons/iop.png b/assets/coin-icons/iop.png deleted file mode 100644 index 68d8070e1..000000000 Binary files a/assets/coin-icons/iop.png and /dev/null differ diff --git a/assets/coin-icons/iq.png b/assets/coin-icons/iq.png deleted file mode 100644 index f40b7238c..000000000 Binary files a/assets/coin-icons/iq.png and /dev/null differ diff --git a/assets/coin-icons/itc.png b/assets/coin-icons/itc.png deleted file mode 100644 index 818a578d7..000000000 Binary files a/assets/coin-icons/itc.png and /dev/null differ diff --git a/assets/coin-icons/itl.png b/assets/coin-icons/itl.png deleted file mode 100644 index a404edfd1..000000000 Binary files a/assets/coin-icons/itl.png and /dev/null differ diff --git a/assets/coin-icons/jnt.png b/assets/coin-icons/jnt.png deleted file mode 100644 index 844495534..000000000 Binary files a/assets/coin-icons/jnt.png and /dev/null differ diff --git a/assets/coin-icons/jpy.png b/assets/coin-icons/jpy.png deleted file mode 100644 index 6abb90cdc..000000000 Binary files a/assets/coin-icons/jpy.png and /dev/null differ diff --git a/assets/coin-icons/jstr.png b/assets/coin-icons/jstr.png deleted file mode 100644 index cbf796640..000000000 Binary files a/assets/coin-icons/jstr.png and /dev/null differ diff --git a/assets/coin-icons/jumblr.png b/assets/coin-icons/jumblr.png deleted file mode 100644 index 641735109..000000000 Binary files a/assets/coin-icons/jumblr.png and /dev/null differ diff --git a/assets/coin-icons/jwl.png b/assets/coin-icons/jwl.png deleted file mode 100644 index 79dfadad6..000000000 Binary files a/assets/coin-icons/jwl.png and /dev/null differ diff --git a/assets/coin-icons/k64.png b/assets/coin-icons/k64.png deleted file mode 100644 index 9978367e8..000000000 Binary files a/assets/coin-icons/k64.png and /dev/null differ diff --git a/assets/coin-icons/kin.png b/assets/coin-icons/kin.png deleted file mode 100644 index a542e1e1c..000000000 Binary files a/assets/coin-icons/kin.png and /dev/null differ diff --git a/assets/coin-icons/krb.png b/assets/coin-icons/krb.png deleted file mode 100644 index 68c9d44da..000000000 Binary files a/assets/coin-icons/krb.png and /dev/null differ diff --git a/assets/coin-icons/lend.png b/assets/coin-icons/lend.png deleted file mode 100644 index 00347783b..000000000 Binary files a/assets/coin-icons/lend.png and /dev/null differ diff --git a/assets/coin-icons/lkk.png b/assets/coin-icons/lkk.png deleted file mode 100644 index f6bf96ba0..000000000 Binary files a/assets/coin-icons/lkk.png and /dev/null differ diff --git a/assets/coin-icons/lpt.png b/assets/coin-icons/lpt.png deleted file mode 100644 index de06add8f..000000000 Binary files a/assets/coin-icons/lpt.png and /dev/null differ diff --git a/assets/coin-icons/lsk.png b/assets/coin-icons/lsk.png deleted file mode 100644 index 2d4640d8a..000000000 Binary files a/assets/coin-icons/lsk.png and /dev/null differ diff --git a/assets/coin-icons/ltz.png b/assets/coin-icons/ltz.png deleted file mode 100644 index ef021ada2..000000000 Binary files a/assets/coin-icons/ltz.png and /dev/null differ diff --git a/assets/coin-icons/lun.png b/assets/coin-icons/lun.png deleted file mode 100644 index a249ddfd8..000000000 Binary files a/assets/coin-icons/lun.png and /dev/null differ diff --git a/assets/coin-icons/luna.png b/assets/coin-icons/luna.png deleted file mode 100644 index 368a86bdc..000000000 Binary files a/assets/coin-icons/luna.png and /dev/null differ diff --git a/assets/coin-icons/lux.png b/assets/coin-icons/lux.png deleted file mode 100644 index 7bc3f82f2..000000000 Binary files a/assets/coin-icons/lux.png and /dev/null differ diff --git a/assets/coin-icons/maid.png b/assets/coin-icons/maid.png deleted file mode 100644 index 344c09dba..000000000 Binary files a/assets/coin-icons/maid.png and /dev/null differ diff --git a/assets/coin-icons/mcap.png b/assets/coin-icons/mcap.png deleted file mode 100644 index ac4cebde1..000000000 Binary files a/assets/coin-icons/mcap.png and /dev/null differ diff --git a/assets/coin-icons/mda.png b/assets/coin-icons/mda.png deleted file mode 100644 index ae9e80b20..000000000 Binary files a/assets/coin-icons/mda.png and /dev/null differ diff --git a/assets/coin-icons/mds.png b/assets/coin-icons/mds.png deleted file mode 100644 index ee108785d..000000000 Binary files a/assets/coin-icons/mds.png and /dev/null differ diff --git a/assets/coin-icons/mesh.png b/assets/coin-icons/mesh.png deleted file mode 100644 index 890199eaa..000000000 Binary files a/assets/coin-icons/mesh.png and /dev/null differ diff --git a/assets/coin-icons/mft.png b/assets/coin-icons/mft.png deleted file mode 100644 index 585de7e4d..000000000 Binary files a/assets/coin-icons/mft.png and /dev/null differ diff --git a/assets/coin-icons/mgnx.png b/assets/coin-icons/mgnx.png deleted file mode 100644 index 7aaf91f84..000000000 Binary files a/assets/coin-icons/mgnx.png and /dev/null differ diff --git a/assets/coin-icons/mgo.png b/assets/coin-icons/mgo.png deleted file mode 100644 index 73f67319f..000000000 Binary files a/assets/coin-icons/mgo.png and /dev/null differ diff --git a/assets/coin-icons/mgw.png b/assets/coin-icons/mgw.png deleted file mode 100644 index a86a8fcb4..000000000 Binary files a/assets/coin-icons/mgw.png and /dev/null differ diff --git a/assets/coin-icons/mith.png b/assets/coin-icons/mith.png deleted file mode 100644 index 7c5b3d2a5..000000000 Binary files a/assets/coin-icons/mith.png and /dev/null differ diff --git a/assets/coin-icons/mlm.png b/assets/coin-icons/mlm.png deleted file mode 100644 index 746a33cb1..000000000 Binary files a/assets/coin-icons/mlm.png and /dev/null differ diff --git a/assets/coin-icons/mnx.png b/assets/coin-icons/mnx.png deleted file mode 100644 index 8f251649b..000000000 Binary files a/assets/coin-icons/mnx.png and /dev/null differ diff --git a/assets/coin-icons/mnz.png b/assets/coin-icons/mnz.png deleted file mode 100644 index 3cc45569f..000000000 Binary files a/assets/coin-icons/mnz.png and /dev/null differ diff --git a/assets/coin-icons/moac.png b/assets/coin-icons/moac.png deleted file mode 100644 index bb1fc64d3..000000000 Binary files a/assets/coin-icons/moac.png and /dev/null differ diff --git a/assets/coin-icons/mod.png b/assets/coin-icons/mod.png deleted file mode 100644 index af2fd0c00..000000000 Binary files a/assets/coin-icons/mod.png and /dev/null differ diff --git a/assets/coin-icons/moon.png b/assets/coin-icons/moon.png deleted file mode 100644 index 003bdc946..000000000 Binary files a/assets/coin-icons/moon.png and /dev/null differ diff --git a/assets/coin-icons/morty.png b/assets/coin-icons/morty.png deleted file mode 100644 index 089dd7cce..000000000 Binary files a/assets/coin-icons/morty.png and /dev/null differ diff --git a/assets/coin-icons/movi.png b/assets/coin-icons/movi.png deleted file mode 100644 index 5ce494e5d..000000000 Binary files a/assets/coin-icons/movi.png and /dev/null differ diff --git a/assets/coin-icons/mrph.png b/assets/coin-icons/mrph.png deleted file mode 100644 index 5de79155e..000000000 Binary files a/assets/coin-icons/mrph.png and /dev/null differ diff --git a/assets/coin-icons/mshark.png b/assets/coin-icons/mshark.png deleted file mode 100644 index f321f3c63..000000000 Binary files a/assets/coin-icons/mshark.png and /dev/null differ diff --git a/assets/coin-icons/msr.png b/assets/coin-icons/msr.png deleted file mode 100644 index d41538d05..000000000 Binary files a/assets/coin-icons/msr.png and /dev/null differ diff --git a/assets/coin-icons/mth.png b/assets/coin-icons/mth.png deleted file mode 100644 index 911436004..000000000 Binary files a/assets/coin-icons/mth.png and /dev/null differ diff --git a/assets/coin-icons/mtl.png b/assets/coin-icons/mtl.png deleted file mode 100644 index b415e1135..000000000 Binary files a/assets/coin-icons/mtl.png and /dev/null differ diff --git a/assets/coin-icons/music.png b/assets/coin-icons/music.png deleted file mode 100644 index 6ac40912e..000000000 Binary files a/assets/coin-icons/music.png and /dev/null differ diff --git a/assets/coin-icons/myb.png b/assets/coin-icons/myb.png deleted file mode 100644 index 235320787..000000000 Binary files a/assets/coin-icons/myb.png and /dev/null differ diff --git a/assets/coin-icons/mzc.png b/assets/coin-icons/mzc.png deleted file mode 100644 index 1aaa4218c..000000000 Binary files a/assets/coin-icons/mzc.png and /dev/null differ diff --git a/assets/coin-icons/nano.png b/assets/coin-icons/nano.png deleted file mode 100644 index c535c2cdd..000000000 Binary files a/assets/coin-icons/nano.png and /dev/null differ diff --git a/assets/coin-icons/nas.png b/assets/coin-icons/nas.png deleted file mode 100644 index ffe277c60..000000000 Binary files a/assets/coin-icons/nas.png and /dev/null differ diff --git a/assets/coin-icons/nature.png b/assets/coin-icons/nature.png deleted file mode 100644 index 47a1c1b1b..000000000 Binary files a/assets/coin-icons/nature.png and /dev/null differ diff --git a/assets/coin-icons/ncash.png b/assets/coin-icons/ncash.png deleted file mode 100644 index 9766e1881..000000000 Binary files a/assets/coin-icons/ncash.png and /dev/null differ diff --git a/assets/coin-icons/ndz.png b/assets/coin-icons/ndz.png deleted file mode 100644 index 5c19e62db..000000000 Binary files a/assets/coin-icons/ndz.png and /dev/null differ diff --git a/assets/coin-icons/nebl.png b/assets/coin-icons/nebl.png deleted file mode 100644 index a8419a938..000000000 Binary files a/assets/coin-icons/nebl.png and /dev/null differ diff --git a/assets/coin-icons/neo.png b/assets/coin-icons/neo.png deleted file mode 100644 index 2a4d78328..000000000 Binary files a/assets/coin-icons/neo.png and /dev/null differ diff --git a/assets/coin-icons/neos.png b/assets/coin-icons/neos.png deleted file mode 100644 index 328d8e589..000000000 Binary files a/assets/coin-icons/neos.png and /dev/null differ diff --git a/assets/coin-icons/neu.png b/assets/coin-icons/neu.png deleted file mode 100644 index 5e154c638..000000000 Binary files a/assets/coin-icons/neu.png and /dev/null differ diff --git a/assets/coin-icons/ngc.png b/assets/coin-icons/ngc.png deleted file mode 100644 index 3fd9f3649..000000000 Binary files a/assets/coin-icons/ngc.png and /dev/null differ diff --git a/assets/coin-icons/nio.png b/assets/coin-icons/nio.png deleted file mode 100644 index 879f99fe0..000000000 Binary files a/assets/coin-icons/nio.png and /dev/null differ diff --git a/assets/coin-icons/nix.png b/assets/coin-icons/nix.png deleted file mode 100644 index 89b48551a..000000000 Binary files a/assets/coin-icons/nix.png and /dev/null differ diff --git a/assets/coin-icons/nkn.png b/assets/coin-icons/nkn.png deleted file mode 100644 index 98ead1186..000000000 Binary files a/assets/coin-icons/nkn.png and /dev/null differ diff --git a/assets/coin-icons/nlc2.png b/assets/coin-icons/nlc2.png deleted file mode 100644 index d7f1012f2..000000000 Binary files a/assets/coin-icons/nlc2.png and /dev/null differ diff --git a/assets/coin-icons/nlg.png b/assets/coin-icons/nlg.png deleted file mode 100644 index 6e60c60cd..000000000 Binary files a/assets/coin-icons/nlg.png and /dev/null differ diff --git a/assets/coin-icons/nmr.png b/assets/coin-icons/nmr.png deleted file mode 100644 index c25145c83..000000000 Binary files a/assets/coin-icons/nmr.png and /dev/null differ diff --git a/assets/coin-icons/noah.png b/assets/coin-icons/noah.png deleted file mode 100644 index 92e33aff4..000000000 Binary files a/assets/coin-icons/noah.png and /dev/null differ diff --git a/assets/coin-icons/nor.png b/assets/coin-icons/nor.png deleted file mode 100644 index 94b3f5988..000000000 Binary files a/assets/coin-icons/nor.png and /dev/null differ diff --git a/assets/coin-icons/npxs.png b/assets/coin-icons/npxs.png deleted file mode 100644 index c691daf45..000000000 Binary files a/assets/coin-icons/npxs.png and /dev/null differ diff --git a/assets/coin-icons/nuls.png b/assets/coin-icons/nuls.png deleted file mode 100644 index 19b44c6ac..000000000 Binary files a/assets/coin-icons/nuls.png and /dev/null differ diff --git a/assets/coin-icons/nxs.png b/assets/coin-icons/nxs.png deleted file mode 100644 index 10c0f5278..000000000 Binary files a/assets/coin-icons/nxs.png and /dev/null differ diff --git a/assets/coin-icons/nxt.png b/assets/coin-icons/nxt.png deleted file mode 100644 index 00203a569..000000000 Binary files a/assets/coin-icons/nxt.png and /dev/null differ diff --git a/assets/coin-icons/oax.png b/assets/coin-icons/oax.png deleted file mode 100644 index 5befbd6c8..000000000 Binary files a/assets/coin-icons/oax.png and /dev/null differ diff --git a/assets/coin-icons/ok.png b/assets/coin-icons/ok.png deleted file mode 100644 index e30ccb22b..000000000 Binary files a/assets/coin-icons/ok.png and /dev/null differ diff --git a/assets/coin-icons/omni.png b/assets/coin-icons/omni.png deleted file mode 100644 index 05b5b828d..000000000 Binary files a/assets/coin-icons/omni.png and /dev/null differ diff --git a/assets/coin-icons/ong.png b/assets/coin-icons/ong.png deleted file mode 100644 index 8555c2d71..000000000 Binary files a/assets/coin-icons/ong.png and /dev/null differ diff --git a/assets/coin-icons/oot.png b/assets/coin-icons/oot.png deleted file mode 100644 index 7aacf56c6..000000000 Binary files a/assets/coin-icons/oot.png and /dev/null differ diff --git a/assets/coin-icons/ore.png b/assets/coin-icons/ore.png deleted file mode 100644 index d959c2e0b..000000000 Binary files a/assets/coin-icons/ore.png and /dev/null differ diff --git a/assets/coin-icons/ost.png b/assets/coin-icons/ost.png deleted file mode 100644 index aeac50588..000000000 Binary files a/assets/coin-icons/ost.png and /dev/null differ diff --git a/assets/coin-icons/ourc.png b/assets/coin-icons/ourc.png deleted file mode 100644 index 25cdb0f8a..000000000 Binary files a/assets/coin-icons/ourc.png and /dev/null differ diff --git a/assets/coin-icons/ox.png b/assets/coin-icons/ox.png deleted file mode 100644 index b82215fb4..000000000 Binary files a/assets/coin-icons/ox.png and /dev/null differ diff --git a/assets/coin-icons/pac.png b/assets/coin-icons/pac.png deleted file mode 100644 index 02931e2f5..000000000 Binary files a/assets/coin-icons/pac.png and /dev/null differ diff --git a/assets/coin-icons/pangea.png b/assets/coin-icons/pangea.png deleted file mode 100644 index 41ff0106a..000000000 Binary files a/assets/coin-icons/pangea.png and /dev/null differ diff --git a/assets/coin-icons/part.png b/assets/coin-icons/part.png deleted file mode 100644 index 81cf88414..000000000 Binary files a/assets/coin-icons/part.png and /dev/null differ diff --git a/assets/coin-icons/pasc.png b/assets/coin-icons/pasc.png deleted file mode 100644 index 29f99b6c0..000000000 Binary files a/assets/coin-icons/pasc.png and /dev/null differ diff --git a/assets/coin-icons/pasl.png b/assets/coin-icons/pasl.png deleted file mode 100644 index 42b1984cc..000000000 Binary files a/assets/coin-icons/pasl.png and /dev/null differ diff --git a/assets/coin-icons/pay.png b/assets/coin-icons/pay.png deleted file mode 100644 index 5d5f44f34..000000000 Binary files a/assets/coin-icons/pay.png and /dev/null differ diff --git a/assets/coin-icons/payx.png b/assets/coin-icons/payx.png deleted file mode 100644 index 679a5ec31..000000000 Binary files a/assets/coin-icons/payx.png and /dev/null differ diff --git a/assets/coin-icons/pbc.png b/assets/coin-icons/pbc.png deleted file mode 100644 index 6bc763f1d..000000000 Binary files a/assets/coin-icons/pbc.png and /dev/null differ diff --git a/assets/coin-icons/peo.png b/assets/coin-icons/peo.png deleted file mode 100644 index ee5096084..000000000 Binary files a/assets/coin-icons/peo.png and /dev/null differ diff --git a/assets/coin-icons/pgn.png b/assets/coin-icons/pgn.png deleted file mode 100644 index 4e0619864..000000000 Binary files a/assets/coin-icons/pgn.png and /dev/null differ diff --git a/assets/coin-icons/pgt.png b/assets/coin-icons/pgt.png deleted file mode 100644 index 7fbdabd64..000000000 Binary files a/assets/coin-icons/pgt.png and /dev/null differ diff --git a/assets/coin-icons/pink.png b/assets/coin-icons/pink.png index bddbe4032..f71acad88 100644 Binary files a/assets/coin-icons/pink.png and b/assets/coin-icons/pink.png differ diff --git a/assets/coin-icons/pirl.png b/assets/coin-icons/pirl.png deleted file mode 100644 index 3b3aa6a58..000000000 Binary files a/assets/coin-icons/pirl.png and /dev/null differ diff --git a/assets/coin-icons/pizza.png b/assets/coin-icons/pizza.png deleted file mode 100644 index 0923b54ab..000000000 Binary files a/assets/coin-icons/pizza.png and /dev/null differ diff --git a/assets/coin-icons/plr.png b/assets/coin-icons/plr.png deleted file mode 100644 index 5e80abea9..000000000 Binary files a/assets/coin-icons/plr.png and /dev/null differ diff --git a/assets/coin-icons/plu.png b/assets/coin-icons/plu.png deleted file mode 100644 index 6521de778..000000000 Binary files a/assets/coin-icons/plu.png and /dev/null differ diff --git a/assets/coin-icons/poa.png b/assets/coin-icons/poa.png deleted file mode 100644 index bfc00d332..000000000 Binary files a/assets/coin-icons/poa.png and /dev/null differ diff --git a/assets/coin-icons/poe.png b/assets/coin-icons/poe.png deleted file mode 100644 index 9785aff5b..000000000 Binary files a/assets/coin-icons/poe.png and /dev/null differ diff --git a/assets/coin-icons/polis.png b/assets/coin-icons/polis.png deleted file mode 100644 index a7732a0af..000000000 Binary files a/assets/coin-icons/polis.png and /dev/null differ diff --git a/assets/coin-icons/poly.png b/assets/coin-icons/poly.png deleted file mode 100644 index df9edf1d7..000000000 Binary files a/assets/coin-icons/poly.png and /dev/null differ diff --git a/assets/coin-icons/ppp.png b/assets/coin-icons/ppp.png deleted file mode 100644 index 674265c1e..000000000 Binary files a/assets/coin-icons/ppp.png and /dev/null differ diff --git a/assets/coin-icons/ppt.png b/assets/coin-icons/ppt.png deleted file mode 100644 index 650a33823..000000000 Binary files a/assets/coin-icons/ppt.png and /dev/null differ diff --git a/assets/coin-icons/pre.png b/assets/coin-icons/pre.png deleted file mode 100644 index 83b140300..000000000 Binary files a/assets/coin-icons/pre.png and /dev/null differ diff --git a/assets/coin-icons/prl.png b/assets/coin-icons/prl.png deleted file mode 100644 index 8a4ef27b7..000000000 Binary files a/assets/coin-icons/prl.png and /dev/null differ diff --git a/assets/coin-icons/ptx.png b/assets/coin-icons/ptx.png deleted file mode 100644 index 48ee6dafd..000000000 Binary files a/assets/coin-icons/ptx.png and /dev/null differ diff --git a/assets/coin-icons/pura.png b/assets/coin-icons/pura.png deleted file mode 100644 index 0c2f713bb..000000000 Binary files a/assets/coin-icons/pura.png and /dev/null differ diff --git a/assets/coin-icons/pxt.png b/assets/coin-icons/pxt.png deleted file mode 100644 index 5e5d05a98..000000000 Binary files a/assets/coin-icons/pxt.png and /dev/null differ diff --git a/assets/coin-icons/pyr.png b/assets/coin-icons/pyr.png new file mode 100644 index 000000000..d99e317bb Binary files /dev/null and b/assets/coin-icons/pyr.png differ diff --git a/assets/coin-icons/qash.png b/assets/coin-icons/qash.png deleted file mode 100644 index 413909492..000000000 Binary files a/assets/coin-icons/qash.png and /dev/null differ diff --git a/assets/coin-icons/qbit.png b/assets/coin-icons/qbit.png deleted file mode 100644 index 85c5af92a..000000000 Binary files a/assets/coin-icons/qbit.png and /dev/null differ diff --git a/assets/coin-icons/qiwi.png b/assets/coin-icons/qiwi.png deleted file mode 100644 index de27fc33a..000000000 Binary files a/assets/coin-icons/qiwi.png and /dev/null differ diff --git a/assets/coin-icons/qlc.png b/assets/coin-icons/qlc.png deleted file mode 100644 index 4b7845f20..000000000 Binary files a/assets/coin-icons/qlc.png and /dev/null differ diff --git a/assets/coin-icons/qrl.png b/assets/coin-icons/qrl.png deleted file mode 100644 index 4008b636c..000000000 Binary files a/assets/coin-icons/qrl.png and /dev/null differ diff --git a/assets/coin-icons/qsp.png b/assets/coin-icons/qsp.png deleted file mode 100644 index a38509771..000000000 Binary files a/assets/coin-icons/qsp.png and /dev/null differ diff --git a/assets/coin-icons/r.png b/assets/coin-icons/r.png deleted file mode 100644 index 2b933d1a6..000000000 Binary files a/assets/coin-icons/r.png and /dev/null differ diff --git a/assets/coin-icons/radius.png b/assets/coin-icons/radius.png deleted file mode 100644 index ba992ed98..000000000 Binary files a/assets/coin-icons/radius.png and /dev/null differ diff --git a/assets/coin-icons/rads.png b/assets/coin-icons/rads.png deleted file mode 100644 index f2ee62e5f..000000000 Binary files a/assets/coin-icons/rads.png and /dev/null differ diff --git a/assets/coin-icons/rap.png b/assets/coin-icons/rap.png deleted file mode 100644 index 3014f5d0f..000000000 Binary files a/assets/coin-icons/rap.png and /dev/null differ diff --git a/assets/coin-icons/rcn.png b/assets/coin-icons/rcn.png deleted file mode 100644 index 2c09f99f8..000000000 Binary files a/assets/coin-icons/rcn.png and /dev/null differ diff --git a/assets/coin-icons/rdn.png b/assets/coin-icons/rdn.png deleted file mode 100644 index b389a5fe4..000000000 Binary files a/assets/coin-icons/rdn.png and /dev/null differ diff --git a/assets/coin-icons/revs.png b/assets/coin-icons/revs.png deleted file mode 100644 index f677d4903..000000000 Binary files a/assets/coin-icons/revs.png and /dev/null differ diff --git a/assets/coin-icons/rfox.png b/assets/coin-icons/rfox.png deleted file mode 100644 index c22fe8c0b..000000000 Binary files a/assets/coin-icons/rfox.png and /dev/null differ diff --git a/assets/coin-icons/rhoc.png b/assets/coin-icons/rhoc.png deleted file mode 100644 index e80a70601..000000000 Binary files a/assets/coin-icons/rhoc.png and /dev/null differ diff --git a/assets/coin-icons/rick.png b/assets/coin-icons/rick.png deleted file mode 100644 index 851b50a46..000000000 Binary files a/assets/coin-icons/rick.png and /dev/null differ diff --git a/assets/coin-icons/rise.png b/assets/coin-icons/rise.png deleted file mode 100644 index 8b33cf89e..000000000 Binary files a/assets/coin-icons/rise.png and /dev/null differ diff --git a/assets/coin-icons/roger.png b/assets/coin-icons/roger.png deleted file mode 100644 index d75b30686..000000000 Binary files a/assets/coin-icons/roger.png and /dev/null differ diff --git a/assets/coin-icons/roi.png b/assets/coin-icons/roi.png deleted file mode 100644 index aaf45ee1f..000000000 Binary files a/assets/coin-icons/roi.png and /dev/null differ diff --git a/assets/coin-icons/rpx.png b/assets/coin-icons/rpx.png deleted file mode 100644 index a67dcd1af..000000000 Binary files a/assets/coin-icons/rpx.png and /dev/null differ diff --git a/assets/coin-icons/rub.png b/assets/coin-icons/rub.png deleted file mode 100644 index 8ba4c3a20..000000000 Binary files a/assets/coin-icons/rub.png and /dev/null differ diff --git a/assets/coin-icons/ruff.png b/assets/coin-icons/ruff.png deleted file mode 100644 index d85763ca5..000000000 Binary files a/assets/coin-icons/ruff.png and /dev/null differ diff --git a/assets/coin-icons/rvt.png b/assets/coin-icons/rvt.png deleted file mode 100644 index 7fb3336a2..000000000 Binary files a/assets/coin-icons/rvt.png and /dev/null differ diff --git a/assets/coin-icons/ryo.png b/assets/coin-icons/ryo.png deleted file mode 100644 index 2d395bea6..000000000 Binary files a/assets/coin-icons/ryo.png and /dev/null differ diff --git a/assets/coin-icons/safe.png b/assets/coin-icons/safe.png deleted file mode 100644 index ffd768db5..000000000 Binary files a/assets/coin-icons/safe.png and /dev/null differ diff --git a/assets/coin-icons/salt.png b/assets/coin-icons/salt.png deleted file mode 100644 index fc583a47a..000000000 Binary files a/assets/coin-icons/salt.png and /dev/null differ diff --git a/assets/coin-icons/san.png b/assets/coin-icons/san.png deleted file mode 100644 index 9350eb33c..000000000 Binary files a/assets/coin-icons/san.png and /dev/null differ diff --git a/assets/coin-icons/sbd.png b/assets/coin-icons/sbd.png deleted file mode 100644 index 80e170b81..000000000 Binary files a/assets/coin-icons/sbd.png and /dev/null differ diff --git a/assets/coin-icons/sbtc.png b/assets/coin-icons/sbtc.png deleted file mode 100644 index f695ef9ae..000000000 Binary files a/assets/coin-icons/sbtc.png and /dev/null differ diff --git a/assets/coin-icons/sc.png b/assets/coin-icons/sc.png deleted file mode 100644 index eb7277b7b..000000000 Binary files a/assets/coin-icons/sc.png and /dev/null differ diff --git a/assets/coin-icons/scriv.png b/assets/coin-icons/scriv.png deleted file mode 100644 index d00e9c9a6..000000000 Binary files a/assets/coin-icons/scriv.png and /dev/null differ diff --git a/assets/coin-icons/shift.png b/assets/coin-icons/shift.png deleted file mode 100644 index 5696496db..000000000 Binary files a/assets/coin-icons/shift.png and /dev/null differ diff --git a/assets/coin-icons/sib.png b/assets/coin-icons/sib.png deleted file mode 100644 index dba35069f..000000000 Binary files a/assets/coin-icons/sib.png and /dev/null differ diff --git a/assets/coin-icons/sirx.png b/assets/coin-icons/sirx.png deleted file mode 100644 index c46d34b33..000000000 Binary files a/assets/coin-icons/sirx.png and /dev/null differ diff --git a/assets/coin-icons/six.png b/assets/coin-icons/six.png deleted file mode 100644 index b879b8d6b..000000000 Binary files a/assets/coin-icons/six.png and /dev/null differ diff --git a/assets/coin-icons/sky.png b/assets/coin-icons/sky.png deleted file mode 100644 index aceb4f530..000000000 Binary files a/assets/coin-icons/sky.png and /dev/null differ diff --git a/assets/coin-icons/slr.png b/assets/coin-icons/slr.png deleted file mode 100644 index 185c50378..000000000 Binary files a/assets/coin-icons/slr.png and /dev/null differ diff --git a/assets/coin-icons/sls.png b/assets/coin-icons/sls.png deleted file mode 100644 index 33dd1bdc1..000000000 Binary files a/assets/coin-icons/sls.png and /dev/null differ diff --git a/assets/coin-icons/smart chain.png b/assets/coin-icons/smart chain.png deleted file mode 100644 index 11278a0f1..000000000 Binary files a/assets/coin-icons/smart chain.png and /dev/null differ diff --git a/assets/coin-icons/smart.png b/assets/coin-icons/smart.png deleted file mode 100644 index 7087f2007..000000000 Binary files a/assets/coin-icons/smart.png and /dev/null differ diff --git a/assets/coin-icons/smc.png b/assets/coin-icons/smc.png deleted file mode 100644 index a3518d37a..000000000 Binary files a/assets/coin-icons/smc.png and /dev/null differ diff --git a/assets/coin-icons/sngls.png b/assets/coin-icons/sngls.png deleted file mode 100644 index ec1172e6c..000000000 Binary files a/assets/coin-icons/sngls.png and /dev/null differ diff --git a/assets/coin-icons/snm.png b/assets/coin-icons/snm.png deleted file mode 100644 index 00342e450..000000000 Binary files a/assets/coin-icons/snm.png and /dev/null differ diff --git a/assets/coin-icons/soc.png b/assets/coin-icons/soc.png deleted file mode 100644 index d7ef713f4..000000000 Binary files a/assets/coin-icons/soc.png and /dev/null differ diff --git a/assets/coin-icons/soulja.png b/assets/coin-icons/soulja.png deleted file mode 100644 index e60218a2e..000000000 Binary files a/assets/coin-icons/soulja.png and /dev/null differ diff --git a/assets/coin-icons/spank.png b/assets/coin-icons/spank.png deleted file mode 100644 index 57fc140ee..000000000 Binary files a/assets/coin-icons/spank.png and /dev/null differ diff --git a/assets/coin-icons/spc.png b/assets/coin-icons/spc.png deleted file mode 100644 index f21ae96d0..000000000 Binary files a/assets/coin-icons/spc.png and /dev/null differ diff --git a/assets/coin-icons/sphtx.png b/assets/coin-icons/sphtx.png deleted file mode 100644 index d6665dd5a..000000000 Binary files a/assets/coin-icons/sphtx.png and /dev/null differ diff --git a/assets/coin-icons/spk.png b/assets/coin-icons/spk.png deleted file mode 100644 index f35c5c453..000000000 Binary files a/assets/coin-icons/spk.png and /dev/null differ diff --git a/assets/coin-icons/srn.png b/assets/coin-icons/srn.png deleted file mode 100644 index ae79d000c..000000000 Binary files a/assets/coin-icons/srn.png and /dev/null differ diff --git a/assets/coin-icons/stak.png b/assets/coin-icons/stak.png deleted file mode 100644 index 9ee60a1c9..000000000 Binary files a/assets/coin-icons/stak.png and /dev/null differ diff --git a/assets/coin-icons/start.png b/assets/coin-icons/start.png deleted file mode 100644 index 139871bc1..000000000 Binary files a/assets/coin-icons/start.png and /dev/null differ diff --git a/assets/coin-icons/steem.png b/assets/coin-icons/steem.png deleted file mode 100644 index a3edd127f..000000000 Binary files a/assets/coin-icons/steem.png and /dev/null differ diff --git a/assets/coin-icons/storm.png b/assets/coin-icons/storm.png deleted file mode 100644 index 454beb1f4..000000000 Binary files a/assets/coin-icons/storm.png and /dev/null differ diff --git a/assets/coin-icons/stox.png b/assets/coin-icons/stox.png deleted file mode 100644 index 8c7a8cc93..000000000 Binary files a/assets/coin-icons/stox.png and /dev/null differ diff --git a/assets/coin-icons/stq.png b/assets/coin-icons/stq.png deleted file mode 100644 index 82632e1b6..000000000 Binary files a/assets/coin-icons/stq.png and /dev/null differ diff --git a/assets/coin-icons/strat.png b/assets/coin-icons/strat.png deleted file mode 100644 index 76c27a6db..000000000 Binary files a/assets/coin-icons/strat.png and /dev/null differ diff --git a/assets/coin-icons/stst.png b/assets/coin-icons/stst.png deleted file mode 100644 index 451488384..000000000 Binary files a/assets/coin-icons/stst.png and /dev/null differ diff --git a/assets/coin-icons/stx.png b/assets/coin-icons/stx.png deleted file mode 100644 index 44956c7b2..000000000 Binary files a/assets/coin-icons/stx.png and /dev/null differ diff --git a/assets/coin-icons/sub.png b/assets/coin-icons/sub.png deleted file mode 100644 index 0981b830f..000000000 Binary files a/assets/coin-icons/sub.png and /dev/null differ diff --git a/assets/coin-icons/sudo.png b/assets/coin-icons/sudo.png deleted file mode 100644 index cc4b85c16..000000000 Binary files a/assets/coin-icons/sudo.png and /dev/null differ diff --git a/assets/coin-icons/sumo.png b/assets/coin-icons/sumo.png deleted file mode 100644 index 0babfcdd3..000000000 Binary files a/assets/coin-icons/sumo.png and /dev/null differ diff --git a/assets/coin-icons/svd.png b/assets/coin-icons/svd.png deleted file mode 100644 index 29f0d4b36..000000000 Binary files a/assets/coin-icons/svd.png and /dev/null differ diff --git a/assets/coin-icons/swt.png b/assets/coin-icons/swt.png deleted file mode 100644 index 2cbd3a453..000000000 Binary files a/assets/coin-icons/swt.png and /dev/null differ diff --git a/assets/coin-icons/sxc.png b/assets/coin-icons/sxc.png deleted file mode 100644 index 111b7062d..000000000 Binary files a/assets/coin-icons/sxc.png and /dev/null differ diff --git a/assets/coin-icons/taas.png b/assets/coin-icons/taas.png deleted file mode 100644 index a8b1fc9b2..000000000 Binary files a/assets/coin-icons/taas.png and /dev/null differ diff --git a/assets/coin-icons/tau.png b/assets/coin-icons/tau.png deleted file mode 100644 index ed929c8b7..000000000 Binary files a/assets/coin-icons/tau.png and /dev/null differ diff --git a/assets/coin-icons/tbx.png b/assets/coin-icons/tbx.png deleted file mode 100644 index 9fc35d3a9..000000000 Binary files a/assets/coin-icons/tbx.png and /dev/null differ diff --git a/assets/coin-icons/ten.png b/assets/coin-icons/ten.png deleted file mode 100644 index 9f49bd4f2..000000000 Binary files a/assets/coin-icons/ten.png and /dev/null differ diff --git a/assets/coin-icons/tern.png b/assets/coin-icons/tern.png deleted file mode 100644 index b8a6c8074..000000000 Binary files a/assets/coin-icons/tern.png and /dev/null differ diff --git a/assets/coin-icons/tgch.png b/assets/coin-icons/tgch.png deleted file mode 100644 index 42b6942fb..000000000 Binary files a/assets/coin-icons/tgch.png and /dev/null differ diff --git a/assets/coin-icons/theta.png b/assets/coin-icons/theta.png deleted file mode 100644 index 19a803b81..000000000 Binary files a/assets/coin-icons/theta.png and /dev/null differ diff --git a/assets/coin-icons/thx.png b/assets/coin-icons/thx.png deleted file mode 100644 index cde6c321a..000000000 Binary files a/assets/coin-icons/thx.png and /dev/null differ diff --git a/assets/coin-icons/time.png b/assets/coin-icons/time.png deleted file mode 100644 index f9d803187..000000000 Binary files a/assets/coin-icons/time.png and /dev/null differ diff --git a/assets/coin-icons/tix.png b/assets/coin-icons/tix.png deleted file mode 100644 index 1b43cbf11..000000000 Binary files a/assets/coin-icons/tix.png and /dev/null differ diff --git a/assets/coin-icons/tkn.png b/assets/coin-icons/tkn.png deleted file mode 100644 index d29b59f0e..000000000 Binary files a/assets/coin-icons/tkn.png and /dev/null differ diff --git a/assets/coin-icons/tks.png b/assets/coin-icons/tks.png deleted file mode 100644 index 4dc1d4f61..000000000 Binary files a/assets/coin-icons/tks.png and /dev/null differ diff --git a/assets/coin-icons/tmtg.png b/assets/coin-icons/tmtg.png deleted file mode 100644 index aed51a902..000000000 Binary files a/assets/coin-icons/tmtg.png and /dev/null differ diff --git a/assets/coin-icons/tnb.png b/assets/coin-icons/tnb.png deleted file mode 100644 index b379c4c2f..000000000 Binary files a/assets/coin-icons/tnb.png and /dev/null differ diff --git a/assets/coin-icons/tnc.png b/assets/coin-icons/tnc.png deleted file mode 100644 index 3951469cd..000000000 Binary files a/assets/coin-icons/tnc.png and /dev/null differ diff --git a/assets/coin-icons/tnt.png b/assets/coin-icons/tnt.png deleted file mode 100644 index 60653c5b9..000000000 Binary files a/assets/coin-icons/tnt.png and /dev/null differ diff --git a/assets/coin-icons/tomo.png b/assets/coin-icons/tomo.png deleted file mode 100644 index 7c6789e2d..000000000 Binary files a/assets/coin-icons/tomo.png and /dev/null differ diff --git a/assets/coin-icons/tpay.png b/assets/coin-icons/tpay.png deleted file mode 100644 index 2b1b50caa..000000000 Binary files a/assets/coin-icons/tpay.png and /dev/null differ diff --git a/assets/coin-icons/trat.png b/assets/coin-icons/trat.png deleted file mode 100644 index 367ee63ba..000000000 Binary files a/assets/coin-icons/trat.png and /dev/null differ diff --git a/assets/coin-icons/trb.png b/assets/coin-icons/trb.png deleted file mode 100644 index ec5a4360d..000000000 Binary files a/assets/coin-icons/trb.png and /dev/null differ diff --git a/assets/coin-icons/tret.png b/assets/coin-icons/tret.png deleted file mode 100644 index 8414b1975..000000000 Binary files a/assets/coin-icons/tret.png and /dev/null differ diff --git a/assets/coin-icons/trig.png b/assets/coin-icons/trig.png deleted file mode 100644 index ea93248cb..000000000 Binary files a/assets/coin-icons/trig.png and /dev/null differ diff --git a/assets/coin-icons/trst.png b/assets/coin-icons/trst.png deleted file mode 100644 index 97712d183..000000000 Binary files a/assets/coin-icons/trst.png and /dev/null differ diff --git a/assets/coin-icons/trtl.png b/assets/coin-icons/trtl.png deleted file mode 100644 index d4b85ecf1..000000000 Binary files a/assets/coin-icons/trtl.png and /dev/null differ diff --git a/assets/coin-icons/tzc.png b/assets/coin-icons/tzc.png deleted file mode 100644 index 86ac08827..000000000 Binary files a/assets/coin-icons/tzc.png and /dev/null differ diff --git a/assets/coin-icons/ucash.png b/assets/coin-icons/ucash.png deleted file mode 100644 index 4906b4566..000000000 Binary files a/assets/coin-icons/ucash.png and /dev/null differ diff --git a/assets/coin-icons/unity.png b/assets/coin-icons/unity.png deleted file mode 100644 index 1f19340c0..000000000 Binary files a/assets/coin-icons/unity.png and /dev/null differ diff --git a/assets/coin-icons/usd.png b/assets/coin-icons/usd.png deleted file mode 100644 index 644be969c..000000000 Binary files a/assets/coin-icons/usd.png and /dev/null differ diff --git a/assets/coin-icons/usdi.png b/assets/coin-icons/usdi.png deleted file mode 100644 index be035d8d3..000000000 Binary files a/assets/coin-icons/usdi.png and /dev/null differ diff --git a/assets/coin-icons/ust.png b/assets/coin-icons/ust.png deleted file mode 100644 index e5e60ed8c..000000000 Binary files a/assets/coin-icons/ust.png and /dev/null differ diff --git a/assets/coin-icons/veri.png b/assets/coin-icons/veri.png deleted file mode 100644 index 7baa4b412..000000000 Binary files a/assets/coin-icons/veri.png and /dev/null differ diff --git a/assets/coin-icons/vib.png b/assets/coin-icons/vib.png deleted file mode 100644 index f3daa330f..000000000 Binary files a/assets/coin-icons/vib.png and /dev/null differ diff --git a/assets/coin-icons/vibe.png b/assets/coin-icons/vibe.png deleted file mode 100644 index 12177436b..000000000 Binary files a/assets/coin-icons/vibe.png and /dev/null differ diff --git a/assets/coin-icons/vivo.png b/assets/coin-icons/vivo.png deleted file mode 100644 index 67a31cbd0..000000000 Binary files a/assets/coin-icons/vivo.png and /dev/null differ diff --git a/assets/coin-icons/vot.png b/assets/coin-icons/vot.png deleted file mode 100644 index afdbb877b..000000000 Binary files a/assets/coin-icons/vot.png and /dev/null differ diff --git a/assets/coin-icons/vrc.png b/assets/coin-icons/vrc.png deleted file mode 100644 index 25d1761d5..000000000 Binary files a/assets/coin-icons/vrc.png and /dev/null differ diff --git a/assets/coin-icons/vsl.png b/assets/coin-icons/vsl.png deleted file mode 100644 index 92bb4570d..000000000 Binary files a/assets/coin-icons/vsl.png and /dev/null differ diff --git a/assets/coin-icons/vtho.png b/assets/coin-icons/vtho.png deleted file mode 100644 index 31e2c887b..000000000 Binary files a/assets/coin-icons/vtho.png and /dev/null differ diff --git a/assets/coin-icons/wabi.png b/assets/coin-icons/wabi.png deleted file mode 100644 index 386730a18..000000000 Binary files a/assets/coin-icons/wabi.png and /dev/null differ diff --git a/assets/coin-icons/wan.png b/assets/coin-icons/wan.png deleted file mode 100644 index 1a3780580..000000000 Binary files a/assets/coin-icons/wan.png and /dev/null differ diff --git a/assets/coin-icons/wax.png b/assets/coin-icons/wax.png deleted file mode 100644 index a1cc23ec6..000000000 Binary files a/assets/coin-icons/wax.png and /dev/null differ diff --git a/assets/coin-icons/wgr.png b/assets/coin-icons/wgr.png deleted file mode 100644 index c62a01a63..000000000 Binary files a/assets/coin-icons/wgr.png and /dev/null differ diff --git a/assets/coin-icons/wicc.png b/assets/coin-icons/wicc.png deleted file mode 100644 index 303c45ea6..000000000 Binary files a/assets/coin-icons/wicc.png and /dev/null differ diff --git a/assets/coin-icons/wings.png b/assets/coin-icons/wings.png deleted file mode 100644 index 4c2520b60..000000000 Binary files a/assets/coin-icons/wings.png and /dev/null differ diff --git a/assets/coin-icons/wlc.png b/assets/coin-icons/wlc.png deleted file mode 100644 index bd100c058..000000000 Binary files a/assets/coin-icons/wlc.png and /dev/null differ diff --git a/assets/coin-icons/wpr.png b/assets/coin-icons/wpr.png deleted file mode 100644 index b38ff4010..000000000 Binary files a/assets/coin-icons/wpr.png and /dev/null differ diff --git a/assets/coin-icons/wsb.png b/assets/coin-icons/wsb.png deleted file mode 100644 index c556281fa..000000000 Binary files a/assets/coin-icons/wsb.png and /dev/null differ diff --git a/assets/coin-icons/wtc.png b/assets/coin-icons/wtc.png deleted file mode 100644 index 5d47bc4b8..000000000 Binary files a/assets/coin-icons/wtc.png and /dev/null differ diff --git a/assets/coin-icons/x0z.png b/assets/coin-icons/x0z.png deleted file mode 100644 index f51a57fb6..000000000 Binary files a/assets/coin-icons/x0z.png and /dev/null differ diff --git a/assets/coin-icons/xas.png b/assets/coin-icons/xas.png deleted file mode 100644 index daa598637..000000000 Binary files a/assets/coin-icons/xas.png and /dev/null differ diff --git a/assets/coin-icons/xaur.png b/assets/coin-icons/xaur.png deleted file mode 100644 index fda509d0b..000000000 Binary files a/assets/coin-icons/xaur.png and /dev/null differ diff --git a/assets/coin-icons/xbc.png b/assets/coin-icons/xbc.png deleted file mode 100644 index 4667a6b04..000000000 Binary files a/assets/coin-icons/xbc.png and /dev/null differ diff --git a/assets/coin-icons/xbp.png b/assets/coin-icons/xbp.png deleted file mode 100644 index 78a3b71de..000000000 Binary files a/assets/coin-icons/xbp.png and /dev/null differ diff --git a/assets/coin-icons/xby.png b/assets/coin-icons/xby.png deleted file mode 100644 index fa325c642..000000000 Binary files a/assets/coin-icons/xby.png and /dev/null differ diff --git a/assets/coin-icons/xcp.png b/assets/coin-icons/xcp.png deleted file mode 100644 index 0c2ef3bfe..000000000 Binary files a/assets/coin-icons/xcp.png and /dev/null differ diff --git a/assets/coin-icons/xdn.png b/assets/coin-icons/xdn.png deleted file mode 100644 index 244dadfa8..000000000 Binary files a/assets/coin-icons/xdn.png and /dev/null differ diff --git a/assets/coin-icons/xem.png b/assets/coin-icons/xem.png deleted file mode 100644 index a5c781298..000000000 Binary files a/assets/coin-icons/xem.png and /dev/null differ diff --git a/assets/coin-icons/xin.png b/assets/coin-icons/xin.png deleted file mode 100644 index 0298cc169..000000000 Binary files a/assets/coin-icons/xin.png and /dev/null differ diff --git a/assets/coin-icons/xmcc.png b/assets/coin-icons/xmcc.png deleted file mode 100644 index cb8cc9d4b..000000000 Binary files a/assets/coin-icons/xmcc.png and /dev/null differ diff --git a/assets/coin-icons/xmg.png b/assets/coin-icons/xmg.png deleted file mode 100644 index 459c9ad8b..000000000 Binary files a/assets/coin-icons/xmg.png and /dev/null differ diff --git a/assets/coin-icons/xmo.png b/assets/coin-icons/xmo.png deleted file mode 100644 index a08920699..000000000 Binary files a/assets/coin-icons/xmo.png and /dev/null differ diff --git a/assets/coin-icons/xmr.png b/assets/coin-icons/xmr.png deleted file mode 100644 index 3f570dcdd..000000000 Binary files a/assets/coin-icons/xmr.png and /dev/null differ diff --git a/assets/coin-icons/xna.png b/assets/coin-icons/xna.png new file mode 100644 index 000000000..fd44224a3 Binary files /dev/null and b/assets/coin-icons/xna.png differ diff --git a/assets/coin-icons/xov.png b/assets/coin-icons/xov.png deleted file mode 100644 index 81deecda8..000000000 Binary files a/assets/coin-icons/xov.png and /dev/null differ diff --git a/assets/coin-icons/xp.png b/assets/coin-icons/xp.png deleted file mode 100644 index a60da0149..000000000 Binary files a/assets/coin-icons/xp.png and /dev/null differ diff --git a/assets/coin-icons/xpa.png b/assets/coin-icons/xpa.png deleted file mode 100644 index 7fa26c300..000000000 Binary files a/assets/coin-icons/xpa.png and /dev/null differ diff --git a/assets/coin-icons/xsg.png b/assets/coin-icons/xsg.png deleted file mode 100644 index 7e58250f1..000000000 Binary files a/assets/coin-icons/xsg.png and /dev/null differ diff --git a/assets/coin-icons/xsn.png b/assets/coin-icons/xsn.png deleted file mode 100644 index 57304a986..000000000 Binary files a/assets/coin-icons/xsn.png and /dev/null differ diff --git a/assets/coin-icons/xuc.png b/assets/coin-icons/xuc.png deleted file mode 100644 index 45fcd602f..000000000 Binary files a/assets/coin-icons/xuc.png and /dev/null differ diff --git a/assets/coin-icons/xzc.png b/assets/coin-icons/xzc.png deleted file mode 100644 index 440b04978..000000000 Binary files a/assets/coin-icons/xzc.png and /dev/null differ diff --git a/assets/coin-icons/yce.png b/assets/coin-icons/yce.png deleted file mode 100644 index b2fcd01ec..000000000 Binary files a/assets/coin-icons/yce.png and /dev/null differ diff --git a/assets/coin-icons/ylc.png b/assets/coin-icons/ylc.png deleted file mode 100644 index ae3a7ceb6..000000000 Binary files a/assets/coin-icons/ylc.png and /dev/null differ diff --git a/assets/coin-icons/zapt.png b/assets/coin-icons/zapt.png deleted file mode 100644 index fe593de5f..000000000 Binary files a/assets/coin-icons/zapt.png and /dev/null differ diff --git a/assets/coin-icons/zat.png b/assets/coin-icons/zat.png deleted file mode 100644 index 51d06fab1..000000000 Binary files a/assets/coin-icons/zat.png and /dev/null differ diff --git a/assets/coin-icons/zb.png b/assets/coin-icons/zb.png deleted file mode 100644 index 0abf5cb2b..000000000 Binary files a/assets/coin-icons/zb.png and /dev/null differ diff --git a/assets/coin-icons/zcl.png b/assets/coin-icons/zcl.png deleted file mode 100644 index 8180764de..000000000 Binary files a/assets/coin-icons/zcl.png and /dev/null differ diff --git a/assets/coin-icons/zel.png b/assets/coin-icons/zel.png deleted file mode 100644 index f6feaeb84..000000000 Binary files a/assets/coin-icons/zel.png and /dev/null differ diff --git a/assets/coin-icons/zen.png b/assets/coin-icons/zen.png deleted file mode 100644 index 0b350e82b..000000000 Binary files a/assets/coin-icons/zen.png and /dev/null differ diff --git a/assets/coin-icons/zest.png b/assets/coin-icons/zest.png deleted file mode 100644 index 945771570..000000000 Binary files a/assets/coin-icons/zest.png and /dev/null differ diff --git a/assets/coin-icons/zexo.png b/assets/coin-icons/zexo.png deleted file mode 100644 index 11f010721..000000000 Binary files a/assets/coin-icons/zexo.png and /dev/null differ diff --git a/assets/coin-icons/zilla.png b/assets/coin-icons/zilla.png deleted file mode 100644 index 5d0d681d9..000000000 Binary files a/assets/coin-icons/zilla.png and /dev/null differ diff --git a/assets/coins.json b/assets/coins.json index e88a09e32..2778be9e4 100644 --- a/assets/coins.json +++ b/assets/coins.json @@ -627,6 +627,25 @@ }, "derivation_path": "m/44'/60'" }, + { + "coin": "ARPA-PLG20", + "name": "arpa_plg20", + "fname": "ARPA Chain", + "rpcport": 80, + "mm2": 1, + "chain_id": 137, + "decimals": 18, + "avg_blocktime": 1.8, + "required_confirmations": 20, + "protocol": { + "type": "ERC20", + "protocol_data": { + "platform": "MATIC", + "contract_address": "0xEE800B277A96B0f490a1A732e1D6395FAD960A26" + } + }, + "derivation_path": "m/44'/966'" + }, { "coin": "ARRR", "asset": "PIRATE", @@ -665,7 +684,8 @@ } } }, - "required_confirmations": 3 + "required_confirmations": 2, + "requires_notarization": true }, { "coin": "ARRR-BEP20", @@ -745,9 +765,9 @@ "derivation_path": "m/44'/85'" }, { - "coin": "AVA-BEP20", - "name": "ava_bep20", - "fname": "Travala.com", + "coin": "AVA-BEP20_OLD", + "name": "ava_bep20_old", + "fname": "Travala.com (OLD)", "rpcport": 80, "mm2": 1, "chain_id": 56, @@ -762,6 +782,25 @@ }, "derivation_path": "m/44'/714'" }, + { + "coin": "AVA-ERC20", + "name": "ava_erc20", + "fname": "AVA", + "rpcport": 80, + "mm2": 1, + "chain_id": 1, + "decimals": 18, + "avg_blocktime": 15, + "required_confirmations": 3, + "protocol": { + "type": "ERC20", + "protocol_data": { + "platform": "ETH", + "contract_address": "0xa6C0c097741D55ECd9a3A7DeF3A8253fD022ceB9" + } + }, + "derivation_path": "m/44'/60'" + }, { "coin": "AVAXT", "name": "avaxt", @@ -954,6 +993,25 @@ }, "derivation_path": "m/44'/357'" }, + { + "coin": "AYA-BEP20", + "name": "aya_bep20", + "fname": "Aryacoin", + "rpcport": 80, + "mm2": 1, + "chain_id": 56, + "decimals": 8, + "avg_blocktime": 3, + "required_confirmations": 3, + "protocol": { + "type": "ERC20", + "protocol_data": { + "platform": "BNB", + "contract_address": "0x86e5775F5c46304939c40959812bC220dD1c0333" + } + }, + "derivation_path": "m/44'/714'" + }, { "coin": "BABYDOGE-BEP20", "name": "babydoge_bep20", @@ -1440,6 +1498,66 @@ "mm2": 1, "derivation_path": "m/44'/145'" }, + { + "coin": "BBK", + "name": "bitblocks", + "fname": "BitBlocks", + "rpcport": 59768, + "pubtype": 25, + "p2shtype": 85, + "wiftype": 107, + "txfee": 10000, + "mm2": 1, + "wallet_only": true, + "sign_message_prefix": "DarkNet Signed Message:\n", + "required_confirmations": 5, + "avg_blocktime": 60, + "protocol": { + "type": "UTXO" + }, + "links": { + "github": "https://github.com/BitBlocksProject/BitBlocks", + "homepage": "https://bitblocksproject.com" + } + }, + { + "coin": "BBK-BEP20", + "name": "bbk_bep20", + "fname": "BitBlocks", + "rpcport": 80, + "mm2": 1, + "chain_id": 56, + "decimals": 18, + "avg_blocktime": 3, + "required_confirmations": 3, + "protocol": { + "type": "ERC20", + "protocol_data": { + "platform": "BNB", + "contract_address": "0x9045B0eda6B6A556cf9B3d81C2db47411714f847" + } + }, + "derivation_path": "m/44'/714'" + }, + { + "coin": "BBK-PLG20", + "name": "bbk_plg20", + "fname": "BitBlocks", + "rpcport": 80, + "mm2": 1, + "chain_id": 137, + "decimals": 18, + "avg_blocktime": 1.8, + "required_confirmations": 20, + "protocol": { + "type": "ERC20", + "protocol_data": { + "platform": "MATIC", + "contract_address": "0x2C8a46eF99Cb64928eB3Dd50A925327e02296F63" + } + }, + "derivation_path": "m/44'/966'" + }, { "coin": "BCH-ERC20", "name": "bch_erc20", @@ -1497,24 +1615,6 @@ }, "derivation_path": "m/44'/1023'" }, - { - "coin": "BET", - "asset": "BET", - "fname": "BET", - "rpcport": 14250, - "txversion": 4, - "overwintered": 1, - "mm2": 1, - "sign_message_prefix": "Komodo Signed Message:\n", - "required_confirmations": 2, - "requires_notarization": true, - "avg_blocktime": 60, - "protocol": { - "type": "UTXO" - }, - "derivation_path": "m/44'/141'", - "trezor_coin": "Komodo" - }, { "coin": "BIDR-BEP20", "name": "bidr_bep20", @@ -1768,24 +1868,6 @@ }, "derivation_path": "m/44'/966'" }, - { - "coin": "BOTS", - "asset": "BOTS", - "fname": "BOTS", - "rpcport": 11964, - "txversion": 4, - "overwintered": 1, - "mm2": 1, - "sign_message_prefix": "Komodo Signed Message:\n", - "required_confirmations": 2, - "requires_notarization": true, - "avg_blocktime": 60, - "protocol": { - "type": "UTXO" - }, - "derivation_path": "m/44'/141'", - "trezor_coin": "Komodo" - }, { "coin": "BRZ-BEP20", "name": "brz_bep20", @@ -1805,6 +1887,25 @@ }, "derivation_path": "m/44'/714'" }, + { + "coin": "BRZ-ERC20_OLD", + "name": "brz_erc20_old", + "fname": "Brazilian Digital Token (OLD)", + "rpcport": 80, + "mm2": 1, + "chain_id": 1, + "decimals": 4, + "avg_blocktime": 15, + "required_confirmations": 3, + "protocol": { + "type": "ERC20", + "protocol_data": { + "platform": "ETH", + "contract_address": "0x420412E765BFa6d85aaaC94b4f7b708C89be2e2B" + } + }, + "derivation_path": "m/44'/60'" + }, { "coin": "BRZ-ERC20", "name": "brz_erc20", @@ -1812,18 +1913,37 @@ "rpcport": 80, "mm2": 1, "chain_id": 1, - "decimals": 4, + "decimals": 18, "avg_blocktime": 15, "required_confirmations": 3, "protocol": { "type": "ERC20", "protocol_data": { "platform": "ETH", - "contract_address": "0x420412E765BFa6d85aaaC94b4f7b708C89be2e2B" + "contract_address": "0x01d33FD36ec67c6Ada32cf36b31e88EE190B1839" } }, "derivation_path": "m/44'/60'" }, + { + "coin": "BRZ-PLG20_OLD", + "name": "brz_plg20_old", + "fname": "Brazilian Digital Token (OLD)", + "rpcport": 80, + "mm2": 1, + "chain_id": 137, + "decimals": 4, + "avg_blocktime": 1.8, + "required_confirmations": 20, + "protocol": { + "type": "ERC20", + "protocol_data": { + "platform": "MATIC", + "contract_address": "0x491a4eB4f1FC3BfF8E1d2FC856a6A46663aD556f" + } + }, + "derivation_path": "m/44'/966'" + }, { "coin": "BRZ-PLG20", "name": "brz_plg20", @@ -1831,14 +1951,14 @@ "rpcport": 80, "mm2": 1, "chain_id": 137, - "decimals": 4, + "decimals": 18, "avg_blocktime": 1.8, "required_confirmations": 20, "protocol": { "type": "ERC20", "protocol_data": { "platform": "MATIC", - "contract_address": "0x491a4eB4f1FC3BfF8E1d2FC856a6A46663aD556f" + "contract_address": "0x4eD141110F6EeeAbA9A1df36d8c26f684d2475Dc" } }, "derivation_path": "m/44'/966'" @@ -3289,24 +3409,6 @@ "homepage": "https://www.dentwireless.com" } }, - { - "coin": "DEX", - "sign_message_prefix": "Komodo Signed Message:\n", - "asset": "DEX", - "fname": "DEX", - "rpcport": 11890, - "txversion": 4, - "overwintered": 1, - "mm2": 1, - "required_confirmations": 2, - "requires_notarization": true, - "avg_blocktime": 60, - "protocol": { - "type": "UTXO" - }, - "derivation_path": "m/44'/141'", - "trezor_coin": "Komodo" - }, { "coin": "DFX-ERC20", "name": "dfx_erc20", @@ -3615,6 +3717,29 @@ }, "derivation_path": "m/44'/714'" }, + { + "coin": "DOGEC", + "name": "dogecash", + "fname": "DogeCash", + "rpcport": 56750, + "pubtype": 30, + "p2shtype": 19, + "wiftype": 122, + "txfee": 10000, + "dust": 5460, + "mm2": 1, + "sign_message_prefix": "DarkNet Signed Message:\n", + "required_confirmations": 5, + "avg_blocktime": 60, + "protocol": { + "type": "UTXO" + }, + "derivation_path": "m/44'/385'", + "links": { + "github": "https://github.com/dogecash/dogecash", + "homepage": "https://dogecash.net" + } + }, { "coin": "DOGEDASH-BEP20", "name": "dogedash_bep20", @@ -4874,6 +4999,87 @@ "wallet_only": true, "derivation_path": "m/44'/714'" }, + { + "coin": "GAME-ERC20", + "name": "game_erc20", + "fname": "GameCredits", + "rpcport": 80, + "mm2": 1, + "chain_id": 1, + "decimals": 18, + "avg_blocktime": 15, + "required_confirmations": 3, + "protocol": { + "type": "ERC20", + "protocol_data": { + "platform": "ETH", + "contract_address": "0x63f88A2298a5c4AEE3c216Aa6D926B184a4b2437" + } + }, + "derivation_path": "m/44'/60'" + }, + { + "coin": "GAME-PLG20", + "name": "game_plg20", + "fname": "GameCredits", + "rpcport": 80, + "mm2": 1, + "chain_id": 137, + "decimals": 18, + "avg_blocktime": 1.8, + "required_confirmations": 20, + "protocol": { + "type": "ERC20", + "protocol_data": { + "platform": "MATIC", + "contract_address": "0x8d1566569d5b695d44a9a234540f68D393cDC40D" + } + }, + "derivation_path": "m/44'/966'" + }, + { + "coin": "GBX", + "name": "gobyte", + "fname": "GoByte", + "confpath": "USERHOME/.gobytecore/gobyte.conf", + "rpcport": 12454, + "pubtype": 38, + "p2shtype": 10, + "wiftype": 198, + "segwit": false, + "txfee": 10000, + "mm2": 1, + "sign_message_prefix": "DarkCoin Signed Message:\n", + "required_confirmations": 3, + "avg_blocktime": 150, + "protocol": { + "type": "UTXO" + }, + "derivation_path": "m/44'/176'", + "links": { + "github": "https://github.com/gobytecoin/gobyte", + "homepage": "https://gobyte.network" + } + }, + { + "coin": "GBX-BEP20", + "name": "gbx_bep20", + "fname": "GoByte", + "rpcport": 80, + "mm2": 1, + "chain_id": 56, + "decimals": 18, + "avg_blocktime": 3, + "required_confirmations": 3, + "protocol": { + "type": "ERC20", + "protocol_data": { + "platform": "BNB", + "contract_address": "0x8E10F08C9A56a93B6adbfBcFda421919B3357596" + } + }, + "derivation_path": "m/44'/714'" + }, { "coin": "GFT-BEP20", "name": "gft_bep20", @@ -5134,7 +5340,8 @@ "pubtype": 36, "p2shtype": 5, "wiftype": 128, - "txfee": 0, + "txfee": 10000, + "dust": 10000, "segwit": true, "bech32_hrp": "grs", "mm2": 1, @@ -5159,7 +5366,8 @@ "pubtype": 36, "p2shtype": 5, "wiftype": 128, - "txfee": 0, + "txfee": 10000, + "dust": 10000, "segwit": true, "bech32_hrp": "grs", "address_format": { @@ -5167,6 +5375,7 @@ }, "orderbook_ticker": "GRS", "mm2": 1, + "wallet_only": true, "required_confirmations": 5, "avg_blocktime": 60, "protocol": { @@ -5360,24 +5569,6 @@ }, "derivation_path": "m/44'/966'" }, - { - "coin": "HODL", - "sign_message_prefix": "Komodo Signed Message:\n", - "asset": "HODL", - "fname": "HODL", - "rpcport": 14431, - "txversion": 4, - "overwintered": 1, - "mm2": 1, - "required_confirmations": 2, - "requires_notarization": true, - "avg_blocktime": 60, - "protocol": { - "type": "UTXO" - }, - "derivation_path": "m/44'/141'", - "trezor_coin": "Komodo" - }, { "coin": "HOT-ERC20", "name": "hot_erc20", @@ -6420,24 +6611,6 @@ }, "derivation_path": "m/44'/714'" }, - { - "coin": "JUMBLR", - "sign_message_prefix": "Komodo Signed Message:\n", - "asset": "JUMBLR", - "fname": "JUMBLR", - "rpcport": 15106, - "txversion": 4, - "overwintered": 1, - "mm2": 1, - "required_confirmations": 2, - "requires_notarization": true, - "avg_blocktime": 60, - "protocol": { - "type": "UTXO" - }, - "derivation_path": "m/44'/141'", - "trezor_coin": "Komodo" - }, { "coin": "KCS", "name": "kucoin-token", @@ -7586,42 +7759,6 @@ "derivation_path": "m/44'/141'", "trezor_coin": "Komodo" }, - { - "coin": "MESH", - "sign_message_prefix": "Komodo Signed Message:\n", - "asset": "MESH", - "fname": "SuperMESH", - "rpcport": 9455, - "txversion": 4, - "overwintered": 1, - "mm2": 1, - "required_confirmations": 4, - "requires_notarization": false, - "avg_blocktime": 60, - "protocol": { - "type": "UTXO" - }, - "derivation_path": "m/44'/141'", - "trezor_coin": "Komodo" - }, - { - "coin": "MGW", - "sign_message_prefix": "Komodo Signed Message:\n", - "asset": "MGW", - "fname": "MultiGateway", - "rpcport": 12386, - "txversion": 4, - "overwintered": 1, - "mm2": 1, - "required_confirmations": 2, - "requires_notarization": true, - "avg_blocktime": 60, - "protocol": { - "type": "UTXO" - }, - "derivation_path": "m/44'/141'", - "trezor_coin": "Komodo" - }, { "coin": "MINDS-ERC20", "name": "minds_erc20", @@ -7782,6 +7919,25 @@ }, "derivation_path": "m/44'/641'" }, + { + "coin": "MKR-PLG20", + "name": "mkr_plg20", + "fname": "Maker", + "rpcport": 80, + "mm2": 1, + "chain_id": 137, + "decimals": 18, + "avg_blocktime": 1.8, + "required_confirmations": 20, + "protocol": { + "type": "ERC20", + "protocol_data": { + "platform": "MATIC", + "contract_address": "0x6f7C932e7684666C9fd1d44527765433e01fF61d" + } + }, + "derivation_path": "m/44'/966'" + }, { "coin": "MM-ERC20", "name": "mm_erc20", @@ -7936,25 +8092,6 @@ "homepage": "https://monacoin.org" } }, - { - "coin": "MORTY", - "sign_message_prefix": "Komodo Signed Message:\n", - "asset": "MORTY", - "fname": "Morty", - "is_testnet": true, - "rpcport": 16348, - "txversion": 4, - "overwintered": 1, - "mm2": 1, - "required_confirmations": 1, - "requires_notarization": false, - "avg_blocktime": 60, - "protocol": { - "type": "UTXO" - }, - "derivation_path": "m/44'/141'", - "trezor_coin": "Komodo" - }, { "coin": "MOVR", "name": "moonriver", @@ -7991,24 +8128,6 @@ "homepage": "https://moonbeam.network/networks/moonbeam/" } }, - { - "coin": "MSHARK", - "sign_message_prefix": "Komodo Signed Message:\n", - "asset": "MSHARK", - "fname": "MiliShark", - "rpcport": 8846, - "txversion": 4, - "overwintered": 1, - "mm2": 1, - "required_confirmations": 2, - "requires_notarization": true, - "avg_blocktime": 60, - "protocol": { - "type": "UTXO" - }, - "derivation_path": "m/44'/141'", - "trezor_coin": "Komodo" - }, { "coin": "NAV", "name": "navcoin", @@ -8471,24 +8590,6 @@ }, "derivation_path": "m/44'/714'" }, - { - "coin": "PANGEA", - "sign_message_prefix": "Komodo Signed Message:\n", - "asset": "PANGEA", - "fname": "Pangea Poker", - "rpcport": 14068, - "txversion": 4, - "overwintered": 1, - "mm2": 1, - "required_confirmations": 2, - "requires_notarization": true, - "avg_blocktime": 60, - "protocol": { - "type": "UTXO" - }, - "derivation_path": "m/44'/141'", - "trezor_coin": "Komodo" - }, { "coin": "PAX-ERC20", "name": "pax_erc20", @@ -8670,6 +8771,30 @@ "type": "UTXO" } }, + { + "coin": "PINK", + "name": "pink", + "fname": "Pinkcoin", + "rpcport": 9135, + "isPoS": 1, + "pubtype": 3, + "p2shtype": 28, + "wiftype": 131, + "txfee": 10000, + "mm2": 1, + "wallet_only": true, + "sign_message_prefix": "Pinkcoin Signed Message:\n", + "required_confirmations": 5, + "avg_blocktime": 60, + "protocol": { + "type": "UTXO" + }, + "derivation_path": "m/44'/117'", + "links": { + "github": "https://github.com/Pink2Dev/Pink2", + "homepage": "https://getstarted.with.pink" + } + }, { "coin": "PIVX", "name": "pivx", @@ -8968,6 +9093,44 @@ "type": "UTXO" } }, + { + "coin": "PYR-ERC20", + "name": "pyr_erc20", + "fname": "Vulcan Forged", + "rpcport": 80, + "mm2": 1, + "chain_id": 1, + "decimals": 18, + "avg_blocktime": 15, + "required_confirmations": 3, + "protocol": { + "type": "ERC20", + "protocol_data": { + "platform": "ETH", + "contract_address": "0x430EF9263E76DAE63c84292C3409D61c598E9682" + } + }, + "derivation_path": "m/44'/60'" + }, + { + "coin": "PYR-PLG20", + "name": "pyr_plg20", + "fname": "Vulcan Forged", + "rpcport": 80, + "mm2": 1, + "chain_id": 137, + "decimals": 18, + "avg_blocktime": 1.8, + "required_confirmations": 20, + "protocol": { + "type": "ERC20", + "protocol_data": { + "platform": "MATIC", + "contract_address": "0x430EF9263E76DAE63c84292C3409D61c598E9682" + } + }, + "derivation_path": "m/44'/966'" + }, { "coin": "SHIB-BEP20", "name": "shib_bep20", @@ -9027,6 +9190,25 @@ }, "derivation_path": "m/44'/641'" }, + { + "coin": "SHIB-PLG20", + "name": "shib_plg20", + "fname": "Shiba Inu", + "rpcport": 80, + "mm2": 1, + "chain_id": 137, + "decimals": 18, + "avg_blocktime": 1.8, + "required_confirmations": 20, + "protocol": { + "type": "ERC20", + "protocol_data": { + "platform": "MATIC", + "contract_address": "0x6f8a06447Ff6FcF75d803135a7de15CE88C1d4ec" + } + }, + "derivation_path": "m/44'/966'" + }, { "coin": "QC-QRC20", "name": "qtum", @@ -9461,24 +9643,6 @@ }, "derivation_path": "m/44'/966'" }, - { - "coin": "REVS", - "sign_message_prefix": "Komodo Signed Message:\n", - "asset": "REVS", - "fname": "REVS", - "rpcport": 10196, - "txversion": 4, - "overwintered": 1, - "mm2": 1, - "required_confirmations": 2, - "requires_notarization": true, - "avg_blocktime": 60, - "protocol": { - "type": "UTXO" - }, - "derivation_path": "m/44'/141'", - "trezor_coin": "Komodo" - }, { "coin": "RIC", "name": "riecoin", @@ -9539,25 +9703,6 @@ "derivation_path": "m/44'/141'", "trezor_coin": "Komodo" }, - { - "coin": "RICK", - "asset": "RICK", - "fname": "Rick", - "rpcport": 25435, - "txversion": 4, - "overwintered": 1, - "mm2": 1, - "sign_message_prefix": "Komodo Signed Message:\n", - "is_testnet": true, - "required_confirmations": 1, - "requires_notarization": false, - "avg_blocktime": 60, - "protocol": { - "type": "UTXO" - }, - "derivation_path": "m/44'/141'", - "trezor_coin": "Komodo" - }, { "coin": "DOC", "asset": "DOC", @@ -9767,6 +9912,7 @@ "wiftype": 128, "segwit": true, "txfee": 1000000, + "dust": 1000000, "mm2": 1, "required_confirmations": 3, "avg_blocktime": 60, @@ -10284,6 +10430,7 @@ "fname": "Swipe", "rpcport": 80, "mm2": 1, + "wallet_only": true, "chain_id": 56, "avg_blocktime": 3, "required_confirmations": 3, @@ -10302,6 +10449,7 @@ "fname": "Swipe", "rpcport": 80, "mm2": 1, + "wallet_only": true, "chain_id": 1, "avg_blocktime": 15, "required_confirmations": 3, @@ -11836,7 +11984,7 @@ "derivation_path": "m/44'/141'", "trezor_coin": "Komodo" }, - { + { "coin": "VPRM", "sign_message_prefix": "Komodo Signed Message:\n", "asset": "VPRM", @@ -11862,7 +12010,8 @@ "pubtype": 71, "p2shtype": 5, "wiftype": 128, - "txfee": 0, + "txfee": 100000, + "dust": 100000, "segwit": true, "bech32_hrp": "vtc", "mm2": 1, @@ -11887,7 +12036,8 @@ "pubtype": 71, "p2shtype": 5, "wiftype": 128, - "txfee": 0, + "txfee": 100000, + "dust": 100000, "segwit": true, "bech32_hrp": "vtc", "address_format": { @@ -12263,6 +12413,29 @@ }, "derivation_path": "m/44'/90'" }, + { + "coin": "XNA", + "name": "neurai", + "fname": "Neurai", + "sign_message_prefix": "Neurai Signed Message:\n", + "rpcport": 19001, + "pubtype": 53, + "p2shtype": 117, + "wiftype": 128, + "segwit": true, + "txfee": 1000000, + "mm2": 1, + "required_confirmations": 5, + "avg_blocktime": 60, + "protocol": { + "type": "UTXO" + }, + "derivation_path": "m/44'/0'", + "links": { + "github": "https://github.com/NeuraiProject/Neurai", + "homepage": "https://neurai.org" + } + }, { "coin": "XPM", "name": "primecoin", @@ -12778,22 +12951,6 @@ }, "derivation_path": "m/44'/714'" }, - { - "coin": "ZILLA", - "sign_message_prefix": "Komodo Signed Message:\n", - "asset": "ZILLA", - "fname": "ChainZilla", - "rpcport": 10041, - "mm2": 1, - "required_confirmations": 4, - "requires_notarization": false, - "avg_blocktime": 60, - "protocol": { - "type": "UTXO" - }, - "derivation_path": "m/44'/141'", - "trezor_coin": "Komodo" - }, { "coin": "ZRX-AVX20", "name": "zrx_avx20", @@ -14111,7 +14268,7 @@ "force_min_relay_fee": true, "dust": 1000000, "mm2": 1, - "required_confirmations": 14, + "required_confirmations": 10, "avg_blocktime": 60, "protocol": { "type": "UTXO" diff --git a/assets/coins_config.json b/assets/coins_config.json index 17150b089..77e514b2e 100644 --- a/assets/coins_config.json +++ b/assets/coins_config.json @@ -40,6 +40,9 @@ }, { "url": "https://api.avax.network/ext/bc/C/rpc" + }, + { + "url": "https://avalanche.blockpi.network/v1/rpc/public" } ], "explorer_block_url": "block/" @@ -87,7 +90,10 @@ "url": "https://polygon-rpc.com" }, { - "url": "https://poly-rpc.gateway.pokt.network" + "url": "https://polygon.blockpi.network/v1/rpc/public" + }, + { + "url": "https://polygon.llamarpc.com" } ], "explorer_block_url": "block/" @@ -131,15 +137,6 @@ "url": "https://node.komodo.earth:8080/binance", "gui_auth": true }, - { - "url": "http://bsc1.cipig.net:8655" - }, - { - "url": "http://bsc2.cipig.net:8655" - }, - { - "url": "http://bsc3.cipig.net:8655" - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -191,15 +188,6 @@ "url": "https://node.komodo.earth:8080/binance", "gui_auth": true }, - { - "url": "http://bsc1.cipig.net:8655" - }, - { - "url": "http://bsc2.cipig.net:8655" - }, - { - "url": "http://bsc3.cipig.net:8655" - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -252,24 +240,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -378,7 +348,10 @@ "url": "https://polygon-rpc.com" }, { - "url": "https://poly-rpc.gateway.pokt.network" + "url": "https://polygon.blockpi.network/v1/rpc/public" + }, + { + "url": "https://polygon.llamarpc.com" } ], "explorer_block_url": "block/" @@ -426,7 +399,10 @@ "url": "https://polygon-rpc.com" }, { - "url": "https://poly-rpc.gateway.pokt.network" + "url": "https://polygon.blockpi.network/v1/rpc/public" + }, + { + "url": "https://polygon.llamarpc.com" } ], "explorer_block_url": "block/" @@ -472,6 +448,9 @@ }, { "url": "https://api.avax.network/ext/bc/C/rpc" + }, + { + "url": "https://avalanche.blockpi.network/v1/rpc/public" } ], "explorer_block_url": "block/" @@ -514,15 +493,6 @@ "url": "https://node.komodo.earth:8080/binance", "gui_auth": true }, - { - "url": "http://bsc1.cipig.net:8655" - }, - { - "url": "http://bsc2.cipig.net:8655" - }, - { - "url": "http://bsc3.cipig.net:8655" - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -580,24 +550,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -660,6 +612,9 @@ }, { "url": "https://rpc.fantom.network" + }, + { + "url": "https://rpc2.fantom.network" } ], "explorer_block_url": "block/" @@ -795,7 +750,10 @@ "url": "https://polygon-rpc.com" }, { - "url": "https://poly-rpc.gateway.pokt.network" + "url": "https://polygon.blockpi.network/v1/rpc/public" + }, + { + "url": "https://polygon.llamarpc.com" } ], "explorer_block_url": "block/" @@ -884,15 +842,6 @@ "url": "https://node.komodo.earth:8080/binance", "gui_auth": true }, - { - "url": "http://bsc1.cipig.net:8655" - }, - { - "url": "http://bsc2.cipig.net:8655" - }, - { - "url": "http://bsc3.cipig.net:8655" - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -944,15 +893,6 @@ "url": "https://node.komodo.earth:8080/binance", "gui_auth": true }, - { - "url": "http://bsc1.cipig.net:8655" - }, - { - "url": "http://bsc2.cipig.net:8655" - }, - { - "url": "http://bsc3.cipig.net:8655" - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -1009,24 +949,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -1054,7 +976,7 @@ "name": "agEUR", "coinpaprika_id": "", "coingecko_id": "", - "livecoinwatch_id": "", + "livecoinwatch_id": "EUR", "explorer_url": "https://snowtrace.io/", "explorer_tx_url": "tx/", "explorer_address_url": "address/", @@ -1089,6 +1011,9 @@ }, { "url": "https://api.avax.network/ext/bc/C/rpc" + }, + { + "url": "https://avalanche.blockpi.network/v1/rpc/public" } ], "explorer_block_url": "block/" @@ -1099,7 +1024,7 @@ "name": "agEUR", "coinpaprika_id": "ageur-ageur", "coingecko_id": "ageur", - "livecoinwatch_id": "", + "livecoinwatch_id": "EUR", "explorer_url": "https://etherscan.io/", "explorer_tx_url": "tx/", "explorer_address_url": "address/", @@ -1132,24 +1057,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -1177,7 +1084,7 @@ "name": "agEUR", "coinpaprika_id": "", "coingecko_id": "", - "livecoinwatch_id": "", + "livecoinwatch_id": "EUR", "explorer_url": "https://polygonscan.com/", "explorer_tx_url": "tx/", "explorer_address_url": "address/", @@ -1214,7 +1121,10 @@ "url": "https://polygon-rpc.com" }, { - "url": "https://poly-rpc.gateway.pokt.network" + "url": "https://polygon.blockpi.network/v1/rpc/public" + }, + { + "url": "https://polygon.llamarpc.com" } ], "explorer_block_url": "block/" @@ -1258,24 +1168,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -1340,7 +1232,10 @@ "url": "https://polygon-rpc.com" }, { - "url": "https://poly-rpc.gateway.pokt.network" + "url": "https://polygon.blockpi.network/v1/rpc/public" + }, + { + "url": "https://polygon.llamarpc.com" } ], "explorer_block_url": "block/" @@ -1383,15 +1278,6 @@ "url": "https://node.komodo.earth:8080/binance", "gui_auth": true }, - { - "url": "http://bsc1.cipig.net:8655" - }, - { - "url": "http://bsc2.cipig.net:8655" - }, - { - "url": "http://bsc3.cipig.net:8655" - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -1443,24 +1329,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -1525,7 +1393,10 @@ "url": "https://polygon-rpc.com" }, { - "url": "https://poly-rpc.gateway.pokt.network" + "url": "https://polygon.blockpi.network/v1/rpc/public" + }, + { + "url": "https://polygon.llamarpc.com" } ], "explorer_block_url": "block/" @@ -1569,24 +1440,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -1647,15 +1500,6 @@ "url": "https://node.komodo.earth:8080/binance", "gui_auth": true }, - { - "url": "http://bsc1.cipig.net:8655" - }, - { - "url": "http://bsc2.cipig.net:8655" - }, - { - "url": "http://bsc3.cipig.net:8655" - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -1710,6 +1554,9 @@ }, { "url": "https://rpc.fantom.network" + }, + { + "url": "https://rpc2.fantom.network" } ], "explorer_block_url": "block/" @@ -1757,7 +1604,10 @@ "url": "https://polygon-rpc.com" }, { - "url": "https://poly-rpc.gateway.pokt.network" + "url": "https://polygon.blockpi.network/v1/rpc/public" + }, + { + "url": "https://polygon.llamarpc.com" } ], "explorer_block_url": "block/" @@ -1800,15 +1650,6 @@ "url": "https://node.komodo.earth:8080/binance", "gui_auth": true }, - { - "url": "http://bsc1.cipig.net:8655" - }, - { - "url": "http://bsc2.cipig.net:8655" - }, - { - "url": "http://bsc3.cipig.net:8655" - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -1861,40 +1702,73 @@ "gui_auth": true }, { - "url": "http://eth1.cipig.net:8555", + "url": "https://eth1.cipig.net:18555", "contact": { "email": "cipi@komodoplatform.com" } }, { - "url": "http://eth2.cipig.net:8555", + "url": "https://eth2.cipig.net:18555", "contact": { "email": "cipi@komodoplatform.com" } }, { - "url": "http://eth3.cipig.net:8555", + "url": "https://eth3.cipig.net:18555", "contact": { "email": "cipi@komodoplatform.com" } + } + ], + "explorer_block_url": "block/" + }, + "ARPA-PLG20": { + "coin": "ARPA-PLG20", + "type": "Matic", + "name": "ARPA Chain", + "coinpaprika_id": "", + "coingecko_id": "", + "livecoinwatch_id": "ARPA", + "explorer_url": "https://polygonscan.com/", + "explorer_tx_url": "tx/", + "explorer_address_url": "address/", + "supported": [], + "active": false, + "is_testnet": false, + "currently_enabled": false, + "wallet_only": false, + "fname": "ARPA Chain", + "rpcport": 80, + "mm2": 1, + "chain_id": 137, + "decimals": 18, + "avg_blocktime": 1.8, + "required_confirmations": 20, + "protocol": { + "type": "ERC20", + "protocol_data": { + "platform": "MATIC", + "contract_address": "0xEE800B277A96B0f490a1A732e1D6395FAD960A26" + } + }, + "derivation_path": "m/44'/966'", + "contract_address": "0xEE800B277A96B0f490a1A732e1D6395FAD960A26", + "parent_coin": "MATIC", + "swap_contract_address": "0x9130b257D37A52E52F21054c4DA3450c72f595CE", + "fallback_swap_contract": "0x9130b257D37A52E52F21054c4DA3450c72f595CE", + "nodes": [ + { + "url": "https://node.komodo.earth:8080/polygon", + "gui_auth": true }, { - "url": "https://eth1.cipig.net:18555", - "contact": { - "email": "cipi@komodoplatform.com" - } + "url": "https://polygon-rpc.com" }, { - "url": "https://eth2.cipig.net:18555", - "contact": { - "email": "cipi@komodoplatform.com" - } + "url": "https://polygon.blockpi.network/v1/rpc/public" }, { - "url": "https://eth3.cipig.net:18555", - "contact": { - "email": "cipi@komodoplatform.com" - } + "url": "https://polygon.llamarpc.com" } ], "explorer_block_url": "block/" @@ -1915,7 +1789,15 @@ "currently_enabled": false, "wallet_only": false, "light_wallet_d_servers": [ - "http://node1.chainkeeper.pro:443" + "https://pirate.spyglass.quest:9447", + "https://lightd1.pirate.black:443", + "https://piratelightd1.cryptoforge.cc:443", + "https://piratelightd2.cryptoforge.cc:443", + "https://piratelightd3.cryptoforge.cc:443", + "https://piratelightd4.cryptoforge.cc:443", + "https://electrum1.cipig.net:9447", + "https://electrum2.cipig.net:9447", + "https://electrum3.cipig.net:9447" ], "asset": "PIRATE", "fname": "Pirate", @@ -1953,27 +1835,82 @@ } } }, - "required_confirmations": 3, + "required_confirmations": 2, + "requires_notarization": true, + "checkpoint_height": 1900000, + "checkpoint_blocktime": 1652512363, "electrum": [ { - "url": "node1.chainkeeper.pro:10032", - "protocol": "TCP" + "url": "electrum1.cipig.net:10008", + "contact": [ + { + "email": "cipi@komodoplatform.com" + }, + { + "discord": "cipi#4502" + } + ] }, { - "url": "node1.chainkeeper.pro:10132", - "protocol": "TCP" + "url": "electrum2.cipig.net:10008", + "contact": [ + { + "email": "cipi@komodoplatform.com" + }, + { + "discord": "cipi#4502" + } + ] + }, + { + "url": "electrum3.cipig.net:10008", + "contact": [ + { + "email": "cipi@komodoplatform.com" + }, + { + "discord": "cipi#4502" + } + ] }, { - "url": "node1.chainkeeper.pro:20032", + "url": "electrum1.cipig.net:20008", "protocol": "SSL", - "disable_cert_verification": true, - "ws_url": "node1.chainkeeper.pro:30058" + "contact": [ + { + "email": "cipi@komodoplatform.com" + }, + { + "discord": "cipi#4502" + } + ], + "ws_url": "electrum1.cipig.net:30008" }, { - "url": "node1.chainkeeper.pro:20132", + "url": "electrum2.cipig.net:20008", "protocol": "SSL", - "disable_cert_verification": false, - "ws_url": "node1.chainkeeper.pro:30059" + "contact": [ + { + "email": "cipi@komodoplatform.com" + }, + { + "discord": "cipi#4502" + } + ], + "ws_url": "electrum2.cipig.net:30008" + }, + { + "url": "electrum3.cipig.net:20008", + "protocol": "SSL", + "contact": [ + { + "email": "cipi@komodoplatform.com" + }, + { + "discord": "cipi#4502" + } + ], + "ws_url": "electrum3.cipig.net:30008" } ], "explorer_block_url": "block/" @@ -2017,15 +1954,6 @@ "url": "https://node.komodo.earth:8080/binance", "gui_auth": true }, - { - "url": "http://bsc1.cipig.net:8655" - }, - { - "url": "http://bsc2.cipig.net:8655" - }, - { - "url": "http://bsc3.cipig.net:8655" - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -2077,15 +2005,6 @@ "url": "https://node.komodo.earth:8080/binance", "gui_auth": true }, - { - "url": "http://bsc1.cipig.net:8655" - }, - { - "url": "http://bsc2.cipig.net:8655" - }, - { - "url": "http://bsc3.cipig.net:8655" - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -2142,7 +2061,10 @@ "url": "https://polygon-rpc.com" }, { - "url": "https://poly-rpc.gateway.pokt.network" + "url": "https://polygon.blockpi.network/v1/rpc/public" + }, + { + "url": "https://polygon.llamarpc.com" } ], "explorer_block_url": "block/" @@ -2190,16 +2112,21 @@ "protocol": "SSL", "disable_cert_verification": true, "ws_url": "failover.aur.ewmcx.biz:50003" + }, + { + "url": "lenoir.ecoincore.com:12343", + "protocol": "SSL", + "disable_cert_verification": false } ], "explorer_block_url": "block.dws?" }, - "AVA-BEP20": { - "coin": "AVA-BEP20", + "AVA-BEP20_OLD": { + "coin": "AVA-BEP20_OLD", "type": "BEP-20", - "name": "Travala.com", - "coinpaprika_id": "ava-travala", - "coingecko_id": "concierge-io", + "name": "Travala.com (OLD)", + "coinpaprika_id": "", + "coingecko_id": "", "livecoinwatch_id": "AVA", "explorer_url": "https://bscscan.com/", "explorer_tx_url": "tx/", @@ -2209,7 +2136,7 @@ "is_testnet": false, "currently_enabled": false, "wallet_only": false, - "fname": "Travala.com", + "fname": "Travala.com (OLD)", "rpcport": 80, "mm2": 1, "chain_id": 56, @@ -2233,25 +2160,76 @@ "gui_auth": true }, { - "url": "http://bsc1.cipig.net:8655" + "url": "https://bsc1.cipig.net:18655" }, { - "url": "http://bsc2.cipig.net:8655" + "url": "https://bsc2.cipig.net:18655" }, { - "url": "http://bsc3.cipig.net:8655" + "url": "https://bsc3.cipig.net:18655" + } + ], + "token_address_url": "tokentxns?a=", + "explorer_block_url": "block/" + }, + "AVA-ERC20": { + "coin": "AVA-ERC20", + "type": "ERC-20", + "name": "AVA", + "coinpaprika_id": "ava-travala", + "coingecko_id": "concierge-io", + "livecoinwatch_id": "AVA", + "explorer_url": "https://etherscan.io/", + "explorer_tx_url": "tx/", + "explorer_address_url": "address/", + "supported": [], + "active": false, + "is_testnet": false, + "currently_enabled": false, + "wallet_only": false, + "fname": "AVA", + "rpcport": 80, + "mm2": 1, + "chain_id": 1, + "decimals": 18, + "avg_blocktime": 15, + "required_confirmations": 3, + "protocol": { + "type": "ERC20", + "protocol_data": { + "platform": "ETH", + "contract_address": "0xa6C0c097741D55ECd9a3A7DeF3A8253fD022ceB9" + } + }, + "derivation_path": "m/44'/60'", + "contract_address": "0xa6C0c097741D55ECd9a3A7DeF3A8253fD022ceB9", + "parent_coin": "ETH", + "swap_contract_address": "0x24ABE4c71FC658C91313b6552cd40cD808b3Ea80", + "fallback_swap_contract": "0x8500AFc0bc5214728082163326C2FF0C73f4a871", + "nodes": [ + { + "url": "https://node.komodo.earth:8080/ethereum", + "gui_auth": true }, { - "url": "https://bsc1.cipig.net:18655" + "url": "https://eth1.cipig.net:18555", + "contact": { + "email": "cipi@komodoplatform.com" + } }, { - "url": "https://bsc2.cipig.net:18655" + "url": "https://eth2.cipig.net:18555", + "contact": { + "email": "cipi@komodoplatform.com" + } }, { - "url": "https://bsc3.cipig.net:18655" + "url": "https://eth3.cipig.net:18555", + "contact": { + "email": "cipi@komodoplatform.com" + } } ], - "token_address_url": "tokentxns?a=", "explorer_block_url": "block/" }, "AVAXT": { @@ -2325,6 +2303,9 @@ }, { "url": "https://api.avax.network/ext/bc/C/rpc" + }, + { + "url": "https://avalanche.blockpi.network/v1/rpc/public" } ], "explorer_block_url": "block/" @@ -2367,15 +2348,6 @@ "url": "https://node.komodo.earth:8080/binance", "gui_auth": true }, - { - "url": "http://bsc1.cipig.net:8655" - }, - { - "url": "http://bsc2.cipig.net:8655" - }, - { - "url": "http://bsc3.cipig.net:8655" - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -2421,11 +2393,19 @@ }, "derivation_path": "m/44'/921'", "electrum": [ + { + "url": "electrum-ca.avn.network:50001", + "contact": [ + { + "email": "contact@avn.network" + } + ] + }, { "url": "electrum-eu.avn.network:50001", "contact": [ { - "email": "alamshafil@pm.me" + "email": "contact@avn.network" } ] }, @@ -2433,9 +2413,39 @@ "url": "electrum-us.avn.network:50001", "contact": [ { - "email": "alamshafil@pm.me" + "email": "contact@avn.network" } ] + }, + { + "url": "electrum-ca.avn.network:50002", + "protocol": "SSL", + "contact": [ + { + "email": "contact@avn.network" + } + ], + "ws_url": "electrum-ca.avn.network:50003" + }, + { + "url": "electrum-eu.avn.network:50002", + "protocol": "SSL", + "contact": [ + { + "email": "contact@avn.network" + } + ], + "ws_url": "electrum-eu.avn.network:50003" + }, + { + "url": "electrum-us.avn.network:50002", + "protocol": "SSL", + "contact": [ + { + "email": "contact@avn.network" + } + ], + "ws_url": "electrum-us.avn.network:50003" } ], "explorer_block_url": "block/" @@ -2483,7 +2493,10 @@ "url": "https://polygon-rpc.com" }, { - "url": "https://poly-rpc.gateway.pokt.network" + "url": "https://polygon.blockpi.network/v1/rpc/public" + }, + { + "url": "https://polygon.llamarpc.com" } ], "explorer_block_url": "block/" @@ -2526,24 +2539,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -2610,8 +2605,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum1.cipig.net:30057" + ] }, { "url": "electrum2.cipig.net:10057", @@ -2622,8 +2616,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum2.cipig.net:30057" + ] }, { "url": "electrum3.cipig.net:10057", @@ -2634,8 +2627,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum3.cipig.net:30057" + ] }, { "url": "electrum1.cipig.net:20057", @@ -2647,7 +2639,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum1.cipig.net:30057" }, { "url": "electrum2.cipig.net:20057", @@ -2659,7 +2652,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum3.cipig.net:30057" }, { "url": "electrum3.cipig.net:20057", @@ -2671,7 +2665,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum2.cipig.net:30057" } ], "explorer_block_url": "block/" @@ -2714,15 +2709,6 @@ "url": "https://node.komodo.earth:8080/binance", "gui_auth": true }, - { - "url": "http://bsc1.cipig.net:8655" - }, - { - "url": "http://bsc2.cipig.net:8655" - }, - { - "url": "http://bsc3.cipig.net:8655" - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -2779,24 +2765,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -2856,6 +2824,58 @@ ], "explorer_block_url": "block/" }, + "AYA-BEP20": { + "coin": "AYA-BEP20", + "type": "BEP-20", + "name": "Aryacoin", + "coinpaprika_id": "", + "coingecko_id": "", + "livecoinwatch_id": "AYA", + "explorer_url": "https://bscscan.com/", + "explorer_tx_url": "tx/", + "explorer_address_url": "address/", + "supported": [], + "active": false, + "is_testnet": false, + "currently_enabled": false, + "wallet_only": false, + "fname": "Aryacoin", + "rpcport": 80, + "mm2": 1, + "chain_id": 56, + "decimals": 8, + "avg_blocktime": 3, + "required_confirmations": 3, + "protocol": { + "type": "ERC20", + "protocol_data": { + "platform": "BNB", + "contract_address": "0x86e5775F5c46304939c40959812bC220dD1c0333" + } + }, + "derivation_path": "m/44'/714'", + "contract_address": "0x86e5775F5c46304939c40959812bC220dD1c0333", + "parent_coin": "BNB", + "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", + "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", + "nodes": [ + { + "url": "https://node.komodo.earth:8080/binance", + "gui_auth": true + }, + { + "url": "https://bsc1.cipig.net:18655" + }, + { + "url": "https://bsc2.cipig.net:18655" + }, + { + "url": "https://bsc3.cipig.net:18655" + } + ], + "token_address_url": "tokentxns?a=", + "explorer_block_url": "block/" + }, "BABYDOGE-BEP20": { "coin": "BABYDOGE-BEP20", "type": "BEP-20", @@ -2894,15 +2914,6 @@ "url": "https://node.komodo.earth:8080/binance", "gui_auth": true }, - { - "url": "http://bsc1.cipig.net:8655" - }, - { - "url": "http://bsc2.cipig.net:8655" - }, - { - "url": "http://bsc3.cipig.net:8655" - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -2954,15 +2965,6 @@ "url": "https://node.komodo.earth:8080/binance", "gui_auth": true }, - { - "url": "http://bsc1.cipig.net:8655" - }, - { - "url": "http://bsc2.cipig.net:8655" - }, - { - "url": "http://bsc3.cipig.net:8655" - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -3020,24 +3022,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -3146,7 +3130,10 @@ "url": "https://polygon-rpc.com" }, { - "url": "https://poly-rpc.gateway.pokt.network" + "url": "https://polygon.blockpi.network/v1/rpc/public" + }, + { + "url": "https://polygon.llamarpc.com" } ], "explorer_block_url": "block/" @@ -3189,15 +3176,6 @@ "url": "https://node.komodo.earth:8080/binance", "gui_auth": true }, - { - "url": "http://bsc1.cipig.net:8655" - }, - { - "url": "http://bsc2.cipig.net:8655" - }, - { - "url": "http://bsc3.cipig.net:8655" - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -3249,15 +3227,6 @@ "url": "https://node.komodo.earth:8080/binance", "gui_auth": true }, - { - "url": "http://bsc1.cipig.net:8655" - }, - { - "url": "http://bsc2.cipig.net:8655" - }, - { - "url": "http://bsc3.cipig.net:8655" - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -3310,24 +3279,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -3390,6 +3341,9 @@ }, { "url": "https://rpc.fantom.network" + }, + { + "url": "https://rpc2.fantom.network" } ], "explorer_block_url": "block/" @@ -3437,7 +3391,10 @@ "url": "https://polygon-rpc.com" }, { - "url": "https://poly-rpc.gateway.pokt.network" + "url": "https://polygon.blockpi.network/v1/rpc/public" + }, + { + "url": "https://polygon.llamarpc.com" } ], "explorer_block_url": "block/" @@ -3483,6 +3440,9 @@ }, { "url": "https://api.avax.network/ext/bc/C/rpc" + }, + { + "url": "https://avalanche.blockpi.network/v1/rpc/public" } ], "explorer_block_url": "block/" @@ -3529,24 +3489,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -3606,15 +3548,6 @@ "url": "https://node.komodo.earth:8080/binance", "gui_auth": true }, - { - "url": "http://bsc1.cipig.net:8655" - }, - { - "url": "http://bsc2.cipig.net:8655" - }, - { - "url": "http://bsc3.cipig.net:8655" - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -3715,7 +3648,10 @@ "url": "https://polygon-rpc.com" }, { - "url": "https://poly-rpc.gateway.pokt.network" + "url": "https://polygon.blockpi.network/v1/rpc/public" + }, + { + "url": "https://polygon.llamarpc.com" } ], "explorer_block_url": "block/" @@ -3781,8 +3717,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum1.cipig.net:30055" + ] }, { "url": "electrum2.cipig.net:10055", @@ -3793,8 +3728,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum2.cipig.net:30055" + ] }, { "url": "electrum3.cipig.net:10055", @@ -3805,8 +3739,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum3.cipig.net:30055" + ] }, { "url": "electrum1.cipig.net:20055", @@ -3818,7 +3751,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum1.cipig.net:30055" }, { "url": "electrum2.cipig.net:20055", @@ -3830,7 +3764,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum2.cipig.net:30055" }, { "url": "electrum3.cipig.net:20055", @@ -3842,7 +3777,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum3.cipig.net:30055" } ], "explorer_block_url": "block/" @@ -4022,24 +3958,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -4206,7 +4124,10 @@ "url": "https://polygon-rpc.com" }, { - "url": "https://poly-rpc.gateway.pokt.network" + "url": "https://polygon.blockpi.network/v1/rpc/public" + }, + { + "url": "https://polygon.llamarpc.com" } ], "explorer_block_url": "block/" @@ -4245,6 +4166,153 @@ "token_address_url": "token/", "explorer_block_url": "block/" }, + "BBK": { + "coin": "BBK", + "type": "UTXO", + "name": "BitBlocks", + "coinpaprika_id": "bbk-bitblocks", + "coingecko_id": "", + "livecoinwatch_id": "BBK", + "explorer_url": "https://bbk.ccore.online/", + "explorer_tx_url": "", + "explorer_address_url": "", + "supported": [], + "active": false, + "is_testnet": false, + "currently_enabled": false, + "wallet_only": true, + "sign_message_prefix": "DarkNet Signed Message:\n", + "fname": "BitBlocks", + "rpcport": 59768, + "pubtype": 25, + "p2shtype": 85, + "wiftype": 107, + "txfee": 10000, + "mm2": 1, + "required_confirmations": 5, + "avg_blocktime": 60, + "protocol": { + "type": "UTXO" + }, + "links": { + "github": "https://github.com/BitBlocksProject/BitBlocks", + "homepage": "https://bitblocksproject.com" + }, + "electrum": [ + { + "url": "bbk-one.ewm-cx.net:50001", + "protocol": "TCP" + }, + { + "url": "bbk-two.ewm-cx.net:50001", + "protocol": "TCP" + } + ], + "explorer_block_url": "block/" + }, + "BBK-BEP20": { + "coin": "BBK-BEP20", + "type": "BEP-20", + "name": "BitBlocks", + "coinpaprika_id": "", + "coingecko_id": "", + "livecoinwatch_id": "BBK", + "explorer_url": "https://bscscan.com/", + "explorer_tx_url": "tx/", + "explorer_address_url": "address/", + "supported": [], + "active": false, + "is_testnet": false, + "currently_enabled": false, + "wallet_only": false, + "fname": "BitBlocks", + "rpcport": 80, + "mm2": 1, + "chain_id": 56, + "decimals": 18, + "avg_blocktime": 3, + "required_confirmations": 3, + "protocol": { + "type": "ERC20", + "protocol_data": { + "platform": "BNB", + "contract_address": "0x9045B0eda6B6A556cf9B3d81C2db47411714f847" + } + }, + "derivation_path": "m/44'/714'", + "contract_address": "0x9045B0eda6B6A556cf9B3d81C2db47411714f847", + "parent_coin": "BNB", + "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", + "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", + "nodes": [ + { + "url": "https://node.komodo.earth:8080/binance", + "gui_auth": true + }, + { + "url": "https://bsc1.cipig.net:18655" + }, + { + "url": "https://bsc2.cipig.net:18655" + }, + { + "url": "https://bsc3.cipig.net:18655" + } + ], + "token_address_url": "tokentxns?a=", + "explorer_block_url": "block/" + }, + "BBK-PLG20": { + "coin": "BBK-PLG20", + "type": "Matic", + "name": "BitBlocks", + "coinpaprika_id": "", + "coingecko_id": "", + "livecoinwatch_id": "BBK", + "explorer_url": "https://polygonscan.com/", + "explorer_tx_url": "tx/", + "explorer_address_url": "address/", + "supported": [], + "active": false, + "is_testnet": false, + "currently_enabled": false, + "wallet_only": false, + "fname": "BitBlocks", + "rpcport": 80, + "mm2": 1, + "chain_id": 137, + "decimals": 18, + "avg_blocktime": 1.8, + "required_confirmations": 20, + "protocol": { + "type": "ERC20", + "protocol_data": { + "platform": "MATIC", + "contract_address": "0x2C8a46eF99Cb64928eB3Dd50A925327e02296F63" + } + }, + "derivation_path": "m/44'/966'", + "contract_address": "0x2C8a46eF99Cb64928eB3Dd50A925327e02296F63", + "parent_coin": "MATIC", + "swap_contract_address": "0x9130b257D37A52E52F21054c4DA3450c72f595CE", + "fallback_swap_contract": "0x9130b257D37A52E52F21054c4DA3450c72f595CE", + "nodes": [ + { + "url": "https://node.komodo.earth:8080/polygon", + "gui_auth": true + }, + { + "url": "https://polygon-rpc.com" + }, + { + "url": "https://polygon.blockpi.network/v1/rpc/public" + }, + { + "url": "https://polygon.llamarpc.com" + } + ], + "explorer_block_url": "block/" + }, "BCH-ERC20": { "coin": "BCH-ERC20", "type": "ERC-20", @@ -4284,24 +4352,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -4362,15 +4412,6 @@ "url": "https://node.komodo.earth:8080/binance", "gui_auth": true }, - { - "url": "http://bsc1.cipig.net:8655" - }, - { - "url": "http://bsc2.cipig.net:8655" - }, - { - "url": "http://bsc3.cipig.net:8655" - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -4428,112 +4469,6 @@ ], "explorer_block_url": "block/" }, - "BET": { - "coin": "BET", - "type": "Smart Chain", - "name": "BET", - "coinpaprika_id": "", - "coingecko_id": "", - "livecoinwatch_id": "", - "explorer_url": "https://bet.kmdexplorer.io/", - "explorer_tx_url": "", - "explorer_address_url": "", - "supported": [], - "active": false, - "is_testnet": false, - "currently_enabled": false, - "wallet_only": false, - "sign_message_prefix": "Komodo Signed Message:\n", - "asset": "BET", - "fname": "BET", - "rpcport": 14250, - "txversion": 4, - "overwintered": 1, - "mm2": 1, - "required_confirmations": 2, - "requires_notarization": true, - "avg_blocktime": 60, - "protocol": { - "type": "UTXO" - }, - "derivation_path": "m/44'/141'", - "trezor_coin": "Komodo", - "electrum": [ - { - "url": "electrum1.cipig.net:10012", - "contact": [ - { - "email": "cipi@komodoplatform.com" - }, - { - "discord": "cipi#4502" - } - ], - "ws_url": "electrum1.cipig.net:30012" - }, - { - "url": "electrum2.cipig.net:10012", - "contact": [ - { - "email": "cipi@komodoplatform.com" - }, - { - "discord": "cipi#4502" - } - ], - "ws_url": "electrum2.cipig.net:30012" - }, - { - "url": "electrum3.cipig.net:10012", - "contact": [ - { - "email": "cipi@komodoplatform.com" - }, - { - "discord": "cipi#4502" - } - ], - "ws_url": "electrum3.cipig.net:30012" - }, - { - "url": "electrum1.cipig.net:20012", - "protocol": "SSL", - "contact": [ - { - "email": "cipi@komodoplatform.com" - }, - { - "discord": "cipi#4502" - } - ] - }, - { - "url": "electrum2.cipig.net:20012", - "protocol": "SSL", - "contact": [ - { - "email": "cipi@komodoplatform.com" - }, - { - "discord": "cipi#4502" - } - ] - }, - { - "url": "electrum3.cipig.net:20012", - "protocol": "SSL", - "contact": [ - { - "email": "cipi@komodoplatform.com" - }, - { - "discord": "cipi#4502" - } - ] - } - ], - "explorer_block_url": "block/" - }, "BIDR-BEP20": { "coin": "BIDR-BEP20", "type": "BEP-20", @@ -4571,15 +4506,6 @@ "url": "https://node.komodo.earth:8080/binance", "gui_auth": true }, - { - "url": "http://bsc1.cipig.net:8655" - }, - { - "url": "http://bsc2.cipig.net:8655" - }, - { - "url": "http://bsc3.cipig.net:8655" - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -4772,25 +4698,107 @@ "gui_auth": true }, { - "url": "http://bsc1.cipig.net:8655" + "url": "https://bsc1.cipig.net:18655" }, { - "url": "http://bsc2.cipig.net:8655" + "url": "https://bsc2.cipig.net:18655" + }, + { + "url": "https://bsc3.cipig.net:18655" + } + ], + "token_address_url": "tokentxns?a=", + "explorer_block_url": "block/" + }, + "tBLK": { + "coin": "tBLK", + "type": "UTXO", + "name": "BlackCoin Testnet", + "coinpaprika_id": "", + "coingecko_id": "", + "livecoinwatch_id": "", + "explorer_url": "https://explorer.blackcoin.nl/", + "explorer_tx_url": "tx/", + "explorer_address_url": "address/", + "supported": [], + "active": false, + "is_testnet": true, + "currently_enabled": false, + "wallet_only": false, + "fname": "BlackCoin Testnet", + "isPoS": 1, + "rpcport": 25715, + "pubtype": 111, + "p2shtype": 196, + "wiftype": 239, + "txfee": 100000, + "segwit": true, + "mm2": 1, + "required_confirmations": 5, + "mature_confirmations": 10, + "avg_blocktime": 66, + "protocol": { + "type": "UTXO" + }, + "electrum": [ + { + "url": "electrum1.blackcoin.nl:10011", + "contact": [ + { + "discord": "michelvankessel#7656" + } + ] }, { - "url": "http://bsc3.cipig.net:8655" + "url": "electrum2.blackcoin.nl:20011", + "contact": [ + { + "discord": "michelvankessel#7656" + } + ] }, { - "url": "https://bsc1.cipig.net:18655" + "url": "electrum3.blackcoin.nl:30011", + "contact": [ + { + "discord": "michelvankessel#7656" + } + ] }, { - "url": "https://bsc2.cipig.net:18655" + "url": "electrum1.blackcoin.nl:10012", + "protocol": "SSL", + "disable_cert_verification": true, + "contact": [ + { + "discord": "michelvankessel#7656" + } + ], + "ws_url": "electrum1.blackcoin.nl:10014" }, { - "url": "https://bsc3.cipig.net:18655" + "url": "electrum2.blackcoin.nl:20012", + "protocol": "SSL", + "disable_cert_verification": true, + "contact": [ + { + "discord": "michelvankessel#7656" + } + ], + "ws_url": "electrum2.blackcoin.nl:20014" + }, + { + "url": "electrum3.blackcoin.nl:30012", + "protocol": "SSL", + "disable_cert_verification": true, + "contact": [ + { + "discord": "michelvankessel#7656" + } + ], + "ws_url": "electrum3.blackcoin.nl:30014" } ], - "token_address_url": "tokentxns?a=", "explorer_block_url": "block/" }, "BNB": { @@ -4829,15 +4837,6 @@ "url": "https://node.komodo.earth:8080/binance", "gui_auth": true }, - { - "url": "http://bsc1.cipig.net:8655" - }, - { - "url": "http://bsc2.cipig.net:8655" - }, - { - "url": "http://bsc3.cipig.net:8655" - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -4932,24 +4931,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -5084,15 +5065,6 @@ "url": "https://node.komodo.earth:8080/binance", "gui_auth": true }, - { - "url": "http://bsc1.cipig.net:8655" - }, - { - "url": "http://bsc2.cipig.net:8655" - }, - { - "url": "http://bsc3.cipig.net:8655" - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -5150,24 +5122,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -5232,113 +5186,10 @@ "url": "https://polygon-rpc.com" }, { - "url": "https://poly-rpc.gateway.pokt.network" - } - ], - "explorer_block_url": "block/" - }, - "BOTS": { - "coin": "BOTS", - "type": "Smart Chain", - "name": "BOTS", - "coinpaprika_id": "", - "coingecko_id": "", - "livecoinwatch_id": "", - "explorer_url": "https://bots.kmdexplorer.io/", - "explorer_tx_url": "", - "explorer_address_url": "", - "supported": [], - "active": false, - "is_testnet": false, - "currently_enabled": false, - "wallet_only": false, - "sign_message_prefix": "Komodo Signed Message:\n", - "asset": "BOTS", - "fname": "BOTS", - "rpcport": 11964, - "txversion": 4, - "overwintered": 1, - "mm2": 1, - "required_confirmations": 2, - "requires_notarization": true, - "avg_blocktime": 60, - "protocol": { - "type": "UTXO" - }, - "derivation_path": "m/44'/141'", - "trezor_coin": "Komodo", - "electrum": [ - { - "url": "electrum1.cipig.net:10007", - "contact": [ - { - "email": "cipi@komodoplatform.com" - }, - { - "discord": "cipi#4502" - } - ], - "ws_url": "electrum1.cipig.net:30007" - }, - { - "url": "electrum2.cipig.net:10007", - "contact": [ - { - "email": "cipi@komodoplatform.com" - }, - { - "discord": "cipi#4502" - } - ], - "ws_url": "electrum2.cipig.net:30007" - }, - { - "url": "electrum3.cipig.net:10007", - "contact": [ - { - "email": "cipi@komodoplatform.com" - }, - { - "discord": "cipi#4502" - } - ], - "ws_url": "electrum3.cipig.net:30007" - }, - { - "url": "electrum1.cipig.net:20007", - "protocol": "SSL", - "contact": [ - { - "email": "cipi@komodoplatform.com" - }, - { - "discord": "cipi#4502" - } - ] + "url": "https://polygon.blockpi.network/v1/rpc/public" }, { - "url": "electrum2.cipig.net:20007", - "protocol": "SSL", - "contact": [ - { - "email": "cipi@komodoplatform.com" - }, - { - "discord": "cipi#4502" - } - ] - }, - { - "url": "electrum3.cipig.net:20007", - "protocol": "SSL", - "contact": [ - { - "email": "cipi@komodoplatform.com" - }, - { - "discord": "cipi#4502" - } - ] + "url": "https://polygon.llamarpc.com" } ], "explorer_block_url": "block/" @@ -5382,15 +5233,6 @@ "url": "https://node.komodo.earth:8080/binance", "gui_auth": true }, - { - "url": "http://bsc1.cipig.net:8655" - }, - { - "url": "http://bsc2.cipig.net:8655" - }, - { - "url": "http://bsc3.cipig.net:8655" - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -5405,12 +5247,12 @@ "explorer_block_url": "block/", "forex_id": "BRL" }, - "BRZ-ERC20": { - "coin": "BRZ-ERC20", + "BRZ-ERC20_OLD": { + "coin": "BRZ-ERC20_OLD", "type": "ERC-20", - "name": "Brazilian Digital Token", - "coinpaprika_id": "brz-brazilian-digital-token", - "coingecko_id": "brz", + "name": "Brazilian Digital Token (OLD)", + "coinpaprika_id": "", + "coingecko_id": "", "livecoinwatch_id": "BRZ", "explorer_url": "https://etherscan.io/", "explorer_tx_url": "tx/", @@ -5420,7 +5262,7 @@ "is_testnet": false, "currently_enabled": false, "wallet_only": false, - "fname": "Brazilian Digital Token", + "fname": "Brazilian Digital Token (OLD)", "rpcport": 80, "mm2": 1, "chain_id": 1, @@ -5445,22 +5287,64 @@ "gui_auth": true }, { - "url": "http://eth1.cipig.net:8555", + "url": "https://eth1.cipig.net:18555", "contact": { "email": "cipi@komodoplatform.com" } }, { - "url": "http://eth2.cipig.net:8555", + "url": "https://eth2.cipig.net:18555", "contact": { "email": "cipi@komodoplatform.com" } }, { - "url": "http://eth3.cipig.net:8555", + "url": "https://eth3.cipig.net:18555", "contact": { "email": "cipi@komodoplatform.com" } + } + ], + "explorer_block_url": "block/" + }, + "BRZ-ERC20": { + "coin": "BRZ-ERC20", + "type": "ERC-20", + "name": "Brazilian Digital Token", + "coinpaprika_id": "brz-brazilian-digital-token", + "coingecko_id": "brz", + "livecoinwatch_id": "BRZ", + "explorer_url": "https://etherscan.io/", + "explorer_tx_url": "tx/", + "explorer_address_url": "address/", + "supported": [], + "active": false, + "is_testnet": false, + "currently_enabled": false, + "wallet_only": false, + "fname": "Brazilian Digital Token", + "rpcport": 80, + "mm2": 1, + "chain_id": 1, + "decimals": 18, + "avg_blocktime": 15, + "required_confirmations": 3, + "protocol": { + "type": "ERC20", + "protocol_data": { + "platform": "ETH", + "contract_address": "0x01d33FD36ec67c6Ada32cf36b31e88EE190B1839" + } + }, + "derivation_path": "m/44'/60'", + "contract_address": "0x01d33FD36ec67c6Ada32cf36b31e88EE190B1839", + "parent_coin": "ETH", + "swap_contract_address": "0x24ABE4c71FC658C91313b6552cd40cD808b3Ea80", + "fallback_swap_contract": "0x8500AFc0bc5214728082163326C2FF0C73f4a871", + "nodes": [ + { + "url": "https://node.komodo.earth:8080/ethereum", + "gui_auth": true }, { "url": "https://eth1.cipig.net:18555", @@ -5484,6 +5368,57 @@ "explorer_block_url": "block/", "forex_id": "BRL" }, + "BRZ-PLG20_OLD": { + "coin": "BRZ-PLG20_OLD", + "type": "Matic", + "name": "Brazilian Digital Token (OLD)", + "coinpaprika_id": "", + "coingecko_id": "", + "livecoinwatch_id": "BRZ", + "explorer_url": "https://polygonscan.com/", + "explorer_tx_url": "tx/", + "explorer_address_url": "address/", + "supported": [], + "active": false, + "is_testnet": false, + "currently_enabled": false, + "wallet_only": false, + "fname": "Brazilian Digital Token (OLD)", + "rpcport": 80, + "mm2": 1, + "chain_id": 137, + "decimals": 4, + "avg_blocktime": 1.8, + "required_confirmations": 20, + "protocol": { + "type": "ERC20", + "protocol_data": { + "platform": "MATIC", + "contract_address": "0x491a4eB4f1FC3BfF8E1d2FC856a6A46663aD556f" + } + }, + "derivation_path": "m/44'/966'", + "contract_address": "0x491a4eB4f1FC3BfF8E1d2FC856a6A46663aD556f", + "parent_coin": "MATIC", + "swap_contract_address": "0x9130b257D37A52E52F21054c4DA3450c72f595CE", + "fallback_swap_contract": "0x9130b257D37A52E52F21054c4DA3450c72f595CE", + "nodes": [ + { + "url": "https://node.komodo.earth:8080/polygon", + "gui_auth": true + }, + { + "url": "https://polygon-rpc.com" + }, + { + "url": "https://polygon.blockpi.network/v1/rpc/public" + }, + { + "url": "https://polygon.llamarpc.com" + } + ], + "explorer_block_url": "block/" + }, "BRZ-PLG20": { "coin": "BRZ-PLG20", "type": "Matic", @@ -5503,18 +5438,18 @@ "rpcport": 80, "mm2": 1, "chain_id": 137, - "decimals": 4, + "decimals": 18, "avg_blocktime": 1.8, "required_confirmations": 20, "protocol": { "type": "ERC20", "protocol_data": { "platform": "MATIC", - "contract_address": "0x491a4eB4f1FC3BfF8E1d2FC856a6A46663aD556f" + "contract_address": "0x4eD141110F6EeeAbA9A1df36d8c26f684d2475Dc" } }, "derivation_path": "m/44'/966'", - "contract_address": "0x491a4eB4f1FC3BfF8E1d2FC856a6A46663aD556f", + "contract_address": "0x4eD141110F6EeeAbA9A1df36d8c26f684d2475Dc", "parent_coin": "MATIC", "swap_contract_address": "0x9130b257D37A52E52F21054c4DA3450c72f595CE", "fallback_swap_contract": "0x9130b257D37A52E52F21054c4DA3450c72f595CE", @@ -5527,7 +5462,10 @@ "url": "https://polygon-rpc.com" }, { - "url": "https://poly-rpc.gateway.pokt.network" + "url": "https://polygon.blockpi.network/v1/rpc/public" + }, + { + "url": "https://polygon.llamarpc.com" } ], "explorer_block_url": "block/", @@ -5574,6 +5512,9 @@ }, { "url": "https://api.avax.network/ext/bc/C/rpc" + }, + { + "url": "https://avalanche.blockpi.network/v1/rpc/public" } ], "explorer_block_url": "block/", @@ -5610,16 +5551,8 @@ }, "electrum": [ { - "url": "bsty-bkp.coinmunity.gold:50012", - "protocol": "SSL", - "disable_cert_verification": true, - "ws_url": "bsty-bkp.coinmunity.gold:50013" - }, - { - "url": "bsty-main.coinmunity.gold:50012", - "protocol": "SSL", - "disable_cert_verification": true, - "ws_url": "bsty-main.coinmunity.gold:50013" + "url": "66.172.33.56:50001", + "protocol": "TCP" } ], "explorer_block_url": "block/" @@ -5659,16 +5592,8 @@ }, "electrum": [ { - "url": "bsty-bkp.coinmunity.gold:50012", - "protocol": "SSL", - "disable_cert_verification": true, - "ws_url": "bsty-bkp.coinmunity.gold:50013" - }, - { - "url": "bsty-main.coinmunity.gold:50012", - "protocol": "SSL", - "disable_cert_verification": true, - "ws_url": "bsty-main.coinmunity.gold:50013" + "url": "66.172.33.56:50001", + "protocol": "TCP" } ], "explorer_block_url": "block/" @@ -5720,8 +5645,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum1.cipig.net:30000" + ] }, { "url": "electrum2.cipig.net:10000", @@ -5732,8 +5656,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum2.cipig.net:30000" + ] }, { "url": "electrum3.cipig.net:10000", @@ -5744,8 +5667,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum3.cipig.net:30000" + ] }, { "url": "electrum1.cipig.net:20000", @@ -5757,7 +5679,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum1.cipig.net:30000" }, { "url": "electrum2.cipig.net:20000", @@ -5769,7 +5692,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum2.cipig.net:30000" }, { "url": "electrum3.cipig.net:20000", @@ -5781,7 +5705,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum3.cipig.net:30000" } ], "explorer_block_url": "block/" @@ -5837,8 +5762,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum1.cipig.net:30000" + ] }, { "url": "electrum2.cipig.net:10000", @@ -5849,8 +5773,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum2.cipig.net:30000" + ] }, { "url": "electrum3.cipig.net:10000", @@ -5861,8 +5784,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum3.cipig.net:30000" + ] }, { "url": "electrum1.cipig.net:20000", @@ -5874,7 +5796,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum1.cipig.net:30000" }, { "url": "electrum2.cipig.net:20000", @@ -5886,7 +5809,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum2.cipig.net:30000" }, { "url": "electrum3.cipig.net:20000", @@ -5898,7 +5822,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum3.cipig.net:30000" } ], "explorer_block_url": "block/" @@ -5941,15 +5866,6 @@ "url": "https://node.komodo.earth:8080/binance", "gui_auth": true }, - { - "url": "http://bsc1.cipig.net:8655" - }, - { - "url": "http://bsc2.cipig.net:8655" - }, - { - "url": "http://bsc3.cipig.net:8655" - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -6047,15 +5963,6 @@ "url": "https://node.komodo.earth:8080/binance", "gui_auth": true }, - { - "url": "http://bsc1.cipig.net:8655" - }, - { - "url": "http://bsc2.cipig.net:8655" - }, - { - "url": "http://bsc3.cipig.net:8655" - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -6069,172 +5976,6 @@ "token_address_url": "tokentxns?a=", "explorer_block_url": "block/" }, - "BTE": { - "coin": "BTE", - "type": "UTXO", - "name": "Bitweb", - "coinpaprika_id": "bte-bitweb", - "coingecko_id": "bitweb", - "livecoinwatch_id": "_BTE", - "explorer_url": "https://explorer.bitwebcore.net/", - "explorer_tx_url": "", - "explorer_address_url": "", - "supported": [], - "active": false, - "is_testnet": false, - "currently_enabled": false, - "wallet_only": false, - "fname": "Bitweb", - "rpcport": 1605, - "pubtype": 33, - "p2shtype": 30, - "wiftype": 128, - "segwit": true, - "bech32_hrp": "web", - "txfee": 20000, - "mm2": 1, - "required_confirmations": 3, - "avg_blocktime": 60, - "protocol": { - "type": "UTXO" - }, - "electrum": [ - { - "url": "electrumx.bitwebcore.net:20002", - "protocol": "SSL", - "contact": [ - { - "email": "mraksoll@gmail.com" - }, - { - "discord": "mraksoll#0596" - }, - { - "github": "https://github.com/bitweb-project/electrumx/issues" - } - ], - "ws_url": "electrumx.bitwebcore.net:20003" - }, - { - "url": "electrumx6.scalaris.info:20002", - "protocol": "SSL", - "contact": [ - { - "email": "mraksoll@gmail.com" - }, - { - "discord": "mraksoll#0596" - }, - { - "github": "https://github.com/bitweb-project/electrumx/issues" - } - ], - "ws_url": "electrumx6.scalaris.info:20003" - }, - { - "url": "electrumx7.scalaris.info:20002", - "protocol": "SSL", - "contact": [ - { - "email": "mraksoll@gmail.com" - }, - { - "discord": "mraksoll#0596" - }, - { - "github": "https://github.com/bitweb-project/electrumx/issues" - } - ], - "ws_url": "electrumx7.scalaris.info:20003" - } - ], - "explorer_block_url": "block/" - }, - "BTE-segwit": { - "coin": "BTE-segwit", - "type": "UTXO", - "name": "Bitweb", - "coinpaprika_id": "bte-bitweb", - "coingecko_id": "bitweb", - "livecoinwatch_id": "_BTE", - "explorer_url": "https://explorer.bitwebcore.net/", - "explorer_tx_url": "", - "explorer_address_url": "", - "supported": [], - "active": false, - "is_testnet": false, - "currently_enabled": false, - "wallet_only": false, - "fname": "Bitweb", - "rpcport": 1605, - "pubtype": 33, - "p2shtype": 30, - "wiftype": 128, - "segwit": true, - "bech32_hrp": "web", - "address_format": { - "format": "segwit" - }, - "orderbook_ticker": "BTE", - "txfee": 20000, - "mm2": 1, - "required_confirmations": 3, - "avg_blocktime": 60, - "protocol": { - "type": "UTXO" - }, - "electrum": [ - { - "url": "electrumx.bitwebcore.net:20002", - "protocol": "SSL", - "contact": [ - { - "email": "mraksoll@gmail.com" - }, - { - "discord": "mraksoll#0596" - }, - { - "github": "https://github.com/bitweb-project/electrumx/issues" - } - ], - "ws_url": "electrumx.bitwebcore.net:20003" - }, - { - "url": "electrumx6.scalaris.info:20002", - "protocol": "SSL", - "contact": [ - { - "email": "mraksoll@gmail.com" - }, - { - "discord": "mraksoll#0596" - }, - { - "github": "https://github.com/bitweb-project/electrumx/issues" - } - ], - "ws_url": "electrumx6.scalaris.info:20003" - }, - { - "url": "electrumx7.scalaris.info:20002", - "protocol": "SSL", - "contact": [ - { - "email": "mraksoll@gmail.com" - }, - { - "discord": "mraksoll#0596" - }, - { - "github": "https://github.com/bitweb-project/electrumx/issues" - } - ], - "ws_url": "electrumx7.scalaris.info:20003" - } - ], - "explorer_block_url": "block/" - }, "BTT-BEP20": { "coin": "BTT-BEP20", "type": "BEP-20", @@ -6273,15 +6014,6 @@ "url": "https://node.komodo.earth:8080/binance", "gui_auth": true }, - { - "url": "http://bsc1.cipig.net:8655" - }, - { - "url": "http://bsc2.cipig.net:8655" - }, - { - "url": "http://bsc3.cipig.net:8655" - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -6334,15 +6066,6 @@ "url": "https://node.komodo.earth:8080/binance", "gui_auth": true }, - { - "url": "http://bsc1.cipig.net:8655" - }, - { - "url": "http://bsc2.cipig.net:8655" - }, - { - "url": "http://bsc3.cipig.net:8655" - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -6400,24 +6123,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -6482,7 +6187,10 @@ "url": "https://polygon-rpc.com" }, { - "url": "https://poly-rpc.gateway.pokt.network" + "url": "https://polygon.blockpi.network/v1/rpc/public" + }, + { + "url": "https://polygon.llamarpc.com" } ], "explorer_block_url": "block/" @@ -6630,15 +6338,6 @@ "url": "https://node.komodo.earth:8080/binance", "gui_auth": true }, - { - "url": "http://bsc1.cipig.net:8655" - }, - { - "url": "http://bsc2.cipig.net:8655" - }, - { - "url": "http://bsc3.cipig.net:8655" - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -6693,6 +6392,9 @@ }, { "url": "https://api.avax.network/ext/bc/C/rpc" + }, + { + "url": "https://avalanche.blockpi.network/v1/rpc/public" } ], "explorer_block_url": "block/" @@ -6738,6 +6440,9 @@ }, { "url": "https://api.avax.network/ext/bc/C/rpc" + }, + { + "url": "https://avalanche.blockpi.network/v1/rpc/public" } ], "explorer_block_url": "block/" @@ -6778,7 +6483,7 @@ "fallback_swap_contract": "0x9130b257D37A52E52F21054c4DA3450c72f595CE", "nodes": [ { - "url": "https://rpc.moonriver.moonbeam.network" + "url": "https://moonriver.public.blastapi.io" }, { "url": "https://rpc.api.moonriver.moonbeam.network" @@ -6829,24 +6534,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -6906,15 +6593,6 @@ "url": "https://node.komodo.earth:8080/binance", "gui_auth": true }, - { - "url": "http://bsc1.cipig.net:8655" - }, - { - "url": "http://bsc2.cipig.net:8655" - }, - { - "url": "http://bsc3.cipig.net:8655" - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -6971,7 +6649,10 @@ "url": "https://polygon-rpc.com" }, { - "url": "https://poly-rpc.gateway.pokt.network" + "url": "https://polygon.blockpi.network/v1/rpc/public" + }, + { + "url": "https://polygon.llamarpc.com" } ], "explorer_block_url": "block/" @@ -7015,24 +6696,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -7098,7 +6761,10 @@ "url": "https://polygon-rpc.com" }, { - "url": "https://poly-rpc.gateway.pokt.network" + "url": "https://polygon.blockpi.network/v1/rpc/public" + }, + { + "url": "https://polygon.llamarpc.com" } ], "explorer_block_url": "block/", @@ -7142,15 +6808,6 @@ "url": "https://node.komodo.earth:8080/binance", "gui_auth": true }, - { - "url": "http://bsc1.cipig.net:8655" - }, - { - "url": "http://bsc2.cipig.net:8655" - }, - { - "url": "http://bsc3.cipig.net:8655" - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -7203,15 +6860,6 @@ "url": "https://node.komodo.earth:8080/binance", "gui_auth": true }, - { - "url": "http://bsc1.cipig.net:8655" - }, - { - "url": "http://bsc2.cipig.net:8655" - }, - { - "url": "http://bsc3.cipig.net:8655" - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -7265,8 +6913,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum1.cipig.net:30029" + ] }, { "url": "electrum2.cipig.net:10029", @@ -7277,8 +6924,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum2.cipig.net:30029" + ] }, { "url": "electrum3.cipig.net:10029", @@ -7289,8 +6935,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum3.cipig.net:30029" + ] }, { "url": "electrum1.cipig.net:20029", @@ -7302,7 +6947,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum1.cipig.net:30029" }, { "url": "electrum2.cipig.net:20029", @@ -7314,7 +6960,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum2.cipig.net:30029" }, { "url": "electrum3.cipig.net:20029", @@ -7326,7 +6973,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum3.cipig.net:30029" } ], "explorer_block_url": "block/" @@ -7369,12 +7017,6 @@ "protocol": "SSL", "disable_cert_verification": true }, - { - "url": "holland.ecoincore.com:34333", - "protocol": "SSL", - "disable_cert_verification": true, - "ws_url": "holland.ecoincore.com:34335" - }, { "url": "lenoir.ecoincore.com:34333", "protocol": "SSL", @@ -7387,12 +7029,6 @@ "disable_cert_verification": true, "ws_url": "miami.ecoincore.com:34335" }, - { - "url": "mumbai.ecoincore.com:34333", - "protocol": "SSL", - "disable_cert_verification": true, - "ws_url": "mumbai.ecoincore.com:34335" - }, { "url": "oakland.ecoincore.com:34333", "protocol": "SSL", @@ -7454,12 +7090,6 @@ "protocol": "SSL", "disable_cert_verification": true }, - { - "url": "holland.ecoincore.com:34333", - "protocol": "SSL", - "disable_cert_verification": true, - "ws_url": "holland.ecoincore.com:34335" - }, { "url": "lenoir.ecoincore.com:34333", "protocol": "SSL", @@ -7472,12 +7102,6 @@ "disable_cert_verification": true, "ws_url": "miami.ecoincore.com:34335" }, - { - "url": "mumbai.ecoincore.com:34333", - "protocol": "SSL", - "disable_cert_verification": true, - "ws_url": "mumbai.ecoincore.com:34335" - }, { "url": "oakland.ecoincore.com:34333", "protocol": "SSL", @@ -7536,24 +7160,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -7618,7 +7224,10 @@ "url": "https://polygon-rpc.com" }, { - "url": "https://poly-rpc.gateway.pokt.network" + "url": "https://polygon.blockpi.network/v1/rpc/public" + }, + { + "url": "https://polygon.llamarpc.com" } ], "explorer_block_url": "block/" @@ -7667,24 +7276,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -7745,15 +7336,6 @@ "url": "https://node.komodo.earth:8080/binance", "gui_auth": true }, - { - "url": "http://bsc1.cipig.net:8655" - }, - { - "url": "http://bsc2.cipig.net:8655" - }, - { - "url": "http://bsc3.cipig.net:8655" - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -7850,15 +7432,6 @@ "url": "https://node.komodo.earth:8080/binance", "gui_auth": true }, - { - "url": "http://bsc1.cipig.net:8655" - }, - { - "url": "http://bsc2.cipig.net:8655" - }, - { - "url": "http://bsc3.cipig.net:8655" - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -7976,8 +7549,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum1.cipig.net:30053" + ] }, { "url": "electrum2.cipig.net:10053", @@ -7988,8 +7560,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum2.cipig.net:30053" + ] }, { "url": "electrum3.cipig.net:10053", @@ -8000,8 +7571,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum3.cipig.net:30053" + ] }, { "url": "electrum1.cipig.net:20053", @@ -8013,7 +7583,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum1.cipig.net:30053" }, { "url": "electrum2.cipig.net:20053", @@ -8025,7 +7596,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum2.cipig.net:30053" }, { "url": "electrum3.cipig.net:20053", @@ -8037,7 +7609,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum3.cipig.net:30053" } ], "explorer_block_url": "block/" @@ -8085,24 +7658,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -8167,7 +7722,10 @@ "url": "https://polygon-rpc.com" }, { - "url": "https://poly-rpc.gateway.pokt.network" + "url": "https://polygon.blockpi.network/v1/rpc/public" + }, + { + "url": "https://polygon.llamarpc.com" } ], "explorer_block_url": "block/" @@ -8211,24 +7769,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -8337,7 +7877,10 @@ "url": "https://polygon-rpc.com" }, { - "url": "https://poly-rpc.gateway.pokt.network" + "url": "https://polygon.blockpi.network/v1/rpc/public" + }, + { + "url": "https://polygon.llamarpc.com" } ], "explorer_block_url": "block/" @@ -8428,6 +7971,9 @@ }, { "url": "https://api.avax.network/ext/bc/C/rpc" + }, + { + "url": "https://avalanche.blockpi.network/v1/rpc/public" } ], "explorer_block_url": "block/" @@ -8470,15 +8016,6 @@ "url": "https://node.komodo.earth:8080/binance", "gui_auth": true }, - { - "url": "http://bsc1.cipig.net:8655" - }, - { - "url": "http://bsc2.cipig.net:8655" - }, - { - "url": "http://bsc3.cipig.net:8655" - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -8536,24 +8073,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -8662,7 +8181,10 @@ "url": "https://polygon-rpc.com" }, { - "url": "https://poly-rpc.gateway.pokt.network" + "url": "https://polygon.blockpi.network/v1/rpc/public" + }, + { + "url": "https://polygon.llamarpc.com" } ], "explorer_block_url": "block/" @@ -8706,24 +8228,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -8832,7 +8336,10 @@ "url": "https://polygon-rpc.com" }, { - "url": "https://poly-rpc.gateway.pokt.network" + "url": "https://polygon.blockpi.network/v1/rpc/public" + }, + { + "url": "https://polygon.llamarpc.com" } ], "explorer_block_url": "block/" @@ -8876,24 +8383,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -8956,6 +8445,9 @@ }, { "url": "https://api.avax.network/ext/bc/C/rpc" + }, + { + "url": "https://avalanche.blockpi.network/v1/rpc/public" } ], "explorer_block_url": "block/" @@ -9001,6 +8493,9 @@ }, { "url": "https://rpc.fantom.network" + }, + { + "url": "https://rpc2.fantom.network" } ], "explorer_block_url": "block/" @@ -9092,7 +8587,10 @@ "url": "https://polygon-rpc.com" }, { - "url": "https://poly-rpc.gateway.pokt.network" + "url": "https://polygon.blockpi.network/v1/rpc/public" + }, + { + "url": "https://polygon.llamarpc.com" } ], "explorer_block_url": "block/" @@ -9135,15 +8633,6 @@ "url": "https://node.komodo.earth:8080/binance", "gui_auth": true }, - { - "url": "http://bsc1.cipig.net:8655" - }, - { - "url": "http://bsc2.cipig.net:8655" - }, - { - "url": "http://bsc3.cipig.net:8655" - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -9196,24 +8685,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -9272,8 +8743,22 @@ }, "electrum": [ { - "url": "electrum01.cyberyen.work:50002", + "url": "electrum02.cyberyen.work:50002", + "protocol": "SSL", + "ws_url": "electrum02.cyberyen.work:50004", + "contact": [ + { + "email": "ruaxxx@ruaxxx.com" + }, + { + "discord": "ruaxxx#3151" + } + ] + }, + { + "url": "electrum03.cyberyen.work:50002", "protocol": "SSL", + "ws_url": "electrum03.cyberyen.work:50004", "contact": [ { "email": "ruaxxx@ruaxxx.com" @@ -9327,8 +8812,22 @@ }, "electrum": [ { - "url": "electrum01.cyberyen.work:50002", + "url": "electrum02.cyberyen.work:50002", "protocol": "SSL", + "ws_url": "electrum02.cyberyen.work:50004", + "contact": [ + { + "email": "ruaxxx@ruaxxx.com" + }, + { + "discord": "ruaxxx#3151" + } + ] + }, + { + "url": "electrum03.cyberyen.work:50002", + "protocol": "SSL", + "ws_url": "electrum03.cyberyen.work:50004", "contact": [ { "email": "ruaxxx@ruaxxx.com" @@ -9382,6 +8881,9 @@ }, { "url": "https://api.avax.network/ext/bc/C/rpc" + }, + { + "url": "https://avalanche.blockpi.network/v1/rpc/public" } ], "explorer_block_url": "block/" @@ -9429,24 +8931,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -9506,15 +8990,6 @@ "url": "https://node.komodo.earth:8080/binance", "gui_auth": true }, - { - "url": "http://bsc1.cipig.net:8655" - }, - { - "url": "http://bsc2.cipig.net:8655" - }, - { - "url": "http://bsc3.cipig.net:8655" - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -9569,6 +9044,9 @@ }, { "url": "https://rpc.fantom.network" + }, + { + "url": "https://rpc2.fantom.network" } ], "explorer_block_url": "block/" @@ -9653,7 +9131,7 @@ "fallback_swap_contract": "0x9130b257D37A52E52F21054c4DA3450c72f595CE", "nodes": [ { - "url": "https://rpc.moonriver.moonbeam.network" + "url": "https://moonriver.public.blastapi.io" }, { "url": "https://rpc.api.moonriver.moonbeam.network" @@ -9704,7 +9182,10 @@ "url": "https://polygon-rpc.com" }, { - "url": "https://poly-rpc.gateway.pokt.network" + "url": "https://polygon.blockpi.network/v1/rpc/public" + }, + { + "url": "https://polygon.llamarpc.com" } ], "explorer_block_url": "block/" @@ -9754,8 +9235,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum1.cipig.net:30061" + ] }, { "url": "electrum2.cipig.net:10061", @@ -9766,8 +9246,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum2.cipig.net:30061" + ] }, { "url": "electrum3.cipig.net:10061", @@ -9778,8 +9257,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum3.cipig.net:30061" + ] }, { "url": "electrum1.cipig.net:20061", @@ -9791,7 +9269,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum1.cipig.net:30061" }, { "url": "electrum2.cipig.net:20061", @@ -9803,7 +9282,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum2.cipig.net:30061" }, { "url": "electrum3.cipig.net:20061", @@ -9815,7 +9295,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum3.cipig.net:30061" } ], "explorer_block_url": "block/" @@ -9858,24 +9339,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -9939,24 +9402,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -9978,112 +9423,6 @@ ], "explorer_block_url": "block/" }, - "DEX": { - "coin": "DEX", - "type": "Smart Chain", - "name": "DEX", - "coinpaprika_id": "", - "coingecko_id": "", - "livecoinwatch_id": "", - "explorer_url": "https://dex.kmdexplorer.io/", - "explorer_tx_url": "", - "explorer_address_url": "", - "supported": [], - "active": false, - "is_testnet": false, - "currently_enabled": false, - "wallet_only": false, - "sign_message_prefix": "Komodo Signed Message:\n", - "asset": "DEX", - "fname": "DEX", - "rpcport": 11890, - "txversion": 4, - "overwintered": 1, - "mm2": 1, - "required_confirmations": 2, - "requires_notarization": true, - "avg_blocktime": 60, - "protocol": { - "type": "UTXO" - }, - "derivation_path": "m/44'/141'", - "trezor_coin": "Komodo", - "electrum": [ - { - "url": "electrum1.cipig.net:10006", - "contact": [ - { - "email": "cipi@komodoplatform.com" - }, - { - "discord": "cipi#4502" - } - ], - "ws_url": "electrum1.cipig.net:30006" - }, - { - "url": "electrum2.cipig.net:10006", - "contact": [ - { - "email": "cipi@komodoplatform.com" - }, - { - "discord": "cipi#4502" - } - ], - "ws_url": "electrum2.cipig.net:30006" - }, - { - "url": "electrum3.cipig.net:10006", - "contact": [ - { - "email": "cipi@komodoplatform.com" - }, - { - "discord": "cipi#4502" - } - ], - "ws_url": "electrum3.cipig.net:30006" - }, - { - "url": "electrum1.cipig.net:20006", - "protocol": "SSL", - "contact": [ - { - "email": "cipi@komodoplatform.com" - }, - { - "discord": "cipi#4502" - } - ] - }, - { - "url": "electrum2.cipig.net:20006", - "protocol": "SSL", - "contact": [ - { - "email": "cipi@komodoplatform.com" - }, - { - "discord": "cipi#4502" - } - ] - }, - { - "url": "electrum3.cipig.net:20006", - "protocol": "SSL", - "contact": [ - { - "email": "cipi@komodoplatform.com" - }, - { - "discord": "cipi#4502" - } - ] - } - ], - "explorer_block_url": "block/" - }, "DFX-ERC20": { "coin": "DFX-ERC20", "type": "ERC-20", @@ -10123,24 +9462,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -10205,7 +9526,10 @@ "url": "https://polygon-rpc.com" }, { - "url": "https://poly-rpc.gateway.pokt.network" + "url": "https://polygon.blockpi.network/v1/rpc/public" + }, + { + "url": "https://polygon.llamarpc.com" } ], "explorer_block_url": "block/" @@ -10256,8 +9580,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum1.cipig.net:30059" + ] }, { "url": "electrum2.cipig.net:10059", @@ -10268,8 +9591,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum2.cipig.net:30059" + ] }, { "url": "electrum3.cipig.net:10059", @@ -10280,8 +9602,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum3.cipig.net:30059" + ] }, { "url": "electrum1.cipig.net:20059", @@ -10293,7 +9614,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum1.cipig.net:30059" }, { "url": "electrum2.cipig.net:20059", @@ -10305,7 +9627,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum1.cipig.net:30059" }, { "url": "electrum3.cipig.net:20059", @@ -10317,7 +9640,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum3.cipig.net:30059" } ], "explorer_block_url": "block/" @@ -10372,8 +9696,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum1.cipig.net:30059" + ] }, { "url": "electrum2.cipig.net:10059", @@ -10384,8 +9707,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum2.cipig.net:30059" + ] }, { "url": "electrum3.cipig.net:10059", @@ -10396,8 +9718,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum3.cipig.net:30059" + ] }, { "url": "electrum1.cipig.net:20059", @@ -10409,7 +9730,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum1.cipig.net:30059" }, { "url": "electrum2.cipig.net:20059", @@ -10421,7 +9743,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum1.cipig.net:30059" }, { "url": "electrum3.cipig.net:20059", @@ -10433,7 +9756,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum3.cipig.net:30059" } ], "explorer_block_url": "block/" @@ -10521,24 +9845,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -10599,15 +9905,6 @@ "url": "https://node.komodo.earth:8080/binance", "gui_auth": true }, - { - "url": "http://bsc1.cipig.net:8655" - }, - { - "url": "http://bsc2.cipig.net:8655" - }, - { - "url": "http://bsc3.cipig.net:8655" - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -10727,15 +10024,6 @@ "url": "https://node.komodo.earth:8080/binance", "gui_auth": true }, - { - "url": "http://bsc1.cipig.net:8655" - }, - { - "url": "http://bsc2.cipig.net:8655" - }, - { - "url": "http://bsc3.cipig.net:8655" - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -10798,8 +10086,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum1.cipig.net:30050" + ] }, { "url": "electrum2.cipig.net:10050", @@ -10810,8 +10097,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum2.cipig.net:30050" + ] }, { "url": "electrum3.cipig.net:10050", @@ -10822,8 +10108,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum3.cipig.net:30050" + ] }, { "url": "electrum1.cipig.net:20050", @@ -10835,7 +10120,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum1.cipig.net:30050" }, { "url": "electrum2.cipig.net:20050", @@ -10847,7 +10133,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum2.cipig.net:30050" }, { "url": "electrum3.cipig.net:20050", @@ -10859,7 +10146,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum3.cipig.net:30050" } ], "explorer_block_url": "block/" @@ -10902,15 +10190,6 @@ "url": "https://node.komodo.earth:8080/binance", "gui_auth": true }, - { - "url": "http://bsc1.cipig.net:8655" - }, - { - "url": "http://bsc2.cipig.net:8655" - }, - { - "url": "http://bsc3.cipig.net:8655" - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -10963,24 +10242,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -11092,8 +10353,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum1.cipig.net:30060" + ] }, { "url": "electrum2.cipig.net:10060", @@ -11104,8 +10364,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum2.cipig.net:30060" + ] }, { "url": "electrum3.cipig.net:10060", @@ -11116,8 +10375,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum3.cipig.net:30060" + ] }, { "url": "electrum1.cipig.net:20060", @@ -11129,7 +10387,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum1.cipig.net:30060" }, { "url": "electrum2.cipig.net:20060", @@ -11141,7 +10400,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum2.cipig.net:30060" }, { "url": "electrum3.cipig.net:20060", @@ -11153,7 +10413,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum3.cipig.net:30060" } ], "explorer_block_url": "block/" @@ -11196,15 +10457,6 @@ "url": "https://node.komodo.earth:8080/binance", "gui_auth": true }, - { - "url": "http://bsc1.cipig.net:8655" - }, - { - "url": "http://bsc2.cipig.net:8655" - }, - { - "url": "http://bsc3.cipig.net:8655" - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -11256,15 +10508,6 @@ "url": "https://node.komodo.earth:8080/binance", "gui_auth": true }, - { - "url": "http://bsc1.cipig.net:8655" - }, - { - "url": "http://bsc2.cipig.net:8655" - }, - { - "url": "http://bsc3.cipig.net:8655" - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -11316,15 +10559,6 @@ "url": "https://node.komodo.earth:8080/binance", "gui_auth": true }, - { - "url": "http://bsc1.cipig.net:8655" - }, - { - "url": "http://bsc2.cipig.net:8655" - }, - { - "url": "http://bsc3.cipig.net:8655" - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -11376,15 +10610,6 @@ "url": "https://node.komodo.earth:8080/binance", "gui_auth": true }, - { - "url": "http://bsc1.cipig.net:8655" - }, - { - "url": "http://bsc2.cipig.net:8655" - }, - { - "url": "http://bsc3.cipig.net:8655" - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -11515,16 +10740,6 @@ "type": "UTXO" }, "electrum": [ - { - "url": "pink-deer-69.doi.works:50001", - "protocol": "TCP", - "contact": [ - { - "github": "https://github.com/namecoin/electrum-nmc/issues", - "twitter": "example_username" - } - ] - }, { "url": "big-parrot-60.doi.works:50002", "protocol": "SSL", @@ -11547,17 +10762,6 @@ ], "ws-url": "itchy-jellyfish-89.doi.works:50004" }, - { - "url": "pink-deer-69.doi.works:50002", - "protocol": "SSL", - "contact": [ - { - "github": "https://github.com/namecoin/electrum-nmc/issues", - "twitter": "example_username" - } - ], - "ws-url": "pink-deer-69.doi.works:50004" - }, { "url": "ugly-bird-70.doi.works:50002", "protocol": "SSL", @@ -11613,8 +10817,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum1.cipig.net:30052" + ] }, { "url": "electrum2.cipig.net:10052", @@ -11625,8 +10828,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum2.cipig.net:30052" + ] }, { "url": "electrum3.cipig.net:10052", @@ -11637,8 +10839,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum3.cipig.net:30052" + ] }, { "url": "electrum1.cipig.net:20052", @@ -11650,7 +10851,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum1.cipig.net:30052" }, { "url": "electrum2.cipig.net:20052", @@ -11662,7 +10864,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum2.cipig.net:30052" }, { "url": "electrum3.cipig.net:20052", @@ -11674,7 +10877,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum3.cipig.net:30052" } ], "explorer_block_url": "block/" @@ -11711,16 +10915,16 @@ "derivation_path": "m/44'/78'", "electrum": [ { - "url": "electrum2.egulden.org:50002", + "url": "electrum3.egulden.org:50002", "protocol": "SSL", "disable_cert_verification": true, - "ws_url": "electrum2.egulden.org:50004" + "ws_url": "electrum3.egulden.org:50004" }, { - "url": "electrum3.egulden.org:50002", + "url": "holland.ecoincore.com:11017", "protocol": "SSL", "disable_cert_verification": true, - "ws_url": "electrum3.egulden.org:50004" + "ws_url": "holland.ecoincore.com:11019" }, { "url": "lenoir.ecoincore.com:11017", @@ -11769,15 +10973,6 @@ "url": "https://node.komodo.earth:8080/binance", "gui_auth": true }, - { - "url": "http://bsc1.cipig.net:8655" - }, - { - "url": "http://bsc2.cipig.net:8655" - }, - { - "url": "http://bsc3.cipig.net:8655" - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -11830,24 +11025,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -11907,15 +11084,6 @@ "url": "https://node.komodo.earth:8080/binance", "gui_auth": true }, - { - "url": "http://bsc1.cipig.net:8655" - }, - { - "url": "http://bsc2.cipig.net:8655" - }, - { - "url": "http://bsc3.cipig.net:8655" - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -11973,24 +11141,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -12053,8 +11203,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum1.cipig.net:30062" + ] }, { "url": "electrum2.cipig.net:10062", @@ -12065,8 +11214,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum2.cipig.net:30062" + ] }, { "url": "electrum3.cipig.net:10062", @@ -12077,8 +11225,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum3.cipig.net:30062" + ] }, { "url": "electrum1.cipig.net:20062", @@ -12090,7 +11237,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum1.cipig.net:30062" }, { "url": "electrum2.cipig.net:20062", @@ -12102,7 +11250,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum2.cipig.net:30062" }, { "url": "electrum3.cipig.net:20062", @@ -12114,7 +11263,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum3.cipig.net:30062" } ], "explorer_block_url": "block.dws?" @@ -12163,24 +11313,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -12289,7 +11421,10 @@ "url": "https://polygon-rpc.com" }, { - "url": "https://poly-rpc.gateway.pokt.network" + "url": "https://polygon.blockpi.network/v1/rpc/public" + }, + { + "url": "https://polygon.llamarpc.com" } ], "explorer_block_url": "block/" @@ -12332,15 +11467,6 @@ "url": "https://node.komodo.earth:8080/binance", "gui_auth": true }, - { - "url": "http://bsc1.cipig.net:8655" - }, - { - "url": "http://bsc2.cipig.net:8655" - }, - { - "url": "http://bsc3.cipig.net:8655" - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -12439,15 +11565,6 @@ "url": "https://node.komodo.earth:8080/binance", "gui_auth": true }, - { - "url": "http://bsc1.cipig.net:8655" - }, - { - "url": "http://bsc2.cipig.net:8655" - }, - { - "url": "http://bsc3.cipig.net:8655" - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -12494,24 +11611,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -12574,6 +11673,9 @@ }, { "url": "https://api.avax.network/ext/bc/C/rpc" + }, + { + "url": "https://avalanche.blockpi.network/v1/rpc/public" } ], "explorer_block_url": "block/" @@ -12653,15 +11755,6 @@ "url": "https://node.komodo.earth:8080/binance", "gui_auth": true }, - { - "url": "http://bsc1.cipig.net:8655" - }, - { - "url": "http://bsc2.cipig.net:8655" - }, - { - "url": "http://bsc3.cipig.net:8655" - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -12716,6 +11809,9 @@ }, { "url": "https://rpc.fantom.network" + }, + { + "url": "https://rpc2.fantom.network" } ], "explorer_block_url": "block/" @@ -12851,7 +11947,10 @@ "url": "https://polygon-rpc.com" }, { - "url": "https://poly-rpc.gateway.pokt.network" + "url": "https://polygon.blockpi.network/v1/rpc/public" + }, + { + "url": "https://polygon.llamarpc.com" } ], "explorer_block_url": "block/" @@ -12895,24 +11994,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -12978,7 +12059,10 @@ "url": "https://polygon-rpc.com" }, { - "url": "https://poly-rpc.gateway.pokt.network" + "url": "https://polygon.blockpi.network/v1/rpc/public" + }, + { + "url": "https://polygon.llamarpc.com" } ], "explorer_block_url": "block/" @@ -13027,24 +12111,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -13110,7 +12176,10 @@ "url": "https://polygon-rpc.com" }, { - "url": "https://poly-rpc.gateway.pokt.network" + "url": "https://polygon.blockpi.network/v1/rpc/public" + }, + { + "url": "https://polygon.llamarpc.com" } ], "explorer_block_url": "block/", @@ -13193,15 +12262,6 @@ "url": "https://node.komodo.earth:8080/binance", "gui_auth": true }, - { - "url": "http://bsc1.cipig.net:8655" - }, - { - "url": "http://bsc2.cipig.net:8655" - }, - { - "url": "http://bsc3.cipig.net:8655" - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -13254,24 +12314,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -13332,24 +12374,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -13410,15 +12434,6 @@ "url": "https://node.komodo.earth:8080/binance", "gui_auth": true }, - { - "url": "http://bsc1.cipig.net:8655" - }, - { - "url": "http://bsc2.cipig.net:8655" - }, - { - "url": "http://bsc3.cipig.net:8655" - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -13475,7 +12490,10 @@ "url": "https://polygon-rpc.com" }, { - "url": "https://poly-rpc.gateway.pokt.network" + "url": "https://polygon.blockpi.network/v1/rpc/public" + }, + { + "url": "https://polygon.llamarpc.com" } ], "explorer_block_url": "block/" @@ -13518,15 +12536,6 @@ "url": "https://node.komodo.earth:8080/binance", "gui_auth": true }, - { - "url": "http://bsc1.cipig.net:8655" - }, - { - "url": "http://bsc2.cipig.net:8655" - }, - { - "url": "http://bsc3.cipig.net:8655" - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -13579,24 +12588,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -13782,15 +12773,6 @@ "url": "https://node.komodo.earth:8080/binance", "gui_auth": true }, - { - "url": "http://bsc1.cipig.net:8655" - }, - { - "url": "http://bsc2.cipig.net:8655" - }, - { - "url": "http://bsc3.cipig.net:8655" - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -14002,15 +12984,6 @@ "url": "https://node.komodo.earth:8080/binance", "gui_auth": true }, - { - "url": "http://bsc1.cipig.net:8655" - }, - { - "url": "http://bsc2.cipig.net:8655" - }, - { - "url": "http://bsc3.cipig.net:8655" - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -14062,15 +13035,6 @@ "url": "https://node.komodo.earth:8080/binance", "gui_auth": true }, - { - "url": "http://bsc1.cipig.net:8655" - }, - { - "url": "http://bsc2.cipig.net:8655" - }, - { - "url": "http://bsc3.cipig.net:8655" - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -14122,15 +13086,6 @@ "url": "https://node.komodo.earth:8080/binance", "gui_auth": true }, - { - "url": "http://bsc1.cipig.net:8655" - }, - { - "url": "http://bsc2.cipig.net:8655" - }, - { - "url": "http://bsc3.cipig.net:8655" - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -14183,24 +13138,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -14261,15 +13198,6 @@ "url": "https://node.komodo.earth:8080/binance", "gui_auth": true }, - { - "url": "http://bsc1.cipig.net:8655" - }, - { - "url": "http://bsc2.cipig.net:8655" - }, - { - "url": "http://bsc3.cipig.net:8655" - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -14329,8 +13257,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum1.cipig.net:30054" + ] }, { "url": "electrum2.cipig.net:10054", @@ -14341,8 +13268,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum2.cipig.net:30054" + ] }, { "url": "electrum3.cipig.net:10054", @@ -14353,8 +13279,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum3.cipig.net:30054" + ] }, { "url": "electrum1.cipig.net:20054", @@ -14366,7 +13291,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum1.cipig.net:30054" }, { "url": "electrum2.cipig.net:20054", @@ -14378,7 +13304,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum2.cipig.net:30054" }, { "url": "electrum3.cipig.net:20054", @@ -14390,7 +13317,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum3.cipig.net:30054" } ], "explorer_block_url": "block/" @@ -14445,8 +13373,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum1.cipig.net:30054" + ] }, { "url": "electrum2.cipig.net:10054", @@ -14457,8 +13384,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum2.cipig.net:30054" + ] }, { "url": "electrum3.cipig.net:10054", @@ -14469,8 +13395,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum3.cipig.net:30054" + ] }, { "url": "electrum1.cipig.net:20054", @@ -14482,7 +13407,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum1.cipig.net:30054" }, { "url": "electrum2.cipig.net:20054", @@ -14494,7 +13420,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum2.cipig.net:30054" }, { "url": "electrum3.cipig.net:20054", @@ -14506,7 +13433,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum3.cipig.net:30054" } ], "explorer_block_url": "block/" @@ -14582,6 +13510,9 @@ }, { "url": "https://rpc.fantom.network" + }, + { + "url": "https://rpc2.fantom.network" } ], "explorer_block_url": "block/" @@ -14624,15 +13555,6 @@ "url": "https://node.komodo.earth:8080/binance", "gui_auth": true }, - { - "url": "http://bsc1.cipig.net:8655" - }, - { - "url": "http://bsc2.cipig.net:8655" - }, - { - "url": "http://bsc3.cipig.net:8655" - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -14689,24 +13611,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -14767,15 +13671,6 @@ "url": "https://node.komodo.earth:8080/binance", "gui_auth": true }, - { - "url": "http://bsc1.cipig.net:8655" - }, - { - "url": "http://bsc2.cipig.net:8655" - }, - { - "url": "http://bsc3.cipig.net:8655" - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -14828,24 +13723,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -14910,7 +13787,10 @@ "url": "https://polygon-rpc.com" }, { - "url": "https://poly-rpc.gateway.pokt.network" + "url": "https://polygon.blockpi.network/v1/rpc/public" + }, + { + "url": "https://polygon.llamarpc.com" } ], "explorer_block_url": "block/" @@ -14956,6 +13836,9 @@ }, { "url": "https://api.avax.network/ext/bc/C/rpc" + }, + { + "url": "https://avalanche.blockpi.network/v1/rpc/public" } ], "explorer_block_url": "block/" @@ -14996,7 +13879,7 @@ "fallback_swap_contract": "0x9130b257D37A52E52F21054c4DA3450c72f595CE", "nodes": [ { - "url": "https://rpc.moonriver.moonbeam.network" + "url": "https://moonriver.public.blastapi.io" }, { "url": "https://rpc.api.moonriver.moonbeam.network" @@ -15045,6 +13928,9 @@ }, { "url": "https://rpc.fantom.network" + }, + { + "url": "https://rpc2.fantom.network" } ], "explorer_block_url": "block/" @@ -15089,22 +13975,116 @@ "gui_auth": true }, { - "url": "http://eth1.cipig.net:8555", + "url": "https://eth1.cipig.net:18555", "contact": { "email": "cipi@komodoplatform.com" } }, { - "url": "http://eth2.cipig.net:8555", + "url": "https://eth2.cipig.net:18555", "contact": { "email": "cipi@komodoplatform.com" } }, { - "url": "http://eth3.cipig.net:8555", + "url": "https://eth3.cipig.net:18555", "contact": { "email": "cipi@komodoplatform.com" } + } + ], + "explorer_block_url": "block/" + }, + "GALA-BEP20": { + "coin": "GALA-BEP20", + "type": "BEP-20", + "name": "Gala", + "coinpaprika_id": "", + "coingecko_id": "", + "livecoinwatch_id": "GALA", + "explorer_url": "https://bscscan.com/", + "explorer_tx_url": "tx/", + "explorer_address_url": "address/", + "supported": [], + "active": false, + "is_testnet": false, + "currently_enabled": false, + "wallet_only": true, + "fname": "Gala", + "rpcport": 80, + "mm2": 1, + "chain_id": 56, + "decimals": 18, + "avg_blocktime": 3, + "required_confirmations": 3, + "protocol": { + "type": "ERC20", + "protocol_data": { + "platform": "BNB", + "contract_address": "0x7dDEE176F665cD201F93eEDE625770E2fD911990" + } + }, + "derivation_path": "m/44'/714'", + "contract_address": "0x7dDEE176F665cD201F93eEDE625770E2fD911990", + "parent_coin": "BNB", + "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", + "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", + "nodes": [ + { + "url": "https://node.komodo.earth:8080/binance", + "gui_auth": true + }, + { + "url": "https://bsc1.cipig.net:18655" + }, + { + "url": "https://bsc2.cipig.net:18655" + }, + { + "url": "https://bsc3.cipig.net:18655" + } + ], + "token_address_url": "tokentxns?a=", + "explorer_block_url": "block/" + }, + "GAME-ERC20": { + "coin": "GAME-ERC20", + "type": "ERC-20", + "name": "GameCredits", + "coinpaprika_id": "game-gamecredits", + "coingecko_id": "gamecredits", + "livecoinwatch_id": "GAME", + "explorer_url": "https://etherscan.io/", + "explorer_tx_url": "tx/", + "explorer_address_url": "address/", + "supported": [], + "active": false, + "is_testnet": false, + "currently_enabled": false, + "wallet_only": false, + "fname": "GameCredits", + "rpcport": 80, + "mm2": 1, + "chain_id": 1, + "decimals": 18, + "avg_blocktime": 15, + "required_confirmations": 3, + "protocol": { + "type": "ERC20", + "protocol_data": { + "platform": "ETH", + "contract_address": "0x63f88A2298a5c4AEE3c216Aa6D926B184a4b2437" + } + }, + "derivation_path": "m/44'/60'", + "contract_address": "0x63f88A2298a5c4AEE3c216Aa6D926B184a4b2437", + "parent_coin": "ETH", + "swap_contract_address": "0x24ABE4c71FC658C91313b6552cd40cD808b3Ea80", + "fallback_swap_contract": "0x8500AFc0bc5214728082163326C2FF0C73f4a871", + "nodes": [ + { + "url": "https://node.komodo.earth:8080/ethereum", + "gui_auth": true }, { "url": "https://eth1.cipig.net:18555", @@ -15127,13 +14107,106 @@ ], "explorer_block_url": "block/" }, - "GALA-BEP20": { - "coin": "GALA-BEP20", + "GAME-PLG20": { + "coin": "GAME-PLG20", + "type": "Matic", + "name": "GameCredits", + "coinpaprika_id": "", + "coingecko_id": "", + "livecoinwatch_id": "GAME", + "explorer_url": "https://polygonscan.com/", + "explorer_tx_url": "tx/", + "explorer_address_url": "address/", + "supported": [], + "active": false, + "is_testnet": false, + "currently_enabled": false, + "wallet_only": false, + "fname": "GameCredits", + "rpcport": 80, + "mm2": 1, + "chain_id": 137, + "decimals": 18, + "avg_blocktime": 1.8, + "required_confirmations": 20, + "protocol": { + "type": "ERC20", + "protocol_data": { + "platform": "MATIC", + "contract_address": "0x8d1566569d5b695d44a9a234540f68D393cDC40D" + } + }, + "derivation_path": "m/44'/966'", + "contract_address": "0x8d1566569d5b695d44a9a234540f68D393cDC40D", + "parent_coin": "MATIC", + "swap_contract_address": "0x9130b257D37A52E52F21054c4DA3450c72f595CE", + "fallback_swap_contract": "0x9130b257D37A52E52F21054c4DA3450c72f595CE", + "nodes": [ + { + "url": "https://node.komodo.earth:8080/polygon", + "gui_auth": true + }, + { + "url": "https://polygon-rpc.com" + }, + { + "url": "https://polygon.blockpi.network/v1/rpc/public" + }, + { + "url": "https://polygon.llamarpc.com" + } + ], + "explorer_block_url": "block/" + }, + "GBX": { + "coin": "GBX", + "type": "UTXO", + "name": "GoByte", + "coinpaprika_id": "gbx-gobyte", + "coingecko_id": "gobyte", + "livecoinwatch_id": "GBX", + "explorer_url": "https://insight.gobyte.network/", + "explorer_tx_url": "", + "explorer_address_url": "", + "supported": [], + "active": false, + "is_testnet": false, + "currently_enabled": false, + "wallet_only": false, + "sign_message_prefix": "DarkCoin Signed Message:\n", + "fname": "GoByte", + "confpath": "USERHOME/.gobytecore/gobyte.conf", + "rpcport": 12454, + "pubtype": 38, + "p2shtype": 10, + "wiftype": 198, + "segwit": false, + "txfee": 10000, + "mm2": 1, + "required_confirmations": 3, + "avg_blocktime": 150, + "protocol": { + "type": "UTXO" + }, + "derivation_path": "m/44'/176'", + "links": { + "github": "https://github.com/gobytecoin/gobyte", + "homepage": "https://gobyte.network" + }, + "electrum": [ + { + "url": "88.99.26.209:5128" + } + ], + "explorer_block_url": "block/" + }, + "GBX-BEP20": { + "coin": "GBX-BEP20", "type": "BEP-20", - "name": "Gala", + "name": "GoByte", "coinpaprika_id": "", "coingecko_id": "", - "livecoinwatch_id": "GALA", + "livecoinwatch_id": "GBX", "explorer_url": "https://bscscan.com/", "explorer_tx_url": "tx/", "explorer_address_url": "address/", @@ -15141,8 +14214,8 @@ "active": false, "is_testnet": false, "currently_enabled": false, - "wallet_only": true, - "fname": "Gala", + "wallet_only": false, + "fname": "GoByte", "rpcport": 80, "mm2": 1, "chain_id": 56, @@ -15153,11 +14226,11 @@ "type": "ERC20", "protocol_data": { "platform": "BNB", - "contract_address": "0x7dDEE176F665cD201F93eEDE625770E2fD911990" + "contract_address": "0x8E10F08C9A56a93B6adbfBcFda421919B3357596" } }, "derivation_path": "m/44'/714'", - "contract_address": "0x7dDEE176F665cD201F93eEDE625770E2fD911990", + "contract_address": "0x8E10F08C9A56a93B6adbfBcFda421919B3357596", "parent_coin": "BNB", "swap_contract_address": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", "fallback_swap_contract": "0xeDc5b89Fe1f0382F9E4316069971D90a0951DB31", @@ -15166,15 +14239,6 @@ "url": "https://node.komodo.earth:8080/binance", "gui_auth": true }, - { - "url": "http://bsc1.cipig.net:8655" - }, - { - "url": "http://bsc2.cipig.net:8655" - }, - { - "url": "http://bsc3.cipig.net:8655" - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -15227,15 +14291,6 @@ "url": "https://node.komodo.earth:8080/binance", "gui_auth": true }, - { - "url": "http://bsc1.cipig.net:8655" - }, - { - "url": "http://bsc2.cipig.net:8655" - }, - { - "url": "http://bsc3.cipig.net:8655" - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -15290,8 +14345,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum1.cipig.net:30022" + ] }, { "url": "electrum2.cipig.net:10022", @@ -15303,8 +14357,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum2.cipig.net:30022" + ] }, { "url": "electrum3.cipig.net:10022", @@ -15316,8 +14369,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum3.cipig.net:30022" + ] }, { "url": "electrum1.cipig.net:20022", @@ -15329,7 +14381,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum1.cipig.net:30022" }, { "url": "electrum2.cipig.net:20022", @@ -15341,7 +14394,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum2.cipig.net:30022" }, { "url": "electrum3.cipig.net:20022", @@ -15353,7 +14407,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum3.cipig.net:30022" } ], "explorer_block_url": "block/" @@ -15397,24 +14452,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -15479,7 +14516,10 @@ "url": "https://polygon-rpc.com" }, { - "url": "https://poly-rpc.gateway.pokt.network" + "url": "https://polygon.blockpi.network/v1/rpc/public" + }, + { + "url": "https://polygon.llamarpc.com" } ], "explorer_block_url": "block/" @@ -15522,15 +14562,6 @@ "url": "https://node.komodo.earth:8080/binance", "gui_auth": true }, - { - "url": "http://bsc1.cipig.net:8655" - }, - { - "url": "http://bsc2.cipig.net:8655" - }, - { - "url": "http://bsc3.cipig.net:8655" - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -15583,15 +14614,6 @@ "url": "https://node.komodo.earth:8080/binance", "gui_auth": true }, - { - "url": "http://bsc1.cipig.net:8655" - }, - { - "url": "http://bsc2.cipig.net:8655" - }, - { - "url": "http://bsc3.cipig.net:8655" - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -15646,6 +14668,9 @@ }, { "url": "https://api.avax.network/ext/bc/C/rpc" + }, + { + "url": "https://avalanche.blockpi.network/v1/rpc/public" } ], "explorer_block_url": "block/" @@ -15693,24 +14718,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -15775,7 +14782,10 @@ "url": "https://polygon-rpc.com" }, { - "url": "https://poly-rpc.gateway.pokt.network" + "url": "https://polygon.blockpi.network/v1/rpc/public" + }, + { + "url": "https://polygon.llamarpc.com" } ], "explorer_block_url": "block/" @@ -15823,7 +14833,10 @@ "url": "https://polygon-rpc.com" }, { - "url": "https://poly-rpc.gateway.pokt.network" + "url": "https://polygon.blockpi.network/v1/rpc/public" + }, + { + "url": "https://polygon.llamarpc.com" } ], "explorer_block_url": "block/" @@ -15861,6 +14874,15 @@ }, "derivation_path": "m/44'/69420'", "electrum": [ + { + "url": "electrum.maxpuig.com:50001", + "protocol": "TCP", + "contact": [ + { + "discord": "mecs#4770" + } + ] + }, { "url": "au.garlium.crapules.org:50002", "protocol": "SSL", @@ -15871,6 +14893,16 @@ } ] }, + { + "url": "electrum.maxpuig.com:50002", + "protocol": "SSL", + "contact": [ + { + "discord": "orpheas#1503" + } + ], + "ws_url": "electrum.maxpuig.com:50004" + }, { "url": "fr.garlium.crapules.org:50002", "protocol": "SSL", @@ -15943,24 +14975,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -16021,15 +15035,6 @@ "url": "https://node.komodo.earth:8080/binance", "gui_auth": true }, - { - "url": "http://bsc1.cipig.net:8655" - }, - { - "url": "http://bsc2.cipig.net:8655" - }, - { - "url": "http://bsc3.cipig.net:8655" - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -16064,7 +15069,8 @@ "pubtype": 36, "p2shtype": 5, "wiftype": 128, - "txfee": 0, + "txfee": 10000, + "dust": 10000, "segwit": true, "bech32_hrp": "grs", "mm2": 1, @@ -16332,30 +15338,6 @@ } ] }, - { - "url": "electrum31.groestlcoin.org:50001", - "ws_url": "electrum31.groestlcoin.org:50004", - "contact": [ - { - "email": "jackielove4u@hotmail.com" - }, - { - "discord": "jackielove4u#0412" - } - ] - }, - { - "url": "electrum33.groestlcoin.org:50001", - "ws_url": "electrum33.groestlcoin.org:50004", - "contact": [ - { - "email": "jackielove4u@hotmail.com" - }, - { - "discord": "jackielove4u#0412" - } - ] - }, { "url": "electrum34.groestlcoin.org:50001", "ws_url": "electrum34.groestlcoin.org:50004", @@ -16440,30 +15422,6 @@ } ] }, - { - "url": "electrum5.groestlcoin.org:50001", - "ws_url": "electrum5.groestlcoin.org:50004", - "contact": [ - { - "email": "jackielove4u@hotmail.com" - }, - { - "discord": "jackielove4u#0412" - } - ] - }, - { - "url": "electrum6.groestlcoin.org:50001", - "ws_url": "electrum6.groestlcoin.org:50004", - "contact": [ - { - "email": "jackielove4u@hotmail.com" - }, - { - "discord": "jackielove4u#0412" - } - ] - }, { "url": "electrum7.groestlcoin.org:50001", "ws_url": "electrum7.groestlcoin.org:50004", @@ -16531,14 +15489,15 @@ "active": false, "is_testnet": false, "currently_enabled": false, - "wallet_only": false, + "wallet_only": true, "sign_message_prefix": "GroestCoin Signed Message:\n", "fname": "Groestlcoin", "rpcport": 1441, "pubtype": 36, "p2shtype": 5, "wiftype": 128, - "txfee": 0, + "txfee": 10000, + "dust": 10000, "segwit": true, "bech32_hrp": "grs", "address_format": { @@ -16810,30 +15769,6 @@ } ] }, - { - "url": "electrum31.groestlcoin.org:50001", - "ws_url": "electrum31.groestlcoin.org:50004", - "contact": [ - { - "email": "jackielove4u@hotmail.com" - }, - { - "discord": "jackielove4u#0412" - } - ] - }, - { - "url": "electrum33.groestlcoin.org:50001", - "ws_url": "electrum33.groestlcoin.org:50004", - "contact": [ - { - "email": "jackielove4u@hotmail.com" - }, - { - "discord": "jackielove4u#0412" - } - ] - }, { "url": "electrum34.groestlcoin.org:50001", "ws_url": "electrum34.groestlcoin.org:50004", @@ -16918,30 +15853,6 @@ } ] }, - { - "url": "electrum5.groestlcoin.org:50001", - "ws_url": "electrum5.groestlcoin.org:50004", - "contact": [ - { - "email": "jackielove4u@hotmail.com" - }, - { - "discord": "jackielove4u#0412" - } - ] - }, - { - "url": "electrum6.groestlcoin.org:50001", - "ws_url": "electrum6.groestlcoin.org:50004", - "contact": [ - { - "email": "jackielove4u@hotmail.com" - }, - { - "discord": "jackielove4u#0412" - } - ] - }, { "url": "electrum7.groestlcoin.org:50001", "ws_url": "electrum7.groestlcoin.org:50004", @@ -17036,6 +15947,9 @@ }, { "url": "https://api.avax.network/ext/bc/C/rpc" + }, + { + "url": "https://avalanche.blockpi.network/v1/rpc/public" } ], "explorer_block_url": "block/" @@ -17084,24 +15998,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -17210,7 +16106,10 @@ "url": "https://polygon-rpc.com" }, { - "url": "https://poly-rpc.gateway.pokt.network" + "url": "https://polygon.blockpi.network/v1/rpc/public" + }, + { + "url": "https://polygon.llamarpc.com" } ], "explorer_block_url": "block/" @@ -17254,15 +16153,6 @@ "url": "https://node.komodo.earth:8080/binance", "gui_auth": true }, - { - "url": "http://bsc1.cipig.net:8655" - }, - { - "url": "http://bsc2.cipig.net:8655" - }, - { - "url": "http://bsc3.cipig.net:8655" - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -17315,24 +16205,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -17393,24 +16265,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -17476,24 +16330,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -17558,113 +16394,10 @@ "url": "https://polygon-rpc.com" }, { - "url": "https://poly-rpc.gateway.pokt.network" - } - ], - "explorer_block_url": "block/" - }, - "HODL": { - "coin": "HODL", - "type": "Smart Chain", - "name": "HODL", - "coinpaprika_id": "", - "coingecko_id": "", - "livecoinwatch_id": "", - "explorer_url": "https://hodl.kmdexplorer.io/", - "explorer_tx_url": "", - "explorer_address_url": "", - "supported": [], - "active": false, - "is_testnet": false, - "currently_enabled": false, - "wallet_only": false, - "sign_message_prefix": "Komodo Signed Message:\n", - "asset": "HODL", - "fname": "HODL", - "rpcport": 14431, - "txversion": 4, - "overwintered": 1, - "mm2": 1, - "required_confirmations": 2, - "requires_notarization": true, - "avg_blocktime": 60, - "protocol": { - "type": "UTXO" - }, - "derivation_path": "m/44'/141'", - "trezor_coin": "Komodo", - "electrum": [ - { - "url": "electrum1.cipig.net:10009", - "contact": [ - { - "email": "cipi@komodoplatform.com" - }, - { - "discord": "cipi#4502" - } - ], - "ws_url": "electrum1.cipig.net:30009" - }, - { - "url": "electrum2.cipig.net:10009", - "contact": [ - { - "email": "cipi@komodoplatform.com" - }, - { - "discord": "cipi#4502" - } - ], - "ws_url": "electrum2.cipig.net:30009" - }, - { - "url": "electrum3.cipig.net:10009", - "contact": [ - { - "email": "cipi@komodoplatform.com" - }, - { - "discord": "cipi#4502" - } - ], - "ws_url": "electrum3.cipig.net:30009" - }, - { - "url": "electrum1.cipig.net:20009", - "protocol": "SSL", - "contact": [ - { - "email": "cipi@komodoplatform.com" - }, - { - "discord": "cipi#4502" - } - ] + "url": "https://polygon.blockpi.network/v1/rpc/public" }, { - "url": "electrum2.cipig.net:20009", - "protocol": "SSL", - "contact": [ - { - "email": "cipi@komodoplatform.com" - }, - { - "discord": "cipi#4502" - } - ] - }, - { - "url": "electrum3.cipig.net:20009", - "protocol": "SSL", - "contact": [ - { - "email": "cipi@komodoplatform.com" - }, - { - "discord": "cipi#4502" - } - ] + "url": "https://polygon.llamarpc.com" } ], "explorer_block_url": "block/" @@ -17708,24 +16441,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -17790,7 +16505,10 @@ "url": "https://polygon-rpc.com" }, { - "url": "https://poly-rpc.gateway.pokt.network" + "url": "https://polygon.blockpi.network/v1/rpc/public" + }, + { + "url": "https://polygon.llamarpc.com" } ], "explorer_block_url": "block/" @@ -17878,24 +16596,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -17956,24 +16656,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -18126,7 +16808,10 @@ "url": "https://polygon-rpc.com" }, { - "url": "https://poly-rpc.gateway.pokt.network" + "url": "https://polygon.blockpi.network/v1/rpc/public" + }, + { + "url": "https://polygon.llamarpc.com" } ], "explorer_block_url": "block/" @@ -18311,15 +16996,6 @@ "url": "https://node.komodo.earth:8080/binance", "gui_auth": true }, - { - "url": "http://bsc1.cipig.net:8655" - }, - { - "url": "http://bsc2.cipig.net:8655" - }, - { - "url": "http://bsc3.cipig.net:8655" - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -18376,7 +17052,10 @@ "url": "https://polygon-rpc.com" }, { - "url": "https://poly-rpc.gateway.pokt.network" + "url": "https://polygon.blockpi.network/v1/rpc/public" + }, + { + "url": "https://polygon.llamarpc.com" } ], "explorer_block_url": "block/" @@ -18424,7 +17103,10 @@ "url": "https://polygon-rpc.com" }, { - "url": "https://poly-rpc.gateway.pokt.network" + "url": "https://polygon.blockpi.network/v1/rpc/public" + }, + { + "url": "https://polygon.llamarpc.com" } ], "explorer_block_url": "block/" @@ -18468,24 +17150,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -18546,15 +17210,6 @@ "url": "https://node.komodo.earth:8080/binance", "gui_auth": true }, - { - "url": "http://bsc1.cipig.net:8655" - }, - { - "url": "http://bsc2.cipig.net:8655" - }, - { - "url": "http://bsc3.cipig.net:8655" - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -18607,24 +17262,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -18684,15 +17321,6 @@ "url": "https://node.komodo.earth:8080/binance", "gui_auth": true }, - { - "url": "http://bsc1.cipig.net:8655" - }, - { - "url": "http://bsc2.cipig.net:8655" - }, - { - "url": "http://bsc3.cipig.net:8655" - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -18744,24 +17372,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -18821,15 +17431,6 @@ "url": "https://node.komodo.earth:8080/binance", "gui_auth": true }, - { - "url": "http://bsc1.cipig.net:8655" - }, - { - "url": "http://bsc2.cipig.net:8655" - }, - { - "url": "http://bsc3.cipig.net:8655" - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -18881,15 +17482,6 @@ "url": "https://node.komodo.earth:8080/binance", "gui_auth": true }, - { - "url": "http://bsc1.cipig.net:8655" - }, - { - "url": "http://bsc2.cipig.net:8655" - }, - { - "url": "http://bsc3.cipig.net:8655" - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -18946,7 +17538,10 @@ "url": "https://polygon-rpc.com" }, { - "url": "https://poly-rpc.gateway.pokt.network" + "url": "https://polygon.blockpi.network/v1/rpc/public" + }, + { + "url": "https://polygon.llamarpc.com" } ], "explorer_block_url": "block/" @@ -18989,15 +17584,6 @@ "url": "https://node.komodo.earth:8080/binance", "gui_auth": true }, - { - "url": "http://bsc1.cipig.net:8655" - }, - { - "url": "http://bsc2.cipig.net:8655" - }, - { - "url": "http://bsc3.cipig.net:8655" - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -19054,7 +17640,10 @@ "url": "https://polygon-rpc.com" }, { - "url": "https://poly-rpc.gateway.pokt.network" + "url": "https://polygon.blockpi.network/v1/rpc/public" + }, + { + "url": "https://polygon.llamarpc.com" } ], "explorer_block_url": "block/", @@ -19099,15 +17688,6 @@ "url": "https://node.komodo.earth:8080/binance", "gui_auth": true }, - { - "url": "http://bsc1.cipig.net:8655" - }, - { - "url": "http://bsc2.cipig.net:8655" - }, - { - "url": "http://bsc3.cipig.net:8655" - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -19127,7 +17707,7 @@ "type": "Matic", "name": "Jarvis Brazilian Real", "coinpaprika_id": "", - "coingecko_id": "", + "coingecko_id": "jarvis-brazilian-real", "livecoinwatch_id": "BRL", "explorer_url": "https://polygonscan.com/", "explorer_tx_url": "tx/", @@ -19165,7 +17745,10 @@ "url": "https://polygon-rpc.com" }, { - "url": "https://poly-rpc.gateway.pokt.network" + "url": "https://polygon.blockpi.network/v1/rpc/public" + }, + { + "url": "https://polygon.llamarpc.com" } ], "explorer_block_url": "block/", @@ -19214,7 +17797,10 @@ "url": "https://polygon-rpc.com" }, { - "url": "https://poly-rpc.gateway.pokt.network" + "url": "https://polygon.blockpi.network/v1/rpc/public" + }, + { + "url": "https://polygon.llamarpc.com" } ], "explorer_block_url": "block/", @@ -19261,6 +17847,9 @@ }, { "url": "https://api.avax.network/ext/bc/C/rpc" + }, + { + "url": "https://avalanche.blockpi.network/v1/rpc/public" } ], "explorer_block_url": "block/" @@ -19304,15 +17893,6 @@ "url": "https://node.komodo.earth:8080/binance", "gui_auth": true }, - { - "url": "http://bsc1.cipig.net:8655" - }, - { - "url": "http://bsc2.cipig.net:8655" - }, - { - "url": "http://bsc3.cipig.net:8655" - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -19365,24 +17945,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -19448,7 +18010,10 @@ "url": "https://polygon-rpc.com" }, { - "url": "https://poly-rpc.gateway.pokt.network" + "url": "https://polygon.blockpi.network/v1/rpc/public" + }, + { + "url": "https://polygon.llamarpc.com" } ], "explorer_block_url": "block/", @@ -19497,7 +18062,10 @@ "url": "https://polygon-rpc.com" }, { - "url": "https://poly-rpc.gateway.pokt.network" + "url": "https://polygon.blockpi.network/v1/rpc/public" + }, + { + "url": "https://polygon.llamarpc.com" } ], "explorer_block_url": "block/", @@ -19544,6 +18112,9 @@ }, { "url": "https://api.avax.network/ext/bc/C/rpc" + }, + { + "url": "https://avalanche.blockpi.network/v1/rpc/public" } ], "explorer_block_url": "block/" @@ -19587,15 +18158,6 @@ "url": "https://node.komodo.earth:8080/binance", "gui_auth": true }, - { - "url": "http://bsc1.cipig.net:8655" - }, - { - "url": "http://bsc2.cipig.net:8655" - }, - { - "url": "http://bsc3.cipig.net:8655" - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -19648,24 +18210,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -19731,7 +18275,10 @@ "url": "https://polygon-rpc.com" }, { - "url": "https://poly-rpc.gateway.pokt.network" + "url": "https://polygon.blockpi.network/v1/rpc/public" + }, + { + "url": "https://polygon.llamarpc.com" } ], "explorer_block_url": "block/", @@ -19776,15 +18323,6 @@ "url": "https://node.komodo.earth:8080/binance", "gui_auth": true }, - { - "url": "http://bsc1.cipig.net:8655" - }, - { - "url": "http://bsc2.cipig.net:8655" - }, - { - "url": "http://bsc3.cipig.net:8655" - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -19837,24 +18375,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -19920,7 +18440,10 @@ "url": "https://polygon-rpc.com" }, { - "url": "https://poly-rpc.gateway.pokt.network" + "url": "https://polygon.blockpi.network/v1/rpc/public" + }, + { + "url": "https://polygon.llamarpc.com" } ], "explorer_block_url": "block/", @@ -19969,7 +18492,10 @@ "url": "https://polygon-rpc.com" }, { - "url": "https://poly-rpc.gateway.pokt.network" + "url": "https://polygon.blockpi.network/v1/rpc/public" + }, + { + "url": "https://polygon.llamarpc.com" } ], "explorer_block_url": "block/", @@ -20018,7 +18544,10 @@ "url": "https://polygon-rpc.com" }, { - "url": "https://poly-rpc.gateway.pokt.network" + "url": "https://polygon.blockpi.network/v1/rpc/public" + }, + { + "url": "https://polygon.llamarpc.com" } ], "explorer_block_url": "block/", @@ -20067,7 +18596,10 @@ "url": "https://polygon-rpc.com" }, { - "url": "https://poly-rpc.gateway.pokt.network" + "url": "https://polygon.blockpi.network/v1/rpc/public" + }, + { + "url": "https://polygon.llamarpc.com" } ], "explorer_block_url": "block/", @@ -20116,7 +18648,10 @@ "url": "https://polygon-rpc.com" }, { - "url": "https://poly-rpc.gateway.pokt.network" + "url": "https://polygon.blockpi.network/v1/rpc/public" + }, + { + "url": "https://polygon.llamarpc.com" } ], "explorer_block_url": "block/", @@ -20165,7 +18700,10 @@ "url": "https://polygon-rpc.com" }, { - "url": "https://poly-rpc.gateway.pokt.network" + "url": "https://polygon.blockpi.network/v1/rpc/public" + }, + { + "url": "https://polygon.llamarpc.com" } ], "explorer_block_url": "block/", @@ -20214,7 +18752,10 @@ "url": "https://polygon-rpc.com" }, { - "url": "https://poly-rpc.gateway.pokt.network" + "url": "https://polygon.blockpi.network/v1/rpc/public" + }, + { + "url": "https://polygon.llamarpc.com" } ], "explorer_block_url": "block/", @@ -20263,7 +18804,10 @@ "url": "https://polygon-rpc.com" }, { - "url": "https://poly-rpc.gateway.pokt.network" + "url": "https://polygon.blockpi.network/v1/rpc/public" + }, + { + "url": "https://polygon.llamarpc.com" } ], "explorer_block_url": "block/", @@ -20310,6 +18854,9 @@ }, { "url": "https://api.avax.network/ext/bc/C/rpc" + }, + { + "url": "https://avalanche.blockpi.network/v1/rpc/public" } ], "explorer_block_url": "block/", @@ -20358,7 +18905,10 @@ "url": "https://polygon-rpc.com" }, { - "url": "https://poly-rpc.gateway.pokt.network" + "url": "https://polygon.blockpi.network/v1/rpc/public" + }, + { + "url": "https://polygon.llamarpc.com" } ], "explorer_block_url": "block/", @@ -20402,24 +18952,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -20484,7 +19016,10 @@ "url": "https://polygon-rpc.com" }, { - "url": "https://poly-rpc.gateway.pokt.network" + "url": "https://polygon.blockpi.network/v1/rpc/public" + }, + { + "url": "https://polygon.llamarpc.com" } ], "explorer_block_url": "block/" @@ -20532,7 +19067,10 @@ "url": "https://polygon-rpc.com" }, { - "url": "https://poly-rpc.gateway.pokt.network" + "url": "https://polygon.blockpi.network/v1/rpc/public" + }, + { + "url": "https://polygon.llamarpc.com" } ], "explorer_block_url": "block/", @@ -20581,7 +19119,10 @@ "url": "https://polygon-rpc.com" }, { - "url": "https://poly-rpc.gateway.pokt.network" + "url": "https://polygon.blockpi.network/v1/rpc/public" + }, + { + "url": "https://polygon.llamarpc.com" } ], "explorer_block_url": "block/", @@ -20630,7 +19171,10 @@ "url": "https://polygon-rpc.com" }, { - "url": "https://poly-rpc.gateway.pokt.network" + "url": "https://polygon.blockpi.network/v1/rpc/public" + }, + { + "url": "https://polygon.llamarpc.com" } ], "explorer_block_url": "block/", @@ -20679,7 +19223,10 @@ "url": "https://polygon-rpc.com" }, { - "url": "https://poly-rpc.gateway.pokt.network" + "url": "https://polygon.blockpi.network/v1/rpc/public" + }, + { + "url": "https://polygon.llamarpc.com" } ], "explorer_block_url": "block/", @@ -20724,15 +19271,6 @@ "url": "https://node.komodo.earth:8080/binance", "gui_auth": true }, - { - "url": "http://bsc1.cipig.net:8655" - }, - { - "url": "http://bsc2.cipig.net:8655" - }, - { - "url": "http://bsc3.cipig.net:8655" - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -20746,112 +19284,6 @@ "token_address_url": "tokentxns?a=", "explorer_block_url": "block/" }, - "JUMBLR": { - "coin": "JUMBLR", - "type": "Smart Chain", - "name": "JUMBLR", - "coinpaprika_id": "", - "coingecko_id": "", - "livecoinwatch_id": "", - "explorer_url": "https://jumblr.kmdexplorer.io/", - "explorer_tx_url": "", - "explorer_address_url": "", - "supported": [], - "active": false, - "is_testnet": false, - "currently_enabled": false, - "wallet_only": false, - "sign_message_prefix": "Komodo Signed Message:\n", - "asset": "JUMBLR", - "fname": "JUMBLR", - "rpcport": 15106, - "txversion": 4, - "overwintered": 1, - "mm2": 1, - "required_confirmations": 2, - "requires_notarization": true, - "avg_blocktime": 60, - "protocol": { - "type": "UTXO" - }, - "derivation_path": "m/44'/141'", - "trezor_coin": "Komodo", - "electrum": [ - { - "url": "electrum1.cipig.net:10004", - "contact": [ - { - "email": "cipi@komodoplatform.com" - }, - { - "discord": "cipi#4502" - } - ], - "ws_url": "electrum1.cipig.net:30004" - }, - { - "url": "electrum2.cipig.net:10004", - "contact": [ - { - "email": "cipi@komodoplatform.com" - }, - { - "discord": "cipi#4502" - } - ], - "ws_url": "electrum2.cipig.net:30004" - }, - { - "url": "electrum3.cipig.net:10004", - "contact": [ - { - "email": "cipi@komodoplatform.com" - }, - { - "discord": "cipi#4502" - } - ], - "ws_url": "electrum3.cipig.net:30004" - }, - { - "url": "electrum1.cipig.net:20004", - "protocol": "SSL", - "contact": [ - { - "email": "cipi@komodoplatform.com" - }, - { - "discord": "cipi#4502" - } - ] - }, - { - "url": "electrum2.cipig.net:20004", - "protocol": "SSL", - "contact": [ - { - "email": "cipi@komodoplatform.com" - }, - { - "discord": "cipi#4502" - } - ] - }, - { - "url": "electrum3.cipig.net:20004", - "protocol": "SSL", - "contact": [ - { - "email": "cipi@komodoplatform.com" - }, - { - "discord": "cipi#4502" - } - ] - } - ], - "explorer_block_url": "block/" - }, "KCS": { "coin": "KCS", "type": "KRC-20", @@ -20940,8 +19372,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum1.cipig.net:30001" + ] }, { "url": "electrum2.cipig.net:10001", @@ -20952,8 +19383,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum2.cipig.net:30001" + ] }, { "url": "electrum3.cipig.net:10001", @@ -20964,8 +19394,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum3.cipig.net:30001" + ] }, { "url": "electrum1.cipig.net:20001", @@ -20977,7 +19406,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum1.cipig.net:30001" }, { "url": "electrum2.cipig.net:20001", @@ -20989,7 +19419,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum2.cipig.net:30001" }, { "url": "electrum3.cipig.net:20001", @@ -21001,7 +19432,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum3.cipig.net:30001" } ], "explorer_block_url": "block/", @@ -21046,15 +19478,6 @@ "url": "https://node.komodo.earth:8080/binance", "gui_auth": true }, - { - "url": "http://bsc1.cipig.net:8655" - }, - { - "url": "http://bsc2.cipig.net:8655" - }, - { - "url": "http://bsc3.cipig.net:8655" - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -21106,15 +19529,6 @@ "url": "https://node.komodo.earth:8080/binance", "gui_auth": true }, - { - "url": "http://bsc1.cipig.net:8655" - }, - { - "url": "http://bsc2.cipig.net:8655" - }, - { - "url": "http://bsc3.cipig.net:8655" - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -21171,24 +19585,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -21253,7 +19649,10 @@ "url": "https://polygon-rpc.com" }, { - "url": "https://poly-rpc.gateway.pokt.network" + "url": "https://polygon.blockpi.network/v1/rpc/public" + }, + { + "url": "https://polygon.llamarpc.com" } ], "explorer_block_url": "block/" @@ -21299,6 +19698,9 @@ }, { "url": "https://api.avax.network/ext/bc/C/rpc" + }, + { + "url": "https://avalanche.blockpi.network/v1/rpc/public" } ], "explorer_block_url": "block/" @@ -21343,8 +19745,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum1.cipig.net:30024" + ] }, { "url": "electrum2.cipig.net:10024", @@ -21355,8 +19756,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum2.cipig.net:30024" + ] }, { "url": "electrum3.cipig.net:10024", @@ -21367,8 +19767,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum3.cipig.net:30024" + ] }, { "url": "electrum1.cipig.net:20024", @@ -21380,7 +19779,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum1.cipig.net:30024" }, { "url": "electrum2.cipig.net:20024", @@ -21392,7 +19792,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum2.cipig.net:30024" }, { "url": "electrum3.cipig.net:20024", @@ -21404,7 +19805,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum3.cipig.net:30024" } ], "explorer_block_url": "block/" @@ -21448,15 +19850,6 @@ "url": "https://node.komodo.earth:8080/binance", "gui_auth": true }, - { - "url": "http://bsc1.cipig.net:8655" - }, - { - "url": "http://bsc2.cipig.net:8655" - }, - { - "url": "http://bsc3.cipig.net:8655" - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -21509,8 +19902,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum1.cipig.net:30019" + ] }, { "url": "electrum2.cipig.net:10019", @@ -21521,8 +19913,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum2.cipig.net:30019" + ] }, { "url": "electrum3.cipig.net:10019", @@ -21533,8 +19924,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum3.cipig.net:30019" + ] }, { "url": "electrum1.cipig.net:20019", @@ -21546,7 +19936,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum3.cipig.net:30019" }, { "url": "electrum2.cipig.net:20019", @@ -21558,7 +19949,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum2.cipig.net:30019" }, { "url": "electrum3.cipig.net:20019", @@ -21570,7 +19962,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum3.cipig.net:30019" } ], "explorer_block_url": "block/" @@ -21608,31 +20001,31 @@ "derivation_path": "m/44'/140'", "electrum": [ { - "url": "electrum1.cipig.net:10067", - "ws_url": "electrum1.cipig.net:30067" + "url": "electrum1.cipig.net:10067" }, { - "url": "electrum2.cipig.net:10067", - "ws_url": "electrum2.cipig.net:30067" + "url": "electrum2.cipig.net:10067" }, { - "url": "electrum3.cipig.net:10067", - "ws_url": "electrum3.cipig.net:30067" + "url": "electrum3.cipig.net:10067" }, { "url": "electrum1.cipig.net:20067", "disable_cert_verification": false, - "protocol": "SSL" + "protocol": "SSL", + "ws_url": "electrum1.cipig.net:30067" }, { "url": "electrum2.cipig.net:20067", "disable_cert_verification": false, - "protocol": "SSL" + "protocol": "SSL", + "ws_url": "electrum2.cipig.net:30067" }, { "url": "electrum3.cipig.net:20067", "disable_cert_verification": false, - "protocol": "SSL" + "protocol": "SSL", + "ws_url": "electrum3.cipig.net:30067" } ], "explorer_block_url": "block/" @@ -21674,31 +20067,31 @@ "derivation_path": "m/44'/140'", "electrum": [ { - "url": "electrum1.cipig.net:10067", - "ws_url": "electrum1.cipig.net:30067" + "url": "electrum1.cipig.net:10067" }, { - "url": "electrum2.cipig.net:10067", - "ws_url": "electrum2.cipig.net:30067" + "url": "electrum2.cipig.net:10067" }, { - "url": "electrum3.cipig.net:10067", - "ws_url": "electrum3.cipig.net:30067" + "url": "electrum3.cipig.net:10067" }, { "url": "electrum1.cipig.net:20067", "disable_cert_verification": false, - "protocol": "SSL" + "protocol": "SSL", + "ws_url": "electrum1.cipig.net:30067" }, { "url": "electrum2.cipig.net:20067", "disable_cert_verification": false, - "protocol": "SSL" + "protocol": "SSL", + "ws_url": "electrum2.cipig.net:30067" }, { "url": "electrum3.cipig.net:20067", "disable_cert_verification": false, - "protocol": "SSL" + "protocol": "SSL", + "ws_url": "electrum3.cipig.net:30067" } ], "explorer_block_url": "block/" @@ -21738,6 +20131,10 @@ }, "derivation_path": "m/44'/192'", "electrum": [ + { + "url": "188.166.117.139:50001", + "protocol": "TCP" + }, { "url": "88.99.26.209:5140", "protocol": "TCP" @@ -21784,6 +20181,10 @@ }, "derivation_path": "m/44'/192'", "electrum": [ + { + "url": "188.166.117.139:50001", + "protocol": "TCP" + }, { "url": "88.99.26.209:5140", "protocol": "TCP" @@ -21830,24 +20231,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -21912,7 +20295,10 @@ "url": "https://polygon-rpc.com" }, { - "url": "https://poly-rpc.gateway.pokt.network" + "url": "https://polygon.blockpi.network/v1/rpc/public" + }, + { + "url": "https://polygon.llamarpc.com" } ], "explorer_block_url": "block/" @@ -21960,24 +20346,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -22042,7 +20410,10 @@ "url": "https://polygon-rpc.com" }, { - "url": "https://poly-rpc.gateway.pokt.network" + "url": "https://polygon.blockpi.network/v1/rpc/public" + }, + { + "url": "https://polygon.llamarpc.com" } ], "explorer_block_url": "block/" @@ -22085,24 +20456,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -22165,6 +20518,9 @@ }, { "url": "https://api.avax.network/ext/bc/C/rpc" + }, + { + "url": "https://avalanche.blockpi.network/v1/rpc/public" } ], "explorer_block_url": "block/" @@ -22207,15 +20563,6 @@ "url": "https://node.komodo.earth:8080/binance", "gui_auth": true }, - { - "url": "http://bsc1.cipig.net:8655" - }, - { - "url": "http://bsc2.cipig.net:8655" - }, - { - "url": "http://bsc3.cipig.net:8655" - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -22270,6 +20617,9 @@ }, { "url": "https://rpc.fantom.network" + }, + { + "url": "https://rpc2.fantom.network" } ], "explorer_block_url": "block/" @@ -22405,7 +20755,10 @@ "url": "https://polygon-rpc.com" }, { - "url": "https://poly-rpc.gateway.pokt.network" + "url": "https://polygon.blockpi.network/v1/rpc/public" + }, + { + "url": "https://polygon.llamarpc.com" } ], "explorer_block_url": "block/" @@ -22449,15 +20802,6 @@ "url": "https://node.komodo.earth:8080/binance", "gui_auth": true }, - { - "url": "http://bsc1.cipig.net:8655" - }, - { - "url": "http://bsc2.cipig.net:8655" - }, - { - "url": "http://bsc3.cipig.net:8655" - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -22515,24 +20859,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -22593,15 +20919,6 @@ "url": "https://node.komodo.earth:8080/binance", "gui_auth": true }, - { - "url": "http://bsc1.cipig.net:8655" - }, - { - "url": "http://bsc2.cipig.net:8655" - }, - { - "url": "http://bsc3.cipig.net:8655" - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -22658,7 +20975,10 @@ "url": "https://polygon-rpc.com" }, { - "url": "https://poly-rpc.gateway.pokt.network" + "url": "https://polygon.blockpi.network/v1/rpc/public" + }, + { + "url": "https://polygon.llamarpc.com" } ], "explorer_block_url": "block/" @@ -22789,24 +21109,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -22872,24 +21174,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -22950,15 +21234,6 @@ "url": "https://node.komodo.earth:8080/binance", "gui_auth": true }, - { - "url": "http://bsc1.cipig.net:8655" - }, - { - "url": "http://bsc2.cipig.net:8655" - }, - { - "url": "http://bsc3.cipig.net:8655" - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -23011,15 +21286,6 @@ "url": "https://node.komodo.earth:8080/binance", "gui_auth": true }, - { - "url": "http://bsc1.cipig.net:8655" - }, - { - "url": "http://bsc2.cipig.net:8655" - }, - { - "url": "http://bsc3.cipig.net:8655" - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -23080,8 +21346,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum1.cipig.net:30063" + ] }, { "url": "electrum2.cipig.net:10063", @@ -23092,8 +21357,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum2.cipig.net:30063" + ] }, { "url": "electrum3.cipig.net:10063", @@ -23104,8 +21368,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum3.cipig.net:30063" + ] }, { "url": "electrum1.cipig.net:20063", @@ -23117,7 +21380,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum1.cipig.net:30063" }, { "url": "electrum2.cipig.net:20063", @@ -23129,7 +21393,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum2.cipig.net:30063" }, { "url": "electrum3.cipig.net:20063", @@ -23141,7 +21406,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum3.cipig.net:30063" } ], "explorer_block_url": "block/" @@ -23197,8 +21463,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum1.cipig.net:30063" + ] }, { "url": "electrum2.cipig.net:10063", @@ -23209,8 +21474,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum2.cipig.net:30063" + ] }, { "url": "electrum3.cipig.net:10063", @@ -23221,8 +21485,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum3.cipig.net:30063" + ] }, { "url": "electrum1.cipig.net:20063", @@ -23234,7 +21497,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum1.cipig.net:30063" }, { "url": "electrum2.cipig.net:20063", @@ -23246,7 +21510,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum2.cipig.net:30063" }, { "url": "electrum3.cipig.net:20063", @@ -23258,7 +21523,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum3.cipig.net:30063" } ], "explorer_block_url": "block/" @@ -23367,24 +21633,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -23445,15 +21693,6 @@ "url": "https://node.komodo.earth:8080/binance", "gui_auth": true }, - { - "url": "http://bsc1.cipig.net:8655" - }, - { - "url": "http://bsc2.cipig.net:8655" - }, - { - "url": "http://bsc3.cipig.net:8655" - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -23554,7 +21793,10 @@ "url": "https://polygon-rpc.com" }, { - "url": "https://poly-rpc.gateway.pokt.network" + "url": "https://polygon.blockpi.network/v1/rpc/public" + }, + { + "url": "https://polygon.llamarpc.com" } ], "explorer_block_url": "block/" @@ -23598,15 +21840,6 @@ "url": "https://node.komodo.earth:8080/binance", "gui_auth": true }, - { - "url": "http://bsc1.cipig.net:8655" - }, - { - "url": "http://bsc2.cipig.net:8655" - }, - { - "url": "http://bsc3.cipig.net:8655" - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -23659,24 +21892,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -23741,7 +21956,10 @@ "url": "https://polygon-rpc.com" }, { - "url": "https://poly-rpc.gateway.pokt.network" + "url": "https://polygon.blockpi.network/v1/rpc/public" + }, + { + "url": "https://polygon.llamarpc.com" } ], "explorer_block_url": "block/" @@ -23824,7 +22042,10 @@ "url": "https://polygon-rpc.com" }, { - "url": "https://poly-rpc.gateway.pokt.network" + "url": "https://polygon.blockpi.network/v1/rpc/public" + }, + { + "url": "https://polygon.llamarpc.com" } ], "explorer_block_url": "block/" @@ -23867,15 +22088,6 @@ "url": "https://node.komodo.earth:8080/binance", "gui_auth": true }, - { - "url": "http://bsc1.cipig.net:8655" - }, - { - "url": "http://bsc2.cipig.net:8655" - }, - { - "url": "http://bsc3.cipig.net:8655" - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -23932,24 +22144,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -24098,24 +22292,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -24176,15 +22352,6 @@ "url": "https://node.komodo.earth:8080/binance", "gui_auth": true }, - { - "url": "http://bsc1.cipig.net:8655" - }, - { - "url": "http://bsc2.cipig.net:8655" - }, - { - "url": "http://bsc3.cipig.net:8655" - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -24238,8 +22405,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum1.cipig.net:30023" + ] }, { "url": "electrum2.cipig.net:10023", @@ -24250,8 +22416,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum2.cipig.net:30023" + ] }, { "url": "electrum3.cipig.net:10023", @@ -24262,8 +22427,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum3.cipig.net:30023" + ] }, { "url": "electrum1.cipig.net:20023", @@ -24275,68 +22439,12 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum1.cipig.net:30023" }, { "url": "electrum2.cipig.net:20023", "protocol": "SSL", - "contact": [ - { - "email": "cipi@komodoplatform.com" - }, - { - "discord": "cipi#4502" - } - ] - }, - { - "url": "electrum3.cipig.net:20023", - "protocol": "SSL", - "contact": [ - { - "email": "cipi@komodoplatform.com" - }, - { - "discord": "cipi#4502" - } - ] - } - ], - "explorer_block_url": "block/" - }, - "MESH": { - "coin": "MESH", - "type": "Smart Chain", - "name": "SuperMESH", - "coinpaprika_id": "", - "coingecko_id": "", - "livecoinwatch_id": "", - "explorer_url": "https://mesh.kmdexplorer.io/", - "explorer_tx_url": "", - "explorer_address_url": "", - "supported": [], - "active": false, - "is_testnet": false, - "currently_enabled": false, - "wallet_only": false, - "sign_message_prefix": "Komodo Signed Message:\n", - "asset": "MESH", - "fname": "SuperMESH", - "rpcport": 9455, - "txversion": 4, - "overwintered": 1, - "mm2": 1, - "required_confirmations": 4, - "requires_notarization": false, - "avg_blocktime": 60, - "protocol": { - "type": "UTXO" - }, - "derivation_path": "m/44'/141'", - "trezor_coin": "Komodo", - "electrum": [ - { - "url": "electrum1.cipig.net:10016", "contact": [ { "email": "cipi@komodoplatform.com" @@ -24345,104 +22453,11 @@ "discord": "cipi#4502" } ], - "ws_url": "electrum1.cipig.net:30016" - }, - { - "url": "electrum2.cipig.net:10016", - "contact": [ - { - "email": "cipi@komodoplatform.com" - }, - { - "discord": "cipi#4502" - } - ], - "ws_url": "electrum2.cipig.net:30016" - }, - { - "url": "electrum3.cipig.net:10016", - "contact": [ - { - "email": "cipi@komodoplatform.com" - }, - { - "discord": "cipi#4502" - } - ], - "ws_url": "electrum3.cipig.net:30016" - }, - { - "url": "electrum1.cipig.net:20016", - "protocol": "SSL", - "contact": [ - { - "email": "cipi@komodoplatform.com" - }, - { - "discord": "cipi#4502" - } - ] - }, - { - "url": "electrum2.cipig.net:20016", - "protocol": "SSL", - "contact": [ - { - "email": "cipi@komodoplatform.com" - }, - { - "discord": "cipi#4502" - } - ] + "ws_url": "electrum2.cipig.net:30023" }, { - "url": "electrum3.cipig.net:20016", + "url": "electrum3.cipig.net:20023", "protocol": "SSL", - "contact": [ - { - "email": "cipi@komodoplatform.com" - }, - { - "discord": "cipi#4502" - } - ] - } - ], - "explorer_block_url": "block/" - }, - "MGW": { - "coin": "MGW", - "type": "Smart Chain", - "name": "MultiGateway", - "coinpaprika_id": "", - "coingecko_id": "", - "livecoinwatch_id": "", - "explorer_url": "https://mgw.kmdexplorer.io/", - "explorer_tx_url": "", - "explorer_address_url": "", - "supported": [], - "active": false, - "is_testnet": false, - "currently_enabled": false, - "wallet_only": false, - "sign_message_prefix": "Komodo Signed Message:\n", - "asset": "MGW", - "fname": "MultiGateway", - "rpcport": 12386, - "txversion": 4, - "overwintered": 1, - "mm2": 1, - "required_confirmations": 2, - "requires_notarization": true, - "avg_blocktime": 60, - "protocol": { - "type": "UTXO" - }, - "derivation_path": "m/44'/141'", - "trezor_coin": "Komodo", - "electrum": [ - { - "url": "electrum1.cipig.net:10015", "contact": [ { "email": "cipi@komodoplatform.com" @@ -24451,67 +22466,7 @@ "discord": "cipi#4502" } ], - "ws_url": "electrum1.cipig.net:30015" - }, - { - "url": "electrum2.cipig.net:10015", - "contact": [ - { - "email": "cipi@komodoplatform.com" - }, - { - "discord": "cipi#4502" - } - ], - "ws_url": "electrum2.cipig.net:30015" - }, - { - "url": "electrum3.cipig.net:10015", - "contact": [ - { - "email": "cipi@komodoplatform.com" - }, - { - "discord": "cipi#4502" - } - ], - "ws_url": "electrum3.cipig.net:30015" - }, - { - "url": "electrum1.cipig.net:20015", - "protocol": "SSL", - "contact": [ - { - "email": "cipi@komodoplatform.com" - }, - { - "discord": "cipi#4502" - } - ] - }, - { - "url": "electrum2.cipig.net:20015", - "protocol": "SSL", - "contact": [ - { - "email": "cipi@komodoplatform.com" - }, - { - "discord": "cipi#4502" - } - ] - }, - { - "url": "electrum3.cipig.net:20015", - "protocol": "SSL", - "contact": [ - { - "email": "cipi@komodoplatform.com" - }, - { - "discord": "cipi#4502" - } - ] + "ws_url": "electrum3.cipig.net:30023" } ], "explorer_block_url": "block/" @@ -24559,24 +22514,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -24743,24 +22680,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -24821,15 +22740,6 @@ "url": "https://node.komodo.earth:8080/binance", "gui_auth": true }, - { - "url": "http://bsc1.cipig.net:8655" - }, - { - "url": "http://bsc2.cipig.net:8655" - }, - { - "url": "http://bsc3.cipig.net:8655" - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -24884,6 +22794,9 @@ }, { "url": "https://api.avax.network/ext/bc/C/rpc" + }, + { + "url": "https://avalanche.blockpi.network/v1/rpc/public" } ], "explorer_block_url": "block/" @@ -24926,15 +22839,6 @@ "url": "https://node.komodo.earth:8080/binance", "gui_auth": true }, - { - "url": "http://bsc1.cipig.net:8655" - }, - { - "url": "http://bsc2.cipig.net:8655" - }, - { - "url": "http://bsc3.cipig.net:8655" - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -24992,24 +22896,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -25075,6 +22961,57 @@ ], "explorer_block_url": "block/" }, + "MKR-PLG20": { + "coin": "MKR-PLG20", + "type": "Matic", + "name": "Maker", + "coinpaprika_id": "", + "coingecko_id": "", + "livecoinwatch_id": "MKR", + "explorer_url": "https://polygonscan.com/", + "explorer_tx_url": "tx/", + "explorer_address_url": "address/", + "supported": [], + "active": false, + "is_testnet": false, + "currently_enabled": false, + "wallet_only": false, + "fname": "Maker", + "rpcport": 80, + "mm2": 1, + "chain_id": 137, + "decimals": 18, + "avg_blocktime": 1.8, + "required_confirmations": 20, + "protocol": { + "type": "ERC20", + "protocol_data": { + "platform": "MATIC", + "contract_address": "0x6f7C932e7684666C9fd1d44527765433e01fF61d" + } + }, + "derivation_path": "m/44'/966'", + "contract_address": "0x6f7C932e7684666C9fd1d44527765433e01fF61d", + "parent_coin": "MATIC", + "swap_contract_address": "0x9130b257D37A52E52F21054c4DA3450c72f595CE", + "fallback_swap_contract": "0x9130b257D37A52E52F21054c4DA3450c72f595CE", + "nodes": [ + { + "url": "https://node.komodo.earth:8080/polygon", + "gui_auth": true + }, + { + "url": "https://polygon-rpc.com" + }, + { + "url": "https://polygon.blockpi.network/v1/rpc/public" + }, + { + "url": "https://polygon.llamarpc.com" + } + ], + "explorer_block_url": "block/" + }, "MM-ERC20": { "coin": "MM-ERC20", "type": "ERC-20", @@ -25117,24 +23054,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -25197,6 +23116,9 @@ }, { "url": "https://api.avax.network/ext/bc/C/rpc" + }, + { + "url": "https://avalanche.blockpi.network/v1/rpc/public" } ], "explorer_block_url": "block/" @@ -25240,15 +23162,6 @@ "url": "https://node.komodo.earth:8080/binance", "gui_auth": true }, - { - "url": "http://bsc1.cipig.net:8655" - }, - { - "url": "http://bsc2.cipig.net:8655" - }, - { - "url": "http://bsc3.cipig.net:8655" - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -25298,7 +23211,7 @@ "fallback_swap_contract": "0x9130b257D37A52E52F21054c4DA3450c72f595CE", "nodes": [ { - "url": "https://rpc.moonriver.moonbeam.network" + "url": "https://moonriver.public.blastapi.io" }, { "url": "https://rpc.api.moonriver.moonbeam.network" @@ -25349,7 +23262,10 @@ "url": "https://polygon-rpc.com" }, { - "url": "https://poly-rpc.gateway.pokt.network" + "url": "https://polygon.blockpi.network/v1/rpc/public" + }, + { + "url": "https://polygon.llamarpc.com" } ], "explorer_block_url": "block/" @@ -25397,6 +23313,9 @@ }, { "url": "electrumx.tamami-foundation.org:50001" + }, + { + "url": "electrumx1.monacoin.ninja:50001" } ], "explorer_block_url": "block/" @@ -25448,112 +23367,9 @@ }, { "url": "electrumx.tamami-foundation.org:50001" - } - ], - "explorer_block_url": "block/" - }, - "MORTY": { - "coin": "MORTY", - "type": "Smart Chain", - "name": "Morty", - "coinpaprika_id": "", - "coingecko_id": "", - "livecoinwatch_id": "", - "explorer_url": "https://morty.explorer.dexstats.info/", - "explorer_tx_url": "", - "explorer_address_url": "", - "supported": [], - "active": false, - "is_testnet": true, - "currently_enabled": false, - "wallet_only": false, - "sign_message_prefix": "Komodo Signed Message:\n", - "asset": "MORTY", - "fname": "Morty", - "rpcport": 16348, - "txversion": 4, - "overwintered": 1, - "mm2": 1, - "required_confirmations": 1, - "requires_notarization": false, - "avg_blocktime": 60, - "protocol": { - "type": "UTXO" - }, - "derivation_path": "m/44'/141'", - "trezor_coin": "Komodo", - "electrum": [ - { - "url": "electrum1.cipig.net:10018", - "contact": [ - { - "email": "cipi@komodoplatform.com" - }, - { - "discord": "cipi#4502" - } - ], - "ws_url": "electrum1.cipig.net:30018" }, { - "url": "electrum2.cipig.net:10018", - "contact": [ - { - "email": "cipi@komodoplatform.com" - }, - { - "discord": "cipi#4502" - } - ], - "ws_url": "electrum2.cipig.net:30018" - }, - { - "url": "electrum3.cipig.net:10018", - "contact": [ - { - "email": "cipi@komodoplatform.com" - }, - { - "discord": "cipi#4502" - } - ], - "ws_url": "electrum3.cipig.net:30018" - }, - { - "url": "electrum1.cipig.net:20018", - "protocol": "SSL", - "contact": [ - { - "email": "cipi@komodoplatform.com" - }, - { - "discord": "cipi#4502" - } - ] - }, - { - "url": "electrum2.cipig.net:20018", - "protocol": "SSL", - "contact": [ - { - "email": "cipi@komodoplatform.com" - }, - { - "discord": "cipi#4502" - } - ] - }, - { - "url": "electrum3.cipig.net:20018", - "protocol": "SSL", - "contact": [ - { - "email": "cipi@komodoplatform.com" - }, - { - "discord": "cipi#4502" - } - ] + "url": "electrumx1.monacoin.ninja:50001" } ], "explorer_block_url": "block/" @@ -25591,7 +23407,7 @@ "fallback_swap_contract": "0x9130b257D37A52E52F21054c4DA3450c72f595CE", "nodes": [ { - "url": "https://rpc.moonriver.moonbeam.network" + "url": "https://moonriver.public.blastapi.io" }, { "url": "https://rpc.api.moonriver.moonbeam.network" @@ -25633,112 +23449,9 @@ "nodes": [ { "url": "https://rpc.api.moonbeam.network" - } - ], - "explorer_block_url": "block/" - }, - "MSHARK": { - "coin": "MSHARK", - "type": "Smart Chain", - "name": "MiliShark", - "coinpaprika_id": "", - "coingecko_id": "", - "livecoinwatch_id": "", - "explorer_url": "https://mshark.kmdexplorer.io/", - "explorer_tx_url": "", - "explorer_address_url": "", - "supported": [], - "active": false, - "is_testnet": false, - "currently_enabled": false, - "wallet_only": false, - "sign_message_prefix": "Komodo Signed Message:\n", - "asset": "MSHARK", - "fname": "MiliShark", - "rpcport": 8846, - "txversion": 4, - "overwintered": 1, - "mm2": 1, - "required_confirmations": 2, - "requires_notarization": true, - "avg_blocktime": 60, - "protocol": { - "type": "UTXO" - }, - "derivation_path": "m/44'/141'", - "trezor_coin": "Komodo", - "electrum": [ - { - "url": "electrum1.cipig.net:10013", - "contact": [ - { - "email": "cipi@komodoplatform.com" - }, - { - "discord": "cipi#4502" - } - ], - "ws_url": "electrum1.cipig.net:30013" - }, - { - "url": "electrum2.cipig.net:10013", - "contact": [ - { - "email": "cipi@komodoplatform.com" - }, - { - "discord": "cipi#4502" - } - ], - "ws_url": "electrum2.cipig.net:30013" }, { - "url": "electrum3.cipig.net:10013", - "contact": [ - { - "email": "cipi@komodoplatform.com" - }, - { - "discord": "cipi#4502" - } - ], - "ws_url": "electrum3.cipig.net:30013" - }, - { - "url": "electrum1.cipig.net:20013", - "protocol": "SSL", - "contact": [ - { - "email": "cipi@komodoplatform.com" - }, - { - "discord": "cipi#4502" - } - ] - }, - { - "url": "electrum2.cipig.net:20013", - "protocol": "SSL", - "contact": [ - { - "email": "cipi@komodoplatform.com" - }, - { - "discord": "cipi#4502" - } - ] - }, - { - "url": "electrum3.cipig.net:20013", - "protocol": "SSL", - "contact": [ - { - "email": "cipi@komodoplatform.com" - }, - { - "discord": "cipi#4502" - } - ] + "url": "https://moonbeam.public.blastapi.io" } ], "explorer_block_url": "block/" @@ -25785,11 +23498,6 @@ "url": "electrum3.nav.community:40002", "protocol": "SSL", "ws_url": "electrum3.nav.community:40004" - }, - { - "url": "electrum4.nav.community:40002", - "protocol": "SSL", - "ws_url": "electrum4.nav.community:40004" } ], "explorer_block_url": "block/" @@ -25833,15 +23541,6 @@ "url": "https://node.komodo.earth:8080/binance", "gui_auth": true }, - { - "url": "http://bsc1.cipig.net:8655" - }, - { - "url": "http://bsc2.cipig.net:8655" - }, - { - "url": "http://bsc3.cipig.net:8655" - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -25893,15 +23592,6 @@ "url": "https://node.komodo.earth:8080/binance", "gui_auth": true }, - { - "url": "http://bsc1.cipig.net:8655" - }, - { - "url": "http://bsc2.cipig.net:8655" - }, - { - "url": "http://bsc3.cipig.net:8655" - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -26023,24 +23713,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -26149,7 +23821,10 @@ "url": "https://polygon-rpc.com" }, { - "url": "https://poly-rpc.gateway.pokt.network" + "url": "https://polygon.blockpi.network/v1/rpc/public" + }, + { + "url": "https://polygon.llamarpc.com" } ], "explorer_block_url": "block/" @@ -26474,15 +24149,6 @@ "url": "https://node.komodo.earth:8080/binance", "gui_auth": true }, - { - "url": "http://bsc1.cipig.net:8655" - }, - { - "url": "http://bsc2.cipig.net:8655" - }, - { - "url": "http://bsc3.cipig.net:8655" - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -26545,8 +24211,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum1.cipig.net:30050" + ] }, { "url": "electrum2.cipig.net:10050", @@ -26557,8 +24222,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum2.cipig.net:30050" + ] }, { "url": "electrum3.cipig.net:10050", @@ -26569,8 +24233,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum3.cipig.net:30050" + ] }, { "url": "electrum1.cipig.net:20050", @@ -26582,7 +24245,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum1.cipig.net:30050" }, { "url": "electrum2.cipig.net:20050", @@ -26594,7 +24258,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum2.cipig.net:30050" }, { "url": "electrum3.cipig.net:20050", @@ -26606,7 +24271,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum3.cipig.net:30050" } ], "explorer_block_url": "block/" @@ -26650,24 +24316,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -26733,7 +24381,10 @@ "url": "https://polygon-rpc.com" }, { - "url": "https://poly-rpc.gateway.pokt.network" + "url": "https://polygon.blockpi.network/v1/rpc/public" + }, + { + "url": "https://polygon.llamarpc.com" } ], "explorer_block_url": "block/", @@ -26777,15 +24428,6 @@ "url": "https://node.komodo.earth:8080/binance", "gui_auth": true }, - { - "url": "http://bsc1.cipig.net:8655" - }, - { - "url": "http://bsc2.cipig.net:8655" - }, - { - "url": "http://bsc3.cipig.net:8655" - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -26842,24 +24484,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -26924,7 +24548,10 @@ "url": "https://polygon-rpc.com" }, { - "url": "https://poly-rpc.gateway.pokt.network" + "url": "https://polygon.blockpi.network/v1/rpc/public" + }, + { + "url": "https://polygon.llamarpc.com" } ], "explorer_block_url": "block/" @@ -26973,24 +24600,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -27055,7 +24664,10 @@ "url": "https://polygon-rpc.com" }, { - "url": "https://poly-rpc.gateway.pokt.network" + "url": "https://polygon.blockpi.network/v1/rpc/public" + }, + { + "url": "https://polygon.llamarpc.com" } ], "explorer_block_url": "block/" @@ -27139,15 +24751,6 @@ "url": "https://node.komodo.earth:8080/binance", "gui_auth": true }, - { - "url": "http://bsc1.cipig.net:8655" - }, - { - "url": "http://bsc2.cipig.net:8655" - }, - { - "url": "http://bsc3.cipig.net:8655" - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -27161,112 +24764,6 @@ "token_address_url": "tokentxns?a=", "explorer_block_url": "block/" }, - "PANGEA": { - "coin": "PANGEA", - "type": "Smart Chain", - "name": "Pangea Poker", - "coinpaprika_id": "", - "coingecko_id": "", - "livecoinwatch_id": "", - "explorer_url": "https://pangea.kmdexplorer.io/", - "explorer_tx_url": "", - "explorer_address_url": "", - "supported": [], - "active": false, - "is_testnet": false, - "currently_enabled": false, - "wallet_only": false, - "sign_message_prefix": "Komodo Signed Message:\n", - "asset": "PANGEA", - "fname": "Pangea Poker", - "rpcport": 14068, - "txversion": 4, - "overwintered": 1, - "mm2": 1, - "required_confirmations": 2, - "requires_notarization": true, - "avg_blocktime": 60, - "protocol": { - "type": "UTXO" - }, - "derivation_path": "m/44'/141'", - "trezor_coin": "Komodo", - "electrum": [ - { - "url": "electrum1.cipig.net:10010", - "contact": [ - { - "email": "cipi@komodoplatform.com" - }, - { - "discord": "cipi#4502" - } - ], - "ws_url": "electrum1.cipig.net:30010" - }, - { - "url": "electrum2.cipig.net:10010", - "contact": [ - { - "email": "cipi@komodoplatform.com" - }, - { - "discord": "cipi#4502" - } - ], - "ws_url": "electrum2.cipig.net:30010" - }, - { - "url": "electrum3.cipig.net:10010", - "contact": [ - { - "email": "cipi@komodoplatform.com" - }, - { - "discord": "cipi#4502" - } - ], - "ws_url": "electrum3.cipig.net:30010" - }, - { - "url": "electrum1.cipig.net:20010", - "protocol": "SSL", - "contact": [ - { - "email": "cipi@komodoplatform.com" - }, - { - "discord": "cipi#4502" - } - ] - }, - { - "url": "electrum2.cipig.net:20010", - "protocol": "SSL", - "contact": [ - { - "email": "cipi@komodoplatform.com" - }, - { - "discord": "cipi#4502" - } - ] - }, - { - "url": "electrum3.cipig.net:20010", - "protocol": "SSL", - "contact": [ - { - "email": "cipi@komodoplatform.com" - }, - { - "discord": "cipi#4502" - } - ] - } - ], - "explorer_block_url": "block/" - }, "PAX-ERC20": { "coin": "PAX-ERC20", "type": "ERC-20", @@ -27310,24 +24807,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -27387,15 +24866,6 @@ "url": "https://node.komodo.earth:8080/binance", "gui_auth": true }, - { - "url": "http://bsc1.cipig.net:8655" - }, - { - "url": "http://bsc2.cipig.net:8655" - }, - { - "url": "http://bsc3.cipig.net:8655" - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -27496,7 +24966,10 @@ "url": "https://polygon-rpc.com" }, { - "url": "https://poly-rpc.gateway.pokt.network" + "url": "https://polygon.blockpi.network/v1/rpc/public" + }, + { + "url": "https://polygon.llamarpc.com" } ], "explorer_block_url": "block/" @@ -27539,15 +25012,6 @@ "url": "https://node.komodo.earth:8080/binance", "gui_auth": true }, - { - "url": "http://bsc1.cipig.net:8655" - }, - { - "url": "http://bsc2.cipig.net:8655" - }, - { - "url": "http://bsc3.cipig.net:8655" - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -27605,24 +25069,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -27687,11 +25133,56 @@ "url": "https://polygon-rpc.com" }, { - "url": "https://poly-rpc.gateway.pokt.network" + "url": "https://polygon.blockpi.network/v1/rpc/public" + }, + { + "url": "https://polygon.llamarpc.com" } ], "explorer_block_url": "block/" }, + "PINK": { + "coin": "PINK", + "type": "UTXO", + "name": "Pinkcoin", + "coinpaprika_id": "pink-pinkcoin", + "coingecko_id": "pinkcoin", + "livecoinwatch_id": "PINK", + "explorer_url": "https://chainz.cryptoid.info/pink/", + "explorer_tx_url": "tx.dws?", + "explorer_address_url": "address.dws?", + "supported": [], + "active": false, + "is_testnet": false, + "currently_enabled": false, + "wallet_only": true, + "sign_message_prefix": "Pinkcoin Signed Message:\n", + "fname": "Pinkcoin", + "rpcport": 9135, + "isPoS": 1, + "pubtype": 3, + "p2shtype": 28, + "wiftype": 131, + "txfee": 10000, + "mm2": 1, + "required_confirmations": 5, + "avg_blocktime": 60, + "protocol": { + "type": "UTXO" + }, + "derivation_path": "m/44'/117'", + "links": { + "github": "https://github.com/Pink2Dev/Pink2", + "homepage": "https://getstarted.with.pink" + }, + "electrum": [ + { + "url": "pink-two.ewm-cx.net:50001", + "protocol": "TCP" + } + ], + "explorer_block_url": "block.dws?" + }, "PIVX": { "coin": "PIVX", "type": "UTXO", @@ -27777,8 +25268,7 @@ "derivation_path": "m/44'/37'", "electrum": [ { - "url": "electrum.thepandacoin.net:50002", - "protocol": "SSL", + "url": "electrum.thepandacoin.net:50001", "ws_url": "electrum.thepandacoin.net:443" } ], @@ -27870,24 +25360,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -27952,7 +25424,10 @@ "url": "https://polygon-rpc.com" }, { - "url": "https://poly-rpc.gateway.pokt.network" + "url": "https://polygon.blockpi.network/v1/rpc/public" + }, + { + "url": "https://polygon.llamarpc.com" } ], "explorer_block_url": "block/" @@ -28000,24 +25475,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -28082,7 +25539,10 @@ "url": "https://polygon-rpc.com" }, { - "url": "https://poly-rpc.gateway.pokt.network" + "url": "https://polygon.blockpi.network/v1/rpc/public" + }, + { + "url": "https://polygon.llamarpc.com" } ], "explorer_block_url": "block/" @@ -28180,24 +25640,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -28262,7 +25704,10 @@ "url": "https://polygon-rpc.com" }, { - "url": "https://poly-rpc.gateway.pokt.network" + "url": "https://polygon.blockpi.network/v1/rpc/public" + }, + { + "url": "https://polygon.llamarpc.com" } ], "explorer_block_url": "block/" @@ -28305,15 +25750,6 @@ "url": "https://node.komodo.earth:8080/binance", "gui_auth": true }, - { - "url": "http://bsc1.cipig.net:8655" - }, - { - "url": "http://bsc2.cipig.net:8655" - }, - { - "url": "http://bsc3.cipig.net:8655" - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -28367,22 +25803,186 @@ "gui_auth": true }, { - "url": "http://eth1.cipig.net:8555", + "url": "https://eth1.cipig.net:18555", "contact": { "email": "cipi@komodoplatform.com" } }, { - "url": "http://eth2.cipig.net:8555", + "url": "https://eth2.cipig.net:18555", "contact": { "email": "cipi@komodoplatform.com" } }, { - "url": "http://eth3.cipig.net:8555", + "url": "https://eth3.cipig.net:18555", "contact": { "email": "cipi@komodoplatform.com" } + } + ], + "explorer_block_url": "block/" + }, + "PRCY-PLG20": { + "coin": "PRCY-PLG20", + "type": "Matic", + "name": "PRivaCY Coin", + "coinpaprika_id": "prcy-privacy-coin", + "coingecko_id": "privacy-coin", + "livecoinwatch_id": "PRCY", + "explorer_url": "https://polygonscan.com/", + "explorer_tx_url": "tx/", + "explorer_address_url": "address/", + "supported": [], + "active": false, + "is_testnet": false, + "currently_enabled": false, + "wallet_only": false, + "fname": "PRivaCY Coin", + "rpcport": 80, + "mm2": 1, + "chain_id": 137, + "decimals": 8, + "avg_blocktime": 1.8, + "required_confirmations": 20, + "protocol": { + "type": "ERC20", + "protocol_data": { + "platform": "MATIC", + "contract_address": "0xdFC3829b127761a3218bFceE7fc92e1232c9D116" + } + }, + "derivation_path": "m/44'/966'", + "contract_address": "0xdFC3829b127761a3218bFceE7fc92e1232c9D116", + "parent_coin": "MATIC", + "swap_contract_address": "0x9130b257D37A52E52F21054c4DA3450c72f595CE", + "fallback_swap_contract": "0x9130b257D37A52E52F21054c4DA3450c72f595CE", + "nodes": [ + { + "url": "https://node.komodo.earth:8080/polygon", + "gui_auth": true + }, + { + "url": "https://polygon-rpc.com" + }, + { + "url": "https://polygon.blockpi.network/v1/rpc/public" + }, + { + "url": "https://polygon.llamarpc.com" + } + ], + "explorer_block_url": "block/" + }, + "PRUX": { + "coin": "PRUX", + "type": "UTXO", + "name": "PRUX", + "coinpaprika_id": "prux-prux-coin", + "coingecko_id": "", + "livecoinwatch_id": "", + "explorer_url": "https://explorer.prux.info/", + "explorer_tx_url": "", + "explorer_address_url": "", + "supported": [], + "active": false, + "is_testnet": false, + "currently_enabled": false, + "wallet_only": false, + "fname": "PRUX", + "rpcport": 19595, + "pubtype": 55, + "p2shtype": 117, + "wiftype": 183, + "txfee": 10000, + "segwit": false, + "bech32_hrp": "pr", + "mm2": 1, + "required_confirmations": 9, + "avg_blocktime": 9, + "protocol": { + "type": "UTXO" + }, + "electrum": [ + { + "url": "electrumx.live:50010", + "protocol": "TCP", + "contact": [ + { + "discord": "PRUX-Coin#1668" + } + ] + }, + { + "url": "txserver.live:50001", + "protocol": "TCP", + "contact": [ + { + "discord": "PRUX-Coin#1668" + } + ] + }, + { + "url": "electrumx.live:50012", + "protocol": "SSL", + "ws_url": "electrumx.live:30010", + "contact": [ + { + "discord": "PRUX-Coin#1668" + } + ] + }, + { + "url": "txserver.live:50002", + "protocol": "SSL", + "ws_url": "txserver.live:30001", + "contact": [ + { + "discord": "PRUX-Coin#1668" + } + ] + } + ], + "explorer_block_url": "block/" + }, + "PYR-ERC20": { + "coin": "PYR-ERC20", + "type": "ERC-20", + "name": "Vulcan Forged", + "coinpaprika_id": "pyr-vulcan-forged", + "coingecko_id": "vulcan-forged", + "livecoinwatch_id": "PYR", + "explorer_url": "https://etherscan.io/", + "explorer_tx_url": "tx/", + "explorer_address_url": "address/", + "supported": [], + "active": false, + "is_testnet": false, + "currently_enabled": false, + "wallet_only": false, + "fname": "Vulcan Forged", + "rpcport": 80, + "mm2": 1, + "chain_id": 1, + "decimals": 18, + "avg_blocktime": 15, + "required_confirmations": 3, + "protocol": { + "type": "ERC20", + "protocol_data": { + "platform": "ETH", + "contract_address": "0x430EF9263E76DAE63c84292C3409D61c598E9682" + } + }, + "derivation_path": "m/44'/60'", + "contract_address": "0x430EF9263E76DAE63c84292C3409D61c598E9682", + "parent_coin": "ETH", + "swap_contract_address": "0x24ABE4c71FC658C91313b6552cd40cD808b3Ea80", + "fallback_swap_contract": "0x8500AFc0bc5214728082163326C2FF0C73f4a871", + "nodes": [ + { + "url": "https://node.komodo.earth:8080/ethereum", + "gui_auth": true }, { "url": "https://eth1.cipig.net:18555", @@ -28405,13 +26005,13 @@ ], "explorer_block_url": "block/" }, - "PRCY-PLG20": { - "coin": "PRCY-PLG20", + "PYR-PLG20": { + "coin": "PYR-PLG20", "type": "Matic", - "name": "PRivaCY Coin", - "coinpaprika_id": "prcy-privacy-coin", - "coingecko_id": "privacy-coin", - "livecoinwatch_id": "PRCY", + "name": "Vulcan Forged", + "coinpaprika_id": "", + "coingecko_id": "", + "livecoinwatch_id": "PYR", "explorer_url": "https://polygonscan.com/", "explorer_tx_url": "tx/", "explorer_address_url": "address/", @@ -28420,22 +26020,22 @@ "is_testnet": false, "currently_enabled": false, "wallet_only": false, - "fname": "PRivaCY Coin", + "fname": "Vulcan Forged", "rpcport": 80, "mm2": 1, "chain_id": 137, - "decimals": 8, + "decimals": 18, "avg_blocktime": 1.8, "required_confirmations": 20, "protocol": { "type": "ERC20", "protocol_data": { "platform": "MATIC", - "contract_address": "0xdFC3829b127761a3218bFceE7fc92e1232c9D116" + "contract_address": "0x430EF9263E76DAE63c84292C3409D61c598E9682" } }, "derivation_path": "m/44'/966'", - "contract_address": "0xdFC3829b127761a3218bFceE7fc92e1232c9D116", + "contract_address": "0x430EF9263E76DAE63c84292C3409D61c598E9682", "parent_coin": "MATIC", "swap_contract_address": "0x9130b257D37A52E52F21054c4DA3450c72f595CE", "fallback_swap_contract": "0x9130b257D37A52E52F21054c4DA3450c72f595CE", @@ -28448,78 +26048,10 @@ "url": "https://polygon-rpc.com" }, { - "url": "https://poly-rpc.gateway.pokt.network" - } - ], - "explorer_block_url": "block/" - }, - "PRUX": { - "coin": "PRUX", - "type": "UTXO", - "name": "PRUX", - "coinpaprika_id": "prux-prux-coin", - "coingecko_id": "", - "livecoinwatch_id": "", - "explorer_url": "https://explorer.prux.info/", - "explorer_tx_url": "", - "explorer_address_url": "", - "supported": [], - "active": false, - "is_testnet": false, - "currently_enabled": false, - "wallet_only": false, - "fname": "PRUX", - "rpcport": 19595, - "pubtype": 55, - "p2shtype": 117, - "wiftype": 183, - "txfee": 10000, - "segwit": false, - "bech32_hrp": "pr", - "mm2": 1, - "required_confirmations": 9, - "avg_blocktime": 9, - "protocol": { - "type": "UTXO" - }, - "electrum": [ - { - "url": "electrumx.live:50010", - "protocol": "TCP", - "contact": [ - { - "discord": "PRUX-Coin#1668" - } - ] - }, - { - "url": "txserver.live:50001", - "protocol": "TCP", - "contact": [ - { - "discord": "PRUX-Coin#1668" - } - ] + "url": "https://polygon.blockpi.network/v1/rpc/public" }, { - "url": "electrumx.live:50012", - "protocol": "SSL", - "ws_url": "electrumx.live:30010", - "contact": [ - { - "discord": "PRUX-Coin#1668" - } - ] - }, - { - "url": "txserver.live:50002", - "protocol": "SSL", - "ws_url": "txserver.live:30001", - "contact": [ - { - "discord": "PRUX-Coin#1668" - } - ] + "url": "https://polygon.llamarpc.com" } ], "explorer_block_url": "block/" @@ -28562,15 +26094,6 @@ "url": "https://node.komodo.earth:8080/binance", "gui_auth": true }, - { - "url": "http://bsc1.cipig.net:8655" - }, - { - "url": "http://bsc2.cipig.net:8655" - }, - { - "url": "http://bsc3.cipig.net:8655" - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -28626,24 +26149,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -28709,6 +26214,57 @@ ], "explorer_block_url": "block/" }, + "SHIB-PLG20": { + "coin": "SHIB-PLG20", + "type": "Matic", + "name": "Shiba Inu", + "coinpaprika_id": "", + "coingecko_id": "", + "livecoinwatch_id": "SHIB", + "explorer_url": "https://polygonscan.com/", + "explorer_tx_url": "tx/", + "explorer_address_url": "address/", + "supported": [], + "active": false, + "is_testnet": false, + "currently_enabled": false, + "wallet_only": false, + "fname": "Shiba Inu", + "rpcport": 80, + "mm2": 1, + "chain_id": 137, + "decimals": 18, + "avg_blocktime": 1.8, + "required_confirmations": 20, + "protocol": { + "type": "ERC20", + "protocol_data": { + "platform": "MATIC", + "contract_address": "0x6f8a06447Ff6FcF75d803135a7de15CE88C1d4ec" + } + }, + "derivation_path": "m/44'/966'", + "contract_address": "0x6f8a06447Ff6FcF75d803135a7de15CE88C1d4ec", + "parent_coin": "MATIC", + "swap_contract_address": "0x9130b257D37A52E52F21054c4DA3450c72f595CE", + "fallback_swap_contract": "0x9130b257D37A52E52F21054c4DA3450c72f595CE", + "nodes": [ + { + "url": "https://node.komodo.earth:8080/polygon", + "gui_auth": true + }, + { + "url": "https://polygon-rpc.com" + }, + { + "url": "https://polygon.blockpi.network/v1/rpc/public" + }, + { + "url": "https://polygon.llamarpc.com" + } + ], + "explorer_block_url": "block/" + }, "QC-QRC20": { "coin": "QC-QRC20", "type": "QRC-20", @@ -28758,8 +26314,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum1.cipig.net:30050" + ] }, { "url": "electrum2.cipig.net:10050", @@ -28770,8 +26325,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum2.cipig.net:30050" + ] }, { "url": "electrum3.cipig.net:10050", @@ -28782,8 +26336,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum3.cipig.net:30050" + ] }, { "url": "electrum1.cipig.net:20050", @@ -28795,7 +26348,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum1.cipig.net:30050" }, { "url": "electrum2.cipig.net:20050", @@ -28807,7 +26361,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum2.cipig.net:30050" }, { "url": "electrum3.cipig.net:20050", @@ -28819,7 +26374,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum3.cipig.net:30050" } ], "explorer_block_url": "block/" @@ -28873,8 +26429,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum1.cipig.net:30050" + ] }, { "url": "electrum2.cipig.net:10050", @@ -28885,8 +26440,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum2.cipig.net:30050" + ] }, { "url": "electrum3.cipig.net:10050", @@ -28897,8 +26451,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum3.cipig.net:30050" + ] }, { "url": "electrum1.cipig.net:20050", @@ -28910,7 +26463,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum1.cipig.net:30050" }, { "url": "electrum2.cipig.net:20050", @@ -28922,7 +26476,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum2.cipig.net:30050" }, { "url": "electrum3.cipig.net:20050", @@ -28934,7 +26489,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum3.cipig.net:30050" } ], "explorer_block_url": "block/" @@ -28988,8 +26544,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum1.cipig.net:30050" + ] }, { "url": "electrum2.cipig.net:10050", @@ -29000,8 +26555,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum2.cipig.net:30050" + ] }, { "url": "electrum3.cipig.net:10050", @@ -29012,8 +26566,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum3.cipig.net:30050" + ] }, { "url": "electrum1.cipig.net:20050", @@ -29025,7 +26578,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum1.cipig.net:30050" }, { "url": "electrum2.cipig.net:20050", @@ -29037,7 +26591,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum2.cipig.net:30050" }, { "url": "electrum3.cipig.net:20050", @@ -29049,7 +26604,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum3.cipig.net:30050" } ], "explorer_block_url": "block/" @@ -29092,15 +26648,6 @@ "url": "https://node.komodo.earth:8080/binance", "gui_auth": true }, - { - "url": "http://bsc1.cipig.net:8655" - }, - { - "url": "http://bsc2.cipig.net:8655" - }, - { - "url": "http://bsc3.cipig.net:8655" - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -29156,24 +26703,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -29239,24 +26768,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -29368,8 +26879,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum1.cipig.net:30071" + ] }, { "url": "electrum2.cipig.net:10071", @@ -29380,8 +26890,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum2.cipig.net:30071" + ] }, { "url": "electrum3.cipig.net:10071", @@ -29392,8 +26901,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum3.cipig.net:30071" + ] }, { "url": "electrum1.cipig.net:20071", @@ -29405,7 +26913,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum1.cipig.net:30071" }, { "url": "electrum2.cipig.net:20071", @@ -29417,7 +26926,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum2.cipig.net:30071" }, { "url": "electrum3.cipig.net:20071", @@ -29429,7 +26939,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum3.cipig.net:30071" } ], "explorer_block_url": "block/" @@ -29485,8 +26996,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum1.cipig.net:30050" + ] }, { "url": "electrum2.cipig.net:10050", @@ -29497,8 +27007,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum2.cipig.net:30050" + ] }, { "url": "electrum3.cipig.net:10050", @@ -29509,8 +27018,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum3.cipig.net:30050" + ] }, { "url": "electrum1.cipig.net:20050", @@ -29522,7 +27030,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum1.cipig.net:30050" }, { "url": "electrum2.cipig.net:20050", @@ -29534,7 +27043,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum2.cipig.net:30050" }, { "url": "electrum3.cipig.net:20050", @@ -29546,7 +27056,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum3.cipig.net:30050" } ], "explorer_block_url": "block/" @@ -29604,8 +27115,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum1.cipig.net:30050" + ] }, { "url": "electrum2.cipig.net:10050", @@ -29616,8 +27126,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum2.cipig.net:30050" + ] }, { "url": "electrum3.cipig.net:10050", @@ -29628,8 +27137,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum3.cipig.net:30050" + ] }, { "url": "electrum1.cipig.net:20050", @@ -29641,7 +27149,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum1.cipig.net:30050" }, { "url": "electrum2.cipig.net:20050", @@ -29653,7 +27162,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum2.cipig.net:30050" }, { "url": "electrum3.cipig.net:20050", @@ -29665,7 +27175,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum3.cipig.net:30050" } ], "explorer_block_url": "block/" @@ -29713,24 +27224,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -29794,8 +27287,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum1.cipig.net:30071" + ] }, { "url": "electrum2.cipig.net:10071", @@ -29806,8 +27298,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum2.cipig.net:30071" + ] }, { "url": "electrum3.cipig.net:10071", @@ -29818,8 +27309,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum3.cipig.net:30071" + ] }, { "url": "electrum1.cipig.net:20071", @@ -29831,7 +27321,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum1.cipig.net:30071" }, { "url": "electrum2.cipig.net:20071", @@ -29843,7 +27334,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum2.cipig.net:30071" }, { "url": "electrum3.cipig.net:20071", @@ -29855,7 +27347,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum3.cipig.net:30071" } ], "explorer_block_url": "block/" @@ -29904,8 +27397,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum1.cipig.net:30071" + ] }, { "url": "electrum2.cipig.net:10071", @@ -29916,8 +27408,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum2.cipig.net:30071" + ] }, { "url": "electrum3.cipig.net:10071", @@ -29928,8 +27419,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum3.cipig.net:30071" + ] }, { "url": "electrum1.cipig.net:20071", @@ -29941,7 +27431,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum1.cipig.net:30071" }, { "url": "electrum2.cipig.net:20071", @@ -29953,7 +27444,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum2.cipig.net:30071" }, { "url": "electrum3.cipig.net:20071", @@ -29965,7 +27457,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum3.cipig.net:30071" } ], "explorer_block_url": "block/" @@ -30010,14 +27503,14 @@ }, "electrum": [ { - "url": "electrum01.reddcoin.com:50002", + "url": "electrum02.reddcoin.com:50002", "protocol": "SSL", - "ws_url": "electrum01.reddcoin.com:50004" + "ws_url": "electrum02.reddcoin.com:50004" }, { - "url": "electrum02.reddcoin.com:50002", + "url": "electrum03.reddcoin.com:50002", "protocol": "SSL", - "ws_url": "electrum02.reddcoin.com:50004" + "ws_url": "electrum03.reddcoin.com:50004" } ], "explorer_block_url": "block/" @@ -30066,24 +27559,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -30191,24 +27666,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -30269,24 +27726,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -30351,219 +27790,10 @@ "url": "https://polygon-rpc.com" }, { - "url": "https://poly-rpc.gateway.pokt.network" - } - ], - "explorer_block_url": "block/" - }, - "REVS": { - "coin": "REVS", - "type": "Smart Chain", - "name": "REVS", - "coinpaprika_id": "", - "coingecko_id": "", - "livecoinwatch_id": "", - "explorer_url": "https://revs.kmdexplorer.io/", - "explorer_tx_url": "", - "explorer_address_url": "", - "supported": [], - "active": false, - "is_testnet": false, - "currently_enabled": false, - "wallet_only": false, - "sign_message_prefix": "Komodo Signed Message:\n", - "asset": "REVS", - "fname": "REVS", - "rpcport": 10196, - "txversion": 4, - "overwintered": 1, - "mm2": 1, - "required_confirmations": 2, - "requires_notarization": true, - "avg_blocktime": 60, - "protocol": { - "type": "UTXO" - }, - "derivation_path": "m/44'/141'", - "trezor_coin": "Komodo", - "electrum": [ - { - "url": "electrum1.cipig.net:10003", - "contact": [ - { - "email": "cipi@komodoplatform.com" - }, - { - "discord": "cipi#4502" - } - ], - "ws_url": "electrum1.cipig.net:30003" - }, - { - "url": "electrum2.cipig.net:10003", - "contact": [ - { - "email": "cipi@komodoplatform.com" - }, - { - "discord": "cipi#4502" - } - ], - "ws_url": "electrum2.cipig.net:30003" - }, - { - "url": "electrum3.cipig.net:10003", - "contact": [ - { - "email": "cipi@komodoplatform.com" - }, - { - "discord": "cipi#4502" - } - ], - "ws_url": "electrum3.cipig.net:30003" - }, - { - "url": "electrum1.cipig.net:20003", - "protocol": "SSL", - "contact": [ - { - "email": "cipi@komodoplatform.com" - }, - { - "discord": "cipi#4502" - } - ] - }, - { - "url": "electrum2.cipig.net:20003", - "protocol": "SSL", - "contact": [ - { - "email": "cipi@komodoplatform.com" - }, - { - "discord": "cipi#4502" - } - ] - }, - { - "url": "electrum3.cipig.net:20003", - "protocol": "SSL", - "contact": [ - { - "email": "cipi@komodoplatform.com" - }, - { - "discord": "cipi#4502" - } - ] - } - ], - "explorer_block_url": "block/" - }, - "RICK": { - "coin": "RICK", - "type": "Smart Chain", - "name": "Rick", - "coinpaprika_id": "", - "coingecko_id": "", - "livecoinwatch_id": "", - "explorer_url": "https://rick.explorer.dexstats.info/", - "explorer_tx_url": "", - "explorer_address_url": "", - "supported": [], - "active": false, - "is_testnet": true, - "currently_enabled": false, - "wallet_only": false, - "sign_message_prefix": "Komodo Signed Message:\n", - "asset": "RICK", - "fname": "Rick", - "rpcport": 25435, - "txversion": 4, - "overwintered": 1, - "mm2": 1, - "required_confirmations": 1, - "requires_notarization": false, - "avg_blocktime": 60, - "protocol": { - "type": "UTXO" - }, - "derivation_path": "m/44'/141'", - "trezor_coin": "Komodo", - "electrum": [ - { - "url": "electrum1.cipig.net:10017", - "contact": [ - { - "email": "cipi@komodoplatform.com" - }, - { - "discord": "cipi#4502" - } - ], - "ws_url": "electrum1.cipig.net:30017" - }, - { - "url": "electrum2.cipig.net:10017", - "contact": [ - { - "email": "cipi@komodoplatform.com" - }, - { - "discord": "cipi#4502" - } - ], - "ws_url": "electrum2.cipig.net:30017" - }, - { - "url": "electrum3.cipig.net:10017", - "contact": [ - { - "email": "cipi@komodoplatform.com" - }, - { - "discord": "cipi#4502" - } - ], - "ws_url": "electrum3.cipig.net:30017" - }, - { - "url": "electrum1.cipig.net:20017", - "protocol": "SSL", - "contact": [ - { - "email": "cipi@komodoplatform.com" - }, - { - "discord": "cipi#4502" - } - ] + "url": "https://polygon.blockpi.network/v1/rpc/public" }, { - "url": "electrum2.cipig.net:20017", - "protocol": "SSL", - "contact": [ - { - "email": "cipi@komodoplatform.com" - }, - { - "discord": "cipi#4502" - } - ] - }, - { - "url": "electrum3.cipig.net:20017", - "protocol": "SSL", - "contact": [ - { - "email": "cipi@komodoplatform.com" - }, - { - "discord": "cipi#4502" - } - ] + "url": "https://polygon.llamarpc.com" } ], "explorer_block_url": "block/" @@ -30823,24 +28053,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -30905,7 +28117,10 @@ "url": "https://polygon-rpc.com" }, { - "url": "https://poly-rpc.gateway.pokt.network" + "url": "https://polygon.blockpi.network/v1/rpc/public" + }, + { + "url": "https://polygon.llamarpc.com" } ], "explorer_block_url": "block/" @@ -30949,24 +28164,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -31031,7 +28228,10 @@ "url": "https://polygon-rpc.com" }, { - "url": "https://poly-rpc.gateway.pokt.network" + "url": "https://polygon.blockpi.network/v1/rpc/public" + }, + { + "url": "https://polygon.llamarpc.com" } ], "explorer_block_url": "block/" @@ -31075,24 +28275,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -31158,24 +28340,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -31277,15 +28441,6 @@ "url": "https://node.komodo.earth:8080/binance", "gui_auth": true }, - { - "url": "http://bsc1.cipig.net:8655" - }, - { - "url": "http://bsc2.cipig.net:8655" - }, - { - "url": "http://bsc3.cipig.net:8655" - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -31322,6 +28477,7 @@ "wiftype": 128, "segwit": true, "txfee": 1000000, + "dust": 1000000, "mm2": 1, "required_confirmations": 3, "avg_blocktime": 60, @@ -31344,8 +28500,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum1.cipig.net:30051" + ] }, { "url": "electrum2.cipig.net:10051", @@ -31356,8 +28511,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum2.cipig.net:30051" + ] }, { "url": "electrum3.cipig.net:10051", @@ -31368,8 +28522,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum3.cipig.net:30051" + ] }, { "url": "electrum1.cipig.net:20051", @@ -31381,7 +28534,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum1.cipig.net:30051" }, { "url": "electrum2.cipig.net:20051", @@ -31393,7 +28547,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum2.cipig.net:30051" }, { "url": "electrum3.cipig.net:20051", @@ -31405,7 +28560,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum3.cipig.net:30051" } ], "explorer_block_url": "block/" @@ -31449,24 +28605,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -31527,15 +28665,6 @@ "url": "https://node.komodo.earth:8080/binance", "gui_auth": true }, - { - "url": "http://bsc1.cipig.net:8655" - }, - { - "url": "http://bsc2.cipig.net:8655" - }, - { - "url": "http://bsc3.cipig.net:8655" - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -31592,7 +28721,10 @@ "url": "https://polygon-rpc.com" }, { - "url": "https://poly-rpc.gateway.pokt.network" + "url": "https://polygon.blockpi.network/v1/rpc/public" + }, + { + "url": "https://polygon.llamarpc.com" } ], "explorer_block_url": "block/" @@ -31636,15 +28768,6 @@ "url": "https://node.komodo.earth:8080/binance", "gui_auth": true }, - { - "url": "http://bsc1.cipig.net:8655" - }, - { - "url": "http://bsc2.cipig.net:8655" - }, - { - "url": "http://bsc3.cipig.net:8655" - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -31697,15 +28820,6 @@ "url": "https://node.komodo.earth:8080/binance", "gui_auth": true }, - { - "url": "http://bsc1.cipig.net:8655" - }, - { - "url": "http://bsc2.cipig.net:8655" - }, - { - "url": "http://bsc3.cipig.net:8655" - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -31760,6 +28874,9 @@ }, { "url": "https://api.avax.network/ext/bc/C/rpc" + }, + { + "url": "https://avalanche.blockpi.network/v1/rpc/public" } ], "explorer_block_url": "block/" @@ -31802,15 +28919,6 @@ "url": "https://node.komodo.earth:8080/binance", "gui_auth": true }, - { - "url": "http://bsc1.cipig.net:8655" - }, - { - "url": "http://bsc2.cipig.net:8655" - }, - { - "url": "http://bsc3.cipig.net:8655" - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -31868,24 +28976,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -31948,6 +29038,9 @@ }, { "url": "https://rpc.fantom.network" + }, + { + "url": "https://rpc2.fantom.network" } ], "explorer_block_url": "block/" @@ -32039,7 +29132,10 @@ "url": "https://polygon-rpc.com" }, { - "url": "https://poly-rpc.gateway.pokt.network" + "url": "https://polygon.blockpi.network/v1/rpc/public" + }, + { + "url": "https://polygon.llamarpc.com" } ], "explorer_block_url": "block/" @@ -32083,15 +29179,6 @@ "url": "https://node.komodo.earth:8080/binance", "gui_auth": true }, - { - "url": "http://bsc1.cipig.net:8655" - }, - { - "url": "http://bsc2.cipig.net:8655" - }, - { - "url": "http://bsc3.cipig.net:8655" - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -32148,7 +29235,10 @@ "url": "https://polygon-rpc.com" }, { - "url": "https://poly-rpc.gateway.pokt.network" + "url": "https://polygon.blockpi.network/v1/rpc/public" + }, + { + "url": "https://polygon.llamarpc.com" } ], "explorer_block_url": "block/" @@ -32191,24 +29281,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -32236,7 +29308,7 @@ "name": "Spacecoin", "coinpaprika_id": "space-spacecoin7367", "coingecko_id": "", - "livecoinwatch_id": "", + "livecoinwatch_id": "__________SPACE", "explorer_url": "https://explorer.spaceworks.co/", "explorer_tx_url": "", "explorer_address_url": "", @@ -32270,8 +29342,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum1.cipig.net:30011" + ] }, { "url": "electrum2.cipig.net:10011", @@ -32282,8 +29353,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum2.cipig.net:30011" + ] }, { "url": "electrum3.cipig.net:10011", @@ -32294,8 +29364,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum3.cipig.net:30011" + ] }, { "url": "electrum1.cipig.net:20011", @@ -32307,7 +29376,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum1.cipig.net:30011" }, { "url": "electrum2.cipig.net:20011", @@ -32319,7 +29389,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum2.cipig.net:30011" }, { "url": "electrum3.cipig.net:20011", @@ -32331,7 +29402,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum3.cipig.net:30011" } ], "explorer_block_url": "block/" @@ -32375,24 +29447,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -32457,7 +29511,10 @@ "url": "https://polygon-rpc.com" }, { - "url": "https://poly-rpc.gateway.pokt.network" + "url": "https://polygon.blockpi.network/v1/rpc/public" + }, + { + "url": "https://polygon.llamarpc.com" } ], "explorer_block_url": "block/" @@ -32502,8 +29559,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum1.cipig.net:30005" + ] }, { "url": "electrum2.cipig.net:10005", @@ -32514,8 +29570,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum2.cipig.net:30005" + ] }, { "url": "electrum3.cipig.net:10005", @@ -32526,8 +29581,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum3.cipig.net:30005" + ] }, { "url": "electrum1.cipig.net:20005", @@ -32539,7 +29593,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum1.cipig.net:30005" }, { "url": "electrum2.cipig.net:20005", @@ -32551,7 +29606,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum2.cipig.net:30005" }, { "url": "electrum3.cipig.net:20005", @@ -32563,7 +29619,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum3.cipig.net:30005" } ], "explorer_block_url": "block/" @@ -32609,6 +29666,9 @@ }, { "url": "https://api.avax.network/ext/bc/C/rpc" + }, + { + "url": "https://avalanche.blockpi.network/v1/rpc/public" } ], "explorer_block_url": "block/" @@ -32651,15 +29711,6 @@ "url": "https://node.komodo.earth:8080/binance", "gui_auth": true }, - { - "url": "http://bsc1.cipig.net:8655" - }, - { - "url": "http://bsc2.cipig.net:8655" - }, - { - "url": "http://bsc3.cipig.net:8655" - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -32717,24 +29768,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -32797,6 +29830,9 @@ }, { "url": "https://rpc.fantom.network" + }, + { + "url": "https://rpc2.fantom.network" } ], "explorer_block_url": "block/" @@ -32881,7 +29917,7 @@ "fallback_swap_contract": "0x9130b257D37A52E52F21054c4DA3450c72f595CE", "nodes": [ { - "url": "https://rpc.moonriver.moonbeam.network" + "url": "https://moonriver.public.blastapi.io" }, { "url": "https://rpc.api.moonriver.moonbeam.network" @@ -32932,7 +29968,10 @@ "url": "https://polygon-rpc.com" }, { - "url": "https://poly-rpc.gateway.pokt.network" + "url": "https://polygon.blockpi.network/v1/rpc/public" + }, + { + "url": "https://polygon.llamarpc.com" } ], "explorer_block_url": "block/" @@ -32975,15 +30014,6 @@ "url": "https://node.komodo.earth:8080/binance", "gui_auth": true }, - { - "url": "http://bsc1.cipig.net:8655" - }, - { - "url": "http://bsc2.cipig.net:8655" - }, - { - "url": "http://bsc3.cipig.net:8655" - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -33011,7 +30041,7 @@ "active": false, "is_testnet": false, "currently_enabled": false, - "wallet_only": false, + "wallet_only": true, "fname": "Swipe", "rpcport": 80, "mm2": 1, @@ -33035,15 +30065,6 @@ "url": "https://node.komodo.earth:8080/binance", "gui_auth": true }, - { - "url": "http://bsc1.cipig.net:8655" - }, - { - "url": "http://bsc2.cipig.net:8655" - }, - { - "url": "http://bsc3.cipig.net:8655" - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -33071,7 +30092,7 @@ "active": false, "is_testnet": false, "currently_enabled": false, - "wallet_only": false, + "wallet_only": true, "fname": "Swipe", "rpcport": 80, "mm2": 1, @@ -33096,24 +30117,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -33225,8 +30228,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum1.cipig.net:30064" + ] }, { "url": "electrum2.cipig.net:10064", @@ -33237,8 +30239,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum2.cipig.net:30064" + ] }, { "url": "electrum3.cipig.net:10064", @@ -33249,8 +30250,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum3.cipig.net:30064" + ] }, { "url": "electrum1.cipig.net:20064", @@ -33262,7 +30262,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum1.cipig.net:30064" }, { "url": "electrum2.cipig.net:20064", @@ -33274,7 +30275,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum2.cipig.net:30064" }, { "url": "electrum3.cipig.net:20064", @@ -33286,7 +30288,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum3.cipig.net:30064" } ], "explorer_block_url": "block.dws?" @@ -33342,8 +30345,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum1.cipig.net:30064" + ] }, { "url": "electrum2.cipig.net:10064", @@ -33354,8 +30356,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum2.cipig.net:30064" + ] }, { "url": "electrum3.cipig.net:10064", @@ -33366,8 +30367,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum3.cipig.net:30064" + ] }, { "url": "electrum1.cipig.net:20064", @@ -33379,7 +30379,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum1.cipig.net:30064" }, { "url": "electrum2.cipig.net:20064", @@ -33391,7 +30392,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum2.cipig.net:30064" }, { "url": "electrum3.cipig.net:20064", @@ -33403,7 +30405,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum3.cipig.net:30064" } ], "explorer_block_url": "block.dws?" @@ -33447,24 +30450,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -33525,8 +30510,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum1.cipig.net:30068" + ] }, { "url": "electrum2.cipig.net:10068", @@ -33537,8 +30521,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum2.cipig.net:30068" + ] }, { "url": "electrum3.cipig.net:10068", @@ -33549,8 +30532,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum3.cipig.net:30068" + ] }, { "url": "testnet.aranguren.org:51001", @@ -33566,7 +30548,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum1.cipig.net:30068" }, { "url": "electrum2.cipig.net:20068", @@ -33578,7 +30561,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum2.cipig.net:30068" }, { "url": "electrum3.cipig.net:20068", @@ -33590,7 +30574,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum3.cipig.net:30068" } ], "explorer_block_url": "block/" @@ -33638,8 +30623,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum1.cipig.net:30068" + ] }, { "url": "electrum2.cipig.net:10068", @@ -33650,8 +30634,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum2.cipig.net:30068" + ] }, { "url": "electrum3.cipig.net:10068", @@ -33662,8 +30645,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum3.cipig.net:30068" + ] }, { "url": "testnet.aranguren.org:51001", @@ -33679,7 +30661,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum1.cipig.net:30068" }, { "url": "electrum2.cipig.net:20068", @@ -33691,7 +30674,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum2.cipig.net:30068" }, { "url": "electrum3.cipig.net:20068", @@ -33703,7 +30687,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum3.cipig.net:30068" } ], "explorer_block_url": "block/" @@ -33747,24 +30732,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -33873,7 +30840,10 @@ "url": "https://polygon-rpc.com" }, { - "url": "https://poly-rpc.gateway.pokt.network" + "url": "https://polygon.blockpi.network/v1/rpc/public" + }, + { + "url": "https://polygon.llamarpc.com" } ], "explorer_block_url": "block/" @@ -33917,15 +30887,6 @@ "url": "https://node.komodo.earth:8080/binance", "gui_auth": true }, - { - "url": "http://bsc1.cipig.net:8655" - }, - { - "url": "http://bsc2.cipig.net:8655" - }, - { - "url": "http://bsc3.cipig.net:8655" - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -34028,15 +30989,6 @@ "url": "https://node.komodo.earth:8080/binance", "gui_auth": true }, - { - "url": "http://bsc1.cipig.net:8655" - }, - { - "url": "http://bsc2.cipig.net:8655" - }, - { - "url": "http://bsc3.cipig.net:8655" - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -34090,8 +31042,7 @@ { "discord": "chmex#0686" } - ], - "ws_url": "1.eu.tokel.electrum.dexstats.info:9077" + ] }, { "url": "2.eu.tokel.electrum.dexstats.info:10077", @@ -34102,8 +31053,7 @@ { "discord": "chmex#0686" } - ], - "ws_url": "2.eu.tokel.electrum.dexstats.info:9077" + ] }, { "url": "1.eu.tokel.electrum.dexstats.info:11077", @@ -34115,7 +31065,8 @@ { "discord": "chmex#0686" } - ] + ], + "ws_url": "1.eu.tokel.electrum.dexstats.info:9077" }, { "url": "2.eu.tokel.electrum.dexstats.info:11077", @@ -34127,7 +31078,8 @@ { "discord": "chmex#0686" } - ] + ], + "ws_url": "2.eu.tokel.electrum.dexstats.info:9077" } ], "explorer_block_url": "block/" @@ -34171,24 +31123,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -34249,15 +31183,6 @@ "url": "https://node.komodo.earth:8080/binance", "gui_auth": true }, - { - "url": "http://bsc1.cipig.net:8655" - }, - { - "url": "http://bsc2.cipig.net:8655" - }, - { - "url": "http://bsc3.cipig.net:8655" - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -34349,15 +31274,6 @@ "url": "https://node.komodo.earth:8080/binance", "gui_auth": true }, - { - "url": "http://bsc1.cipig.net:8655" - }, - { - "url": "http://bsc2.cipig.net:8655" - }, - { - "url": "http://bsc3.cipig.net:8655" - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -34410,15 +31326,6 @@ "url": "https://node.komodo.earth:8080/binance", "gui_auth": true }, - { - "url": "http://bsc1.cipig.net:8655" - }, - { - "url": "http://bsc2.cipig.net:8655" - }, - { - "url": "http://bsc3.cipig.net:8655" - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -34473,6 +31380,9 @@ }, { "url": "https://api.avax.network/ext/bc/C/rpc" + }, + { + "url": "https://avalanche.blockpi.network/v1/rpc/public" } ], "explorer_block_url": "block/", @@ -34516,15 +31426,6 @@ "url": "https://node.komodo.earth:8080/binance", "gui_auth": true }, - { - "url": "http://bsc1.cipig.net:8655" - }, - { - "url": "http://bsc2.cipig.net:8655" - }, - { - "url": "http://bsc3.cipig.net:8655" - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -34582,7 +31483,10 @@ "url": "https://polygon-rpc.com" }, { - "url": "https://poly-rpc.gateway.pokt.network" + "url": "https://polygon.blockpi.network/v1/rpc/public" + }, + { + "url": "https://polygon.llamarpc.com" } ], "explorer_block_url": "block/", @@ -34626,24 +31530,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -34704,15 +31590,6 @@ "url": "https://node.komodo.earth:8080/binance", "gui_auth": true }, - { - "url": "http://bsc1.cipig.net:8655" - }, - { - "url": "http://bsc2.cipig.net:8655" - }, - { - "url": "http://bsc3.cipig.net:8655" - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -34765,15 +31642,6 @@ "url": "https://node.komodo.earth:8080/binance", "gui_auth": true }, - { - "url": "http://bsc1.cipig.net:8655" - }, - { - "url": "http://bsc2.cipig.net:8655" - }, - { - "url": "http://bsc3.cipig.net:8655" - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -34830,24 +31698,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -34910,6 +31760,9 @@ }, { "url": "https://api.avax.network/ext/bc/C/rpc" + }, + { + "url": "https://avalanche.blockpi.network/v1/rpc/public" } ], "explorer_block_url": "block/" @@ -34955,6 +31808,9 @@ }, { "url": "https://rpc.fantom.network" + }, + { + "url": "https://rpc2.fantom.network" } ], "explorer_block_url": "block/" @@ -35090,7 +31946,10 @@ "url": "https://polygon-rpc.com" }, { - "url": "https://poly-rpc.gateway.pokt.network" + "url": "https://polygon.blockpi.network/v1/rpc/public" + }, + { + "url": "https://polygon.llamarpc.com" } ], "explorer_block_url": "block/" @@ -35134,15 +31993,6 @@ "url": "https://node.komodo.earth:8080/binance", "gui_auth": true }, - { - "url": "http://bsc1.cipig.net:8655" - }, - { - "url": "http://bsc2.cipig.net:8655" - }, - { - "url": "http://bsc3.cipig.net:8655" - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -35199,24 +32049,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -35281,7 +32113,10 @@ "url": "https://polygon-rpc.com" }, { - "url": "https://poly-rpc.gateway.pokt.network" + "url": "https://polygon.blockpi.network/v1/rpc/public" + }, + { + "url": "https://polygon.llamarpc.com" } ], "explorer_block_url": "block/" @@ -35320,12 +32155,6 @@ "protocol": "SSL", "disable_cert_verification": false, "ws_url": "failover.trc-uis.ewmcx.biz:50003" - }, - { - "url": "uis-uno.ewmcx.net:50002", - "protocol": "SSL", - "disable_cert_verification": false, - "ws_url": "uis-uno.ewmcx.net:50003" } ], "explorer_block_url": "block/" @@ -35371,6 +32200,9 @@ }, { "url": "https://api.avax.network/ext/bc/C/rpc" + }, + { + "url": "https://avalanche.blockpi.network/v1/rpc/public" } ], "explorer_block_url": "block/" @@ -35414,24 +32246,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -35496,7 +32310,10 @@ "url": "https://polygon-rpc.com" }, { - "url": "https://poly-rpc.gateway.pokt.network" + "url": "https://polygon.blockpi.network/v1/rpc/public" + }, + { + "url": "https://polygon.llamarpc.com" } ], "explorer_block_url": "block/" @@ -35542,6 +32359,9 @@ }, { "url": "https://api.avax.network/ext/bc/C/rpc" + }, + { + "url": "https://avalanche.blockpi.network/v1/rpc/public" } ], "explorer_block_url": "block/" @@ -35589,24 +32409,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -35666,15 +32468,6 @@ "url": "https://node.komodo.earth:8080/binance", "gui_auth": true }, - { - "url": "http://bsc1.cipig.net:8655" - }, - { - "url": "http://bsc2.cipig.net:8655" - }, - { - "url": "http://bsc3.cipig.net:8655" - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -35819,7 +32612,10 @@ "url": "https://polygon-rpc.com" }, { - "url": "https://poly-rpc.gateway.pokt.network" + "url": "https://polygon.blockpi.network/v1/rpc/public" + }, + { + "url": "https://polygon.llamarpc.com" } ], "explorer_block_url": "block/" @@ -35915,6 +32711,9 @@ }, { "url": "https://api.avax.network/ext/bc/C/rpc" + }, + { + "url": "https://avalanche.blockpi.network/v1/rpc/public" } ], "explorer_block_url": "block/" @@ -35960,6 +32759,9 @@ }, { "url": "https://api.avax.network/ext/bc/C/rpc" + }, + { + "url": "https://avalanche.blockpi.network/v1/rpc/public" } ], "explorer_block_url": "block/" @@ -36007,24 +32809,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -36084,15 +32868,6 @@ "url": "https://node.komodo.earth:8080/binance", "gui_auth": true }, - { - "url": "http://bsc1.cipig.net:8655" - }, - { - "url": "http://bsc2.cipig.net:8655" - }, - { - "url": "http://bsc3.cipig.net:8655" - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -36146,6 +32921,9 @@ }, { "url": "https://rpc.fantom.network" + }, + { + "url": "https://rpc2.fantom.network" } ], "explorer_block_url": "block/" @@ -36274,7 +33052,7 @@ "fallback_swap_contract": "0x9130b257D37A52E52F21054c4DA3450c72f595CE", "nodes": [ { - "url": "https://rpc.moonriver.moonbeam.network" + "url": "https://moonriver.public.blastapi.io" }, { "url": "https://rpc.api.moonriver.moonbeam.network" @@ -36325,7 +33103,10 @@ "url": "https://polygon-rpc.com" }, { - "url": "https://poly-rpc.gateway.pokt.network" + "url": "https://polygon.blockpi.network/v1/rpc/public" + }, + { + "url": "https://polygon.llamarpc.com" } ], "explorer_block_url": "block/" @@ -36369,15 +33150,6 @@ "url": "https://node.komodo.earth:8080/binance", "gui_auth": true }, - { - "url": "http://bsc1.cipig.net:8655" - }, - { - "url": "http://bsc2.cipig.net:8655" - }, - { - "url": "http://bsc3.cipig.net:8655" - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -36430,24 +33202,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -36505,7 +33259,7 @@ "fallback_swap_contract": "0x9130b257D37A52E52F21054c4DA3450c72f595CE", "nodes": [ { - "url": "https://rpc.moonriver.moonbeam.network" + "url": "https://moonriver.public.blastapi.io" }, { "url": "https://rpc.api.moonriver.moonbeam.network" @@ -36554,6 +33308,9 @@ }, { "url": "https://rpc.fantom.network" + }, + { + "url": "https://rpc2.fantom.network" } ], "explorer_block_url": "block/" @@ -36689,7 +33446,10 @@ "url": "https://polygon-rpc.com" }, { - "url": "https://poly-rpc.gateway.pokt.network" + "url": "https://polygon.blockpi.network/v1/rpc/public" + }, + { + "url": "https://polygon.llamarpc.com" } ], "explorer_block_url": "block/" @@ -36779,6 +33539,9 @@ }, { "url": "https://api.avax.network/ext/bc/C/rpc" + }, + { + "url": "https://avalanche.blockpi.network/v1/rpc/public" } ], "explorer_block_url": "block/" @@ -36824,6 +33587,9 @@ }, { "url": "https://api.avax.network/ext/bc/C/rpc" + }, + { + "url": "https://avalanche.blockpi.network/v1/rpc/public" } ], "explorer_block_url": "block/" @@ -36866,15 +33632,6 @@ "url": "https://node.komodo.earth:8080/binance", "gui_auth": true }, - { - "url": "http://bsc1.cipig.net:8655" - }, - { - "url": "http://bsc2.cipig.net:8655" - }, - { - "url": "http://bsc3.cipig.net:8655" - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -36930,24 +33687,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -37007,24 +33746,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -37177,15 +33898,6 @@ "url": "https://node.komodo.earth:8080/binance", "gui_auth": true }, - { - "url": "http://bsc1.cipig.net:8655" - }, - { - "url": "http://bsc2.cipig.net:8655" - }, - { - "url": "http://bsc3.cipig.net:8655" - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -37236,24 +33948,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -37314,24 +34008,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -37396,7 +34072,10 @@ "url": "https://polygon-rpc.com" }, { - "url": "https://poly-rpc.gateway.pokt.network" + "url": "https://polygon.blockpi.network/v1/rpc/public" + }, + { + "url": "https://polygon.llamarpc.com" } ], "explorer_block_url": "block/" @@ -37533,15 +34212,6 @@ "url": "https://node.komodo.earth:8080/binance", "gui_auth": true }, - { - "url": "http://bsc1.cipig.net:8655" - }, - { - "url": "http://bsc2.cipig.net:8655" - }, - { - "url": "http://bsc3.cipig.net:8655" - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -37734,7 +34404,7 @@ "name": "GRMS", "coinpaprika_id": "grms-grms", "coingecko_id": "", - "livecoinwatch_id": "", + "livecoinwatch_id": "GRMS", "explorer_url": "https://explorer.grms.pw/", "explorer_tx_url": "", "explorer_address_url": "", @@ -37770,8 +34440,7 @@ { "github": "Miner113" } - ], - "ws_url": "electrum1.grms.pw:50004" + ] }, { "url": "electrum1.grms.pw:50002", @@ -37786,56 +34455,8 @@ { "github": "Miner113" } - ] - } - ], - "explorer_block_url": "block/" - }, - "VPRM": { - "coin": "VPRM", - "type": "Smart Chain", - "name": "Vaporum", - "coinpaprika_id": "vprm-vaporum-coin", - "coingecko_id": "vaporum-coin", - "livecoinwatch_id": "VPRM", - "explorer_url": "http://explorer.vaporumcoin.us/", - "explorer_tx_url": "", - "explorer_address_url": "", - "supported": [], - "active": false, - "is_testnet": false, - "currently_enabled": false, - "wallet_only": false, - "sign_message_prefix": "Komodo Signed Message:\n", - "asset": "VPRM", - "fname": "Vaporum", - "rpcport": 51609, - "txversion": 4, - "overwintered": 1, - "mm2": 1, - "required_confirmations": 5, - "avg_blocktime": 30, - "protocol": { - "type": "UTXO" - }, - "derivation_path": "m/44'/141'", - "trezor_coin": "Komodo", - "electrum": [ - { - "url": "electrumx1.vaporumcoin.us:50001", - "contact": [ - { - "github": "VaporumCoin" - } - ] - }, - { - "url": "electrumx2.vaporumcoin.us:50001", - "contact": [ - { - "github": "VaporumCoin" - } - ] + ], + "ws_url": "electrum1.grms.pw:50004" } ], "explorer_block_url": "block/" @@ -37861,7 +34482,8 @@ "pubtype": 71, "p2shtype": 5, "wiftype": 128, - "txfee": 0, + "txfee": 100000, + "dust": 100000, "segwit": true, "bech32_hrp": "vtc", "mm2": 1, @@ -37916,7 +34538,8 @@ "pubtype": 71, "p2shtype": 5, "wiftype": 128, - "txfee": 0, + "txfee": 100000, + "dust": 100000, "segwit": true, "bech32_hrp": "vtc", "address_format": { @@ -37993,15 +34616,6 @@ "url": "https://node.komodo.earth:8080/binance", "gui_auth": true }, - { - "url": "http://bsc1.cipig.net:8655" - }, - { - "url": "http://bsc2.cipig.net:8655" - }, - { - "url": "http://bsc3.cipig.net:8655" - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -38059,24 +34673,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -38141,7 +34737,10 @@ "url": "https://polygon-rpc.com" }, { - "url": "https://poly-rpc.gateway.pokt.network" + "url": "https://polygon.blockpi.network/v1/rpc/public" + }, + { + "url": "https://polygon.llamarpc.com" } ], "explorer_block_url": "block/" @@ -38185,24 +34784,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -38263,24 +34844,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -38343,6 +34906,9 @@ }, { "url": "https://api.avax.network/ext/bc/C/rpc" + }, + { + "url": "https://avalanche.blockpi.network/v1/rpc/public" } ], "explorer_block_url": "block/" @@ -38386,15 +34952,6 @@ "url": "https://node.komodo.earth:8080/binance", "gui_auth": true }, - { - "url": "http://bsc1.cipig.net:8655" - }, - { - "url": "http://bsc2.cipig.net:8655" - }, - { - "url": "http://bsc3.cipig.net:8655" - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -38449,6 +35006,9 @@ }, { "url": "https://rpc.fantom.network" + }, + { + "url": "https://rpc2.fantom.network" } ], "explorer_block_url": "block/" @@ -38496,7 +35056,10 @@ "url": "https://polygon-rpc.com" }, { - "url": "https://poly-rpc.gateway.pokt.network" + "url": "https://polygon.blockpi.network/v1/rpc/public" + }, + { + "url": "https://polygon.llamarpc.com" } ], "explorer_block_url": "block/" @@ -38540,24 +35103,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -38618,15 +35163,6 @@ "url": "https://node.komodo.earth:8080/binance", "gui_auth": true }, - { - "url": "http://bsc1.cipig.net:8655" - }, - { - "url": "http://bsc2.cipig.net:8655" - }, - { - "url": "http://bsc3.cipig.net:8655" - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -38746,15 +35282,6 @@ "url": "https://node.komodo.earth:8080/binance", "gui_auth": true }, - { - "url": "http://bsc1.cipig.net:8655" - }, - { - "url": "http://bsc2.cipig.net:8655" - }, - { - "url": "http://bsc3.cipig.net:8655" - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -38807,24 +35334,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -38890,7 +35399,10 @@ "url": "https://polygon-rpc.com" }, { - "url": "https://poly-rpc.gateway.pokt.network" + "url": "https://polygon.blockpi.network/v1/rpc/public" + }, + { + "url": "https://polygon.llamarpc.com" } ], "explorer_block_url": "block/" @@ -38933,15 +35445,6 @@ "url": "https://node.komodo.earth:8080/binance", "gui_auth": true }, - { - "url": "http://bsc1.cipig.net:8655" - }, - { - "url": "http://bsc2.cipig.net:8655" - }, - { - "url": "http://bsc3.cipig.net:8655" - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -38988,12 +35491,12 @@ "electrum": [ { "url": "lenoir.ecoincore.com:10891", - "protocol": "TCP", - "ws_url": "lenoir.ecoincore.com:10894" + "protocol": "TCP" }, { "url": "lenoir.ecoincore.com:10892", - "protocol": "SSL" + "protocol": "SSL", + "ws_url": "lenoir.ecoincore.com:10894" } ], "explorer_block_url": "block.dws?" @@ -39035,16 +35538,93 @@ "electrum": [ { "url": "lenoir.ecoincore.com:10891", - "protocol": "TCP", - "ws_url": "lenoir.ecoincore.com:10894" + "protocol": "TCP" }, { "url": "lenoir.ecoincore.com:10892", - "protocol": "SSL" + "protocol": "SSL", + "ws_url": "lenoir.ecoincore.com:10894" } ], "explorer_block_url": "block.dws?" }, + "XNA": { + "coin": "XNA", + "type": "UTXO", + "name": "Neurai", + "coinpaprika_id": "xna-neurai", + "coingecko_id": "neurai", + "livecoinwatch_id": "XNA", + "explorer_url": "https://neuraiexplorer.com/", + "explorer_tx_url": "", + "explorer_address_url": "", + "supported": [], + "active": false, + "is_testnet": false, + "currently_enabled": false, + "wallet_only": false, + "sign_message_prefix": "Neurai Signed Message:\n", + "fname": "Neurai", + "rpcport": 19001, + "pubtype": 53, + "p2shtype": 117, + "wiftype": 128, + "segwit": true, + "txfee": 1000000, + "mm2": 1, + "required_confirmations": 5, + "avg_blocktime": 60, + "protocol": { + "type": "UTXO" + }, + "derivation_path": "m/44'/0'", + "links": { + "github": "https://github.com/NeuraiProject/Neurai", + "homepage": "https://neurai.org" + }, + "electrum": [ + { + "url": "electrumx1.neurai.top:50001", + "protocol": "SSL", + "contact": [ + { + "email": "alarm@neurai.org" + }, + { + "discord": "456566604809895947" + } + ], + "ws_url": "electrumx1.neurai.top:50002" + }, + { + "url": "electrumx2.neurai.top:50001", + "protocol": "SSL", + "contact": [ + { + "email": "alarm@neurai.org" + }, + { + "discord": "456566604809895947" + } + ], + "ws_url": "electrumx2.neurai.top:50002" + }, + { + "url": "electrumx3.neurai.top:50001", + "protocol": "SSL", + "contact": [ + { + "email": "alarm@neurai.org" + }, + { + "discord": "456566604809895947" + } + ], + "ws_url": "electrumx3.neurai.top:50002" + } + ], + "explorer_block_url": "block/" + }, "XPM": { "coin": "XPM", "type": "UTXO", @@ -39124,11 +35704,6 @@ }, "derivation_path": "m/44'/2137'", "electrum": [ - { - "url": "blackie.c3-soft.com:52138", - "protocol": "SSL", - "disable_cert_verification": false - }, { "url": "fulcrum.ergon.network:52138", "protocol": "SSL", @@ -39185,15 +35760,6 @@ "url": "https://node.komodo.earth:8080/binance", "gui_auth": true }, - { - "url": "http://bsc1.cipig.net:8655" - }, - { - "url": "http://bsc2.cipig.net:8655" - }, - { - "url": "http://bsc3.cipig.net:8655" - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -39246,24 +35812,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -39329,24 +35877,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -39412,7 +35942,10 @@ "url": "https://polygon-rpc.com" }, { - "url": "https://poly-rpc.gateway.pokt.network" + "url": "https://polygon.blockpi.network/v1/rpc/public" + }, + { + "url": "https://polygon.llamarpc.com" } ], "explorer_block_url": "block/", @@ -39456,15 +35989,6 @@ "url": "https://node.komodo.earth:8080/binance", "gui_auth": true }, - { - "url": "http://bsc1.cipig.net:8655" - }, - { - "url": "http://bsc2.cipig.net:8655" - }, - { - "url": "http://bsc3.cipig.net:8655" - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -39484,7 +36008,7 @@ "name": "VanillaCash", "coinpaprika_id": "xvc-vcash", "coingecko_id": "vcash", - "livecoinwatch_id": "", + "livecoinwatch_id": "XVC", "explorer_url": "https://chainz.cryptoid.info/xvc/", "explorer_tx_url": "tx.dws?", "explorer_address_url": "address.dws?", @@ -39511,10 +36035,6 @@ { "url": "electrumx1.vanillacash.info:50011", "ws_url": "electrumx1.vanillacash.info:50013" - }, - { - "url": "electrumx2.vanillacash.info:50011", - "ws_url": "electrumx2.vanillacash.info:50013" } ], "explorer_block_url": "block.dws?" @@ -39525,7 +36045,7 @@ "name": "VanillaCash", "coinpaprika_id": "xvc-vcash", "coingecko_id": "vcash", - "livecoinwatch_id": "", + "livecoinwatch_id": "XVC", "explorer_url": "https://bscscan.com/", "explorer_tx_url": "tx/", "explorer_address_url": "address/", @@ -39557,15 +36077,6 @@ "url": "https://node.komodo.earth:8080/binance", "gui_auth": true }, - { - "url": "http://bsc1.cipig.net:8655" - }, - { - "url": "http://bsc2.cipig.net:8655" - }, - { - "url": "http://bsc3.cipig.net:8655" - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -39585,7 +36096,7 @@ "name": "VanillaCash", "coinpaprika_id": "xvc-vcash", "coingecko_id": "vcash", - "livecoinwatch_id": "", + "livecoinwatch_id": "XVC", "explorer_url": "https://explorer.qtum.org/", "explorer_tx_url": "", "explorer_address_url": "", @@ -39628,8 +36139,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum1.cipig.net:30050" + ] }, { "url": "electrum2.cipig.net:10050", @@ -39640,8 +36150,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum2.cipig.net:30050" + ] }, { "url": "electrum3.cipig.net:10050", @@ -39652,8 +36161,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum3.cipig.net:30050" + ] }, { "url": "electrum1.cipig.net:20050", @@ -39665,7 +36173,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum1.cipig.net:30050" }, { "url": "electrum2.cipig.net:20050", @@ -39677,7 +36186,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum2.cipig.net:30050" }, { "url": "electrum3.cipig.net:20050", @@ -39689,7 +36199,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum3.cipig.net:30050" } ], "explorer_block_url": "block/" @@ -39774,15 +36285,6 @@ "url": "https://node.komodo.earth:8080/binance", "gui_auth": true }, - { - "url": "http://bsc1.cipig.net:8655" - }, - { - "url": "http://bsc2.cipig.net:8655" - }, - { - "url": "http://bsc3.cipig.net:8655" - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -39837,6 +36339,9 @@ }, { "url": "https://api.avax.network/ext/bc/C/rpc" + }, + { + "url": "https://avalanche.blockpi.network/v1/rpc/public" } ], "explorer_block_url": "block/" @@ -39879,15 +36384,6 @@ "url": "https://node.komodo.earth:8080/binance", "gui_auth": true }, - { - "url": "http://bsc1.cipig.net:8655" - }, - { - "url": "http://bsc2.cipig.net:8655" - }, - { - "url": "http://bsc3.cipig.net:8655" - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -39945,24 +36441,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -40025,6 +36503,9 @@ }, { "url": "https://rpc.fantom.network" + }, + { + "url": "https://rpc2.fantom.network" } ], "explorer_block_url": "block/" @@ -40116,7 +36597,10 @@ "url": "https://polygon-rpc.com" }, { - "url": "https://poly-rpc.gateway.pokt.network" + "url": "https://polygon.blockpi.network/v1/rpc/public" + }, + { + "url": "https://polygon.llamarpc.com" } ], "explorer_block_url": "block/" @@ -40159,15 +36643,6 @@ "url": "https://node.komodo.earth:8080/binance", "gui_auth": true }, - { - "url": "http://bsc1.cipig.net:8655" - }, - { - "url": "http://bsc2.cipig.net:8655" - }, - { - "url": "http://bsc3.cipig.net:8655" - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -40225,24 +36700,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -40314,8 +36771,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum1.cipig.net:30058" + ] }, { "url": "electrum2.cipig.net:10058", @@ -40326,8 +36782,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum2.cipig.net:30058" + ] }, { "url": "electrum3.cipig.net:10058", @@ -40338,8 +36793,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum3.cipig.net:30058" + ] }, { "url": "electrum1.cipig.net:20058", @@ -40351,7 +36805,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum1.cipig.net:30058" }, { "url": "electrum2.cipig.net:20058", @@ -40363,7 +36818,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum2.cipig.net:30058" }, { "url": "electrum3.cipig.net:20058", @@ -40375,7 +36831,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum3.cipig.net:30058" } ], "explorer_block_url": "block/" @@ -40423,8 +36880,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum1.cipig.net:30065" + ] }, { "url": "electrum2.cipig.net:10065", @@ -40435,8 +36891,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum2.cipig.net:30065" + ] }, { "url": "electrum3.cipig.net:10065", @@ -40447,8 +36902,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum3.cipig.net:30065" + ] }, { "url": "electrum1.cipig.net:20065", @@ -40460,7 +36914,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum1.cipig.net:30065" }, { "url": "electrum2.cipig.net:20065", @@ -40472,7 +36927,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum2.cipig.net:30065" }, { "url": "electrum3.cipig.net:20065", @@ -40484,7 +36940,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum3.cipig.net:30065" } ], "explorer_block_url": "block/" @@ -40528,15 +36985,6 @@ "url": "https://node.komodo.earth:8080/binance", "gui_auth": true }, - { - "url": "http://bsc1.cipig.net:8655" - }, - { - "url": "http://bsc2.cipig.net:8655" - }, - { - "url": "http://bsc3.cipig.net:8655" - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -40584,8 +37032,12 @@ "electrum": [ { "url": "207.180.252.200:50011", - "protocol": "TCP", - "ws_url": "207.180.252.200:50013" + "protocol": "TCP" + }, + { + "url": "zeta-seed-c.zetacoin.tech:50012", + "protocol": "SSL", + "disable_cert_verification": false } ], "explorer_block_url": "block.dws?" @@ -40628,15 +37080,6 @@ "url": "https://node.komodo.earth:8080/binance", "gui_auth": true }, - { - "url": "http://bsc1.cipig.net:8655" - }, - { - "url": "http://bsc2.cipig.net:8655" - }, - { - "url": "http://bsc3.cipig.net:8655" - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -40650,110 +37093,6 @@ "token_address_url": "tokentxns?a=", "explorer_block_url": "block/" }, - "ZILLA": { - "coin": "ZILLA", - "type": "Smart Chain", - "name": "ChainZilla", - "coinpaprika_id": "zilla-chainzilla", - "coingecko_id": "", - "livecoinwatch_id": "", - "explorer_url": "https://zilla.kmdexplorer.io/", - "explorer_tx_url": "", - "explorer_address_url": "", - "supported": [], - "active": false, - "is_testnet": false, - "currently_enabled": false, - "wallet_only": false, - "sign_message_prefix": "Komodo Signed Message:\n", - "asset": "ZILLA", - "fname": "ChainZilla", - "rpcport": 10041, - "mm2": 1, - "required_confirmations": 4, - "requires_notarization": false, - "avg_blocktime": 60, - "protocol": { - "type": "UTXO" - }, - "derivation_path": "m/44'/141'", - "trezor_coin": "Komodo", - "electrum": [ - { - "url": "electrum1.cipig.net:10028", - "contact": [ - { - "email": "cipi@komodoplatform.com" - }, - { - "discord": "cipi#4502" - } - ], - "ws_url": "electrum1.cipig.net:30028" - }, - { - "url": "electrum2.cipig.net:10028", - "contact": [ - { - "email": "cipi@komodoplatform.com" - }, - { - "discord": "cipi#4502" - } - ], - "ws_url": "electrum2.cipig.net:30028" - }, - { - "url": "electrum3.cipig.net:10028", - "contact": [ - { - "email": "cipi@komodoplatform.com" - }, - { - "discord": "cipi#4502" - } - ], - "ws_url": "electrum3.cipig.net:30028" - }, - { - "url": "electrum1.cipig.net:20028", - "protocol": "SSL", - "contact": [ - { - "email": "cipi@komodoplatform.com" - }, - { - "discord": "cipi#4502" - } - ] - }, - { - "url": "electrum2.cipig.net:20028", - "protocol": "SSL", - "contact": [ - { - "email": "cipi@komodoplatform.com" - }, - { - "discord": "cipi#4502" - } - ] - }, - { - "url": "electrum3.cipig.net:20028", - "protocol": "SSL", - "contact": [ - { - "email": "cipi@komodoplatform.com" - }, - { - "discord": "cipi#4502" - } - ] - } - ], - "explorer_block_url": "block/" - }, "ZRX-AVX20": { "coin": "ZRX-AVX20", "type": "AVX-20", @@ -40795,6 +37134,9 @@ }, { "url": "https://api.avax.network/ext/bc/C/rpc" + }, + { + "url": "https://avalanche.blockpi.network/v1/rpc/public" } ], "explorer_block_url": "block/" @@ -40843,24 +37185,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -40925,7 +37249,10 @@ "url": "https://polygon-rpc.com" }, { - "url": "https://poly-rpc.gateway.pokt.network" + "url": "https://polygon.blockpi.network/v1/rpc/public" + }, + { + "url": "https://polygon.llamarpc.com" } ], "explorer_block_url": "block/" @@ -40980,8 +37307,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum1.cipig.net:30050" + ] }, { "url": "electrum2.cipig.net:10050", @@ -40992,8 +37318,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum2.cipig.net:30050" + ] }, { "url": "electrum3.cipig.net:10050", @@ -41004,8 +37329,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum3.cipig.net:30050" + ] }, { "url": "electrum1.cipig.net:20050", @@ -41017,7 +37341,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum1.cipig.net:30050" }, { "url": "electrum2.cipig.net:20050", @@ -41029,7 +37354,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum2.cipig.net:30050" }, { "url": "electrum3.cipig.net:20050", @@ -41041,7 +37367,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum3.cipig.net:30050" } ], "explorer_block_url": "block/" @@ -41080,11 +37407,6 @@ }, "derivation_path": "m/44'/19167'", "electrum": [ - { - "url": "electrumx2.runonflux.io:50001", - "protocol": "TCP", - "ws_url": "electrumx2.runonflux.io:50004" - }, { "url": "electrumx.runonflux.io:50002", "protocol": "SSL", @@ -41133,24 +37455,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -41210,15 +37514,6 @@ "url": "https://node.komodo.earth:8080/binance", "gui_auth": true }, - { - "url": "http://bsc1.cipig.net:8655" - }, - { - "url": "http://bsc2.cipig.net:8655" - }, - { - "url": "http://bsc3.cipig.net:8655" - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -41282,8 +37577,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum1.cipig.net:30050" + ] }, { "url": "electrum2.cipig.net:10050", @@ -41294,8 +37588,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum2.cipig.net:30050" + ] }, { "url": "electrum3.cipig.net:10050", @@ -41306,8 +37599,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum3.cipig.net:30050" + ] }, { "url": "electrum1.cipig.net:20050", @@ -41319,7 +37611,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum1.cipig.net:30050" }, { "url": "electrum2.cipig.net:20050", @@ -41331,7 +37624,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum2.cipig.net:30050" }, { "url": "electrum3.cipig.net:20050", @@ -41343,7 +37637,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum3.cipig.net:30050" } ], "explorer_block_url": "block/" @@ -41398,8 +37693,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum1.cipig.net:30050" + ] }, { "url": "electrum2.cipig.net:10050", @@ -41410,8 +37704,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum2.cipig.net:30050" + ] }, { "url": "electrum3.cipig.net:10050", @@ -41422,8 +37715,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum3.cipig.net:30050" + ] }, { "url": "electrum1.cipig.net:20050", @@ -41435,7 +37727,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum1.cipig.net:30050" }, { "url": "electrum2.cipig.net:20050", @@ -41447,7 +37740,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum2.cipig.net:30050" }, { "url": "electrum3.cipig.net:20050", @@ -41459,7 +37753,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum3.cipig.net:30050" } ], "explorer_block_url": "block/" @@ -41514,8 +37809,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum1.cipig.net:30050" + ] }, { "url": "electrum2.cipig.net:10050", @@ -41526,8 +37820,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum2.cipig.net:30050" + ] }, { "url": "electrum3.cipig.net:10050", @@ -41538,8 +37831,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum3.cipig.net:30050" + ] }, { "url": "electrum1.cipig.net:20050", @@ -41551,7 +37843,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum1.cipig.net:30050" }, { "url": "electrum2.cipig.net:20050", @@ -41563,7 +37856,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum2.cipig.net:30050" }, { "url": "electrum3.cipig.net:20050", @@ -41575,7 +37869,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum3.cipig.net:30050" } ], "explorer_block_url": "block/" @@ -41630,8 +37925,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum1.cipig.net:30050" + ] }, { "url": "electrum2.cipig.net:10050", @@ -41642,8 +37936,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum2.cipig.net:30050" + ] }, { "url": "electrum3.cipig.net:10050", @@ -41654,8 +37947,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum3.cipig.net:30050" + ] }, { "url": "electrum1.cipig.net:20050", @@ -41667,7 +37959,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum1.cipig.net:30050" }, { "url": "electrum2.cipig.net:20050", @@ -41679,7 +37972,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum2.cipig.net:30050" }, { "url": "electrum3.cipig.net:20050", @@ -41691,7 +37985,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum3.cipig.net:30050" } ], "explorer_block_url": "block/" @@ -41746,8 +38041,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum1.cipig.net:30050" + ] }, { "url": "electrum2.cipig.net:10050", @@ -41758,8 +38052,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum2.cipig.net:30050" + ] }, { "url": "electrum3.cipig.net:10050", @@ -41770,8 +38063,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum3.cipig.net:30050" + ] }, { "url": "electrum1.cipig.net:20050", @@ -41783,7 +38075,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum1.cipig.net:30050" }, { "url": "electrum2.cipig.net:20050", @@ -41795,7 +38088,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum2.cipig.net:30050" }, { "url": "electrum3.cipig.net:20050", @@ -41807,7 +38101,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum3.cipig.net:30050" } ], "explorer_block_url": "block/" @@ -41862,8 +38157,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum1.cipig.net:30050" + ] }, { "url": "electrum2.cipig.net:10050", @@ -41874,8 +38168,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum2.cipig.net:30050" + ] }, { "url": "electrum3.cipig.net:10050", @@ -41886,8 +38179,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum3.cipig.net:30050" + ] }, { "url": "electrum1.cipig.net:20050", @@ -41899,7 +38191,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum1.cipig.net:30050" }, { "url": "electrum2.cipig.net:20050", @@ -41911,7 +38204,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum2.cipig.net:30050" }, { "url": "electrum3.cipig.net:20050", @@ -41923,7 +38217,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum3.cipig.net:30050" } ], "explorer_block_url": "block/" @@ -41978,8 +38273,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum1.cipig.net:30050" + ] }, { "url": "electrum2.cipig.net:10050", @@ -41990,8 +38284,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum2.cipig.net:30050" + ] }, { "url": "electrum3.cipig.net:10050", @@ -42002,8 +38295,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum3.cipig.net:30050" + ] }, { "url": "electrum1.cipig.net:20050", @@ -42015,7 +38307,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum1.cipig.net:30050" }, { "url": "electrum2.cipig.net:20050", @@ -42027,7 +38320,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum2.cipig.net:30050" }, { "url": "electrum3.cipig.net:20050", @@ -42039,7 +38333,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum3.cipig.net:30050" } ], "explorer_block_url": "block/" @@ -42094,8 +38389,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum1.cipig.net:30050" + ] }, { "url": "electrum2.cipig.net:10050", @@ -42106,8 +38400,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum2.cipig.net:30050" + ] }, { "url": "electrum3.cipig.net:10050", @@ -42118,8 +38411,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum3.cipig.net:30050" + ] }, { "url": "electrum1.cipig.net:20050", @@ -42131,7 +38423,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum1.cipig.net:30050" }, { "url": "electrum2.cipig.net:20050", @@ -42143,7 +38436,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum2.cipig.net:30050" }, { "url": "electrum3.cipig.net:20050", @@ -42155,7 +38449,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum3.cipig.net:30050" } ], "explorer_block_url": "block/" @@ -42204,24 +38499,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -42286,24 +38563,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -42369,24 +38628,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -42452,24 +38693,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -42530,24 +38753,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -42608,106 +38813,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "https://eth1.cipig.net:18555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "https://eth2.cipig.net:18555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "https://eth3.cipig.net:18555", - "contact": { - "email": "cipi@komodoplatform.com" - } - } - ], - "explorer_block_url": "block/" - }, - "CVT-ERC20": { - "coin": "CVT-ERC20", - "type": "ERC-20", - "name": "CyberVein", - "coinpaprika_id": "cvt-cybervein", - "coingecko_id": "cybervein", - "livecoinwatch_id": "CVT", - "explorer_url": "https://etherscan.io/", - "explorer_tx_url": "tx/", - "explorer_address_url": "address/", - "supported": [], - "active": false, - "is_testnet": false, - "currently_enabled": false, - "wallet_only": false, - "fname": "CyberVein", - "rpcport": 80, - "mm2": 1, - "chain_id": 1, - "required_confirmations": 3, - "avg_blocktime": 15, - "protocol": { - "type": "ERC20", - "protocol_data": { - "platform": "ETH", - "contract_address": "0xBe428c3867F05deA2A89Fc76a102b544eaC7f772" - } - }, - "decimals": 18, - "derivation_path": "m/44'/60'", - "trezor_coin": "CyberVein", - "links": { - "homepage": "http://www.cybervein.org" - }, - "contract_address": "0xBe428c3867F05deA2A89Fc76a102b544eaC7f772", - "parent_coin": "ETH", - "swap_contract_address": "0x24ABE4c71FC658C91313b6552cd40cD808b3Ea80", - "fallback_swap_contract": "0x8500AFc0bc5214728082163326C2FF0C73f4a871", - "nodes": [ - { - "url": "https://node.komodo.earth:8080/ethereum", - "gui_auth": true - }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -42729,13 +38834,13 @@ ], "explorer_block_url": "block/" }, - "DX-ERC20": { - "coin": "DX-ERC20", + "CVT-ERC20": { + "coin": "CVT-ERC20", "type": "ERC-20", - "name": "DxChain", - "coinpaprika_id": "dx-dxchain-token", - "coingecko_id": "dxchain", - "livecoinwatch_id": "DX", + "name": "CyberVein", + "coinpaprika_id": "cvt-cybervein", + "coingecko_id": "cybervein", + "livecoinwatch_id": "CVT", "explorer_url": "https://etherscan.io/", "explorer_tx_url": "tx/", "explorer_address_url": "address/", @@ -42744,7 +38849,7 @@ "is_testnet": false, "currently_enabled": false, "wallet_only": false, - "fname": "DxChain", + "fname": "CyberVein", "rpcport": 80, "mm2": 1, "chain_id": 1, @@ -42754,12 +38859,16 @@ "type": "ERC20", "protocol_data": { "platform": "ETH", - "contract_address": "0x973e52691176d36453868D9d86572788d27041A9" + "contract_address": "0xBe428c3867F05deA2A89Fc76a102b544eaC7f772" } }, "decimals": 18, "derivation_path": "m/44'/60'", - "contract_address": "0x973e52691176d36453868D9d86572788d27041A9", + "trezor_coin": "CyberVein", + "links": { + "homepage": "http://www.cybervein.org" + }, + "contract_address": "0xBe428c3867F05deA2A89Fc76a102b544eaC7f772", "parent_coin": "ETH", "swap_contract_address": "0x24ABE4c71FC658C91313b6552cd40cD808b3Ea80", "fallback_swap_contract": "0x8500AFc0bc5214728082163326C2FF0C73f4a871", @@ -42769,22 +38878,64 @@ "gui_auth": true }, { - "url": "http://eth1.cipig.net:8555", + "url": "https://eth1.cipig.net:18555", "contact": { "email": "cipi@komodoplatform.com" } }, { - "url": "http://eth2.cipig.net:8555", + "url": "https://eth2.cipig.net:18555", "contact": { "email": "cipi@komodoplatform.com" } }, { - "url": "http://eth3.cipig.net:8555", + "url": "https://eth3.cipig.net:18555", "contact": { "email": "cipi@komodoplatform.com" } + } + ], + "explorer_block_url": "block/" + }, + "DX-ERC20": { + "coin": "DX-ERC20", + "type": "ERC-20", + "name": "DxChain", + "coinpaprika_id": "dx-dxchain-token", + "coingecko_id": "dxchain", + "livecoinwatch_id": "DX", + "explorer_url": "https://etherscan.io/", + "explorer_tx_url": "tx/", + "explorer_address_url": "address/", + "supported": [], + "active": false, + "is_testnet": false, + "currently_enabled": false, + "wallet_only": false, + "fname": "DxChain", + "rpcport": 80, + "mm2": 1, + "chain_id": 1, + "required_confirmations": 3, + "avg_blocktime": 15, + "protocol": { + "type": "ERC20", + "protocol_data": { + "platform": "ETH", + "contract_address": "0x973e52691176d36453868D9d86572788d27041A9" + } + }, + "decimals": 18, + "derivation_path": "m/44'/60'", + "contract_address": "0x973e52691176d36453868D9d86572788d27041A9", + "parent_coin": "ETH", + "swap_contract_address": "0x24ABE4c71FC658C91313b6552cd40cD808b3Ea80", + "fallback_swap_contract": "0x8500AFc0bc5214728082163326C2FF0C73f4a871", + "nodes": [ + { + "url": "https://node.komodo.earth:8080/ethereum", + "gui_auth": true }, { "url": "https://eth1.cipig.net:18555", @@ -42851,24 +39002,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -42933,24 +39066,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -43054,24 +39169,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -43132,24 +39229,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -43214,24 +39293,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -43297,24 +39358,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -43375,24 +39418,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -43453,24 +39478,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -43535,24 +39542,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -43613,24 +39602,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -43691,24 +39662,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -43769,15 +39722,6 @@ "url": "https://node.komodo.earth:8080/binance", "gui_auth": true }, - { - "url": "http://bsc1.cipig.net:8655" - }, - { - "url": "http://bsc2.cipig.net:8655" - }, - { - "url": "http://bsc3.cipig.net:8655" - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -43830,24 +39774,6 @@ "url": "https://node.komodo.earth:8080/ethereum", "gui_auth": true }, - { - "url": "http://eth1.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth2.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, - { - "url": "http://eth3.cipig.net:8555", - "contact": { - "email": "cipi@komodoplatform.com" - } - }, { "url": "https://eth1.cipig.net:18555", "contact": { @@ -43908,15 +39834,6 @@ "url": "https://node.komodo.earth:8080/binance", "gui_auth": true }, - { - "url": "http://bsc1.cipig.net:8655" - }, - { - "url": "http://bsc2.cipig.net:8655" - }, - { - "url": "http://bsc3.cipig.net:8655" - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -43976,220 +39893,29 @@ "slp_prefix": "slptest", "electrum": [ { - "url": "tbch.loping.net:60002", + "url": "electroncash.de:50004", "protocol": "SSL", "contact": [ { "website": "https://1209k.com/bitcoin-eye/ele.php?chain=tbch" } ] - } - ], - "explorer_block_url": "block/" - }, - "UFO": { - "coin": "UFO", - "type": "UTXO", - "name": "Uniform Fiscal Object", - "coinpaprika_id": "ufo-uniform-fiscal-object", - "coingecko_id": "ufocoin", - "livecoinwatch_id": "UFO", - "explorer_url": "https://chainz.cryptoid.info/ufo/", - "explorer_tx_url": "tx.dws?", - "explorer_address_url": "address.dws?", - "supported": [], - "active": false, - "is_testnet": false, - "currently_enabled": false, - "wallet_only": false, - "sign_message_prefix": "UFO Signed Message:\n", - "fname": "Uniform Fiscal Object", - "rpcport": 8087, - "pubtype": 27, - "p2shtype": 68, - "wiftype": 155, - "txfee": 100000, - "segwit": true, - "bech32_hrp": "uf", - "mm2": 1, - "required_confirmations": 6, - "avg_blocktime": 1.5, - "protocol": { - "type": "UTXO" - }, - "derivation_path": "m/44'/202'", - "links": { - "github": "https://github.com/fiscalobject/ufo", - "homepage": "https://ufobject.com" - }, - "electrum": [ - { - "url": "electrumx1.ufobject.com:50001", - "protocol": "TCP", - "contact": [ - { - "email": "pr@ufobject.com" - } - ] - }, - { - "url": "electrumx4.ufobject.com:50001", - "protocol": "TCP", - "contact": [ - { - "email": "pr@ufobject.com" - } - ] - }, - { - "url": "electrumx5.ufobject.com:50001", - "protocol": "TCP", - "contact": [ - { - "email": "pr@ufobject.com" - } - ] - }, - { - "url": "seed1.ufocoin.net:50001", - "protocol": "TCP", - "contact": [ - { - "email": "pr@ufobject.com" - } - ] - } - ], - "explorer_block_url": "block.dws?" - }, - "UFO-segwit": { - "coin": "UFO-segwit", - "type": "UTXO", - "name": "Uniform Fiscal Object", - "coinpaprika_id": "ufo-uniform-fiscal-object", - "coingecko_id": "ufocoin", - "livecoinwatch_id": "UFO", - "explorer_url": "https://chainz.cryptoid.info/ufo/", - "explorer_tx_url": "tx.dws?", - "explorer_address_url": "address.dws?", - "supported": [], - "active": false, - "is_testnet": false, - "currently_enabled": false, - "wallet_only": false, - "sign_message_prefix": "UFO Signed Message:\n", - "fname": "Uniform Fiscal Object", - "rpcport": 8087, - "pubtype": 27, - "p2shtype": 68, - "wiftype": 155, - "txfee": 100000, - "segwit": true, - "bech32_hrp": "uf", - "address_format": { - "format": "segwit" - }, - "orderbook_ticker": "UFO", - "mm2": 1, - "required_confirmations": 6, - "avg_blocktime": 1.5, - "protocol": { - "type": "UTXO" - }, - "derivation_path": "m/44'/202'", - "links": { - "github": "https://github.com/fiscalobject/ufo", - "homepage": "https://ufobject.com" - }, - "electrum": [ - { - "url": "electrumx1.ufobject.com:50001", - "protocol": "TCP", - "contact": [ - { - "email": "pr@ufobject.com" - } - ] - }, - { - "url": "electrumx4.ufobject.com:50001", - "protocol": "TCP", - "contact": [ - { - "email": "pr@ufobject.com" - } - ] - }, - { - "url": "electrumx5.ufobject.com:50001", - "protocol": "TCP", - "contact": [ - { - "email": "pr@ufobject.com" - } - ] }, { - "url": "seed1.ufocoin.net:50001", - "protocol": "TCP", - "contact": [ - { - "email": "pr@ufobject.com" - } - ] - } - ], - "explorer_block_url": "block.dws?" - }, - "USBL": { - "coin": "USBL", - "type": "UTXO", - "name": "Balanced Dollar", - "coinpaprika_id": "", - "coingecko_id": "", - "livecoinwatch_id": "", - "explorer_url": "https://softbalanced.com:3001/insight/", - "explorer_tx_url": "tx/", - "explorer_address_url": "address/", - "supported": [], - "active": false, - "is_testnet": false, - "currently_enabled": false, - "wallet_only": false, - "fname": "Balanced Dollar", - "confpath": "USERHOME/.bitdollar/bitdollar.conf", - "rpcport": 35573, - "pubtype": 65, - "p2shtype": 66, - "wiftype": 193, - "txfee": 0, - "mm2": 1, - "required_confirmations": 2, - "avg_blocktime": 150, - "protocol": { - "type": "UTXO" - }, - "electrum": [ - { - "url": "swap.softbalanced.com:50001", + "url": "electrs.electroncash.de:60002", + "protocol": "SSL", "contact": [ { - "email": "dev@softbalanced.com" - }, - { - "discord": "softbalanced#4045" + "website": "https://1209k.com/bitcoin-eye/ele.php?chain=tbch" } ] }, { - "url": "swap.softbalanced.com:50002", + "url": "tbch.loping.net:60002", "protocol": "SSL", "contact": [ { - "email": "dev@softbalanced.com" - }, - { - "discord": "softbalanced#4045" + "website": "https://1209k.com/bitcoin-eye/ele.php?chain=tbch" } ] } @@ -44275,6 +40001,20 @@ } ] }, + { + "url": "electrumx2.cointest.com:50001", + "contact": [ + { + "email": "protocol@whive.io" + }, + { + "discord": "whiveio#9340" + }, + { + "twitter": "whiveio" + } + ] + }, { "url": "electrumx1.cointest.com:50002", "protocol": "SSL", @@ -44289,6 +40029,21 @@ "twitter": "whiveio" } ] + }, + { + "url": "electrumx2.cointest.com:50002", + "protocol": "SSL", + "contact": [ + { + "email": "protocol@whive.io" + }, + { + "discord": "whiveio#9340" + }, + { + "twitter": "whiveio" + } + ] } ], "explorer_block_url": "block/" @@ -44343,6 +40098,20 @@ } ] }, + { + "url": "electrumx2.cointest.com:50001", + "contact": [ + { + "email": "protocol@whive.io" + }, + { + "discord": "whiveio#9340" + }, + { + "twitter": "whiveio" + } + ] + }, { "url": "electrumx1.cointest.com:50002", "protocol": "SSL", @@ -44357,6 +40126,21 @@ "twitter": "whiveio" } ] + }, + { + "url": "electrumx2.cointest.com:50002", + "protocol": "SSL", + "contact": [ + { + "email": "protocol@whive.io" + }, + { + "discord": "whiveio#9340" + }, + { + "twitter": "whiveio" + } + ] } ], "explorer_block_url": "block/" @@ -44470,15 +40254,6 @@ "url": "https://node.komodo.earth:8080/binance", "gui_auth": true }, - { - "url": "http://bsc1.cipig.net:8655" - }, - { - "url": "http://bsc2.cipig.net:8655" - }, - { - "url": "http://bsc3.cipig.net:8655" - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -44532,8 +40307,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum1.cipig.net:30002" + ] }, { "url": "electrum2.cipig.net:10002", @@ -44544,8 +40318,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum2.cipig.net:30002" + ] }, { "url": "electrum3.cipig.net:10002", @@ -44556,8 +40329,7 @@ { "discord": "cipi#4502" } - ], - "ws_url": "electrum3.cipig.net:30002" + ] }, { "url": "electrum1.cipig.net:20002", @@ -44569,7 +40341,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum1.cipig.net:30002" }, { "url": "electrum2.cipig.net:20002", @@ -44581,7 +40354,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum2.cipig.net:30002" }, { "url": "electrum3.cipig.net:20002", @@ -44593,7 +40367,8 @@ { "discord": "cipi#4502" } - ] + ], + "ws_url": "electrum3.cipig.net:30002" } ], "explorer_block_url": "block/" @@ -44657,8 +40432,7 @@ { "discord": "smk#7640" } - ], - "ws_url": "zombie.dragonhound.info:30058" + ] }, { "url": "zombie.dragonhound.info:10133", @@ -44669,8 +40443,7 @@ { "discord": "smk#7640" } - ], - "ws_url": "zombie.dragonhound.info:30059" + ] }, { "url": "zombie.dragonhound.info:20033", @@ -44739,15 +40512,6 @@ "url": "https://node.komodo.earth:8080/binance", "gui_auth": true }, - { - "url": "http://bsc1.cipig.net:8655" - }, - { - "url": "http://bsc2.cipig.net:8655" - }, - { - "url": "http://bsc3.cipig.net:8655" - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -44942,15 +40706,6 @@ "url": "https://node.komodo.earth:8080/binance", "gui_auth": true }, - { - "url": "http://bsc1.cipig.net:8655" - }, - { - "url": "http://bsc2.cipig.net:8655" - }, - { - "url": "http://bsc3.cipig.net:8655" - }, { "url": "https://bsc1.cipig.net:18655" }, @@ -45067,6 +40822,9 @@ } }, "rpc_urls": [ + { + "url": "https://rpc.osmosis.zone/" + }, { "url": "https://osmosis-mainnet-rpc.allthatnode.com:26657/" } @@ -45151,13 +40909,18 @@ }, "electrum": [ { - "url": "electrumx1.mazacha.in:50001", + "url": "electrum.seed.mazanode.com:50001", "contact": [ { - "email": "contact@mazacoin.org" - }, + "email": "brian@mazacoin.org" + } + ] + }, + { + "url": "electrumx.mazanode.com:50001", + "contact": [ { - "discord": "sherm77#5923" + "email": "brian@mazacoin.org" } ] }, @@ -45173,17 +40936,24 @@ ] }, { - "url": "electrumx1.mazacha.in:50002", + "url": "electrum.seed.mazanode.com:50002", "protocol": "SSL", "contact": [ { - "email": "contact@mazacoin.org" - }, + "email": "brian@mazacoin.org" + } + ], + "ws_url": "electrum.seed.mazanode.com:50005" + }, + { + "url": "electrumx.mazanode.com:50002", + "protocol": "SSL", + "contact": [ { - "discord": "sherm77#5923" + "email": "brian@mazacoin.org" } ], - "ws_url": "electrumx1.mazacha.in:50005" + "ws_url": "electrumx.mazanode.com:50005" }, { "url": "electrumx2.mazacha.in:50002", @@ -45375,5 +41145,53 @@ } ], "explorer_block_url": "block/" + }, + "BKC": { + "coin": "BKC", + "type": "UTXO", + "name": "Bunkercoin", + "coinpaprika_id": "bkc-bunkercoin", + "coingecko_id": "", + "livecoinwatch_id": "", + "explorer_url": "https://bkcexplorer.bunker.mt/", + "explorer_tx_url": "", + "explorer_address_url": "", + "supported": [], + "active": false, + "is_testnet": false, + "currently_enabled": false, + "wallet_only": false, + "sign_message_prefix": "Bunkercoin Signed Message:\n", + "fname": "Bunkercoin", + "rpcport": 22555, + "pubtype": 25, + "p2shtype": 22, + "wiftype": 158, + "txfee": 1000000, + "force_min_relay_fee": true, + "dust": 1000000, + "mm2": 1, + "required_confirmations": 10, + "avg_blocktime": 60, + "protocol": { + "type": "UTXO" + }, + "derivation_path": "m/44'/3'", + "links": { + "github": "https://github.com/bunkercoin/bunkercoin", + "homepage": "https://bunkercoin.org" + }, + "electrum": [ + { + "url": "bunkerelectrum.bunker.mt:50001", + "protocol": "TCP", + "contact": [ + { + "discord": "bunkermatty#5308" + } + ] + } + ], + "explorer_block_url": "block/" } } \ No newline at end of file diff --git a/coins_ci.json b/coins_ci.json index 128bed390..8868624db 100644 --- a/coins_ci.json +++ b/coins_ci.json @@ -1,3 +1,3 @@ { - "coins_repo_commit": "536fe1bf42f81cf60dd4705234816ed7d6485459" + "coins_repo_commit": "8cb5983ab858dde915e8de3175c15cd0f5572356" } \ No newline at end of file diff --git a/ios/Flutter/AppFrameworkInfo.plist b/ios/Flutter/AppFrameworkInfo.plist index 8d4492f97..7c5696400 100644 --- a/ios/Flutter/AppFrameworkInfo.plist +++ b/ios/Flutter/AppFrameworkInfo.plist @@ -21,6 +21,6 @@ CFBundleVersion 1.0 MinimumOSVersion - 9.0 + 12.0 diff --git a/ios/Podfile b/ios/Podfile index c3e7c65e7..7822d7af5 100644 --- a/ios/Podfile +++ b/ios/Podfile @@ -4,7 +4,7 @@ # CocoaPods analytics sends network stats synchronously affecting flutter build latency. ENV['COCOAPODS_DISABLE_STATS'] = 'true' -platform :ios, '11.0' +platform :ios, '12.0' project 'Runner', { 'Debug' => :debug, @@ -42,5 +42,8 @@ end post_install do |installer| installer.pods_project.targets.each do |target| flutter_additional_ios_build_settings(target) + target.build_configurations.each do |config| + config.build_settings['IPHONEOS_DEPLOYMENT_TARGET'] = '12.0' + end end end diff --git a/ios/Podfile.lock b/ios/Podfile.lock index 743ac6485..f660c0d86 100644 --- a/ios/Podfile.lock +++ b/ios/Podfile.lock @@ -43,12 +43,14 @@ PODS: - DKImagePickerController/PhotoGallery - Flutter - Flutter (1.0.0) + - flutter_local_notifications (0.0.1): + - Flutter - flutter_secure_storage (3.3.1): - Flutter - FMDB (2.7.5): - FMDB/standard (= 2.7.5) - FMDB/standard (2.7.5) - - GoogleDataTransport (9.2.0): + - GoogleDataTransport (9.2.5): - GoogleUtilities/Environment (~> 7.7) - nanopb (< 2.30910.0, >= 2.30908.0) - PromisesObjC (< 3.0, >= 1.2) @@ -69,11 +71,11 @@ PODS: - GoogleToolboxForMac/Defines (= 2.3.2) - "GoogleToolboxForMac/NSString+URLArguments (= 2.3.2)" - "GoogleToolboxForMac/NSString+URLArguments (2.3.2)" - - GoogleUtilities/Environment (7.8.0): + - GoogleUtilities/Environment (7.11.5): - PromisesObjC (< 3.0, >= 1.2) - - GoogleUtilities/Logger (7.8.0): + - GoogleUtilities/Logger (7.11.5): - GoogleUtilities/Environment - - GoogleUtilities/UserDefaults (7.8.0): + - GoogleUtilities/UserDefaults (7.11.5): - GoogleUtilities/Logger - GoogleUtilitiesComponents (1.1.0): - GoogleUtilities/Logger @@ -114,12 +116,12 @@ PODS: - Flutter - path_provider_ios (0.0.1): - Flutter - - PromisesObjC (2.1.1) - - Protobuf (3.21.7) + - PromisesObjC (2.3.1) + - Protobuf (3.24.4) - ReachabilitySwift (5.0.0) - - SDWebImage (5.13.4): - - SDWebImage/Core (= 5.13.4) - - SDWebImage/Core (5.13.4) + - SDWebImage (5.18.3): + - SDWebImage/Core (= 5.18.3) + - SDWebImage/Core (5.18.3) - share (0.0.1): - Flutter - shared_preferences_ios (0.0.1): @@ -127,7 +129,7 @@ PODS: - sqflite (0.0.2): - Flutter - FMDB (>= 2.7.5) - - SwiftyGif (5.4.3) + - SwiftyGif (5.4.4) - url_launcher_ios (0.0.1): - Flutter @@ -138,6 +140,7 @@ DEPENDENCIES: - dargon2_flutter_mobile (from `.symlinks/plugins/dargon2_flutter_mobile/ios`) - file_picker (from `.symlinks/plugins/file_picker/ios`) - Flutter (from `Flutter`) + - flutter_local_notifications (from `.symlinks/plugins/flutter_local_notifications/ios`) - flutter_secure_storage (from `.symlinks/plugins/flutter_secure_storage/ios`) - integration_test (from `.symlinks/plugins/integration_test/ios`) - local_auth (from `.symlinks/plugins/local_auth/ios`) @@ -150,7 +153,7 @@ DEPENDENCIES: - url_launcher_ios (from `.symlinks/plugins/url_launcher_ios/ios`) SPEC REPOS: - https://github.com/CocoaPods/Specs: + https://github.com/CocoaPods/Specs.git: - DKImagePickerController - DKPhotoGallery - FMDB @@ -184,6 +187,8 @@ EXTERNAL SOURCES: :path: ".symlinks/plugins/file_picker/ios" Flutter: :path: Flutter + flutter_local_notifications: + :path: ".symlinks/plugins/flutter_local_notifications/ios" flutter_secure_storage: :path: ".symlinks/plugins/flutter_secure_storage/ios" integration_test: @@ -214,12 +219,13 @@ SPEC CHECKSUMS: DKPhotoGallery: fdfad5125a9fdda9cc57df834d49df790dbb4179 file_picker: 3e6c3790de664ccf9b882732d9db5eaf6b8d4eb1 Flutter: 50d75fe2f02b26cc09d224853bb45737f8b3214a + flutter_local_notifications: 0c0b1ae97e741e1521e4c1629a459d04b9aec743 flutter_secure_storage: 7953c38a04c3fdbb00571bcd87d8e3b5ceb9daec FMDB: 2ce00b547f966261cd18927a3ddb07cb6f3db82a - GoogleDataTransport: 1c8145da7117bd68bbbed00cf304edb6a24de00f + GoogleDataTransport: 54dee9d48d14580407f8f5fbf2f496e92437a2f2 GoogleMLKit: 755661c46990a85e42278015f26400286d98ad95 GoogleToolboxForMac: 8bef7c7c5cf7291c687cf5354f39f9db6399ad34 - GoogleUtilities: 1d20a6ad97ef46f67bbdec158ce00563a671ebb7 + GoogleUtilities: 13e2c67ede716b8741c7989e26893d151b2b2084 GoogleUtilitiesComponents: 679b2c881db3b615a2777504623df6122dd20afe GTMSessionFetcher: 5595ec75acf5be50814f81e9189490412bad82ba integration_test: a1e7d09bd98eca2fc37aefd79d4f41ad37bdbbe5 @@ -232,16 +238,16 @@ SPEC CHECKSUMS: nanopb: b552cce312b6c8484180ef47159bc0f65a1f0431 package_info_plus: 6c92f08e1f853dc01228d6f553146438dafcd14e path_provider_ios: 14f3d2fd28c4fdb42f44e0f751d12861c43cee02 - PromisesObjC: ab77feca74fa2823e7af4249b8326368e61014cb - Protobuf: f4128517d7a42302e106cc3afe614ee3a7513e94 + PromisesObjC: c50d2056b5253dadbd6c2bea79b0674bd5a52fa4 + Protobuf: 351e9022fe13a6e2af00e9aefc22077cb88520f8 ReachabilitySwift: 985039c6f7b23a1da463388634119492ff86c825 - SDWebImage: e5cc87bf736e60f49592f307bdf9e157189298a3 + SDWebImage: 96e0c18ef14010b7485210e92fac888587ebb958 share: 0b2c3e82132f5888bccca3351c504d0003b3b410 shared_preferences_ios: 548a61f8053b9b8a49ac19c1ffbc8b92c50d68ad sqflite: 6d358c025f5b867b29ed92fc697fd34924e11904 - SwiftyGif: 6c3eafd0ce693cad58bb63d2b2fb9bacb8552780 + SwiftyGif: 93a1cc87bf3a51916001cf8f3d63835fb64c819f url_launcher_ios: 839c58cdb4279282219f5e248c3321761ff3c4de -PODFILE CHECKSUM: a42efe144b04b066b1a2cc66631f6dbf342cbc7f +PODFILE CHECKSUM: 06ac96a3a1292619ed9b320967fe8c449e23cc74 -COCOAPODS: 1.11.3 +COCOAPODS: 1.13.0 diff --git a/ios/Runner.xcodeproj/project.pbxproj b/ios/Runner.xcodeproj/project.pbxproj index 786b69a91..d142f8360 100644 --- a/ios/Runner.xcodeproj/project.pbxproj +++ b/ios/Runner.xcodeproj/project.pbxproj @@ -3,7 +3,7 @@ archiveVersion = 1; classes = { }; - objectVersion = 50; + objectVersion = 54; objects = { /* Begin PBXBuildFile section */ @@ -201,6 +201,7 @@ 97C146E61CF9000F007C117D /* Project object */ = { isa = PBXProject; attributes = { + BuildIndependentTargetsInParallel = YES; LastUpgradeCheck = 1300; ORGANIZATIONNAME = "The Chromium Authors"; TargetAttributes = { @@ -289,6 +290,7 @@ "${BUILT_PRODUCTS_DIR}/connectivity_plus/connectivity_plus.framework", "${BUILT_PRODUCTS_DIR}/dargon2_flutter_mobile/dargon2_flutter_mobile.framework", "${BUILT_PRODUCTS_DIR}/file_picker/file_picker.framework", + "${BUILT_PRODUCTS_DIR}/flutter_local_notifications/flutter_local_notifications.framework", "${BUILT_PRODUCTS_DIR}/flutter_secure_storage/flutter_secure_storage.framework", "${BUILT_PRODUCTS_DIR}/integration_test/integration_test.framework", "${BUILT_PRODUCTS_DIR}/local_auth/local_auth.framework", @@ -319,6 +321,7 @@ "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/connectivity_plus.framework", "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/dargon2_flutter_mobile.framework", "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/file_picker.framework", + "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/flutter_local_notifications.framework", "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/flutter_secure_storage.framework", "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/integration_test.framework", "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/local_auth.framework", @@ -411,6 +414,7 @@ isa = XCBuildConfiguration; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES; CLANG_ANALYZER_NONNULL = YES; CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; CLANG_CXX_LIBRARY = "libc++"; @@ -430,6 +434,7 @@ CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; CLANG_WARN_STRICT_PROTOTYPES = YES; CLANG_WARN_SUSPICIOUS_MOVE = YES; @@ -440,6 +445,7 @@ DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; ENABLE_NS_ASSERTIONS = NO; ENABLE_STRICT_OBJC_MSGSEND = YES; + ENABLE_USER_SCRIPT_SANDBOXING = NO; GCC_C_LANGUAGE_STANDARD = gnu99; GCC_NO_COMMON_BLOCKS = YES; GCC_WARN_64_TO_32_BIT_CONVERSION = YES; @@ -448,7 +454,7 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 11.0; + IPHONEOS_DEPLOYMENT_TARGET = 12.0; MTL_ENABLE_DEBUG_INFO = NO; SDKROOT = iphoneos; TARGETED_DEVICE_FAMILY = "1,2"; @@ -472,8 +478,11 @@ "$(PROJECT_DIR)/Flutter", ); INFOPLIST_FILE = Runner/Info.plist; - IPHONEOS_DEPLOYMENT_TARGET = 11.0; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; + IPHONEOS_DEPLOYMENT_TARGET = 12.0; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + ); LIBRARY_SEARCH_PATHS = ( "$(inherited)", "$(PROJECT_DIR)/Flutter", @@ -493,6 +502,7 @@ isa = XCBuildConfiguration; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES; CLANG_ANALYZER_NONNULL = YES; CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; CLANG_CXX_LIBRARY = "libc++"; @@ -512,6 +522,7 @@ CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; CLANG_WARN_STRICT_PROTOTYPES = YES; CLANG_WARN_SUSPICIOUS_MOVE = YES; @@ -522,6 +533,7 @@ DEBUG_INFORMATION_FORMAT = dwarf; ENABLE_STRICT_OBJC_MSGSEND = YES; ENABLE_TESTABILITY = YES; + ENABLE_USER_SCRIPT_SANDBOXING = NO; GCC_C_LANGUAGE_STANDARD = gnu99; GCC_DYNAMIC_NO_PIC = NO; GCC_NO_COMMON_BLOCKS = YES; @@ -536,7 +548,7 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 11.0; + IPHONEOS_DEPLOYMENT_TARGET = 12.0; MTL_ENABLE_DEBUG_INFO = YES; ONLY_ACTIVE_ARCH = YES; SDKROOT = iphoneos; @@ -548,6 +560,7 @@ isa = XCBuildConfiguration; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES; CLANG_ANALYZER_NONNULL = YES; CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; CLANG_CXX_LIBRARY = "libc++"; @@ -567,6 +580,7 @@ CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; CLANG_WARN_STRICT_PROTOTYPES = YES; CLANG_WARN_SUSPICIOUS_MOVE = YES; @@ -577,6 +591,7 @@ DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; ENABLE_NS_ASSERTIONS = NO; ENABLE_STRICT_OBJC_MSGSEND = YES; + ENABLE_USER_SCRIPT_SANDBOXING = NO; GCC_C_LANGUAGE_STANDARD = gnu99; GCC_NO_COMMON_BLOCKS = YES; GCC_WARN_64_TO_32_BIT_CONVERSION = YES; @@ -585,9 +600,10 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 11.0; + IPHONEOS_DEPLOYMENT_TARGET = 12.0; MTL_ENABLE_DEBUG_INFO = NO; SDKROOT = iphoneos; + SWIFT_COMPILATION_MODE = wholemodule; SWIFT_OPTIMIZATION_LEVEL = "-Owholemodule"; TARGETED_DEVICE_FAMILY = "1,2"; VALIDATE_PRODUCT = YES; @@ -611,8 +627,11 @@ "$(PROJECT_DIR)/Flutter", ); INFOPLIST_FILE = Runner/Info.plist; - IPHONEOS_DEPLOYMENT_TARGET = 11.0; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; + IPHONEOS_DEPLOYMENT_TARGET = 12.0; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + ); LIBRARY_SEARCH_PATHS = ( "$(inherited)", "$(PROJECT_DIR)/Flutter", @@ -646,8 +665,11 @@ "$(PROJECT_DIR)/Flutter", ); INFOPLIST_FILE = Runner/Info.plist; - IPHONEOS_DEPLOYMENT_TARGET = 11.0; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; + IPHONEOS_DEPLOYMENT_TARGET = 12.0; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + ); LIBRARY_SEARCH_PATHS = ( "$(inherited)", "$(PROJECT_DIR)/Flutter", diff --git a/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme b/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme index c90868970..bceab2c63 100644 --- a/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme +++ b/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme @@ -27,8 +27,6 @@ selectedDebuggerIdentifier = "" selectedLauncherIdentifier = "Xcode.IDEFoundation.Launcher.PosixSpawn" shouldUseLaunchSchemeArgsEnv = "YES"> - - - - + + - - ko uk - UIApplicationSceneManifest - - UISceneConfigurations - - CFBundleName komodo_dex CFBundlePackageType @@ -78,6 +73,11 @@ Location services are not required by this application, please contact the app provider if you see this message. NSPhotoLibraryUsageDescription Photo Library general access is required for backup functionality. + UIApplicationSceneManifest + + UISceneConfigurations + + UIBackgroundModes audio diff --git a/lib/app_config/app_config.dart b/lib/app_config/app_config.dart index 0bc0b0e2b..57d6eadc2 100644 --- a/lib/app_config/app_config.dart +++ b/lib/app_config/app_config.dart @@ -1,3 +1,5 @@ +import 'dart:io'; + import 'package:flutter/material.dart'; import '../model/feed_provider.dart'; @@ -10,7 +12,7 @@ class AppConfig { int get maxCoinEnabledIOS => 20; String get transactionWarningInfoUrl => - 'https://atomicdex.io/en/blog/preventing-address-poisoning'; + 'https://komodoplatform.com/en/blog/preventing-address-poisoning'; // number of decimal places for trade amount input fields int get tradeFormPrecision => 8; @@ -18,6 +20,28 @@ class AppConfig { int get batteryLevelLow => 30; // show warnign on swap confirmation page int get batteryLevelCritical => 20; // swaps disabled + final String minDartVersion = '2.14.0'; + + bool get isDartSdkVersionSupported { + final currentVersion = RegExp(r'(\d+\.\d+\.\d+)') + .firstMatch(Platform.version) + ?.group(1) + ?.split('.') + ?.map((e) => int.parse(e)) + ?.toList(); + + final minVersion = + minDartVersion.split('.').map((e) => int.parse(e)).toList(); + + if (currentVersion == null) return false; + + for (var i = 0; i < minVersion.length; i++) { + if (currentVersion[i] < minVersion[i]) return false; + } + + return true; + } + // Brand config below String get appName => 'Komodo Wallet'; @@ -77,8 +101,14 @@ class AppConfig { 'OLD', 'IBC_IRIS', 'segwit', + 'ZHTLC', ]; - List get defaultTestCoins => ['RICK', 'MORTY', 'DOC', 'MARTY']; + List get defaultTestCoins => [ + 'DOC', + 'MARTY', + 'ZOMBIE', + ]; + Map get allProtocolNames => { 'utxo': 'UTXO', 'smartChain': 'Smart Chain', @@ -106,6 +136,7 @@ class AppConfig { Map> standardFees = { 'utxo': [0], 'smartChain': [0], + 'zhtlc': [0], 'erc': [0, 0], 'bep': [0, 0], 'qrc': [0, 0], diff --git a/lib/app_config/coin_converter.dart b/lib/app_config/coin_converter.dart index f524304e5..24b0f6861 100644 --- a/lib/app_config/coin_converter.dart +++ b/lib/app_config/coin_converter.dart @@ -1,14 +1,13 @@ import 'dart:convert'; import 'package:flutter/services.dart'; +import 'package:komodo_dex/app_config/coins_updater.dart'; import '../model/coin_type.dart'; import '../utils/utils.dart'; Future> convertCoinsConfigToAppConfig() async { - final String coins = - await rootBundle.loadString('assets/coins_config.json', cache: false); - // 561 coins + final String coins = await CoinUpdater().getConfig(); Map coinsResponse = jsonDecode(coins); List allCoinsList = []; diff --git a/lib/app_config/coins_updater.dart b/lib/app_config/coins_updater.dart new file mode 100644 index 000000000..ecf8fbb3a --- /dev/null +++ b/lib/app_config/coins_updater.dart @@ -0,0 +1,157 @@ +import 'dart:async'; +import 'dart:io'; +import 'dart:isolate'; +import 'package:flutter/services.dart'; +import 'package:http/http.dart' as http; +import 'package:komodo_dex/utils/log.dart'; +import 'package:path_provider/path_provider.dart'; + +/// Provides methods for fetching coin data either from local assets or a remote Git repository. +/// +/// `CoinUpdater` uses a singleton pattern to ensure a single instance throughout the app's lifecycle. +/// It checks first if there is a cached version of the data. If not, it uses the bundled asset. +/// In the background, it tries to fetch the most recent data and cache it for future launches. +/// +/// Usage: +/// ```dart +/// final coinUpdater = CoinUpdater(); +/// final config = await coinUpdater.getConfig(); +/// final coins = await coinUpdater.getCoins(); +/// ``` +/// +/// NB! [coinsRepoBranch] and [coinsRepoUrl] only take effect for the next +/// launch of the app. So 2x restart is needed to switch to a different branch. +/// +/// TODO: Implement coin icon fetching. +class CoinUpdater { + factory CoinUpdater() => _instance; + + CoinUpdater._internal(); + + static final CoinUpdater _instance = CoinUpdater._internal(); + + /// The branch of the coins repository to use. + //! QA: change branch name here and then restart twice after logging in. + static const coinsRepoBranch = 'master'; + + static const coinsRepoUrl = + 'https://raw.githubusercontent.com/KomodoPlatform/coins'; + + static const isUpdateEnabled = true; + + final String localAssetPathConfig = 'assets/coins_config.json'; + final String localAssetPathCoins = 'assets/coins.json'; + + String get remotePathConfig => + '$coinsRepoUrl/$coinsRepoBranch/utils/coins_config.json'; + String get remotePathCoins => '$coinsRepoUrl/$coinsRepoBranch/coins'; + + String _cachedConfig; + String _cachedCoins; + + Future _fetchAsset(String path) async { + return await rootBundle.loadString(path); + } + + Future _getLocalFile(String filename) async { + final directory = await getApplicationDocumentsDirectory(); + return File('${directory.path}/$filename'); + } + + Future _fetchOrCache( + String localPath, + String remoteUrl, + String cacheName, + String cacheProperty, + ) async { + try { + if (cacheProperty != null) { + return cacheProperty; + } + + File cacheFile = await _getLocalFile(cacheName); + + final cacheFileExists = await cacheFile.exists(); + + if (isUpdateEnabled) { + scheduleMicrotask( + () => _updateCacheInBackground(remoteUrl, cacheFile), + ); + } + + if (cacheFileExists) { + cacheProperty = await cacheFile.readAsString(); + + return cacheProperty; + } else { + String localData = await _fetchAsset(localPath); + cacheProperty = localData; + return localData; + } + } catch (e) { + // If there's an error, first try to return the cached value, + // if that's null too, then fall back to the local asset. + if (cacheProperty != null) { + return cacheProperty; + } else { + return await _fetchAsset(localPath); + } + } + } + + void _updateCacheInBackground(String remoteUrl, File cacheFile) async { + final ReceivePort receivePort = ReceivePort(); + + try { + await Isolate.spawn( + _isolateEntry, + [remoteUrl, cacheFile.path], + onExit: receivePort.sendPort, + errorsAreFatal: false, + ); + receivePort.listen((data) { + // Close the receive port when the isolate is done + receivePort.close(); + + Log( + 'CoinUpdater', + 'Coin updater updated coins to latest commit on branch ' + '$coinsRepoBranch from $coinsRepoUrl. \n $remoteUrl', + ); + }); + } catch (e) { + Log('CoinUpdater', 'Error updating coins: $e'); + } + } + + static void _isolateEntry(List data) async { + final String remoteUrl = data[0]; + final String filePath = data[1]; + + final response = await http.get(Uri.parse(remoteUrl)); + if (response.statusCode == 200) { + final file = File(filePath); + file.writeAsString(response.body); + } + } + + Future getConfig() async { + _cachedConfig = await _fetchOrCache( + localAssetPathConfig, + remotePathConfig, + 'coins_config_cache.json', + _cachedConfig, + ); + return _cachedConfig; + } + + Future getCoins() async { + _cachedCoins = await _fetchOrCache( + localAssetPathCoins, + remotePathCoins, + 'coins_cache.json', + _cachedCoins, + ); + return _cachedCoins; + } +} diff --git a/lib/blocs/coins_bloc.dart b/lib/blocs/coins_bloc.dart index 19c7edeca..6824493bf 100644 --- a/lib/blocs/coins_bloc.dart +++ b/lib/blocs/coins_bloc.dart @@ -72,6 +72,9 @@ class CoinsBloc implements BlocBase { dynamic transactions; + Transactions get transactionsOrNull => + transactions is Transactions ? transactions : null; + // Streams to handle the list coin final StreamController _transactionsController = StreamController.broadcast(); @@ -314,6 +317,10 @@ class CoinsBloc implements BlocBase { .removeWhere((CoinBalance item) => coin.abbr == item.coin.abbr); updateCoins(coinBalance); await deactivateCoins([coin]); + + if (coin.type == CoinType.zhtlc) { + await _zCoinRepository.legacyCoinsBlocDisableLocallyCallback(coin.abbr); + } } } @@ -389,37 +396,44 @@ class CoinsBloc implements BlocBase { CoinBalance coinBalance, int limit, String fromId) async { Coin coin = coinBalance.coin; try { - dynamic transactions; + dynamic transactionData; if (isErcType(coin)) { - transactions = await getErcTransactions.getTransactions( - coin: coin, fromId: fromId); + transactionData = await getErcTransactions.getTransactions( + coin: coin, + fromId: fromId, + ); } else { - transactions = await MM.getTransactions(mmSe.client, - GetTxHistory(coin: coin.abbr, limit: limit, fromId: fromId)); + transactionData = await MM.getTransactions( + mmSe.client, + GetTxHistory(coin: coin.abbr, limit: limit, fromId: fromId), + ); } - if (transactions is Transactions) { - transactions.camouflageIfNeeded(); + if (transactionData is Transactions && transactionData.result != null) { + transactionData.camouflageIfNeeded(); - if (fromId == null || fromId.isEmpty) { - this.transactions = transactions; - } else { - this.transactions.result.fromId = transactions.result.fromId; - this.transactions.result.limit = transactions.result.limit; - this.transactions.result.skipped = transactions.result.skipped; - this.transactions.result.total = transactions.result.total; - this - .transactions - .result - .transactions - .addAll(transactions.result.transactions); - } - _inTransactions.add(this.transactions); - } else if (transactions is ErrorCode) { - _inTransactions.add(transactions); - return transactions; + final thisTransactions = transactions?.result?.transactions; + + final mustMergeCurrentCoin = fromId != null && + (thisTransactions is List && + (thisTransactions + .any((Transaction tx) => tx.coin == coin.abbr)) ?? + false); + + transactionData.result?.transactions = [ + if (mustMergeCurrentCoin) ...(thisTransactions ?? []), + ...(transactionData.result?.transactions ?? []) + ]..sort((a, b) => b.timestamp.compareTo(a.timestamp)); + + transactions = transactionData; + } else if (transactionData is ErrorCode) { + Log( + 'coins_bloc:updateTransactions', + 'Failed to get transactions: $coin: ${transactionData.toJson()}', + ); } + _inTransactions.add(transactionData); } catch (e) { Log('coins_bloc:244', e); rethrow; @@ -461,7 +475,7 @@ class CoinsBloc implements BlocBase { /// Handle the coins user has picked for activation. /// Also used for coin activations during the application startup. - Future enableCoins(List coins) async { + Future enableCoins(List coins, {initialization = false}) async { await pauseUntil(() => !_coinsLock, maxMs: 3000); _coinsLock = true; @@ -570,9 +584,6 @@ class CoinsBloc implements BlocBase { updateOneCoin(cb); - final isZCash = coin.type == CoinType.zhtlc; - - // await syncCoinsStateWithApi(!isZCash); await syncCoinsStateWithApi(); if (currentActiveCoin?.coin?.abbr == coin.abbr) { @@ -824,7 +835,7 @@ class CoinsBloc implements BlocBase { if (transactions is Transactions) { transactions.camouflageIfNeeded(); - if (transactions.result.transactions.isNotEmpty) { + if ((transactions.result?.transactions ?? []).isNotEmpty) { return transactions.result.transactions[0]; } return null; diff --git a/lib/l10n/intl_de.arb b/lib/l10n/intl_de.arb index 9c8e0b1d3..7d5698d63 100644 --- a/lib/l10n/intl_de.arb +++ b/lib/l10n/intl_de.arb @@ -301,7 +301,7 @@ "appCompanyLong": {} } }, - "eulaParagraphe15": "In order to be completed, any Virtual Currency transaction created with the {appCompanyLong} must be confirmed and recorded in the Virtual Currency ledger associated with the relevant Virtual Currency network. Such networks are decentralized, peer-to-peer networks supported by independent third parties, which are not owned, controlled or operated by {appCompanyLong}.\n{appCompanyLong} has no control over any Virtual Currency network and therefore cannot and does not ensure that any transaction details You submit via our Services will be confirmed on the relevant Virtual Currency network. You agree and understand that the transaction details You submit via our Services may not be completed, or may be substantially delayed, by the Virtual Currency network used to process the transaction. We do not guarantee that the Wallet can transfer title or right in any Virtual Currency or make any warranties whatsoever with regard to title.\nOnce transaction details have been submitted to a Virtual Currency network, we cannot assist You to cancel or otherwise modify your transaction or transaction details. {appCompanyLong} has no control over any Virtual Currency network and does not have the ability to facilitate any cancellation or modification requests.\nIn the event of a Fork, {appCompanyLong} may not be able to support activity related to your Virtual Currency. You agree and understand that, in the event of a Fork, the transactions may not be completed, completed partially, incorrectly completed, or substantially delayed. {appCompanyLong} is not responsible for any loss incurred by You caused in whole or in part, directly or indirectly, by a Fork.\nIn no event shall {appCompanyLong}, its affiliates and service providers, or any of their respective officers, directors, agents, employees or representatives, be liable for any lost profits or any special, incidental, indirect, intangible, or consequential damages, whether based on contract, tort, negligence, strict liability, or otherwise, arising out of or in connection with authorized or unauthorized use of the services, or this agreement, even if an authorized representative of {appCompanyLong} has been advised of, has known of, or should have known of the possibility of such damages. \nFor example (and without limiting the scope of the preceding sentence), You may not recover for lost profits, lost business opportunities, or other types of special, incidental, indirect, intangible, or consequential damages. Some jurisdictions do not allow the exclusion or limitation of incidental or consequential damages, so the above limitation may not apply to You. \nWe will not be responsible or liable to You for any loss and take no responsibility for damages or claims arising in whole or in part, directly or indirectly from: \n(a) user error such as forgotten passwords, incorrectly constructed transactions, or mistyped Virtual Currency addresses; \n(b) server failure or data loss; \n(c) corrupted or otherwise non-performing Wallets or Wallet files; \n(d) unauthorized access to applications; \n(e) any unauthorized activities, including without limitation the use of hacking, viruses, phishing, brute forcing or other means of attack against the Services.", + "eulaParagraphe15": "Um abgeschlossen zu werden, {appCompanyLong}muss jede virtuelle Währungstransaktion, die mit dem erstellt wurde, bestätigt und im Ledger für virtuelle Währungen aufgezeichnet werden, das dem jeweiligen virtuellen Währungsnetzwerk zugeordnet ist. {appCompanyLong}Bei solchen Netzwerken handelt es sich um dezentrale Peer-to-Peer-Netzwerke, die von unabhängigen Dritten unterstützt werden, die sich nicht im Besitz, unter der Kontrolle oder unter der Kontrolle von ihnen befinden.\n{appCompanyLong}hat keine Kontrolle über virtuelle Währungsnetzwerke und kann und wird daher nicht sicherstellen, dass alle Transaktionsdetails, die Sie über unsere Dienste einreichen, im jeweiligen Netzwerk für virtuelle Währungen bestätigt werden. Sie erklären sich damit einverstanden und verstehen, dass die Transaktionsdetails, die Sie über unsere Dienste übermitteln, durch das zur Bearbeitung der Transaktion verwendete virtuelle Währungsnetzwerk möglicherweise nicht abgeschlossen oder erheblich verzögert werden können. Wir garantieren nicht, dass das Wallet das Eigentum oder die Rechte an einer virtuellen Währung übertragen kann, und geben auch keine Garantie in Bezug auf den Titel.\nSobald Transaktionsdetails an ein virtuelles Währungsnetzwerk übermittelt wurden, können wir Ihnen nicht helfen, Ihre Transaktion oder Transaktionsdetails zu stornieren oder anderweitig zu ändern. {appCompanyLong}hat keine Kontrolle über ein Netzwerk für virtuelle Währungen und ist nicht in der Lage, Stornierungs- oder Änderungsanfragen zu bearbeiten.\nIm Falle eines Forks {appCompanyLong}kann es sein, dass wir Aktivitäten im Zusammenhang mit Ihrer virtuellen Währung nicht unterstützen können. Sie erklären sich damit einverstanden und verstehen, dass die Transaktionen im Falle einer Fork möglicherweise nicht, teilweise, falsch abgeschlossen oder erheblich verzögert werden. {appCompanyLong}ist nicht verantwortlich für Verluste, die Ihnen ganz oder teilweise, direkt oder indirekt, durch einen Fork entstehen.\nIn keinem Fall {appCompanyLong}haften ihre verbundenen Unternehmen und Dienstleister oder ihre jeweiligen leitenden Angestellten, Direktoren, Agenten, Mitarbeiter oder Vertreter für entgangene Gewinne oder besondere, zufällige, indirekte, immaterielle oder Folgeschäden, unabhängig davon, ob sie auf Vertrag, unerlaubter Handlung, Fahrlässigkeit, verschuldensunabhängiger Haftung oder auf andere Weise beruhen, die sich aus oder in Verbindung mit der autorisierten oder unbefugten Nutzung der Dienste oder dieser Vereinbarung ergeben, auch wenn ein bevollmächtigter Vertreter {appCompanyLong}von darauf hingewiesen wurde, hat davon gewusst oder hätte von der Möglichkeit solcher Schäden bekannt. \nBeispielsweise (und ohne den Umfang des vorstehenden Satzes einzuschränken) dürfen Sie sich nicht für entgangene Gewinne, entgangene Geschäftschancen oder andere Arten von besonderen, zufälligen, indirekten, immateriellen oder Folgeschäden zurückfordern. In einigen Rechtsordnungen ist der Ausschluss oder die Beschränkung von Neben- oder Folgeschäden nicht zulässig, sodass die obige Beschränkung möglicherweise nicht für Sie gilt. \nWir sind Ihnen gegenüber nicht verantwortlich oder haftbar für Verluste und übernehmen keine Verantwortung für Schäden oder Ansprüche, die sich ganz oder teilweise, direkt oder indirekt ergeben aus: \n(a) Benutzerfehler wie vergessene Passwörter, falsch erstellte Transaktionen oder falsch eingegebene Adressen für virtuelle Währungen; \n(b) Serverausfall oder Datenverlust; \n(c) beschädigte oder anderweitig nicht funktionierende Wallets oder Wallet-Dateien; \n(d) unbefugter Zugriff auf Anwendungen; \n(e) alle nicht autorisierten Aktivitäten, einschließlich, aber nicht beschränkt auf den Einsatz von Hacking, Viren, Phishing, Brute-Forcing oder anderen Angriffsmethoden gegen die Dienste.\n\n", "@eulaParagraphe15": { "type": "text", "placeholders_order": [ @@ -311,7 +311,7 @@ "appCompanyLong": {} } }, - "eulaParagraphe16": "For the avoidance of doubt, {appCompanyLong} does not provide investment, tax or legal advice, nor does {appCompanyLong} broker trades on your behalf. All {appCompanyLong} trades are executed automatically, based on the parameters of your order instructions and in accordance with posted Trade execution procedures, and You are solely responsible for determining whether any investment, investment strategy or related transaction is appropriate for You based on your personal investment objectives, financial circumstances and risk tolerance. You should consult your legal or tax professional regarding your specific situation. Neither {appCompanyShort} nor its owners, members, officers, directors, partners, consultants, nor anyone involved in the publication of this application, is a registered investment adviser or broker-dealer or associated person with a registered investment adviser or broker-dealer and none of the foregoing make any recommendation that the purchase or sale of crypto-assets or securities of any company profiled in the mobile Application is suitable or advisable for any person or that an investment or transaction in such crypto-assets or securities will be profitable. The information contained in the mobile Application is not intended to be, and shall not constitute, an offer to sell or the solicitation of any offer to buy any crypto-asset or security. The information presented in the mobile Application is provided for informational purposes only and is not to be treated as advice or a recommendation to make any specific investment or transaction. Please, consult with a qualified professional before making any decisions. The opinions and analysis included in this applications are based on information from sources deemed to be reliable and are provided “as is” in good faith. {appCompanyShort} makes no representation or warranty, expressed, implied, or statutory, as to the accuracy or completeness of such information, which may be subject to change without notice. {appCompanyShort} shall not be liable for any errors or any actions taken in relation to the above. Statements of opinion and belief are those of the authors and/or editors who contribute to this application, and are based solely upon the information possessed by such authors and/or editors. No inference should be drawn that {appCompanyShort} or such authors or editors have any special or greater knowledge about the crypto-assets or companies profiled or any particular expertise in the industries or markets in which the profiled crypto-assets and companies operate and compete. Information on this application is obtained from sources deemed to be reliable; however, {appCompanyShort} takes no responsibility for verifying the accuracy of such information and makes no representation that such information is accurate or complete. Certain statements included in this application may be forward-looking statements based on current expectations. {appCompanyShort} makes no representation and provides no assurance or guarantee that such forward-looking statements will prove to be accurate. Persons using the {appCompanyShort} application are urged to consult with a qualified professional with respect to an investment or transaction in any crypto-asset or company profiled herein. Additionally, persons using this application expressly represent that the content in this application is not and will not be a consideration in such persons’ investment or transaction decisions. Traders should verify independently information provided in the {appCompanyShort} application by completing their own due diligence on any crypto-asset or company in which they are contemplating an investment or transaction of any kind and review a complete information package on that crypto-asset or company, which should include, but not be limited to, related blog updates and press releases. Past performance of profiled crypto-assets and securities is not indicative of future results. Crypto-assets and companies profiled on this site may lack an active trading market and invest in a crypto-asset or security that lacks an active trading market or trade on certain media, platforms and markets are deemed highly speculative and carry a high degree of risk. Anyone holding such crypto-assets and securities should be financially able and prepared to bear the risk of loss and the actual loss of his or her entire trade. The information in this application is not designed to be used as a basis for an investment decision. Persons using the {appCompanyShort} application should confirm to their own satisfaction the veracity of any information prior to entering into any investment or making any transaction. The decision to buy or sell any crypto-asset or security that may be featured by {appCompanyShort} is done purely and entirely at the reader’s own risk. As a reader and user of this application, You agree that under no circumstances will You seek to hold liable owners, members, officers, directors, partners, consultants or other persons involved in the publication of this application for any losses incurred by the use of information contained in this application {appCompanyShort} and its contractors and affiliates may profit in the event the crypto-assets and securities increase or decrease in value. Such crypto-assets and securities may be bought or sold from time to time, even after {appCompanyShort} has distributed positive information regarding the crypto-assets and companies. {appCompanyShort} has no obligation to inform readers of its trading activities or the trading activities of any of its owners, members, officers, directors, contractors and affiliates and/or any companies affiliated with BC Relations’ owners, members, officers, directors, contractors and affiliates. {appCompanyShort} and its affiliates may from time to time enter into agreements to purchase crypto-assets or securities to provide a method to reach their goals.", + "eulaParagraphe16": "For the avoidance of doubt, {appCompanyLong} does not provide investment, tax or legal advice, nor does {appCompanyLong} broker trades on your behalf. All {appCompanyLong} trades are executed automatically, based on the parameters of your order instructions and in accordance with posted Trade execution procedures, and You are solely responsible for determining whether any investment, investment strategy or related transaction is appropriate for You based on your personal investment objectives, financial circumstances and risk tolerance. You should consult your legal or tax professional regarding your specific situation. Neither {appCompanyShort} nor its owners, members, officers, directors, partners, consultants, nor anyone involved in the publication of this application, is a registered investment adviser or broker-dealer or associated person with a registered investment adviser or broker-dealer and none of the foregoing make any recommendation that the purchase or sale of crypto-assets or securities of any company profiled in the mobile Application is suitable or advisable for any person or that an investment or transaction in such crypto-assets or securities will be profitable. The information contained in the mobile Application is not intended to be, and shall not constitute, an offer to sell or the solicitation of any offer to buy any crypto-asset or security. The information presented in the mobile Application is provided for informational purposes only and is not to be treated as advice or a recommendation to make any specific investment or transaction. Please, consult with a qualified professional before making any decisions. The opinions and analysis included in this applications are based on information from sources deemed to be reliable and are provided “as is” in good faith. {appCompanyShort} makes no representation or warranty, expressed, implied, or statutory, as to the accuracy or completeness of such information, which may be subject to change without notice. {appCompanyShort} shall not be liable for any errors or any actions taken in relation to the above. Statements of opinion and belief are those of the authors and/or editors who contribute to this application, and are based solely upon the information possessed by such authors and/or editors. No inference should be drawn that {appCompanyShort} or such authors or editors have any special or greater knowledge about the crypto-assets or companies profiled or any particular expertise in the industries or markets in which the profiled crypto-assets and companies operate and compete. Information on this application is obtained from sources deemed to be reliable; however, {appCompanyShort} takes no responsibility for verifying the accuracy of such information and makes no representation that such information is accurate or complete. Certain statements included in this application may be forward-looking statements based on current expectations. {appCompanyShort} makes no representation and provides no assurance or guarantee that such forward-looking statements will prove to be accurate. Persons using the {appCompanyShort} application are urged to consult with a qualified professional with respect to an investment or transaction in any crypto-asset or company profiled herein. Additionally, persons using this application expressly represent that the content in this application is not and will not be a consideration in such persons’ investment or transaction decisions. Traders should verify independently information provided in the {appCompanyShort} application by completing their own due diligence on any crypto-asset or company in which they are contemplating an investment or transaction of any kind and review a complete information package on that crypto-asset or company, which should include, but not be limited to, related blog updates and press releases. Past performance of profiled crypto-assets and securities is not indicative of future results. Crypto-assets and companies profiled on this site may lack an active trading market and invest in a crypto-asset or security that lacks an active trading market or trade on certain media, platforms and markets are deemed highly speculative and carry a high degree of risk. Anyone holding such crypto-assets and securities should be financially able and prepared to bear the risk of loss and the actual loss of his or her entire trade. The information in this application is not designed to be used as a basis for an investment decision. Persons using the {appCompanyShort} application should confirm to their own satisfaction the veracity of any information prior to entering into any investment or making any transaction. The decision to buy or sell any crypto-asset or security that may be featured by {appCompanyShort} is done purely and entirely at the reader’s own risk. As a reader and user of this application, You agree that under no circumstances will You seek to hold liable owners, members, officers, directors, partners, consultants or other persons involved in the publication of this application for any losses incurred by the use of information contained in this application {appCompanyShort} and its contractors and affiliates may profit in the event the crypto-assets and securities increase or decrease in value. Such crypto-assets and securities may be bought or sold from time to time, even after {appCompanyShort} has distributed positive information regarding the crypto-assets and companies. {appCompanyShort} has no obligation to inform readers of its trading activities or the trading activities of any of its owners, members, officers, directors, contractors and affiliates and/or any companies affiliated with BC Relations’ owners, members, officers, directors, contractors and affiliates. {appCompanyShort} and its affiliates may from time to time enter into agreements to purchase crypto-assets or securities to provide a method to reach their goals.\n\n", "@eulaParagraphe16": { "type": "text", "placeholders_order": [ @@ -1257,6 +1257,16 @@ "placeholders_order": [], "placeholders": {} }, + "gweiError": "Gwei muss bis zu {value} sein", + "@gweiError": { + "type": "text", + "placeholders_order": [ + "value" + ], + "placeholders": { + "value": {} + } + }, "feesError": "Die Gebühren müssen bis zu {value} betragen.", "@feesError": { "type": "text", @@ -1267,6 +1277,16 @@ "value": {} } }, + "limitError": "Das Limit muss bis zu {value} betragen", + "@limitError": { + "type": "text", + "placeholders_order": [ + "value" + ], + "placeholders": { + "value": {} + } + }, "errorNotAValidAddress": "Ungültige Adresse", "@errorNotAValidAddress": { "type": "text", @@ -1441,6 +1461,18 @@ "placeholders_order": [], "placeholders": {} }, + "gettingTxWait": "Die Transaktion wird ausgeführt. Bitte warten Sie", + "@gettingTxWait": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "finishingUp": "Bitte warten Sie, bis der Vorgang abgeschlossen ist", + "@finishingUp": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, "feedback": "Protokolldatei teilen", "@feedback": { "type": "text", @@ -2679,6 +2711,12 @@ "placeholders_order": [], "placeholders": {} }, + "searchFilterSubtitleZHTLC": "Wählen Sie alle ZHTLC-Münzen aus", + "@searchFilterSubtitleZHTLC": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, "searchFilterSubtitleFTM": "Alle Fantom tokens auswählen", "@searchFilterSubtitleFTM": { "type": "text", @@ -2781,6 +2819,12 @@ "placeholders_order": [], "placeholders": {} }, + "tagZHTLC": "ZHTLC", + "@tagZHTLC": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, "tagKMD": "KMD", "@tagKMD": { "type": "text", @@ -3577,6 +3621,16 @@ "coinAbbr": {} } }, + "failedToCancelActivation": "Aktivierung von {coinAbbr} konnte nicht abgebrochen werden", + "@failedToCancelActivation": { + "type": "text", + "placeholders_order": [ + "coinAbbr" + ], + "placeholders": { + "coinAbbr": {} + } + }, "isUnavailable": "{coinAbbr} ist nicht verfügbar :(", "@isUnavailable": { "type": "text", @@ -3741,6 +3795,16 @@ "placeholders_order": [], "placeholders": {} }, + "invalidCoinAddress": "Ungültige {coin}-Adresse", + "@invalidCoinAddress": { + "type": "text", + "placeholders_order": [ + "coin" + ], + "placeholders": { + "coin": {} + } + }, "multiActivateGas": "Aktivieren Sie {coin} und laden Sie zuerst Ihr Guthaben auf", "@multiActivateGas": { "type": "text", @@ -4799,6 +4863,250 @@ "placeholders_order": [], "placeholders": {} }, + "activating": "{coinName} wird aktiviert", + "@activating": { + "type": "text", + "placeholders_order": [ + "coinName" + ], + "placeholders": { + "coinName": {} + } + }, + "doNotCloseTheAppTapForMoreInfo": "Schließen Sie die App nicht. Für weitere Informationen tippen ...", + "@doNotCloseTheAppTapForMoreInfo": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "activation": "{coinName}-Aktivierung", + "@activation": { + "type": "text", + "placeholders_order": [ + "coinName" + ], + "placeholders": { + "coinName": {} + } + }, + "coinsAreActivated": "{protocolName}-Münzen sind aktiviert", + "@coinsAreActivated": { + "type": "text", + "placeholders_order": [ + "protocolName" + ], + "placeholders": { + "protocolName": {} + } + }, + "coinsAreNotActivated": "{protocolName}-Münzen sind nicht aktiviert", + "@coinsAreNotActivated": { + "type": "text", + "placeholders_order": [ + "protocolName" + ], + "placeholders": { + "protocolName": {} + } + }, + "coinsAreActivatedSuccessfully": "{protocolName}-Münzen wurden erfolgreich aktiviert", + "@coinsAreActivatedSuccessfully": { + "type": "text", + "placeholders_order": [ + "protocolName" + ], + "placeholders": { + "protocolName": {} + } + }, + "activationInProgress": "{protocolName} Aktivierung wird ausgeführt", + "@activationInProgress": { + "type": "text", + "placeholders_order": [ + "protocolName" + ], + "placeholders": { + "protocolName": {} + } + }, + "activateCoins": "{protocolName}-Münzen aktivieren?", + "@activateCoins": { + "type": "text", + "placeholders_order": [ + "protocolName" + ], + "placeholders": { + "protocolName": {} + } + }, + "moreInfo": "Mehr Info", + "@moreInfo": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "showAddress": "Adresse anzeigen", + "@showAddress": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "transactionHiddenPhishing": "Diese Transaktion wurde aufgrund eines möglichen Phishing-Versuchs ausgeblendet.", + "@transactionHiddenPhishing": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "transactionAddress": "Transaktionsadresse", + "@transactionAddress": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "transactionHidden": "Transaktion ausgeblendet", + "@transactionHidden": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "couldNotLaunchUrl": "URL konnte nicht gestartet werden", + "@couldNotLaunchUrl": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "willTakeTime": "Dies dauert eine Weile und die App muss im Vordergrund bleiben.\nDas Beenden der App während der Aktivierung kann zu Problemen führen.", + "@willTakeTime": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "minimizingWillTerminate": "Warnung: Durch das Minimieren der App auf iOS wird der Aktivierungsprozess abgebrochen.", + "@minimizingWillTerminate": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "enableNotificationsForActivationProgress": "Bitte aktivieren Sie Benachrichtigungen, um Updates zum Aktivierungsfortschritt zu erhalten.", + "@enableNotificationsForActivationProgress": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "qrCodeScanner": "QR-Code-Scanner", + "@qrCodeScanner": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "foundQrCode": "QR-Code gefunden", + "@foundQrCode": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "contract": "Vertrag", + "@contract": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "startSwap": "Starten Sie den Tausch", + "@startSwap": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "none": "Keiner", + "@none": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "cexRate": "CEX-Kurs", + "@cexRate": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "incomingTransactionsProtectionSettings": "Eingehende {coinName}-TXS-Schutzeinstellungen", + "@incomingTransactionsProtectionSettings": { + "type": "text", + "placeholders_order": [ + "coinName" + ], + "placeholders": { + "coinName": {} + } + }, + "showingOrders": "Es werden {count} von {maxCount} Bestellungen angezeigt.", + "@showingOrders": { + "type": "text", + "placeholders_order": [ + "count", + "maxCount" + ], + "placeholders": { + "count": {}, + "maxCount": {} + } + }, + "orderBookLess": "Weniger", + "@orderBookLess": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "orderBookMore": "Mehr", + "@orderBookMore": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "basedOnCoinRatio": "basierend auf {coinName1}/{coinName2}", + "@basedOnCoinRatio": { + "type": "text", + "placeholders_order": [ + "coinName1", + "coinName2" + ], + "placeholders": { + "coinName1": {}, + "coinName2": {} + } + }, + "detailedFeesSendTradingFeeTransactionFee": "Handelsgebühr senden Transaktionsgebühr", + "@detailedFeesSendTradingFeeTransactionFee": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "detailedFeesTradingFee": "Handelsgebühr", + "@detailedFeesTradingFee": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "detailedFeesSendCoinTransactionFee": "Transaktionsgebühr für {coinName} senden", + "@detailedFeesSendCoinTransactionFee": { + "type": "text", + "placeholders_order": [ + "coinName" + ], + "placeholders": { + "coinName": {} + } + }, + "detailedFeesReceiveCoinTransactionFee": "Erhalten Sie die Transaktionsgebühr {coinName}", + "@detailedFeesReceiveCoinTransactionFee": { + "type": "text", + "placeholders_order": [ + "coinName" + ], + "placeholders": { + "coinName": {} + } + }, "filtersButton": "Filter", "@filtersButton": { "type": "text", @@ -5152,5 +5460,123 @@ "type": "text", "placeholders_order": [], "placeholders": {} + }, + "shouldScanPastTransaction": "Nach vergangenen {coin}-Transaktionen suchen?", + "@shouldScanPastTransaction": { + "type": "text", + "placeholders_order": [ + "coin" + ], + "placeholders": { + "coin": {} + } + }, + "activationCancelled": "Münzaktivierung abgebrochen", + "@activationCancelled": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "coinActivationSuccessfull": "{coin} erfolgreich aktiviert", + "@coinActivationSuccessfull": { + "type": "text", + "placeholders_order": [ + "coin" + ], + "placeholders": { + "coin": {} + } + }, + "coinActivationCancelled": "Aktivierung von {coin} abgebrochen", + "@coinActivationCancelled": { + "type": "text", + "placeholders_order": [ + "coin" + ], + "placeholders": { + "coin": {} + } + }, + "pleaseAcceptAllCoinActivationRequests": "Bitte akzeptieren Sie alle speziellen Münzaktivierungsanfragen oder heben Sie die Auswahl der Münzen auf.", + "@pleaseAcceptAllCoinActivationRequests": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "cancelActivation": "Aktivierung abbrechen", + "@cancelActivation": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "cancelActivationQuestion": "Sind Sie sicher, dass Sie die Aktivierung abbrechen möchten?", + "@cancelActivationQuestion": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "cofirmCancelActivation": "Sind Sie sicher, dass Sie die Aktivierung abbrechen möchten?", + "@cofirmCancelActivation": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "syncTransactionsQuestion": "Welche {name}-Transaktionen möchten Sie synchronisieren?", + "@syncTransactionsQuestion": { + "type": "text", + "placeholders_order": [ + "name" + ], + "placeholders": { + "name": {} + } + }, + "syncNewTransactions": "Synchronisieren Sie neue Transaktionen", + "@syncNewTransactions": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "syncFromDate": "Ab dem angegebenen Datum synchronisieren", + "@syncFromDate": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "syncFromSaplingActivation": "Synchronisierung durch Setzlingsaktivierung", + "@syncFromSaplingActivation": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "selectDate": "Wählen Sie ein Datum aus", + "@selectDate": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "startDate": "Startdatum", + "@startDate": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "futureTransactions": "Wir synchronisieren zukünftige Transaktionen, die nach der Aktivierung in Verbindung mit Ihrem öffentlichen Schlüssel durchgeführt werden. Dies ist die schnellste Option und beansprucht am wenigsten Speicherplatz.", + "@futureTransactions": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "allPastTransactions": "In Ihrem Wallet werden alle vergangenen Transaktionen angezeigt. Dies wird viel Speicherplatz und Zeit in Anspruch nehmen, da alle Blöcke heruntergeladen und gescannt werden.", + "@allPastTransactions": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "pastTransactionsFromDate": "In Ihrem Wallet werden Ihre vergangenen Transaktionen angezeigt, die nach dem angegebenen Datum getätigt wurden.", + "@pastTransactionsFromDate": { + "type": "text", + "placeholders_order": [], + "placeholders": {} } } \ No newline at end of file diff --git a/lib/l10n/intl_es.arb b/lib/l10n/intl_es.arb index 06f0ed502..461d21cf4 100644 --- a/lib/l10n/intl_es.arb +++ b/lib/l10n/intl_es.arb @@ -1441,6 +1441,18 @@ "placeholders_order": [], "placeholders": {} }, + "gettingTxWait": "Obteniendo transacción, por favor espere", + "@gettingTxWait": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "finishingUp": "Terminando, por favor espera.", + "@finishingUp": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, "feedback": "Compartir archivo de registro", "@feedback": { "type": "text", @@ -2667,6 +2679,12 @@ "placeholders_order": [], "placeholders": {} }, + "searchFilterSubtitleZHTLC": "Seleccione todas las monedas ZHTLC", + "@searchFilterSubtitleZHTLC": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, "searchFilterSubtitleFTM": "Seleccionar todas las fichas de Fantom", "@searchFilterSubtitleFTM": { "type": "text", @@ -2769,6 +2787,12 @@ "placeholders_order": [], "placeholders": {} }, + "tagZHTLC": "ZHTLC", + "@tagZHTLC": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, "tagKMD": "KMD", "@tagKMD": { "type": "text", @@ -3565,6 +3589,16 @@ "coinAbbr": {} } }, + "failedToCancelActivation": "No se pudo cancelar la activación de {coinAbbr}", + "@failedToCancelActivation": { + "type": "text", + "placeholders_order": [ + "coinAbbr" + ], + "placeholders": { + "coinAbbr": {} + } + }, "isUnavailable": "{coinAbbr} no está disponible :(", "@isUnavailable": { "type": "text", @@ -4787,6 +4821,250 @@ "placeholders_order": [], "placeholders": {} }, + "activating": "Activando {coinName}", + "@activating": { + "type": "text", + "placeholders_order": [ + "coinName" + ], + "placeholders": { + "coinName": {} + } + }, + "doNotCloseTheAppTapForMoreInfo": "No cierres la aplicación. Toca para obtener más información...", + "@doNotCloseTheAppTapForMoreInfo": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "activation": "Activación de {coinName}", + "@activation": { + "type": "text", + "placeholders_order": [ + "coinName" + ], + "placeholders": { + "coinName": {} + } + }, + "coinsAreActivated": "Las monedas {protocolName} están activadas", + "@coinsAreActivated": { + "type": "text", + "placeholders_order": [ + "protocolName" + ], + "placeholders": { + "protocolName": {} + } + }, + "coinsAreNotActivated": "Las monedas {protocolName} no están activadas", + "@coinsAreNotActivated": { + "type": "text", + "placeholders_order": [ + "protocolName" + ], + "placeholders": { + "protocolName": {} + } + }, + "coinsAreActivatedSuccessfully": "{protocolName} monedas activadas con éxito", + "@coinsAreActivatedSuccessfully": { + "type": "text", + "placeholders_order": [ + "protocolName" + ], + "placeholders": { + "protocolName": {} + } + }, + "activationInProgress": "{protocolName} Activación en curso", + "@activationInProgress": { + "type": "text", + "placeholders_order": [ + "protocolName" + ], + "placeholders": { + "protocolName": {} + } + }, + "activateCoins": "¿Activar monedas {protocolName}?", + "@activateCoins": { + "type": "text", + "placeholders_order": [ + "protocolName" + ], + "placeholders": { + "protocolName": {} + } + }, + "moreInfo": "Más información", + "@moreInfo": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "showAddress": "Mostrar dirección", + "@showAddress": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "transactionHiddenPhishing": "Esta transacción fue ocultada debido a un posible intento de phishing.", + "@transactionHiddenPhishing": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "transactionAddress": "Dirección de transacción", + "@transactionAddress": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "transactionHidden": "Transacción oculta", + "@transactionHidden": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "couldNotLaunchUrl": "No se pudo iniciar la URL", + "@couldNotLaunchUrl": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "willTakeTime": "Esto llevará un tiempo y la aplicación deberá mantenerse en primer plano.\nCerrar la aplicación mientras la activación está en curso podría generar problemas.", + "@willTakeTime": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "minimizingWillTerminate": "Advertencia: Minimizar la aplicación en iOS finalizará el proceso de activación.", + "@minimizingWillTerminate": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "enableNotificationsForActivationProgress": "Habilite las notificaciones para recibir actualizaciones sobre el progreso de la activación.", + "@enableNotificationsForActivationProgress": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "qrCodeScanner": "Escáner de código QR", + "@qrCodeScanner": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "foundQrCode": "Código QR encontrado", + "@foundQrCode": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "contract": "Contrato", + "@contract": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "startSwap": "Iniciar intercambio", + "@startSwap": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "none": "Ninguno", + "@none": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "cexRate": "Tasa CEX", + "@cexRate": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "incomingTransactionsProtectionSettings": "Configuración de protección de txs entrantes de {coinName}", + "@incomingTransactionsProtectionSettings": { + "type": "text", + "placeholders_order": [ + "coinName" + ], + "placeholders": { + "coinName": {} + } + }, + "showingOrders": "Mostrando {count} de {maxCount} pedidos.", + "@showingOrders": { + "type": "text", + "placeholders_order": [ + "count", + "maxCount" + ], + "placeholders": { + "count": {}, + "maxCount": {} + } + }, + "orderBookLess": "Menos", + "@orderBookLess": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "orderBookMore": "Más", + "@orderBookMore": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "basedOnCoinRatio": "basado en {coinName1}/{coinName2}", + "@basedOnCoinRatio": { + "type": "text", + "placeholders_order": [ + "coinName1", + "coinName2" + ], + "placeholders": { + "coinName1": {}, + "coinName2": {} + } + }, + "detailedFeesSendTradingFeeTransactionFee": "enviar tarifa comercial tarifa de transacción", + "@detailedFeesSendTradingFeeTransactionFee": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "detailedFeesTradingFee": "tarifa comercial", + "@detailedFeesTradingFee": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "detailedFeesSendCoinTransactionFee": "enviar tarifa de transacción de {coinName}", + "@detailedFeesSendCoinTransactionFee": { + "type": "text", + "placeholders_order": [ + "coinName" + ], + "placeholders": { + "coinName": {} + } + }, + "detailedFeesReceiveCoinTransactionFee": "recibir tarifa de transacción de {coinName}", + "@detailedFeesReceiveCoinTransactionFee": { + "type": "text", + "placeholders_order": [ + "coinName" + ], + "placeholders": { + "coinName": {} + } + }, "filtersButton": "Filtro", "@filtersButton": { "type": "text", @@ -5140,5 +5418,93 @@ "type": "text", "placeholders_order": [], "placeholders": {} + }, + "activationCancelled": "Activación de monedas cancelada", + "@activationCancelled": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "coinActivationCancelled": "activación de {coin} cancelada", + "@coinActivationCancelled": { + "type": "text", + "placeholders_order": [ + "coin" + ], + "placeholders": { + "coin": {} + } + }, + "pleaseAcceptAllCoinActivationRequests": "Acepte todas las solicitudes especiales de activación de monedas o anule la selección de las monedas.", + "@pleaseAcceptAllCoinActivationRequests": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "cancelActivation": "Cancelar activación", + "@cancelActivation": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "cancelActivationQuestion": "¿Estás seguro de que deseas cancelar la activación?", + "@cancelActivationQuestion": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "cofirmCancelActivation": "¿Estás seguro de que deseas cancelar la activación?", + "@cofirmCancelActivation": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "syncNewTransactions": "Sincronizar nuevas transacciones", + "@syncNewTransactions": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "syncFromDate": "Sincronización desde la fecha especificada", + "@syncFromDate": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "syncFromSaplingActivation": "Sincronización desde la activación del retoño", + "@syncFromSaplingActivation": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "selectDate": "Seleccione una fecha", + "@selectDate": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "startDate": "Fecha de inicio", + "@startDate": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "futureTransactions": "Sincronizaremos las transacciones futuras realizadas después de la activación asociada con su clave pública. Esta es la opción más rápida y ocupa la menor cantidad de almacenamiento.", + "@futureTransactions": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "allPastTransactions": "Su billetera mostrará cualquier transacción pasada. Esto requerirá mucho almacenamiento y tiempo, ya que todos los bloques se descargarán y escanearán.", + "@allPastTransactions": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "pastTransactionsFromDate": "Su billetera mostrará sus transacciones pasadas realizadas después de la fecha especificada.", + "@pastTransactionsFromDate": { + "type": "text", + "placeholders_order": [], + "placeholders": {} } } \ No newline at end of file diff --git a/lib/l10n/intl_fr.arb b/lib/l10n/intl_fr.arb index c0052c858..fbdb70904 100644 --- a/lib/l10n/intl_fr.arb +++ b/lib/l10n/intl_fr.arb @@ -1257,6 +1257,16 @@ "placeholders_order": [], "placeholders": {} }, + "gweiError": "Gwei doit atteindre {value}", + "@gweiError": { + "type": "text", + "placeholders_order": [ + "value" + ], + "placeholders": { + "value": {} + } + }, "feesError": "Les frais doivent être jusqu'à {value}", "@feesError": { "type": "text", @@ -1267,6 +1277,16 @@ "value": {} } }, + "limitError": "La limite doit aller jusqu'à {value}", + "@limitError": { + "type": "text", + "placeholders_order": [ + "value" + ], + "placeholders": { + "value": {} + } + }, "errorNotAValidAddress": "Adresse non valide", "@errorNotAValidAddress": { "type": "text", @@ -1441,6 +1461,18 @@ "placeholders_order": [], "placeholders": {} }, + "gettingTxWait": "En cours de transaction, veuillez patienter", + "@gettingTxWait": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "finishingUp": "Je termine, veuillez patienter", + "@finishingUp": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, "feedback": "Envoyer des commentaires", "@feedback": { "type": "text", @@ -2679,6 +2711,12 @@ "placeholders_order": [], "placeholders": {} }, + "searchFilterSubtitleZHTLC": "Sélectionnez toutes les pièces ZHTLC", + "@searchFilterSubtitleZHTLC": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, "searchFilterSubtitleFTM": "Sélectionner tous les tokens Fantom", "@searchFilterSubtitleFTM": { "type": "text", @@ -2781,6 +2819,12 @@ "placeholders_order": [], "placeholders": {} }, + "tagZHTLC": "ZHTLC", + "@tagZHTLC": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, "tagKMD": "KMD", "@tagKMD": { "type": "text", @@ -3577,6 +3621,16 @@ "coinAbbr": {} } }, + "failedToCancelActivation": "Échec de l'annulation de l'activation de {coinAbbr}", + "@failedToCancelActivation": { + "type": "text", + "placeholders_order": [ + "coinAbbr" + ], + "placeholders": { + "coinAbbr": {} + } + }, "isUnavailable": "{coinAbbr} est indisponible :(", "@isUnavailable": { "type": "text", @@ -3741,6 +3795,16 @@ "placeholders_order": [], "placeholders": {} }, + "invalidCoinAddress": "Adresse {coin} invalide", + "@invalidCoinAddress": { + "type": "text", + "placeholders_order": [ + "coin" + ], + "placeholders": { + "coin": {} + } + }, "multiActivateGas": "Activez {coin} et rechargez d'abord le solde", "@multiActivateGas": { "type": "text", @@ -4799,6 +4863,250 @@ "placeholders_order": [], "placeholders": {} }, + "activating": "Activation de {coinName}", + "@activating": { + "type": "text", + "placeholders_order": [ + "coinName" + ], + "placeholders": { + "coinName": {} + } + }, + "doNotCloseTheAppTapForMoreInfo": "Ne fermez pas l'application. Appuyez pour plus d'informations...", + "@doNotCloseTheAppTapForMoreInfo": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "activation": "Activation de {coinName}", + "@activation": { + "type": "text", + "placeholders_order": [ + "coinName" + ], + "placeholders": { + "coinName": {} + } + }, + "coinsAreActivated": "Les pièces {protocolName} sont activées", + "@coinsAreActivated": { + "type": "text", + "placeholders_order": [ + "protocolName" + ], + "placeholders": { + "protocolName": {} + } + }, + "coinsAreNotActivated": "Les pièces {protocolName} ne sont pas activées", + "@coinsAreNotActivated": { + "type": "text", + "placeholders_order": [ + "protocolName" + ], + "placeholders": { + "protocolName": {} + } + }, + "coinsAreActivatedSuccessfully": "{protocolName} pièces activées avec succès", + "@coinsAreActivatedSuccessfully": { + "type": "text", + "placeholders_order": [ + "protocolName" + ], + "placeholders": { + "protocolName": {} + } + }, + "activationInProgress": "{protocolName} Activation en cours", + "@activationInProgress": { + "type": "text", + "placeholders_order": [ + "protocolName" + ], + "placeholders": { + "protocolName": {} + } + }, + "activateCoins": "Activer les pièces {protocolName} ?", + "@activateCoins": { + "type": "text", + "placeholders_order": [ + "protocolName" + ], + "placeholders": { + "protocolName": {} + } + }, + "moreInfo": "Plus d'informations", + "@moreInfo": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "showAddress": "Afficher l'adresse", + "@showAddress": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "transactionHiddenPhishing": "Cette transaction a été masquée en raison d'une éventuelle tentative de phishing.", + "@transactionHiddenPhishing": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "transactionAddress": "Adresse de transaction", + "@transactionAddress": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "transactionHidden": "Transaction masquée", + "@transactionHidden": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "couldNotLaunchUrl": "Impossible de lancer l'URL", + "@couldNotLaunchUrl": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "willTakeTime": "Cela prendra un certain temps et l'application doit rester au premier plan.\nLa fermeture de l'application pendant l'activation est en cours peut entraîner des problèmes.", + "@willTakeTime": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "minimizingWillTerminate": "Avertissement : la réduction de l'application sur iOS mettra fin au processus d'activation.", + "@minimizingWillTerminate": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "enableNotificationsForActivationProgress": "Veuillez activer les notifications pour obtenir des mises à jour sur la progression de l'activation.", + "@enableNotificationsForActivationProgress": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "qrCodeScanner": "Scanner de codes QR", + "@qrCodeScanner": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "foundQrCode": "Code QR trouvé", + "@foundQrCode": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "contract": "Contracter", + "@contract": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "startSwap": "Commencer l'échange", + "@startSwap": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "none": "Aucun", + "@none": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "cexRate": "Taux CEX", + "@cexRate": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "incomingTransactionsProtectionSettings": "Paramètres de protection des transmissions entrantes {coinName}", + "@incomingTransactionsProtectionSettings": { + "type": "text", + "placeholders_order": [ + "coinName" + ], + "placeholders": { + "coinName": {} + } + }, + "showingOrders": "Affichage de {count} commandes sur {maxCount}.", + "@showingOrders": { + "type": "text", + "placeholders_order": [ + "count", + "maxCount" + ], + "placeholders": { + "count": {}, + "maxCount": {} + } + }, + "orderBookLess": "Moins", + "@orderBookLess": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "orderBookMore": "Plus", + "@orderBookMore": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "basedOnCoinRatio": "basé sur {coinName1}/{coinName2}", + "@basedOnCoinRatio": { + "type": "text", + "placeholders_order": [ + "coinName1", + "coinName2" + ], + "placeholders": { + "coinName1": {}, + "coinName2": {} + } + }, + "detailedFeesSendTradingFeeTransactionFee": "envoyer des frais de négociation frais de transaction", + "@detailedFeesSendTradingFeeTransactionFee": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "detailedFeesTradingFee": "frais de négociation", + "@detailedFeesTradingFee": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "detailedFeesSendCoinTransactionFee": "envoyer des frais de transaction à {coinName}", + "@detailedFeesSendCoinTransactionFee": { + "type": "text", + "placeholders_order": [ + "coinName" + ], + "placeholders": { + "coinName": {} + } + }, + "detailedFeesReceiveCoinTransactionFee": "recevez des frais de transaction {coinName}", + "@detailedFeesReceiveCoinTransactionFee": { + "type": "text", + "placeholders_order": [ + "coinName" + ], + "placeholders": { + "coinName": {} + } + }, "filtersButton": "Filtrer", "@filtersButton": { "type": "text", @@ -5152,5 +5460,123 @@ "type": "text", "placeholders_order": [], "placeholders": {} + }, + "shouldScanPastTransaction": "Rechercher les transactions {coin} passées ?", + "@shouldScanPastTransaction": { + "type": "text", + "placeholders_order": [ + "coin" + ], + "placeholders": { + "coin": {} + } + }, + "activationCancelled": "Activation des pièces annulée", + "@activationCancelled": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "coinActivationSuccessfull": "{coin} activé avec succès", + "@coinActivationSuccessfull": { + "type": "text", + "placeholders_order": [ + "coin" + ], + "placeholders": { + "coin": {} + } + }, + "coinActivationCancelled": "Activation de {coin} annulée", + "@coinActivationCancelled": { + "type": "text", + "placeholders_order": [ + "coin" + ], + "placeholders": { + "coin": {} + } + }, + "pleaseAcceptAllCoinActivationRequests": "Veuillez accepter toutes les demandes spéciales d’activation de pièces ou désélectionner les pièces.", + "@pleaseAcceptAllCoinActivationRequests": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "cancelActivation": "Annuler l'activation", + "@cancelActivation": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "cancelActivationQuestion": "Etes-vous sûr de vouloir annuler l'activation ?", + "@cancelActivationQuestion": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "cofirmCancelActivation": "Etes-vous sûr de vouloir annuler l'activation ?", + "@cofirmCancelActivation": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "syncTransactionsQuestion": "Quelles transactions {name} souhaitez-vous synchroniser ?", + "@syncTransactionsQuestion": { + "type": "text", + "placeholders_order": [ + "name" + ], + "placeholders": { + "name": {} + } + }, + "syncNewTransactions": "Synchroniser les nouvelles transactions", + "@syncNewTransactions": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "syncFromDate": "Synchroniser à partir de la date spécifiée", + "@syncFromDate": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "syncFromSaplingActivation": "Synchronisation à partir de l'activation des jeunes arbres", + "@syncFromSaplingActivation": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "selectDate": "Sélectionnez une date", + "@selectDate": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "startDate": "Date de début", + "@startDate": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "futureTransactions": "Nous synchroniserons les futures transactions effectuées après l'activation associée à votre clé publique. C’est l’option la plus rapide et celle qui nécessite le moins de stockage.", + "@futureTransactions": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "allPastTransactions": "Votre portefeuille affichera toutes les transactions passées. Cela prendra beaucoup de temps et de stockage car tous les blocs seront téléchargés et analysés.", + "@allPastTransactions": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "pastTransactionsFromDate": "Votre portefeuille affichera vos transactions passées effectuées après la date spécifiée.", + "@pastTransactionsFromDate": { + "type": "text", + "placeholders_order": [], + "placeholders": {} } } \ No newline at end of file diff --git a/lib/l10n/intl_hu.arb b/lib/l10n/intl_hu.arb index 9f5dce61f..dca922b1f 100644 --- a/lib/l10n/intl_hu.arb +++ b/lib/l10n/intl_hu.arb @@ -1257,6 +1257,16 @@ "placeholders_order": [], "placeholders": {} }, + "gweiError": "A Gwei értékének legfeljebb {value} értéknek kell lennie", + "@gweiError": { + "type": "text", + "placeholders_order": [ + "value" + ], + "placeholders": { + "value": {} + } + }, "feesError": "A díjak legfeljebb {value}", "@feesError": { "type": "text", @@ -1267,6 +1277,16 @@ "value": {} } }, + "limitError": "A korlát legfeljebb {value} lehet", + "@limitError": { + "type": "text", + "placeholders_order": [ + "value" + ], + "placeholders": { + "value": {} + } + }, "errorNotAValidAddress": "Hiba! Helytelen / nem valós cím!", "@errorNotAValidAddress": { "type": "text", @@ -1441,6 +1461,18 @@ "placeholders_order": [], "placeholders": {} }, + "gettingTxWait": "A tranzakció lebonyolítása, kérjük, várjon", + "@gettingTxWait": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "finishingUp": "Befejezés, kérem várjon", + "@finishingUp": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, "feedback": "Visszajelzés küldése", "@feedback": { "type": "text", @@ -2679,6 +2711,12 @@ "placeholders_order": [], "placeholders": {} }, + "searchFilterSubtitleZHTLC": "Válassza ki az összes ZHTLC-érmét", + "@searchFilterSubtitleZHTLC": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, "searchFilterSubtitleFTM": "Válassza ki az összes FTM tokenet", "@searchFilterSubtitleFTM": { "type": "text", @@ -2781,6 +2819,12 @@ "placeholders_order": [], "placeholders": {} }, + "tagZHTLC": "ZHTLC", + "@tagZHTLC": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, "tagKMD": "KMD", "@tagKMD": { "type": "text", @@ -3577,6 +3621,16 @@ "coinAbbr": {} } }, + "failedToCancelActivation": "Nem sikerült megszakítani a(z) {coinAbbr} aktiválását", + "@failedToCancelActivation": { + "type": "text", + "placeholders_order": [ + "coinAbbr" + ], + "placeholders": { + "coinAbbr": {} + } + }, "isUnavailable": "{coinAbbr} nem elérhető :(", "@isUnavailable": { "type": "text", @@ -3741,6 +3795,16 @@ "placeholders_order": [], "placeholders": {} }, + "invalidCoinAddress": "Érvénytelen {coin} cím", + "@invalidCoinAddress": { + "type": "text", + "placeholders_order": [ + "coin" + ], + "placeholders": { + "coin": {} + } + }, "multiActivateGas": "Aktiválja a {coin} és töltse fel először az egyenlegét", "@multiActivateGas": { "type": "text", @@ -4799,6 +4863,250 @@ "placeholders_order": [], "placeholders": {} }, + "activating": "{coinName} aktiválása", + "@activating": { + "type": "text", + "placeholders_order": [ + "coinName" + ], + "placeholders": { + "coinName": {} + } + }, + "doNotCloseTheAppTapForMoreInfo": "Ne zárja be az alkalmazást. További információért koppintson...", + "@doNotCloseTheAppTapForMoreInfo": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "activation": "{coinName} Aktiválás", + "@activation": { + "type": "text", + "placeholders_order": [ + "coinName" + ], + "placeholders": { + "coinName": {} + } + }, + "coinsAreActivated": "{protocolName} érme aktiválva van", + "@coinsAreActivated": { + "type": "text", + "placeholders_order": [ + "protocolName" + ], + "placeholders": { + "protocolName": {} + } + }, + "coinsAreNotActivated": "A(z) {protocolName} érmék nincsenek aktiválva", + "@coinsAreNotActivated": { + "type": "text", + "placeholders_order": [ + "protocolName" + ], + "placeholders": { + "protocolName": {} + } + }, + "coinsAreActivatedSuccessfully": "{protocolName} érme sikeresen aktiválva", + "@coinsAreActivatedSuccessfully": { + "type": "text", + "placeholders_order": [ + "protocolName" + ], + "placeholders": { + "protocolName": {} + } + }, + "activationInProgress": "{protocolName} Aktiválás folyamatban", + "@activationInProgress": { + "type": "text", + "placeholders_order": [ + "protocolName" + ], + "placeholders": { + "protocolName": {} + } + }, + "activateCoins": "Aktiválja a {protocolName} érméket?", + "@activateCoins": { + "type": "text", + "placeholders_order": [ + "protocolName" + ], + "placeholders": { + "protocolName": {} + } + }, + "moreInfo": "Több információ", + "@moreInfo": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "showAddress": "Cím megjelenítése", + "@showAddress": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "transactionHiddenPhishing": "Ez a tranzakció egy lehetséges adathalász kísérlet miatt el lett rejtve.", + "@transactionHiddenPhishing": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "transactionAddress": "Tranzakció címe", + "@transactionAddress": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "transactionHidden": "Tranzakció rejtett", + "@transactionHidden": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "couldNotLaunchUrl": "Nem sikerült elindítani az URL-t", + "@couldNotLaunchUrl": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "willTakeTime": "Ez eltart egy ideig, és az alkalmazást az előtérben kell tartani.\nAz alkalmazás aktiválás közbeni leállítása problémákhoz vezethet.", + "@willTakeTime": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "minimizingWillTerminate": "Figyelmeztetés: Az alkalmazás iOS rendszeren való minimalizálása leállítja az aktiválási folyamatot.", + "@minimizingWillTerminate": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "enableNotificationsForActivationProgress": "Kérjük, engedélyezze az értesítéseket, hogy értesüljön az aktiválás folyamatáról.", + "@enableNotificationsForActivationProgress": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "qrCodeScanner": "QR Code Scanner", + "@qrCodeScanner": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "foundQrCode": "Talált QR kódot", + "@foundQrCode": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "contract": "Szerződés", + "@contract": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "startSwap": "Indítsa el a Swapot", + "@startSwap": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "none": "Egyik sem", + "@none": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "cexRate": "CEX árfolyam", + "@cexRate": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "incomingTransactionsProtectionSettings": "Bejövő {coinName} txs-védelmi beállítások", + "@incomingTransactionsProtectionSettings": { + "type": "text", + "placeholders_order": [ + "coinName" + ], + "placeholders": { + "coinName": {} + } + }, + "showingOrders": "{count}/{maxCount} rendelés megjelenítése.", + "@showingOrders": { + "type": "text", + "placeholders_order": [ + "count", + "maxCount" + ], + "placeholders": { + "count": {}, + "maxCount": {} + } + }, + "orderBookLess": "Kevésbé", + "@orderBookLess": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "orderBookMore": "Több", + "@orderBookMore": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "basedOnCoinRatio": "{coinName1}/{coinName2} alapján", + "@basedOnCoinRatio": { + "type": "text", + "placeholders_order": [ + "coinName1", + "coinName2" + ], + "placeholders": { + "coinName1": {}, + "coinName2": {} + } + }, + "detailedFeesSendTradingFeeTransactionFee": "kereskedési díj tranzakciós díj küldése", + "@detailedFeesSendTradingFeeTransactionFee": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "detailedFeesTradingFee": "kereskedési díj", + "@detailedFeesTradingFee": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "detailedFeesSendCoinTransactionFee": "küldje el a {coinName} tranzakciós díjat", + "@detailedFeesSendCoinTransactionFee": { + "type": "text", + "placeholders_order": [ + "coinName" + ], + "placeholders": { + "coinName": {} + } + }, + "detailedFeesReceiveCoinTransactionFee": "megkapja a {coinName} tranzakciós díjat", + "@detailedFeesReceiveCoinTransactionFee": { + "type": "text", + "placeholders_order": [ + "coinName" + ], + "placeholders": { + "coinName": {} + } + }, "filtersButton": "Szűrő", "@filtersButton": { "type": "text", @@ -5152,5 +5460,123 @@ "type": "text", "placeholders_order": [], "placeholders": {} + }, + "shouldScanPastTransaction": "Keresi a múltbeli {coin} tranzakciókat?", + "@shouldScanPastTransaction": { + "type": "text", + "placeholders_order": [ + "coin" + ], + "placeholders": { + "coin": {} + } + }, + "activationCancelled": "Az érme aktiválása megszakítva", + "@activationCancelled": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "coinActivationSuccessfull": "{coin} sikeresen aktiválva", + "@coinActivationSuccessfull": { + "type": "text", + "placeholders_order": [ + "coin" + ], + "placeholders": { + "coin": {} + } + }, + "coinActivationCancelled": "{coin} aktiválása megszakítva", + "@coinActivationCancelled": { + "type": "text", + "placeholders_order": [ + "coin" + ], + "placeholders": { + "coin": {} + } + }, + "pleaseAcceptAllCoinActivationRequests": "Kérjük, fogadjon el minden különleges érmeaktiválási kérést, vagy törölje az érmék kijelölését.", + "@pleaseAcceptAllCoinActivationRequests": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "cancelActivation": "Aktiválás megszakítása", + "@cancelActivation": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "cancelActivationQuestion": "Biztosan megszakítja az aktiválást?", + "@cancelActivationQuestion": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "cofirmCancelActivation": "Biztosan megszakítja az aktiválást?", + "@cofirmCancelActivation": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "syncTransactionsQuestion": "Mely {name} tranzakciókat szeretné szinkronizálni?", + "@syncTransactionsQuestion": { + "type": "text", + "placeholders_order": [ + "name" + ], + "placeholders": { + "name": {} + } + }, + "syncNewTransactions": "Új tranzakciók szinkronizálása", + "@syncNewTransactions": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "syncFromDate": "Szinkronizálás a megadott dátumtól", + "@syncFromDate": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "syncFromSaplingActivation": "Szinkronizálás a csemete aktiválásából", + "@syncFromSaplingActivation": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "selectDate": "Válasszon egy dátumot", + "@selectDate": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "startDate": "Kezdő dátum", + "@startDate": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "futureTransactions": "A jövőbeni tranzakciókat szinkronizálni fogjuk a nyilvános kulcsához társított aktiválás után. Ez a leggyorsabb lehetőség, és a legkevesebb tárhelyet foglalja el.", + "@futureTransactions": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "allPastTransactions": "A pénztárcája minden korábbi tranzakciót mutat. Ez jelentős tárhelyet és időt vesz igénybe, mivel az összes blokkot letölti és átvizsgálja.", + "@allPastTransactions": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "pastTransactionsFromDate": "A pénztárcája megmutatja a megadott dátum után végrehajtott korábbi tranzakcióit.", + "@pastTransactionsFromDate": { + "type": "text", + "placeholders_order": [], + "placeholders": {} } } \ No newline at end of file diff --git a/lib/l10n/intl_ja.arb b/lib/l10n/intl_ja.arb index efd29a9eb..4333a152a 100644 --- a/lib/l10n/intl_ja.arb +++ b/lib/l10n/intl_ja.arb @@ -1257,6 +1257,16 @@ "placeholders_order": [], "placeholders": {} }, + "gweiError": "グウェイは {value} までである必要があります", + "@gweiError": { + "type": "text", + "placeholders_order": [ + "value" + ], + "placeholders": { + "value": {} + } + }, "feesError": "料金は {value} までである必要があります", "@feesError": { "type": "text", @@ -1267,6 +1277,16 @@ "value": {} } }, + "limitError": "制限は最大 {value} である必要があります", + "@limitError": { + "type": "text", + "placeholders_order": [ + "value" + ], + "placeholders": { + "value": {} + } + }, "errorNotAValidAddress": "有効な住所ではありません", "@errorNotAValidAddress": { "type": "text", @@ -1441,6 +1461,18 @@ "placeholders_order": [], "placeholders": {} }, + "gettingTxWait": "トランザクションを取得しています。お待ちください", + "@gettingTxWait": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "finishingUp": "完了しました、お待ちください", + "@finishingUp": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, "feedback": "ログファイルの共有", "@feedback": { "type": "text", @@ -2679,6 +2711,12 @@ "placeholders_order": [], "placeholders": {} }, + "searchFilterSubtitleZHTLC": "すべての ZHTLC コインを選択します", + "@searchFilterSubtitleZHTLC": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, "searchFilterSubtitleFTM": "すべてのファントムトークンを選択", "@searchFilterSubtitleFTM": { "type": "text", @@ -2781,6 +2819,12 @@ "placeholders_order": [], "placeholders": {} }, + "tagZHTLC": "ZHTLC", + "@tagZHTLC": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, "tagKMD": "KMD", "@tagKMD": { "type": "text", @@ -3577,6 +3621,16 @@ "coinAbbr": {} } }, + "failedToCancelActivation": "{coinAbbr} のアクティベーションをキャンセルできませんでした", + "@failedToCancelActivation": { + "type": "text", + "placeholders_order": [ + "coinAbbr" + ], + "placeholders": { + "coinAbbr": {} + } + }, "isUnavailable": "{coinAbbr} は利用できません:(", "@isUnavailable": { "type": "text", @@ -3741,6 +3795,16 @@ "placeholders_order": [], "placeholders": {} }, + "invalidCoinAddress": "無効な {coin} アドレスです", + "@invalidCoinAddress": { + "type": "text", + "placeholders_order": [ + "coin" + ], + "placeholders": { + "coin": {} + } + }, "multiActivateGas": "最初に {coin} を有効にして、残高をチャージしてください", "@multiActivateGas": { "type": "text", @@ -4799,6 +4863,250 @@ "placeholders_order": [], "placeholders": {} }, + "activating": "{coinName}をアクティブ化しています", + "@activating": { + "type": "text", + "placeholders_order": [ + "coinName" + ], + "placeholders": { + "coinName": {} + } + }, + "doNotCloseTheAppTapForMoreInfo": "アプリを閉じないでください。詳細についてはタップしてください...", + "@doNotCloseTheAppTapForMoreInfo": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "activation": "{coinName} のアクティベーション", + "@activation": { + "type": "text", + "placeholders_order": [ + "coinName" + ], + "placeholders": { + "coinName": {} + } + }, + "coinsAreActivated": "{protocolName} コインが有効化されました", + "@coinsAreActivated": { + "type": "text", + "placeholders_order": [ + "protocolName" + ], + "placeholders": { + "protocolName": {} + } + }, + "coinsAreNotActivated": "{protocolName} コインは有効化されていません", + "@coinsAreNotActivated": { + "type": "text", + "placeholders_order": [ + "protocolName" + ], + "placeholders": { + "protocolName": {} + } + }, + "coinsAreActivatedSuccessfully": "{protocolName} コインが正常に有効化されました", + "@coinsAreActivatedSuccessfully": { + "type": "text", + "placeholders_order": [ + "protocolName" + ], + "placeholders": { + "protocolName": {} + } + }, + "activationInProgress": "{protocolName} のアクティベーションが進行中です", + "@activationInProgress": { + "type": "text", + "placeholders_order": [ + "protocolName" + ], + "placeholders": { + "protocolName": {} + } + }, + "activateCoins": "{protocolName} コインをアクティブにしますか?", + "@activateCoins": { + "type": "text", + "placeholders_order": [ + "protocolName" + ], + "placeholders": { + "protocolName": {} + } + }, + "moreInfo": "より詳しい情報", + "@moreInfo": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "showAddress": "住所を表示", + "@showAddress": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "transactionHiddenPhishing": "このトランザクションはフィッシングの可能性があるため非表示になりました。", + "@transactionHiddenPhishing": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "transactionAddress": "取引アドレス", + "@transactionAddress": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "transactionHidden": "非表示のトランザクション", + "@transactionHidden": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "couldNotLaunchUrl": "URLを起動できませんでした", + "@couldNotLaunchUrl": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "willTakeTime": "これには時間がかかるため、アプリをフォアグラウンドに維持する必要があります。\nアクティベーションの進行中にアプリを終了すると、問題が発生する可能性があります。", + "@willTakeTime": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "minimizingWillTerminate": "警告: iOS でアプリを最小化すると、アクティベーション プロセスが終了します。", + "@minimizingWillTerminate": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "enableNotificationsForActivationProgress": "アクティベーションの進行状況に関する最新情報を取得するには、通知を有効にしてください。", + "@enableNotificationsForActivationProgress": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "qrCodeScanner": "QRコードスキャナー", + "@qrCodeScanner": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "foundQrCode": "QRコードが見つかりました", + "@foundQrCode": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "contract": "契約", + "@contract": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "startSwap": "スワップの開始", + "@startSwap": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "none": "なし", + "@none": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "cexRate": "CEXレート", + "@cexRate": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "incomingTransactionsProtectionSettings": "受信 {coinName} txs 保護設定", + "@incomingTransactionsProtectionSettings": { + "type": "text", + "placeholders_order": [ + "coinName" + ], + "placeholders": { + "coinName": {} + } + }, + "showingOrders": "{maxCount} 件中 {count} 件の注文を表示しています。", + "@showingOrders": { + "type": "text", + "placeholders_order": [ + "count", + "maxCount" + ], + "placeholders": { + "count": {}, + "maxCount": {} + } + }, + "orderBookLess": "少ない", + "@orderBookLess": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "orderBookMore": "もっと", + "@orderBookMore": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "basedOnCoinRatio": "{coinName1}/{coinName2} に基づく", + "@basedOnCoinRatio": { + "type": "text", + "placeholders_order": [ + "coinName1", + "coinName2" + ], + "placeholders": { + "coinName1": {}, + "coinName2": {} + } + }, + "detailedFeesSendTradingFeeTransactionFee": "送信取引手数料 取引手数料", + "@detailedFeesSendTradingFeeTransactionFee": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "detailedFeesTradingFee": "取引手数料", + "@detailedFeesTradingFee": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "detailedFeesSendCoinTransactionFee": "{coinName} の取引手数料を送信します", + "@detailedFeesSendCoinTransactionFee": { + "type": "text", + "placeholders_order": [ + "coinName" + ], + "placeholders": { + "coinName": {} + } + }, + "detailedFeesReceiveCoinTransactionFee": "{coinName} の取引手数料を受け取る", + "@detailedFeesReceiveCoinTransactionFee": { + "type": "text", + "placeholders_order": [ + "coinName" + ], + "placeholders": { + "coinName": {} + } + }, "filtersButton": "フィルター", "@filtersButton": { "type": "text", @@ -5152,5 +5460,123 @@ "type": "text", "placeholders_order": [], "placeholders": {} + }, + "shouldScanPastTransaction": "過去の {coin} 取引をスキャンしますか?", + "@shouldScanPastTransaction": { + "type": "text", + "placeholders_order": [ + "coin" + ], + "placeholders": { + "coin": {} + } + }, + "activationCancelled": "コインのアクティベーションがキャンセルされました", + "@activationCancelled": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "coinActivationSuccessfull": "{coin} を正常にアクティブ化しました", + "@coinActivationSuccessfull": { + "type": "text", + "placeholders_order": [ + "coin" + ], + "placeholders": { + "coin": {} + } + }, + "coinActivationCancelled": "{coin} のアクティベーションがキャンセルされました", + "@coinActivationCancelled": { + "type": "text", + "placeholders_order": [ + "coin" + ], + "placeholders": { + "coin": {} + } + }, + "pleaseAcceptAllCoinActivationRequests": "特別なコインの有効化リクエストをすべて受け入れるか、コインの選択を解除してください。", + "@pleaseAcceptAllCoinActivationRequests": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "cancelActivation": "アクティベーションのキャンセル", + "@cancelActivation": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "cancelActivationQuestion": "アクティベーションをキャンセルしてもよろしいですか?", + "@cancelActivationQuestion": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "cofirmCancelActivation": "アクティベーションをキャンセルしてもよろしいですか?", + "@cofirmCancelActivation": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "syncTransactionsQuestion": "どの {name} トランザクションを同期しますか?", + "@syncTransactionsQuestion": { + "type": "text", + "placeholders_order": [ + "name" + ], + "placeholders": { + "name": {} + } + }, + "syncNewTransactions": "新しいトランザクションを同期する", + "@syncNewTransactions": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "syncFromDate": "指定した日付から同期", + "@syncFromDate": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "syncFromSaplingActivation": "苗木アクティベーションからの同期", + "@syncFromSaplingActivation": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "selectDate": "日付を選択してください", + "@selectDate": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "startDate": "開始日", + "@startDate": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "futureTransactions": "公開キーに関連付けられたアクティベーション後に行われる今後のトランザクションは同期されます。これは最も迅速なオプションであり、必要なストレージの量も最小限です。", + "@futureTransactions": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "allPastTransactions": "ウォレットには過去の取引が表示されます。すべてのブロックがダウンロードされてスキャンされるため、これにはかなりのストレージと時間がかかります。", + "@allPastTransactions": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "pastTransactionsFromDate": "ウォレットには、指定した日付以降に行われた過去の取引が表示されます。", + "@pastTransactionsFromDate": { + "type": "text", + "placeholders_order": [], + "placeholders": {} } } \ No newline at end of file diff --git a/lib/l10n/intl_ko.arb b/lib/l10n/intl_ko.arb index 0ef2e5e50..03f3b624e 100644 --- a/lib/l10n/intl_ko.arb +++ b/lib/l10n/intl_ko.arb @@ -1257,6 +1257,16 @@ "placeholders_order": [], "placeholders": {} }, + "gweiError": "Gwei는 최대 {value}이어야 합니다.", + "@gweiError": { + "type": "text", + "placeholders_order": [ + "value" + ], + "placeholders": { + "value": {} + } + }, "feesError": "수수료는 최대 {value}이어야 합니다.", "@feesError": { "type": "text", @@ -1267,6 +1277,16 @@ "value": {} } }, + "limitError": "한도는 최대 {value}이어야 합니다.", + "@limitError": { + "type": "text", + "placeholders_order": [ + "value" + ], + "placeholders": { + "value": {} + } + }, "errorNotAValidAddress": "유효한 주소가 없습니다", "@errorNotAValidAddress": { "type": "text", @@ -1441,6 +1461,18 @@ "placeholders_order": [], "placeholders": {} }, + "gettingTxWait": "거래를 받는 중입니다. 잠시 기다려 주세요.", + "@gettingTxWait": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "finishingUp": "마무리 중이니 잠시만 기다려주세요", + "@finishingUp": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, "feedback": "로그 파일 공유", "@feedback": { "type": "text", @@ -2679,6 +2711,12 @@ "placeholders_order": [], "placeholders": {} }, + "searchFilterSubtitleZHTLC": "모든 ZHTLC 코인을 선택하세요", + "@searchFilterSubtitleZHTLC": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, "searchFilterSubtitleFTM": "Fantom 토큰 모두 선택", "@searchFilterSubtitleFTM": { "type": "text", @@ -2781,6 +2819,12 @@ "placeholders_order": [], "placeholders": {} }, + "tagZHTLC": "ZHTLC", + "@tagZHTLC": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, "tagKMD": "KMD", "@tagKMD": { "type": "text", @@ -3577,6 +3621,16 @@ "coinAbbr": {} } }, + "failedToCancelActivation": "{coinAbbr} 활성화를 취소하지 못했습니다.", + "@failedToCancelActivation": { + "type": "text", + "placeholders_order": [ + "coinAbbr" + ], + "placeholders": { + "coinAbbr": {} + } + }, "isUnavailable": "{coinAbbr} 이 사용불가합니다 :(", "@isUnavailable": { "type": "text", @@ -3741,6 +3795,16 @@ "placeholders_order": [], "placeholders": {} }, + "invalidCoinAddress": "잘못된 {coin} 주소", + "@invalidCoinAddress": { + "type": "text", + "placeholders_order": [ + "coin" + ], + "placeholders": { + "coin": {} + } + }, "multiActivateGas": "{coin} 활성화하고 먼저 가장 높은 잔고로", "@multiActivateGas": { "type": "text", @@ -4799,6 +4863,250 @@ "placeholders_order": [], "placeholders": {} }, + "activating": "{coinName} 활성화 중", + "@activating": { + "type": "text", + "placeholders_order": [ + "coinName" + ], + "placeholders": { + "coinName": {} + } + }, + "doNotCloseTheAppTapForMoreInfo": "앱을 닫지 마세요. 자세한 내용을 보려면 탭하세요...", + "@doNotCloseTheAppTapForMoreInfo": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "activation": "{coinName} 활성화", + "@activation": { + "type": "text", + "placeholders_order": [ + "coinName" + ], + "placeholders": { + "coinName": {} + } + }, + "coinsAreActivated": "{protocolName} 코인이 활성화되었습니다", + "@coinsAreActivated": { + "type": "text", + "placeholders_order": [ + "protocolName" + ], + "placeholders": { + "protocolName": {} + } + }, + "coinsAreNotActivated": "{protocolName} 코인이 활성화되지 않았습니다.", + "@coinsAreNotActivated": { + "type": "text", + "placeholders_order": [ + "protocolName" + ], + "placeholders": { + "protocolName": {} + } + }, + "coinsAreActivatedSuccessfully": "{protocolName} 코인이 성공적으로 활성화되었습니다.", + "@coinsAreActivatedSuccessfully": { + "type": "text", + "placeholders_order": [ + "protocolName" + ], + "placeholders": { + "protocolName": {} + } + }, + "activationInProgress": "{protocolName} 활성화 진행 중", + "@activationInProgress": { + "type": "text", + "placeholders_order": [ + "protocolName" + ], + "placeholders": { + "protocolName": {} + } + }, + "activateCoins": "{protocolName} 코인을 활성화하시겠습니까?", + "@activateCoins": { + "type": "text", + "placeholders_order": [ + "protocolName" + ], + "placeholders": { + "protocolName": {} + } + }, + "moreInfo": "더 많은 정보", + "@moreInfo": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "showAddress": "주소 표시", + "@showAddress": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "transactionHiddenPhishing": "피싱 시도 가능성으로 인해 이 거래가 숨겨졌습니다.", + "@transactionHiddenPhishing": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "transactionAddress": "거래 주소", + "@transactionAddress": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "transactionHidden": "숨겨진 거래", + "@transactionHidden": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "couldNotLaunchUrl": "URL을 시작할 수 없습니다.", + "@couldNotLaunchUrl": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "willTakeTime": "이 작업은 시간이 걸리며 앱이 포그라운드에 유지되어야 합니다.\n활성화가 진행되는 동안 앱을 종료하면 문제가 발생할 수 있습니다.", + "@willTakeTime": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "minimizingWillTerminate": "경고: iOS에서 앱을 최소화하면 활성화 프로세스가 종료됩니다.", + "@minimizingWillTerminate": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "enableNotificationsForActivationProgress": "활성화 진행 상황에 대한 업데이트를 받으려면 알림을 활성화하세요.", + "@enableNotificationsForActivationProgress": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "qrCodeScanner": "QR 코드 스캐너", + "@qrCodeScanner": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "foundQrCode": "QR코드 발견", + "@foundQrCode": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "contract": "계약", + "@contract": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "startSwap": "스왑 시작", + "@startSwap": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "none": "없음", + "@none": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "cexRate": "CEX 비율", + "@cexRate": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "incomingTransactionsProtectionSettings": "수신되는 {coinName} txs 보호 설정", + "@incomingTransactionsProtectionSettings": { + "type": "text", + "placeholders_order": [ + "coinName" + ], + "placeholders": { + "coinName": {} + } + }, + "showingOrders": "{maxCount}개 주문 중 {count}개를 표시 중입니다.", + "@showingOrders": { + "type": "text", + "placeholders_order": [ + "count", + "maxCount" + ], + "placeholders": { + "count": {}, + "maxCount": {} + } + }, + "orderBookLess": "더 적은", + "@orderBookLess": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "orderBookMore": "더", + "@orderBookMore": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "basedOnCoinRatio": "{coinName1}/{coinName2} 기준", + "@basedOnCoinRatio": { + "type": "text", + "placeholders_order": [ + "coinName1", + "coinName2" + ], + "placeholders": { + "coinName1": {}, + "coinName2": {} + } + }, + "detailedFeesSendTradingFeeTransactionFee": "거래 수수료 거래 수수료 보내기", + "@detailedFeesSendTradingFeeTransactionFee": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "detailedFeesTradingFee": "거래 수수료", + "@detailedFeesTradingFee": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "detailedFeesSendCoinTransactionFee": "{coinName} 거래 수수료 보내기", + "@detailedFeesSendCoinTransactionFee": { + "type": "text", + "placeholders_order": [ + "coinName" + ], + "placeholders": { + "coinName": {} + } + }, + "detailedFeesReceiveCoinTransactionFee": "{coinName} 거래 수수료를 받습니다", + "@detailedFeesReceiveCoinTransactionFee": { + "type": "text", + "placeholders_order": [ + "coinName" + ], + "placeholders": { + "coinName": {} + } + }, "filtersButton": "필터", "@filtersButton": { "type": "text", @@ -5152,5 +5460,123 @@ "type": "text", "placeholders_order": [], "placeholders": {} + }, + "shouldScanPastTransaction": "과거 {coin} 거래를 검색하시겠습니까?", + "@shouldScanPastTransaction": { + "type": "text", + "placeholders_order": [ + "coin" + ], + "placeholders": { + "coin": {} + } + }, + "activationCancelled": "코인 활성화가 취소되었습니다.", + "@activationCancelled": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "coinActivationSuccessfull": "{coin}을(를) 성공적으로 활성화했습니다", + "@coinActivationSuccessfull": { + "type": "text", + "placeholders_order": [ + "coin" + ], + "placeholders": { + "coin": {} + } + }, + "coinActivationCancelled": "{coin} 활성화가 취소되었습니다.", + "@coinActivationCancelled": { + "type": "text", + "placeholders_order": [ + "coin" + ], + "placeholders": { + "coin": {} + } + }, + "pleaseAcceptAllCoinActivationRequests": "모든 특별 코인 활성화 요청을 수락하거나 코인 선택을 취소하세요.", + "@pleaseAcceptAllCoinActivationRequests": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "cancelActivation": "활성화 취소", + "@cancelActivation": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "cancelActivationQuestion": "활성화를 취소하시겠습니까?", + "@cancelActivationQuestion": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "cofirmCancelActivation": "활성화를 취소하시겠습니까?", + "@cofirmCancelActivation": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "syncTransactionsQuestion": "어떤 {name} 거래를 동기화하시겠습니까?", + "@syncTransactionsQuestion": { + "type": "text", + "placeholders_order": [ + "name" + ], + "placeholders": { + "name": {} + } + }, + "syncNewTransactions": "새 거래 동기화", + "@syncNewTransactions": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "syncFromDate": "지정된 날짜부터 동기화", + "@syncFromDate": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "syncFromSaplingActivation": "묘목 활성화에서 동기화", + "@syncFromSaplingActivation": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "selectDate": "날짜를 선택하세요", + "@selectDate": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "startDate": "시작일", + "@startDate": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "futureTransactions": "공개 키와 관련된 활성화 후 향후 거래가 동기화됩니다. 이는 가장 빠른 옵션이며 저장 공간을 가장 적게 차지합니다.", + "@futureTransactions": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "allPastTransactions": "지갑에는 과거 거래가 표시됩니다. 모든 블록이 다운로드되고 스캔되므로 상당한 저장 공간과 시간이 소요됩니다.", + "@allPastTransactions": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "pastTransactionsFromDate": "귀하의 지갑에는 지정된 날짜 이후에 이루어진 과거 거래가 표시됩니다.", + "@pastTransactionsFromDate": { + "type": "text", + "placeholders_order": [], + "placeholders": {} } } \ No newline at end of file diff --git a/lib/l10n/intl_messages.arb b/lib/l10n/intl_messages.arb index eabd0f61b..a5bb8f97d 100644 --- a/lib/l10n/intl_messages.arb +++ b/lib/l10n/intl_messages.arb @@ -1,5 +1,5 @@ { - "@@last_modified": "2023-07-10T19:54:36.659455", + "@@last_modified": "2023-10-08T14:29:27.352621", "mobileDataWarning": "Please note that now you're using cellular data and participation in {appName} P2P network consume internet traffic. It's better to use a WiFi network if your cellular data plan is costly.", "@mobileDataWarning": { "type": "text", @@ -1258,6 +1258,16 @@ "placeholders_order": [], "placeholders": {} }, + "gweiError": "Gwei must be up to {value}", + "@gweiError": { + "type": "text", + "placeholders_order": [ + "value" + ], + "placeholders": { + "value": {} + } + }, "feesError": "Fees must be up to {value}", "@feesError": { "type": "text", @@ -1268,6 +1278,16 @@ "value": {} } }, + "limitError": "Limit must be up to {value}", + "@limitError": { + "type": "text", + "placeholders_order": [ + "value" + ], + "placeholders": { + "value": {} + } + }, "errorNotAValidAddress": "Not a valid address", "@errorNotAValidAddress": { "type": "text", @@ -1442,6 +1462,18 @@ "placeholders_order": [], "placeholders": {} }, + "gettingTxWait": "Getting transaction, please wait", + "@gettingTxWait": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "finishingUp": "Finishing up, please wait", + "@finishingUp": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, "feedback": "Share Log File", "@feedback": { "type": "text", @@ -2680,6 +2712,12 @@ "placeholders_order": [], "placeholders": {} }, + "searchFilterSubtitleZHTLC": "Select all ZHTLC coins", + "@searchFilterSubtitleZHTLC": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, "searchFilterSubtitleFTM": "Select all Fantom tokens", "@searchFilterSubtitleFTM": { "type": "text", @@ -2782,6 +2820,12 @@ "placeholders_order": [], "placeholders": {} }, + "tagZHTLC": "ZHTLC", + "@tagZHTLC": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, "tagKMD": "KMD", "@tagKMD": { "type": "text", @@ -3578,6 +3622,16 @@ "coinAbbr": {} } }, + "failedToCancelActivation": "Failed to cancel activation of {coinAbbr}", + "@failedToCancelActivation": { + "type": "text", + "placeholders_order": [ + "coinAbbr" + ], + "placeholders": { + "coinAbbr": {} + } + }, "isUnavailable": "{coinAbbr} is unavailable :(", "@isUnavailable": { "type": "text", @@ -3742,6 +3796,16 @@ "placeholders_order": [], "placeholders": {} }, + "invalidCoinAddress": "Invalid {coin} address", + "@invalidCoinAddress": { + "type": "text", + "placeholders_order": [ + "coin" + ], + "placeholders": { + "coin": {} + } + }, "multiActivateGas": "Activate {coin} and top-up balance first", "@multiActivateGas": { "type": "text", @@ -4478,7 +4542,7 @@ "placeholders_order": [], "placeholders": {} }, - "scrollToContinue": "Scroll to bottom to continue...", + "scrollToContinue": "Scroll to the bottom to continue...", "@scrollToContinue": { "type": "text", "placeholders_order": [], @@ -4800,6 +4864,250 @@ "placeholders_order": [], "placeholders": {} }, + "activating": "Activating {coinName}", + "@activating": { + "type": "text", + "placeholders_order": [ + "coinName" + ], + "placeholders": { + "coinName": {} + } + }, + "doNotCloseTheAppTapForMoreInfo": "Do not close the app. Tap for more info...", + "@doNotCloseTheAppTapForMoreInfo": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "activation": "{coinName} Activation", + "@activation": { + "type": "text", + "placeholders_order": [ + "coinName" + ], + "placeholders": { + "coinName": {} + } + }, + "coinsAreActivated": "{protocolName} coins are activated", + "@coinsAreActivated": { + "type": "text", + "placeholders_order": [ + "protocolName" + ], + "placeholders": { + "protocolName": {} + } + }, + "coinsAreNotActivated": "{protocolName} coins are not activated", + "@coinsAreNotActivated": { + "type": "text", + "placeholders_order": [ + "protocolName" + ], + "placeholders": { + "protocolName": {} + } + }, + "coinsAreActivatedSuccessfully": "{protocolName} coins activated successfully", + "@coinsAreActivatedSuccessfully": { + "type": "text", + "placeholders_order": [ + "protocolName" + ], + "placeholders": { + "protocolName": {} + } + }, + "activationInProgress": "{protocolName} Activation in Progress", + "@activationInProgress": { + "type": "text", + "placeholders_order": [ + "protocolName" + ], + "placeholders": { + "protocolName": {} + } + }, + "activateCoins": "Activate {protocolName} coins?", + "@activateCoins": { + "type": "text", + "placeholders_order": [ + "protocolName" + ], + "placeholders": { + "protocolName": {} + } + }, + "moreInfo": "More Info", + "@moreInfo": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "showAddress": "Show Address", + "@showAddress": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "transactionHiddenPhishing": "This transaction was hidden due to a possible phishing attempt.", + "@transactionHiddenPhishing": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "transactionAddress": "Transaction Address", + "@transactionAddress": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "transactionHidden": "Transaction Hidden", + "@transactionHidden": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "couldNotLaunchUrl": "Could not launch URL", + "@couldNotLaunchUrl": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "willTakeTime": "This will take a while and the app must be kept in the foreground.\nTerminating the app while activation is in progress could lead to issues.", + "@willTakeTime": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "minimizingWillTerminate": "Warning: Minimizing the app on iOS will terminate the activation process.", + "@minimizingWillTerminate": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "enableNotificationsForActivationProgress": "Please enable notifications to get updates on the activation progress.", + "@enableNotificationsForActivationProgress": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "qrCodeScanner": "QR Code Scanner", + "@qrCodeScanner": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "foundQrCode": "Found QR Code", + "@foundQrCode": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "contract": "Contract", + "@contract": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "startSwap": "Start Swap", + "@startSwap": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "none": "None", + "@none": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "cexRate": "CEX Rate", + "@cexRate": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "incomingTransactionsProtectionSettings": "Incoming {coinName} txs protection settings", + "@incomingTransactionsProtectionSettings": { + "type": "text", + "placeholders_order": [ + "coinName" + ], + "placeholders": { + "coinName": {} + } + }, + "showingOrders": "Showing {count} of {maxCount} orders. ", + "@showingOrders": { + "type": "text", + "placeholders_order": [ + "count", + "maxCount" + ], + "placeholders": { + "count": {}, + "maxCount": {} + } + }, + "orderBookLess": "Less", + "@orderBookLess": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "orderBookMore": "More", + "@orderBookMore": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "basedOnCoinRatio": "based on {coinName1}/{coinName2}", + "@basedOnCoinRatio": { + "type": "text", + "placeholders_order": [ + "coinName1", + "coinName2" + ], + "placeholders": { + "coinName1": {}, + "coinName2": {} + } + }, + "detailedFeesSendTradingFeeTransactionFee": "send trading fee transaction fee", + "@detailedFeesSendTradingFeeTransactionFee": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "detailedFeesTradingFee": "trading fee", + "@detailedFeesTradingFee": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "detailedFeesSendCoinTransactionFee": "send {coinName} transaction fee", + "@detailedFeesSendCoinTransactionFee": { + "type": "text", + "placeholders_order": [ + "coinName" + ], + "placeholders": { + "coinName": {} + } + }, + "detailedFeesReceiveCoinTransactionFee": "receive {coinName} transaction fee", + "@detailedFeesReceiveCoinTransactionFee": { + "type": "text", + "placeholders_order": [ + "coinName" + ], + "placeholders": { + "coinName": {} + } + }, "filtersButton": "Filter", "@filtersButton": { "type": "text", @@ -5142,7 +5450,7 @@ "placeholders_order": [], "placeholders": {} }, - "rebrandingAnnouncement": "It's a new era! We have officially changed our name from 'AtomicDEX' to 'Komodo Wallet'", + "rebrandingAnnouncement": "It's a new era! We have officially rebranded from 'AtomicDEX' to 'Komodo Wallet'", "@rebrandingAnnouncement": { "type": "text", "placeholders_order": [], @@ -5153,5 +5461,123 @@ "type": "text", "placeholders_order": [], "placeholders": {} + }, + "shouldScanPastTransaction": "Scan for past {coin} transactions?", + "@shouldScanPastTransaction": { + "type": "text", + "placeholders_order": [ + "coin" + ], + "placeholders": { + "coin": {} + } + }, + "activationCancelled": "Coin activation cancelled", + "@activationCancelled": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "coinActivationSuccessfull": "Successfully activated {coin}", + "@coinActivationSuccessfull": { + "type": "text", + "placeholders_order": [ + "coin" + ], + "placeholders": { + "coin": {} + } + }, + "coinActivationCancelled": "{coin} activation cancelled", + "@coinActivationCancelled": { + "type": "text", + "placeholders_order": [ + "coin" + ], + "placeholders": { + "coin": {} + } + }, + "pleaseAcceptAllCoinActivationRequests": "Please accept all special coin activation requests or deselect the coins.", + "@pleaseAcceptAllCoinActivationRequests": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "cancelActivation": "Cancel Activation", + "@cancelActivation": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "cancelActivationQuestion": "Are you sure you want to cancel activation?", + "@cancelActivationQuestion": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "cofirmCancelActivation": "Are you sure you want to cancel activation?", + "@cofirmCancelActivation": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "syncTransactionsQuestion": "Which {name} transactions would you like to sync?", + "@syncTransactionsQuestion": { + "type": "text", + "placeholders_order": [ + "name" + ], + "placeholders": { + "name": {} + } + }, + "syncNewTransactions": "Sync new transactions", + "@syncNewTransactions": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "syncFromDate": "Sync from specified date", + "@syncFromDate": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "syncFromSaplingActivation": "Sync from sapling activation", + "@syncFromSaplingActivation": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "selectDate": "Select a Date", + "@selectDate": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "startDate": "Start Date", + "@startDate": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "futureTransactions": "We will sync future transactions made after activation associated with your public key. This is the quickest option and takes up the least amount of storage.", + "@futureTransactions": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "allPastTransactions": "Your wallet will show any past transactions. This will take significant storage and time as all blocks will be downloaded and scanned.", + "@allPastTransactions": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "pastTransactionsFromDate": "Your wallet will show your past transactions made after the specified date.", + "@pastTransactionsFromDate": { + "type": "text", + "placeholders_order": [], + "placeholders": {} } } \ No newline at end of file diff --git a/lib/l10n/intl_ru.arb b/lib/l10n/intl_ru.arb index 37ef827f9..6c1ca4a8b 100644 --- a/lib/l10n/intl_ru.arb +++ b/lib/l10n/intl_ru.arb @@ -1257,6 +1257,16 @@ "placeholders_order": [], "placeholders": {} }, + "gweiError": "Значение Gwei должно быть до {value}.", + "@gweiError": { + "type": "text", + "placeholders_order": [ + "value" + ], + "placeholders": { + "value": {} + } + }, "feesError": "Комиссия должна быть не более {value}", "@feesError": { "type": "text", @@ -1267,6 +1277,16 @@ "value": {} } }, + "limitError": "Лимит должен быть до {value}", + "@limitError": { + "type": "text", + "placeholders_order": [ + "value" + ], + "placeholders": { + "value": {} + } + }, "errorNotAValidAddress": "Невалидный адрес", "@errorNotAValidAddress": { "type": "text", @@ -1441,6 +1461,18 @@ "placeholders_order": [], "placeholders": {} }, + "gettingTxWait": "Идет транзакция, пожалуйста, подождите", + "@gettingTxWait": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "finishingUp": "Заканчиваем, пожалуйста, подождите", + "@finishingUp": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, "feedback": "Отправить логи", "@feedback": { "type": "text", @@ -2667,6 +2699,12 @@ "placeholders_order": [], "placeholders": {} }, + "searchFilterSubtitleZHTLC": "Выбрать все монеты ZHTLC", + "@searchFilterSubtitleZHTLC": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, "searchFilterSubtitleFTM": "Выбрать все Fantom токены", "@searchFilterSubtitleFTM": { "type": "text", @@ -2769,6 +2807,12 @@ "placeholders_order": [], "placeholders": {} }, + "tagZHTLC": "ZHTLC", + "@tagZHTLC": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, "tagKMD": "KMD", "@tagKMD": { "type": "text", @@ -3565,6 +3609,16 @@ "coinAbbr": {} } }, + "failedToCancelActivation": "Не удалось отменить активацию {coinAbbr}.", + "@failedToCancelActivation": { + "type": "text", + "placeholders_order": [ + "coinAbbr" + ], + "placeholders": { + "coinAbbr": {} + } + }, "isUnavailable": "{coinAbbr} недоступен :(", "@isUnavailable": { "type": "text", @@ -3729,6 +3783,16 @@ "placeholders_order": [], "placeholders": {} }, + "invalidCoinAddress": "Неверный адрес {coin}", + "@invalidCoinAddress": { + "type": "text", + "placeholders_order": [ + "coin" + ], + "placeholders": { + "coin": {} + } + }, "multiActivateGas": "Активируйте {coin} и пополните баланс", "@multiActivateGas": { "type": "text", @@ -4787,6 +4851,250 @@ "placeholders_order": [], "placeholders": {} }, + "activating": "Активация {coinName}", + "@activating": { + "type": "text", + "placeholders_order": [ + "coinName" + ], + "placeholders": { + "coinName": {} + } + }, + "doNotCloseTheAppTapForMoreInfo": "Не закрывайте приложение. Нажмите, чтобы узнать больше...", + "@doNotCloseTheAppTapForMoreInfo": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "activation": "{coinName} Активация", + "@activation": { + "type": "text", + "placeholders_order": [ + "coinName" + ], + "placeholders": { + "coinName": {} + } + }, + "coinsAreActivated": "Монеты {protocolName} активированы", + "@coinsAreActivated": { + "type": "text", + "placeholders_order": [ + "protocolName" + ], + "placeholders": { + "protocolName": {} + } + }, + "coinsAreNotActivated": "Монеты {protocolName} не активированы", + "@coinsAreNotActivated": { + "type": "text", + "placeholders_order": [ + "protocolName" + ], + "placeholders": { + "protocolName": {} + } + }, + "coinsAreActivatedSuccessfully": "Монеты {protocolName} успешно активированы", + "@coinsAreActivatedSuccessfully": { + "type": "text", + "placeholders_order": [ + "protocolName" + ], + "placeholders": { + "protocolName": {} + } + }, + "activationInProgress": "{protocolName} активируется", + "@activationInProgress": { + "type": "text", + "placeholders_order": [ + "protocolName" + ], + "placeholders": { + "protocolName": {} + } + }, + "activateCoins": "Активировать монеты {protocolName}?", + "@activateCoins": { + "type": "text", + "placeholders_order": [ + "protocolName" + ], + "placeholders": { + "protocolName": {} + } + }, + "moreInfo": "Больше информации", + "@moreInfo": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "showAddress": "Показать адрес", + "@showAddress": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "transactionHiddenPhishing": "Эта транзакция была скрыта из-за возможной попытки фишинга.", + "@transactionHiddenPhishing": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "transactionAddress": "Адрес транзакции", + "@transactionAddress": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "transactionHidden": "Транзакция скрыта", + "@transactionHidden": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "couldNotLaunchUrl": "Не удалось запустить URL", + "@couldNotLaunchUrl": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "willTakeTime": "Это займет некоторое время, и приложение должно оставаться на переднем плане.\nЗакрытие приложения во время активации может привести к проблемам.", + "@willTakeTime": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "minimizingWillTerminate": "Предупреждение: сворачивание приложения на iOS приведет к прекращению процесса активации.", + "@minimizingWillTerminate": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "enableNotificationsForActivationProgress": "Пожалуйста, включите уведомления, чтобы получать обновления о ходе активации.", + "@enableNotificationsForActivationProgress": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "qrCodeScanner": "Сканер QR-кода", + "@qrCodeScanner": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "foundQrCode": "Найден QR-код", + "@foundQrCode": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "contract": "Договор", + "@contract": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "startSwap": "Начать обмен", + "@startSwap": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "none": "Никто", + "@none": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "cexRate": "Курс CEX", + "@cexRate": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "incomingTransactionsProtectionSettings": "Настройки защиты входящих txs-транзакций {coinName}", + "@incomingTransactionsProtectionSettings": { + "type": "text", + "placeholders_order": [ + "coinName" + ], + "placeholders": { + "coinName": {} + } + }, + "showingOrders": "Показано {count} из {maxCount} заказов.", + "@showingOrders": { + "type": "text", + "placeholders_order": [ + "count", + "maxCount" + ], + "placeholders": { + "count": {}, + "maxCount": {} + } + }, + "orderBookLess": "Меньше", + "@orderBookLess": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "orderBookMore": "Более", + "@orderBookMore": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "basedOnCoinRatio": "на основе {coinName1}/{coinName2}", + "@basedOnCoinRatio": { + "type": "text", + "placeholders_order": [ + "coinName1", + "coinName2" + ], + "placeholders": { + "coinName1": {}, + "coinName2": {} + } + }, + "detailedFeesSendTradingFeeTransactionFee": "отправить торговую комиссию комиссию за транзакцию", + "@detailedFeesSendTradingFeeTransactionFee": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "detailedFeesTradingFee": "торговая комиссия", + "@detailedFeesTradingFee": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "detailedFeesSendCoinTransactionFee": "отправить комиссию за транзакцию {coinName}", + "@detailedFeesSendCoinTransactionFee": { + "type": "text", + "placeholders_order": [ + "coinName" + ], + "placeholders": { + "coinName": {} + } + }, + "detailedFeesReceiveCoinTransactionFee": "получить комиссию за транзакцию {coinName}", + "@detailedFeesReceiveCoinTransactionFee": { + "type": "text", + "placeholders_order": [ + "coinName" + ], + "placeholders": { + "coinName": {} + } + }, "filtersButton": "Фильтр", "@filtersButton": { "type": "text", @@ -5140,5 +5448,123 @@ "type": "text", "placeholders_order": [], "placeholders": {} + }, + "shouldScanPastTransaction": "Сканировать прошлые транзакции с {coin}?", + "@shouldScanPastTransaction": { + "type": "text", + "placeholders_order": [ + "coin" + ], + "placeholders": { + "coin": {} + } + }, + "activationCancelled": "Активация монеты отменена", + "@activationCancelled": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "coinActivationSuccessfull": "Успешно активирована {coin}", + "@coinActivationSuccessfull": { + "type": "text", + "placeholders_order": [ + "coin" + ], + "placeholders": { + "coin": {} + } + }, + "coinActivationCancelled": "Активация {coin} отменена", + "@coinActivationCancelled": { + "type": "text", + "placeholders_order": [ + "coin" + ], + "placeholders": { + "coin": {} + } + }, + "pleaseAcceptAllCoinActivationRequests": "Пожалуйста, примите все специальные запросы на активацию монет или отмените выбор монет.", + "@pleaseAcceptAllCoinActivationRequests": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "cancelActivation": "Отменить активацию", + "@cancelActivation": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "cancelActivationQuestion": "Вы уверены, что хотите отменить активацию?", + "@cancelActivationQuestion": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "cofirmCancelActivation": "Вы уверены, что хотите отменить активацию?", + "@cofirmCancelActivation": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "syncTransactionsQuestion": "Какие транзакции {name} вы хотите синхронизировать?", + "@syncTransactionsQuestion": { + "type": "text", + "placeholders_order": [ + "name" + ], + "placeholders": { + "name": {} + } + }, + "syncNewTransactions": "Синхронизировать новые транзакции", + "@syncNewTransactions": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "syncFromDate": "Синхронизировать с указанной даты", + "@syncFromDate": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "syncFromSaplingActivation": "Синхронизация с активацией саженца", + "@syncFromSaplingActivation": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "selectDate": "Выберите дату", + "@selectDate": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "startDate": "Дата начала", + "@startDate": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "futureTransactions": "Мы будем синхронизировать будущие транзакции, совершенные после активации, связанные с вашим открытым ключом. Это самый быстрый вариант и занимает меньше всего места.", + "@futureTransactions": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "allPastTransactions": "Ваш кошелек покажет все прошлые транзакции. Это потребует значительного объема памяти и времени, поскольку все блоки будут загружены и отсканированы.", + "@allPastTransactions": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "pastTransactionsFromDate": "Ваш кошелек покажет ваши прошлые транзакции, совершенные после указанной даты.", + "@pastTransactionsFromDate": { + "type": "text", + "placeholders_order": [], + "placeholders": {} } } \ No newline at end of file diff --git a/lib/l10n/intl_tr.arb b/lib/l10n/intl_tr.arb index 61eaf2dd8..2506ae3ab 100644 --- a/lib/l10n/intl_tr.arb +++ b/lib/l10n/intl_tr.arb @@ -1257,6 +1257,16 @@ "placeholders_order": [], "placeholders": {} }, + "gweiError": "Gwei en fazla {value} olmalıdır", + "@gweiError": { + "type": "text", + "placeholders_order": [ + "value" + ], + "placeholders": { + "value": {} + } + }, "feesError": "Ücretler en fazla {value} olmalıdır", "@feesError": { "type": "text", @@ -1267,6 +1277,16 @@ "value": {} } }, + "limitError": "Sınır en fazla {value} olmalıdır", + "@limitError": { + "type": "text", + "placeholders_order": [ + "value" + ], + "placeholders": { + "value": {} + } + }, "errorNotAValidAddress": "Geçerli bir adres değil", "@errorNotAValidAddress": { "type": "text", @@ -1441,6 +1461,18 @@ "placeholders_order": [], "placeholders": {} }, + "gettingTxWait": "İşlem alınıyor, lütfen bekleyin", + "@gettingTxWait": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "finishingUp": "Bitiriliyor, lütfen bekleyin", + "@finishingUp": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, "feedback": "Geri Bildirim Gönder", "@feedback": { "type": "text", @@ -2667,6 +2699,12 @@ "placeholders_order": [], "placeholders": {} }, + "searchFilterSubtitleZHTLC": "Tüm ZHTLC paralarını seç", + "@searchFilterSubtitleZHTLC": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, "searchFilterSubtitleFTM": "Tüm Fantom tokenlerini seç", "@searchFilterSubtitleFTM": { "type": "text", @@ -2769,6 +2807,12 @@ "placeholders_order": [], "placeholders": {} }, + "tagZHTLC": "ZHTLC", + "@tagZHTLC": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, "tagKMD": "KMD", "@tagKMD": { "type": "text", @@ -3565,6 +3609,16 @@ "coinAbbr": {} } }, + "failedToCancelActivation": "{coinAbbr} aktivasyonu iptal edilemedi", + "@failedToCancelActivation": { + "type": "text", + "placeholders_order": [ + "coinAbbr" + ], + "placeholders": { + "coinAbbr": {} + } + }, "isUnavailable": "{coinAbbr} mevcut değil :(", "@isUnavailable": { "type": "text", @@ -3729,6 +3783,16 @@ "placeholders_order": [], "placeholders": {} }, + "invalidCoinAddress": "Geçersiz {coin} adresi", + "@invalidCoinAddress": { + "type": "text", + "placeholders_order": [ + "coin" + ], + "placeholders": { + "coin": {} + } + }, "multiActivateGas": "Önce {coin}'i etkinleştirin ve bakiyeyi tamamlayın", "@multiActivateGas": { "type": "text", @@ -4787,6 +4851,250 @@ "placeholders_order": [], "placeholders": {} }, + "activating": "{coinName} etkinleştiriliyor", + "@activating": { + "type": "text", + "placeholders_order": [ + "coinName" + ], + "placeholders": { + "coinName": {} + } + }, + "doNotCloseTheAppTapForMoreInfo": "Uygulamayı kapatmayın. Daha fazla bilgi için dokunun...", + "@doNotCloseTheAppTapForMoreInfo": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "activation": "{coinName} Aktivasyonu", + "@activation": { + "type": "text", + "placeholders_order": [ + "coinName" + ], + "placeholders": { + "coinName": {} + } + }, + "coinsAreActivated": "{protocolName} parası etkinleştirildi", + "@coinsAreActivated": { + "type": "text", + "placeholders_order": [ + "protocolName" + ], + "placeholders": { + "protocolName": {} + } + }, + "coinsAreNotActivated": "{protocolName} parası etkinleştirilmedi", + "@coinsAreNotActivated": { + "type": "text", + "placeholders_order": [ + "protocolName" + ], + "placeholders": { + "protocolName": {} + } + }, + "coinsAreActivatedSuccessfully": "{protocolName} parası başarıyla etkinleştirildi", + "@coinsAreActivatedSuccessfully": { + "type": "text", + "placeholders_order": [ + "protocolName" + ], + "placeholders": { + "protocolName": {} + } + }, + "activationInProgress": "{protocolName} Etkinleştirme Devam Ediyor", + "@activationInProgress": { + "type": "text", + "placeholders_order": [ + "protocolName" + ], + "placeholders": { + "protocolName": {} + } + }, + "activateCoins": "{protocolName} paraları etkinleştirilsin mi?", + "@activateCoins": { + "type": "text", + "placeholders_order": [ + "protocolName" + ], + "placeholders": { + "protocolName": {} + } + }, + "moreInfo": "Daha fazla bilgi", + "@moreInfo": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "showAddress": "Adresi Göster", + "@showAddress": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "transactionHiddenPhishing": "Bu işlem olası bir kimlik avı girişimi nedeniyle gizlendi.", + "@transactionHiddenPhishing": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "transactionAddress": "İşlem Adresi", + "@transactionAddress": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "transactionHidden": "İşlem Gizli", + "@transactionHidden": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "couldNotLaunchUrl": "URL başlatılamadı", + "@couldNotLaunchUrl": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "willTakeTime": "Bu biraz zaman alacak ve uygulamanın ön planda tutulması gerekiyor.\nEtkinleştirme devam ederken uygulamayı sonlandırmak sorunlara yol açabilir.", + "@willTakeTime": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "minimizingWillTerminate": "Uyarı: iOS'ta uygulamanın simge durumuna küçültülmesi etkinleştirme sürecini sonlandıracaktır.", + "@minimizingWillTerminate": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "enableNotificationsForActivationProgress": "Etkinleştirme ilerlemesiyle ilgili güncellemeleri almak için lütfen bildirimleri etkinleştirin.", + "@enableNotificationsForActivationProgress": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "qrCodeScanner": "QR Kod Tarayıcı", + "@qrCodeScanner": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "foundQrCode": "QR Kodu Bulundu", + "@foundQrCode": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "contract": "Sözleşme", + "@contract": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "startSwap": "Takası Başlat", + "@startSwap": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "none": "Hiçbiri", + "@none": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "cexRate": "CEX Oranı", + "@cexRate": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "incomingTransactionsProtectionSettings": "Gelen {coinName} txs koruma ayarları", + "@incomingTransactionsProtectionSettings": { + "type": "text", + "placeholders_order": [ + "coinName" + ], + "placeholders": { + "coinName": {} + } + }, + "showingOrders": "{maxCount} siparişten {count} tanesi gösteriliyor.", + "@showingOrders": { + "type": "text", + "placeholders_order": [ + "count", + "maxCount" + ], + "placeholders": { + "count": {}, + "maxCount": {} + } + }, + "orderBookLess": "Az", + "@orderBookLess": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "orderBookMore": "Daha", + "@orderBookMore": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "basedOnCoinRatio": "{coinName1}/{coinName2} temel alınarak", + "@basedOnCoinRatio": { + "type": "text", + "placeholders_order": [ + "coinName1", + "coinName2" + ], + "placeholders": { + "coinName1": {}, + "coinName2": {} + } + }, + "detailedFeesSendTradingFeeTransactionFee": "işlem ücreti gönder işlem ücreti", + "@detailedFeesSendTradingFeeTransactionFee": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "detailedFeesTradingFee": "işlem ücreti", + "@detailedFeesTradingFee": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "detailedFeesSendCoinTransactionFee": "{coinName} işlem ücretini gönder", + "@detailedFeesSendCoinTransactionFee": { + "type": "text", + "placeholders_order": [ + "coinName" + ], + "placeholders": { + "coinName": {} + } + }, + "detailedFeesReceiveCoinTransactionFee": "{coinName} işlem ücretini alın", + "@detailedFeesReceiveCoinTransactionFee": { + "type": "text", + "placeholders_order": [ + "coinName" + ], + "placeholders": { + "coinName": {} + } + }, "filtersButton": "Filtre", "@filtersButton": { "type": "text", @@ -5140,5 +5448,123 @@ "type": "text", "placeholders_order": [], "placeholders": {} + }, + "shouldScanPastTransaction": "Geçmişteki {coin} işlemleri taransın mı?", + "@shouldScanPastTransaction": { + "type": "text", + "placeholders_order": [ + "coin" + ], + "placeholders": { + "coin": {} + } + }, + "activationCancelled": "Coin aktivasyonu iptal edildi", + "@activationCancelled": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "coinActivationSuccessfull": "{coin} başarıyla etkinleştirildi", + "@coinActivationSuccessfull": { + "type": "text", + "placeholders_order": [ + "coin" + ], + "placeholders": { + "coin": {} + } + }, + "coinActivationCancelled": "{coin} aktivasyonu iptal edildi", + "@coinActivationCancelled": { + "type": "text", + "placeholders_order": [ + "coin" + ], + "placeholders": { + "coin": {} + } + }, + "pleaseAcceptAllCoinActivationRequests": "Lütfen tüm özel jeton aktivasyon isteklerini kabul edin veya jetonların seçimini kaldırın.", + "@pleaseAcceptAllCoinActivationRequests": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "cancelActivation": "Etkinleştirmeyi İptal Et", + "@cancelActivation": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "cancelActivationQuestion": "Etkinleştirmeyi iptal etmek istediğinizden emin misiniz?", + "@cancelActivationQuestion": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "cofirmCancelActivation": "Etkinleştirmeyi iptal etmek istediğinizden emin misiniz?", + "@cofirmCancelActivation": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "syncTransactionsQuestion": "Hangi {name} işlemlerini senkronize etmek istiyorsunuz?", + "@syncTransactionsQuestion": { + "type": "text", + "placeholders_order": [ + "name" + ], + "placeholders": { + "name": {} + } + }, + "syncNewTransactions": "Yeni işlemleri senkronize et", + "@syncNewTransactions": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "syncFromDate": "Belirtilen tarihten itibaren senkronizasyon", + "@syncFromDate": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "syncFromSaplingActivation": "Fidan aktivasyonundan senkronizasyon", + "@syncFromSaplingActivation": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "selectDate": "Bir Tarih Seçin", + "@selectDate": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "startDate": "Başlangıç tarihi", + "@startDate": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "futureTransactions": "Genel anahtarınızla ilişkili etkinleştirme sonrasında gelecekte yapılacak işlemleri senkronize edeceğiz. Bu en hızlı seçenektir ve en az depolama alanını kaplar.", + "@futureTransactions": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "allPastTransactions": "Cüzdanınız geçmiş işlemleri gösterecektir. Tüm bloklar indirilip taranacağından bu, önemli miktarda depolama alanı ve zaman alacaktır.", + "@allPastTransactions": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "pastTransactionsFromDate": "Cüzdanınız, belirtilen tarihten sonra yaptığınız geçmiş işlemleri gösterecektir.", + "@pastTransactionsFromDate": { + "type": "text", + "placeholders_order": [], + "placeholders": {} } } \ No newline at end of file diff --git a/lib/l10n/intl_uk.arb b/lib/l10n/intl_uk.arb index 5f9c07813..3a6ce7eed 100644 --- a/lib/l10n/intl_uk.arb +++ b/lib/l10n/intl_uk.arb @@ -1257,6 +1257,16 @@ "placeholders_order": [], "placeholders": {} }, + "gweiError": "Gwei має бути до {value}", + "@gweiError": { + "type": "text", + "placeholders_order": [ + "value" + ], + "placeholders": { + "value": {} + } + }, "feesError": "Комісії мають бути до {value}", "@feesError": { "type": "text", @@ -1267,6 +1277,16 @@ "value": {} } }, + "limitError": "Обмеження має бути до {value}", + "@limitError": { + "type": "text", + "placeholders_order": [ + "value" + ], + "placeholders": { + "value": {} + } + }, "errorNotAValidAddress": "Недійсна адреса", "@errorNotAValidAddress": { "type": "text", @@ -1441,6 +1461,18 @@ "placeholders_order": [], "placeholders": {} }, + "gettingTxWait": "Отримання трансакції, зачекайте", + "@gettingTxWait": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "finishingUp": "Закінчується, будь ласка, зачекайте", + "@finishingUp": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, "feedback": "Поділитися файлом журналу", "@feedback": { "type": "text", @@ -2679,6 +2711,12 @@ "placeholders_order": [], "placeholders": {} }, + "searchFilterSubtitleZHTLC": "Виберіть усі монети ZHTLC", + "@searchFilterSubtitleZHTLC": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, "searchFilterSubtitleFTM": "Виберіть усі токени Fantom", "@searchFilterSubtitleFTM": { "type": "text", @@ -2781,6 +2819,12 @@ "placeholders_order": [], "placeholders": {} }, + "tagZHTLC": "ZHTLC", + "@tagZHTLC": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, "tagKMD": "KMD", "@tagKMD": { "type": "text", @@ -3555,6 +3599,16 @@ "coinAbbr": {} } }, + "failedToCancelActivation": "Не вдалося скасувати активацію {coinAbbr}", + "@failedToCancelActivation": { + "type": "text", + "placeholders_order": [ + "coinAbbr" + ], + "placeholders": { + "coinAbbr": {} + } + }, "isUnavailable": "{coinAbbr} недоступен :(", "@isUnavailable": { "type": "text", @@ -3719,6 +3773,16 @@ "placeholders_order": [], "placeholders": {} }, + "invalidCoinAddress": "Недійсна адреса {coin}", + "@invalidCoinAddress": { + "type": "text", + "placeholders_order": [ + "coin" + ], + "placeholders": { + "coin": {} + } + }, "multiActivateGas": "Спочатку активуйте {coin} і поповніть баланс", "@multiActivateGas": { "type": "text", @@ -4777,6 +4841,250 @@ "placeholders_order": [], "placeholders": {} }, + "activating": "Активація {coinName}", + "@activating": { + "type": "text", + "placeholders_order": [ + "coinName" + ], + "placeholders": { + "coinName": {} + } + }, + "doNotCloseTheAppTapForMoreInfo": "Не закривайте програму. Торкніться, щоб дізнатися більше...", + "@doNotCloseTheAppTapForMoreInfo": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "activation": "Активація {coinName}", + "@activation": { + "type": "text", + "placeholders_order": [ + "coinName" + ], + "placeholders": { + "coinName": {} + } + }, + "coinsAreActivated": "Монети {protocolName} активовані", + "@coinsAreActivated": { + "type": "text", + "placeholders_order": [ + "protocolName" + ], + "placeholders": { + "protocolName": {} + } + }, + "coinsAreNotActivated": "Монети {protocolName} не активовані", + "@coinsAreNotActivated": { + "type": "text", + "placeholders_order": [ + "protocolName" + ], + "placeholders": { + "protocolName": {} + } + }, + "coinsAreActivatedSuccessfully": "Монети {protocolName} успішно активовані", + "@coinsAreActivatedSuccessfully": { + "type": "text", + "placeholders_order": [ + "protocolName" + ], + "placeholders": { + "protocolName": {} + } + }, + "activationInProgress": "Виконується активація {protocolName}", + "@activationInProgress": { + "type": "text", + "placeholders_order": [ + "protocolName" + ], + "placeholders": { + "protocolName": {} + } + }, + "activateCoins": "Активувати монети {protocolName}?", + "@activateCoins": { + "type": "text", + "placeholders_order": [ + "protocolName" + ], + "placeholders": { + "protocolName": {} + } + }, + "moreInfo": "Більше інформації", + "@moreInfo": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "showAddress": "Показати адресу", + "@showAddress": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "transactionHiddenPhishing": "Ця трансакція була прихована через можливу спробу фішингу.", + "@transactionHiddenPhishing": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "transactionAddress": "Адреса транзакції", + "@transactionAddress": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "transactionHidden": "Транзакція прихована", + "@transactionHidden": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "couldNotLaunchUrl": "Не вдалося запустити URL", + "@couldNotLaunchUrl": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "willTakeTime": "Це займе деякий час, і програма має залишатися в активному режимі.\nЗакриття програми під час активації може призвести до проблем.", + "@willTakeTime": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "minimizingWillTerminate": "Попередження: згортання програми на iOS припинить процес активації.", + "@minimizingWillTerminate": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "enableNotificationsForActivationProgress": "Увімкніть сповіщення, щоб отримувати оновлення про хід активації.", + "@enableNotificationsForActivationProgress": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "qrCodeScanner": "Сканер QR-коду", + "@qrCodeScanner": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "foundQrCode": "Знайдено QR-код", + "@foundQrCode": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "contract": "Договір", + "@contract": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "startSwap": "Почати обмін", + "@startSwap": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "none": "Жодного", + "@none": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "cexRate": "Курс CEX", + "@cexRate": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "incomingTransactionsProtectionSettings": "Налаштування захисту вхідних {coinName} txs", + "@incomingTransactionsProtectionSettings": { + "type": "text", + "placeholders_order": [ + "coinName" + ], + "placeholders": { + "coinName": {} + } + }, + "showingOrders": "Показано {count} із {maxCount} замовлень.", + "@showingOrders": { + "type": "text", + "placeholders_order": [ + "count", + "maxCount" + ], + "placeholders": { + "count": {}, + "maxCount": {} + } + }, + "orderBookLess": "менше", + "@orderBookLess": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "orderBookMore": "більше", + "@orderBookMore": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "basedOnCoinRatio": "на основі {coinName1}/{coinName2}", + "@basedOnCoinRatio": { + "type": "text", + "placeholders_order": [ + "coinName1", + "coinName2" + ], + "placeholders": { + "coinName1": {}, + "coinName2": {} + } + }, + "detailedFeesSendTradingFeeTransactionFee": "відправити плату за торгівлю плату за транзакцію", + "@detailedFeesSendTradingFeeTransactionFee": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "detailedFeesTradingFee": "комісія за торгівлю", + "@detailedFeesTradingFee": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "detailedFeesSendCoinTransactionFee": "надіслати комісію за транзакцію {coinName}", + "@detailedFeesSendCoinTransactionFee": { + "type": "text", + "placeholders_order": [ + "coinName" + ], + "placeholders": { + "coinName": {} + } + }, + "detailedFeesReceiveCoinTransactionFee": "отримати комісію за транзакцію {coinName}", + "@detailedFeesReceiveCoinTransactionFee": { + "type": "text", + "placeholders_order": [ + "coinName" + ], + "placeholders": { + "coinName": {} + } + }, "filtersButton": "Фільтр", "@filtersButton": { "type": "text", @@ -5130,5 +5438,123 @@ "type": "text", "placeholders_order": [], "placeholders": {} + }, + "shouldScanPastTransaction": "Сканувати минулі транзакції {coin}?", + "@shouldScanPastTransaction": { + "type": "text", + "placeholders_order": [ + "coin" + ], + "placeholders": { + "coin": {} + } + }, + "activationCancelled": "Активацію монет скасовано", + "@activationCancelled": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "coinActivationSuccessfull": "Успішно активовано {coin}", + "@coinActivationSuccessfull": { + "type": "text", + "placeholders_order": [ + "coin" + ], + "placeholders": { + "coin": {} + } + }, + "coinActivationCancelled": "Активацію {coin} скасовано", + "@coinActivationCancelled": { + "type": "text", + "placeholders_order": [ + "coin" + ], + "placeholders": { + "coin": {} + } + }, + "pleaseAcceptAllCoinActivationRequests": "Будь ласка, прийміть усі спеціальні запити на активацію монет або скасуйте вибір монет.", + "@pleaseAcceptAllCoinActivationRequests": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "cancelActivation": "Скасувати активацію", + "@cancelActivation": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "cancelActivationQuestion": "Ви впевнені, що бажаєте скасувати активацію?", + "@cancelActivationQuestion": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "cofirmCancelActivation": "Ви впевнені, що бажаєте скасувати активацію?", + "@cofirmCancelActivation": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "syncTransactionsQuestion": "Які транзакції {name} ви хочете синхронізувати?", + "@syncTransactionsQuestion": { + "type": "text", + "placeholders_order": [ + "name" + ], + "placeholders": { + "name": {} + } + }, + "syncNewTransactions": "Синхронізувати нові транзакції", + "@syncNewTransactions": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "syncFromDate": "Синхронізувати з указаної дати", + "@syncFromDate": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "syncFromSaplingActivation": "Синхронізація з активації саджанця", + "@syncFromSaplingActivation": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "selectDate": "Виберіть дату", + "@selectDate": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "startDate": "Дата початку", + "@startDate": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "futureTransactions": "Ми будемо синхронізувати майбутні транзакції, здійснені після активації, пов’язаної з вашим відкритим ключем. Це найшвидший варіант, який займає найменшу кількість пам’яті.", + "@futureTransactions": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "allPastTransactions": "У вашому гаманці відображатимуться всі минулі транзакції. Це займе багато пам’яті та часу, оскільки всі блоки будуть завантажені та відскановані.", + "@allPastTransactions": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "pastTransactionsFromDate": "Ваш гаманець відображатиме ваші минулі транзакції, здійснені після вказаної дати.", + "@pastTransactionsFromDate": { + "type": "text", + "placeholders_order": [], + "placeholders": {} } } \ No newline at end of file diff --git a/lib/l10n/intl_zh.arb b/lib/l10n/intl_zh.arb index c2fd20358..62180050b 100644 --- a/lib/l10n/intl_zh.arb +++ b/lib/l10n/intl_zh.arb @@ -1257,6 +1257,16 @@ "placeholders_order": [], "placeholders": {} }, + "gweiError": "Gwei 必须达到 {value}", + "@gweiError": { + "type": "text", + "placeholders_order": [ + "value" + ], + "placeholders": { + "value": {} + } + }, "feesError": "费用必须高达 {value}", "@feesError": { "type": "text", @@ -1267,6 +1277,16 @@ "value": {} } }, + "limitError": "限制必须达到 {value}", + "@limitError": { + "type": "text", + "placeholders_order": [ + "value" + ], + "placeholders": { + "value": {} + } + }, "errorNotAValidAddress": "钱包地址错误", "@errorNotAValidAddress": { "type": "text", @@ -1441,6 +1461,18 @@ "placeholders_order": [], "placeholders": {} }, + "gettingTxWait": "正在获取交易,请稍候", + "@gettingTxWait": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "finishingUp": "已完成,请稍候", + "@finishingUp": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, "feedback": "共享日志文件", "@feedback": { "type": "text", @@ -2679,6 +2711,12 @@ "placeholders_order": [], "placeholders": {} }, + "searchFilterSubtitleZHTLC": "选择所有ZHTLC币", + "@searchFilterSubtitleZHTLC": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, "searchFilterSubtitleFTM": "选择所有Fantom代币", "@searchFilterSubtitleFTM": { "type": "text", @@ -2781,6 +2819,12 @@ "placeholders_order": [], "placeholders": {} }, + "tagZHTLC": "ZHTLC", + "@tagZHTLC": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, "tagKMD": "KMD", "@tagKMD": { "type": "text", @@ -3577,6 +3621,16 @@ "coinAbbr": {} } }, + "failedToCancelActivation": "无法取消激活 {coinAbbr}", + "@failedToCancelActivation": { + "type": "text", + "placeholders_order": [ + "coinAbbr" + ], + "placeholders": { + "coinAbbr": {} + } + }, "isUnavailable": "{coinAbbr} 不可用:(", "@isUnavailable": { "type": "text", @@ -3741,6 +3795,16 @@ "placeholders_order": [], "placeholders": {} }, + "invalidCoinAddress": "{coin} 地址无效", + "@invalidCoinAddress": { + "type": "text", + "placeholders_order": [ + "coin" + ], + "placeholders": { + "coin": {} + } + }, "multiActivateGas": "先激活{coin}并充值余额", "@multiActivateGas": { "type": "text", @@ -4799,6 +4863,250 @@ "placeholders_order": [], "placeholders": {} }, + "activating": "激活{coinName}", + "@activating": { + "type": "text", + "placeholders_order": [ + "coinName" + ], + "placeholders": { + "coinName": {} + } + }, + "doNotCloseTheAppTapForMoreInfo": "不要关闭应用程序。点按了解更多信息...", + "@doNotCloseTheAppTapForMoreInfo": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "activation": "{coinName} 激活", + "@activation": { + "type": "text", + "placeholders_order": [ + "coinName" + ], + "placeholders": { + "coinName": {} + } + }, + "coinsAreActivated": "{protocolName} 币已激活", + "@coinsAreActivated": { + "type": "text", + "placeholders_order": [ + "protocolName" + ], + "placeholders": { + "protocolName": {} + } + }, + "coinsAreNotActivated": "{protocolName} 代币未激活", + "@coinsAreNotActivated": { + "type": "text", + "placeholders_order": [ + "protocolName" + ], + "placeholders": { + "protocolName": {} + } + }, + "coinsAreActivatedSuccessfully": "{protocolName}币激活成功", + "@coinsAreActivatedSuccessfully": { + "type": "text", + "placeholders_order": [ + "protocolName" + ], + "placeholders": { + "protocolName": {} + } + }, + "activationInProgress": "{protocolName} 激活正在进行中", + "@activationInProgress": { + "type": "text", + "placeholders_order": [ + "protocolName" + ], + "placeholders": { + "protocolName": {} + } + }, + "activateCoins": "激活 {protocolName} 币?", + "@activateCoins": { + "type": "text", + "placeholders_order": [ + "protocolName" + ], + "placeholders": { + "protocolName": {} + } + }, + "moreInfo": "更多信息", + "@moreInfo": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "showAddress": "显示地址", + "@showAddress": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "transactionHiddenPhishing": "由于可能存在网络钓鱼尝试,该交易被隐藏。", + "@transactionHiddenPhishing": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "transactionAddress": "交易地址", + "@transactionAddress": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "transactionHidden": "交易隐藏", + "@transactionHidden": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "couldNotLaunchUrl": "无法启动 URL", + "@couldNotLaunchUrl": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "willTakeTime": "这将需要一段时间,并且应用程序必须保持在前台。\n在激活过程中终止应用程序可能会导致问题。", + "@willTakeTime": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "minimizingWillTerminate": "警告:最小化 iOS 上的应用程序将终止激活过程。", + "@minimizingWillTerminate": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "enableNotificationsForActivationProgress": "请启用通知以获取有关激活进度的更新。", + "@enableNotificationsForActivationProgress": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "qrCodeScanner": "二维码扫描仪", + "@qrCodeScanner": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "foundQrCode": "找到二维码", + "@foundQrCode": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "contract": "合同", + "@contract": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "startSwap": "开始交换", + "@startSwap": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "none": "没有任何", + "@none": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "cexRate": "CEX 汇率", + "@cexRate": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "incomingTransactionsProtectionSettings": "传入 {coinName} 交易保护设置", + "@incomingTransactionsProtectionSettings": { + "type": "text", + "placeholders_order": [ + "coinName" + ], + "placeholders": { + "coinName": {} + } + }, + "showingOrders": "显示 {count} 个订单(共 {maxCount} 个)。", + "@showingOrders": { + "type": "text", + "placeholders_order": [ + "count", + "maxCount" + ], + "placeholders": { + "count": {}, + "maxCount": {} + } + }, + "orderBookLess": "较少的", + "@orderBookLess": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "orderBookMore": "更多的", + "@orderBookMore": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "basedOnCoinRatio": "基于{coinName1}/{coinName2}", + "@basedOnCoinRatio": { + "type": "text", + "placeholders_order": [ + "coinName1", + "coinName2" + ], + "placeholders": { + "coinName1": {}, + "coinName2": {} + } + }, + "detailedFeesSendTradingFeeTransactionFee": "发送交易费 交易费", + "@detailedFeesSendTradingFeeTransactionFee": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "detailedFeesTradingFee": "交易费", + "@detailedFeesTradingFee": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "detailedFeesSendCoinTransactionFee": "发送 {coinName} 交易费", + "@detailedFeesSendCoinTransactionFee": { + "type": "text", + "placeholders_order": [ + "coinName" + ], + "placeholders": { + "coinName": {} + } + }, + "detailedFeesReceiveCoinTransactionFee": "接收{coinName}交易费", + "@detailedFeesReceiveCoinTransactionFee": { + "type": "text", + "placeholders_order": [ + "coinName" + ], + "placeholders": { + "coinName": {} + } + }, "filtersButton": "过滤器", "@filtersButton": { "type": "text", @@ -5152,5 +5460,123 @@ "type": "text", "placeholders_order": [], "placeholders": {} + }, + "shouldScanPastTransaction": "扫描过去的 {coin} 交易?", + "@shouldScanPastTransaction": { + "type": "text", + "placeholders_order": [ + "coin" + ], + "placeholders": { + "coin": {} + } + }, + "activationCancelled": "硬币激活已取消", + "@activationCancelled": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "coinActivationSuccessfull": "成功激活{coin}", + "@coinActivationSuccessfull": { + "type": "text", + "placeholders_order": [ + "coin" + ], + "placeholders": { + "coin": {} + } + }, + "coinActivationCancelled": "{coin}激活已取消", + "@coinActivationCancelled": { + "type": "text", + "placeholders_order": [ + "coin" + ], + "placeholders": { + "coin": {} + } + }, + "pleaseAcceptAllCoinActivationRequests": "请接受所有特殊硬币激活请求或取消选择硬币。", + "@pleaseAcceptAllCoinActivationRequests": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "cancelActivation": "取消激活", + "@cancelActivation": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "cancelActivationQuestion": "您确定要取消激活吗?", + "@cancelActivationQuestion": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "cofirmCancelActivation": "您确定要取消激活吗?", + "@cofirmCancelActivation": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "syncTransactionsQuestion": "您想要同步哪些{name}交易?", + "@syncTransactionsQuestion": { + "type": "text", + "placeholders_order": [ + "name" + ], + "placeholders": { + "name": {} + } + }, + "syncNewTransactions": "同步新交易", + "@syncNewTransactions": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "syncFromDate": "从指定日期同步", + "@syncFromDate": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "syncFromSaplingActivation": "从树苗激活同步", + "@syncFromSaplingActivation": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "selectDate": "选择日期", + "@selectDate": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "startDate": "开始日期", + "@startDate": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "futureTransactions": "我们将同步与您的公钥关联的激活后进行的未来交易。这是最快的选项,占用的存储空间最少。", + "@futureTransactions": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "allPastTransactions": "您的钱包将显示任何过去的交易。这将占用大量存储空间和时间,因为所有块都将被下载和扫描。", + "@allPastTransactions": { + "type": "text", + "placeholders_order": [], + "placeholders": {} + }, + "pastTransactionsFromDate": "您的钱包将显示您过去在指定日期之后进行的交易。", + "@pastTransactionsFromDate": { + "type": "text", + "placeholders_order": [], + "placeholders": {} } } \ No newline at end of file diff --git a/lib/l10n/messages_all.dart b/lib/l10n/messages_all.dart index f97a63e5e..3a52fb964 100644 --- a/lib/l10n/messages_all.dart +++ b/lib/l10n/messages_all.dart @@ -22,7 +22,7 @@ import 'messages_fr.dart' deferred as messages_fr; import 'messages_hu.dart' deferred as messages_hu; import 'messages_ja.dart' deferred as messages_ja; import 'messages_ko.dart' deferred as messages_ko; -import 'messages_messages.dart' deferred as messages_messages; +import 'messages_messages.dart' deferred as messages_en; import 'messages_ru.dart' deferred as messages_ru; import 'messages_tr.dart' deferred as messages_tr; import 'messages_uk.dart' deferred as messages_uk; @@ -36,7 +36,7 @@ Map _deferredLibraries = { 'hu': messages_hu.loadLibrary, 'ja': messages_ja.loadLibrary, 'ko': messages_ko.loadLibrary, - 'messages': messages_messages.loadLibrary, + 'en': messages_en.loadLibrary, 'ru': messages_ru.loadLibrary, 'tr': messages_tr.loadLibrary, 'uk': messages_uk.loadLibrary, @@ -57,8 +57,8 @@ MessageLookupByLibrary _findExact(String localeName) { return messages_ja.messages; case 'ko': return messages_ko.messages; - case 'messages': - return messages_messages.messages; + case 'en': + return messages_en.messages; case 'ru': return messages_ru.messages; case 'tr': @@ -75,8 +75,10 @@ MessageLookupByLibrary _findExact(String localeName) { /// User programs should call this before using [localeName] for messages. Future initializeMessages(String localeName) async { final availableLocale = Intl.verifiedLocale( - localeName, (locale) => _deferredLibraries[locale] != null, - onFailure: (_) => null); + localeName, + (locale) => _deferredLibraries[locale] != null, + onFailure: (_) => null, + ); if (availableLocale == null) { return Future.value(false); } diff --git a/lib/l10n/messages_de.dart b/lib/l10n/messages_de.dart index b76cd5c30..9a46a5e6e 100644 --- a/lib/l10n/messages_de.dart +++ b/lib/l10n/messages_de.dart @@ -19,266 +19,310 @@ typedef String MessageIfAbsent(String messageStr, List args); class MessageLookup extends MessageLookupByLibrary { String get localeName => 'de'; - static m0(name) => "${name} erfolgreich aktiviert!"; + static m0(protocolName) => "${protocolName}-Münzen aktivieren?"; - static m1(title) => "Nur Kontakte mit ${title} Adressen anzeigen"; + static m1(coinName) => "${coinName} wird aktiviert"; - static m2(abbr) => + static m2(coinName) => "${coinName}-Aktivierung"; + + static m3(protocolName) => "${protocolName} Aktivierung wird ausgeführt"; + + static m4(name) => "${name} erfolgreich aktiviert!"; + + static m5(title) => "Nur Kontakte mit ${title} Adressen anzeigen"; + + static m6(abbr) => "Sie können kein Guthaben an die ${abbr} Adresse senden, da ${abbr} nicht aktiviert ist. Bitte gehen Sie zum Portfolio."; - static m3(appName) => + static m7(appName) => "Nein! ${appName} hat keine Vormundschaft. Wir speichern niemals sensible Daten, einschließlich Ihrer privaten Schlüssel, Seed-Phrasen oder PINs. Diese Daten werden nur auf dem Gerät des Benutzers gespeichert und verlassen es nie. Sie haben die volle Kontrolle über Ihr Vermögen."; - static m4(appName) => + static m8(appName) => "${appName} ist für Mobilgeräte auf Android und iPhone sowie für Desktops auf Windows-, Mac- und Linux-Betriebssystemen verfügbar."; - static m5(appName) => + static m9(appName) => "Bei anderen DEXs können Sie im Allgemeinen nur Assets handeln, die auf einem einzigen Blockchain-Netzwerk basieren, Proxy-Token verwenden und nur einen einzigen Auftrag mit denselben Geldmitteln aufgeben.\n\n${appName} ermöglicht Ihnen den nativen Handel über zwei verschiedene Blockchain-Netzwerke ohne Proxy-Tokens. Sie können auch mehrere Aufträge mit demselben Guthaben platzieren. Sie können zum Beispiel 0,1 BTC für KMD, QTUM oder VRSC verkaufen - der erste Auftrag, der ausgeführt wird, storniert automatisch alle anderen Aufträge."; - static m6(appName) => + static m10(appName) => "Mehrere Faktoren bestimmen die Bearbeitungszeit für einen Swap. Die Blockzeit der gehandelten Assets hängt vom jeweiligen Netzwerk ab (Bitcoin ist normalerweise das langsamste). Außerdem kann der Benutzer die Sicherheitseinstellungen anpassen. Zum Beispiel (können Sie ${appName} bitten, eine KMD-Transaktion nach nur 3 Bestätigungen als endgültig zu betrachten, wodurch die Swap-Zeit kürzer wird als beim Warten auf eine Beglaubigung"; - static m7(appName) => + static m11(appName) => "Beim Handel auf ${appName} sind zwei Gebührenkategorien zu berücksichtigen.\n\n1. ${appName} berechnet ungefähr 0,13 % (1/777 des Handelsvolumens, aber nicht weniger als 0,0001) als Handelsgebühr für Taker-Aufträge, Maker-Aufträge haben keine Gebühren.\n\n2. Sowohl Maker als auch Taker müssen normale Netzwerkgebühren an die beteiligten Blockchains zahlen, wenn sie Atomic-Swap-Transaktionen durchführen.\n\nDie Netzwerkgebühren können je nach ausgewähltem Handelspaar stark variieren."; - static m8(name, link, appName, appCompanyShort) => + static m12(name, link, appName, appCompanyShort) => "Ja! ${appName} bietet Support über den ${appCompanyShort} ${name}. Das Team und die Community helfen Euch gerne weiter!\n"; - static m9(appName) => + static m13(appName) => "Nein! ${appName} ist vollständig dezentralisiert. Es ist nicht möglich, den Benutzerzugang durch Dritte zu beschränken."; - static m10(appName, appCompanyShort) => + static m14(appName, appCompanyShort) => "${appName} wird vom ${appCompanyShort}-Team entwickelt. ${appCompanyShort} ist eines der etabliertesten Blockchain-Projekte, das an innovativen Lösungen wie Atomic Swaps, Delayed Proof of Work und einer interoperablen Multi-Chain-Architektur arbeitet."; - static m11(appName) => + static m15(appName) => "Absolut! Weitere Informationen finden Sie in unserer Entwicklerdokumentation oder kontaktieren Sie uns mit Ihren Partnerschaftsanfragen. Haben Sie eine spezielle technische Frage? Die ${appName}-Entwickler-Community ist immer bereit zu helfen!"; - static m12(batteryLevelCritical) => + static m16(coinName1, coinName2) => "basierend auf ${coinName1}/${coinName2}"; + + static m17(batteryLevelCritical) => "Der Akkustand ist kritisch (${batteryLevelCritical}%) um einen Swap sicher auszuführen. Bitte laden Sie ihr Handy auf und versuchen es später noch einmal."; - static m13(batteryLevelLow) => + static m18(batteryLevelLow) => "Ihre Akkuladung ist niedriger als ${batteryLevelLow} %. Bitte denken Sie an das Aufladen des Telefons."; - static m14(seconde) => + static m19(seconde) => "Auftragsvermittlung läuft, bitte warten Sie ${seconde} Sekunden!"; - static m15(index) => "${index} Wort eingeben"; + static m20(index) => "${index} Wort eingeben"; + + static m21(index) => "Was ist das ${index}.Wort in Ihrer Seed?"; + + static m22(coin) => "Aktivierung von ${coin} abgebrochen"; - static m16(index) => "Was ist das ${index}.Wort in Ihrer Seed?"; + static m23(coin) => "${coin} erfolgreich aktiviert"; - static m17(name) => "Möchten Sie den Kontakt ${name} wirklich löschen?"; + static m24(protocolName) => "${protocolName}-Münzen sind aktiviert"; - static m18(iUnderstand) => + static m25(protocolName) => + "${protocolName}-Münzen wurden erfolgreich aktiviert"; + + static m26(protocolName) => "${protocolName}-Münzen sind nicht aktiviert"; + + static m27(name) => "Möchten Sie den Kontakt ${name} wirklich löschen?"; + + static m28(iUnderstand) => "Benutzerdefinierte Seed-Phrasen sind möglicherweise weniger sicher und leichter zu knacken als eine generierte BIP39-konforme Seed-Phrase oder ein privater Schlüssel (WIF). Um zu bestätigen, dass Sie das Risiko verstehen und wissen was Sie tun, geben Sie \"${iUnderstand}\" im Kasten unten an.\n"; - static m19(abbr) => "Geben Sie die ${abbr} Adresse ein"; + static m29(coinName) => "Erhalten Sie die Transaktionsgebühr ${coinName}"; + + static m30(coinName) => "Transaktionsgebühr für ${coinName} senden"; - static m20(selected, remains) => + static m31(abbr) => "Geben Sie die ${abbr} Adresse ein"; + + static m32(selected, remains) => "Sie können ${remains} weiterhin aktivieren, Ausgewählt: ${selected}"; - static m21(gas) => "Nicht genug Gas - verwenden Sie mindestens ${gas} Gwei"; + static m33(gas) => "Nicht genug Gas - verwenden Sie mindestens ${gas} Gwei"; - static m22(appName, appCompanyLong) => + static m34(appName, appCompanyLong) => "This End-User License Agreement (\'EULA\') is a legal agreement between you and ${appCompanyLong}.\n\nThis EULA agreement governs your acquisition and use of our ${appName} mobile software (\'Software\', \'Mobile Application\', \'Application\' or \'App\') directly from ${appCompanyLong} or indirectly through a ${appCompanyLong} authorized entity, reseller or distributor (a \'Distributor\').\nPlease read this EULA agreement carefully before completing the installation process and using the ${appName} mobile software. It provides a license to use the ${appName} mobile software and contains warranty information and liability disclaimers.\nIf you register for the beta program of the ${appName} mobile software, this EULA agreement will also govern that trial. By clicking \'accept\' or installing and/or using the ${appName} mobile software, you are confirming your acceptance of the Software and agreeing to become bound by the terms of this EULA agreement.\nIf you are entering into this EULA agreement on behalf of a company or other legal entity, you represent that you have the authority to bind such entity and its affiliates to these terms and conditions. If you do not have such authority or if you do not agree with the terms and conditions of this EULA agreement, do not install or use the Software, and you must not accept this EULA agreement.\nThis EULA agreement shall apply only to the Software supplied by ${appCompanyLong} herewith regardless of whether other software is referred to or described herein. The terms also apply to any ${appCompanyLong} updates, supplements, Internet-based services, and support services for the Software, unless other terms accompany those items on delivery. If so, those terms apply.\n\nLICENSE GRANT\n\n${appCompanyLong} hereby grants you a personal, non-transferable, non-exclusive license to use the ${appName} mobile software on your devices in accordance with the terms of this EULA agreement.\n\nYou are permitted to load the ${appName} mobile software (for example a PC, laptop, mobile or tablet) under your control. You are responsible for ensuring your device meets the minimum security and resource requirements of the ${appName} mobile software.\n\nYou are not permitted to:\n(a) edit, alter, modify, adapt, translate or otherwise change the whole or any part of the Software nor permit the whole or any part of the Software to be combined with or become incorporated in any other software, nor decompile, disassemble or reverse engineer the Software or attempt to do any such things;\n(b) reproduce, copy, distribute, resell or otherwise use the Software for any commercial purpose;\n(c) use the Software in any way which breaches any applicable local, national or international law;\n(d) use the Software for any purpose that ${appCompanyLong} considers is a breach of this EULA agreement.\n\nINTELLECTUAL PROPERTY AND OWNERSHIP\n\n${appCompanyLong} shall at all times retain ownership of the Software as originally downloaded by you and all subsequent downloads of the Software by you. The Software (and the copyright, and other intellectual property rights of whatever nature in the Software, including any modifications made thereto) are and shall remain the property of ${appCompanyLong}.\n\n${appCompanyLong} reserves the right to grant licenses to use the Software to third parties.\n\nTERMINATION\n\nThis EULA agreement is effective from the date you first use the Software and shall continue until terminated. You may terminate it at any time upon written notice to ${appCompanyLong}.\nIt will also terminate immediately if you fail to comply with any term of this EULA agreement. Upon such termination, the licenses granted by this EULA agreement will immediately terminate and you agree to stop all access and use of the Software. The provisions that by their nature continue and survive will survive any termination of this EULA agreement.\n\nGOVERNING LAW\n\nThis EULA agreement, and any dispute arising out of or in connection with this EULA agreement, shall be governed by and construed in accordance with the laws of Vietnam.\n\nThis document was last updated on January 31st, 2020"; - static m23(appCompanyLong) => + static m35(appCompanyLong) => "${appCompanyLong} is the owner and/or authorised user of all trademarks, service marks, design marks, patents, copyrights, database rights and all other intellectual property appearing on or contained within the application, unless otherwise indicated. All information, text, material, graphics, software and advertisements on the application interface are copyright of ${appCompanyLong}, its suppliers and licensors, unless otherwise expressly indicated by ${appCompanyLong}. \nExcept as provided in the Terms, use of the application does not grant You any right, title, interest or license to any such intellectual property You may have access to on the application. \nWe own the rights, or have permission to use, the trademarks listed in our application. You are not authorised to use any of those trademarks without our written authorization – doing so would constitute a breach of our or another party’s intellectual property rights. \nAlternatively, we might authorise You to use the content in our application if You previously contact us and we agree in writing."; - static m24(appCompanyShort, appCompanyLong) => + static m36(appCompanyShort, appCompanyLong) => "${appCompanyLong} cannot guarantee the safety or security of your computer systems. We do not accept liability for any loss or corruption of electronically stored data or any damage to any computer system occurred in connection with the use of the application or of the user content.\n${appCompanyLong} makes no representation or warranty of any kind, express or implied, as to the operation of the application or the user content. You expressly agree that your use of the application is entirely at your sole risk.\nYou agree that the content provided in the application and the user content do not constitute financial product, legal or taxation advice, and You agree on not representing the user content or the application as such.\nTo the extent permitted by current legislation, the application is provided on an “as is, as available” basis.\n\n${appCompanyLong} expressly disclaims all responsibility for any loss, injury, claim, liability, or damage, or any indirect, incidental, special or consequential damages or loss of profits whatsoever resulting from, arising out of or in any way related to:\n(a) any errors in or omissions of the application and/or the user content, including but not limited to technical inaccuracies and typographical errors;\n(b) any third party website, application or content directly or indirectly accessed through links in the application, including but not limited to any errors or omissions;\n(c) the unavailability of the application or any portion of it;\n(d) your use of the application;\n(e) your use of any equipment or software in connection with the application.\n\nAny Services offered in connection with the Platform are provided on an \'as is\' basis, without any representation or warranty, whether express, implied or statutory. To the maximum extent permitted by applicable law, we specifically disclaim any implied warranties of title, merchantability, suitability for a particular purpose and/or non-infringement. We do not make any representations or warranties that use of the Platform will be continuous, uninterrupted, timely, or error-free.\nWe make no warranty that any Platform will be free from viruses, malware, or other related harmful material and that your ability to access any Platform will be uninterrupted. Any defects or malfunction in the product should be directed to the third party offering the Platform, not to ${appCompanyShort}.\nWe will not be responsible or liable to You for any loss of any kind, from action taken, or taken in reliance on the material or information contained in or through the Platform.\nThis is experimental and unfinished software. Use at your own risk. No warranty for any kind of damage. By using this application you agree to this terms and conditions."; - static m25(appCompanyLong) => + static m37(appCompanyLong) => "You agree and understand that there are risks associated with utilizing Services involving Virtual Currencies including, but not limited to, the risk of failure of hardware, software and internet connections, the risk of malicious software introduction, and the risk that third parties may obtain unauthorized access to information stored within your Wallet, including but not limited to your public and private keys. You agree and understand that ${appCompanyLong} will not be responsible for any communication failures, disruptions, errors, distortions or delays You may experience when using the Services, however caused.\nYou accept and acknowledge that there are risks associated with utilizing any virtual currency network, including, but not limited to, the risk of unknown vulnerabilities in or unanticipated changes to the network protocol. You acknowledge and accept that ${appCompanyLong} has no control over any cryptocurrency network and will not be responsible for any harm occurring as a result of such risks, including, but not limited to, the inability to reverse a transaction, and any losses in connection therewith due to erroneous or fraudulent actions.\nThe risk of loss in using Services involving Virtual Currencies may be substantial and losses may occur over a short period of time. In addition, price and liquidity are subject to significant fluctuations that may be unpredictable.\nVirtual Currencies are not legal tender and are not backed by any sovereign government. In addition, the legislative and regulatory landscape around Virtual Currencies is constantly changing and may affect your ability to use, transfer, or exchange Virtual Currencies.\nCFDs are complex instruments and come with a high risk of losing money rapidly due to leverage. 80.6% of retail investor accounts lose money when trading CFDs with this provider. You should consider whether You understand how CFDs work and whether You can afford to take the high risk of losing your money."; - static m26(appCompanyLong) => + static m38(appCompanyLong) => "You agree to indemnify, defend and hold harmless ${appCompanyLong}, its officers, directors, employees, agents, licensors, suppliers and any third party information providers to the application from and against all losses, expenses, damages and costs, including reasonable lawyer fees, resulting from any violation of the Terms by You.\nYou also agree to indemnify ${appCompanyLong} against any claims that information or material which You have submitted to ${appCompanyLong} is in violation of any law or in breach of any third party rights (including, but not limited to, claims in respect of defamation, invasion of privacy, breach of confidence, infringement of copyright or infringement of any other intellectual property right)."; - static m27(appCompanyLong) => - "In order to be completed, any Virtual Currency transaction created with the ${appCompanyLong} must be confirmed and recorded in the Virtual Currency ledger associated with the relevant Virtual Currency network. Such networks are decentralized, peer-to-peer networks supported by independent third parties, which are not owned, controlled or operated by ${appCompanyLong}.\n${appCompanyLong} has no control over any Virtual Currency network and therefore cannot and does not ensure that any transaction details You submit via our Services will be confirmed on the relevant Virtual Currency network. You agree and understand that the transaction details You submit via our Services may not be completed, or may be substantially delayed, by the Virtual Currency network used to process the transaction. We do not guarantee that the Wallet can transfer title or right in any Virtual Currency or make any warranties whatsoever with regard to title.\nOnce transaction details have been submitted to a Virtual Currency network, we cannot assist You to cancel or otherwise modify your transaction or transaction details. ${appCompanyLong} has no control over any Virtual Currency network and does not have the ability to facilitate any cancellation or modification requests.\nIn the event of a Fork, ${appCompanyLong} may not be able to support activity related to your Virtual Currency. You agree and understand that, in the event of a Fork, the transactions may not be completed, completed partially, incorrectly completed, or substantially delayed. ${appCompanyLong} is not responsible for any loss incurred by You caused in whole or in part, directly or indirectly, by a Fork.\nIn no event shall ${appCompanyLong}, its affiliates and service providers, or any of their respective officers, directors, agents, employees or representatives, be liable for any lost profits or any special, incidental, indirect, intangible, or consequential damages, whether based on contract, tort, negligence, strict liability, or otherwise, arising out of or in connection with authorized or unauthorized use of the services, or this agreement, even if an authorized representative of ${appCompanyLong} has been advised of, has known of, or should have known of the possibility of such damages. \nFor example (and without limiting the scope of the preceding sentence), You may not recover for lost profits, lost business opportunities, or other types of special, incidental, indirect, intangible, or consequential damages. Some jurisdictions do not allow the exclusion or limitation of incidental or consequential damages, so the above limitation may not apply to You. \nWe will not be responsible or liable to You for any loss and take no responsibility for damages or claims arising in whole or in part, directly or indirectly from: \n(a) user error such as forgotten passwords, incorrectly constructed transactions, or mistyped Virtual Currency addresses; \n(b) server failure or data loss; \n(c) corrupted or otherwise non-performing Wallets or Wallet files; \n(d) unauthorized access to applications; \n(e) any unauthorized activities, including without limitation the use of hacking, viruses, phishing, brute forcing or other means of attack against the Services."; + static m39(appCompanyLong) => + "Um abgeschlossen zu werden, ${appCompanyLong}muss jede virtuelle Währungstransaktion, die mit dem erstellt wurde, bestätigt und im Ledger für virtuelle Währungen aufgezeichnet werden, das dem jeweiligen virtuellen Währungsnetzwerk zugeordnet ist. ${appCompanyLong}Bei solchen Netzwerken handelt es sich um dezentrale Peer-to-Peer-Netzwerke, die von unabhängigen Dritten unterstützt werden, die sich nicht im Besitz, unter der Kontrolle oder unter der Kontrolle von ihnen befinden.\n${appCompanyLong}hat keine Kontrolle über virtuelle Währungsnetzwerke und kann und wird daher nicht sicherstellen, dass alle Transaktionsdetails, die Sie über unsere Dienste einreichen, im jeweiligen Netzwerk für virtuelle Währungen bestätigt werden. Sie erklären sich damit einverstanden und verstehen, dass die Transaktionsdetails, die Sie über unsere Dienste übermitteln, durch das zur Bearbeitung der Transaktion verwendete virtuelle Währungsnetzwerk möglicherweise nicht abgeschlossen oder erheblich verzögert werden können. Wir garantieren nicht, dass das Wallet das Eigentum oder die Rechte an einer virtuellen Währung übertragen kann, und geben auch keine Garantie in Bezug auf den Titel.\nSobald Transaktionsdetails an ein virtuelles Währungsnetzwerk übermittelt wurden, können wir Ihnen nicht helfen, Ihre Transaktion oder Transaktionsdetails zu stornieren oder anderweitig zu ändern. ${appCompanyLong}hat keine Kontrolle über ein Netzwerk für virtuelle Währungen und ist nicht in der Lage, Stornierungs- oder Änderungsanfragen zu bearbeiten.\nIm Falle eines Forks ${appCompanyLong}kann es sein, dass wir Aktivitäten im Zusammenhang mit Ihrer virtuellen Währung nicht unterstützen können. Sie erklären sich damit einverstanden und verstehen, dass die Transaktionen im Falle einer Fork möglicherweise nicht, teilweise, falsch abgeschlossen oder erheblich verzögert werden. ${appCompanyLong}ist nicht verantwortlich für Verluste, die Ihnen ganz oder teilweise, direkt oder indirekt, durch einen Fork entstehen.\nIn keinem Fall ${appCompanyLong}haften ihre verbundenen Unternehmen und Dienstleister oder ihre jeweiligen leitenden Angestellten, Direktoren, Agenten, Mitarbeiter oder Vertreter für entgangene Gewinne oder besondere, zufällige, indirekte, immaterielle oder Folgeschäden, unabhängig davon, ob sie auf Vertrag, unerlaubter Handlung, Fahrlässigkeit, verschuldensunabhängiger Haftung oder auf andere Weise beruhen, die sich aus oder in Verbindung mit der autorisierten oder unbefugten Nutzung der Dienste oder dieser Vereinbarung ergeben, auch wenn ein bevollmächtigter Vertreter ${appCompanyLong}von darauf hingewiesen wurde, hat davon gewusst oder hätte von der Möglichkeit solcher Schäden bekannt. \nBeispielsweise (und ohne den Umfang des vorstehenden Satzes einzuschränken) dürfen Sie sich nicht für entgangene Gewinne, entgangene Geschäftschancen oder andere Arten von besonderen, zufälligen, indirekten, immateriellen oder Folgeschäden zurückfordern. In einigen Rechtsordnungen ist der Ausschluss oder die Beschränkung von Neben- oder Folgeschäden nicht zulässig, sodass die obige Beschränkung möglicherweise nicht für Sie gilt. \nWir sind Ihnen gegenüber nicht verantwortlich oder haftbar für Verluste und übernehmen keine Verantwortung für Schäden oder Ansprüche, die sich ganz oder teilweise, direkt oder indirekt ergeben aus: \n(a) Benutzerfehler wie vergessene Passwörter, falsch erstellte Transaktionen oder falsch eingegebene Adressen für virtuelle Währungen; \n(b) Serverausfall oder Datenverlust; \n(c) beschädigte oder anderweitig nicht funktionierende Wallets oder Wallet-Dateien; \n(d) unbefugter Zugriff auf Anwendungen; \n(e) alle nicht autorisierten Aktivitäten, einschließlich, aber nicht beschränkt auf den Einsatz von Hacking, Viren, Phishing, Brute-Forcing oder anderen Angriffsmethoden gegen die Dienste.\n\n"; - static m28(appCompanyShort, appCompanyLong) => - "For the avoidance of doubt, ${appCompanyLong} does not provide investment, tax or legal advice, nor does ${appCompanyLong} broker trades on your behalf. All ${appCompanyLong} trades are executed automatically, based on the parameters of your order instructions and in accordance with posted Trade execution procedures, and You are solely responsible for determining whether any investment, investment strategy or related transaction is appropriate for You based on your personal investment objectives, financial circumstances and risk tolerance. You should consult your legal or tax professional regarding your specific situation. Neither ${appCompanyShort} nor its owners, members, officers, directors, partners, consultants, nor anyone involved in the publication of this application, is a registered investment adviser or broker-dealer or associated person with a registered investment adviser or broker-dealer and none of the foregoing make any recommendation that the purchase or sale of crypto-assets or securities of any company profiled in the mobile Application is suitable or advisable for any person or that an investment or transaction in such crypto-assets or securities will be profitable. The information contained in the mobile Application is not intended to be, and shall not constitute, an offer to sell or the solicitation of any offer to buy any crypto-asset or security. The information presented in the mobile Application is provided for informational purposes only and is not to be treated as advice or a recommendation to make any specific investment or transaction. Please, consult with a qualified professional before making any decisions. The opinions and analysis included in this applications are based on information from sources deemed to be reliable and are provided “as is” in good faith. ${appCompanyShort} makes no representation or warranty, expressed, implied, or statutory, as to the accuracy or completeness of such information, which may be subject to change without notice. ${appCompanyShort} shall not be liable for any errors or any actions taken in relation to the above. Statements of opinion and belief are those of the authors and/or editors who contribute to this application, and are based solely upon the information possessed by such authors and/or editors. No inference should be drawn that ${appCompanyShort} or such authors or editors have any special or greater knowledge about the crypto-assets or companies profiled or any particular expertise in the industries or markets in which the profiled crypto-assets and companies operate and compete. Information on this application is obtained from sources deemed to be reliable; however, ${appCompanyShort} takes no responsibility for verifying the accuracy of such information and makes no representation that such information is accurate or complete. Certain statements included in this application may be forward-looking statements based on current expectations. ${appCompanyShort} makes no representation and provides no assurance or guarantee that such forward-looking statements will prove to be accurate. Persons using the ${appCompanyShort} application are urged to consult with a qualified professional with respect to an investment or transaction in any crypto-asset or company profiled herein. Additionally, persons using this application expressly represent that the content in this application is not and will not be a consideration in such persons’ investment or transaction decisions. Traders should verify independently information provided in the ${appCompanyShort} application by completing their own due diligence on any crypto-asset or company in which they are contemplating an investment or transaction of any kind and review a complete information package on that crypto-asset or company, which should include, but not be limited to, related blog updates and press releases. Past performance of profiled crypto-assets and securities is not indicative of future results. Crypto-assets and companies profiled on this site may lack an active trading market and invest in a crypto-asset or security that lacks an active trading market or trade on certain media, platforms and markets are deemed highly speculative and carry a high degree of risk. Anyone holding such crypto-assets and securities should be financially able and prepared to bear the risk of loss and the actual loss of his or her entire trade. The information in this application is not designed to be used as a basis for an investment decision. Persons using the ${appCompanyShort} application should confirm to their own satisfaction the veracity of any information prior to entering into any investment or making any transaction. The decision to buy or sell any crypto-asset or security that may be featured by ${appCompanyShort} is done purely and entirely at the reader’s own risk. As a reader and user of this application, You agree that under no circumstances will You seek to hold liable owners, members, officers, directors, partners, consultants or other persons involved in the publication of this application for any losses incurred by the use of information contained in this application ${appCompanyShort} and its contractors and affiliates may profit in the event the crypto-assets and securities increase or decrease in value. Such crypto-assets and securities may be bought or sold from time to time, even after ${appCompanyShort} has distributed positive information regarding the crypto-assets and companies. ${appCompanyShort} has no obligation to inform readers of its trading activities or the trading activities of any of its owners, members, officers, directors, contractors and affiliates and/or any companies affiliated with BC Relations’ owners, members, officers, directors, contractors and affiliates. ${appCompanyShort} and its affiliates may from time to time enter into agreements to purchase crypto-assets or securities to provide a method to reach their goals."; + static m40(appCompanyShort, appCompanyLong) => + "For the avoidance of doubt, ${appCompanyLong} does not provide investment, tax or legal advice, nor does ${appCompanyLong} broker trades on your behalf. All ${appCompanyLong} trades are executed automatically, based on the parameters of your order instructions and in accordance with posted Trade execution procedures, and You are solely responsible for determining whether any investment, investment strategy or related transaction is appropriate for You based on your personal investment objectives, financial circumstances and risk tolerance. You should consult your legal or tax professional regarding your specific situation. Neither ${appCompanyShort} nor its owners, members, officers, directors, partners, consultants, nor anyone involved in the publication of this application, is a registered investment adviser or broker-dealer or associated person with a registered investment adviser or broker-dealer and none of the foregoing make any recommendation that the purchase or sale of crypto-assets or securities of any company profiled in the mobile Application is suitable or advisable for any person or that an investment or transaction in such crypto-assets or securities will be profitable. The information contained in the mobile Application is not intended to be, and shall not constitute, an offer to sell or the solicitation of any offer to buy any crypto-asset or security. The information presented in the mobile Application is provided for informational purposes only and is not to be treated as advice or a recommendation to make any specific investment or transaction. Please, consult with a qualified professional before making any decisions. The opinions and analysis included in this applications are based on information from sources deemed to be reliable and are provided “as is” in good faith. ${appCompanyShort} makes no representation or warranty, expressed, implied, or statutory, as to the accuracy or completeness of such information, which may be subject to change without notice. ${appCompanyShort} shall not be liable for any errors or any actions taken in relation to the above. Statements of opinion and belief are those of the authors and/or editors who contribute to this application, and are based solely upon the information possessed by such authors and/or editors. No inference should be drawn that ${appCompanyShort} or such authors or editors have any special or greater knowledge about the crypto-assets or companies profiled or any particular expertise in the industries or markets in which the profiled crypto-assets and companies operate and compete. Information on this application is obtained from sources deemed to be reliable; however, ${appCompanyShort} takes no responsibility for verifying the accuracy of such information and makes no representation that such information is accurate or complete. Certain statements included in this application may be forward-looking statements based on current expectations. ${appCompanyShort} makes no representation and provides no assurance or guarantee that such forward-looking statements will prove to be accurate. Persons using the ${appCompanyShort} application are urged to consult with a qualified professional with respect to an investment or transaction in any crypto-asset or company profiled herein. Additionally, persons using this application expressly represent that the content in this application is not and will not be a consideration in such persons’ investment or transaction decisions. Traders should verify independently information provided in the ${appCompanyShort} application by completing their own due diligence on any crypto-asset or company in which they are contemplating an investment or transaction of any kind and review a complete information package on that crypto-asset or company, which should include, but not be limited to, related blog updates and press releases. Past performance of profiled crypto-assets and securities is not indicative of future results. Crypto-assets and companies profiled on this site may lack an active trading market and invest in a crypto-asset or security that lacks an active trading market or trade on certain media, platforms and markets are deemed highly speculative and carry a high degree of risk. Anyone holding such crypto-assets and securities should be financially able and prepared to bear the risk of loss and the actual loss of his or her entire trade. The information in this application is not designed to be used as a basis for an investment decision. Persons using the ${appCompanyShort} application should confirm to their own satisfaction the veracity of any information prior to entering into any investment or making any transaction. The decision to buy or sell any crypto-asset or security that may be featured by ${appCompanyShort} is done purely and entirely at the reader’s own risk. As a reader and user of this application, You agree that under no circumstances will You seek to hold liable owners, members, officers, directors, partners, consultants or other persons involved in the publication of this application for any losses incurred by the use of information contained in this application ${appCompanyShort} and its contractors and affiliates may profit in the event the crypto-assets and securities increase or decrease in value. Such crypto-assets and securities may be bought or sold from time to time, even after ${appCompanyShort} has distributed positive information regarding the crypto-assets and companies. ${appCompanyShort} has no obligation to inform readers of its trading activities or the trading activities of any of its owners, members, officers, directors, contractors and affiliates and/or any companies affiliated with BC Relations’ owners, members, officers, directors, contractors and affiliates. ${appCompanyShort} and its affiliates may from time to time enter into agreements to purchase crypto-assets or securities to provide a method to reach their goals.\n\n"; - static m29(appCompanyLong) => + static m41(appCompanyLong) => "The Terms are effective until terminated by ${appCompanyLong}. \nIn the event of termination, You are no longer authorized to access the Application, but all restrictions imposed on You and the disclaimers and limitations of liability set out in the Terms will survive termination. \nSuch termination shall not affect any legal right that may have accrued to ${appCompanyLong} against You up to the date of termination. \n${appCompanyLong} may also remove the Application as a whole or any sections or features of the Application at any time. "; - static m30(appCompanyLong) => + static m42(appCompanyLong) => "The provisions of previous paragraphs are for the benefit of ${appCompanyLong} and its officers, directors, employees, agents, licensors, suppliers, and any third party information providers to the Application. Each of these individuals or entities shall have the right to assert and enforce those provisions directly against You on its own behalf."; - static m31(appName, appCompanyLong) => + static m43(appName, appCompanyLong) => "${appName} mobile is a non-custodial, decentralized and blockchain based application and as such does ${appCompanyLong} never store any user-data (accounts and authentication data). \nWe also collect and process non-personal, anonymized data for statistical purposes and analysis and to help us provide a better service.\n\nThis document was last updated on January 31st, 2020"; - static m32(appName, appCompanyLong) => + static m44(appName, appCompanyLong) => "This disclaimer applies to the contents and services of the app ${appName} and is valid for all users of the “Application” (\'Software\', “Mobile Application”, “Application” or “App”).\n\nThe Application is owned by ${appCompanyLong}.\n\nWe reserve the right to amend the following Terms and Conditions (governing the use of the application “${appName} mobile”) at any time without prior notice and at our sole discretion. It is your responsibility to periodically check this Terms and Conditions for any updates to these Terms, which shall come into force once published.\nYour continued use of the application shall be deemed as acceptance of the following Terms.\nWe are a company incorporated in Vietnam and these Terms and Conditions are governed by and subject to the laws of Vietnam.\nIf You do not agree with these Terms and Conditions, You must not use or access this software."; - static m33(appName) => + static m45(appName) => "You are not allowed to decompile, decode, disassemble, rent, lease, loan, sell, sublicense, or create derivative works from the ${appName} mobile application or the user content. Nor are You allowed to use any network monitoring or detection software to determine the software architecture, or extract information about usage or individuals’ or users’ identities.\nYou are not allowed to copy, modify, reproduce, republish, distribute, display, or transmit for commercial, non-profit or public purposes all or any portion of the application or the user content without our prior written authorization."; - static m34(appName, appCompanyLong) => + static m46(appName, appCompanyLong) => "If you create an account in the Mobile Application, you are responsible for maintaining the security of your account and you are fully responsible for all activities that occur under the account and any other actions taken in connection with it. We will not be liable for any acts or omissions by you, including any damages of any kind incurred as a result of such acts or omissions. \n\n${appName} mobile is a non-custodial wallet implementation and thus ${appCompanyLong} can not access nor restore your account in case of (data) loss."; - static m35(appName) => + static m47(appName) => "End-User License Agreement (EULA) of ${appName} mobile:"; - static m36(coin) => "Anfrage an ${coin} faucet senden..."; + static m48(coinAbbr) => + "Aktivierung von ${coinAbbr} konnte nicht abgebrochen werden"; + + static m49(coin) => "Anfrage an ${coin} faucet senden..."; - static m37(appCompanyShort) => "${appCompanyShort} Neuigkeiten"; + static m50(appCompanyShort) => "${appCompanyShort} Neuigkeiten"; - static m38(value) => "Die Gebühren müssen bis zu ${value} betragen."; + static m51(value) => "Die Gebühren müssen bis zu ${value} betragen."; - static m39(coin) => "${coin}-Gebühr"; + static m52(coin) => "${coin}-Gebühr"; - static m40(coin) => "Bitte aktivieren Sie ${coin}."; + static m53(coin) => "Bitte aktivieren Sie ${coin}."; - static m41(abbr) => + static m54(value) => "Gwei muss bis zu ${value} sein"; + + static m55(coinName) => "Eingehende ${coinName}-TXS-Schutzeinstellungen"; + + static m56(abbr) => "${abbr} Guthaben reicht nicht aus, um die Handelsgebühr zu bezahlen"; - static m42(coinAbbr) => "${coinAbbr} ist nicht verfügbar :("; + static m57(coin) => "Ungültige ${coin}-Adresse"; - static m43(coinName) => + static m58(coinAbbr) => "${coinAbbr} ist nicht verfügbar :("; + + static m59(coinName) => "❗Vorsicht! Der Markt für ${coinName} hat ein 24-Stunden-Handelsvolumen von weniger als 10.000 US-Dollar!"; - static m44(coinName, number) => + static m60(value) => "Das Limit muss bis zu ${value} betragen"; + + static m61(coinName, number) => "Die Mindestmenge für den Verkauf ist ${number} ${coinName}"; - static m45(coinName, number) => + static m62(coinName, number) => "Die Mindestmenge für den Kauf ist ${number} ${coinName}"; - static m46(buyCoin, buyAmount, sellCoin, sellAmount) => + static m63(buyCoin, buyAmount, sellCoin, sellAmount) => "Die Mindestmenge des Auftrags ist ${buyAmount} ${buyCoin}\n(${sellAmount} ${sellCoin})"; - static m47(coinName, number) => + static m64(coinName, number) => "Die Mindestmenge für den Verkauf ist ${number} ${coinName}"; - static m48(minValue, coin) => "Muss größer sein als ${minValue} ${coin}"; + static m65(minValue, coin) => "Muss größer sein als ${minValue} ${coin}"; - static m49(appName) => + static m66(appName) => "Bitte beachten Sie, dass Sie jetzt Mobilfunkdaten verwenden und die Teilnahme am P2P-Netzwerk von ${appName} Internetverkehr verbraucht. Es ist besser, ein WiFi-Netzwerk zu verwenden, wenn Ihr mobiler Datentarif kostspielig ist."; - static m50(coin) => + static m67(coin) => "Aktivieren Sie ${coin} und laden Sie zuerst Ihr Guthaben auf"; - static m51(number) => "${number} Auftrag/Aufträge erstellen:"; + static m68(number) => "${number} Auftrag/Aufträge erstellen:"; - static m52(coin) => "${coin} Guthaben ist zu niedrig"; + static m69(coin) => "${coin} Guthaben ist zu niedrig"; - static m53(coin, fee) => + static m70(coin, fee) => "Nicht genug ${coin} vorhanden, um die Gebühren zu zahlen. MIN Guthaben beträgt ${fee} ${coin}"; - static m54(coinName) => "Bitte geben Sie die ${coinName} Menge ein."; + static m71(coinName) => "Bitte geben Sie die ${coinName} Menge ein."; - static m55(coin) => "Nicht genug ${coin} für die Transaktion!"; + static m72(coin) => "Nicht genug ${coin} für die Transaktion!"; - static m56(sell, buy) => + static m73(sell, buy) => "${sell}/${buy} swap wurde erfolgreich abgeschlossen"; - static m57(sell, buy) => "${sell}/${buy} swap fehlgeschlagen"; + static m74(sell, buy) => "${sell}/${buy} swap fehlgeschlagen"; - static m58(sell, buy) => "${sell}/${buy} swap gestartet"; + static m75(sell, buy) => "${sell}/${buy} swap gestartet"; - static m59(sell, buy) => + static m76(sell, buy) => "${sell}/${buy} swap ist abgelaufen(Zeitüberschreitung)"; - static m60(coin) => "Du hast eine ${coin} Transaktion erhalten!"; + static m77(coin) => "Du hast eine ${coin} Transaktion erhalten!"; - static m61(assets) => "${assets} Assets"; + static m78(assets) => "${assets} Assets"; - static m62(coin) => "Alle ${coin} Aufträge werden storniert."; + static m79(coin) => "Alle ${coin} Aufträge werden storniert."; - static m63(delta) => "Sinnvoll: CEX +${delta}%"; + static m80(delta) => "Sinnvoll: CEX +${delta}%"; - static m64(delta) => "Teuer: CEX ${delta}%"; + static m81(delta) => "Teuer: CEX ${delta}%"; - static m65(fill) => "${fill}% ausgefüllt"; + static m82(fill) => "${fill}% ausgefüllt"; - static m66(coin) => "(${coin}) Menge"; + static m83(coin) => "(${coin}) Menge"; - static m67(coin) => "(${coin}) Preis"; + static m84(coin) => "(${coin}) Preis"; - static m68(coin) => "(${coin}) Gesamt"; + static m85(coin) => "(${coin}) Gesamt"; - static m69(abbr) => + static m86(abbr) => "${abbr} ist nicht aktiviert. Bitte aktivieren und erneut versuchen."; - static m70(appName) => "Auf welchen Geräten kann ich ${appName} verwenden?"; + static m87(appName) => "Auf welchen Geräten kann ich ${appName} verwenden?"; - static m71(appName) => + static m88(appName) => "Wie unterscheidet sich der Handel auf ${appName} vom Handel auf anderen DEXs?"; - static m72(appName) => "Wie werden die Gebühren für ${appName} berechnet?"; + static m89(appName) => "Wie werden die Gebühren für ${appName} berechnet?"; - static m73(appName) => "Wer steckt hinter ${appName}?"; + static m90(appName) => "Wer steckt hinter ${appName}?"; - static m74(appName) => + static m91(appName) => "Ist es möglich, meine eigene White-Label-Börse auf ${appName} zu entwickeln?"; - static m75(amount) => "Erfolgreich! ${amount} KMD erhalten"; + static m92(amount) => "Erfolgreich! ${amount} KMD erhalten"; + + static m93(dd) => "${dd} Tag(e)"; - static m76(dd) => "${dd} Tag(e)"; + static m94(hh, minutes) => "${hh}h ${minutes}m"; - static m77(hh, minutes) => "${hh}h ${minutes}m"; + static m95(mm) => "${mm}min"; - static m78(mm) => "${mm}min"; + static m96(amount) => "Klicken Sie hier, um ${amount} Aufträge zu sehen"; - static m79(amount) => "Klicken Sie hier, um ${amount} Aufträge zu sehen"; + static m97(coinName, address) => "Meine ${coinName} Adresse:\n${address}"; - static m80(coinName, address) => "Meine ${coinName} Adresse:\n${address}"; + static m98(coin) => "Nach vergangenen ${coin}-Transaktionen suchen?"; - static m81(coin) => + static m99(count, maxCount) => + "Es werden ${count} von ${maxCount} Bestellungen angezeigt."; + + static m100(coin) => "Bitte geben Sie die ${coin} Menge an, die Sie kaufen möchten"; - static m82(maxCoins) => + static m101(maxCoins) => "Maximum an aktivierbaren Coins ist ${maxCoins}. Bitte deaktivieren Sie welche."; - static m83(coin) => "${coin} ist nicht aktiviert!"; + static m102(coin) => "${coin} ist nicht aktiviert!"; - static m84(coin) => + static m103(coin) => "Bitte geben Sie die ${coin} Menge an, die Sie verkaufen möchten"; - static m85(coin) => "${coin} kann nicht aktiviert werden"; + static m104(coin) => "${coin} kann nicht aktiviert werden"; - static m86(description) => + static m105(description) => "Wählen Sie bitte eine mp3- oder wav-Datei aus. Wir spielen es, wenn ${description}."; - static m87(description) => "Abgespielt, wenn ${description}"; + static m106(description) => "Abgespielt, wenn ${description}"; - static m88(appName) => + static m107(appName) => "Wenn Sie Fragen haben oder glauben, dass Sie ein technisches Problem mit der ${appName} App gefunden haben, können Sie dies melden und Unterstützung von unserem Team erhalten."; - static m89(coin) => + static m108(coin) => "Bitte aktivieren Sie zuerst ${coin} und laden Sie Ihr Guthaben auf"; - static m90(coin) => + static m109(coin) => "Das ${coin} Guthaben reicht nicht aus, um die Transaktionsgebühren zu bezahlen."; - static m91(coin, amount) => + static m110(coin, amount) => "Das ${coin} Guthaben reicht nicht aus, um die Transaktionsgebühren zu bezahlen. ${coin} ${amount} sind erforderlich."; - static m92(left) => "Verbleibende Transaktionen: ${left}"; + static m111(name) => + "Welche ${name}-Transaktionen möchten Sie synchronisieren?"; - static m93(amnt, hash) => + static m112(left) => "Verbleibende Transaktionen: ${left}"; + + static m113(amnt, hash) => "${amnt} Geldmittel wurden erfolgreich freigeschaltet - TX: ${hash}"; - static m94(version) => "Sie nutzen Version ${version}"; + static m114(version) => "Sie nutzen Version ${version}"; - static m95(version) => "Version ${version} verfügbar. Bitte updaten."; + static m115(version) => "Version ${version} verfügbar. Bitte updaten."; - static m96(appName) => "${appName} Update"; + static m116(appName) => "${appName} Update"; - static m97(coinAbbr) => "Wir konnten ${coinAbbr} nicht aktivieren"; + static m117(coinAbbr) => "Wir konnten ${coinAbbr} nicht aktivieren"; - static m98(coinAbbr) => + static m118(coinAbbr) => "Wir konnten ${coinAbbr} nicht aktivieren.\nBitte starten Sie die App neu, um es erneut zu versuchen."; - static m99(appName) => + static m119(appName) => "${appName} ist eine Multi-Coin-Wallet der nächsten Generation mit nativer DEX-Funktionalität der dritten Generation und mehr."; - static m100(appName) => + static m120(appName) => "Sie haben ${appName} zuvor den Zugriff auf die Kamera verweigert.\nBitte ändern Sie die Kamerazugriffsrechte manuell in den Telefoneinstellungen, um mit dem QR-Code-Scan fortzufahren."; - static m101(amount, coinName) => "${amount} ${coinName} ABHEBEN"; + static m121(amount, coinName) => "${amount} ${coinName} ABHEBEN"; - static m102(amount, coin) => "Sie erhalten ${amount} ${coin}"; + static m122(amount, coin) => "Sie erhalten ${amount} ${coin}"; final messages = _notInlinedMessages(_notInlinedMessages); static Map _notInlinedMessages(_) => { @@ -304,16 +348,22 @@ class MessageLookup extends MessageLookupByLibrary { "Biometrischen Schutz aktivieren"), "activateAccessPin": MessageLookupByLibrary.simpleMessage("PIN-Schutz aktivieren"), + "activateCoins": m0, + "activating": m1, + "activation": m2, + "activationCancelled": + MessageLookupByLibrary.simpleMessage("Münzaktivierung abgebrochen"), + "activationInProgress": m3, "addCoin": MessageLookupByLibrary.simpleMessage("Coin aktivieren"), - "addingCoinSuccess": m0, + "addingCoinSuccess": m4, "addressAdd": MessageLookupByLibrary.simpleMessage("Adresse hinzufügen"), "addressBook": MessageLookupByLibrary.simpleMessage("Adressbuch"), "addressBookEmpty": MessageLookupByLibrary.simpleMessage("Adressbuch ist leer"), - "addressBookFilter": m1, + "addressBookFilter": m5, "addressBookTitle": MessageLookupByLibrary.simpleMessage("Adressbuch"), - "addressCoinInactive": m2, + "addressCoinInactive": m6, "addressNotFound": MessageLookupByLibrary.simpleMessage("Nichts gefunden"), "addressSelectCoin": @@ -321,6 +371,8 @@ class MessageLookup extends MessageLookupByLibrary { "addressSend": MessageLookupByLibrary.simpleMessage("Empfängeradresse"), "advanced": MessageLookupByLibrary.simpleMessage("Fortgeschritten"), "all": MessageLookupByLibrary.simpleMessage("Alle"), + "allPastTransactions": MessageLookupByLibrary.simpleMessage( + "In Ihrem Wallet werden alle vergangenen Transaktionen angezeigt. Dies wird viel Speicherplatz und Zeit in Anspruch nehmen, da alle Blöcke heruntergeladen und gescannt werden."), "allowCustomSeed": MessageLookupByLibrary.simpleMessage( "Benutzerdefinierten Seed erlauben"), "alreadyExists": @@ -328,17 +380,17 @@ class MessageLookup extends MessageLookupByLibrary { "amount": MessageLookupByLibrary.simpleMessage("Menge"), "amountToSell": MessageLookupByLibrary.simpleMessage("Zu verkaufende Menge"), - "answer_1": m3, - "answer_10": m4, - "answer_2": m5, - "answer_3": m6, + "answer_1": m7, + "answer_10": m8, + "answer_2": m9, + "answer_3": m10, "answer_4": MessageLookupByLibrary.simpleMessage( "Ja. Sie müssen mit dem Internet verbunden bleiben und die App ausführen, um jeden Atomic Swap erfolgreich abzuschließen (sehr kurze Verbindungsunterbrechungen sind normalerweise in Ordnung). Andernfalls besteht das Risiko einer Auftragsstornierung, wenn Sie ein Maker sind, und das Risiko eines Geldverlusts, wenn Sie ein Taker sind.\n\nDas Atomic-Swap-Protokoll erfordert, dass beide Teilnehmer online bleiben und die beteiligten Blockchains überwachen, damit der Prozess atomar bleibt."), - "answer_5": m7, - "answer_6": m8, - "answer_7": m9, - "answer_8": m10, - "answer_9": m11, + "answer_5": m11, + "answer_6": m12, + "answer_7": m13, + "answer_8": m14, + "answer_9": m15, "areYouSure": MessageLookupByLibrary.simpleMessage("BIST DU SICHER?"), "authenticate": MessageLookupByLibrary.simpleMessage("authentifizieren"), @@ -347,8 +399,9 @@ class MessageLookup extends MessageLookupByLibrary { "availableVolume": MessageLookupByLibrary.simpleMessage("max vol"), "back": MessageLookupByLibrary.simpleMessage("zurück"), "backupTitle": MessageLookupByLibrary.simpleMessage("Sicherung"), - "batteryCriticalError": m12, - "batteryLowWarning": m13, + "basedOnCoinRatio": m16, + "batteryCriticalError": m17, + "batteryLowWarning": m18, "batterySavingWarning": MessageLookupByLibrary.simpleMessage( "Ihr Handy ist im Energissparmodus. Bitte deaktivieren Sie diesen Modus oder gehen Sie mit der App NICHT im Hintergrundmodus. Andernfalls könnte die App durch das Betriebssystem beendet werden und der Swap schlägt fehl."), "bestAvailableRate": @@ -362,7 +415,7 @@ class MessageLookup extends MessageLookupByLibrary { "In Maker-Auftrag umwandeln, wenn kein match stattgefunden hat"), "buySuccessWaiting": MessageLookupByLibrary.simpleMessage( "Swap gestartet, bitte warten!"), - "buySuccessWaitingError": m14, + "buySuccessWaitingError": m19, "buyTestCoinWarning": MessageLookupByLibrary.simpleMessage( "Warnung, Sie möchten Test-Coins ohne tatsächlichen Wert kaufen!"), "camoPinBioProtectionConflict": MessageLookupByLibrary.simpleMessage( @@ -393,6 +446,10 @@ class MessageLookup extends MessageLookupByLibrary { "camouflageSetup": MessageLookupByLibrary.simpleMessage("Tarnungs-PIN Einrichtung"), "cancel": MessageLookupByLibrary.simpleMessage("stornieren"), + "cancelActivation": + MessageLookupByLibrary.simpleMessage("Aktivierung abbrechen"), + "cancelActivationQuestion": MessageLookupByLibrary.simpleMessage( + "Sind Sie sicher, dass Sie die Aktivierung abbrechen möchten?"), "cancelButton": MessageLookupByLibrary.simpleMessage("stornieren"), "cancelOrder": MessageLookupByLibrary.simpleMessage("Auftrag stornieren"), @@ -408,6 +465,7 @@ class MessageLookup extends MessageLookupByLibrary { "cexData": MessageLookupByLibrary.simpleMessage("CEX-Daten"), "cexDataDesc": MessageLookupByLibrary.simpleMessage( "Die mit diesem Symbol gekennzeichneten Marktdaten (Kurse, Charts usw.) stammen aus Drittquellen (coingecko.com, openrates.io)."), + "cexRate": MessageLookupByLibrary.simpleMessage("CEX-Kurs"), "changePin": MessageLookupByLibrary.simpleMessage("PIN-Code ändern"), "checkForUpdates": MessageLookupByLibrary.simpleMessage("Nach Updates suchen"), @@ -418,10 +476,10 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("WEITER"), "checkSeedPhraseButton2": MessageLookupByLibrary.simpleMessage( "ZURÜCK UND ERNEUT ÜBERPRÜFEN"), - "checkSeedPhraseHint": m15, + "checkSeedPhraseHint": m20, "checkSeedPhraseInfo": MessageLookupByLibrary.simpleMessage( "Ihr Seed ist wichtig - deshalb stellen wir Ihnen drei verschiedene Fragen, um sicherzustellen, dass dieser korrekt ist und Sie Ihr Wallet jederzeit problemlos wiederherstellen können."), - "checkSeedPhraseSubtile": m16, + "checkSeedPhraseSubtile": m21, "checkSeedPhraseTitle": MessageLookupByLibrary.simpleMessage( "LASSEN SIE UNS IHREN SEED DOPPELT ÜBERPRÜFEN"), "chineseLanguage": MessageLookupByLibrary.simpleMessage("Chinesisch"), @@ -440,6 +498,10 @@ class MessageLookup extends MessageLookupByLibrary { "closePreview": MessageLookupByLibrary.simpleMessage("Vorschau schließen"), "code": MessageLookupByLibrary.simpleMessage("Code:"), + "cofirmCancelActivation": MessageLookupByLibrary.simpleMessage( + "Sind Sie sicher, dass Sie die Aktivierung abbrechen möchten?"), + "coinActivationCancelled": m22, + "coinActivationSuccessfull": m23, "coinSelectClear": MessageLookupByLibrary.simpleMessage("Löschen"), "coinSelectNotFound": MessageLookupByLibrary.simpleMessage("keine aktivierten Coins"), @@ -447,6 +509,9 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("Coin auswählen"), "coinsActivatedLimitReached": MessageLookupByLibrary.simpleMessage( "Sie haben die maximale Anzahl an Assets ausgewählt"), + "coinsAreActivated": m24, + "coinsAreActivatedSuccessfully": m25, + "coinsAreNotActivated": m26, "comingSoon": MessageLookupByLibrary.simpleMessage("Demnächst..."), "commingsoon": MessageLookupByLibrary.simpleMessage("TX Details folgen in Kürze!"), @@ -478,7 +543,7 @@ class MessageLookup extends MessageLookupByLibrary { "contactDelete": MessageLookupByLibrary.simpleMessage("Kontakt löschen"), "contactDeleteBtn": MessageLookupByLibrary.simpleMessage("Löschen"), - "contactDeleteWarning": m17, + "contactDeleteWarning": m27, "contactDiscardBtn": MessageLookupByLibrary.simpleMessage("Verwerfen"), "contactEdit": MessageLookupByLibrary.simpleMessage("Bearbeiten"), "contactExit": MessageLookupByLibrary.simpleMessage("Beenden"), @@ -489,7 +554,10 @@ class MessageLookup extends MessageLookupByLibrary { "contactSave": MessageLookupByLibrary.simpleMessage("Sichern"), "contactTitle": MessageLookupByLibrary.simpleMessage("Kontaktdetails"), "contactTitleName": MessageLookupByLibrary.simpleMessage("Name"), + "contract": MessageLookupByLibrary.simpleMessage("Vertrag"), "convert": MessageLookupByLibrary.simpleMessage("Umwandeln"), + "couldNotLaunchUrl": MessageLookupByLibrary.simpleMessage( + "URL konnte nicht gestartet werden"), "couldntImportError": MessageLookupByLibrary.simpleMessage( "Konnte nicht importiert werden:"), "create": MessageLookupByLibrary.simpleMessage("Handeln"), @@ -505,7 +573,7 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("Individuelle Gebühr"), "customFeeWarning": MessageLookupByLibrary.simpleMessage( "Individuelle Gebühr nur nutzen, wenn Sie wissen was darunter zu verstehen ist!"), - "customSeedWarning": m18, + "customSeedWarning": m28, "dPow": MessageLookupByLibrary.simpleMessage("Komodo dPoW Sicherheit"), "date": MessageLookupByLibrary.simpleMessage("Datum"), "decryptingWallet": @@ -521,6 +589,13 @@ class MessageLookup extends MessageLookupByLibrary { "deleteWallet": MessageLookupByLibrary.simpleMessage("Wallet löschen"), "deletingWallet": MessageLookupByLibrary.simpleMessage("Wallet wird gelöscht..."), + "detailedFeesReceiveCoinTransactionFee": m29, + "detailedFeesSendCoinTransactionFee": m30, + "detailedFeesSendTradingFeeTransactionFee": + MessageLookupByLibrary.simpleMessage( + "Handelsgebühr senden Transaktionsgebühr"), + "detailedFeesTradingFee": + MessageLookupByLibrary.simpleMessage("Handelsgebühr"), "details": MessageLookupByLibrary.simpleMessage("Details"), "deutscheLanguage": MessageLookupByLibrary.simpleMessage("Deutsch"), "developerTitle": MessageLookupByLibrary.simpleMessage("Entwickler/in"), @@ -531,6 +606,8 @@ class MessageLookup extends MessageLookupByLibrary { "Deaktivieren Sie Screenshots/Vorschau"), "disclaimerAndTos": MessageLookupByLibrary.simpleMessage("Haftungsausschluss & AGB"), + "doNotCloseTheAppTapForMoreInfo": MessageLookupByLibrary.simpleMessage( + "Schließen Sie die App nicht. Für weitere Informationen tippen ..."), "done": MessageLookupByLibrary.simpleMessage("Erledigt"), "dontAskAgain": MessageLookupByLibrary.simpleMessage("Nicht mehr nachfragen"), @@ -539,7 +616,7 @@ class MessageLookup extends MessageLookupByLibrary { "duration": MessageLookupByLibrary.simpleMessage("Dauer"), "editContact": MessageLookupByLibrary.simpleMessage("Kontakt bearbeiten"), - "emptyCoin": m19, + "emptyCoin": m31, "emptyExportPass": MessageLookupByLibrary.simpleMessage( "Verschlüsselungskennwort darf nicht leer sein"), "emptyImportPass": MessageLookupByLibrary.simpleMessage( @@ -548,7 +625,10 @@ class MessageLookup extends MessageLookupByLibrary { "Kontakt-Name darf nicht leer sein"), "emptyWallet": MessageLookupByLibrary.simpleMessage( "Wallet-Name darf nicht leer sein"), - "enable": m20, + "enable": m32, + "enableNotificationsForActivationProgress": + MessageLookupByLibrary.simpleMessage( + "Bitte aktivieren Sie Benachrichtigungen, um Updates zum Aktivierungsfortschritt zu erhalten."), "enableTestCoins": MessageLookupByLibrary.simpleMessage("Test-Coins aktivieren"), "enablingTooManyAssetsSpan1": @@ -582,7 +662,7 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("Ungültige Adresse"), "errorNotAValidAddressSegWit": MessageLookupByLibrary.simpleMessage( "Segwit-Adressen werden (noch) nicht unterstützt"), - "errorNotEnoughGas": m21, + "errorNotEnoughGas": m33, "errorTryAgain": MessageLookupByLibrary.simpleMessage( "Fehler, bitte versuchen Sie es erneut"), "errorTryLater": MessageLookupByLibrary.simpleMessage( @@ -593,32 +673,32 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("Bitte Daten eintippen"), "estimateValue": MessageLookupByLibrary.simpleMessage("Geschätzter Gesamtwert"), - "eulaParagraphe1": m22, - "eulaParagraphe10": m23, - "eulaParagraphe11": m24, + "eulaParagraphe1": m34, + "eulaParagraphe10": m35, + "eulaParagraphe11": m36, "eulaParagraphe12": MessageLookupByLibrary.simpleMessage( "When accessing or using the Services, You agree that You are solely responsible for your conduct while accessing and using our Services. Without limiting the generality of the foregoing, You agree that You will not:\n(a) use the Services in any manner that could interfere with, disrupt, negatively affect or inhibit other users from fully enjoying the Services, or that could damage, disable, overburden or impair the functioning of our Services in any manner;\n(b) use the Services to pay for, support or otherwise engage in any illegal activities, including, but not limited to illegal gambling, fraud, money laundering, or terrorist activities;\n(c) use any robot, spider, crawler, scraper or other automated means or interface not provided by us to access our Services or to extract data;\n(d) use or attempt to use another user’s Wallet or credentials without authorization;\n(e) attempt to circumvent any content filtering techniques we employ, or attempt to access any service or area of our Services that You are not authorized to access;\n(f) introduce to the Services any virus, Trojan, worms, logic bombs or other harmful material;\n(g) develop any third-party applications that interact with our Services without our prior written consent;\n(h) provide false, inaccurate, or misleading information; \n(i) encourage or induce any other person to engage in any of the activities prohibited under this Section."), - "eulaParagraphe13": m25, - "eulaParagraphe14": m26, - "eulaParagraphe15": m27, - "eulaParagraphe16": m28, - "eulaParagraphe17": m29, - "eulaParagraphe18": m30, - "eulaParagraphe19": m31, - "eulaParagraphe2": m32, + "eulaParagraphe13": m37, + "eulaParagraphe14": m38, + "eulaParagraphe15": m39, + "eulaParagraphe16": m40, + "eulaParagraphe17": m41, + "eulaParagraphe18": m42, + "eulaParagraphe19": m43, + "eulaParagraphe2": m44, "eulaParagraphe3": MessageLookupByLibrary.simpleMessage( "By entering into this User (each subject accessing or using the site) Agreement (this writing) You declare that You are an individual over the age of majority (at least 18 or older) and have the capacity to enter into this User Agreement and accept to be legally bound by the terms and conditions of this User Agreement, as incorporated herein and amended from time to time."), "eulaParagraphe4": MessageLookupByLibrary.simpleMessage( "We may change the terms of this User Agreement at any time. Any such changes will take effect when published in the application, or when You use the Services.\n\nRead the User Agreement carefully every time You use our Services. Your continued use of the Services shall signify your acceptance to be bound by the current User Agreement. Our failure or delay in enforcing or partially enforcing any provision of this User Agreement shall not be construed as a waiver of any."), - "eulaParagraphe5": m33, - "eulaParagraphe6": m34, + "eulaParagraphe5": m45, + "eulaParagraphe6": m46, "eulaParagraphe7": MessageLookupByLibrary.simpleMessage( "We are not responsible for seed-phrases residing in the Mobile Application. In no event shall we be held liable for any loss of any kind. It is your sole responsibility to maintain appropriate backups of your accounts and their seedprases."), "eulaParagraphe8": MessageLookupByLibrary.simpleMessage( "You should not act, or refrain from acting solely on the basis of the content of this application. \nYour access to this application does not itself create an adviser-client relationship between You and us. \nThe content of this application does not constitute a solicitation or inducement to invest in any financial products or services offered by us. \nAny advice included in this application has been prepared without taking into account your objectives, financial situation or needs. You should consider our Risk Disclosure Notice before making any decision on whether to acquire the product described in that document."), "eulaParagraphe9": MessageLookupByLibrary.simpleMessage( "We do not guarantee your continuous access to the application or that your access or use will be error-free. \nWe will not be liable in the event that the application is unavailable to You for any reason (for example, due to computer downtime ascribable to malfunctions, upgrades, server problems, precautionary or corrective maintenance activities or interruption in telecommunication supplies). "), - "eulaTitle1": m35, + "eulaTitle1": m47, "eulaTitle10": MessageLookupByLibrary.simpleMessage("ACCESS AND SECURITY"), "eulaTitle11": MessageLookupByLibrary.simpleMessage( @@ -668,12 +748,13 @@ class MessageLookup extends MessageLookupByLibrary { "Die Elemente wurden erfolgreich exportiert:"), "exportSwapsTitle": MessageLookupByLibrary.simpleMessage("Swaps"), "exportTitle": MessageLookupByLibrary.simpleMessage("Exportieren"), + "failedToCancelActivation": m48, "fakeBalanceAmt": MessageLookupByLibrary.simpleMessage("Gefälschter Guthaben:"), "faqTitle": MessageLookupByLibrary.simpleMessage("Häufig gestellte Fragen"), "faucetError": MessageLookupByLibrary.simpleMessage("Fehler"), - "faucetInProgress": m36, + "faucetInProgress": m49, "faucetName": MessageLookupByLibrary.simpleMessage("FAUCET"), "faucetSuccess": MessageLookupByLibrary.simpleMessage("Erfolg"), "faucetTimedOut": MessageLookupByLibrary.simpleMessage( @@ -681,7 +762,7 @@ class MessageLookup extends MessageLookupByLibrary { "feedNewsTab": MessageLookupByLibrary.simpleMessage("Neuigkeiten"), "feedNotFound": MessageLookupByLibrary.simpleMessage("Hier gibt es nichts"), - "feedNotifTitle": m37, + "feedNotifTitle": m50, "feedReadMore": MessageLookupByLibrary.simpleMessage("Mehr lesen..."), "feedTab": MessageLookupByLibrary.simpleMessage("Feed"), "feedTitle": MessageLookupByLibrary.simpleMessage("Newsfeed"), @@ -695,7 +776,7 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("Newsfeed aktualisiert"), "feedback": MessageLookupByLibrary.simpleMessage("Protokolldatei teilen"), - "feesError": m38, + "feesError": m51, "filtersAll": MessageLookupByLibrary.simpleMessage("Alle"), "filtersButton": MessageLookupByLibrary.simpleMessage("Filter"), "filtersClearAll": @@ -712,18 +793,26 @@ class MessageLookup extends MessageLookupByLibrary { "filtersTo": MessageLookupByLibrary.simpleMessage("Bis Datum"), "filtersType": MessageLookupByLibrary.simpleMessage("Taker/Maker"), "fingerprint": MessageLookupByLibrary.simpleMessage("Fingerabdruck"), + "finishingUp": MessageLookupByLibrary.simpleMessage( + "Bitte warten Sie, bis der Vorgang abgeschlossen ist"), + "foundQrCode": MessageLookupByLibrary.simpleMessage("QR-Code gefunden"), "frenchLanguage": MessageLookupByLibrary.simpleMessage("Französisch"), "from": MessageLookupByLibrary.simpleMessage("Von"), - "gasFee": m39, + "futureTransactions": MessageLookupByLibrary.simpleMessage( + "Wir synchronisieren zukünftige Transaktionen, die nach der Aktivierung in Verbindung mit Ihrem öffentlichen Schlüssel durchgeführt werden. Dies ist die schnellste Option und beansprucht am wenigsten Speicherplatz."), + "gasFee": m52, "gasLimit": MessageLookupByLibrary.simpleMessage("Gas-Limit"), - "gasNotActive": m40, + "gasNotActive": m53, "gasPrice": MessageLookupByLibrary.simpleMessage("Gas-Preis"), "generalPinNotActive": MessageLookupByLibrary.simpleMessage( "Der allgemeine PIN-Schutz ist nicht aktiv.\nDer Tarnungsmodus ist nicht verfügbar.\nBitte aktivieren Sie den PIN-Schutz."), "getBackupPhrase": MessageLookupByLibrary.simpleMessage( "Wichtig: Sichern Sie Ihren Seed bevor Sie fortfahren!"), + "gettingTxWait": MessageLookupByLibrary.simpleMessage( + "Die Transaktion wird ausgeführt. Bitte warten Sie"), "goToPorfolio": MessageLookupByLibrary.simpleMessage("Zum Portfolio gehen"), + "gweiError": m54, "helpLink": MessageLookupByLibrary.simpleMessage("Hilfe"), "helpTitle": MessageLookupByLibrary.simpleMessage("Hilfe und Support"), "hideBalance": @@ -777,6 +866,7 @@ class MessageLookup extends MessageLookupByLibrary { "importSwapJsonDecodingError": MessageLookupByLibrary.simpleMessage( "Fehler beim Dekodieren der json-Datei"), "importTitle": MessageLookupByLibrary.simpleMessage("Importieren"), + "incomingTransactionsProtectionSettings": m55, "infoPasswordDialog": MessageLookupByLibrary.simpleMessage( "Verwenden Sie ein sicheres Kennwort und speichern Sie es nicht auf demselben Gerät"), "infoTrade1": MessageLookupByLibrary.simpleMessage( @@ -785,7 +875,7 @@ class MessageLookup extends MessageLookupByLibrary { "Der Swap kann bis zu 60 Minuten dauern. Schließen Sie diese Anwendung NICHT!"), "infoWalletPassword": MessageLookupByLibrary.simpleMessage( "Aus Sicherheitsgründen müssen Sie ein Kennwort für die Verschlüsselung ihres Wallets angeben."), - "insufficientBalanceToPay": m41, + "insufficientBalanceToPay": m56, "insufficientText": MessageLookupByLibrary.simpleMessage( "Die Mindestmenge, die für diesen Auftrag erforderlich ist, beträgt"), "insufficientTitle": @@ -794,11 +884,12 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("Aktualisieren"), "internetRestored": MessageLookupByLibrary.simpleMessage( "Internetverbindung wiederhergestellt"), + "invalidCoinAddress": m57, "invalidSwap": MessageLookupByLibrary.simpleMessage( "Swap kann nicht durchgeführt werden"), "invalidSwapDetailsLink": MessageLookupByLibrary.simpleMessage("Details"), - "isUnavailable": m42, + "isUnavailable": m58, "japaneseLanguage": MessageLookupByLibrary.simpleMessage("Japanisch"), "koreanLanguage": MessageLookupByLibrary.simpleMessage("Koreanisch"), "language": MessageLookupByLibrary.simpleMessage("Sprache"), @@ -806,7 +897,8 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("Letzte Transaktionen"), "legalTitle": MessageLookupByLibrary.simpleMessage("Rechtliches"), "less": MessageLookupByLibrary.simpleMessage("Weniger"), - "lessThanCaution": m43, + "lessThanCaution": m59, + "limitError": m60, "loading": MessageLookupByLibrary.simpleMessage("Wird geladen..."), "loadingOrderbook": MessageLookupByLibrary.simpleMessage( "Auftragsbuch wird geladen..."), @@ -882,21 +974,24 @@ class MessageLookup extends MessageLookupByLibrary { "min": MessageLookupByLibrary.simpleMessage("MIN"), "minOrder": MessageLookupByLibrary.simpleMessage("Min Auftragsvolumen:"), - "minValue": m44, - "minValueBuy": m45, - "minValueOrder": m46, - "minValueSell": m47, - "minVolumeInput": m48, + "minValue": m61, + "minValueBuy": m62, + "minValueOrder": m63, + "minValueSell": m64, + "minVolumeInput": m65, "minVolumeIsTDH": MessageLookupByLibrary.simpleMessage( "Muss niedriger als die Verkaufsmenge sein"), "minVolumeTitle": MessageLookupByLibrary.simpleMessage( "Erforderliches Mindestvolumen"), "minVolumeToggle": MessageLookupByLibrary.simpleMessage( "Benutzerdefiniertes Mindestvolumen verwenden"), + "minimizingWillTerminate": MessageLookupByLibrary.simpleMessage( + "Warnung: Durch das Minimieren der App auf iOS wird der Aktivierungsprozess abgebrochen."), "minutes": MessageLookupByLibrary.simpleMessage("m"), - "mobileDataWarning": m49, + "mobileDataWarning": m66, + "moreInfo": MessageLookupByLibrary.simpleMessage("Mehr Info"), "moreTab": MessageLookupByLibrary.simpleMessage("Mehr"), - "multiActivateGas": m50, + "multiActivateGas": m67, "multiBaseAmtPlaceholder": MessageLookupByLibrary.simpleMessage("Menge"), "multiBasePlaceholder": MessageLookupByLibrary.simpleMessage("Coin"), @@ -905,7 +1000,7 @@ class MessageLookup extends MessageLookupByLibrary { "multiConfirmCancel": MessageLookupByLibrary.simpleMessage("Abbrechen"), "multiConfirmConfirm": MessageLookupByLibrary.simpleMessage("Bestätigen"), - "multiConfirmTitle": m51, + "multiConfirmTitle": m68, "multiCreate": MessageLookupByLibrary.simpleMessage("Erstellen"), "multiCreateOrder": MessageLookupByLibrary.simpleMessage("Auftrag"), "multiCreateOrders": MessageLookupByLibrary.simpleMessage("Aufträge"), @@ -921,8 +1016,8 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("Ungültige Menge"), "multiInvalidSellAmt": MessageLookupByLibrary.simpleMessage("Ungültige Verkaufsmenge"), - "multiLowGas": m52, - "multiLowerThanFee": m53, + "multiLowGas": m69, + "multiLowerThanFee": m70, "multiMaxSellAmt": MessageLookupByLibrary.simpleMessage("Max Verkaufsmenge beträgt"), "multiMinReceiveAmt": MessageLookupByLibrary.simpleMessage( @@ -956,7 +1051,7 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("Keine Elemente ausgewählt"), "noMatchingOrders": MessageLookupByLibrary.simpleMessage( "Keine übereinstimmenden Aufträge gefunden"), - "noOrder": m54, + "noOrder": m71, "noOrderAvailable": MessageLookupByLibrary.simpleMessage( "Klicken Sie hier, um einen Auftrag zu erstellen"), "noOrders": MessageLookupByLibrary.simpleMessage( @@ -973,7 +1068,8 @@ class MessageLookup extends MessageLookupByLibrary { "Keine Transaktionen vorhanden"), "nonNumericInput": MessageLookupByLibrary.simpleMessage( "Der Wert muss numerisch sein"), - "notEnoughGas": m55, + "none": MessageLookupByLibrary.simpleMessage("Keiner"), + "notEnoughGas": m72, "notEnoughtBalanceForFee": MessageLookupByLibrary.simpleMessage( "Nicht genügend Guthaben für Gebühren - handeln Sie einen kleinere Menge"), "noteOnOrder": MessageLookupByLibrary.simpleMessage( @@ -982,24 +1078,24 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("Notiz hinzufügen"), "noteTitle": MessageLookupByLibrary.simpleMessage("Notiz"), "nothingFound": MessageLookupByLibrary.simpleMessage("Nichts gefunden"), - "notifSwapCompletedText": m56, + "notifSwapCompletedText": m73, "notifSwapCompletedTitle": MessageLookupByLibrary.simpleMessage("Swap abgeschlossen"), - "notifSwapFailedText": m57, + "notifSwapFailedText": m74, "notifSwapFailedTitle": MessageLookupByLibrary.simpleMessage("Swap fehlgeschlagen"), - "notifSwapStartedText": m58, + "notifSwapStartedText": m75, "notifSwapStartedTitle": MessageLookupByLibrary.simpleMessage("Neuer swap gestartet"), "notifSwapStatusTitle": MessageLookupByLibrary.simpleMessage("Swap-Status geändert"), - "notifSwapTimeoutText": m59, + "notifSwapTimeoutText": m76, "notifSwapTimeoutTitle": MessageLookupByLibrary.simpleMessage( "Swap ist abgelaufen(Zeitüberschreitung)"), - "notifTxText": m60, + "notifTxText": m77, "notifTxTitle": MessageLookupByLibrary.simpleMessage("Eingehende Transaktion"), - "numberAssets": m61, + "numberAssets": m78, "officialPressRelease": MessageLookupByLibrary.simpleMessage("Offizielle Pressemitteilung"), "okButton": MessageLookupByLibrary.simpleMessage("Ok"), @@ -1009,15 +1105,17 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("Genutzter Speicher"), "openMessage": MessageLookupByLibrary.simpleMessage("Fehlermeldung öffnen"), - "orderCancel": m62, + "orderBookLess": MessageLookupByLibrary.simpleMessage("Weniger"), + "orderBookMore": MessageLookupByLibrary.simpleMessage("Mehr"), + "orderCancel": m79, "orderCreated": MessageLookupByLibrary.simpleMessage("Auftrag erstellt"), "orderCreatedInfo": MessageLookupByLibrary.simpleMessage( "Auftrag erfolgreich erstellt"), "orderDetailsAddress": MessageLookupByLibrary.simpleMessage("Adresse"), "orderDetailsCancel": MessageLookupByLibrary.simpleMessage("Abbrechen"), - "orderDetailsExpedient": m63, - "orderDetailsExpensive": m64, + "orderDetailsExpedient": m80, + "orderDetailsExpensive": m81, "orderDetailsFor": MessageLookupByLibrary.simpleMessage("für"), "orderDetailsIdentical": MessageLookupByLibrary.simpleMessage("Identisch mit CEX"), @@ -1030,7 +1128,7 @@ class MessageLookup extends MessageLookupByLibrary { "Durch einmaliges antippen öffnen Sie die Details, durch langes antippen wählen Sie einen Auftrag"), "orderDetailsSpend": MessageLookupByLibrary.simpleMessage("Ausgegeben"), "orderDetailsTitle": MessageLookupByLibrary.simpleMessage("Details"), - "orderFilled": m65, + "orderFilled": m82, "orderMatched": MessageLookupByLibrary.simpleMessage("Auftrag gematched!"), "orderMatching": @@ -1041,9 +1139,9 @@ class MessageLookup extends MessageLookupByLibrary { "orders": MessageLookupByLibrary.simpleMessage("Aufträge"), "ordersActive": MessageLookupByLibrary.simpleMessage("Aktiv"), "ordersHistory": MessageLookupByLibrary.simpleMessage("Verlauf"), - "ordersTableAmount": m66, - "ordersTablePrice": m67, - "ordersTableTotal": m68, + "ordersTableAmount": m83, + "ordersTablePrice": m84, + "ordersTableTotal": m85, "overwrite": MessageLookupByLibrary.simpleMessage("Überschreiben"), "ownOrder": MessageLookupByLibrary.simpleMessage( "Dies ist Ihr eigener Auftrag!"), @@ -1054,6 +1152,8 @@ class MessageLookup extends MessageLookupByLibrary { "paidWith": MessageLookupByLibrary.simpleMessage("Bezahlt mit"), "passwordRequirement": MessageLookupByLibrary.simpleMessage( "Das Kennwort muss mindestens 12 Zeichen enthalten, davon ein Kleinbuchstabe, ein Großbuchstabe und ein Sonderzeichen."), + "pastTransactionsFromDate": MessageLookupByLibrary.simpleMessage( + "In Ihrem Wallet werden Ihre vergangenen Transaktionen angezeigt, die nach dem angegebenen Datum getätigt wurden."), "paymentUriDetailsAccept": MessageLookupByLibrary.simpleMessage("Bezahlen"), "paymentUriDetailsAcceptQuestion": MessageLookupByLibrary.simpleMessage( @@ -1068,9 +1168,12 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("Abbrechen"), "paymentUriDetailsTitle": MessageLookupByLibrary.simpleMessage("Zahlung angefordert"), - "paymentUriInactiveCoin": m69, + "paymentUriInactiveCoin": m86, "placeOrder": MessageLookupByLibrary.simpleMessage("Auftrag platzieren"), + "pleaseAcceptAllCoinActivationRequests": + MessageLookupByLibrary.simpleMessage( + "Bitte akzeptieren Sie alle speziellen Münzaktivierungsanfragen oder heben Sie die Auswahl der Münzen auf."), "pleaseAddCoin": MessageLookupByLibrary.simpleMessage( "Bitte fügen Sie einen Coin hinzu"), "pleaseRestart": MessageLookupByLibrary.simpleMessage( @@ -1093,21 +1196,23 @@ class MessageLookup extends MessageLookupByLibrary { "Achtung, dieser Atomic Swap ist nicht durch dPoW geschützt."), "pubkey": MessageLookupByLibrary.simpleMessage( "Öffentlicher Schlüssel (Pubkey)"), + "qrCodeScanner": + MessageLookupByLibrary.simpleMessage("QR-Code-Scanner"), "question_1": MessageLookupByLibrary.simpleMessage( "Speichern Sie meine privaten Schlüssel?"), - "question_10": m70, - "question_2": m71, + "question_10": m87, + "question_2": m88, "question_3": MessageLookupByLibrary.simpleMessage( "Wie lange dauert ein Atomic Swap?"), "question_4": MessageLookupByLibrary.simpleMessage( "Muss ich für die Dauer des Swaps online sein?"), - "question_5": m72, + "question_5": m89, "question_6": MessageLookupByLibrary.simpleMessage( "Bieten Sie einen Support für die Nutzer an?"), "question_7": MessageLookupByLibrary.simpleMessage( "Gibt es länderspezifische Einschränkungen?"), - "question_8": m73, - "question_9": m74, + "question_8": m90, + "question_9": m91, "rebrandingAnnouncement": MessageLookupByLibrary.simpleMessage( "Es ist eine neue Ära! Wir haben unseren Namen offiziell von „AtomicDEX“ in „Komodo Wallet“ geändert."), "receive": MessageLookupByLibrary.simpleMessage("ERHALTEN"), @@ -1149,7 +1254,7 @@ class MessageLookup extends MessageLookupByLibrary { "rewardsReadMore": MessageLookupByLibrary.simpleMessage( "Lesen Sie mehr über KMD-Belohnungen für aktive Nutzer"), "rewardsReceive": MessageLookupByLibrary.simpleMessage("Empfangen"), - "rewardsSuccess": m75, + "rewardsSuccess": m92, "rewardsTableFiat": MessageLookupByLibrary.simpleMessage("Fiat"), "rewardsTableRewards": MessageLookupByLibrary.simpleMessage("Belohnungen,\nKMD"), @@ -1160,9 +1265,9 @@ class MessageLookup extends MessageLookupByLibrary { "Informationen zu den Belohnungen:"), "rewardsTableUXTO": MessageLookupByLibrary.simpleMessage("UTXO Menge,\nKMD"), - "rewardsTimeDays": m76, - "rewardsTimeHours": m77, - "rewardsTimeMin": m78, + "rewardsTimeDays": m93, + "rewardsTimeHours": m94, + "rewardsTimeMin": m95, "rewardsTitle": MessageLookupByLibrary.simpleMessage( "Informationen zu den Belohnungen"), "russianLanguage": MessageLookupByLibrary.simpleMessage("Russisch"), @@ -1207,13 +1312,15 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("Alle Test Assets auswählen"), "searchFilterSubtitleUBQ": MessageLookupByLibrary.simpleMessage("Alle Ubiq coins auswählen"), + "searchFilterSubtitleZHTLC": MessageLookupByLibrary.simpleMessage( + "Wählen Sie alle ZHTLC-Münzen aus"), "searchFilterSubtitleutxo": MessageLookupByLibrary.simpleMessage("Alle UTXO coins auswählen"), "searchForTicker": MessageLookupByLibrary.simpleMessage("Ticker suchen"), "seconds": MessageLookupByLibrary.simpleMessage("s"), "security": MessageLookupByLibrary.simpleMessage("Sicherheit"), - "seeOrders": m79, + "seeOrders": m96, "seeTxHistory": MessageLookupByLibrary.simpleMessage( "Transaktionsverlauf anzeigen"), "seedPhrase": MessageLookupByLibrary.simpleMessage("Seed-Phrase"), @@ -1228,6 +1335,8 @@ class MessageLookup extends MessageLookupByLibrary { "Wählen Sie den zu kaufenden Coin aus"), "selectCoinToSell": MessageLookupByLibrary.simpleMessage( "Wählen Sie den zu verkaufenden Coin"), + "selectDate": + MessageLookupByLibrary.simpleMessage("Wählen Sie ein Datum aus"), "selectFileImport": MessageLookupByLibrary.simpleMessage("Datei auswählen"), "selectLanguage": @@ -1256,10 +1365,13 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("Sprachen"), "settings": MessageLookupByLibrary.simpleMessage("Einstellungen"), "share": MessageLookupByLibrary.simpleMessage("Teilen"), - "shareAddress": m80, + "shareAddress": m97, + "shouldScanPastTransaction": m98, + "showAddress": MessageLookupByLibrary.simpleMessage("Adresse anzeigen"), "showDetails": MessageLookupByLibrary.simpleMessage("Details anzeigen"), "showMyOrders": MessageLookupByLibrary.simpleMessage("MEINE AUFTRÄGE ANZEIGEN"), + "showingOrders": m99, "signInWithPassword": MessageLookupByLibrary.simpleMessage("Mit Kennwort anmelden"), "signInWithSeedPhrase": MessageLookupByLibrary.simpleMessage( @@ -1267,13 +1379,13 @@ class MessageLookup extends MessageLookupByLibrary { "simple": MessageLookupByLibrary.simpleMessage("Einfach"), "simpleTradeActivate": MessageLookupByLibrary.simpleMessage("Aktivieren"), - "simpleTradeBuyHint": m81, + "simpleTradeBuyHint": m100, "simpleTradeBuyTitle": MessageLookupByLibrary.simpleMessage("Kaufen"), "simpleTradeClose": MessageLookupByLibrary.simpleMessage("Schließen"), - "simpleTradeMaxActiveCoins": m82, - "simpleTradeNotActive": m83, + "simpleTradeMaxActiveCoins": m101, + "simpleTradeNotActive": m102, "simpleTradeRecieve": MessageLookupByLibrary.simpleMessage("Erhalten"), - "simpleTradeSellHint": m84, + "simpleTradeSellHint": m103, "simpleTradeSellTitle": MessageLookupByLibrary.simpleMessage("Verkaufen"), "simpleTradeSend": MessageLookupByLibrary.simpleMessage("Senden"), @@ -1281,11 +1393,11 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("Weniger anzeigen"), "simpleTradeShowMore": MessageLookupByLibrary.simpleMessage("Mehr anzeigen"), - "simpleTradeUnableActivate": m85, + "simpleTradeUnableActivate": m104, "skip": MessageLookupByLibrary.simpleMessage("Überspringen"), "snackbarDismiss": MessageLookupByLibrary.simpleMessage("Ablehnen"), - "soundCantPlayThatMsg": m86, - "soundPlayedWhen": m87, + "soundCantPlayThatMsg": m105, + "soundPlayedWhen": m106, "soundSettingsLink": MessageLookupByLibrary.simpleMessage("Sound"), "soundSettingsTitle": MessageLookupByLibrary.simpleMessage("Sound-Einstellungen"), @@ -1297,10 +1409,13 @@ class MessageLookup extends MessageLookupByLibrary { "soundsNote": MessageLookupByLibrary.simpleMessage( "Beachten Sie, dass Sie Ihre eigenen Sounds in den Anwendungseinstellungen festlegen können."), "spanishLanguage": MessageLookupByLibrary.simpleMessage("Spanisch"), + "startDate": MessageLookupByLibrary.simpleMessage("Startdatum"), + "startSwap": + MessageLookupByLibrary.simpleMessage("Starten Sie den Tausch"), "step": MessageLookupByLibrary.simpleMessage("Schritt"), "success": MessageLookupByLibrary.simpleMessage("Erfolgreich!"), "support": MessageLookupByLibrary.simpleMessage("Support"), - "supportLinksDesc": m88, + "supportLinksDesc": m107, "swap": MessageLookupByLibrary.simpleMessage("swap"), "swapCurrent": MessageLookupByLibrary.simpleMessage("Aktuell"), "swapDetailTitle": @@ -1308,9 +1423,9 @@ class MessageLookup extends MessageLookupByLibrary { "swapEstimated": MessageLookupByLibrary.simpleMessage("Schätzung"), "swapFailed": MessageLookupByLibrary.simpleMessage("Swap fehlgeschlagen"), - "swapGasActivate": m89, - "swapGasAmount": m90, - "swapGasAmountRequired": m91, + "swapGasActivate": m108, + "swapGasAmount": m109, + "swapGasAmountRequired": m110, "swapOngoing": MessageLookupByLibrary.simpleMessage("Swap läuft"), "swapProgress": MessageLookupByLibrary.simpleMessage("Fortschrittdetails"), @@ -1320,6 +1435,13 @@ class MessageLookup extends MessageLookupByLibrary { "swapTotal": MessageLookupByLibrary.simpleMessage("Gesamt"), "swapUUID": MessageLookupByLibrary.simpleMessage("Swap UUID"), "switchTheme": MessageLookupByLibrary.simpleMessage("Thema ändern"), + "syncFromDate": MessageLookupByLibrary.simpleMessage( + "Ab dem angegebenen Datum synchronisieren"), + "syncFromSaplingActivation": MessageLookupByLibrary.simpleMessage( + "Synchronisierung durch Setzlingsaktivierung"), + "syncNewTransactions": MessageLookupByLibrary.simpleMessage( + "Synchronisieren Sie neue Transaktionen"), + "syncTransactionsQuestion": m111, "tagAVX20": MessageLookupByLibrary.simpleMessage("AVX20"), "tagBEP20": MessageLookupByLibrary.simpleMessage("BEP20"), "tagERC20": MessageLookupByLibrary.simpleMessage("ERC20"), @@ -1334,6 +1456,7 @@ class MessageLookup extends MessageLookupByLibrary { "tagQRC20": MessageLookupByLibrary.simpleMessage("QRC20"), "tagSBCH": MessageLookupByLibrary.simpleMessage("SBCH"), "tagUBQ": MessageLookupByLibrary.simpleMessage("UBQ"), + "tagZHTLC": MessageLookupByLibrary.simpleMessage("ZHTLC"), "takerOrder": MessageLookupByLibrary.simpleMessage("Taker-Auftrag"), "timeOut": MessageLookupByLibrary.simpleMessage("Zeitüberschreitung"), "titleCreatePassword": @@ -1359,6 +1482,12 @@ class MessageLookup extends MessageLookupByLibrary { "Handelsgebühren konnten nicht berechnet werden"), "tradingFee": MessageLookupByLibrary.simpleMessage("Handelsgebühr:"), "tradingMode": MessageLookupByLibrary.simpleMessage("Handelsart:"), + "transactionAddress": + MessageLookupByLibrary.simpleMessage("Transaktionsadresse"), + "transactionHidden": + MessageLookupByLibrary.simpleMessage("Transaktion ausgeblendet"), + "transactionHiddenPhishing": MessageLookupByLibrary.simpleMessage( + "Diese Transaktion wurde aufgrund eines möglichen Phishing-Versuchs ausgeblendet."), "tryRestarting": MessageLookupByLibrary.simpleMessage( "Wenn auch dann noch einige Coins nicht aktiviert sind, versuchen Sie, die App neu zu starten."), "turkishLanguage": MessageLookupByLibrary.simpleMessage("Türkisch"), @@ -1373,26 +1502,26 @@ class MessageLookup extends MessageLookupByLibrary { "txLimitExceeded": MessageLookupByLibrary.simpleMessage( "Zu viele Anfragen.\nDas Limit für Anfragen zur Transaktionshistorie wurde überschritten.\nBitte versuchen Sie es später noch einmal."), "txNotConfirmed": MessageLookupByLibrary.simpleMessage("UNBESTÄTIGT"), - "txleft": m92, + "txleft": m112, "ukrainianLanguage": MessageLookupByLibrary.simpleMessage("Ukrainisch"), "unlock": MessageLookupByLibrary.simpleMessage("Freischalten"), "unlockFunds": MessageLookupByLibrary.simpleMessage("Geldmittel freischalten"), - "unlockSuccess": m93, + "unlockSuccess": m113, "unspendable": MessageLookupByLibrary.simpleMessage("Nicht verwendbar"), "updatesAvailable": MessageLookupByLibrary.simpleMessage("Neue Version verfügbar"), "updatesChecking": MessageLookupByLibrary.simpleMessage("Nach Updates suchen..."), - "updatesCurrentVersion": m94, + "updatesCurrentVersion": m114, "updatesNotifAvailable": MessageLookupByLibrary.simpleMessage( "Neue Version verfügbar. Bitte updaten."), - "updatesNotifAvailableVersion": m95, + "updatesNotifAvailableVersion": m115, "updatesNotifTitle": MessageLookupByLibrary.simpleMessage("Update verfügbar"), "updatesSkip": MessageLookupByLibrary.simpleMessage("Vorerst überspringen"), - "updatesTitle": m96, + "updatesTitle": m116, "updatesUpToDate": MessageLookupByLibrary.simpleMessage( "Bereits auf dem neuesten Stand"), "updatesUpdate": MessageLookupByLibrary.simpleMessage("Update"), @@ -1418,23 +1547,25 @@ class MessageLookup extends MessageLookupByLibrary { "warningOkBtn": MessageLookupByLibrary.simpleMessage("Ok"), "warningShareLogs": MessageLookupByLibrary.simpleMessage( "Achtung - in besonderen Fällen enthalten diese Protokolldaten sensible Informationen, die dazu verwendet werden können, Coins aus fehlgeschlagenen Swaps auszugeben!"), - "weFailedTo": m97, - "weFailedToActivate": m98, - "welcomeInfo": m99, + "weFailedTo": m117, + "weFailedToActivate": m118, + "welcomeInfo": m119, "welcomeLetSetUp": MessageLookupByLibrary.simpleMessage("AUF GEHT\'S!"), "welcomeTitle": MessageLookupByLibrary.simpleMessage("WILLKOMMEN"), "welcomeWallet": MessageLookupByLibrary.simpleMessage("Wallet"), "willBeRedirected": MessageLookupByLibrary.simpleMessage( "Nach Fertigstellung werden Sie zur Portfolio-Seite weitergeleitet."), + "willTakeTime": MessageLookupByLibrary.simpleMessage( + "Dies dauert eine Weile und die App muss im Vordergrund bleiben.\nDas Beenden der App während der Aktivierung kann zu Problemen führen."), "withdraw": MessageLookupByLibrary.simpleMessage("Auszahlung"), - "withdrawCameraAccessText": m100, + "withdrawCameraAccessText": m120, "withdrawCameraAccessTitle": MessageLookupByLibrary.simpleMessage("Zugriff verweigert"), "withdrawConfirm": MessageLookupByLibrary.simpleMessage("Auszahlung bestätigen"), "withdrawConfirmError": MessageLookupByLibrary.simpleMessage( "Es ist ein Fehler aufgetreten. Bitte versuchen Sie es später noch einmal."), - "withdrawValue": m101, + "withdrawValue": m121, "wrongCoinSpan1": MessageLookupByLibrary.simpleMessage( "Sie versuchen, einen QR-Code für eine Zahlung zu scannen"), "wrongCoinSpan2": @@ -1455,7 +1586,7 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage( "Sie haben einen Auftrag, dem neue Aufträge zugeordnet werden können"), "youAreSending": MessageLookupByLibrary.simpleMessage("Sie senden:"), - "youWillReceiveClaim": m102, + "youWillReceiveClaim": m122, "youWillReceived": MessageLookupByLibrary.simpleMessage("Sie erhalten:"), "yourWallet": MessageLookupByLibrary.simpleMessage("Ihr Wallet") diff --git a/lib/l10n/messages_es.dart b/lib/l10n/messages_es.dart index fcca4ed2c..f51bb19ef 100644 --- a/lib/l10n/messages_es.dart +++ b/lib/l10n/messages_es.dart @@ -19,255 +19,285 @@ typedef String MessageIfAbsent(String messageStr, List args); class MessageLookup extends MessageLookupByLibrary { String get localeName => 'es'; - static m0(name) => "¡Activado ${name} con éxito!"; + static m0(protocolName) => "¿Activar monedas ${protocolName}?"; - static m1(title) => "Solo mostrar contactos con direcciones ${title}"; + static m1(coinName) => "Activando ${coinName}"; - static m2(abbr) => + static m2(coinName) => "Activación de ${coinName}"; + + static m3(protocolName) => "${protocolName} Activación en curso"; + + static m4(name) => "¡Activado ${name} con éxito!"; + + static m5(title) => "Solo mostrar contactos con direcciones ${title}"; + + static m6(abbr) => "No puede enviar fondos a la dirección ${abbr} porque ${abbr} no está activado. Por favor, vaya a la cartera."; - static m3(appName) => + static m7(appName) => "¡No! ${appName} no tiene custodia. Nunca almacenamos datos confidenciales, incluidas sus claves privadas, frases iniciales o PIN. Estos datos solo se almacenan en el dispositivo del usuario y nunca lo abandonan. Usted tiene el control total de sus activos."; - static m4(appName) => - "${appName} está disponible para dispositivos móviles en Android y iPhone, y para computadoras de escritorio en los sistemas operativos Windows, Mac y Linux."; + static m8(appName) => + "${appName} está disponible para dispositivos móviles en Android y iPhone, y para computadoras de escritorio en sistemas operativos Windows, Mac y Linux."; - static m5(appName) => + static m9(appName) => "Por lo general, otros DEX solo le permiten intercambiar monedas digitales que se basan en una sola red blockchain y solo permiten realizar un solo pedido con los mismos fondos.\n\n${appName} le permite intercambiar de forma nativa en blockchains diferentes. También puede realizar varios pedidos con los mismos fondos. Por ejemplo, puede vender 0.1 BTC por KMD, QTUM o VRSC: el primer pedido que se ejecuta automáticamente cancela todos los demás pedidos."; - static m6(appName) => + static m10(appName) => "Varios factores determinan el tiempo de procesamiento de cada intercambio. El tiempo de procesar una transacción depende de cada red (Bitcoin suele ser la más lenta). Además, el usuario puede personalizar las preferencias de seguridad. Por ejemplo, puede pedirle a ${appName} que considere una transacción KMD procesada despues de solo 3 confirmaciones, lo que hace que el tiempo de intercambio sea más corto en comparación con la espera de una notarization."; - static m7(appName) => + static m11(appName) => "Hay dos categorías de tarifas a tener en cuenta al intercambiar en ${appName}.\n\n1. ${appName} cobra aproximadamente un 0,13 % (1/777 del volumen de la transacción, pero no menos de 0,0001) como tarifa de transacción para las órdenes del comprador, y las órdenes del vendedor no tienen tarifas.\n\n2. Tanto los vendedores como los compradores deberán pagar tarifas de red normales a las blockchains involucradas al realizar transacciones de intercambio atómico.\n\nLas tarifas de red pueden variar mucho según el par de monedas seleccionadas."; - static m8(name, link, appName, appCompanyShort) => + static m12(name, link, appName, appCompanyShort) => "¡Sí! ${appName} ofrece soporte a través de ${appCompanyShort} ${name}. ¡El equipo y la comunidad siempre están dispuestos a ayudar!"; - static m9(appName) => + static m13(appName) => "¡No! ${appName} es completamente descentralizado. No es posible limitar el acceso de los usuarios por parte de ningún tercero."; - static m10(appName, appCompanyShort) => + static m14(appName, appCompanyShort) => "${appName} está desarrollado por el equipo de ${appCompanyShort}. ${appCompanyShort} es uno de los proyectos de blockchain más consolidados que trabaja en soluciones innovadoras como intercambios decentralizados, seguridad de blockchains y una arquitectura multicadena interoperable."; - static m11(appName) => - "¡Absolutamente! Puede leer nuestra documentación para desarrolladores para obtener más detalles o comunicarse con nosotros si tiene alguna consulta sobre su asociación. ¿Tiene una pregunta técnica específica? ¡La comunidad de desarrolladores de ${appName} siempre está lista para ayudar!"; + static m15(appName) => + "¡Absolutamente! Puede leer nuestra documentación para desarrolladores para obtener más detalles o contactarnos con sus consultas sobre asociaciones. ¿Tiene una pregunta técnica específica? ¡La comunidad de desarrolladores de ${appName} siempre está lista para ayudar!"; + + static m16(coinName1, coinName2) => "basado en ${coinName1}/${coinName2}"; - static m12(batteryLevelCritical) => + static m17(batteryLevelCritical) => "La carga de su batería es crítica (${batteryLevelCritical}%) para realizar un intercambio de manera segura. Póngalo a cargar y vuelva a intentarlo."; - static m13(batteryLevelLow) => + static m18(batteryLevelLow) => "La carga de la batería es inferior al ${batteryLevelLow}%. Considere la posibilidad de cargar el teléfono."; - static m14(seconde) => "Ordermatch en curso, ¡espere ${seconde} segundos!"; + static m19(seconde) => "Ordermatch en curso, ¡espere ${seconde} segundos!"; + + static m20(index) => "Introduzca la palabra ${index} "; + + static m21(index) => "¿Cuál es la palabra ${index} en su frase inicial?"; + + static m22(coin) => "activación de ${coin} cancelada"; - static m15(index) => "Introduzca la palabra ${index} "; + static m24(protocolName) => "Las monedas ${protocolName} están activadas"; - static m16(index) => "¿Cuál es la palabra ${index} en su frase inicial?"; + static m25(protocolName) => "${protocolName} monedas activadas con éxito"; - static m17(name) => "¿Está seguro de que desea eliminar el contacto ${name}?"; + static m26(protocolName) => "Las monedas ${protocolName} no están activadas"; - static m18(iUnderstand) => + static m27(name) => "¿Está seguro de que desea eliminar el contacto ${name}?"; + + static m28(iUnderstand) => "Las frases semilla personalizadas pueden ser menos seguras y más fáciles de descifrar que una frase semilla o clave privada (WIF) compatible con BIP39 generada. Para confirmar que comprende el riesgo y sabe lo que está haciendo, escriba \"${iUnderstand}\" en el cuadro a continuación."; - static m19(abbr) => "Introduzca la dirección ${abbr} "; + static m29(coinName) => "recibir tarifa de transacción de ${coinName}"; + + static m30(coinName) => "enviar tarifa de transacción de ${coinName}"; - static m21(gas) => "No hay suficiente gas: usa al menos ${gas} Gwei"; + static m31(abbr) => "Introduzca la dirección ${abbr} "; - static m22(appName, appCompanyLong) => + static m33(gas) => "No hay suficiente gas: usa al menos ${gas} Gwei"; + + static m34(appName, appCompanyLong) => "This End-User License Agreement (\'EULA\') is a legal agreement between you and ${appCompanyLong}.\n\nThis EULA agreement governs your acquisition and use of our ${appName} mobile software (\'Software\', \'Mobile Application\', \'Application\' or \'App\') directly from ${appCompanyLong} or indirectly through a ${appCompanyLong} authorized entity, reseller or distributor (a \'Distributor\').\nPlease read this EULA agreement carefully before completing the installation process and using the ${appName} mobile software. It provides a license to use the ${appName} mobile software and contains warranty information and liability disclaimers.\nIf you register for the beta program of the ${appName} mobile software, this EULA agreement will also govern that trial. By clicking \'accept\' or installing and/or using the ${appName} mobile software, you are confirming your acceptance of the Software and agreeing to become bound by the terms of this EULA agreement.\nIf you are entering into this EULA agreement on behalf of a company or other legal entity, you represent that you have the authority to bind such entity and its affiliates to these terms and conditions. If you do not have such authority or if you do not agree with the terms and conditions of this EULA agreement, do not install or use the Software, and you must not accept this EULA agreement.\nThis EULA agreement shall apply only to the Software supplied by ${appCompanyLong} herewith regardless of whether other software is referred to or described herein. The terms also apply to any ${appCompanyLong} updates, supplements, Internet-based services, and support services for the Software, unless other terms accompany those items on delivery. If so, those terms apply.\n\nLICENSE GRANT\n\n${appCompanyLong} hereby grants you a personal, non-transferable, non-exclusive license to use the ${appName} mobile software on your devices in accordance with the terms of this EULA agreement.\n\nYou are permitted to load the ${appName} mobile software (for example a PC, laptop, mobile or tablet) under your control. You are responsible for ensuring your device meets the minimum security and resource requirements of the ${appName} mobile software.\n\nYou are not permitted to:\n(a) edit, alter, modify, adapt, translate or otherwise change the whole or any part of the Software nor permit the whole or any part of the Software to be combined with or become incorporated in any other software, nor decompile, disassemble or reverse engineer the Software or attempt to do any such things;\n(b) reproduce, copy, distribute, resell or otherwise use the Software for any commercial purpose;\n(c) use the Software in any way which breaches any applicable local, national or international law;\n(d) use the Software for any purpose that ${appCompanyLong} considers is a breach of this EULA agreement.\n\nINTELLECTUAL PROPERTY AND OWNERSHIP\n\n${appCompanyLong} shall at all times retain ownership of the Software as originally downloaded by you and all subsequent downloads of the Software by you. The Software (and the copyright, and other intellectual property rights of whatever nature in the Software, including any modifications made thereto) are and shall remain the property of ${appCompanyLong}.\n\n${appCompanyLong} reserves the right to grant licenses to use the Software to third parties.\n\nTERMINATION\n\nThis EULA agreement is effective from the date you first use the Software and shall continue until terminated. You may terminate it at any time upon written notice to ${appCompanyLong}.\nIt will also terminate immediately if you fail to comply with any term of this EULA agreement. Upon such termination, the licenses granted by this EULA agreement will immediately terminate and you agree to stop all access and use of the Software. The provisions that by their nature continue and survive will survive any termination of this EULA agreement.\n\nGOVERNING LAW\n\nThis EULA agreement, and any dispute arising out of or in connection with this EULA agreement, shall be governed by and construed in accordance with the laws of Vietnam.\n\nThis document was last updated on January 31st, 2020"; - static m23(appCompanyLong) => + static m35(appCompanyLong) => "${appCompanyLong} is the owner and/or authorised user of all trademarks, service marks, design marks, patents, copyrights, database rights and all other intellectual property appearing on or contained within the application, unless otherwise indicated. All information, text, material, graphics, software and advertisements on the application interface are copyright of ${appCompanyLong}, its suppliers and licensors, unless otherwise expressly indicated by ${appCompanyLong}. \nExcept as provided in the Terms, use of the application does not grant You any right, title, interest or license to any such intellectual property You may have access to on the application. \nWe own the rights, or have permission to use, the trademarks listed in our application. You are not authorised to use any of those trademarks without our written authorization – doing so would constitute a breach of our or another party’s intellectual property rights. \nAlternatively, we might authorise You to use the content in our application if You previously contact us and we agree in writing."; - static m24(appCompanyShort, appCompanyLong) => + static m36(appCompanyShort, appCompanyLong) => "${appCompanyLong} cannot guarantee the safety or security of your computer systems. We do not accept liability for any loss or corruption of electronically stored data or any damage to any computer system occurred in connection with the use of the application or of the user content.\n${appCompanyLong} makes no representation or warranty of any kind, express or implied, as to the operation of the application or the user content. You expressly agree that your use of the application is entirely at your sole risk.\nYou agree that the content provided in the application and the user content do not constitute financial product, legal or taxation advice, and You agree on not representing the user content or the application as such.\nTo the extent permitted by current legislation, the application is provided on an “as is, as available” basis.\n\n${appCompanyLong} expressly disclaims all responsibility for any loss, injury, claim, liability, or damage, or any indirect, incidental, special or consequential damages or loss of profits whatsoever resulting from, arising out of or in any way related to:\n(a) any errors in or omissions of the application and/or the user content, including but not limited to technical inaccuracies and typographical errors;\n(b) any third party website, application or content directly or indirectly accessed through links in the application, including but not limited to any errors or omissions;\n(c) the unavailability of the application or any portion of it;\n(d) your use of the application;\n(e) your use of any equipment or software in connection with the application.\n\nAny Services offered in connection with the Platform are provided on an \'as is\' basis, without any representation or warranty, whether express, implied or statutory. To the maximum extent permitted by applicable law, we specifically disclaim any implied warranties of title, merchantability, suitability for a particular purpose and/or non-infringement. We do not make any representations or warranties that use of the Platform will be continuous, uninterrupted, timely, or error-free.\nWe make no warranty that any Platform will be free from viruses, malware, or other related harmful material and that your ability to access any Platform will be uninterrupted. Any defects or malfunction in the product should be directed to the third party offering the Platform, not to ${appCompanyShort}.\nWe will not be responsible or liable to You for any loss of any kind, from action taken, or taken in reliance on the material or information contained in or through the Platform.\nThis is experimental and unfinished software. Use at your own risk. No warranty for any kind of damage. By using this application you agree to this terms and conditions."; - static m25(appCompanyLong) => + static m37(appCompanyLong) => "You agree and understand that there are risks associated with utilizing Services involving Virtual Currencies including, but not limited to, the risk of failure of hardware, software and internet connections, the risk of malicious software introduction, and the risk that third parties may obtain unauthorized access to information stored within your Wallet, including but not limited to your public and private keys. You agree and understand that ${appCompanyLong} will not be responsible for any communication failures, disruptions, errors, distortions or delays You may experience when using the Services, however caused.\nYou accept and acknowledge that there are risks associated with utilizing any virtual currency network, including, but not limited to, the risk of unknown vulnerabilities in or unanticipated changes to the network protocol. You acknowledge and accept that ${appCompanyLong} has no control over any cryptocurrency network and will not be responsible for any harm occurring as a result of such risks, including, but not limited to, the inability to reverse a transaction, and any losses in connection therewith due to erroneous or fraudulent actions.\nThe risk of loss in using Services involving Virtual Currencies may be substantial and losses may occur over a short period of time. In addition, price and liquidity are subject to significant fluctuations that may be unpredictable.\nVirtual Currencies are not legal tender and are not backed by any sovereign government. In addition, the legislative and regulatory landscape around Virtual Currencies is constantly changing and may affect your ability to use, transfer, or exchange Virtual Currencies.\nCFDs are complex instruments and come with a high risk of losing money rapidly due to leverage. 80.6% of retail investor accounts lose money when trading CFDs with this provider. You should consider whether You understand how CFDs work and whether You can afford to take the high risk of losing your money."; - static m26(appCompanyLong) => + static m38(appCompanyLong) => "You agree to indemnify, defend and hold harmless ${appCompanyLong}, its officers, directors, employees, agents, licensors, suppliers and any third party information providers to the application from and against all losses, expenses, damages and costs, including reasonable lawyer fees, resulting from any violation of the Terms by You.\nYou also agree to indemnify ${appCompanyLong} against any claims that information or material which You have submitted to ${appCompanyLong} is in violation of any law or in breach of any third party rights (including, but not limited to, claims in respect of defamation, invasion of privacy, breach of confidence, infringement of copyright or infringement of any other intellectual property right)."; - static m27(appCompanyLong) => + static m39(appCompanyLong) => "In order to be completed, any Virtual Currency transaction created with the ${appCompanyLong} must be confirmed and recorded in the Virtual Currency ledger associated with the relevant Virtual Currency network. Such networks are decentralized, peer-to-peer networks supported by independent third parties, which are not owned, controlled or operated by ${appCompanyLong}.\n${appCompanyLong} has no control over any Virtual Currency network and therefore cannot and does not ensure that any transaction details You submit via our Services will be confirmed on the relevant Virtual Currency network. You agree and understand that the transaction details You submit via our Services may not be completed, or may be substantially delayed, by the Virtual Currency network used to process the transaction. We do not guarantee that the Wallet can transfer title or right in any Virtual Currency or make any warranties whatsoever with regard to title.\nOnce transaction details have been submitted to a Virtual Currency network, we cannot assist You to cancel or otherwise modify your transaction or transaction details. ${appCompanyLong} has no control over any Virtual Currency network and does not have the ability to facilitate any cancellation or modification requests.\nIn the event of a Fork, ${appCompanyLong} may not be able to support activity related to your Virtual Currency. You agree and understand that, in the event of a Fork, the transactions may not be completed, completed partially, incorrectly completed, or substantially delayed. ${appCompanyLong} is not responsible for any loss incurred by You caused in whole or in part, directly or indirectly, by a Fork.\nIn no event shall ${appCompanyLong}, its affiliates and service providers, or any of their respective officers, directors, agents, employees or representatives, be liable for any lost profits or any special, incidental, indirect, intangible, or consequential damages, whether based on contract, tort, negligence, strict liability, or otherwise, arising out of or in connection with authorized or unauthorized use of the services, or this agreement, even if an authorized representative of ${appCompanyLong} has been advised of, has known of, or should have known of the possibility of such damages. \nFor example (and without limiting the scope of the preceding sentence), You may not recover for lost profits, lost business opportunities, or other types of special, incidental, indirect, intangible, or consequential damages. Some jurisdictions do not allow the exclusion or limitation of incidental or consequential damages, so the above limitation may not apply to You. \nWe will not be responsible or liable to You for any loss and take no responsibility for damages or claims arising in whole or in part, directly or indirectly from: \n(a) user error such as forgotten passwords, incorrectly constructed transactions, or mistyped Virtual Currency addresses; \n(b) server failure or data loss; \n(c) corrupted or otherwise non-performing Wallets or Wallet files; \n(d) unauthorized access to applications; \n(e) any unauthorized activities, including without limitation the use of hacking, viruses, phishing, brute forcing or other means of attack against the Services."; - static m28(appCompanyShort, appCompanyLong) => + static m40(appCompanyShort, appCompanyLong) => "For the avoidance of doubt, ${appCompanyLong} does not provide investment, tax or legal advice, nor does ${appCompanyLong} broker trades on your behalf. All ${appCompanyLong} trades are executed automatically, based on the parameters of your order instructions and in accordance with posted Trade execution procedures, and You are solely responsible for determining whether any investment, investment strategy or related transaction is appropriate for You based on your personal investment objectives, financial circumstances and risk tolerance. You should consult your legal or tax professional regarding your specific situation. Neither ${appCompanyShort} nor its owners, members, officers, directors, partners, consultants, nor anyone involved in the publication of this application, is a registered investment adviser or broker-dealer or associated person with a registered investment adviser or broker-dealer and none of the foregoing make any recommendation that the purchase or sale of crypto-assets or securities of any company profiled in the mobile Application is suitable or advisable for any person or that an investment or transaction in such crypto-assets or securities will be profitable. The information contained in the mobile Application is not intended to be, and shall not constitute, an offer to sell or the solicitation of any offer to buy any crypto-asset or security. The information presented in the mobile Application is provided for informational purposes only and is not to be treated as advice or a recommendation to make any specific investment or transaction. Please, consult with a qualified professional before making any decisions. The opinions and analysis included in this applications are based on information from sources deemed to be reliable and are provided “as is” in good faith. ${appCompanyShort} makes no representation or warranty, expressed, implied, or statutory, as to the accuracy or completeness of such information, which may be subject to change without notice. ${appCompanyShort} shall not be liable for any errors or any actions taken in relation to the above. Statements of opinion and belief are those of the authors and/or editors who contribute to this application, and are based solely upon the information possessed by such authors and/or editors. No inference should be drawn that ${appCompanyShort} or such authors or editors have any special or greater knowledge about the crypto-assets or companies profiled or any particular expertise in the industries or markets in which the profiled crypto-assets and companies operate and compete. Information on this application is obtained from sources deemed to be reliable; however, ${appCompanyShort} takes no responsibility for verifying the accuracy of such information and makes no representation that such information is accurate or complete. Certain statements included in this application may be forward-looking statements based on current expectations. ${appCompanyShort} makes no representation and provides no assurance or guarantee that such forward-looking statements will prove to be accurate. Persons using the ${appCompanyShort} application are urged to consult with a qualified professional with respect to an investment or transaction in any crypto-asset or company profiled herein. Additionally, persons using this application expressly represent that the content in this application is not and will not be a consideration in such persons’ investment or transaction decisions. Traders should verify independently information provided in the ${appCompanyShort} application by completing their own due diligence on any crypto-asset or company in which they are contemplating an investment or transaction of any kind and review a complete information package on that crypto-asset or company, which should include, but not be limited to, related blog updates and press releases. Past performance of profiled crypto-assets and securities is not indicative of future results. Crypto-assets and companies profiled on this site may lack an active trading market and invest in a crypto-asset or security that lacks an active trading market or trade on certain media, platforms and markets are deemed highly speculative and carry a high degree of risk. Anyone holding such crypto-assets and securities should be financially able and prepared to bear the risk of loss and the actual loss of his or her entire trade. The information in this application is not designed to be used as a basis for an investment decision. Persons using the ${appCompanyShort} application should confirm to their own satisfaction the veracity of any information prior to entering into any investment or making any transaction. The decision to buy or sell any crypto-asset or security that may be featured by ${appCompanyShort} is done purely and entirely at the reader’s own risk. As a reader and user of this application, You agree that under no circumstances will You seek to hold liable owners, members, officers, directors, partners, consultants or other persons involved in the publication of this application for any losses incurred by the use of information contained in this application ${appCompanyShort} and its contractors and affiliates may profit in the event the crypto-assets and securities increase or decrease in value. Such crypto-assets and securities may be bought or sold from time to time, even after ${appCompanyShort} has distributed positive information regarding the crypto-assets and companies. ${appCompanyShort} has no obligation to inform readers of its trading activities or the trading activities of any of its owners, members, officers, directors, contractors and affiliates and/or any companies affiliated with BC Relations’ owners, members, officers, directors, contractors and affiliates. ${appCompanyShort} and its affiliates may from time to time enter into agreements to purchase crypto-assets or securities to provide a method to reach their goals."; - static m29(appCompanyLong) => + static m41(appCompanyLong) => "The Terms are effective until terminated by ${appCompanyLong}. \nIn the event of termination, You are no longer authorized to access the Application, but all restrictions imposed on You and the disclaimers and limitations of liability set out in the Terms will survive termination. \nSuch termination shall not affect any legal right that may have accrued to ${appCompanyLong} against You up to the date of termination. \n${appCompanyLong} may also remove the Application as a whole or any sections or features of the Application at any time. "; - static m30(appCompanyLong) => + static m42(appCompanyLong) => "The provisions of previous paragraphs are for the benefit of ${appCompanyLong} and its officers, directors, employees, agents, licensors, suppliers, and any third party information providers to the Application. Each of these individuals or entities shall have the right to assert and enforce those provisions directly against You on its own behalf."; - static m31(appName, appCompanyLong) => + static m43(appName, appCompanyLong) => "${appName} mobile is a non-custodial, decentralized and blockchain based application and as such does ${appCompanyLong} never store any user-data (accounts and authentication data). \nWe also collect and process non-personal, anonymized data for statistical purposes and analysis and to help us provide a better service.\n\nThis document was last updated on January 31st, 2020"; - static m32(appName, appCompanyLong) => + static m44(appName, appCompanyLong) => "This disclaimer applies to the contents and services of the app ${appName} and is valid for all users of the “Application” (\'Software\', “Mobile Application”, “Application” or “App”).\n\nThe Application is owned by ${appCompanyLong}.\n\nWe reserve the right to amend the following Terms and Conditions (governing the use of the application “${appName} mobile”) at any time without prior notice and at our sole discretion. It is your responsibility to periodically check this Terms and Conditions for any updates to these Terms, which shall come into force once published.\nYour continued use of the application shall be deemed as acceptance of the following Terms.\nWe are a company incorporated in Vietnam and these Terms and Conditions are governed by and subject to the laws of Vietnam.\nIf You do not agree with these Terms and Conditions, You must not use or access this software."; - static m33(appName) => + static m45(appName) => "You are not allowed to decompile, decode, disassemble, rent, lease, loan, sell, sublicense, or create derivative works from the ${appName} mobile application or the user content. Nor are You allowed to use any network monitoring or detection software to determine the software architecture, or extract information about usage or individuals’ or users’ identities.\nYou are not allowed to copy, modify, reproduce, republish, distribute, display, or transmit for commercial, non-profit or public purposes all or any portion of the application or the user content without our prior written authorization."; - static m34(appName, appCompanyLong) => + static m46(appName, appCompanyLong) => "If you create an account in the Mobile Application, you are responsible for maintaining the security of your account and you are fully responsible for all activities that occur under the account and any other actions taken in connection with it. We will not be liable for any acts or omissions by you, including any damages of any kind incurred as a result of such acts or omissions. \n\n${appName} mobile is a non-custodial wallet implementation and thus ${appCompanyLong} can not access nor restore your account in case of (data) loss."; - static m35(appName) => + static m47(appName) => "End-User License Agreement (EULA) of ${appName} mobile:"; - static m36(coin) => "Enviando solicitud a la llave ${coin}..."; + static m48(coinAbbr) => "No se pudo cancelar la activación de ${coinAbbr}"; + + static m49(coin) => "Enviando solicitud a la llave ${coin}..."; + + static m50(appCompanyShort) => "${appCompanyShort} noticias"; - static m37(appCompanyShort) => "${appCompanyShort} noticias"; + static m51(value) => "Las tarifas deben ser de hasta ${value}"; - static m38(value) => "Las tarifas deben ser de hasta ${value}"; + static m52(coin) => " tarifa${coin} "; - static m39(coin) => " tarifa${coin} "; + static m53(coin) => "Activa ${coin}."; - static m40(coin) => "Activa ${coin}."; + static m55(coinName) => + "Configuración de protección de txs entrantes de ${coinName}"; - static m41(abbr) => + static m56(abbr) => " El saldo de ${abbr} no es suficiente para pagar la tarifa de negociación"; - static m42(coinAbbr) => "${coinAbbr} no está disponible :("; + static m58(coinAbbr) => "${coinAbbr} no está disponible :("; - static m43(coinName) => + static m59(coinName) => "❗¡Precaución! ¡El mercado de ${coinName} tiene un volumen de negociación de menos de \$ 10k las 24 horas!"; - static m44(coinName, number) => + static m61(coinName, number) => "La cantidad mínima para vender es ${number} ${coinName}"; - static m45(coinName, number) => + static m62(coinName, number) => "La cantidad mínima para comprar es ${number}${coinName}"; - static m46(buyCoin, buyAmount, sellCoin, sellAmount) => + static m63(buyCoin, buyAmount, sellCoin, sellAmount) => "El monto mínimo del pedido es ${buyAmount}${buyCoin}\n(${sellAmount}${sellCoin})"; - static m47(coinName, number) => + static m64(coinName, number) => "La cantidad mínima para vender es ${number}${coinName}"; - static m48(minValue, coin) => "Debe ser mayor que ${minValue} ${coin}"; + static m65(minValue, coin) => "Debe ser mayor que ${minValue} ${coin}"; - static m49(appName) => + static m66(appName) => "Tenga en cuenta que ahora está utilizando datos móviles y la participación en la red P2P de ${appName} consume tráfico de Internet. Es mejor usar una red WiFi si su plan de datos móviles es costoso."; - static m50(coin) => "Active ${coin} y añada saldo primero"; + static m67(coin) => "Active ${coin} y añada saldo primero"; - static m51(number) => "Crear ${number} pedido(s):"; + static m68(number) => "Crear ${number} pedido(s):"; - static m52(coin) => " El saldo de${coin} es demasiado bajo"; + static m69(coin) => " El saldo de${coin} es demasiado bajo"; - static m53(coin, fee) => + static m70(coin, fee) => "No hay suficientes ${coin} para pagar las tarifas. El saldo MÍN es ${fee} ${coin}"; - static m54(coinName) => "Ingrese la cantidad de ${coinName}."; + static m71(coinName) => "Ingrese la cantidad de ${coinName}."; - static m55(coin) => "¡No hay suficiente ${coin} para la transacción!"; + static m72(coin) => "¡No hay suficiente ${coin} para la transacción!"; - static m56(sell, buy) => + static m73(sell, buy) => " El intercambio de${sell}/${buy} se completó con éxito"; - static m57(sell, buy) => "${sell}/${buy} intercambio fallido"; + static m74(sell, buy) => "${sell}/${buy} intercambio fallido"; - static m58(sell, buy) => "${sell}/${buy} intercambio iniciado"; + static m75(sell, buy) => "${sell}/${buy} intercambio iniciado"; - static m59(sell, buy) => "${sell}/${buy} intercambio se agotó"; + static m76(sell, buy) => "${sell}/${buy} intercambio se agotó"; - static m60(coin) => "¡Ha recibido una transacción de ${coin}!"; + static m77(coin) => "¡Ha recibido una transacción de ${coin}!"; - static m61(assets) => "${assets} activos"; + static m78(assets) => "${assets} activos"; - static m62(coin) => "Todos los pedidos de ${coin} serán cancelados."; + static m79(coin) => "Todos los pedidos de ${coin} serán cancelados."; - static m63(delta) => "Expediente: CEX +${delta}%"; + static m80(delta) => "Expediente: CEX +${delta}%"; - static m64(delta) => "Caro: CEX ${delta}%"; + static m81(delta) => "Caro: CEX ${delta}%"; - static m65(fill) => "${fill}% llenado"; + static m82(fill) => "${fill}% llenado"; - static m66(coin) => "Cantidad (${coin})"; + static m83(coin) => "Cantidad (${coin})"; - static m67(coin) => "Precio (${coin})"; + static m84(coin) => "Precio (${coin})"; - static m68(coin) => "Total (${coin})"; + static m85(coin) => "Total (${coin})"; - static m69(abbr) => "${abbr} no está activo. Activa e inténtalo de nuevo.."; + static m86(abbr) => "${abbr} no está activo. Activa e inténtalo de nuevo.."; - static m70(appName) => "¿En qué dispositivos puedo usar ${appName}?"; + static m87(appName) => "¿En qué dispositivos puedo usar ${appName}?"; - static m71(appName) => + static m88(appName) => "¿En qué se diferencia el comercio en ${appName} del comercio en otros DEX?"; - static m72(appName) => "¿Cómo se calculan las tarifas de ${appName}?"; + static m89(appName) => "¿Cómo se calculan las tarifas de ${appName}?"; - static m73(appName) => "¿Quién está detrás de ${appName}?"; + static m90(appName) => "¿Quién está detrás de ${appName}?"; - static m74(appName) => + static m91(appName) => "¿Es posible desarrollar mi propio intercambio con ${appName}?"; - static m75(amount) => "¡Éxito! ${amount} KMD recibido."; + static m92(amount) => "¡Éxito! ${amount} KMD recibido."; + + static m93(dd) => "${dd} dias(s)"; - static m76(dd) => "${dd} dias(s)"; + static m94(hh, minutes) => "${hh}h ${minutes}m"; - static m77(hh, minutes) => "${hh}h ${minutes}m"; + static m95(mm) => "${mm}min"; - static m78(mm) => "${mm}min"; + static m96(amount) => "Haga clic para ver ${amount} pedidos"; - static m79(amount) => "Haga clic para ver ${amount} pedidos"; + static m97(coinName, address) => "Mi ${coinName} dirección:\n${address}"; - static m80(coinName, address) => "Mi ${coinName} dirección:\n${address}"; + static m99(count, maxCount) => "Mostrando ${count} de ${maxCount} pedidos."; - static m81(coin) => "Ingrese la cantidad de ${coin} para comprar"; + static m100(coin) => "Ingrese la cantidad de ${coin} para comprar"; - static m82(maxCoins) => + static m101(maxCoins) => "El número máximo de monedas activas es ${maxCoins}. Por favor, desactive algunos."; - static m83(coin) => "${coin} no está activo!"; + static m102(coin) => "${coin} no está activo!"; - static m84(coin) => "Ingrese la cantidad de ${coin} para vender"; + static m103(coin) => "Ingrese la cantidad de ${coin} para vender"; - static m85(coin) => "No se puede activar ${coin}"; + static m104(coin) => "No se puede activar ${coin}"; - static m86(description) => + static m105(description) => "Elija un archivo mp3 o wav, por favor. Lo reproduciremos cuando ${description}."; - static m87(description) => "Jugado cuando ${description}"; + static m106(description) => "Jugado cuando ${description}"; - static m88(appName) => + static m107(appName) => "Si tiene alguna pregunta o cree que ha encontrado un problema técnico con la aplicación ${appName}, puede informar y obtener asistencia de nuestro equipo."; - static m89(coin) => "Activa ${coin} y recarga el saldo primero"; + static m108(coin) => "Activa ${coin} y recarga el saldo primero"; - static m90(coin) => + static m109(coin) => "El saldo de ${coin} no es suficiente para pagar las tarifas de transacción."; - static m91(coin, amount) => + static m110(coin, amount) => " El saldo de${coin} no es suficiente para pagar las tarifas de transacción. ${coin} ${amount} obligatorio."; - static m92(left) => "Transacciones restantes: ${left}"; + static m112(left) => "Transacciones restantes: ${left}"; - static m93(amnt, hash) => "Desbloqueó con éxito ${amnt} fondos - TX: ${hash}"; + static m113(amnt, hash) => + "Desbloqueó con éxito ${amnt} fondos - TX: ${hash}"; - static m94(version) => "Estás usando la versión ${version}"; + static m114(version) => "Estás usando la versión ${version}"; - static m95(version) => "Versión ${version} disponible. Por favor actualice."; + static m115(version) => "Versión ${version} disponible. Por favor actualice."; - static m96(appName) => "${appName} actualizar"; + static m116(appName) => "${appName} actualizar"; - static m97(coinAbbr) => "No pudimos activar ${coinAbbr}"; + static m117(coinAbbr) => "No pudimos activar ${coinAbbr}"; - static m98(coinAbbr) => + static m118(coinAbbr) => "No pudimos activar ${coinAbbr}.\nReinicie la aplicación para volver a intentarlo."; - static m99(appName) => + static m119(appName) => "${appName} móvil es una billetera multimoneda de próxima generación con funcionalidad DEX nativa de tercera generación y más."; - static m100(appName) => + static m120(appName) => "Previamente le has negado a ${appName} el acceso a la cámara.\nCambia manualmente el permiso de la cámara en la configuración de tu teléfono para continuar con el escaneo del código QR."; - static m101(amount, coinName) => "RETIRAR ${amount} ${coinName}"; + static m121(amount, coinName) => "RETIRAR ${amount} ${coinName}"; - static m102(amount, coin) => "Recibirás ${amount} ${coin}"; + static m122(amount, coin) => "Recibirás ${amount} ${coin}"; final messages = _notInlinedMessages(_notInlinedMessages); static Map _notInlinedMessages(_) => { @@ -293,15 +323,21 @@ class MessageLookup extends MessageLookupByLibrary { "Activar protección biométrica"), "activateAccessPin": MessageLookupByLibrary.simpleMessage( "Activar la protección con PIN"), + "activateCoins": m0, + "activating": m1, + "activation": m2, + "activationCancelled": MessageLookupByLibrary.simpleMessage( + "Activación de monedas cancelada"), + "activationInProgress": m3, "addCoin": MessageLookupByLibrary.simpleMessage("Activar moneda"), - "addingCoinSuccess": m0, + "addingCoinSuccess": m4, "addressAdd": MessageLookupByLibrary.simpleMessage("Añadir Direccion"), "addressBook": MessageLookupByLibrary.simpleMessage("Directorio"), "addressBookEmpty": MessageLookupByLibrary.simpleMessage( "La libreta de direcciones está vacía"), - "addressBookFilter": m1, + "addressBookFilter": m5, "addressBookTitle": MessageLookupByLibrary.simpleMessage("Directorio"), - "addressCoinInactive": m2, + "addressCoinInactive": m6, "addressNotFound": MessageLookupByLibrary.simpleMessage("Nada Encontrado"), "addressSelectCoin": @@ -310,23 +346,25 @@ class MessageLookup extends MessageLookupByLibrary { "Dirección de los destinatarios"), "advanced": MessageLookupByLibrary.simpleMessage("Avanzado"), "all": MessageLookupByLibrary.simpleMessage("TODOS"), + "allPastTransactions": MessageLookupByLibrary.simpleMessage( + "Su billetera mostrará cualquier transacción pasada. Esto requerirá mucho almacenamiento y tiempo, ya que todos los bloques se descargarán y escanearán."), "allowCustomSeed": MessageLookupByLibrary.simpleMessage( "Permitir semilla personalizada"), "alreadyExists": MessageLookupByLibrary.simpleMessage("Ya existe"), "amount": MessageLookupByLibrary.simpleMessage("Cantidad"), "amountToSell": MessageLookupByLibrary.simpleMessage("Cantidad a Vender"), - "answer_1": m3, - "answer_10": m4, - "answer_2": m5, - "answer_3": m6, + "answer_1": m7, + "answer_10": m8, + "answer_2": m9, + "answer_3": m10, "answer_4": MessageLookupByLibrary.simpleMessage( "Si. Debe permanecer conectado al Internet y tener su aplicación ejecutándose para completar con éxito cada intercambio (las interrupciones muy breves en la conectividad generalmente no causan problemas). De lo contrario, existe el riesgo de cancelación de la operación y el riesgo de pérdida de fondos si es un comprador. El protocolo de intercambio atómico requiere que ambos participantes permanezcan en línea y monitoreen los blockchains involucrados para que el proceso permanezca atómico."), - "answer_5": m7, - "answer_6": m8, - "answer_7": m9, - "answer_8": m10, - "answer_9": m11, + "answer_5": m11, + "answer_6": m12, + "answer_7": m13, + "answer_8": m14, + "answer_9": m15, "areYouSure": MessageLookupByLibrary.simpleMessage("ESTAS SEGURO?"), "authenticate": MessageLookupByLibrary.simpleMessage("autenticar"), "automaticRedirected": MessageLookupByLibrary.simpleMessage( @@ -335,8 +373,9 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("volumen máximo"), "back": MessageLookupByLibrary.simpleMessage("back"), "backupTitle": MessageLookupByLibrary.simpleMessage("Respaldo"), - "batteryCriticalError": m12, - "batteryLowWarning": m13, + "basedOnCoinRatio": m16, + "batteryCriticalError": m17, + "batteryLowWarning": m18, "batterySavingWarning": MessageLookupByLibrary.simpleMessage( "Su teléfono está en modo de ahorro de batería. Deshabilite este modo o NO ponga la aplicación en segundo plano, de lo contrario, el sistema operativo podría eliminar la aplicación y fallar el intercambio."), "bestAvailableRate": @@ -350,7 +389,7 @@ class MessageLookup extends MessageLookupByLibrary { "Convertir a Vendedor si no coincide"), "buySuccessWaiting": MessageLookupByLibrary.simpleMessage( "Intercambio emitido, por favor espere!"), - "buySuccessWaitingError": m14, + "buySuccessWaitingError": m19, "buyTestCoinWarning": MessageLookupByLibrary.simpleMessage( "¡Advertencia, estás dispuesto a comprar monedas de prueba SIN valor real!"), "camoPinBioProtectionConflict": MessageLookupByLibrary.simpleMessage( @@ -382,6 +421,10 @@ class MessageLookup extends MessageLookupByLibrary { "camouflageSetup": MessageLookupByLibrary.simpleMessage( "Configuración de PIN de camuflaje"), "cancel": MessageLookupByLibrary.simpleMessage("Cancelar"), + "cancelActivation": + MessageLookupByLibrary.simpleMessage("Cancelar activación"), + "cancelActivationQuestion": MessageLookupByLibrary.simpleMessage( + "¿Estás seguro de que deseas cancelar la activación?"), "cancelButton": MessageLookupByLibrary.simpleMessage("Cancelar"), "cancelOrder": MessageLookupByLibrary.simpleMessage("Cancelar orden"), "candleChartError": MessageLookupByLibrary.simpleMessage( @@ -397,6 +440,7 @@ class MessageLookup extends MessageLookupByLibrary { "cexData": MessageLookupByLibrary.simpleMessage("data de CEX"), "cexDataDesc": MessageLookupByLibrary.simpleMessage( "Los datos de mercados (precios, gráficos, etc.) marcados con este ícono provienen de fuentes de terceros (coingecko.com, openrates.io)."), + "cexRate": MessageLookupByLibrary.simpleMessage("Tasa CEX"), "changePin": MessageLookupByLibrary.simpleMessage("Cambiar código PIN"), "checkForUpdates": MessageLookupByLibrary.simpleMessage("Buscar actualizaciones"), @@ -407,10 +451,10 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("SEGUIR"), "checkSeedPhraseButton2": MessageLookupByLibrary.simpleMessage("VOLVER Y VERIFICAR DE NUEVO"), - "checkSeedPhraseHint": m15, + "checkSeedPhraseHint": m20, "checkSeedPhraseInfo": MessageLookupByLibrary.simpleMessage( "Tu frase semilla es importante, por eso nos gusta asegurarnos de que sea correcta. Le haremos tres preguntas diferentes sobre su frase semilla para asegurarnos de que podrá restaurar fácilmente su billetera cuando lo desee."), - "checkSeedPhraseSubtile": m16, + "checkSeedPhraseSubtile": m21, "checkSeedPhraseTitle": MessageLookupByLibrary.simpleMessage( "VAMOS A VERIFICAR DOS VECES TU FRASE SEMILLA"), "chineseLanguage": MessageLookupByLibrary.simpleMessage("Chino"), @@ -427,6 +471,9 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("Cerrar mensaje de error"), "closePreview": MessageLookupByLibrary.simpleMessage("Cerrar prevista"), "code": MessageLookupByLibrary.simpleMessage("Código:"), + "cofirmCancelActivation": MessageLookupByLibrary.simpleMessage( + "¿Estás seguro de que deseas cancelar la activación?"), + "coinActivationCancelled": m22, "coinSelectClear": MessageLookupByLibrary.simpleMessage("Remover"), "coinSelectNotFound": MessageLookupByLibrary.simpleMessage("No hay monedas activas"), @@ -434,6 +481,9 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("Seleccionar moneda"), "coinsActivatedLimitReached": MessageLookupByLibrary.simpleMessage( "Ha seleccionado el número máximo de activos"), + "coinsAreActivated": m24, + "coinsAreActivatedSuccessfully": m25, + "coinsAreNotActivated": m26, "comingSoon": MessageLookupByLibrary.simpleMessage("Próximamente..."), "commingsoon": MessageLookupByLibrary.simpleMessage( "Detalles de TX próximamente!"), @@ -465,7 +515,7 @@ class MessageLookup extends MessageLookupByLibrary { "contactDelete": MessageLookupByLibrary.simpleMessage("Borrar Contacto"), "contactDeleteBtn": MessageLookupByLibrary.simpleMessage("Borrar"), - "contactDeleteWarning": m17, + "contactDeleteWarning": m27, "contactDiscardBtn": MessageLookupByLibrary.simpleMessage("Descartar"), "contactEdit": MessageLookupByLibrary.simpleMessage("Editar"), "contactExit": MessageLookupByLibrary.simpleMessage("Salir"), @@ -477,7 +527,10 @@ class MessageLookup extends MessageLookupByLibrary { "contactTitle": MessageLookupByLibrary.simpleMessage("Detalles de contacto"), "contactTitleName": MessageLookupByLibrary.simpleMessage("Nombre"), + "contract": MessageLookupByLibrary.simpleMessage("Contrato"), "convert": MessageLookupByLibrary.simpleMessage("Convertir"), + "couldNotLaunchUrl": + MessageLookupByLibrary.simpleMessage("No se pudo iniciar la URL"), "couldntImportError": MessageLookupByLibrary.simpleMessage("No se pudo importar:"), "create": MessageLookupByLibrary.simpleMessage("intercambiar"), @@ -492,7 +545,7 @@ class MessageLookup extends MessageLookupByLibrary { "Costo de Transacción Personalizado"), "customFeeWarning": MessageLookupByLibrary.simpleMessage( "¡Solo use tarifas personalizadas si sabe lo que está haciendo!"), - "customSeedWarning": m18, + "customSeedWarning": m28, "dPow": MessageLookupByLibrary.simpleMessage("Seguridad de Komodo dPoW"), "date": MessageLookupByLibrary.simpleMessage("Fecha"), @@ -511,6 +564,13 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("Eliminar Billetera"), "deletingWallet": MessageLookupByLibrary.simpleMessage("Eliminando billetera..."), + "detailedFeesReceiveCoinTransactionFee": m29, + "detailedFeesSendCoinTransactionFee": m30, + "detailedFeesSendTradingFeeTransactionFee": + MessageLookupByLibrary.simpleMessage( + "enviar tarifa comercial tarifa de transacción"), + "detailedFeesTradingFee": + MessageLookupByLibrary.simpleMessage("tarifa comercial"), "details": MessageLookupByLibrary.simpleMessage("detalles"), "deutscheLanguage": MessageLookupByLibrary.simpleMessage("Alemán"), "developerTitle": MessageLookupByLibrary.simpleMessage("Desarrollador"), @@ -521,6 +581,8 @@ class MessageLookup extends MessageLookupByLibrary { "Desactivar capturas de pantalla/vista previa"), "disclaimerAndTos": MessageLookupByLibrary.simpleMessage( "Descargo de responsabilidad y condiciones de servicio"), + "doNotCloseTheAppTapForMoreInfo": MessageLookupByLibrary.simpleMessage( + "No cierres la aplicación. Toca para obtener más información..."), "done": MessageLookupByLibrary.simpleMessage("Hecho"), "dontAskAgain": MessageLookupByLibrary.simpleMessage("No vuelvas a preguntar"), @@ -528,7 +590,7 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("no quiero una contraseña"), "duration": MessageLookupByLibrary.simpleMessage("Duración"), "editContact": MessageLookupByLibrary.simpleMessage("Editar contacto"), - "emptyCoin": m19, + "emptyCoin": m31, "emptyExportPass": MessageLookupByLibrary.simpleMessage( "La contraseña de cifrado no puede estar vacía"), "emptyImportPass": MessageLookupByLibrary.simpleMessage( @@ -537,6 +599,9 @@ class MessageLookup extends MessageLookupByLibrary { "El nombre del contacto no puede estar vacío"), "emptyWallet": MessageLookupByLibrary.simpleMessage( "El nombre de la billetera no debe estar vacío"), + "enableNotificationsForActivationProgress": + MessageLookupByLibrary.simpleMessage( + "Habilite las notificaciones para recibir actualizaciones sobre el progreso de la activación."), "enableTestCoins": MessageLookupByLibrary.simpleMessage("Habilitar monedas de prueba"), "enablingTooManyAssetsSpan1": @@ -570,7 +635,7 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("No es una dirección válida"), "errorNotAValidAddressSegWit": MessageLookupByLibrary.simpleMessage( "Las direcciones de Segwit no son compatibles (todavía)"), - "errorNotEnoughGas": m21, + "errorNotEnoughGas": m33, "errorTryAgain": MessageLookupByLibrary.simpleMessage("Error, inténtalo de nuevo"), "errorTryLater": @@ -581,32 +646,32 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("Por favor ingrese datos"), "estimateValue": MessageLookupByLibrary.simpleMessage("Valor total estimado"), - "eulaParagraphe1": m22, - "eulaParagraphe10": m23, - "eulaParagraphe11": m24, + "eulaParagraphe1": m34, + "eulaParagraphe10": m35, + "eulaParagraphe11": m36, "eulaParagraphe12": MessageLookupByLibrary.simpleMessage( "When accessing or using the Services, You agree that You are solely responsible for your conduct while accessing and using our Services. Without limiting the generality of the foregoing, You agree that You will not:\n(a) use the Services in any manner that could interfere with, disrupt, negatively affect or inhibit other users from fully enjoying the Services, or that could damage, disable, overburden or impair the functioning of our Services in any manner;\n(b) use the Services to pay for, support or otherwise engage in any illegal activities, including, but not limited to illegal gambling, fraud, money laundering, or terrorist activities;\n(c) use any robot, spider, crawler, scraper or other automated means or interface not provided by us to access our Services or to extract data;\n(d) use or attempt to use another user’s Wallet or credentials without authorization;\n(e) attempt to circumvent any content filtering techniques we employ, or attempt to access any service or area of our Services that You are not authorized to access;\n(f) introduce to the Services any virus, Trojan, worms, logic bombs or other harmful material;\n(g) develop any third-party applications that interact with our Services without our prior written consent;\n(h) provide false, inaccurate, or misleading information; \n(i) encourage or induce any other person to engage in any of the activities prohibited under this Section."), - "eulaParagraphe13": m25, - "eulaParagraphe14": m26, - "eulaParagraphe15": m27, - "eulaParagraphe16": m28, - "eulaParagraphe17": m29, - "eulaParagraphe18": m30, - "eulaParagraphe19": m31, - "eulaParagraphe2": m32, + "eulaParagraphe13": m37, + "eulaParagraphe14": m38, + "eulaParagraphe15": m39, + "eulaParagraphe16": m40, + "eulaParagraphe17": m41, + "eulaParagraphe18": m42, + "eulaParagraphe19": m43, + "eulaParagraphe2": m44, "eulaParagraphe3": MessageLookupByLibrary.simpleMessage( "By entering into this User (each subject accessing or using the site) Agreement (this writing) You declare that You are an individual over the age of majority (at least 18 or older) and have the capacity to enter into this User Agreement and accept to be legally bound by the terms and conditions of this User Agreement, as incorporated herein and amended from time to time."), "eulaParagraphe4": MessageLookupByLibrary.simpleMessage( "We may change the terms of this User Agreement at any time. Any such changes will take effect when published in the application, or when You use the Services.\n\nRead the User Agreement carefully every time You use our Services. Your continued use of the Services shall signify your acceptance to be bound by the current User Agreement. Our failure or delay in enforcing or partially enforcing any provision of this User Agreement shall not be construed as a waiver of any."), - "eulaParagraphe5": m33, - "eulaParagraphe6": m34, + "eulaParagraphe5": m45, + "eulaParagraphe6": m46, "eulaParagraphe7": MessageLookupByLibrary.simpleMessage( "We are not responsible for seed-phrases residing in the Mobile Application. In no event shall we be held liable for any loss of any kind. It is your sole responsibility to maintain appropriate backups of your accounts and their seedprases."), "eulaParagraphe8": MessageLookupByLibrary.simpleMessage( "You should not act, or refrain from acting solely on the basis of the content of this application. \nYour access to this application does not itself create an adviser-client relationship between You and us. \nThe content of this application does not constitute a solicitation or inducement to invest in any financial products or services offered by us. \nAny advice included in this application has been prepared without taking into account your objectives, financial situation or needs. You should consider our Risk Disclosure Notice before making any decision on whether to acquire the product described in that document."), "eulaParagraphe9": MessageLookupByLibrary.simpleMessage( "We do not guarantee your continuous access to the application or that your access or use will be error-free. \nWe will not be liable in the event that the application is unavailable to You for any reason (for example, due to computer downtime ascribable to malfunctions, upgrades, server problems, precautionary or corrective maintenance activities or interruption in telecommunication supplies). "), - "eulaTitle1": m35, + "eulaTitle1": m47, "eulaTitle10": MessageLookupByLibrary.simpleMessage("ACCESS AND SECURITY"), "eulaTitle11": MessageLookupByLibrary.simpleMessage( @@ -658,19 +723,20 @@ class MessageLookup extends MessageLookupByLibrary { "exportSwapsTitle": MessageLookupByLibrary.simpleMessage("Intercambios"), "exportTitle": MessageLookupByLibrary.simpleMessage("Exportar"), + "failedToCancelActivation": m48, "fakeBalanceAmt": MessageLookupByLibrary.simpleMessage("Cantidad de saldo falso:"), "faqTitle": MessageLookupByLibrary.simpleMessage("Preguntas frecuentes"), "faucetError": MessageLookupByLibrary.simpleMessage("Error"), - "faucetInProgress": m36, + "faucetInProgress": m49, "faucetName": MessageLookupByLibrary.simpleMessage("GRIFO"), "faucetSuccess": MessageLookupByLibrary.simpleMessage("Éxito"), "faucetTimedOut": MessageLookupByLibrary.simpleMessage("Tiempo de espera agotado"), "feedNewsTab": MessageLookupByLibrary.simpleMessage("Noticias"), "feedNotFound": MessageLookupByLibrary.simpleMessage("Nada aquí"), - "feedNotifTitle": m37, + "feedNotifTitle": m50, "feedReadMore": MessageLookupByLibrary.simpleMessage("Leer más..."), "feedTab": MessageLookupByLibrary.simpleMessage("Informacion"), "feedTitle": MessageLookupByLibrary.simpleMessage("Noticias"), @@ -684,7 +750,7 @@ class MessageLookup extends MessageLookupByLibrary { "Fuente de noticias actualizada"), "feedback": MessageLookupByLibrary.simpleMessage( "Compartir archivo de registro"), - "feesError": m38, + "feesError": m51, "filtersAll": MessageLookupByLibrary.simpleMessage("Todo"), "filtersButton": MessageLookupByLibrary.simpleMessage("Filtro"), "filtersClearAll": @@ -703,16 +769,24 @@ class MessageLookup extends MessageLookupByLibrary { "filtersType": MessageLookupByLibrary.simpleMessage("Comprador/Vendedor"), "fingerprint": MessageLookupByLibrary.simpleMessage("Huella dactilar"), + "finishingUp": MessageLookupByLibrary.simpleMessage( + "Terminando, por favor espera."), + "foundQrCode": + MessageLookupByLibrary.simpleMessage("Código QR encontrado"), "frenchLanguage": MessageLookupByLibrary.simpleMessage("Francés"), "from": MessageLookupByLibrary.simpleMessage("Desde"), - "gasFee": m39, + "futureTransactions": MessageLookupByLibrary.simpleMessage( + "Sincronizaremos las transacciones futuras realizadas después de la activación asociada con su clave pública. Esta es la opción más rápida y ocupa la menor cantidad de almacenamiento."), + "gasFee": m52, "gasLimit": MessageLookupByLibrary.simpleMessage("Limite de Gas"), - "gasNotActive": m40, + "gasNotActive": m53, "gasPrice": MessageLookupByLibrary.simpleMessage("Precio de Gas"), "generalPinNotActive": MessageLookupByLibrary.simpleMessage( "La protección general con PIN no está activa.\nEl modo de camuflaje no estará disponible.\nActive la protección con PIN."), "getBackupPhrase": MessageLookupByLibrary.simpleMessage( "Importante: ¡Haz una copia de seguridad de tu frase inicial antes de continuar!"), + "gettingTxWait": MessageLookupByLibrary.simpleMessage( + "Obteniendo transacción, por favor espere"), "goToPorfolio": MessageLookupByLibrary.simpleMessage("Ir al portafolio"), "helpLink": MessageLookupByLibrary.simpleMessage("Ayuda"), @@ -766,6 +840,7 @@ class MessageLookup extends MessageLookupByLibrary { "importSwapJsonDecodingError": MessageLookupByLibrary.simpleMessage( "Error al decodificar el archivo json"), "importTitle": MessageLookupByLibrary.simpleMessage("Importar"), + "incomingTransactionsProtectionSettings": m55, "infoPasswordDialog": MessageLookupByLibrary.simpleMessage( "Utilice una contraseña segura y no la almacene en el mismo dispositivo"), "infoTrade1": MessageLookupByLibrary.simpleMessage( @@ -774,7 +849,7 @@ class MessageLookup extends MessageLookupByLibrary { "El intercambio puede tardar hasta 60 minutos. ¡NO cierres esta aplicación!"), "infoWalletPassword": MessageLookupByLibrary.simpleMessage( "Debe proporcionar una contraseña para el cifrado de la billetera por razones de seguridad."), - "insufficientBalanceToPay": m41, + "insufficientBalanceToPay": m56, "insufficientText": MessageLookupByLibrary.simpleMessage( "El volumen mínimo requerido por este pedido es"), "insufficientTitle": @@ -787,7 +862,7 @@ class MessageLookup extends MessageLookupByLibrary { "No se puede continuar con el intercambio"), "invalidSwapDetailsLink": MessageLookupByLibrary.simpleMessage("Detalles"), - "isUnavailable": m42, + "isUnavailable": m58, "japaneseLanguage": MessageLookupByLibrary.simpleMessage("Japonés"), "koreanLanguage": MessageLookupByLibrary.simpleMessage("Coreano"), "language": MessageLookupByLibrary.simpleMessage("Idioma"), @@ -795,7 +870,7 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("Últimas transacciones"), "legalTitle": MessageLookupByLibrary.simpleMessage("Legal"), "less": MessageLookupByLibrary.simpleMessage("menos"), - "lessThanCaution": m43, + "lessThanCaution": m59, "loading": MessageLookupByLibrary.simpleMessage("Cargando..."), "loadingOrderbook": MessageLookupByLibrary.simpleMessage( "Cargando libro de ordenes..."), @@ -868,21 +943,24 @@ class MessageLookup extends MessageLookupByLibrary { "min": MessageLookupByLibrary.simpleMessage("Min"), "minOrder": MessageLookupByLibrary.simpleMessage("Volumen mínimo de pedido:"), - "minValue": m44, - "minValueBuy": m45, - "minValueOrder": m46, - "minValueSell": m47, - "minVolumeInput": m48, + "minValue": m61, + "minValueBuy": m62, + "minValueOrder": m63, + "minValueSell": m64, + "minVolumeInput": m65, "minVolumeIsTDH": MessageLookupByLibrary.simpleMessage( "Debe ser menor que el monto de venta"), "minVolumeTitle": MessageLookupByLibrary.simpleMessage("Volumen mínimo requerido"), "minVolumeToggle": MessageLookupByLibrary.simpleMessage( "Usar volumen mínimo personalizado"), + "minimizingWillTerminate": MessageLookupByLibrary.simpleMessage( + "Advertencia: Minimizar la aplicación en iOS finalizará el proceso de activación."), "minutes": MessageLookupByLibrary.simpleMessage("m"), - "mobileDataWarning": m49, + "mobileDataWarning": m66, + "moreInfo": MessageLookupByLibrary.simpleMessage("Más información"), "moreTab": MessageLookupByLibrary.simpleMessage("Mas"), - "multiActivateGas": m50, + "multiActivateGas": m67, "multiBaseAmtPlaceholder": MessageLookupByLibrary.simpleMessage("Cantidad"), "multiBasePlaceholder": MessageLookupByLibrary.simpleMessage("Moneda"), @@ -890,7 +968,7 @@ class MessageLookup extends MessageLookupByLibrary { "multiConfirmCancel": MessageLookupByLibrary.simpleMessage("Cancelar"), "multiConfirmConfirm": MessageLookupByLibrary.simpleMessage("Confirmar"), - "multiConfirmTitle": m51, + "multiConfirmTitle": m68, "multiCreate": MessageLookupByLibrary.simpleMessage("Crear"), "multiCreateOrder": MessageLookupByLibrary.simpleMessage("Orden"), "multiCreateOrders": MessageLookupByLibrary.simpleMessage("Ordenes"), @@ -905,8 +983,8 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("Monto invalido"), "multiInvalidSellAmt": MessageLookupByLibrary.simpleMessage("Cantidad de venta no válido"), - "multiLowGas": m52, - "multiLowerThanFee": m53, + "multiLowGas": m69, + "multiLowerThanFee": m70, "multiMaxSellAmt": MessageLookupByLibrary.simpleMessage( "La cantidad máxima de venta es"), "multiMinReceiveAmt": MessageLookupByLibrary.simpleMessage( @@ -940,7 +1018,7 @@ class MessageLookup extends MessageLookupByLibrary { "No hay artículos seleccionados"), "noMatchingOrders": MessageLookupByLibrary.simpleMessage( "No se encontraron pedidos coincidentes"), - "noOrder": m54, + "noOrder": m71, "noOrderAvailable": MessageLookupByLibrary.simpleMessage( "Haga clic para crear un pedido"), "noOrders": MessageLookupByLibrary.simpleMessage( @@ -954,7 +1032,8 @@ class MessageLookup extends MessageLookupByLibrary { "noTxs": MessageLookupByLibrary.simpleMessage("Sin transacciones"), "nonNumericInput": MessageLookupByLibrary.simpleMessage("El valor debe ser numérico."), - "notEnoughGas": m55, + "none": MessageLookupByLibrary.simpleMessage("Ninguno"), + "notEnoughGas": m72, "notEnoughtBalanceForFee": MessageLookupByLibrary.simpleMessage( "No hay suficiente saldo para las tarifas: opere con una cantidad menor"), "noteOnOrder": MessageLookupByLibrary.simpleMessage( @@ -962,24 +1041,24 @@ class MessageLookup extends MessageLookupByLibrary { "notePlaceholder": MessageLookupByLibrary.simpleMessage("Añadir Nota"), "noteTitle": MessageLookupByLibrary.simpleMessage("Nota"), "nothingFound": MessageLookupByLibrary.simpleMessage("Nada Encontrado"), - "notifSwapCompletedText": m56, + "notifSwapCompletedText": m73, "notifSwapCompletedTitle": MessageLookupByLibrary.simpleMessage("Intercambio completado"), - "notifSwapFailedText": m57, + "notifSwapFailedText": m74, "notifSwapFailedTitle": MessageLookupByLibrary.simpleMessage("Intercambio fallido"), - "notifSwapStartedText": m58, + "notifSwapStartedText": m75, "notifSwapStartedTitle": MessageLookupByLibrary.simpleMessage("Nuevo intercambio iniciado"), "notifSwapStatusTitle": MessageLookupByLibrary.simpleMessage("Cambio de estado cambiado"), - "notifSwapTimeoutText": m59, + "notifSwapTimeoutText": m76, "notifSwapTimeoutTitle": MessageLookupByLibrary.simpleMessage( "Se agotó el tiempo de intercambio"), - "notifTxText": m60, + "notifTxText": m77, "notifTxTitle": MessageLookupByLibrary.simpleMessage("Transaccion entrante"), - "numberAssets": m61, + "numberAssets": m78, "officialPressRelease": MessageLookupByLibrary.simpleMessage( "comunicado de prensa oficial"), "okButton": MessageLookupByLibrary.simpleMessage("Ok"), @@ -989,15 +1068,17 @@ class MessageLookup extends MessageLookupByLibrary { "oldLogsUsed": MessageLookupByLibrary.simpleMessage("Espacio usado"), "openMessage": MessageLookupByLibrary.simpleMessage("Abrir mensaje de error"), - "orderCancel": m62, + "orderBookLess": MessageLookupByLibrary.simpleMessage("Menos"), + "orderBookMore": MessageLookupByLibrary.simpleMessage("Más"), + "orderCancel": m79, "orderCreated": MessageLookupByLibrary.simpleMessage("Pedido creado"), "orderCreatedInfo": MessageLookupByLibrary.simpleMessage("Pedido creado con éxito"), "orderDetailsAddress": MessageLookupByLibrary.simpleMessage("Direccion"), "orderDetailsCancel": MessageLookupByLibrary.simpleMessage("Cancelar"), - "orderDetailsExpedient": m63, - "orderDetailsExpensive": m64, + "orderDetailsExpedient": m80, + "orderDetailsExpensive": m81, "orderDetailsFor": MessageLookupByLibrary.simpleMessage("for"), "orderDetailsIdentical": MessageLookupByLibrary.simpleMessage("Idéntico a CEX"), @@ -1011,7 +1092,7 @@ class MessageLookup extends MessageLookupByLibrary { "Abra detalles con un solo toque y seleccione Ordenar con un toque largo"), "orderDetailsSpend": MessageLookupByLibrary.simpleMessage("Gastar"), "orderDetailsTitle": MessageLookupByLibrary.simpleMessage("Detalles"), - "orderFilled": m65, + "orderFilled": m82, "orderMatched": MessageLookupByLibrary.simpleMessage("Orden Triangulada"), "orderMatching": @@ -1022,9 +1103,9 @@ class MessageLookup extends MessageLookupByLibrary { "orders": MessageLookupByLibrary.simpleMessage("ordenes"), "ordersActive": MessageLookupByLibrary.simpleMessage("Activo"), "ordersHistory": MessageLookupByLibrary.simpleMessage("Historial"), - "ordersTableAmount": m66, - "ordersTablePrice": m67, - "ordersTableTotal": m68, + "ordersTableAmount": m83, + "ordersTablePrice": m84, + "ordersTableTotal": m85, "overwrite": MessageLookupByLibrary.simpleMessage("Sobrescribir"), "ownOrder": MessageLookupByLibrary.simpleMessage("Esta es tu propia orden!"), @@ -1035,6 +1116,8 @@ class MessageLookup extends MessageLookupByLibrary { "paidWith": MessageLookupByLibrary.simpleMessage("Pagado con"), "passwordRequirement": MessageLookupByLibrary.simpleMessage( "La contraseña debe contener al menos 12 caracteres, con una minúscula, una mayúscula y un símbolo especial."), + "pastTransactionsFromDate": MessageLookupByLibrary.simpleMessage( + "Su billetera mostrará sus transacciones pasadas realizadas después de la fecha especificada."), "paymentUriDetailsAccept": MessageLookupByLibrary.simpleMessage("Pagar"), "paymentUriDetailsAcceptQuestion": @@ -1049,8 +1132,11 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("Cancelar"), "paymentUriDetailsTitle": MessageLookupByLibrary.simpleMessage("Pago solicitado"), - "paymentUriInactiveCoin": m69, + "paymentUriInactiveCoin": m86, "placeOrder": MessageLookupByLibrary.simpleMessage("Haga su pedido"), + "pleaseAcceptAllCoinActivationRequests": + MessageLookupByLibrary.simpleMessage( + "Acepte todas las solicitudes especiales de activación de monedas o anule la selección de las monedas."), "pleaseAddCoin": MessageLookupByLibrary.simpleMessage( "Por favor agregue una moneda"), "pleaseRestart": MessageLookupByLibrary.simpleMessage( @@ -1071,21 +1157,23 @@ class MessageLookup extends MessageLookupByLibrary { "protectionCtrlWarning": MessageLookupByLibrary.simpleMessage( "Advertencia, este intercambio atómico no está protegido por dPoW."), "pubkey": MessageLookupByLibrary.simpleMessage("Llave Publica"), + "qrCodeScanner": + MessageLookupByLibrary.simpleMessage("Escáner de código QR"), "question_1": MessageLookupByLibrary.simpleMessage( "¿Guardás mis llaves privadas?"), - "question_10": m70, - "question_2": m71, + "question_10": m87, + "question_2": m88, "question_3": MessageLookupByLibrary.simpleMessage( "¿Cuánto tiempo toma cada intercambio atómico?"), "question_4": MessageLookupByLibrary.simpleMessage( "¿Necesito estar en línea durante la duración del intercambio?"), - "question_5": m72, + "question_5": m89, "question_6": MessageLookupByLibrary.simpleMessage( "¿Ofrecen soporte al usuario?"), "question_7": MessageLookupByLibrary.simpleMessage( "¿Tiene restricciones de país?"), - "question_8": m73, - "question_9": m74, + "question_8": m90, + "question_9": m91, "rebrandingAnnouncement": MessageLookupByLibrary.simpleMessage( "¡Es una nueva era! Hemos cambiado oficialmente nuestro nombre de \'AtomicDEX\' a \'Komodo Wallet\'"), "receive": MessageLookupByLibrary.simpleMessage("RECIBIR"), @@ -1125,7 +1213,7 @@ class MessageLookup extends MessageLookupByLibrary { "rewardsReadMore": MessageLookupByLibrary.simpleMessage( "Obtenga más información sobre las recompensas para usuarios activos de KMD"), "rewardsReceive": MessageLookupByLibrary.simpleMessage("Recibir"), - "rewardsSuccess": m75, + "rewardsSuccess": m92, "rewardsTableFiat": MessageLookupByLibrary.simpleMessage("Fiat"), "rewardsTableRewards": MessageLookupByLibrary.simpleMessage("Recompensas,\nKMD"), @@ -1136,9 +1224,9 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("Información de recompensas:"), "rewardsTableUXTO": MessageLookupByLibrary.simpleMessage("UTXO\ncantidad,\nKMD"), - "rewardsTimeDays": m76, - "rewardsTimeHours": m77, - "rewardsTimeMin": m78, + "rewardsTimeDays": m93, + "rewardsTimeHours": m94, + "rewardsTimeMin": m95, "rewardsTitle": MessageLookupByLibrary.simpleMessage("Información de recompensas"), "russianLanguage": MessageLookupByLibrary.simpleMessage("Ruso"), @@ -1183,13 +1271,15 @@ class MessageLookup extends MessageLookupByLibrary { "Seleccionar todos los activos de prueba"), "searchFilterSubtitleUBQ": MessageLookupByLibrary.simpleMessage( "Seleccionar todas las monedas Ubiq"), + "searchFilterSubtitleZHTLC": MessageLookupByLibrary.simpleMessage( + "Seleccione todas las monedas ZHTLC"), "searchFilterSubtitleutxo": MessageLookupByLibrary.simpleMessage( "Seleccione todas las monedas UTXO"), "searchForTicker": MessageLookupByLibrary.simpleMessage("Buscar teletipo"), "seconds": MessageLookupByLibrary.simpleMessage("s"), "security": MessageLookupByLibrary.simpleMessage("Seguridad"), - "seeOrders": m79, + "seeOrders": m96, "seeTxHistory": MessageLookupByLibrary.simpleMessage( "Ver historial de transacciones"), "seedPhrase": MessageLookupByLibrary.simpleMessage("Frase Semilla"), @@ -1205,6 +1295,8 @@ class MessageLookup extends MessageLookupByLibrary { "Seleccione la moneda que desea COMPRAR"), "selectCoinToSell": MessageLookupByLibrary.simpleMessage( "Seleccione la moneda que desea VENDER"), + "selectDate": + MessageLookupByLibrary.simpleMessage("Seleccione una fecha"), "selectFileImport": MessageLookupByLibrary.simpleMessage("Seleccione Archivo"), "selectLanguage": @@ -1232,34 +1324,37 @@ class MessageLookup extends MessageLookupByLibrary { "settingLanguageTitle": MessageLookupByLibrary.simpleMessage("Idiomas"), "settings": MessageLookupByLibrary.simpleMessage("Ajustes"), "share": MessageLookupByLibrary.simpleMessage("Compartir"), - "shareAddress": m80, + "shareAddress": m97, + "showAddress": + MessageLookupByLibrary.simpleMessage("Mostrar dirección"), "showDetails": MessageLookupByLibrary.simpleMessage("Mostrar detalles"), "showMyOrders": MessageLookupByLibrary.simpleMessage("Mostrar mis pedidos"), + "showingOrders": m99, "signInWithPassword": MessageLookupByLibrary.simpleMessage( "Iniciar sesión con contraseña"), "signInWithSeedPhrase": MessageLookupByLibrary.simpleMessage( "¿Olvidó la contraseña? Restaurar billetera desde semilla"), "simple": MessageLookupByLibrary.simpleMessage("Sencillo"), "simpleTradeActivate": MessageLookupByLibrary.simpleMessage("Activar"), - "simpleTradeBuyHint": m81, + "simpleTradeBuyHint": m100, "simpleTradeBuyTitle": MessageLookupByLibrary.simpleMessage("Comprar"), "simpleTradeClose": MessageLookupByLibrary.simpleMessage("Cerrar"), - "simpleTradeMaxActiveCoins": m82, - "simpleTradeNotActive": m83, + "simpleTradeMaxActiveCoins": m101, + "simpleTradeNotActive": m102, "simpleTradeRecieve": MessageLookupByLibrary.simpleMessage("Recibir"), - "simpleTradeSellHint": m84, + "simpleTradeSellHint": m103, "simpleTradeSellTitle": MessageLookupByLibrary.simpleMessage("Vender"), "simpleTradeSend": MessageLookupByLibrary.simpleMessage("Enviar"), "simpleTradeShowLess": MessageLookupByLibrary.simpleMessage("Muestra menos"), "simpleTradeShowMore": MessageLookupByLibrary.simpleMessage("Mostrar mas"), - "simpleTradeUnableActivate": m85, + "simpleTradeUnableActivate": m104, "skip": MessageLookupByLibrary.simpleMessage("Omitir"), "snackbarDismiss": MessageLookupByLibrary.simpleMessage("Descartar"), - "soundCantPlayThatMsg": m86, - "soundPlayedWhen": m87, + "soundCantPlayThatMsg": m105, + "soundPlayedWhen": m106, "soundSettingsLink": MessageLookupByLibrary.simpleMessage("Sonido"), "soundSettingsTitle": MessageLookupByLibrary.simpleMessage("Ajustes de sonido"), @@ -1271,10 +1366,13 @@ class MessageLookup extends MessageLookupByLibrary { "soundsNote": MessageLookupByLibrary.simpleMessage( "Tenga en cuenta que puede configurar sus sonidos personalizados en la configuración de la aplicación."), "spanishLanguage": MessageLookupByLibrary.simpleMessage("Español"), + "startDate": MessageLookupByLibrary.simpleMessage("Fecha de inicio"), + "startSwap": + MessageLookupByLibrary.simpleMessage("Iniciar intercambio"), "step": MessageLookupByLibrary.simpleMessage("Paso"), "success": MessageLookupByLibrary.simpleMessage("¡Éxito!"), "support": MessageLookupByLibrary.simpleMessage("Apoyo"), - "supportLinksDesc": m88, + "supportLinksDesc": m107, "swap": MessageLookupByLibrary.simpleMessage("intercambio"), "swapCurrent": MessageLookupByLibrary.simpleMessage("Actual"), "swapDetailTitle": MessageLookupByLibrary.simpleMessage( @@ -1282,9 +1380,9 @@ class MessageLookup extends MessageLookupByLibrary { "swapEstimated": MessageLookupByLibrary.simpleMessage("Estimado"), "swapFailed": MessageLookupByLibrary.simpleMessage("Intercambio fallido"), - "swapGasActivate": m89, - "swapGasAmount": m90, - "swapGasAmountRequired": m91, + "swapGasActivate": m108, + "swapGasAmount": m109, + "swapGasAmountRequired": m110, "swapOngoing": MessageLookupByLibrary.simpleMessage("Intercambio en curso"), "swapProgress": @@ -1295,6 +1393,12 @@ class MessageLookup extends MessageLookupByLibrary { "swapTotal": MessageLookupByLibrary.simpleMessage("Total"), "swapUUID": MessageLookupByLibrary.simpleMessage("Intercambiar UUID"), "switchTheme": MessageLookupByLibrary.simpleMessage("Cambiar Tema"), + "syncFromDate": MessageLookupByLibrary.simpleMessage( + "Sincronización desde la fecha especificada"), + "syncFromSaplingActivation": MessageLookupByLibrary.simpleMessage( + "Sincronización desde la activación del retoño"), + "syncNewTransactions": MessageLookupByLibrary.simpleMessage( + "Sincronizar nuevas transacciones"), "tagAVX20": MessageLookupByLibrary.simpleMessage("AVX20"), "tagBEP20": MessageLookupByLibrary.simpleMessage("BEP20"), "tagERC20": MessageLookupByLibrary.simpleMessage("ERC20"), @@ -1309,6 +1413,7 @@ class MessageLookup extends MessageLookupByLibrary { "tagQRC20": MessageLookupByLibrary.simpleMessage("QRC20"), "tagSBCH": MessageLookupByLibrary.simpleMessage("SBCH"), "tagUBQ": MessageLookupByLibrary.simpleMessage("UBQ"), + "tagZHTLC": MessageLookupByLibrary.simpleMessage("ZHTLC"), "takerOrder": MessageLookupByLibrary.simpleMessage("Orden de Comprador"), "timeOut": MessageLookupByLibrary.simpleMessage("Se acabó el tiempo"), @@ -1338,6 +1443,12 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("tarifa de negociación:"), "tradingMode": MessageLookupByLibrary.simpleMessage("Modo de comercio:"), + "transactionAddress": + MessageLookupByLibrary.simpleMessage("Dirección de transacción"), + "transactionHidden": + MessageLookupByLibrary.simpleMessage("Transacción oculta"), + "transactionHiddenPhishing": MessageLookupByLibrary.simpleMessage( + "Esta transacción fue ocultada debido a un posible intento de phishing."), "tryRestarting": MessageLookupByLibrary.simpleMessage( "Si aún así algunas monedas aún no están activadas, intente reiniciar la aplicación."), "turkishLanguage": MessageLookupByLibrary.simpleMessage("Turco"), @@ -1352,25 +1463,25 @@ class MessageLookup extends MessageLookupByLibrary { "txLimitExceeded": MessageLookupByLibrary.simpleMessage( "Demasiadas solicitudes.\nSe excedió el límite de solicitudes del historial de transacciones.\nVuelva a intentarlo más tarde."), "txNotConfirmed": MessageLookupByLibrary.simpleMessage("INCONFIRMADO"), - "txleft": m92, + "txleft": m112, "ukrainianLanguage": MessageLookupByLibrary.simpleMessage("Ucranio"), "unlock": MessageLookupByLibrary.simpleMessage("desbloquear"), "unlockFunds": MessageLookupByLibrary.simpleMessage("Desbloquear fondos"), - "unlockSuccess": m93, + "unlockSuccess": m113, "unspendable": MessageLookupByLibrary.simpleMessage("ingastable"), "updatesAvailable": MessageLookupByLibrary.simpleMessage("Nueva versión disponible"), "updatesChecking": MessageLookupByLibrary.simpleMessage( "Comprobando actualizaciones..."), - "updatesCurrentVersion": m94, + "updatesCurrentVersion": m114, "updatesNotifAvailable": MessageLookupByLibrary.simpleMessage( "Nueva versión disponible. Por favor actualice."), - "updatesNotifAvailableVersion": m95, + "updatesNotifAvailableVersion": m115, "updatesNotifTitle": MessageLookupByLibrary.simpleMessage("Actualización disponible"), "updatesSkip": MessageLookupByLibrary.simpleMessage("Saltar por ahora"), - "updatesTitle": m96, + "updatesTitle": m116, "updatesUpToDate": MessageLookupByLibrary.simpleMessage("Ya está actualizado"), "updatesUpdate": MessageLookupByLibrary.simpleMessage("Actualizar"), @@ -1396,24 +1507,26 @@ class MessageLookup extends MessageLookupByLibrary { "warningOkBtn": MessageLookupByLibrary.simpleMessage("Ok"), "warningShareLogs": MessageLookupByLibrary.simpleMessage( "Advertencia: en casos especiales, estos datos de registro contienen información confidencial que se puede usar para gastar monedas de intercambios fallidos."), - "weFailedTo": m97, - "weFailedToActivate": m98, - "welcomeInfo": m99, + "weFailedTo": m117, + "weFailedToActivate": m118, + "welcomeInfo": m119, "welcomeLetSetUp": MessageLookupByLibrary.simpleMessage("¡VAMOS A PREPARARNOS!"), "welcomeTitle": MessageLookupByLibrary.simpleMessage("BIENVENIDO"), "welcomeWallet": MessageLookupByLibrary.simpleMessage("wallet"), "willBeRedirected": MessageLookupByLibrary.simpleMessage( "Se le redirigirá a la página del portafolio al finalizar."), + "willTakeTime": MessageLookupByLibrary.simpleMessage( + "Esto llevará un tiempo y la aplicación deberá mantenerse en primer plano.\nCerrar la aplicación mientras la activación está en curso podría generar problemas."), "withdraw": MessageLookupByLibrary.simpleMessage("Retirar"), - "withdrawCameraAccessText": m100, + "withdrawCameraAccessText": m120, "withdrawCameraAccessTitle": MessageLookupByLibrary.simpleMessage("Acceso Denegado"), "withdrawConfirm": MessageLookupByLibrary.simpleMessage("Confirmar Retiro"), "withdrawConfirmError": MessageLookupByLibrary.simpleMessage( "Algo salió mal. Vuelva a intentarlo más tarde."), - "withdrawValue": m101, + "withdrawValue": m121, "wrongCoinSpan1": MessageLookupByLibrary.simpleMessage( "Está intentando escanear un código QR de pago para"), "wrongCoinSpan2": @@ -1436,7 +1549,7 @@ class MessageLookup extends MessageLookupByLibrary { "tiene un pedido con el que pueden coincidir nuevos pedidos"), "youAreSending": MessageLookupByLibrary.simpleMessage("Usted está enviando:"), - "youWillReceiveClaim": m102, + "youWillReceiveClaim": m122, "youWillReceived": MessageLookupByLibrary.simpleMessage("Usted recibirá:"), "yourWallet": MessageLookupByLibrary.simpleMessage("Su billetera") diff --git a/lib/l10n/messages_fr.dart b/lib/l10n/messages_fr.dart index 396a9933a..5df8d2ec9 100644 --- a/lib/l10n/messages_fr.dart +++ b/lib/l10n/messages_fr.dart @@ -19,265 +19,310 @@ typedef String MessageIfAbsent(String messageStr, List args); class MessageLookup extends MessageLookupByLibrary { String get localeName => 'fr'; - static m0(name) => "${name} activé avec succès !"; + static m0(protocolName) => "Activer les pièces ${protocolName} ?"; - static m1(title) => "Seules les adresses ${title} sont affichées"; + static m1(coinName) => "Activation de ${coinName}"; - static m2(abbr) => + static m2(coinName) => "Activation de ${coinName}"; + + static m3(protocolName) => "${protocolName} Activation en cours"; + + static m4(name) => "${name} activé avec succès !"; + + static m5(title) => "Seules les adresses ${title} sont affichées"; + + static m6(abbr) => "Impossible d\'envoyer les fonds sur l\'adresse ${abbr} car elle n\'est pas activée. Veuillez ouvrir le portfolio."; - static m3(appName) => + static m7(appName) => "Non ! ${appName} est non-custodial. Aucune donnée sensible n\'est sauvegardé, ni votre clé privé, ni votre passphrases, ni votre PIN. Toutes ces données sont stockées sur votre appareil et ne sont jamais transmises."; - static m4(appName) => - "${appName} est disponible sur mobile Android et iPhone, et pour PC sur les sytèmes d\'exploitations Windows, Mac, et Linux."; + static m8(appName) => + "${appName} est disponible pour mobile sur Android et iPhone, et pour ordinateur sur systèmes d\'exploitation Windows, Mac et Linux."; - static m5(appName) => + static m9(appName) => "Les autres DEX ne vous permettent généralement que d\'échanger des actifs basés sur un seul réseau de blockchain, d\'utiliser des jetons proxy et de ne permettre de passer qu\'une seule commande avec les mêmes fonds.\n\n${appName} vous permet d\'échanger nativement sur deux réseaux blockchain différents sans jetons proxy. Vous pouvez également passer plusieurs commandes avec les mêmes fonds. Par exemple, vous pouvez vendre 0,1 BTC pour KMD, QTUM ou VRSC — la première commande exécutée annule automatiquement toutes les autres commandes."; - static m6(appName) => + static m10(appName) => "Plusieurs facteurs déterminent le temps de traitement de chaque échange. Le temps de blocage des actifs échangés dépend de chaque réseau (Bitcoin étant généralement le plus lent). De plus, l\'utilisateur peut personnaliser les préférences de sécurité. Par exemple, vous pouvez demander à ${appName} de considérer une transaction KMD comme finale après seulement 3 confirmations, ce qui raccourcit le temps d\'échange par rapport à l\'attente d\'une notarisation."; - static m7(appName) => + static m11(appName) => "Il existe deux catégories de frais à prendre en compte lors de la négociation sur ${appName}.\n\n1. ${appName} facture environ 0,13 % (1/777 du volume de négociation mais pas moins de 0,0001) comme frais de négociation pour les ordres preneurs, et les ordres fabricant n\'ont aucun frais.\n\n2. Les fabricants et les preneurs devront payer des frais de réseau normaux aux chaînes de blocs impliquées lors des transactions d\'échange atomique.\n\nLes frais de réseau peuvent varier considérablement en fonction de la paire de négociation que vous avez sélectionnée."; - static m8(name, link, appName, appCompanyShort) => + static m12(name, link, appName, appCompanyShort) => "Oui! ${appName} propose une assistance via le ${appCompanyShort} ${name}. L\'équipe et la communauté sont toujours ravies de vous aider !"; - static m9(appName) => + static m13(appName) => "Non! ${appName} est entièrement décentralisé. Il n\'est pas possible de limiter l\'accès des utilisateurs par un tiers."; - static m10(appName, appCompanyShort) => + static m14(appName, appCompanyShort) => "${appName} est développé par l\'équipe ${appCompanyShort} . ${appCompanyShort} est l\'un des projets de blockchain les plus établis travaillant sur des solutions innovantes telles que les swaps atomiques, la preuve de travail différée et une architecture multichaîne interopérable."; - static m11(appName) => - "Absolument! Vous pouvez lire notre documentation pour les développeurs pour plus de détails ou nous contacter pour vos demandes de partenariat. Vous avez une question technique spécifique ? La communauté de développeurs ${appName} est toujours prête à vous aider !"; + static m15(appName) => + "Absolument! Vous pouvez lire notre documentation pour les développeurs pour plus de détails ou nous contacter pour vos demandes de partenariat. Vous avez une question technique spécifique ? La communauté de développeurs ${appName} est toujours prête à vous aider !"; + + static m16(coinName1, coinName2) => "basé sur ${coinName1}/${coinName2}"; - static m12(batteryLevelCritical) => + static m17(batteryLevelCritical) => "La charge de votre batterie est essentielle (${batteryLevelCritical} %) pour effectuer un échange en toute sécurité. Veuillez le mettre en charge et réessayer."; - static m13(batteryLevelLow) => + static m18(batteryLevelLow) => "La charge de votre batterie est inférieure à ${batteryLevelLow} %. Veuillez considérer la recharge du téléphone."; - static m14(seconde) => + static m19(seconde) => "Ordre en cours, veuillez patienter ${seconde} secondes!"; - static m15(index) => "Entrez le ${index} mot"; + static m20(index) => "Entrez le ${index} mot"; + + static m21(index) => "Quel est le ${index} mot dans votre passphrase?"; + + static m22(coin) => "Activation de ${coin} annulée"; - static m16(index) => "Quel est le ${index} mot dans votre passphrase?"; + static m23(coin) => "${coin} activé avec succès"; - static m17(name) => "Voulez-vous supprimer le contact ${name}?"; + static m24(protocolName) => "Les pièces ${protocolName} sont activées"; - static m18(iUnderstand) => + static m25(protocolName) => "${protocolName} pièces activées avec succès"; + + static m26(protocolName) => "Les pièces ${protocolName} ne sont pas activées"; + + static m27(name) => "Voulez-vous supprimer le contact ${name}?"; + + static m28(iUnderstand) => "Les phrases de départ personnalisées peuvent être moins sécurisées et plus faciles à déchiffrer qu\'une phrase de départ ou une clé privée (WIF) conforme à BIP39. Pour confirmer que vous comprenez le risque et savez ce que vous faites, saisissez \" ${iUnderstand}\" dans la case ci-dessous."; - static m19(abbr) => "Entrez l\'adresse ${abbr} "; + static m29(coinName) => "recevez des frais de transaction ${coinName}"; + + static m30(coinName) => "envoyer des frais de transaction à ${coinName}"; - static m20(selected, remains) => + static m31(abbr) => "Entrez l\'adresse ${abbr} "; + + static m32(selected, remains) => "Vous pouvez toujours activer ${remains}, Selected : ${selected}"; - static m21(gas) => + static m33(gas) => "Pas assez de gas - veuillez utiliser au moins ${gas} Gwei"; - static m22(appName, appCompanyLong) => + static m34(appName, appCompanyLong) => "This End-User License Agreement (\'EULA\') is a legal agreement between you and ${appCompanyLong}.\n\nThis EULA agreement governs your acquisition and use of our ${appName} mobile software (\'Software\', \'Mobile Application\', \'Application\' or \'App\') directly from ${appCompanyLong} or indirectly through a ${appCompanyLong} authorized entity, reseller or distributor (a \'Distributor\').\nPlease read this EULA agreement carefully before completing the installation process and using the ${appName} mobile software. It provides a license to use the ${appName} mobile software and contains warranty information and liability disclaimers.\nIf you register for the beta program of the ${appName} mobile software, this EULA agreement will also govern that trial. By clicking \'accept\' or installing and/or using the ${appName} mobile software, you are confirming your acceptance of the Software and agreeing to become bound by the terms of this EULA agreement.\nIf you are entering into this EULA agreement on behalf of a company or other legal entity, you represent that you have the authority to bind such entity and its affiliates to these terms and conditions. If you do not have such authority or if you do not agree with the terms and conditions of this EULA agreement, do not install or use the Software, and you must not accept this EULA agreement.\nThis EULA agreement shall apply only to the Software supplied by ${appCompanyLong} herewith regardless of whether other software is referred to or described herein. The terms also apply to any ${appCompanyLong} updates, supplements, Internet-based services, and support services for the Software, unless other terms accompany those items on delivery. If so, those terms apply.\n\nLICENSE GRANT\n\n${appCompanyLong} hereby grants you a personal, non-transferable, non-exclusive license to use the ${appName} mobile software on your devices in accordance with the terms of this EULA agreement.\n\nYou are permitted to load the ${appName} mobile software (for example a PC, laptop, mobile or tablet) under your control. You are responsible for ensuring your device meets the minimum security and resource requirements of the ${appName} mobile software.\n\nYou are not permitted to:\n(a) edit, alter, modify, adapt, translate or otherwise change the whole or any part of the Software nor permit the whole or any part of the Software to be combined with or become incorporated in any other software, nor decompile, disassemble or reverse engineer the Software or attempt to do any such things;\n(b) reproduce, copy, distribute, resell or otherwise use the Software for any commercial purpose;\n(c) use the Software in any way which breaches any applicable local, national or international law;\n(d) use the Software for any purpose that ${appCompanyLong} considers is a breach of this EULA agreement.\n\nINTELLECTUAL PROPERTY AND OWNERSHIP\n\n${appCompanyLong} shall at all times retain ownership of the Software as originally downloaded by you and all subsequent downloads of the Software by you. The Software (and the copyright, and other intellectual property rights of whatever nature in the Software, including any modifications made thereto) are and shall remain the property of ${appCompanyLong}.\n\n${appCompanyLong} reserves the right to grant licenses to use the Software to third parties.\n\nTERMINATION\n\nThis EULA agreement is effective from the date you first use the Software and shall continue until terminated. You may terminate it at any time upon written notice to ${appCompanyLong}.\nIt will also terminate immediately if you fail to comply with any term of this EULA agreement. Upon such termination, the licenses granted by this EULA agreement will immediately terminate and you agree to stop all access and use of the Software. The provisions that by their nature continue and survive will survive any termination of this EULA agreement.\n\nGOVERNING LAW\n\nThis EULA agreement, and any dispute arising out of or in connection with this EULA agreement, shall be governed by and construed in accordance with the laws of Vietnam.\n\nThis document was last updated on January 31st, 2020"; - static m23(appCompanyLong) => + static m35(appCompanyLong) => "${appCompanyLong} is the owner and/or authorised user of all trademarks, service marks, design marks, patents, copyrights, database rights and all other intellectual property appearing on or contained within the application, unless otherwise indicated. All information, text, material, graphics, software and advertisements on the application interface are copyright of ${appCompanyLong}, its suppliers and licensors, unless otherwise expressly indicated by ${appCompanyLong}. \nExcept as provided in the Terms, use of the application does not grant You any right, title, interest or license to any such intellectual property You may have access to on the application. \nWe own the rights, or have permission to use, the trademarks listed in our application. You are not authorised to use any of those trademarks without our written authorization – doing so would constitute a breach of our or another party’s intellectual property rights. \nAlternatively, we might authorise You to use the content in our application if You previously contact us and we agree in writing."; - static m24(appCompanyShort, appCompanyLong) => + static m36(appCompanyShort, appCompanyLong) => "${appCompanyLong} cannot guarantee the safety or security of your computer systems. We do not accept liability for any loss or corruption of electronically stored data or any damage to any computer system occurred in connection with the use of the application or of the user content.\n${appCompanyLong} makes no representation or warranty of any kind, express or implied, as to the operation of the application or the user content. You expressly agree that your use of the application is entirely at your sole risk.\nYou agree that the content provided in the application and the user content do not constitute financial product, legal or taxation advice, and You agree on not representing the user content or the application as such.\nTo the extent permitted by current legislation, the application is provided on an “as is, as available” basis.\n\n${appCompanyLong} expressly disclaims all responsibility for any loss, injury, claim, liability, or damage, or any indirect, incidental, special or consequential damages or loss of profits whatsoever resulting from, arising out of or in any way related to:\n(a) any errors in or omissions of the application and/or the user content, including but not limited to technical inaccuracies and typographical errors;\n(b) any third party website, application or content directly or indirectly accessed through links in the application, including but not limited to any errors or omissions;\n(c) the unavailability of the application or any portion of it;\n(d) your use of the application;\n(e) your use of any equipment or software in connection with the application.\n\nAny Services offered in connection with the Platform are provided on an \'as is\' basis, without any representation or warranty, whether express, implied or statutory. To the maximum extent permitted by applicable law, we specifically disclaim any implied warranties of title, merchantability, suitability for a particular purpose and/or non-infringement. We do not make any representations or warranties that use of the Platform will be continuous, uninterrupted, timely, or error-free.\nWe make no warranty that any Platform will be free from viruses, malware, or other related harmful material and that your ability to access any Platform will be uninterrupted. Any defects or malfunction in the product should be directed to the third party offering the Platform, not to ${appCompanyShort}.\nWe will not be responsible or liable to You for any loss of any kind, from action taken, or taken in reliance on the material or information contained in or through the Platform.\nThis is experimental and unfinished software. Use at your own risk. No warranty for any kind of damage. By using this application you agree to this terms and conditions."; - static m25(appCompanyLong) => + static m37(appCompanyLong) => "You agree and understand that there are risks associated with utilizing Services involving Virtual Currencies including, but not limited to, the risk of failure of hardware, software and internet connections, the risk of malicious software introduction, and the risk that third parties may obtain unauthorized access to information stored within your Wallet, including but not limited to your public and private keys. You agree and understand that ${appCompanyLong} will not be responsible for any communication failures, disruptions, errors, distortions or delays You may experience when using the Services, however caused.\nYou accept and acknowledge that there are risks associated with utilizing any virtual currency network, including, but not limited to, the risk of unknown vulnerabilities in or unanticipated changes to the network protocol. You acknowledge and accept that ${appCompanyLong} has no control over any cryptocurrency network and will not be responsible for any harm occurring as a result of such risks, including, but not limited to, the inability to reverse a transaction, and any losses in connection therewith due to erroneous or fraudulent actions.\nThe risk of loss in using Services involving Virtual Currencies may be substantial and losses may occur over a short period of time. In addition, price and liquidity are subject to significant fluctuations that may be unpredictable.\nVirtual Currencies are not legal tender and are not backed by any sovereign government. In addition, the legislative and regulatory landscape around Virtual Currencies is constantly changing and may affect your ability to use, transfer, or exchange Virtual Currencies.\nCFDs are complex instruments and come with a high risk of losing money rapidly due to leverage. 80.6% of retail investor accounts lose money when trading CFDs with this provider. You should consider whether You understand how CFDs work and whether You can afford to take the high risk of losing your money."; - static m26(appCompanyLong) => + static m38(appCompanyLong) => "You agree to indemnify, defend and hold harmless ${appCompanyLong}, its officers, directors, employees, agents, licensors, suppliers and any third party information providers to the application from and against all losses, expenses, damages and costs, including reasonable lawyer fees, resulting from any violation of the Terms by You.\nYou also agree to indemnify ${appCompanyLong} against any claims that information or material which You have submitted to ${appCompanyLong} is in violation of any law or in breach of any third party rights (including, but not limited to, claims in respect of defamation, invasion of privacy, breach of confidence, infringement of copyright or infringement of any other intellectual property right)."; - static m27(appCompanyLong) => + static m39(appCompanyLong) => "In order to be completed, any Virtual Currency transaction created with the ${appCompanyLong} must be confirmed and recorded in the Virtual Currency ledger associated with the relevant Virtual Currency network. Such networks are decentralized, peer-to-peer networks supported by independent third parties, which are not owned, controlled or operated by ${appCompanyLong}.\n${appCompanyLong} has no control over any Virtual Currency network and therefore cannot and does not ensure that any transaction details You submit via our Services will be confirmed on the relevant Virtual Currency network. You agree and understand that the transaction details You submit via our Services may not be completed, or may be substantially delayed, by the Virtual Currency network used to process the transaction. We do not guarantee that the Wallet can transfer title or right in any Virtual Currency or make any warranties whatsoever with regard to title.\nOnce transaction details have been submitted to a Virtual Currency network, we cannot assist You to cancel or otherwise modify your transaction or transaction details. ${appCompanyLong} has no control over any Virtual Currency network and does not have the ability to facilitate any cancellation or modification requests.\nIn the event of a Fork, ${appCompanyLong} may not be able to support activity related to your Virtual Currency. You agree and understand that, in the event of a Fork, the transactions may not be completed, completed partially, incorrectly completed, or substantially delayed. ${appCompanyLong} is not responsible for any loss incurred by You caused in whole or in part, directly or indirectly, by a Fork.\nIn no event shall ${appCompanyLong}, its affiliates and service providers, or any of their respective officers, directors, agents, employees or representatives, be liable for any lost profits or any special, incidental, indirect, intangible, or consequential damages, whether based on contract, tort, negligence, strict liability, or otherwise, arising out of or in connection with authorized or unauthorized use of the services, or this agreement, even if an authorized representative of ${appCompanyLong} has been advised of, has known of, or should have known of the possibility of such damages. \nFor example (and without limiting the scope of the preceding sentence), You may not recover for lost profits, lost business opportunities, or other types of special, incidental, indirect, intangible, or consequential damages. Some jurisdictions do not allow the exclusion or limitation of incidental or consequential damages, so the above limitation may not apply to You. \nWe will not be responsible or liable to You for any loss and take no responsibility for damages or claims arising in whole or in part, directly or indirectly from: \n(a) user error such as forgotten passwords, incorrectly constructed transactions, or mistyped Virtual Currency addresses; \n(b) server failure or data loss; \n(c) corrupted or otherwise non-performing Wallets or Wallet files; \n(d) unauthorized access to applications; \n(e) any unauthorized activities, including without limitation the use of hacking, viruses, phishing, brute forcing or other means of attack against the Services."; - static m28(appCompanyShort, appCompanyLong) => + static m40(appCompanyShort, appCompanyLong) => "For the avoidance of doubt, ${appCompanyLong} does not provide investment, tax or legal advice, nor does ${appCompanyLong} broker trades on your behalf. All ${appCompanyLong} trades are executed automatically, based on the parameters of your order instructions and in accordance with posted Trade execution procedures, and You are solely responsible for determining whether any investment, investment strategy or related transaction is appropriate for You based on your personal investment objectives, financial circumstances and risk tolerance. You should consult your legal or tax professional regarding your specific situation. Neither ${appCompanyShort} nor its owners, members, officers, directors, partners, consultants, nor anyone involved in the publication of this application, is a registered investment adviser or broker-dealer or associated person with a registered investment adviser or broker-dealer and none of the foregoing make any recommendation that the purchase or sale of crypto-assets or securities of any company profiled in the mobile Application is suitable or advisable for any person or that an investment or transaction in such crypto-assets or securities will be profitable. The information contained in the mobile Application is not intended to be, and shall not constitute, an offer to sell or the solicitation of any offer to buy any crypto-asset or security. The information presented in the mobile Application is provided for informational purposes only and is not to be treated as advice or a recommendation to make any specific investment or transaction. Please, consult with a qualified professional before making any decisions. The opinions and analysis included in this applications are based on information from sources deemed to be reliable and are provided “as is” in good faith. ${appCompanyShort} makes no representation or warranty, expressed, implied, or statutory, as to the accuracy or completeness of such information, which may be subject to change without notice. ${appCompanyShort} shall not be liable for any errors or any actions taken in relation to the above. Statements of opinion and belief are those of the authors and/or editors who contribute to this application, and are based solely upon the information possessed by such authors and/or editors. No inference should be drawn that ${appCompanyShort} or such authors or editors have any special or greater knowledge about the crypto-assets or companies profiled or any particular expertise in the industries or markets in which the profiled crypto-assets and companies operate and compete. Information on this application is obtained from sources deemed to be reliable; however, ${appCompanyShort} takes no responsibility for verifying the accuracy of such information and makes no representation that such information is accurate or complete. Certain statements included in this application may be forward-looking statements based on current expectations. ${appCompanyShort} makes no representation and provides no assurance or guarantee that such forward-looking statements will prove to be accurate. Persons using the ${appCompanyShort} application are urged to consult with a qualified professional with respect to an investment or transaction in any crypto-asset or company profiled herein. Additionally, persons using this application expressly represent that the content in this application is not and will not be a consideration in such persons’ investment or transaction decisions. Traders should verify independently information provided in the ${appCompanyShort} application by completing their own due diligence on any crypto-asset or company in which they are contemplating an investment or transaction of any kind and review a complete information package on that crypto-asset or company, which should include, but not be limited to, related blog updates and press releases. Past performance of profiled crypto-assets and securities is not indicative of future results. Crypto-assets and companies profiled on this site may lack an active trading market and invest in a crypto-asset or security that lacks an active trading market or trade on certain media, platforms and markets are deemed highly speculative and carry a high degree of risk. Anyone holding such crypto-assets and securities should be financially able and prepared to bear the risk of loss and the actual loss of his or her entire trade. The information in this application is not designed to be used as a basis for an investment decision. Persons using the ${appCompanyShort} application should confirm to their own satisfaction the veracity of any information prior to entering into any investment or making any transaction. The decision to buy or sell any crypto-asset or security that may be featured by ${appCompanyShort} is done purely and entirely at the reader’s own risk. As a reader and user of this application, You agree that under no circumstances will You seek to hold liable owners, members, officers, directors, partners, consultants or other persons involved in the publication of this application for any losses incurred by the use of information contained in this application ${appCompanyShort} and its contractors and affiliates may profit in the event the crypto-assets and securities increase or decrease in value. Such crypto-assets and securities may be bought or sold from time to time, even after ${appCompanyShort} has distributed positive information regarding the crypto-assets and companies. ${appCompanyShort} has no obligation to inform readers of its trading activities or the trading activities of any of its owners, members, officers, directors, contractors and affiliates and/or any companies affiliated with BC Relations’ owners, members, officers, directors, contractors and affiliates. ${appCompanyShort} and its affiliates may from time to time enter into agreements to purchase crypto-assets or securities to provide a method to reach their goals."; - static m29(appCompanyLong) => + static m41(appCompanyLong) => "The Terms are effective until terminated by ${appCompanyLong}. \nIn the event of termination, You are no longer authorized to access the Application, but all restrictions imposed on You and the disclaimers and limitations of liability set out in the Terms will survive termination. \nSuch termination shall not affect any legal right that may have accrued to ${appCompanyLong} against You up to the date of termination. \n${appCompanyLong} may also remove the Application as a whole or any sections or features of the Application at any time. "; - static m30(appCompanyLong) => + static m42(appCompanyLong) => "The provisions of previous paragraphs are for the benefit of ${appCompanyLong} and its officers, directors, employees, agents, licensors, suppliers, and any third party information providers to the Application. Each of these individuals or entities shall have the right to assert and enforce those provisions directly against You on its own behalf."; - static m31(appName, appCompanyLong) => + static m43(appName, appCompanyLong) => "${appName} mobile is a non-custodial, decentralized and blockchain based application and as such does ${appCompanyLong} never store any user-data (accounts and authentication data). \nWe also collect and process non-personal, anonymized data for statistical purposes and analysis and to help us provide a better service.\n\nThis document was last updated on January 31st, 2020"; - static m32(appName, appCompanyLong) => + static m44(appName, appCompanyLong) => "This disclaimer applies to the contents and services of the app ${appName} and is valid for all users of the “Application” (\'Software\', “Mobile Application”, “Application” or “App”).\n\nThe Application is owned by ${appCompanyLong}.\n\nWe reserve the right to amend the following Terms and Conditions (governing the use of the application “${appName} mobile”) at any time without prior notice and at our sole discretion. It is your responsibility to periodically check this Terms and Conditions for any updates to these Terms, which shall come into force once published.\nYour continued use of the application shall be deemed as acceptance of the following Terms.\nWe are a company incorporated in Vietnam and these Terms and Conditions are governed by and subject to the laws of Vietnam.\nIf You do not agree with these Terms and Conditions, You must not use or access this software."; - static m33(appName) => + static m45(appName) => "You are not allowed to decompile, decode, disassemble, rent, lease, loan, sell, sublicense, or create derivative works from the ${appName} mobile application or the user content. Nor are You allowed to use any network monitoring or detection software to determine the software architecture, or extract information about usage or individuals’ or users’ identities. \nYou are not allowed to copy, modify, reproduce, republish, distribute, display, or transmit for commercial, non-profit or public purposes all or any portion of the application or the user content without our prior written authorization."; - static m34(appName, appCompanyLong) => + static m46(appName, appCompanyLong) => "If you create an account in the Mobile Application, you are responsible for maintaining the security of your account and you are fully responsible for all activities that occur under the account and any other actions taken in connection with it. We will not be liable for any acts or omissions by you, including any damages of any kind incurred as a result of such acts or omissions. \n\n${appName} mobile is a non-custodial wallet implementation and thus ${appCompanyLong} can not access nor restore your account in case of (data) loss."; - static m35(appName) => + static m47(appName) => "End-User License Agreement (EULA) of ${appName} mobile:"; - static m36(coin) => "Envoi de la demande au robinet ${coin} ..."; + static m48(coinAbbr) => + "Échec de l\'annulation de l\'activation de ${coinAbbr}"; + + static m49(coin) => "Envoi de la demande au robinet ${coin} ..."; - static m37(appCompanyShort) => "${appCompanyShort} actualités"; + static m50(appCompanyShort) => "${appCompanyShort} actualités"; - static m38(value) => "Les frais doivent être jusqu\'à ${value}"; + static m51(value) => "Les frais doivent être jusqu\'à ${value}"; - static m39(coin) => "${coin} commission"; + static m52(coin) => "${coin} commission"; - static m40(coin) => "Veuillez activer ${coin}."; + static m53(coin) => "Veuillez activer ${coin}."; - static m41(abbr) => + static m54(value) => "Gwei doit atteindre ${value}"; + + static m55(coinName) => + "Paramètres de protection des transmissions entrantes ${coinName}"; + + static m56(abbr) => "${abbr} balance insuffisante pour payer les frais de courtage"; - static m42(coinAbbr) => "${coinAbbr} est indisponible :("; + static m57(coin) => "Adresse ${coin} invalide"; - static m43(coinName) => + static m58(coinAbbr) => "${coinAbbr} est indisponible :("; + + static m59(coinName) => "❗Attention ! Le marché pour ${coinName} a un volume de transactions inférieur à 10 000 \$ sur 24 heures !"; - static m44(coinName, number) => + static m60(value) => "La limite doit aller jusqu\'à ${value}"; + + static m61(coinName, number) => "Le montant minimum à vendre est ${number} ${coinName}"; - static m45(coinName, number) => + static m62(coinName, number) => "Le montant minimum à acheter est ${number} ${coinName}"; - static m46(buyCoin, buyAmount, sellCoin, sellAmount) => + static m63(buyCoin, buyAmount, sellCoin, sellAmount) => "Le montant minimum de la commande est de ${buyAmount}${buyCoin}(${sellAmount}${sellCoin})"; - static m47(coinName, number) => + static m64(coinName, number) => "Le montant minimum à vendre est de ${number}${coinName}"; - static m48(minValue, coin) => "Doit être supérieur à ${minValue} ${coin}"; + static m65(minValue, coin) => "Doit être supérieur à ${minValue} ${coin}"; - static m49(appName) => + static m66(appName) => "Veuillez noter que vous utilisez maintenant des données cellulaires et que votre participation au réseau ${appName} P2P consomme du trafic Internet. Il est préférable d\'utiliser un réseau WiFi si votre forfait de données cellulaires est coûteux."; - static m50(coin) => "Activez ${coin} et rechargez d\'abord le solde"; + static m67(coin) => "Activez ${coin} et rechargez d\'abord le solde"; - static m51(number) => "Créer ${number} Ordre(s):"; + static m68(number) => "Créer ${number} Ordre(s):"; - static m52(coin) => "La balance ${coin} est trop faible"; + static m69(coin) => "La balance ${coin} est trop faible"; - static m53(coin, fee) => + static m70(coin, fee) => "Pas assez de ${coin} pour payer les frais. Balance MIN necessaire ${fee} ${coin}"; - static m54(coinName) => + static m71(coinName) => "Aucun ordre ${coinName} disponible - réessayez ultérieurement ou créez un ordre."; - static m55(coin) => "Pas assez de ${coin} pour la transaction!"; + static m72(coin) => "Pas assez de ${coin} pour la transaction!"; - static m56(sell, buy) => + static m73(sell, buy) => " L\'échange${sell} / ${buy} s\'est terminé avec succès"; - static m57(sell, buy) => "${sell}/${buy} échange échoué"; + static m74(sell, buy) => "${sell}/${buy} échange échoué"; - static m58(sell, buy) => "${sell}/${buy} échange démarré"; + static m75(sell, buy) => "${sell}/${buy} échange démarré"; - static m59(sell, buy) => "${sell}/${buy} délais d\'échange dépassé"; + static m76(sell, buy) => "${sell}/${buy} délais d\'échange dépassé"; - static m60(coin) => "Vous avez reçu ${coin} transaction !"; + static m77(coin) => "Vous avez reçu ${coin} transaction !"; - static m61(assets) => "${assets} Actifs"; + static m78(assets) => "${assets} Actifs"; - static m62(coin) => "Tous les ordres ${coin} seront annulés."; + static m79(coin) => "Tous les ordres ${coin} seront annulés."; - static m63(delta) => "Expédient : CEX +${delta} %"; + static m80(delta) => "Expédient : CEX +${delta} %"; - static m64(delta) => "Cher : CEX ${delta} %"; + static m81(delta) => "Cher : CEX ${delta} %"; - static m65(fill) => "${fill}% rempli"; + static m82(fill) => "${fill}% rempli"; - static m66(coin) => "Mnt. (${coin})"; + static m83(coin) => "Mnt. (${coin})"; - static m67(coin) => "Prix (${coin})"; + static m84(coin) => "Prix (${coin})"; - static m68(coin) => "Total (${coin})"; + static m85(coin) => "Total (${coin})"; - static m69(abbr) => + static m86(abbr) => "${abbr} n\'est pas actif. Veuillez activer et réessayer."; - static m70(appName) => + static m87(appName) => "Quels sont les appareils compatibles avec ${appName}?"; - static m71(appName) => + static m88(appName) => "En quoi le trading sur ${appName} est-il différent du trading sur d\'autres DEX ?"; - static m72(appName) => "Comment sont calculés les frais sur ${appName} ?"; + static m89(appName) => "Comment sont calculés les frais sur ${appName} ?"; - static m73(appName) => "Qui est derrière ${appName}?"; + static m90(appName) => "Qui est derrière ${appName}?"; - static m74(appName) => + static m91(appName) => "Est-il possible de développer mon propre échange en marque blanche sur ${appName} ?"; - static m75(amount) => "Succès! ${amount} KMD reçu."; + static m92(amount) => "Succès! ${amount} KMD reçu."; + + static m93(dd) => "${dd} jour(s)"; - static m76(dd) => "${dd} jour(s)"; + static m94(hh, minutes) => "${hh}h ${minutes}m"; - static m77(hh, minutes) => "${hh}h ${minutes}m"; + static m95(mm) => "${mm}min"; - static m78(mm) => "${mm}min"; + static m96(amount) => "Cliquez pour voir ${amount} orders"; - static m79(amount) => "Cliquez pour voir ${amount} orders"; + static m97(coinName, address) => "Mon adresse ${coinName}:\n${address}"; - static m80(coinName, address) => "Mon adresse ${coinName}:\n${address}"; + static m98(coin) => "Rechercher les transactions ${coin} passées ?"; - static m81(coin) => "Veuillez entrer le montant de ${coin} à acheter"; + static m99(count, maxCount) => + "Affichage de ${count} commandes sur ${maxCount}."; - static m82(maxCoins) => + static m100(coin) => "Veuillez entrer le montant de ${coin} à acheter"; + + static m101(maxCoins) => "Le nombre maximum de pièces actives est de ${maxCoins}. Veuillez en désactiver certains."; - static m83(coin) => "${coin} pas activé!"; + static m102(coin) => "${coin} pas activé!"; - static m84(coin) => "Veuillez entrer le montant de ${coin} à vendre"; + static m103(coin) => "Veuillez entrer le montant de ${coin} à vendre"; - static m85(coin) => "Impossible d\'activer ${coin}"; + static m104(coin) => "Impossible d\'activer ${coin}"; - static m86(description) => + static m105(description) => "Choisissez un fichier mp3 ou wav s\'il vous plaît. Nous y jouerons quand ${description}."; - static m87(description) => "Joué quand ${description}"; + static m106(description) => "Joué quand ${description}"; - static m88(appName) => + static m107(appName) => "Si vous avez des questions ou si vous pensez avoir rencontré un problème technique avec l\'application ${appName} , vous pouvez le signaler et obtenir de l\'aide de notre équipe."; - static m89(coin) => "Veuillez d\'abord activer ${coin} et recharger le solde"; + static m108(coin) => + "Veuillez d\'abord activer ${coin} et recharger le solde"; - static m90(coin) => + static m109(coin) => "${coin} solde insuffisant pour payer les frais de transaction."; - static m91(coin, amount) => + static m110(coin, amount) => "${coin} solde insuffisant pour payer les frais de transaction. ${coin} ${amount} requis."; - static m92(left) => "Transactions restantes : ${left}"; + static m111(name) => + "Quelles transactions ${name} souhaitez-vous synchroniser ?"; - static m93(amnt, hash) => + static m112(left) => "Transactions restantes : ${left}"; + + static m113(amnt, hash) => " ${amnt} fonds ont été débloqués avec succès - TX : ${hash}"; - static m94(version) => "Version ${version} en cours d\'utilisation"; + static m114(version) => "Version ${version} en cours d\'utilisation"; - static m95(version) => + static m115(version) => "Version ${version} disponible. Veuillez mettre à jour."; - static m96(appName) => "Mise à jour ${appName}"; + static m116(appName) => "Mise à jour ${appName}"; - static m97(coinAbbr) => "Activation ${coinAbbr} échoué"; + static m117(coinAbbr) => "Activation ${coinAbbr} échoué"; - static m98(coinAbbr) => + static m118(coinAbbr) => "Activation ${coinAbbr} échoué.\nVeuillez redémarrer l\'application et réessayer."; - static m99(appName) => + static m119(appName) => "Komodo Wallet est un portefeuille multi crypto-monnaies de nouvelle génération doté de la fonctionnalité DEX native de troisième génération et encore bien plus."; - static m100(appName) => + static m120(appName) => "Vous avez précédemment refusé à ${appName} l\'accès à la caméra.\nVeuillez modifier manuellement l\'autorisation de l\'appareil photo dans les paramètres de votre téléphone pour procéder à l\'analyse du code QR."; - static m101(amount, coinName) => "ENVOYER ${amount} ${coinName}"; + static m121(amount, coinName) => "ENVOYER ${amount} ${coinName}"; - static m102(amount, coin) => "Vous recevrez ${amount} ${coin}"; + static m122(amount, coin) => "Vous recevrez ${amount} ${coin}"; final messages = _notInlinedMessages(_notInlinedMessages); static Map _notInlinedMessages(_) => { @@ -304,16 +349,22 @@ class MessageLookup extends MessageLookupByLibrary { "Activer la protection Biométrique"), "activateAccessPin": MessageLookupByLibrary.simpleMessage("Activer la protection PIN"), + "activateCoins": m0, + "activating": m1, + "activation": m2, + "activationCancelled": MessageLookupByLibrary.simpleMessage( + "Activation des pièces annulée"), + "activationInProgress": m3, "addCoin": MessageLookupByLibrary.simpleMessage("Activer la crypto-monnaie"), - "addingCoinSuccess": m0, + "addingCoinSuccess": m4, "addressAdd": MessageLookupByLibrary.simpleMessage("Ajouter Adresse"), "addressBook": MessageLookupByLibrary.simpleMessage("Répertoire"), "addressBookEmpty": MessageLookupByLibrary.simpleMessage("Répertoire vide"), - "addressBookFilter": m1, + "addressBookFilter": m5, "addressBookTitle": MessageLookupByLibrary.simpleMessage("Répertoire"), - "addressCoinInactive": m2, + "addressCoinInactive": m6, "addressNotFound": MessageLookupByLibrary.simpleMessage("Pas de résultats"), "addressSelectCoin": @@ -322,6 +373,8 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("Adresse du destinataire"), "advanced": MessageLookupByLibrary.simpleMessage("Avancé"), "all": MessageLookupByLibrary.simpleMessage("Tout"), + "allPastTransactions": MessageLookupByLibrary.simpleMessage( + "Votre portefeuille affichera toutes les transactions passées. Cela prendra beaucoup de temps et de stockage car tous les blocs seront téléchargés et analysés."), "allowCustomSeed": MessageLookupByLibrary.simpleMessage( "Autoriser les passphrases personnalisées"), "alreadyExists": @@ -329,17 +382,17 @@ class MessageLookup extends MessageLookupByLibrary { "amount": MessageLookupByLibrary.simpleMessage("Montant"), "amountToSell": MessageLookupByLibrary.simpleMessage("Montant à vendre"), - "answer_1": m3, - "answer_10": m4, - "answer_2": m5, - "answer_3": m6, + "answer_1": m7, + "answer_10": m8, + "answer_2": m9, + "answer_3": m10, "answer_4": MessageLookupByLibrary.simpleMessage( "Oui. Vous devez rester connecté à Internet et exécuter votre application pour réussir chaque échange atomique (de très courtes pauses de connectivité sont généralement acceptables). Sinon, il y a un risque d\'annulation de transaction si vous êtes un fabricant et un risque de perte de fonds si vous êtes un preneur. Le protocole d\'échange atomique exige que les deux participants restent en ligne et surveillent les chaînes de blocs impliquées pour que le processus reste atomique."), - "answer_5": m7, - "answer_6": m8, - "answer_7": m9, - "answer_8": m10, - "answer_9": m11, + "answer_5": m11, + "answer_6": m12, + "answer_7": m13, + "answer_8": m14, + "answer_9": m15, "areYouSure": MessageLookupByLibrary.simpleMessage("ÊTES-VOUS SÛR?"), "authenticate": MessageLookupByLibrary.simpleMessage("authentification"), @@ -348,8 +401,9 @@ class MessageLookup extends MessageLookupByLibrary { "availableVolume": MessageLookupByLibrary.simpleMessage("vol max"), "back": MessageLookupByLibrary.simpleMessage("retour"), "backupTitle": MessageLookupByLibrary.simpleMessage("Sauvegarde"), - "batteryCriticalError": m12, - "batteryLowWarning": m13, + "basedOnCoinRatio": m16, + "batteryCriticalError": m17, + "batteryLowWarning": m18, "batterySavingWarning": MessageLookupByLibrary.simpleMessage( "Votre téléphone est en mode d\'économie de batterie. Veuillez désactiver ce mode ou ne PAS mettre l\'application en arrière-plan, sinon l\'application pourrait être tuée par le système d\'exploitation et l\'échange échouerait."), "bestAvailableRate": @@ -361,7 +415,7 @@ class MessageLookup extends MessageLookupByLibrary { "Convertir en Maker s\'il n\'y a pas de correspondance"), "buySuccessWaiting": MessageLookupByLibrary.simpleMessage( "Échange émis, veuillez patienter!"), - "buySuccessWaitingError": m14, + "buySuccessWaitingError": m19, "buyTestCoinWarning": MessageLookupByLibrary.simpleMessage( "Attention, vous êtes prêt à acheter des pièces test SANS valeur réelle !"), "camoPinBioProtectionConflict": MessageLookupByLibrary.simpleMessage( @@ -392,6 +446,10 @@ class MessageLookup extends MessageLookupByLibrary { "camouflageSetup": MessageLookupByLibrary.simpleMessage("Configuration Masque PIN"), "cancel": MessageLookupByLibrary.simpleMessage("Annuler"), + "cancelActivation": + MessageLookupByLibrary.simpleMessage("Annuler l\'activation"), + "cancelActivationQuestion": MessageLookupByLibrary.simpleMessage( + "Etes-vous sûr de vouloir annuler l\'activation ?"), "cancelButton": MessageLookupByLibrary.simpleMessage("Annuler"), "cancelOrder": MessageLookupByLibrary.simpleMessage("Annuler l\'ordre"), "candleChartError": MessageLookupByLibrary.simpleMessage( @@ -407,6 +465,7 @@ class MessageLookup extends MessageLookupByLibrary { "cexData": MessageLookupByLibrary.simpleMessage("Données CEX"), "cexDataDesc": MessageLookupByLibrary.simpleMessage( "Les données de marché (prix, graphiques, etc.) marquées de cette icône proviennent de sources tierces (coingecko.com, openrates.io)."), + "cexRate": MessageLookupByLibrary.simpleMessage("Taux CEX"), "changePin": MessageLookupByLibrary.simpleMessage("Changer code PIN"), "checkForUpdates": MessageLookupByLibrary.simpleMessage("Vérifier les mises à jours"), @@ -417,10 +476,10 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("CONTINUER"), "checkSeedPhraseButton2": MessageLookupByLibrary.simpleMessage( "RETOURNEZ ET VÉRIFIEZ À NOUVEAU"), - "checkSeedPhraseHint": m15, + "checkSeedPhraseHint": m20, "checkSeedPhraseInfo": MessageLookupByLibrary.simpleMessage( "Votre passphrase est importante - c\'est pourquoi nous voulons nous assurer qu\'elle est correcte. Nous vous poserons trois questions différentes sur votre passphrase pour vous assurer que vous pourrez facilement restaurer votre portefeuille à tout moment."), - "checkSeedPhraseSubtile": m16, + "checkSeedPhraseSubtile": m21, "checkSeedPhraseTitle": MessageLookupByLibrary.simpleMessage( "VERIFIONS UNE NOUVELLE FOIS VOTRE PASSPHRASE"), "chineseLanguage": MessageLookupByLibrary.simpleMessage("Chinois"), @@ -437,6 +496,10 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("Fermer Message d\'Erreur"), "closePreview": MessageLookupByLibrary.simpleMessage("Fermer aperçu"), "code": MessageLookupByLibrary.simpleMessage("Code:"), + "cofirmCancelActivation": MessageLookupByLibrary.simpleMessage( + "Etes-vous sûr de vouloir annuler l\'activation ?"), + "coinActivationCancelled": m22, + "coinActivationSuccessfull": m23, "coinSelectClear": MessageLookupByLibrary.simpleMessage("Effacer"), "coinSelectNotFound": MessageLookupByLibrary.simpleMessage( "Aucune crypto-monnaie active"), @@ -444,6 +507,9 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("Choisir crypto-monnaie"), "coinsActivatedLimitReached": MessageLookupByLibrary.simpleMessage( "Vous avez sélectionné le nombre maximum d\'éléments"), + "coinsAreActivated": m24, + "coinsAreActivatedSuccessfully": m25, + "coinsAreNotActivated": m26, "comingSoon": MessageLookupByLibrary.simpleMessage("A venir..."), "commingsoon": MessageLookupByLibrary.simpleMessage("TX détails à venir!"), @@ -474,7 +540,7 @@ class MessageLookup extends MessageLookupByLibrary { "contactDelete": MessageLookupByLibrary.simpleMessage("Supprimer Contact"), "contactDeleteBtn": MessageLookupByLibrary.simpleMessage("Supprimer"), - "contactDeleteWarning": m17, + "contactDeleteWarning": m27, "contactDiscardBtn": MessageLookupByLibrary.simpleMessage("Annuler"), "contactEdit": MessageLookupByLibrary.simpleMessage("Editer"), "contactExit": MessageLookupByLibrary.simpleMessage("Fermer"), @@ -485,7 +551,10 @@ class MessageLookup extends MessageLookupByLibrary { "contactSave": MessageLookupByLibrary.simpleMessage("Enregistrer"), "contactTitle": MessageLookupByLibrary.simpleMessage("Détail Contact"), "contactTitleName": MessageLookupByLibrary.simpleMessage("Nom"), + "contract": MessageLookupByLibrary.simpleMessage("Contracter"), "convert": MessageLookupByLibrary.simpleMessage("Convertir"), + "couldNotLaunchUrl": + MessageLookupByLibrary.simpleMessage("Impossible de lancer l\'URL"), "couldntImportError": MessageLookupByLibrary.simpleMessage("Import impossible:"), "create": MessageLookupByLibrary.simpleMessage("Échange"), @@ -500,7 +569,7 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("Frais personnalisés"), "customFeeWarning": MessageLookupByLibrary.simpleMessage( "N\'utiliser les frais personnalisés que si vous savez ce que vous faite!"), - "customSeedWarning": m18, + "customSeedWarning": m28, "dPow": MessageLookupByLibrary.simpleMessage("Komodo sécurité dPoW"), "date": MessageLookupByLibrary.simpleMessage("Date"), "decryptingWallet": MessageLookupByLibrary.simpleMessage( @@ -518,6 +587,13 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("Supprimer le portefeuille"), "deletingWallet": MessageLookupByLibrary.simpleMessage("Supression portefeuille…"), + "detailedFeesReceiveCoinTransactionFee": m29, + "detailedFeesSendCoinTransactionFee": m30, + "detailedFeesSendTradingFeeTransactionFee": + MessageLookupByLibrary.simpleMessage( + "envoyer des frais de négociation frais de transaction"), + "detailedFeesTradingFee": + MessageLookupByLibrary.simpleMessage("frais de négociation"), "details": MessageLookupByLibrary.simpleMessage("détails"), "deutscheLanguage": MessageLookupByLibrary.simpleMessage("Allemand"), "developerTitle": MessageLookupByLibrary.simpleMessage("Développeur"), @@ -528,6 +604,8 @@ class MessageLookup extends MessageLookupByLibrary { "Désactiver les captures d\'écran/aperçu"), "disclaimerAndTos": MessageLookupByLibrary.simpleMessage( "Avertissement et Conditions d\'utilisation"), + "doNotCloseTheAppTapForMoreInfo": MessageLookupByLibrary.simpleMessage( + "Ne fermez pas l\'application. Appuyez pour plus d\'informations..."), "done": MessageLookupByLibrary.simpleMessage("Terminé"), "dontAskAgain": MessageLookupByLibrary.simpleMessage("Ne plus demander"), @@ -535,7 +613,7 @@ class MessageLookup extends MessageLookupByLibrary { "Je ne veux pas de mot de passe"), "duration": MessageLookupByLibrary.simpleMessage("Durée"), "editContact": MessageLookupByLibrary.simpleMessage("Editer contact"), - "emptyCoin": m19, + "emptyCoin": m31, "emptyExportPass": MessageLookupByLibrary.simpleMessage( "Le mot de passe chiffré ne peut être nul"), "emptyImportPass": MessageLookupByLibrary.simpleMessage( @@ -544,7 +622,10 @@ class MessageLookup extends MessageLookupByLibrary { "Le nom du contact ne peut être nul"), "emptyWallet": MessageLookupByLibrary.simpleMessage( "Le nom du portefeuille ne peut être nul"), - "enable": m20, + "enable": m32, + "enableNotificationsForActivationProgress": + MessageLookupByLibrary.simpleMessage( + "Veuillez activer les notifications pour obtenir des mises à jour sur la progression de l\'activation."), "enableTestCoins": MessageLookupByLibrary.simpleMessage( "Activer les crypto-monnaies de Test"), "enablingTooManyAssetsSpan1": @@ -578,7 +659,7 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("Adresse non valide"), "errorNotAValidAddressSegWit": MessageLookupByLibrary.simpleMessage( "Adresses Segwit non supportées (pour le moment)"), - "errorNotEnoughGas": m21, + "errorNotEnoughGas": m33, "errorTryAgain": MessageLookupByLibrary.simpleMessage("Erreur, veuillez réessayer"), "errorTryLater": MessageLookupByLibrary.simpleMessage( @@ -589,32 +670,32 @@ class MessageLookup extends MessageLookupByLibrary { "S\'il vous plaît entrer des données"), "estimateValue": MessageLookupByLibrary.simpleMessage("Valeur totale estimée"), - "eulaParagraphe1": m22, - "eulaParagraphe10": m23, - "eulaParagraphe11": m24, + "eulaParagraphe1": m34, + "eulaParagraphe10": m35, + "eulaParagraphe11": m36, "eulaParagraphe12": MessageLookupByLibrary.simpleMessage( "When accessing or using the Services, You agree that You are solely responsible for your conduct while accessing and using our Services. Without limiting the generality of the foregoing, You agree that You will not:\n(a) use the Services in any manner that could interfere with, disrupt, negatively affect or inhibit other users from fully enjoying the Services, or that could damage, disable, overburden or impair the functioning of our Services in any manner;\n(b) use the Services to pay for, support or otherwise engage in any illegal activities, including, but not limited to illegal gambling, fraud, money laundering, or terrorist activities;\n(c) use any robot, spider, crawler, scraper or other automated means or interface not provided by us to access our Services or to extract data;\n(d) use or attempt to use another user’s Wallet or credentials without authorization;\n(e) attempt to circumvent any content filtering techniques we employ, or attempt to access any service or area of our Services that You are not authorized to access;\n(f) introduce to the Services any virus, Trojan, worms, logic bombs or other harmful material;\n(g) develop any third-party applications that interact with our Services without our prior written consent;\n(h) provide false, inaccurate, or misleading information; \n(i) encourage or induce any other person to engage in any of the activities prohibited under this Section."), - "eulaParagraphe13": m25, - "eulaParagraphe14": m26, - "eulaParagraphe15": m27, - "eulaParagraphe16": m28, - "eulaParagraphe17": m29, - "eulaParagraphe18": m30, - "eulaParagraphe19": m31, - "eulaParagraphe2": m32, + "eulaParagraphe13": m37, + "eulaParagraphe14": m38, + "eulaParagraphe15": m39, + "eulaParagraphe16": m40, + "eulaParagraphe17": m41, + "eulaParagraphe18": m42, + "eulaParagraphe19": m43, + "eulaParagraphe2": m44, "eulaParagraphe3": MessageLookupByLibrary.simpleMessage( "By entering into this User (each subject accessing or using the site) Agreement (this writing) You declare that You are an individual over the age of majority (at least 18 or older) and have the capacity to enter into this User Agreement and accept to be legally bound by the terms and conditions of this User Agreement, as incorporated herein and amended from time to time."), "eulaParagraphe4": MessageLookupByLibrary.simpleMessage( "We may change the terms of this User Agreement at any time. Any such changes will take effect when published in the application, or when You use the Services.\n\nRead the User Agreement carefully every time You use our Services. Your continued use of the Services shall signify your acceptance to be bound by the current User Agreement. Our failure or delay in enforcing or partially enforcing any provision of this User Agreement shall not be construed as a waiver of any."), - "eulaParagraphe5": m33, - "eulaParagraphe6": m34, + "eulaParagraphe5": m45, + "eulaParagraphe6": m46, "eulaParagraphe7": MessageLookupByLibrary.simpleMessage( "We are not responsible for seed-phrases residing in the Mobile Application. In no event shall we be held liable for any loss of any kind. It is your sole responsibility to maintain appropriate backups of your accounts and their seedprases."), "eulaParagraphe8": MessageLookupByLibrary.simpleMessage( "You should not act, or refrain from acting solely on the basis of the content of this application. \nYour access to this application does not itself create an adviser-client relationship between You and us. \nThe content of this application does not constitute a solicitation or inducement to invest in any financial products or services offered by us. \nAny advice included in this application has been prepared without taking into account your objectives, financial situation or needs. You should consider our Risk Disclosure Notice before making any decision on whether to acquire the product described in that document."), "eulaParagraphe9": MessageLookupByLibrary.simpleMessage( "We do not guarantee your continuous access to the application or that your access or use will be error-free. \nWe will not be liable in the event that the application is unavailable to You for any reason (for example, due to computer downtime ascribable to malfunctions, upgrades, server problems, precautionary or corrective maintenance activities or interruption in telecommunication supplies). "), - "eulaTitle1": m35, + "eulaTitle1": m47, "eulaTitle10": MessageLookupByLibrary.simpleMessage("ACCESS AND SECURITY"), "eulaTitle11": MessageLookupByLibrary.simpleMessage( @@ -664,18 +745,19 @@ class MessageLookup extends MessageLookupByLibrary { "Les objets ont été exportés avec succès:"), "exportSwapsTitle": MessageLookupByLibrary.simpleMessage("Échange"), "exportTitle": MessageLookupByLibrary.simpleMessage("Exporter"), + "failedToCancelActivation": m48, "fakeBalanceAmt": MessageLookupByLibrary.simpleMessage("Montant du faux solde :"), "faqTitle": MessageLookupByLibrary.simpleMessage("Foire aux questions"), "faucetError": MessageLookupByLibrary.simpleMessage("Erreur"), - "faucetInProgress": m36, + "faucetInProgress": m49, "faucetName": MessageLookupByLibrary.simpleMessage("FAUCET"), "faucetSuccess": MessageLookupByLibrary.simpleMessage("Succès"), "faucetTimedOut": MessageLookupByLibrary.simpleMessage("La demande a expiré"), "feedNewsTab": MessageLookupByLibrary.simpleMessage("Actualités"), "feedNotFound": MessageLookupByLibrary.simpleMessage("Rien ici"), - "feedNotifTitle": m37, + "feedNotifTitle": m50, "feedReadMore": MessageLookupByLibrary.simpleMessage("Lire plus..."), "feedTab": MessageLookupByLibrary.simpleMessage("Fil"), "feedTitle": MessageLookupByLibrary.simpleMessage("Fil d\'Actualités"), @@ -688,7 +770,7 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("Fil d\'actualité mis à jour"), "feedback": MessageLookupByLibrary.simpleMessage("Envoyer des commentaires"), - "feesError": m38, + "feesError": m51, "filtersAll": MessageLookupByLibrary.simpleMessage("Tout"), "filtersButton": MessageLookupByLibrary.simpleMessage("Filtrer"), "filtersClearAll": @@ -707,18 +789,26 @@ class MessageLookup extends MessageLookupByLibrary { "filtersType": MessageLookupByLibrary.simpleMessage("Taker/Maker"), "fingerprint": MessageLookupByLibrary.simpleMessage("Empreinte digitale"), + "finishingUp": MessageLookupByLibrary.simpleMessage( + "Je termine, veuillez patienter"), + "foundQrCode": MessageLookupByLibrary.simpleMessage("Code QR trouvé"), "frenchLanguage": MessageLookupByLibrary.simpleMessage("Français"), "from": MessageLookupByLibrary.simpleMessage("De"), - "gasFee": m39, + "futureTransactions": MessageLookupByLibrary.simpleMessage( + "Nous synchroniserons les futures transactions effectuées après l\'activation associée à votre clé publique. C’est l’option la plus rapide et celle qui nécessite le moins de stockage."), + "gasFee": m52, "gasLimit": MessageLookupByLibrary.simpleMessage("limite Gas"), - "gasNotActive": m40, + "gasNotActive": m53, "gasPrice": MessageLookupByLibrary.simpleMessage("prix Gas"), "generalPinNotActive": MessageLookupByLibrary.simpleMessage( "Protection PIN pas activé.\nCamouflage PIN non disponible.\nVeuillez activer la protection PIN."), "getBackupPhrase": MessageLookupByLibrary.simpleMessage( "Important: sauvegardez votre passphrase avant de continuer!"), + "gettingTxWait": MessageLookupByLibrary.simpleMessage( + "En cours de transaction, veuillez patienter"), "goToPorfolio": MessageLookupByLibrary.simpleMessage("Ouvrir portfolio"), + "gweiError": m54, "helpLink": MessageLookupByLibrary.simpleMessage("Aide"), "helpTitle": MessageLookupByLibrary.simpleMessage("Aide et Assistance"), "hideBalance": MessageLookupByLibrary.simpleMessage("Masquer balances"), @@ -770,6 +860,7 @@ class MessageLookup extends MessageLookupByLibrary { "importSwapJsonDecodingError": MessageLookupByLibrary.simpleMessage( "Erreur décodage fichier json"), "importTitle": MessageLookupByLibrary.simpleMessage("Importer"), + "incomingTransactionsProtectionSettings": m55, "infoPasswordDialog": MessageLookupByLibrary.simpleMessage( "Si vous n\'entrez pas de mot de passe, vous devrez entrer votre passphrase chaque fois que vous souhaitez accéder à votre portefeuille."), "infoTrade1": MessageLookupByLibrary.simpleMessage( @@ -778,7 +869,7 @@ class MessageLookup extends MessageLookupByLibrary { "Cette transaction peut prendre jusqu\'à 10 minutes. NE FERMEZ PAS cette application!"), "infoWalletPassword": MessageLookupByLibrary.simpleMessage( "Vous pouvez choisir de chiffrer votre portefeuille avec un mot de passe. Si vous choisissez de ne pas utiliser de mot de passe, vous devrez entrer votre passphrase chaque fois que vous souhaitez accéder à votre portefeuille."), - "insufficientBalanceToPay": m41, + "insufficientBalanceToPay": m56, "insufficientText": MessageLookupByLibrary.simpleMessage( "Le volume minimum requis pour cet ordre est"), "insufficientTitle": @@ -787,11 +878,12 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("Rafraichir"), "internetRestored": MessageLookupByLibrary.simpleMessage("Connexion Internet Restauré"), + "invalidCoinAddress": m57, "invalidSwap": MessageLookupByLibrary.simpleMessage("Échange impossible"), "invalidSwapDetailsLink": MessageLookupByLibrary.simpleMessage("Détails"), - "isUnavailable": m42, + "isUnavailable": m58, "japaneseLanguage": MessageLookupByLibrary.simpleMessage("Japonais"), "koreanLanguage": MessageLookupByLibrary.simpleMessage("Coréen"), "language": MessageLookupByLibrary.simpleMessage("Langue"), @@ -799,7 +891,8 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("Dernières Transactions"), "legalTitle": MessageLookupByLibrary.simpleMessage("Légal"), "less": MessageLookupByLibrary.simpleMessage("Moins"), - "lessThanCaution": m43, + "lessThanCaution": m59, + "limitError": m60, "loading": MessageLookupByLibrary.simpleMessage("Chargement..."), "loadingOrderbook": MessageLookupByLibrary.simpleMessage("Chargement des ordres ..."), @@ -870,21 +963,25 @@ class MessageLookup extends MessageLookupByLibrary { "milliseconds": MessageLookupByLibrary.simpleMessage("ms"), "min": MessageLookupByLibrary.simpleMessage("MIN"), "minOrder": MessageLookupByLibrary.simpleMessage("Volume d\'odre Min:"), - "minValue": m44, - "minValueBuy": m45, - "minValueOrder": m46, - "minValueSell": m47, - "minVolumeInput": m48, + "minValue": m61, + "minValueBuy": m62, + "minValueOrder": m63, + "minValueSell": m64, + "minVolumeInput": m65, "minVolumeIsTDH": MessageLookupByLibrary.simpleMessage( "Doit être inférieur au montant de la vente"), "minVolumeTitle": MessageLookupByLibrary.simpleMessage("Volume Min requis"), "minVolumeToggle": MessageLookupByLibrary.simpleMessage( "Utiliser le volume minimal personnalisé"), + "minimizingWillTerminate": MessageLookupByLibrary.simpleMessage( + "Avertissement : la réduction de l\'application sur iOS mettra fin au processus d\'activation."), "minutes": MessageLookupByLibrary.simpleMessage("m"), - "mobileDataWarning": m49, + "mobileDataWarning": m66, + "moreInfo": + MessageLookupByLibrary.simpleMessage("Plus d\'informations"), "moreTab": MessageLookupByLibrary.simpleMessage("Plus"), - "multiActivateGas": m50, + "multiActivateGas": m67, "multiBaseAmtPlaceholder": MessageLookupByLibrary.simpleMessage("Montant"), "multiBasePlaceholder": @@ -893,7 +990,7 @@ class MessageLookup extends MessageLookupByLibrary { "multiConfirmCancel": MessageLookupByLibrary.simpleMessage("Annuler"), "multiConfirmConfirm": MessageLookupByLibrary.simpleMessage("Confirmer"), - "multiConfirmTitle": m51, + "multiConfirmTitle": m68, "multiCreate": MessageLookupByLibrary.simpleMessage("Créer"), "multiCreateOrder": MessageLookupByLibrary.simpleMessage("Ordre"), "multiCreateOrders": MessageLookupByLibrary.simpleMessage("Ordres"), @@ -909,8 +1006,8 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("Montant invalide"), "multiInvalidSellAmt": MessageLookupByLibrary.simpleMessage("Montant de vente invalide"), - "multiLowGas": m52, - "multiLowerThanFee": m53, + "multiLowGas": m69, + "multiLowerThanFee": m70, "multiMaxSellAmt": MessageLookupByLibrary.simpleMessage("Montant de vente Max est"), "multiMinReceiveAmt": MessageLookupByLibrary.simpleMessage( @@ -945,7 +1042,7 @@ class MessageLookup extends MessageLookupByLibrary { "Pas d\'articles sélectionnés"), "noMatchingOrders": MessageLookupByLibrary.simpleMessage( "Pas d\'ordres compatibles trouvés"), - "noOrder": m54, + "noOrder": m71, "noOrderAvailable": MessageLookupByLibrary.simpleMessage("Cliquez pour créer un ordre"), "noOrders": MessageLookupByLibrary.simpleMessage( @@ -960,7 +1057,8 @@ class MessageLookup extends MessageLookupByLibrary { "noTxs": MessageLookupByLibrary.simpleMessage("Aucune transactions"), "nonNumericInput": MessageLookupByLibrary.simpleMessage("Entrer une valeur numérique"), - "notEnoughGas": m55, + "none": MessageLookupByLibrary.simpleMessage("Aucun"), + "notEnoughGas": m72, "notEnoughtBalanceForFee": MessageLookupByLibrary.simpleMessage( "Pas assez de solde pour les frais - échangez un montant inférieur"), "noteOnOrder": MessageLookupByLibrary.simpleMessage( @@ -969,24 +1067,24 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("Ajouter une Note"), "noteTitle": MessageLookupByLibrary.simpleMessage("Note"), "nothingFound": MessageLookupByLibrary.simpleMessage("Pas de résultat"), - "notifSwapCompletedText": m56, + "notifSwapCompletedText": m73, "notifSwapCompletedTitle": MessageLookupByLibrary.simpleMessage("Échange terminé"), - "notifSwapFailedText": m57, + "notifSwapFailedText": m74, "notifSwapFailedTitle": MessageLookupByLibrary.simpleMessage("Échange échoué"), - "notifSwapStartedText": m58, + "notifSwapStartedText": m75, "notifSwapStartedTitle": MessageLookupByLibrary.simpleMessage("Nouvel échange démarré"), "notifSwapStatusTitle": MessageLookupByLibrary.simpleMessage( "Statut de l\'échange modifié"), - "notifSwapTimeoutText": m59, + "notifSwapTimeoutText": m76, "notifSwapTimeoutTitle": MessageLookupByLibrary.simpleMessage("Délais d\'échange dépassé"), - "notifTxText": m60, + "notifTxText": m77, "notifTxTitle": MessageLookupByLibrary.simpleMessage("Transaction entrante"), - "numberAssets": m61, + "numberAssets": m78, "officialPressRelease": MessageLookupByLibrary.simpleMessage( "Communiqué de presse officiel"), "okButton": MessageLookupByLibrary.simpleMessage("Ok"), @@ -995,14 +1093,16 @@ class MessageLookup extends MessageLookupByLibrary { "oldLogsUsed": MessageLookupByLibrary.simpleMessage("Espace utilisé"), "openMessage": MessageLookupByLibrary.simpleMessage("Ouvrir Message d\'Erreur"), - "orderCancel": m62, + "orderBookLess": MessageLookupByLibrary.simpleMessage("Moins"), + "orderBookMore": MessageLookupByLibrary.simpleMessage("Plus"), + "orderCancel": m79, "orderCreated": MessageLookupByLibrary.simpleMessage("Ordre créée"), "orderCreatedInfo": MessageLookupByLibrary.simpleMessage("Ordre créée avec succès"), "orderDetailsAddress": MessageLookupByLibrary.simpleMessage("Adresses"), "orderDetailsCancel": MessageLookupByLibrary.simpleMessage("Annuler"), - "orderDetailsExpedient": m63, - "orderDetailsExpensive": m64, + "orderDetailsExpedient": m80, + "orderDetailsExpensive": m81, "orderDetailsFor": MessageLookupByLibrary.simpleMessage("pour"), "orderDetailsIdentical": MessageLookupByLibrary.simpleMessage("Identique au CEX"), @@ -1016,7 +1116,7 @@ class MessageLookup extends MessageLookupByLibrary { "Ouvrez les détails en un seul clic et sélectionnez Commander en appuyant longuement"), "orderDetailsSpend": MessageLookupByLibrary.simpleMessage("Dépenser"), "orderDetailsTitle": MessageLookupByLibrary.simpleMessage("Détails"), - "orderFilled": m65, + "orderFilled": m82, "orderMatched": MessageLookupByLibrary.simpleMessage("Ordre trouvé"), "orderMatching": MessageLookupByLibrary.simpleMessage("Recherche d\'ordre"), @@ -1026,9 +1126,9 @@ class MessageLookup extends MessageLookupByLibrary { "orders": MessageLookupByLibrary.simpleMessage("ordres"), "ordersActive": MessageLookupByLibrary.simpleMessage("Actif"), "ordersHistory": MessageLookupByLibrary.simpleMessage("Historique"), - "ordersTableAmount": m66, - "ordersTablePrice": m67, - "ordersTableTotal": m68, + "ordersTableAmount": m83, + "ordersTablePrice": m84, + "ordersTableTotal": m85, "overwrite": MessageLookupByLibrary.simpleMessage("Écraser"), "ownOrder": MessageLookupByLibrary.simpleMessage( " Ceci est votre propre commande!"), @@ -1039,6 +1139,8 @@ class MessageLookup extends MessageLookupByLibrary { "paidWith": MessageLookupByLibrary.simpleMessage("Payé avec"), "passwordRequirement": MessageLookupByLibrary.simpleMessage( "Le mot de passe doit contenir au moins 12 caractères, avec une minuscule, une majuscule et un symbole spécial."), + "pastTransactionsFromDate": MessageLookupByLibrary.simpleMessage( + "Votre portefeuille affichera vos transactions passées effectuées après la date spécifiée."), "paymentUriDetailsAccept": MessageLookupByLibrary.simpleMessage("Payer"), "paymentUriDetailsAcceptQuestion": MessageLookupByLibrary.simpleMessage( @@ -1053,9 +1155,12 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("Annuler"), "paymentUriDetailsTitle": MessageLookupByLibrary.simpleMessage("Paiement demandé"), - "paymentUriInactiveCoin": m69, + "paymentUriInactiveCoin": m86, "placeOrder": MessageLookupByLibrary.simpleMessage("Passer votre ordre"), + "pleaseAcceptAllCoinActivationRequests": + MessageLookupByLibrary.simpleMessage( + "Veuillez accepter toutes les demandes spéciales d’activation de pièces ou désélectionner les pièces."), "pleaseAddCoin": MessageLookupByLibrary.simpleMessage( "Veuillez ajouter une Crypto-monnaie"), "pleaseRestart": MessageLookupByLibrary.simpleMessage( @@ -1075,21 +1180,23 @@ class MessageLookup extends MessageLookupByLibrary { "protectionCtrlWarning": MessageLookupByLibrary.simpleMessage( "Attention, cet \"atomic swap\" n\'est pas protégé par dPoW."), "pubkey": MessageLookupByLibrary.simpleMessage("Pubkey"), + "qrCodeScanner": + MessageLookupByLibrary.simpleMessage("Scanner de codes QR"), "question_1": MessageLookupByLibrary.simpleMessage("Stockez-vous ma clé privé?"), - "question_10": m70, - "question_2": m71, + "question_10": m87, + "question_2": m88, "question_3": MessageLookupByLibrary.simpleMessage( "Combien de temps dure chaque échange atomique ?"), "question_4": MessageLookupByLibrary.simpleMessage( "Dois-je être en ligne pendant toute la durée de l\'échange ?"), - "question_5": m72, + "question_5": m89, "question_6": MessageLookupByLibrary.simpleMessage( "Offrez-vous une assistance aux utilisateurs ?"), "question_7": MessageLookupByLibrary.simpleMessage( "Avez-vous des restrictions par pays ?"), - "question_8": m73, - "question_9": m74, + "question_8": m90, + "question_9": m91, "rebrandingAnnouncement": MessageLookupByLibrary.simpleMessage( "C\'est une nouvelle ère ! Nous avons officiellement changé notre nom de \'AtomicDEX\' en \'Komodo Wallet\'"), "receive": MessageLookupByLibrary.simpleMessage("RECEVOIR"), @@ -1129,7 +1236,7 @@ class MessageLookup extends MessageLookupByLibrary { "rewardsReadMore": MessageLookupByLibrary.simpleMessage( "En savoir plus sur les récompenses des utilisateurs actifs KMD"), "rewardsReceive": MessageLookupByLibrary.simpleMessage("Recevoir"), - "rewardsSuccess": m75, + "rewardsSuccess": m92, "rewardsTableFiat": MessageLookupByLibrary.simpleMessage("Fiat"), "rewardsTableRewards": MessageLookupByLibrary.simpleMessage("Récompense,\nKMD"), @@ -1140,9 +1247,9 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("Information récompense:"), "rewardsTableUXTO": MessageLookupByLibrary.simpleMessage("mnt UTXO,\nKMD"), - "rewardsTimeDays": m76, - "rewardsTimeHours": m77, - "rewardsTimeMin": m78, + "rewardsTimeDays": m93, + "rewardsTimeHours": m94, + "rewardsTimeMin": m95, "rewardsTitle": MessageLookupByLibrary.simpleMessage("Information récompense"), "russianLanguage": MessageLookupByLibrary.simpleMessage("Russe"), @@ -1188,13 +1295,15 @@ class MessageLookup extends MessageLookupByLibrary { "Sélectionner tous les tokens Test Assets"), "searchFilterSubtitleUBQ": MessageLookupByLibrary.simpleMessage( "Sélectionner tous les tokens Ubiq"), + "searchFilterSubtitleZHTLC": MessageLookupByLibrary.simpleMessage( + "Sélectionnez toutes les pièces ZHTLC"), "searchFilterSubtitleutxo": MessageLookupByLibrary.simpleMessage( "Sélectionner tous les tokens UTXO"), "searchForTicker": MessageLookupByLibrary.simpleMessage("Rechercher un téléscripteur"), "seconds": MessageLookupByLibrary.simpleMessage("s"), "security": MessageLookupByLibrary.simpleMessage("Sécurité"), - "seeOrders": m79, + "seeOrders": m96, "seeTxHistory": MessageLookupByLibrary.simpleMessage( "Voir l\'historique de transaction"), "seedPhrase": MessageLookupByLibrary.simpleMessage("Passphrases"), @@ -1210,6 +1319,8 @@ class MessageLookup extends MessageLookupByLibrary { "Sélectionnez la crypto-monnaie que vous souhaitez acheter"), "selectCoinToSell": MessageLookupByLibrary.simpleMessage( "Sélectionnez la crypto-monnaie que vous souhaitez vendre"), + "selectDate": + MessageLookupByLibrary.simpleMessage("Sélectionnez une date"), "selectFileImport": MessageLookupByLibrary.simpleMessage("Selectionner fichier"), "selectLanguage": @@ -1237,34 +1348,38 @@ class MessageLookup extends MessageLookupByLibrary { "settingLanguageTitle": MessageLookupByLibrary.simpleMessage("Langues"), "settings": MessageLookupByLibrary.simpleMessage("Réglages"), "share": MessageLookupByLibrary.simpleMessage("Partager"), - "shareAddress": m80, + "shareAddress": m97, + "shouldScanPastTransaction": m98, + "showAddress": + MessageLookupByLibrary.simpleMessage("Afficher l\'adresse"), "showDetails": MessageLookupByLibrary.simpleMessage("Afficher Détails"), "showMyOrders": MessageLookupByLibrary.simpleMessage("MONTRER MES COMMANDES"), + "showingOrders": m99, "signInWithPassword": MessageLookupByLibrary.simpleMessage( "Se connecter avec mot de passe"), "signInWithSeedPhrase": MessageLookupByLibrary.simpleMessage( "Connectez-vous avec la passphrase"), "simple": MessageLookupByLibrary.simpleMessage("Facile"), "simpleTradeActivate": MessageLookupByLibrary.simpleMessage("Activer"), - "simpleTradeBuyHint": m81, + "simpleTradeBuyHint": m100, "simpleTradeBuyTitle": MessageLookupByLibrary.simpleMessage("Acheter"), "simpleTradeClose": MessageLookupByLibrary.simpleMessage("Fermer"), - "simpleTradeMaxActiveCoins": m82, - "simpleTradeNotActive": m83, + "simpleTradeMaxActiveCoins": m101, + "simpleTradeNotActive": m102, "simpleTradeRecieve": MessageLookupByLibrary.simpleMessage("Recevoir"), - "simpleTradeSellHint": m84, + "simpleTradeSellHint": m103, "simpleTradeSellTitle": MessageLookupByLibrary.simpleMessage("Vendre"), "simpleTradeSend": MessageLookupByLibrary.simpleMessage("Envoyer"), "simpleTradeShowLess": MessageLookupByLibrary.simpleMessage("Afficher moins"), "simpleTradeShowMore": MessageLookupByLibrary.simpleMessage("Afficher plus"), - "simpleTradeUnableActivate": m85, + "simpleTradeUnableActivate": m104, "skip": MessageLookupByLibrary.simpleMessage("Passer"), "snackbarDismiss": MessageLookupByLibrary.simpleMessage("Rejeter"), - "soundCantPlayThatMsg": m86, - "soundPlayedWhen": m87, + "soundCantPlayThatMsg": m105, + "soundPlayedWhen": m106, "soundSettingsLink": MessageLookupByLibrary.simpleMessage("Son"), "soundSettingsTitle": MessageLookupByLibrary.simpleMessage("Paramètres son"), @@ -1276,10 +1391,13 @@ class MessageLookup extends MessageLookupByLibrary { "soundsNote": MessageLookupByLibrary.simpleMessage( "Notez que vous pouvez définir vos sons personnalisés dans les paramètres de l\'application."), "spanishLanguage": MessageLookupByLibrary.simpleMessage("Espagnol"), + "startDate": MessageLookupByLibrary.simpleMessage("Date de début"), + "startSwap": + MessageLookupByLibrary.simpleMessage("Commencer l\'échange"), "step": MessageLookupByLibrary.simpleMessage("Étape"), "success": MessageLookupByLibrary.simpleMessage("Succès!"), "support": MessageLookupByLibrary.simpleMessage("Support"), - "supportLinksDesc": m88, + "supportLinksDesc": m107, "swap": MessageLookupByLibrary.simpleMessage("échanger"), "swapCurrent": MessageLookupByLibrary.simpleMessage("Actuel"), "swapDetailTitle": MessageLookupByLibrary.simpleMessage( @@ -1287,9 +1405,9 @@ class MessageLookup extends MessageLookupByLibrary { "swapEstimated": MessageLookupByLibrary.simpleMessage("Estimation"), "swapFailed": MessageLookupByLibrary.simpleMessage("L\'échange a échoué"), - "swapGasActivate": m89, - "swapGasAmount": m90, - "swapGasAmountRequired": m91, + "swapGasActivate": m108, + "swapGasAmount": m109, + "swapGasAmountRequired": m110, "swapOngoing": MessageLookupByLibrary.simpleMessage("Echange en cours"), "swapProgress": MessageLookupByLibrary.simpleMessage("Détails de la progression"), @@ -1298,6 +1416,13 @@ class MessageLookup extends MessageLookupByLibrary { "swapTotal": MessageLookupByLibrary.simpleMessage("Total"), "swapUUID": MessageLookupByLibrary.simpleMessage("UUID échange"), "switchTheme": MessageLookupByLibrary.simpleMessage("Changer de thème"), + "syncFromDate": MessageLookupByLibrary.simpleMessage( + "Synchroniser à partir de la date spécifiée"), + "syncFromSaplingActivation": MessageLookupByLibrary.simpleMessage( + "Synchronisation à partir de l\'activation des jeunes arbres"), + "syncNewTransactions": MessageLookupByLibrary.simpleMessage( + "Synchroniser les nouvelles transactions"), + "syncTransactionsQuestion": m111, "tagAVX20": MessageLookupByLibrary.simpleMessage("AVX20"), "tagBEP20": MessageLookupByLibrary.simpleMessage("BEP20"), "tagERC20": MessageLookupByLibrary.simpleMessage("ERC20"), @@ -1312,6 +1437,7 @@ class MessageLookup extends MessageLookupByLibrary { "tagQRC20": MessageLookupByLibrary.simpleMessage("QRC20"), "tagSBCH": MessageLookupByLibrary.simpleMessage("SBCH"), "tagUBQ": MessageLookupByLibrary.simpleMessage("UBQ"), + "tagZHTLC": MessageLookupByLibrary.simpleMessage("ZHTLC"), "takerOrder": MessageLookupByLibrary.simpleMessage("Ordre Taker"), "timeOut": MessageLookupByLibrary.simpleMessage("Temps écoulé"), "titleCreatePassword": @@ -1340,6 +1466,12 @@ class MessageLookup extends MessageLookupByLibrary { "tradingFee": MessageLookupByLibrary.simpleMessage("frais de négociation :"), "tradingMode": MessageLookupByLibrary.simpleMessage("Trading Mode:"), + "transactionAddress": + MessageLookupByLibrary.simpleMessage("Adresse de transaction"), + "transactionHidden": + MessageLookupByLibrary.simpleMessage("Transaction masquée"), + "transactionHiddenPhishing": MessageLookupByLibrary.simpleMessage( + "Cette transaction a été masquée en raison d\'une éventuelle tentative de phishing."), "tryRestarting": MessageLookupByLibrary.simpleMessage( "Si même alors certaines pièces ne sont toujours pas activées, essayez de redémarrer l\'application."), "turkishLanguage": MessageLookupByLibrary.simpleMessage("Turque"), @@ -1355,25 +1487,25 @@ class MessageLookup extends MessageLookupByLibrary { "txLimitExceeded": MessageLookupByLibrary.simpleMessage( "Trop de demandes.\nLimite de demandes d\'historique des transactions dépassée.\nVeuillez réessayer plus tard."), "txNotConfirmed": MessageLookupByLibrary.simpleMessage("NON CONFIRMÉ"), - "txleft": m92, + "txleft": m112, "ukrainianLanguage": MessageLookupByLibrary.simpleMessage("Ukrainien"), "unlock": MessageLookupByLibrary.simpleMessage("ouvrir"), "unlockFunds": MessageLookupByLibrary.simpleMessage("Débloquer Fonds"), - "unlockSuccess": m93, + "unlockSuccess": m113, "unspendable": MessageLookupByLibrary.simpleMessage("indépensable"), "updatesAvailable": MessageLookupByLibrary.simpleMessage("Nouvelle version disponible"), "updatesChecking": MessageLookupByLibrary.simpleMessage("Recherche de mise à jour..."), - "updatesCurrentVersion": m94, + "updatesCurrentVersion": m114, "updatesNotifAvailable": MessageLookupByLibrary.simpleMessage( "Nouvelle version disponible. Veuillez mettre à jour."), - "updatesNotifAvailableVersion": m95, + "updatesNotifAvailableVersion": m115, "updatesNotifTitle": MessageLookupByLibrary.simpleMessage("Mise à jour disponible"), "updatesSkip": MessageLookupByLibrary.simpleMessage("Ignorer pour l\'instant"), - "updatesTitle": m96, + "updatesTitle": m116, "updatesUpToDate": MessageLookupByLibrary.simpleMessage("Déjà à jour"), "updatesUpdate": MessageLookupByLibrary.simpleMessage("Update"), "uriInsufficientBalanceSpan1": MessageLookupByLibrary.simpleMessage( @@ -1399,23 +1531,25 @@ class MessageLookup extends MessageLookupByLibrary { "warningOkBtn": MessageLookupByLibrary.simpleMessage("Ok"), "warningShareLogs": MessageLookupByLibrary.simpleMessage( "Attention - dans des cas particuliers, ces données de journal contiennent des informations sensibles qui peuvent être utilisées pour dépenser des pièces à partir d\'échanges échoués !"), - "weFailedTo": m97, - "weFailedToActivate": m98, - "welcomeInfo": m99, + "weFailedTo": m117, + "weFailedToActivate": m118, + "welcomeInfo": m119, "welcomeLetSetUp": MessageLookupByLibrary.simpleMessage("CONFIGURONS!"), "welcomeTitle": MessageLookupByLibrary.simpleMessage("BIENVENUE"), "welcomeWallet": MessageLookupByLibrary.simpleMessage("portefeuille"), "willBeRedirected": MessageLookupByLibrary.simpleMessage( "Vous serez redirigé vers la page du portfolio à la fin."), + "willTakeTime": MessageLookupByLibrary.simpleMessage( + "Cela prendra un certain temps et l\'application doit rester au premier plan.\nLa fermeture de l\'application pendant l\'activation est en cours peut entraîner des problèmes."), "withdraw": MessageLookupByLibrary.simpleMessage("Envoyer"), - "withdrawCameraAccessText": m100, + "withdrawCameraAccessText": m120, "withdrawCameraAccessTitle": MessageLookupByLibrary.simpleMessage("Accès refusé"), "withdrawConfirm": MessageLookupByLibrary.simpleMessage("Confirmer le retrait"), "withdrawConfirmError": MessageLookupByLibrary.simpleMessage( "Un problème est survenu. Réessayez plus tard."), - "withdrawValue": m101, + "withdrawValue": m121, "wrongCoinSpan1": MessageLookupByLibrary.simpleMessage( "Vous essayez de scanner un code QR de paiement pour"), "wrongCoinSpan2": @@ -1437,7 +1571,7 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage( "vous avez une commande avec laquelle de nouvelles commandes peuvent correspondre"), "youAreSending": MessageLookupByLibrary.simpleMessage("Vous envoyez:"), - "youWillReceiveClaim": m102, + "youWillReceiveClaim": m122, "youWillReceived": MessageLookupByLibrary.simpleMessage("Vous allez recevoir:"), "yourWallet": MessageLookupByLibrary.simpleMessage("votre portefeuille") diff --git a/lib/l10n/messages_hu.dart b/lib/l10n/messages_hu.dart index 1f406f768..af1a5a026 100644 --- a/lib/l10n/messages_hu.dart +++ b/lib/l10n/messages_hu.dart @@ -19,264 +19,306 @@ typedef String MessageIfAbsent(String messageStr, List args); class MessageLookup extends MessageLookupByLibrary { String get localeName => 'hu'; - static m0(name) => "${name} sikeresen aktiválva !"; + static m0(protocolName) => "Aktiválja a ${protocolName} érméket?"; - static m1(title) => + static m1(coinName) => "${coinName} aktiválása"; + + static m2(coinName) => "${coinName} Aktiválás"; + + static m3(protocolName) => "${protocolName} Aktiválás folyamatban"; + + static m4(name) => "${name} sikeresen aktiválva !"; + + static m5(title) => "Csak a ${title} címekkel rendelkező kapcsolatok megjelenítése"; - static m2(abbr) => + static m6(abbr) => "Nem tud pénzt küldeni a ${abbr} címre, mert a ${abbr} nincs aktiválva. Kérjük, menjen a portfólióhoz."; - static m3(appName) => + static m7(appName) => "Nem! Az ${appName} nem felügyeleti joggal rendelkezik. Soha nem tárolunk semmilyen érzékeny adatot, beleértve az Ön privát kulcsait, magvas kifejezéseit vagy PIN-kódját. Ezeket az adatokat csak a felhasználó készülékén tároljuk, és soha nem hagyják el azt. Ön teljes mértékben ura az eszközeinek."; - static m4(appName) => - "Az ${appName} elérhető mobilra Android és iPhone operációs rendszereken, valamint asztali számítógépre Windows, Mac és Linux operációs rendszereken."; + static m8(appName) => + "Az ${appName} mobilra Androidon és iPhone-on, asztali számítógépen pedig Windows, Mac és Linux operációs rendszeren érhető el."; - static m5(appName) => + static m9(appName) => "Más DEX-ek általában csak olyan eszközökkel lehet kereskedni, amelyek egyetlen blokklánc-hálózaton alapulnak, proxy tokeneket használnak, és csak egyetlen megbízás leadását teszik lehetővé ugyanazokkal az eszközökkel.\n\nAz ${appName} lehetővé teszi, hogy natívan, proxy tokenek nélkül kereskedhessen két különböző blokklánc hálózaton. Több megbízást is adhat ugyanazokkal az alapokkal. Például 0,1 BTC-t adhatsz el KMD, QTUM vagy VRSC ellenében - az első teljesített megbízás automatikusan törli az összes többi megbízást."; - static m6(appName) => + static m10(appName) => "Az egyes swapok feldolgozási idejét több tényező határozza meg. A kereskedett eszközök blokkolási ideje az egyes hálózatoktól függ (a Bitcoin jellemzően a leglassabb) Ezen kívül a felhasználó testre szabhatja a biztonsági beállításokat. Például kérheti az ${appName}-t, hogy egy KMD tranzakciót már 3 megerősítés után véglegesnek tekintsen, ami rövidebbé teszi a csereidőt, mintha jegyesítésre kellene várni."; - static m7(appName) => + static m11(appName) => "Két díjkategóriát kell figyelembe venni a ${appName}-on történő kereskedés során.\n\n 1. Az ${appName} körülbelül 0,13%-ot (a kereskedési volumen 1/777-ét, de nem kevesebb, mint 0,0001) számít fel kereskedési díjként a taker megbízásokért, a maker megbízásoknak pedig nulla a díja.\n\n 2. Mind a makereknek, mind a takeereknek normál hálózati díjakat kell fizetniük az érintett blokkláncoknak, amikor atomi swap tranzakciókat hajtanak végre.\n\n A hálózati díjak a kiválasztott kereskedési párostól függően nagymértékben eltérhetnek."; - static m8(name, link, appName, appCompanyShort) => + static m12(name, link, appName, appCompanyShort) => "Igen! A ${appName} támogatást nyújt az ${appCompanyShort} ${name}-n keresztül. A csapat és a közösség mindig szívesen segít!"; - static m9(appName) => + static m13(appName) => "Nem! Az ${appName} teljesen decentralizált. Nem lehetséges a felhasználók hozzáférését harmadik fél által korlátozni."; - static m10(appName, appCompanyShort) => + static m14(appName, appCompanyShort) => "Az ${appName}-t az ${appCompanyShort} csapata fejleszti. Az ${appCompanyShort} az egyik legelismertebb blokkláncprojekt, amely olyan innovatív megoldásokon dolgozik, mint az atomic swap, a Delayed Proof of Work és az interoperábilis multi-chain architektúra."; - static m11(appName) => - "Abszolút! További részletekért olvassa el fejlesztői dokumentációnkat, vagy vegye fel velünk a kapcsolatot partnerségi kérdéseivel. Konkrét technikai kérdése van? Az ${appName} fejlesztői közösség mindig készen áll a segítségre!"; + static m15(appName) => + "Teljesen! További részletekért olvassa el fejlesztői dokumentációnkat, vagy forduljon hozzánk partnerségi kérdéseivel. Konkrét technikai kérdése van? A ${appName} fejlesztői közössége mindig készen áll a segítségére!"; + + static m16(coinName1, coinName2) => "${coinName1}/${coinName2} alapján"; - static m12(batteryLevelCritical) => + static m17(batteryLevelCritical) => "Az akkumulátor töltöttsége kritikus (${batteryLevelCritical}%) a biztonságos cseréhez. Kérjük, töltse fel, és próbálja meg újra."; - static m13(batteryLevelLow) => + static m18(batteryLevelLow) => "Az akkumulátor töltöttsége alacsonyabb, mint ${batteryLevelLow}%. Kérjük, fontolja meg a telefon töltését."; - static m14(seconde) => + static m19(seconde) => "A rendelés egyeztetése folyamatban van, kérjük várjon ${seconde} másodperceket!"; - static m15(index) => "Írja be a ${index}. szót"; + static m20(index) => "Írja be a ${index}. szót"; + + static m21(index) => "Mi a ${index}. szó a SEED-ben?"; + + static m22(coin) => "${coin} aktiválása megszakítva"; - static m16(index) => "Mi a ${index}. szó a SEED-ben?"; + static m23(coin) => "${coin} sikeresen aktiválva"; - static m17(name) => + static m24(protocolName) => "${protocolName} érme aktiválva van"; + + static m25(protocolName) => "${protocolName} érme sikeresen aktiválva"; + + static m26(protocolName) => "A(z) ${protocolName} érmék nincsenek aktiválva"; + + static m27(name) => "Biztos vagy benne, hogy törölni akarod a ${name} kontaktot?"; - static m18(iUnderstand) => + static m28(iUnderstand) => "Az egyéni magvas kifejezések kevésbé biztonságosak és könnyebben feltörhetők, mint egy generált, BIP39 szabványnak megfelelő magvas kifejezés vagy magánkulcs (WIF). Annak megerősítéséhez, hogy tisztában van a kockázattal és tudja, mit csinál, írja be az alábbi mezőbe a \"${iUnderstand}\" szöveget."; - static m19(abbr) => "Bemenet ${abbr} cím"; + static m29(coinName) => "megkapja a ${coinName} tranzakciós díjat"; + + static m30(coinName) => "küldje el a ${coinName} tranzakciós díjat"; - static m20(selected, remains) => + static m31(abbr) => "Bemenet ${abbr} cím"; + + static m32(selected, remains) => "Továbbra is engedélyezheti a következőt: ${remains}, Kijelölve: ${selected}"; - static m21(gas) => "Nincs elég gáz - használjon minimum ${gas} Gwei"; + static m33(gas) => "Nincs elég gáz - használjon minimum ${gas} Gwei"; - static m22(appName, appCompanyLong) => + static m34(appName, appCompanyLong) => "This End-User License Agreement (\'EULA\') is a legal agreement between you and ${appCompanyLong}.\n\nThis EULA agreement governs your acquisition and use of our ${appName} mobile software (\'Software\', \'Mobile Application\', \'Application\' or \'App\') directly from ${appCompanyLong} or indirectly through a ${appCompanyLong} authorized entity, reseller or distributor (a \'Distributor\').\nPlease read this EULA agreement carefully before completing the installation process and using the ${appName} mobile software. It provides a license to use the ${appName} mobile software and contains warranty information and liability disclaimers.\nIf you register for the beta program of the ${appName} mobile software, this EULA agreement will also govern that trial. By clicking \'accept\' or installing and/or using the ${appName} mobile software, you are confirming your acceptance of the Software and agreeing to become bound by the terms of this EULA agreement.\nIf you are entering into this EULA agreement on behalf of a company or other legal entity, you represent that you have the authority to bind such entity and its affiliates to these terms and conditions. If you do not have such authority or if you do not agree with the terms and conditions of this EULA agreement, do not install or use the Software, and you must not accept this EULA agreement.\nThis EULA agreement shall apply only to the Software supplied by ${appCompanyLong} herewith regardless of whether other software is referred to or described herein. The terms also apply to any ${appCompanyLong} updates, supplements, Internet-based services, and support services for the Software, unless other terms accompany those items on delivery. If so, those terms apply.\n\nLICENSE GRANT\n\n${appCompanyLong} hereby grants you a personal, non-transferable, non-exclusive license to use the ${appName} mobile software on your devices in accordance with the terms of this EULA agreement.\n\nYou are permitted to load the ${appName} mobile software (for example a PC, laptop, mobile or tablet) under your control. You are responsible for ensuring your device meets the minimum security and resource requirements of the ${appName} mobile software.\n\nYou are not permitted to:\n(a) edit, alter, modify, adapt, translate or otherwise change the whole or any part of the Software nor permit the whole or any part of the Software to be combined with or become incorporated in any other software, nor decompile, disassemble or reverse engineer the Software or attempt to do any such things;\n(b) reproduce, copy, distribute, resell or otherwise use the Software for any commercial purpose;\n(c) use the Software in any way which breaches any applicable local, national or international law;\n(d) use the Software for any purpose that ${appCompanyLong} considers is a breach of this EULA agreement.\n\nINTELLECTUAL PROPERTY AND OWNERSHIP\n\n${appCompanyLong} shall at all times retain ownership of the Software as originally downloaded by you and all subsequent downloads of the Software by you. The Software (and the copyright, and other intellectual property rights of whatever nature in the Software, including any modifications made thereto) are and shall remain the property of ${appCompanyLong}.\n\n${appCompanyLong} reserves the right to grant licenses to use the Software to third parties.\n\nTERMINATION\n\nThis EULA agreement is effective from the date you first use the Software and shall continue until terminated. You may terminate it at any time upon written notice to ${appCompanyLong}.\nIt will also terminate immediately if you fail to comply with any term of this EULA agreement. Upon such termination, the licenses granted by this EULA agreement will immediately terminate and you agree to stop all access and use of the Software. The provisions that by their nature continue and survive will survive any termination of this EULA agreement.\n\nGOVERNING LAW\n\nThis EULA agreement, and any dispute arising out of or in connection with this EULA agreement, shall be governed by and construed in accordance with the laws of Vietnam.\n\nThis document was last updated on January 31st, 2020"; - static m23(appCompanyLong) => + static m35(appCompanyLong) => "${appCompanyLong} is the owner and/or authorised user of all trademarks, service marks, design marks, patents, copyrights, database rights and all other intellectual property appearing on or contained within the application, unless otherwise indicated. All information, text, material, graphics, software and advertisements on the application interface are copyright of ${appCompanyLong}, its suppliers and licensors, unless otherwise expressly indicated by ${appCompanyLong}. \nExcept as provided in the Terms, use of the application does not grant You any right, title, interest or license to any such intellectual property You may have access to on the application. \nWe own the rights, or have permission to use, the trademarks listed in our application. You are not authorised to use any of those trademarks without our written authorization – doing so would constitute a breach of our or another party’s intellectual property rights. \nAlternatively, we might authorise You to use the content in our application if You previously contact us and we agree in writing."; - static m24(appCompanyShort, appCompanyLong) => + static m36(appCompanyShort, appCompanyLong) => "${appCompanyLong} cannot guarantee the safety or security of your computer systems. We do not accept liability for any loss or corruption of electronically stored data or any damage to any computer system occurred in connection with the use of the application or of the user content.\n${appCompanyLong} makes no representation or warranty of any kind, express or implied, as to the operation of the application or the user content. You expressly agree that your use of the application is entirely at your sole risk.\nYou agree that the content provided in the application and the user content do not constitute financial product, legal or taxation advice, and You agree on not representing the user content or the application as such.\nTo the extent permitted by current legislation, the application is provided on an “as is, as available” basis.\n\n${appCompanyLong} expressly disclaims all responsibility for any loss, injury, claim, liability, or damage, or any indirect, incidental, special or consequential damages or loss of profits whatsoever resulting from, arising out of or in any way related to:\n(a) any errors in or omissions of the application and/or the user content, including but not limited to technical inaccuracies and typographical errors;\n(b) any third party website, application or content directly or indirectly accessed through links in the application, including but not limited to any errors or omissions;\n(c) the unavailability of the application or any portion of it;\n(d) your use of the application;\n(e) your use of any equipment or software in connection with the application.\n\nAny Services offered in connection with the Platform are provided on an \'as is\' basis, without any representation or warranty, whether express, implied or statutory. To the maximum extent permitted by applicable law, we specifically disclaim any implied warranties of title, merchantability, suitability for a particular purpose and/or non-infringement. We do not make any representations or warranties that use of the Platform will be continuous, uninterrupted, timely, or error-free.\nWe make no warranty that any Platform will be free from viruses, malware, or other related harmful material and that your ability to access any Platform will be uninterrupted. Any defects or malfunction in the product should be directed to the third party offering the Platform, not to ${appCompanyShort}.\nWe will not be responsible or liable to You for any loss of any kind, from action taken, or taken in reliance on the material or information contained in or through the Platform.\nThis is experimental and unfinished software. Use at your own risk. No warranty for any kind of damage. By using this application you agree to this terms and conditions."; - static m25(appCompanyLong) => + static m37(appCompanyLong) => "You agree and understand that there are risks associated with utilizing Services involving Virtual Currencies including, but not limited to, the risk of failure of hardware, software and internet connections, the risk of malicious software introduction, and the risk that third parties may obtain unauthorized access to information stored within your Wallet, including but not limited to your public and private keys. You agree and understand that ${appCompanyLong} will not be responsible for any communication failures, disruptions, errors, distortions or delays You may experience when using the Services, however caused.\nYou accept and acknowledge that there are risks associated with utilizing any virtual currency network, including, but not limited to, the risk of unknown vulnerabilities in or unanticipated changes to the network protocol. You acknowledge and accept that ${appCompanyLong} has no control over any cryptocurrency network and will not be responsible for any harm occurring as a result of such risks, including, but not limited to, the inability to reverse a transaction, and any losses in connection therewith due to erroneous or fraudulent actions.\nThe risk of loss in using Services involving Virtual Currencies may be substantial and losses may occur over a short period of time. In addition, price and liquidity are subject to significant fluctuations that may be unpredictable.\nVirtual Currencies are not legal tender and are not backed by any sovereign government. In addition, the legislative and regulatory landscape around Virtual Currencies is constantly changing and may affect your ability to use, transfer, or exchange Virtual Currencies.\nCFDs are complex instruments and come with a high risk of losing money rapidly due to leverage. 80.6% of retail investor accounts lose money when trading CFDs with this provider. You should consider whether You understand how CFDs work and whether You can afford to take the high risk of losing your money."; - static m26(appCompanyLong) => + static m38(appCompanyLong) => "You agree to indemnify, defend and hold harmless ${appCompanyLong}, its officers, directors, employees, agents, licensors, suppliers and any third party information providers to the application from and against all losses, expenses, damages and costs, including reasonable lawyer fees, resulting from any violation of the Terms by You.\nYou also agree to indemnify ${appCompanyLong} against any claims that information or material which You have submitted to ${appCompanyLong} is in violation of any law or in breach of any third party rights (including, but not limited to, claims in respect of defamation, invasion of privacy, breach of confidence, infringement of copyright or infringement of any other intellectual property right)."; - static m27(appCompanyLong) => + static m39(appCompanyLong) => "In order to be completed, any Virtual Currency transaction created with the ${appCompanyLong} must be confirmed and recorded in the Virtual Currency ledger associated with the relevant Virtual Currency network. Such networks are decentralized, peer-to-peer networks supported by independent third parties, which are not owned, controlled or operated by ${appCompanyLong}.\n${appCompanyLong} has no control over any Virtual Currency network and therefore cannot and does not ensure that any transaction details You submit via our Services will be confirmed on the relevant Virtual Currency network. You agree and understand that the transaction details You submit via our Services may not be completed, or may be substantially delayed, by the Virtual Currency network used to process the transaction. We do not guarantee that the Wallet can transfer title or right in any Virtual Currency or make any warranties whatsoever with regard to title.\nOnce transaction details have been submitted to a Virtual Currency network, we cannot assist You to cancel or otherwise modify your transaction or transaction details. ${appCompanyLong} has no control over any Virtual Currency network and does not have the ability to facilitate any cancellation or modification requests.\nIn the event of a Fork, ${appCompanyLong} may not be able to support activity related to your Virtual Currency. You agree and understand that, in the event of a Fork, the transactions may not be completed, completed partially, incorrectly completed, or substantially delayed. ${appCompanyLong} is not responsible for any loss incurred by You caused in whole or in part, directly or indirectly, by a Fork.\nIn no event shall ${appCompanyLong}, its affiliates and service providers, or any of their respective officers, directors, agents, employees or representatives, be liable for any lost profits or any special, incidental, indirect, intangible, or consequential damages, whether based on contract, tort, negligence, strict liability, or otherwise, arising out of or in connection with authorized or unauthorized use of the services, or this agreement, even if an authorized representative of ${appCompanyLong} has been advised of, has known of, or should have known of the possibility of such damages. \nFor example (and without limiting the scope of the preceding sentence), You may not recover for lost profits, lost business opportunities, or other types of special, incidental, indirect, intangible, or consequential damages. Some jurisdictions do not allow the exclusion or limitation of incidental or consequential damages, so the above limitation may not apply to You. \nWe will not be responsible or liable to You for any loss and take no responsibility for damages or claims arising in whole or in part, directly or indirectly from: \n(a) user error such as forgotten passwords, incorrectly constructed transactions, or mistyped Virtual Currency addresses; \n(b) server failure or data loss; \n(c) corrupted or otherwise non-performing Wallets or Wallet files; \n(d) unauthorized access to applications; \n(e) any unauthorized activities, including without limitation the use of hacking, viruses, phishing, brute forcing or other means of attack against the Services."; - static m28(appCompanyShort, appCompanyLong) => + static m40(appCompanyShort, appCompanyLong) => "For the avoidance of doubt, ${appCompanyLong} does not provide investment, tax or legal advice, nor does ${appCompanyLong} broker trades on your behalf. All ${appCompanyLong} trades are executed automatically, based on the parameters of your order instructions and in accordance with posted Trade execution procedures, and You are solely responsible for determining whether any investment, investment strategy or related transaction is appropriate for You based on your personal investment objectives, financial circumstances and risk tolerance. You should consult your legal or tax professional regarding your specific situation. Neither ${appCompanyShort} nor its owners, members, officers, directors, partners, consultants, nor anyone involved in the publication of this application, is a registered investment adviser or broker-dealer or associated person with a registered investment adviser or broker-dealer and none of the foregoing make any recommendation that the purchase or sale of crypto-assets or securities of any company profiled in the mobile Application is suitable or advisable for any person or that an investment or transaction in such crypto-assets or securities will be profitable. The information contained in the mobile Application is not intended to be, and shall not constitute, an offer to sell or the solicitation of any offer to buy any crypto-asset or security. The information presented in the mobile Application is provided for informational purposes only and is not to be treated as advice or a recommendation to make any specific investment or transaction. Please, consult with a qualified professional before making any decisions. The opinions and analysis included in this applications are based on information from sources deemed to be reliable and are provided “as is” in good faith. ${appCompanyShort} makes no representation or warranty, expressed, implied, or statutory, as to the accuracy or completeness of such information, which may be subject to change without notice. ${appCompanyShort} shall not be liable for any errors or any actions taken in relation to the above. Statements of opinion and belief are those of the authors and/or editors who contribute to this application, and are based solely upon the information possessed by such authors and/or editors. No inference should be drawn that ${appCompanyShort} or such authors or editors have any special or greater knowledge about the crypto-assets or companies profiled or any particular expertise in the industries or markets in which the profiled crypto-assets and companies operate and compete. Information on this application is obtained from sources deemed to be reliable; however, ${appCompanyShort} takes no responsibility for verifying the accuracy of such information and makes no representation that such information is accurate or complete. Certain statements included in this application may be forward-looking statements based on current expectations. ${appCompanyShort} makes no representation and provides no assurance or guarantee that such forward-looking statements will prove to be accurate. Persons using the ${appCompanyShort} application are urged to consult with a qualified professional with respect to an investment or transaction in any crypto-asset or company profiled herein. Additionally, persons using this application expressly represent that the content in this application is not and will not be a consideration in such persons’ investment or transaction decisions. Traders should verify independently information provided in the ${appCompanyShort} application by completing their own due diligence on any crypto-asset or company in which they are contemplating an investment or transaction of any kind and review a complete information package on that crypto-asset or company, which should include, but not be limited to, related blog updates and press releases. Past performance of profiled crypto-assets and securities is not indicative of future results. Crypto-assets and companies profiled on this site may lack an active trading market and invest in a crypto-asset or security that lacks an active trading market or trade on certain media, platforms and markets are deemed highly speculative and carry a high degree of risk. Anyone holding such crypto-assets and securities should be financially able and prepared to bear the risk of loss and the actual loss of his or her entire trade. The information in this application is not designed to be used as a basis for an investment decision. Persons using the ${appCompanyShort} application should confirm to their own satisfaction the veracity of any information prior to entering into any investment or making any transaction. The decision to buy or sell any crypto-asset or security that may be featured by ${appCompanyShort} is done purely and entirely at the reader’s own risk. As a reader and user of this application, You agree that under no circumstances will You seek to hold liable owners, members, officers, directors, partners, consultants or other persons involved in the publication of this application for any losses incurred by the use of information contained in this application ${appCompanyShort} and its contractors and affiliates may profit in the event the crypto-assets and securities increase or decrease in value. Such crypto-assets and securities may be bought or sold from time to time, even after ${appCompanyShort} has distributed positive information regarding the crypto-assets and companies. ${appCompanyShort} has no obligation to inform readers of its trading activities or the trading activities of any of its owners, members, officers, directors, contractors and affiliates and/or any companies affiliated with BC Relations’ owners, members, officers, directors, contractors and affiliates. ${appCompanyShort} and its affiliates may from time to time enter into agreements to purchase crypto-assets or securities to provide a method to reach their goals."; - static m29(appCompanyLong) => + static m41(appCompanyLong) => "The Terms are effective until terminated by ${appCompanyLong}. \nIn the event of termination, You are no longer authorized to access the Application, but all restrictions imposed on You and the disclaimers and limitations of liability set out in the Terms will survive termination. \nSuch termination shall not affect any legal right that may have accrued to ${appCompanyLong} against You up to the date of termination. \n${appCompanyLong} may also remove the Application as a whole or any sections or features of the Application at any time. "; - static m30(appCompanyLong) => + static m42(appCompanyLong) => "The provisions of previous paragraphs are for the benefit of ${appCompanyLong} and its officers, directors, employees, agents, licensors, suppliers, and any third party information providers to the Application. Each of these individuals or entities shall have the right to assert and enforce those provisions directly against You on its own behalf."; - static m31(appName, appCompanyLong) => + static m43(appName, appCompanyLong) => "${appName} mobile is a non-custodial, decentralized and blockchain based application and as such does ${appCompanyLong} never store any user-data (accounts and authentication data). \nWe also collect and process non-personal, anonymized data for statistical purposes and analysis and to help us provide a better service.\n\nThis document was last updated on January 31st, 2020"; - static m32(appName, appCompanyLong) => + static m44(appName, appCompanyLong) => "This disclaimer applies to the contents and services of the app ${appName} and is valid for all users of the “Application” (\'Software\', “Mobile Application”, “Application” or “App”).\n\nThe Application is owned by ${appCompanyLong}.\n\nWe reserve the right to amend the following Terms and Conditions (governing the use of the application “${appName} mobile”) at any time without prior notice and at our sole discretion. It is your responsibility to periodically check this Terms and Conditions for any updates to these Terms, which shall come into force once published.\nYour continued use of the application shall be deemed as acceptance of the following Terms.\nWe are a company incorporated in Vietnam and these Terms and Conditions are governed by and subject to the laws of Vietnam.\nIf You do not agree with these Terms and Conditions, You must not use or access this software."; - static m33(appName) => + static m45(appName) => "You are not allowed to decompile, decode, disassemble, rent, lease, loan, sell, sublicense, or create derivative works from the ${appName} mobile application or the user content. Nor are You allowed to use any network monitoring or detection software to determine the software architecture, or extract information about usage or individuals’ or users’ identities. \nYou are not allowed to copy, modify, reproduce, republish, distribute, display, or transmit for commercial, non-profit or public purposes all or any portion of the application or the user content without our prior written authorization."; - static m34(appName, appCompanyLong) => + static m46(appName, appCompanyLong) => "If you create an account in the Mobile Application, you are responsible for maintaining the security of your account and you are fully responsible for all activities that occur under the account and any other actions taken in connection with it. We will not be liable for any acts or omissions by you, including any damages of any kind incurred as a result of such acts or omissions. \n\n${appName} mobile is a non-custodial wallet implementation and thus ${appCompanyLong} can not access nor restore your account in case of (data) loss."; - static m35(appName) => + static m47(appName) => "End-User License Agreement (EULA) of ${appName} mobile:"; - static m36(coin) => "Kérelem küldése a ${coin} csaptelephez..."; + static m48(coinAbbr) => + "Nem sikerült megszakítani a(z) ${coinAbbr} aktiválását"; + + static m49(coin) => "Kérelem küldése a ${coin} csaptelephez..."; - static m37(appCompanyShort) => "${appCompanyShort} hírek"; + static m50(appCompanyShort) => "${appCompanyShort} hírek"; - static m38(value) => "A díjak legfeljebb ${value}"; + static m51(value) => "A díjak legfeljebb ${value}"; - static m39(coin) => "${coin} díj"; + static m52(coin) => "${coin} díj"; - static m40(coin) => "Kérjük, aktiválja ${coin}."; + static m53(coin) => "Kérjük, aktiválja ${coin}."; - static m41(abbr) => + static m54(value) => + "A Gwei értékének legfeljebb ${value} értéknek kell lennie"; + + static m55(coinName) => "Bejövő ${coinName} txs-védelmi beállítások"; + + static m56(abbr) => "${abbr} az egyenleg nem elegendő a kereskedési díj kifizetéséhez"; - static m42(coinAbbr) => "${coinAbbr} nem elérhető :("; + static m57(coin) => "Érvénytelen ${coin} cím"; - static m43(coinName) => + static m58(coinAbbr) => "${coinAbbr} nem elérhető :("; + + static m59(coinName) => "❗Vigyázat! A(z) ${coinName} piacán kevesebb, mint 10 000 USD 24 órás kereskedési volumen van!"; - static m44(coinName, number) => + static m60(value) => "A korlát legfeljebb ${value} lehet"; + + static m61(coinName, number) => "A minimális eladási összeg ${number} ${coinName}"; - static m45(coinName, number) => + static m62(coinName, number) => "A minimális vásárlási összeg: ${number}${coinName}"; - static m46(buyCoin, buyAmount, sellCoin, sellAmount) => + static m63(buyCoin, buyAmount, sellCoin, sellAmount) => "A megbízás minimális összege ${buyAmount} ${buyCoin} (${sellAmount} ${sellCoin})"; - static m47(coinName, number) => + static m64(coinName, number) => "Az eladandó minimális összeg ${number} ${coinName}"; - static m48(minValue, coin) => + static m65(minValue, coin) => "Nagyobbnak kell lennie, mint ${minValue} ${coin}"; - static m49(appName) => + static m66(appName) => "Kérjük, vegye figyelembe, hogy most mobiladatokat használ, és az ${appName} P2P-hálózatban való részvétel internetforgalmat fogyaszt. Jobb, ha WiFi hálózatot használsz, ha a mobiladat-előfizetésed drága."; - static m50(coin) => "Aktiválja a ${coin} és töltse fel először az egyenlegét"; + static m67(coin) => "Aktiválja a ${coin} és töltse fel először az egyenlegét"; - static m51(number) => "Create ${number} Order(s):"; + static m68(number) => "Create ${number} Order(s):"; - static m52(coin) => "${coin} egyenleg túl alacsony"; + static m69(coin) => "${coin} egyenleg túl alacsony"; - static m53(coin, fee) => + static m70(coin, fee) => "Nincs elég ${coin} a díjak kifizetéséhez. MIN egyenleg ${fee} ${coin}"; - static m54(coinName) => + static m71(coinName) => "Nem érhető el ${coinName} rendelés - próbálja újra később, vagy készítsen egy rendelést."; - static m55(coin) => "Nincs elég ${coin} a tranzakcióhoz!"; + static m72(coin) => "Nincs elég ${coin} a tranzakcióhoz!"; - static m56(sell, buy) => "Az ${sell}/${buy} swap sikeresen befejeződött."; + static m73(sell, buy) => "Az ${sell}/${buy} swap sikeresen befejeződött."; - static m57(sell, buy) => "${sell}/${buy} csere sikertelen volt"; + static m74(sell, buy) => "${sell}/${buy} csere sikertelen volt"; - static m58(sell, buy) => "${sell}/${buy} swap elindult"; + static m75(sell, buy) => "${sell}/${buy} swap elindult"; - static m59(sell, buy) => "${sell}/${buy} swap időzítve volt"; + static m76(sell, buy) => "${sell}/${buy} swap időzítve volt"; - static m60(coin) => "Ön ${coin} tranzakciót kapott!"; + static m77(coin) => "Ön ${coin} tranzakciót kapott!"; - static m61(assets) => "${assets} Aktív"; + static m78(assets) => "${assets} Aktív"; - static m62(coin) => "Minden ${coin} megrendelés törlésre kerül."; + static m79(coin) => "Minden ${coin} megrendelés törlésre kerül."; - static m63(delta) => "Célszerű: CEX +${delta}%"; + static m80(delta) => "Célszerű: CEX +${delta}%"; - static m64(delta) => "Drága: CEX ${delta}%"; + static m81(delta) => "Drága: CEX ${delta}%"; - static m65(fill) => "${fill}% betelt"; + static m82(fill) => "${fill}% betelt"; - static m66(coin) => "Mennyiség. (${coin})"; + static m83(coin) => "Mennyiség. (${coin})"; - static m67(coin) => "Ár (${coin})"; + static m84(coin) => "Ár (${coin})"; - static m68(coin) => "Összesen (${coin})"; + static m85(coin) => "Összesen (${coin})"; - static m69(abbr) => "${abbr} nem aktív. Kérjük, aktiválja és próbálja újra."; + static m86(abbr) => "${abbr} nem aktív. Kérjük, aktiválja és próbálja újra."; - static m70(appName) => "Mely eszközökön használhatom az ${appName}-t?"; + static m87(appName) => "Mely eszközökön használhatom az ${appName}-t?"; - static m71(appName) => + static m88(appName) => "Miben különbözik a kereskedés az ${appName}-en a más DEX-eken folytatott kereskedéstől?"; - static m72(appName) => "Hogyan számítják ki a díjakat az ${appName}-nél?"; + static m89(appName) => "Hogyan számítják ki a díjakat az ${appName}-nél?"; - static m73(appName) => "Ki áll az ${appName} mögött?"; + static m90(appName) => "Ki áll az ${appName} mögött?"; - static m74(appName) => + static m91(appName) => "Lehetséges saját white-label csereprogramot kialakítani az ${appName} oldalon?"; - static m75(amount) => "Siker! ${amount} KMD kapott."; + static m92(amount) => "Siker! ${amount} KMD kapott."; + + static m93(dd) => "${dd} napok"; - static m76(dd) => "${dd} napok"; + static m94(hh, minutes) => "${hh}h ${minutes}m"; - static m77(hh, minutes) => "${hh}h ${minutes}m"; + static m95(mm) => "${mm}min"; - static m78(mm) => "${mm}min"; + static m96(amount) => "Kattintson a megtekintéshez ${amount} rendelések"; - static m79(amount) => "Kattintson a megtekintéshez ${amount} rendelések"; + static m97(coinName, address) => "Az én ${coinName} címem:\n${address}"; - static m80(coinName, address) => "Az én ${coinName} címem:\n${address}"; + static m98(coin) => "Keresi a múltbeli ${coin} tranzakciókat?"; - static m81(coin) => "Kérjük, adja meg a ${coin} összeget a vásárláshoz"; + static m99(count, maxCount) => "${count}/${maxCount} rendelés megjelenítése."; - static m82(maxCoins) => + static m100(coin) => "Kérjük, adja meg a ${coin} összeget a vásárláshoz"; + + static m101(maxCoins) => "A maximális aktív érmék száma ${maxCoins}. Kérjük, néhányat deaktiváljon."; - static m83(coin) => "${coin} nem aktív!"; + static m102(coin) => "${coin} nem aktív!"; - static m84(coin) => "Kérjük, adja meg az eladni kívánt ${coin} összeget"; + static m103(coin) => "Kérjük, adja meg az eladni kívánt ${coin} összeget"; - static m85(coin) => "Nem sikerült aktiválni ${coin}"; + static m104(coin) => "Nem sikerült aktiválni ${coin}"; - static m86(description) => + static m105(description) => "Válasszon egy mp3 vagy wav fájlt, kérem. Akkor fogjuk lejátszani, amikor ${description}."; - static m87(description) => "Lejátsszuk, amikor ${description}"; + static m106(description) => "Lejátsszuk, amikor ${description}"; - static m88(appName) => + static m107(appName) => "Ha bármilyen kérdésed van, vagy úgy gondolod, hogy technikai problémát találtál az ${appName} alkalmazással kapcsolatban, akkor jelentheted, és támogatást kaphatsz csapatunktól."; - static m89(coin) => + static m108(coin) => "Kérjük, először aktiválja ${coin} és töltse fel egyenlegét"; - static m90(coin) => + static m109(coin) => "Az ${coin} egyenleg nem elegendő a tranzakciós díjak kifizetéséhez."; - static m91(coin, amount) => + static m110(coin, amount) => "${coin} egyenleg nem elegendő a tranzakciós díjak kifizetéséhez. ${coin} ${amount} szükséges."; - static m92(left) => "Tranzakciók Balra: ${left}"; + static m111(name) => "Mely ${name} tranzakciókat szeretné szinkronizálni?"; - static m93(amnt, hash) => + static m112(left) => "Tranzakciók Balra: ${left}"; + + static m113(amnt, hash) => "Sikeresen feloldotta a ${amnt} pénzeszközöket - TX: ${hash}"; - static m94(version) => "Ön a ${version} verziót használja."; + static m114(version) => "Ön a ${version} verziót használja."; - static m95(version) => "A ${version} verzió elérhető. Kérjük, frissítse."; + static m115(version) => "A ${version} verzió elérhető. Kérjük, frissítse."; - static m96(appName) => "${appName} frissítés"; + static m116(appName) => "${appName} frissítés"; - static m97(coinAbbr) => "Nem sikerült aktiválni a ${coinAbbr}"; + static m117(coinAbbr) => "Nem sikerült aktiválni a ${coinAbbr}"; - static m98(coinAbbr) => + static m118(coinAbbr) => "Nem sikerült aktiválni a ${coinAbbr}.\nKérjük, indítsa újra az alkalmazást, hogy újra megpróbálhassa."; - static m99(appName) => + static m119(appName) => "${appName} mobil egy következő generációs többérmés pénztárca natív harmadik generációs DEX funkcióval és még sokkal több"; - static m100(appName) => + static m120(appName) => "Ön korábban megtagadta a ${appName} hozzáférést a kamerához.\n Kérjük, a QR-kód beolvasásának folytatásához manuálisan módosítsa a kameraengedélyt a telefon beállításaiban."; - static m101(amount, coinName) => "KIFIZETÉS ${amount} ${coinName}"; + static m121(amount, coinName) => "KIFIZETÉS ${amount} ${coinName}"; - static m102(amount, coin) => "Kapni fog ${amount} ${coin}"; + static m122(amount, coin) => "Kapni fog ${amount} ${coin}"; final messages = _notInlinedMessages(_notInlinedMessages); static Map _notInlinedMessages(_) => { @@ -303,15 +345,21 @@ class MessageLookup extends MessageLookupByLibrary { "Biometrikus védelem aktiválása"), "activateAccessPin": MessageLookupByLibrary.simpleMessage("PIN védelem aktviálása"), + "activateCoins": m0, + "activating": m1, + "activation": m2, + "activationCancelled": MessageLookupByLibrary.simpleMessage( + "Az érme aktiválása megszakítva"), + "activationInProgress": m3, "addCoin": MessageLookupByLibrary.simpleMessage("Aktív érme"), - "addingCoinSuccess": m0, + "addingCoinSuccess": m4, "addressAdd": MessageLookupByLibrary.simpleMessage("Cím hozzáadása"), "addressBook": MessageLookupByLibrary.simpleMessage("Címjegyzék"), "addressBookEmpty": MessageLookupByLibrary.simpleMessage("A címjegyzék üres"), - "addressBookFilter": m1, + "addressBookFilter": m5, "addressBookTitle": MessageLookupByLibrary.simpleMessage("Címjegyzék"), - "addressCoinInactive": m2, + "addressCoinInactive": m6, "addressNotFound": MessageLookupByLibrary.simpleMessage("Semmi sem található"), "addressSelectCoin": @@ -319,22 +367,24 @@ class MessageLookup extends MessageLookupByLibrary { "addressSend": MessageLookupByLibrary.simpleMessage("Címzett címe"), "advanced": MessageLookupByLibrary.simpleMessage("Haladó"), "all": MessageLookupByLibrary.simpleMessage("Minden"), + "allPastTransactions": MessageLookupByLibrary.simpleMessage( + "A pénztárcája minden korábbi tranzakciót mutat. Ez jelentős tárhelyet és időt vesz igénybe, mivel az összes blokkot letölti és átvizsgálja."), "allowCustomSeed": MessageLookupByLibrary.simpleMessage("Egyedi SEED engedélyezése"), "alreadyExists": MessageLookupByLibrary.simpleMessage("Már létezik"), "amount": MessageLookupByLibrary.simpleMessage("Összeg"), "amountToSell": MessageLookupByLibrary.simpleMessage("Eladandó összeg"), - "answer_1": m3, - "answer_10": m4, - "answer_2": m5, - "answer_3": m6, + "answer_1": m7, + "answer_10": m8, + "answer_2": m9, + "answer_3": m10, "answer_4": MessageLookupByLibrary.simpleMessage( "Igen. Az egyes atomi cserék sikeres végrehajtásához továbbra is kapcsolódnia kell az internethez, és az alkalmazásnak futnia kell (a kapcsolat nagyon rövid megszakításai általában rendben vannak). Ellenkező esetben fennáll a kereskedés törlésének kockázata, ha Ön a döntéshozó, és a pénzeszközök elvesztésének kockázata, ha Ön a vevő. Az atomi swap protokoll megköveteli, hogy mindkét résztvevő online maradjon és figyelje az érintett blokkláncokat, hogy a folyamat atomi maradjon."), - "answer_5": m7, - "answer_6": m8, - "answer_7": m9, - "answer_8": m10, - "answer_9": m11, + "answer_5": m11, + "answer_6": m12, + "answer_7": m13, + "answer_8": m14, + "answer_9": m15, "areYouSure": MessageLookupByLibrary.simpleMessage("BIZTOS?"), "authenticate": MessageLookupByLibrary.simpleMessage("hitelesítse a"), "automaticRedirected": MessageLookupByLibrary.simpleMessage( @@ -342,8 +392,9 @@ class MessageLookup extends MessageLookupByLibrary { "availableVolume": MessageLookupByLibrary.simpleMessage("max vol"), "back": MessageLookupByLibrary.simpleMessage("vissza"), "backupTitle": MessageLookupByLibrary.simpleMessage("Mentés"), - "batteryCriticalError": m12, - "batteryLowWarning": m13, + "basedOnCoinRatio": m16, + "batteryCriticalError": m17, + "batteryLowWarning": m18, "batterySavingWarning": MessageLookupByLibrary.simpleMessage( "A telefon akkumulátor-takarékos üzemmódban van. Kérjük, kapcsolja ki ezt az üzemmódot, vagy NE tegye az alkalmazást a háttérbe, különben az alkalmazást az operációs rendszer megölheti, és a csere sikertelen lesz."), "bestAvailableRate": MessageLookupByLibrary.simpleMessage( @@ -357,7 +408,7 @@ class MessageLookup extends MessageLookupByLibrary { "Átalakítás vevővé, ha nem egyezik"), "buySuccessWaiting": MessageLookupByLibrary.simpleMessage( "Csere kiadva, kérjük várjon!"), - "buySuccessWaitingError": m14, + "buySuccessWaitingError": m19, "buyTestCoinWarning": MessageLookupByLibrary.simpleMessage( "Figyelmeztetés, Ön hajlandó teszt érméket vásárolni NÉLKÜL valós értéket!"), "camoPinBioProtectionConflict": MessageLookupByLibrary.simpleMessage( @@ -388,6 +439,10 @@ class MessageLookup extends MessageLookupByLibrary { "camouflageSetup": MessageLookupByLibrary.simpleMessage("Álcázási PIN beállítása"), "cancel": MessageLookupByLibrary.simpleMessage("visszamond"), + "cancelActivation": + MessageLookupByLibrary.simpleMessage("Aktiválás megszakítása"), + "cancelActivationQuestion": MessageLookupByLibrary.simpleMessage( + "Biztosan megszakítja az aktiválást?"), "cancelButton": MessageLookupByLibrary.simpleMessage("Visszavonás"), "cancelOrder": MessageLookupByLibrary.simpleMessage("Megrendelés visszavonása"), @@ -403,6 +458,7 @@ class MessageLookup extends MessageLookupByLibrary { "cexData": MessageLookupByLibrary.simpleMessage("CEX adatok"), "cexDataDesc": MessageLookupByLibrary.simpleMessage( "Az ezzel az ikonnal jelölt piaci adatok (árak, grafikonok stb.) harmadik féltől származó forrásokból származnak (coingecko.com, openrates.io)."), + "cexRate": MessageLookupByLibrary.simpleMessage("CEX árfolyam"), "changePin": MessageLookupByLibrary.simpleMessage("PIN módosítása"), "checkForUpdates": MessageLookupByLibrary.simpleMessage("Frissítések ellenőrzése"), @@ -413,10 +469,10 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("FOLYTATÁS"), "checkSeedPhraseButton2": MessageLookupByLibrary.simpleMessage( "Lépjen vissza és ellenőrizze ismét"), - "checkSeedPhraseHint": m15, + "checkSeedPhraseHint": m20, "checkSeedPhraseInfo": MessageLookupByLibrary.simpleMessage( "A SEED-ed fontos - ezért szeretnénk ellenőrizni, hogy helyes-e. Három különféle kérdést fogunk feltenni a SEED-el kapcsolatban, hogy megbizonyosodjon arról, hogy bármikor könnyedén visszaállíthatja a pénztárcáját."), - "checkSeedPhraseSubtile": m16, + "checkSeedPhraseSubtile": m21, "checkSeedPhraseTitle": MessageLookupByLibrary.simpleMessage( "DUPLÁN ellenőrizze a SEED-jét"), "chineseLanguage": MessageLookupByLibrary.simpleMessage("Kínai"), @@ -434,6 +490,10 @@ class MessageLookup extends MessageLookupByLibrary { "closePreview": MessageLookupByLibrary.simpleMessage("Előnézet bezárása"), "code": MessageLookupByLibrary.simpleMessage("Kód:"), + "cofirmCancelActivation": MessageLookupByLibrary.simpleMessage( + "Biztosan megszakítja az aktiválást?"), + "coinActivationCancelled": m22, + "coinActivationSuccessfull": m23, "coinSelectClear": MessageLookupByLibrary.simpleMessage("Tiszta"), "coinSelectNotFound": MessageLookupByLibrary.simpleMessage("Nincsenek aktív érmék"), @@ -441,6 +501,9 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("Érme kiválasztása"), "coinsActivatedLimitReached": MessageLookupByLibrary.simpleMessage( "Kiválasztotta az eszközök maximális számát"), + "coinsAreActivated": m24, + "coinsAreActivatedSuccessfully": m25, + "coinsAreNotActivated": m26, "comingSoon": MessageLookupByLibrary.simpleMessage("Hamarosan..."), "commingsoon": MessageLookupByLibrary.simpleMessage( "Tranzakció részletek hamarosan!"), @@ -471,7 +534,7 @@ class MessageLookup extends MessageLookupByLibrary { "contactDelete": MessageLookupByLibrary.simpleMessage("Kapcsolat törlése"), "contactDeleteBtn": MessageLookupByLibrary.simpleMessage("törlése"), - "contactDeleteWarning": m17, + "contactDeleteWarning": m27, "contactDiscardBtn": MessageLookupByLibrary.simpleMessage("Elutasítás"), "contactEdit": MessageLookupByLibrary.simpleMessage("Szerkesztés"), "contactExit": MessageLookupByLibrary.simpleMessage("Kilépés"), @@ -483,7 +546,10 @@ class MessageLookup extends MessageLookupByLibrary { "contactTitle": MessageLookupByLibrary.simpleMessage("Kapcsolattartási adatok"), "contactTitleName": MessageLookupByLibrary.simpleMessage("Név"), + "contract": MessageLookupByLibrary.simpleMessage("Szerződés"), "convert": MessageLookupByLibrary.simpleMessage("Megváltoztatni"), + "couldNotLaunchUrl": MessageLookupByLibrary.simpleMessage( + "Nem sikerült elindítani az URL-t"), "couldntImportError": MessageLookupByLibrary.simpleMessage("Nem sikerült importálni:"), "create": MessageLookupByLibrary.simpleMessage("Kereskedelem"), @@ -500,7 +566,7 @@ class MessageLookup extends MessageLookupByLibrary { "customFee": MessageLookupByLibrary.simpleMessage("Egyedi díj"), "customFeeWarning": MessageLookupByLibrary.simpleMessage( "Csak akkor használjon egyéni díjakat, ha tudja, mit csinál!"), - "customSeedWarning": m18, + "customSeedWarning": m28, "dPow": MessageLookupByLibrary.simpleMessage("Komodo dPoW biztonság"), "date": MessageLookupByLibrary.simpleMessage("Dátum"), "decryptingWallet": @@ -518,6 +584,13 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("Pénztárca törlése"), "deletingWallet": MessageLookupByLibrary.simpleMessage("Pénztárca törlése..."), + "detailedFeesReceiveCoinTransactionFee": m29, + "detailedFeesSendCoinTransactionFee": m30, + "detailedFeesSendTradingFeeTransactionFee": + MessageLookupByLibrary.simpleMessage( + "kereskedési díj tranzakciós díj küldése"), + "detailedFeesTradingFee": + MessageLookupByLibrary.simpleMessage("kereskedési díj"), "details": MessageLookupByLibrary.simpleMessage("részletek"), "deutscheLanguage": MessageLookupByLibrary.simpleMessage("Német"), "developerTitle": MessageLookupByLibrary.simpleMessage("Fejlesztő"), @@ -528,6 +601,8 @@ class MessageLookup extends MessageLookupByLibrary { "Képernyőképek/Előnézet letiltása"), "disclaimerAndTos": MessageLookupByLibrary.simpleMessage( "Felelősségi nyilatkozat & használati feltételek"), + "doNotCloseTheAppTapForMoreInfo": MessageLookupByLibrary.simpleMessage( + "Ne zárja be az alkalmazást. További információért koppintson..."), "done": MessageLookupByLibrary.simpleMessage("Kész"), "dontAskAgain": MessageLookupByLibrary.simpleMessage("Ne kérdezze újra"), @@ -536,7 +611,7 @@ class MessageLookup extends MessageLookupByLibrary { "duration": MessageLookupByLibrary.simpleMessage("Időtartam"), "editContact": MessageLookupByLibrary.simpleMessage("Kapcsolat szerkesztése"), - "emptyCoin": m19, + "emptyCoin": m31, "emptyExportPass": MessageLookupByLibrary.simpleMessage( "A titkosítási jelszó nem lehet üres"), "emptyImportPass": @@ -545,7 +620,10 @@ class MessageLookup extends MessageLookupByLibrary { "Kapcsolattartó neve nem lehet üres"), "emptyWallet": MessageLookupByLibrary.simpleMessage("A tárca neve nem lehet üres"), - "enable": m20, + "enable": m32, + "enableNotificationsForActivationProgress": + MessageLookupByLibrary.simpleMessage( + "Kérjük, engedélyezze az értesítéseket, hogy értesüljön az aktiválás folyamatáról."), "enableTestCoins": MessageLookupByLibrary.simpleMessage("Tesztérmék engedélyezése"), "enablingTooManyAssetsSpan1": @@ -579,7 +657,7 @@ class MessageLookup extends MessageLookupByLibrary { "Hiba! Helytelen / nem valós cím!"), "errorNotAValidAddressSegWit": MessageLookupByLibrary.simpleMessage( "A Segwit címek (még) nem támogatottak"), - "errorNotEnoughGas": m21, + "errorNotEnoughGas": m33, "errorTryAgain": MessageLookupByLibrary.simpleMessage("Hiba, kérem próbálja újra"), "errorTryLater": @@ -590,32 +668,32 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("Kérjük adjon meg adatokat"), "estimateValue": MessageLookupByLibrary.simpleMessage("Becsült Teljes Érték"), - "eulaParagraphe1": m22, - "eulaParagraphe10": m23, - "eulaParagraphe11": m24, + "eulaParagraphe1": m34, + "eulaParagraphe10": m35, + "eulaParagraphe11": m36, "eulaParagraphe12": MessageLookupByLibrary.simpleMessage( "When accessing or using the Services, You agree that You are solely responsible for your conduct while accessing and using our Services. Without limiting the generality of the foregoing, You agree that You will not:\n(a) use the Services in any manner that could interfere with, disrupt, negatively affect or inhibit other users from fully enjoying the Services, or that could damage, disable, overburden or impair the functioning of our Services in any manner;\n(b) use the Services to pay for, support or otherwise engage in any illegal activities, including, but not limited to illegal gambling, fraud, money laundering, or terrorist activities;\n(c) use any robot, spider, crawler, scraper or other automated means or interface not provided by us to access our Services or to extract data;\n(d) use or attempt to use another user’s Wallet or credentials without authorization;\n(e) attempt to circumvent any content filtering techniques we employ, or attempt to access any service or area of our Services that You are not authorized to access;\n(f) introduce to the Services any virus, Trojan, worms, logic bombs or other harmful material;\n(g) develop any third-party applications that interact with our Services without our prior written consent;\n(h) provide false, inaccurate, or misleading information; \n(i) encourage or induce any other person to engage in any of the activities prohibited under this Section."), - "eulaParagraphe13": m25, - "eulaParagraphe14": m26, - "eulaParagraphe15": m27, - "eulaParagraphe16": m28, - "eulaParagraphe17": m29, - "eulaParagraphe18": m30, - "eulaParagraphe19": m31, - "eulaParagraphe2": m32, + "eulaParagraphe13": m37, + "eulaParagraphe14": m38, + "eulaParagraphe15": m39, + "eulaParagraphe16": m40, + "eulaParagraphe17": m41, + "eulaParagraphe18": m42, + "eulaParagraphe19": m43, + "eulaParagraphe2": m44, "eulaParagraphe3": MessageLookupByLibrary.simpleMessage( "By entering into this User (each subject accessing or using the site) Agreement (this writing) You declare that You are an individual over the age of majority (at least 18 or older) and have the capacity to enter into this User Agreement and accept to be legally bound by the terms and conditions of this User Agreement, as incorporated herein and amended from time to time."), "eulaParagraphe4": MessageLookupByLibrary.simpleMessage( "We may change the terms of this User Agreement at any time. Any such changes will take effect when published in the application, or when You use the Services.\n\nRead the User Agreement carefully every time You use our Services. Your continued use of the Services shall signify your acceptance to be bound by the current User Agreement. Our failure or delay in enforcing or partially enforcing any provision of this User Agreement shall not be construed as a waiver of any."), - "eulaParagraphe5": m33, - "eulaParagraphe6": m34, + "eulaParagraphe5": m45, + "eulaParagraphe6": m46, "eulaParagraphe7": MessageLookupByLibrary.simpleMessage( "We are not responsible for seed-phrases residing in the Mobile Application. In no event shall we be held liable for any loss of any kind. It is your sole responsibility to maintain appropriate backups of your accounts and their seedprases."), "eulaParagraphe8": MessageLookupByLibrary.simpleMessage( "You should not act, or refrain from acting solely on the basis of the content of this application. \nYour access to this application does not itself create an adviser-client relationship between You and us. \nThe content of this application does not constitute a solicitation or inducement to invest in any financial products or services offered by us. \nAny advice included in this application has been prepared without taking into account your objectives, financial situation or needs. You should consider our Risk Disclosure Notice before making any decision on whether to acquire the product described in that document."), "eulaParagraphe9": MessageLookupByLibrary.simpleMessage( "We do not guarantee your continuous access to the application or that your access or use will be error-free. \nWe will not be liable in the event that the application is unavailable to You for any reason (for example, due to computer downtime ascribable to malfunctions, upgrades, server problems, precautionary or corrective maintenance activities or interruption in telecommunication supplies). "), - "eulaTitle1": m35, + "eulaTitle1": m47, "eulaTitle10": MessageLookupByLibrary.simpleMessage("ACCESS AND SECURITY"), "eulaTitle11": MessageLookupByLibrary.simpleMessage( @@ -666,19 +744,20 @@ class MessageLookup extends MessageLookupByLibrary { "A tételek exportálása sikeresen megtörtént:"), "exportSwapsTitle": MessageLookupByLibrary.simpleMessage("Cserék"), "exportTitle": MessageLookupByLibrary.simpleMessage("Exportálás"), + "failedToCancelActivation": m48, "fakeBalanceAmt": MessageLookupByLibrary.simpleMessage("Hamis egyenleg összege:"), "faqTitle": MessageLookupByLibrary.simpleMessage("Gyakran ismételt kérdések"), "faucetError": MessageLookupByLibrary.simpleMessage("Hiba"), - "faucetInProgress": m36, + "faucetInProgress": m49, "faucetName": MessageLookupByLibrary.simpleMessage("FAUCET"), "faucetSuccess": MessageLookupByLibrary.simpleMessage("Siker"), "faucetTimedOut": MessageLookupByLibrary.simpleMessage("A kérés lejárt"), "feedNewsTab": MessageLookupByLibrary.simpleMessage("Hírek"), "feedNotFound": MessageLookupByLibrary.simpleMessage("Itt nincs semmi"), - "feedNotifTitle": m37, + "feedNotifTitle": m50, "feedReadMore": MessageLookupByLibrary.simpleMessage("Bővebben..."), "feedTab": MessageLookupByLibrary.simpleMessage("Feed"), "feedTitle": MessageLookupByLibrary.simpleMessage("Hírek"), @@ -691,7 +770,7 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("Hírfolyam frissítve"), "feedback": MessageLookupByLibrary.simpleMessage("Visszajelzés küldése"), - "feesError": m38, + "feesError": m51, "filtersAll": MessageLookupByLibrary.simpleMessage("Minden"), "filtersButton": MessageLookupByLibrary.simpleMessage("Szűrő"), "filtersClearAll": @@ -708,18 +787,26 @@ class MessageLookup extends MessageLookupByLibrary { "filtersTo": MessageLookupByLibrary.simpleMessage("Eddig"), "filtersType": MessageLookupByLibrary.simpleMessage("Vevő/szerző"), "fingerprint": MessageLookupByLibrary.simpleMessage("Ujjlenyomat"), + "finishingUp": + MessageLookupByLibrary.simpleMessage("Befejezés, kérem várjon"), + "foundQrCode": MessageLookupByLibrary.simpleMessage("Talált QR kódot"), "frenchLanguage": MessageLookupByLibrary.simpleMessage("Francia"), "from": MessageLookupByLibrary.simpleMessage("Honnan"), - "gasFee": m39, + "futureTransactions": MessageLookupByLibrary.simpleMessage( + "A jövőbeni tranzakciókat szinkronizálni fogjuk a nyilvános kulcsához társított aktiválás után. Ez a leggyorsabb lehetőség, és a legkevesebb tárhelyet foglalja el."), + "gasFee": m52, "gasLimit": MessageLookupByLibrary.simpleMessage("Benzin limit"), - "gasNotActive": m40, + "gasNotActive": m53, "gasPrice": MessageLookupByLibrary.simpleMessage("Gáz ára"), "generalPinNotActive": MessageLookupByLibrary.simpleMessage( "Az általános PIN-védelem nem aktív.\n Az álcázási mód nem lesz elérhető.\n Kérjük, aktiválja a PIN-védelmet."), "getBackupPhrase": MessageLookupByLibrary.simpleMessage( "Fontos: Mentse el a SEED-jét mielött tovább haladnánk!"), + "gettingTxWait": MessageLookupByLibrary.simpleMessage( + "A tranzakció lebonyolítása, kérjük, várjon"), "goToPorfolio": MessageLookupByLibrary.simpleMessage("Ugrás a portfólióhoz"), + "gweiError": m54, "helpLink": MessageLookupByLibrary.simpleMessage("Segítség"), "helpTitle": MessageLookupByLibrary.simpleMessage("Segítség és támogatás"), @@ -773,6 +860,7 @@ class MessageLookup extends MessageLookupByLibrary { "importSwapJsonDecodingError": MessageLookupByLibrary.simpleMessage( "Hiba a json fájl dekódolásában"), "importTitle": MessageLookupByLibrary.simpleMessage("Importálás"), + "incomingTransactionsProtectionSettings": m55, "infoPasswordDialog": MessageLookupByLibrary.simpleMessage( "Ha nem ad meg jelszót, akkor minden alkalommal be kell írnia a SEED-jét, amikor hozzáférni szeretne a pénztárcájához."), "infoTrade1": MessageLookupByLibrary.simpleMessage( @@ -781,7 +869,7 @@ class MessageLookup extends MessageLookupByLibrary { "Ez a tranzakció akár 10 percet is igénybe vehet - NE zárja be ezt az alkalmazást!"), "infoWalletPassword": MessageLookupByLibrary.simpleMessage( "Dönthet úgy is, hogy jelszóval titkosítja a pénztárcáját. Ha úgy dönt, hogy nem használ jelszót, akkor minden alkalommal meg kell adnia a SEED-jét, amikor hozzáférni szeretne a pénztárcájához."), - "insufficientBalanceToPay": m41, + "insufficientBalanceToPay": m56, "insufficientText": MessageLookupByLibrary.simpleMessage( "A megbízáshoz szükséges minimális mennyiség"), "insufficientTitle": @@ -790,11 +878,12 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("Frissítés"), "internetRestored": MessageLookupByLibrary.simpleMessage( "Internet kapcsolat helyreállt"), + "invalidCoinAddress": m57, "invalidSwap": MessageLookupByLibrary.simpleMessage( "Nem lehet folytatni a swapot"), "invalidSwapDetailsLink": MessageLookupByLibrary.simpleMessage("Részletek"), - "isUnavailable": m42, + "isUnavailable": m58, "japaneseLanguage": MessageLookupByLibrary.simpleMessage("Japán"), "koreanLanguage": MessageLookupByLibrary.simpleMessage("Koreai"), "language": MessageLookupByLibrary.simpleMessage("Nyelv"), @@ -802,7 +891,8 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("Legutóbbi tranzakciók"), "legalTitle": MessageLookupByLibrary.simpleMessage("Jogi"), "less": MessageLookupByLibrary.simpleMessage("Kevesebb"), - "lessThanCaution": m43, + "lessThanCaution": m59, + "limitError": m60, "loading": MessageLookupByLibrary.simpleMessage("Betöltés..."), "loadingOrderbook": MessageLookupByLibrary.simpleMessage( "Rendelési könyv betöltése..."), @@ -877,21 +967,24 @@ class MessageLookup extends MessageLookupByLibrary { "min": MessageLookupByLibrary.simpleMessage("MIN"), "minOrder": MessageLookupByLibrary.simpleMessage( "Minimális rendelési mennyiség:"), - "minValue": m44, - "minValueBuy": m45, - "minValueOrder": m46, - "minValueSell": m47, - "minVolumeInput": m48, + "minValue": m61, + "minValueBuy": m62, + "minValueOrder": m63, + "minValueSell": m64, + "minVolumeInput": m65, "minVolumeIsTDH": MessageLookupByLibrary.simpleMessage( "Alacsonyabbnak kell lennie, mint az eladási összeg"), "minVolumeTitle": MessageLookupByLibrary.simpleMessage( "Minimális mennyiség szükséges"), "minVolumeToggle": MessageLookupByLibrary.simpleMessage( "Egyéni minimális mennyiség használata"), + "minimizingWillTerminate": MessageLookupByLibrary.simpleMessage( + "Figyelmeztetés: Az alkalmazás iOS rendszeren való minimalizálása leállítja az aktiválási folyamatot."), "minutes": MessageLookupByLibrary.simpleMessage("m"), - "mobileDataWarning": m49, + "mobileDataWarning": m66, + "moreInfo": MessageLookupByLibrary.simpleMessage("Több információ"), "moreTab": MessageLookupByLibrary.simpleMessage("További"), - "multiActivateGas": m50, + "multiActivateGas": m67, "multiBaseAmtPlaceholder": MessageLookupByLibrary.simpleMessage("Összeg"), "multiBasePlaceholder": MessageLookupByLibrary.simpleMessage("Érme"), @@ -899,7 +992,7 @@ class MessageLookup extends MessageLookupByLibrary { "multiConfirmCancel": MessageLookupByLibrary.simpleMessage("Cancel"), "multiConfirmConfirm": MessageLookupByLibrary.simpleMessage("Megerősítés"), - "multiConfirmTitle": m51, + "multiConfirmTitle": m68, "multiCreate": MessageLookupByLibrary.simpleMessage("Létrehozása"), "multiCreateOrder": MessageLookupByLibrary.simpleMessage("Megrendelés"), "multiCreateOrders": @@ -915,8 +1008,8 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("Érvénytelen összeg"), "multiInvalidSellAmt": MessageLookupByLibrary.simpleMessage("Érvénytelen eladási összeg"), - "multiLowGas": m52, - "multiLowerThanFee": m53, + "multiLowGas": m69, + "multiLowerThanFee": m70, "multiMaxSellAmt": MessageLookupByLibrary.simpleMessage("Max eladási összeg"), "multiMinReceiveAmt": @@ -950,7 +1043,7 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("Nincs kiválasztott tétel"), "noMatchingOrders": MessageLookupByLibrary.simpleMessage( "Nem találtak megfelelő rendelést"), - "noOrder": m54, + "noOrder": m71, "noOrderAvailable": MessageLookupByLibrary.simpleMessage( "Kattintson a megrendelés létrehozásához"), "noOrders": MessageLookupByLibrary.simpleMessage( @@ -964,7 +1057,8 @@ class MessageLookup extends MessageLookupByLibrary { "noTxs": MessageLookupByLibrary.simpleMessage("Nincs tranzakció"), "nonNumericInput": MessageLookupByLibrary.simpleMessage( "Az értéknek numerikusnak kell lennie"), - "notEnoughGas": m55, + "none": MessageLookupByLibrary.simpleMessage("Egyik sem"), + "notEnoughGas": m72, "notEnoughtBalanceForFee": MessageLookupByLibrary.simpleMessage( "Nincs elég egyenlege a jutalékhoz - kereskedjen kisebb mennyiséggel"), "noteOnOrder": MessageLookupByLibrary.simpleMessage( @@ -974,24 +1068,24 @@ class MessageLookup extends MessageLookupByLibrary { "noteTitle": MessageLookupByLibrary.simpleMessage("Megjegyzés"), "nothingFound": MessageLookupByLibrary.simpleMessage("Semmi sem található"), - "notifSwapCompletedText": m56, + "notifSwapCompletedText": m73, "notifSwapCompletedTitle": MessageLookupByLibrary.simpleMessage("A csere befejeződött"), - "notifSwapFailedText": m57, + "notifSwapFailedText": m74, "notifSwapFailedTitle": MessageLookupByLibrary.simpleMessage("A swap sikertelen"), - "notifSwapStartedText": m58, + "notifSwapStartedText": m75, "notifSwapStartedTitle": MessageLookupByLibrary.simpleMessage("Új swap indult"), "notifSwapStatusTitle": MessageLookupByLibrary.simpleMessage("Swap státusz megváltozott"), - "notifSwapTimeoutText": m59, + "notifSwapTimeoutText": m76, "notifSwapTimeoutTitle": MessageLookupByLibrary.simpleMessage("Swap lejárt"), - "notifTxText": m60, + "notifTxText": m77, "notifTxTitle": MessageLookupByLibrary.simpleMessage("Bejövő tranzakció"), - "numberAssets": m61, + "numberAssets": m78, "officialPressRelease": MessageLookupByLibrary.simpleMessage("Hivatalos sajtóközlemény"), "okButton": MessageLookupByLibrary.simpleMessage("Oké"), @@ -1000,15 +1094,17 @@ class MessageLookup extends MessageLookupByLibrary { "oldLogsUsed": MessageLookupByLibrary.simpleMessage("Használt hely"), "openMessage": MessageLookupByLibrary.simpleMessage("Hibaüzenet megnyitása"), - "orderCancel": m62, + "orderBookLess": MessageLookupByLibrary.simpleMessage("Kevésbé"), + "orderBookMore": MessageLookupByLibrary.simpleMessage("Több"), + "orderCancel": m79, "orderCreated": MessageLookupByLibrary.simpleMessage("Megrendelés létrehozva"), "orderCreatedInfo": MessageLookupByLibrary.simpleMessage( "Megrendelés sikeresen létrehozva"), "orderDetailsAddress": MessageLookupByLibrary.simpleMessage("Cím:"), "orderDetailsCancel": MessageLookupByLibrary.simpleMessage("Cancel"), - "orderDetailsExpedient": m63, - "orderDetailsExpensive": m64, + "orderDetailsExpedient": m80, + "orderDetailsExpensive": m81, "orderDetailsFor": MessageLookupByLibrary.simpleMessage("a esetében"), "orderDetailsIdentical": MessageLookupByLibrary.simpleMessage("Azonos a CEX-szel"), @@ -1023,7 +1119,7 @@ class MessageLookup extends MessageLookupByLibrary { "orderDetailsSpend": MessageLookupByLibrary.simpleMessage("Töltse el a"), "orderDetailsTitle": MessageLookupByLibrary.simpleMessage("Részletek"), - "orderFilled": m65, + "orderFilled": m82, "orderMatched": MessageLookupByLibrary.simpleMessage("Rendelés megegyezett"), "orderMatching": @@ -1034,9 +1130,9 @@ class MessageLookup extends MessageLookupByLibrary { "orders": MessageLookupByLibrary.simpleMessage("rendelések"), "ordersActive": MessageLookupByLibrary.simpleMessage("Aktív"), "ordersHistory": MessageLookupByLibrary.simpleMessage("Történelem"), - "ordersTableAmount": m66, - "ordersTablePrice": m67, - "ordersTableTotal": m68, + "ordersTableAmount": m83, + "ordersTablePrice": m84, + "ordersTableTotal": m85, "overwrite": MessageLookupByLibrary.simpleMessage("Felülírás"), "ownOrder": MessageLookupByLibrary.simpleMessage("Ez a saját megrendelésed!"), @@ -1047,6 +1143,8 @@ class MessageLookup extends MessageLookupByLibrary { "paidWith": MessageLookupByLibrary.simpleMessage("Fizetetve"), "passwordRequirement": MessageLookupByLibrary.simpleMessage( "A jelszónak legalább 12 karaktert kell tartalmaznia, egy kisbetűt, egy nagybetűt és egy speciális szimbólumot."), + "pastTransactionsFromDate": MessageLookupByLibrary.simpleMessage( + "A pénztárcája megmutatja a megadott dátum után végrehajtott korábbi tranzakcióit."), "paymentUriDetailsAccept": MessageLookupByLibrary.simpleMessage("Fizetés"), "paymentUriDetailsAcceptQuestion": MessageLookupByLibrary.simpleMessage( @@ -1060,8 +1158,11 @@ class MessageLookup extends MessageLookupByLibrary { "paymentUriDetailsDeny": MessageLookupByLibrary.simpleMessage("Cancel"), "paymentUriDetailsTitle": MessageLookupByLibrary.simpleMessage("Kért fizetés"), - "paymentUriInactiveCoin": m69, + "paymentUriInactiveCoin": m86, "placeOrder": MessageLookupByLibrary.simpleMessage("Rendelés leadása"), + "pleaseAcceptAllCoinActivationRequests": + MessageLookupByLibrary.simpleMessage( + "Kérjük, fogadjon el minden különleges érmeaktiválási kérést, vagy törölje az érmék kijelölését."), "pleaseAddCoin": MessageLookupByLibrary.simpleMessage( "Kérjük, adjon hozzá egy érmét"), "pleaseRestart": MessageLookupByLibrary.simpleMessage( @@ -1081,21 +1182,23 @@ class MessageLookup extends MessageLookupByLibrary { "protectionCtrlWarning": MessageLookupByLibrary.simpleMessage( "Figyelmeztetés, ez az atomi csere nem dPoW védett."), "pubkey": MessageLookupByLibrary.simpleMessage("Publikációs kulcs"), + "qrCodeScanner": + MessageLookupByLibrary.simpleMessage("QR Code Scanner"), "question_1": MessageLookupByLibrary.simpleMessage( "Tárolja a privát kulcsaimat?"), - "question_10": m70, - "question_2": m71, + "question_10": m87, + "question_2": m88, "question_3": MessageLookupByLibrary.simpleMessage( "Mennyi ideig tart egy-egy atomi swap?"), "question_4": MessageLookupByLibrary.simpleMessage( "A csere időtartama alatt online kell lennem?"), - "question_5": m72, + "question_5": m89, "question_6": MessageLookupByLibrary.simpleMessage( "Biztosítanak felhasználói támogatást?"), "question_7": MessageLookupByLibrary.simpleMessage( "Vannak országos korlátozások?"), - "question_8": m73, - "question_9": m74, + "question_8": m90, + "question_9": m91, "rebrandingAnnouncement": MessageLookupByLibrary.simpleMessage( "Ez egy új korszak! Hivatalosan megváltoztattuk a nevünket „AtomicDEX”-ről „Komodo Wallet”-ra"), "receive": MessageLookupByLibrary.simpleMessage("FOGAD"), @@ -1135,7 +1238,7 @@ class MessageLookup extends MessageLookupByLibrary { "További információ a KMD aktív felhasználó jutalmakról"), "rewardsReceive": MessageLookupByLibrary.simpleMessage("Kapja meg a címet."), - "rewardsSuccess": m75, + "rewardsSuccess": m92, "rewardsTableFiat": MessageLookupByLibrary.simpleMessage("Utalás"), "rewardsTableRewards": MessageLookupByLibrary.simpleMessage("Jutalmak,\nKMD"), @@ -1145,9 +1248,9 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("Jutalom információ:"), "rewardsTableUXTO": MessageLookupByLibrary.simpleMessage("UTXO amt,\nKMD"), - "rewardsTimeDays": m76, - "rewardsTimeHours": m77, - "rewardsTimeMin": m78, + "rewardsTimeDays": m93, + "rewardsTimeHours": m94, + "rewardsTimeMin": m95, "rewardsTitle": MessageLookupByLibrary.simpleMessage("Jutalom információk"), "russianLanguage": MessageLookupByLibrary.simpleMessage("Orosz"), @@ -1192,13 +1295,15 @@ class MessageLookup extends MessageLookupByLibrary { "Válassza ki az összes teszteszközt"), "searchFilterSubtitleUBQ": MessageLookupByLibrary.simpleMessage("Az összes Ubiq kiválasztása"), + "searchFilterSubtitleZHTLC": MessageLookupByLibrary.simpleMessage( + "Válassza ki az összes ZHTLC-érmét"), "searchFilterSubtitleutxo": MessageLookupByLibrary.simpleMessage("Az összes UTXO kiválasztása"), "searchForTicker": MessageLookupByLibrary.simpleMessage("Keresse meg a Tickert"), "seconds": MessageLookupByLibrary.simpleMessage("s"), "security": MessageLookupByLibrary.simpleMessage("Biztonság"), - "seeOrders": m79, + "seeOrders": m96, "seeTxHistory": MessageLookupByLibrary.simpleMessage( "Tranzakciós előzmények megtekintése"), "seedPhrase": MessageLookupByLibrary.simpleMessage("SEED kifejezés"), @@ -1212,6 +1317,8 @@ class MessageLookup extends MessageLookupByLibrary { "Válassza ki az érmét amit VÁSÁROLNI szeretne"), "selectCoinToSell": MessageLookupByLibrary.simpleMessage( "Válassza ki az érmét amit ELADNI szeretne"), + "selectDate": + MessageLookupByLibrary.simpleMessage("Válasszon egy dátumot"), "selectFileImport": MessageLookupByLibrary.simpleMessage("Fájl kiválasztása"), "selectLanguage": @@ -1239,11 +1346,15 @@ class MessageLookup extends MessageLookupByLibrary { "settingLanguageTitle": MessageLookupByLibrary.simpleMessage("Nyelvek"), "settings": MessageLookupByLibrary.simpleMessage("Beállítások"), "share": MessageLookupByLibrary.simpleMessage("Megosztás"), - "shareAddress": m80, + "shareAddress": m97, + "shouldScanPastTransaction": m98, + "showAddress": + MessageLookupByLibrary.simpleMessage("Cím megjelenítése"), "showDetails": MessageLookupByLibrary.simpleMessage("Részletek megjelenítése"), "showMyOrders": MessageLookupByLibrary.simpleMessage("Mutasd a rendeléseimet"), + "showingOrders": m99, "signInWithPassword": MessageLookupByLibrary.simpleMessage("Jelentkezzen be jelszóval"), "signInWithSeedPhrase": @@ -1251,24 +1362,24 @@ class MessageLookup extends MessageLookupByLibrary { "simple": MessageLookupByLibrary.simpleMessage("Egyszerű"), "simpleTradeActivate": MessageLookupByLibrary.simpleMessage("Aktiválja a címet."), - "simpleTradeBuyHint": m81, + "simpleTradeBuyHint": m100, "simpleTradeBuyTitle": MessageLookupByLibrary.simpleMessage("Vásárlás"), "simpleTradeClose": MessageLookupByLibrary.simpleMessage("Bezárás"), - "simpleTradeMaxActiveCoins": m82, - "simpleTradeNotActive": m83, + "simpleTradeMaxActiveCoins": m101, + "simpleTradeNotActive": m102, "simpleTradeRecieve": MessageLookupByLibrary.simpleMessage("Fogadja"), - "simpleTradeSellHint": m84, + "simpleTradeSellHint": m103, "simpleTradeSellTitle": MessageLookupByLibrary.simpleMessage("Eladni"), "simpleTradeSend": MessageLookupByLibrary.simpleMessage("Küldje el a"), "simpleTradeShowLess": MessageLookupByLibrary.simpleMessage("Kevesebb mutatása"), "simpleTradeShowMore": MessageLookupByLibrary.simpleMessage("Többet mutasd meg"), - "simpleTradeUnableActivate": m85, + "simpleTradeUnableActivate": m104, "skip": MessageLookupByLibrary.simpleMessage("Kihagyás"), "snackbarDismiss": MessageLookupByLibrary.simpleMessage("Dissississ"), - "soundCantPlayThatMsg": m86, - "soundPlayedWhen": m87, + "soundCantPlayThatMsg": m105, + "soundPlayedWhen": m106, "soundSettingsLink": MessageLookupByLibrary.simpleMessage("Hang"), "soundSettingsTitle": MessageLookupByLibrary.simpleMessage("Hangbeállítások"), @@ -1280,19 +1391,22 @@ class MessageLookup extends MessageLookupByLibrary { "soundsNote": MessageLookupByLibrary.simpleMessage( "Ne feledje, hogy az alkalmazás beállításaiban beállíthatja az egyéni hangokat."), "spanishLanguage": MessageLookupByLibrary.simpleMessage("Spanyol"), + "startDate": MessageLookupByLibrary.simpleMessage("Kezdő dátum"), + "startSwap": + MessageLookupByLibrary.simpleMessage("Indítsa el a Swapot"), "step": MessageLookupByLibrary.simpleMessage("Lépés"), "success": MessageLookupByLibrary.simpleMessage("Siker!"), "support": MessageLookupByLibrary.simpleMessage("Támogatás"), - "supportLinksDesc": m88, + "supportLinksDesc": m107, "swap": MessageLookupByLibrary.simpleMessage("csere"), "swapCurrent": MessageLookupByLibrary.simpleMessage("Aktuális"), "swapDetailTitle": MessageLookupByLibrary.simpleMessage( "Erősitse meg a csere részleteit"), "swapEstimated": MessageLookupByLibrary.simpleMessage("Becslés"), "swapFailed": MessageLookupByLibrary.simpleMessage("Csere sikertelen"), - "swapGasActivate": m89, - "swapGasAmount": m90, - "swapGasAmountRequired": m91, + "swapGasActivate": m108, + "swapGasAmount": m109, + "swapGasAmountRequired": m110, "swapOngoing": MessageLookupByLibrary.simpleMessage("Csere folyamatban"), "swapProgress": @@ -1302,6 +1416,13 @@ class MessageLookup extends MessageLookupByLibrary { "swapTotal": MessageLookupByLibrary.simpleMessage("Összesen"), "swapUUID": MessageLookupByLibrary.simpleMessage("Swap UUID"), "switchTheme": MessageLookupByLibrary.simpleMessage("Switch téma"), + "syncFromDate": MessageLookupByLibrary.simpleMessage( + "Szinkronizálás a megadott dátumtól"), + "syncFromSaplingActivation": MessageLookupByLibrary.simpleMessage( + "Szinkronizálás a csemete aktiválásából"), + "syncNewTransactions": MessageLookupByLibrary.simpleMessage( + "Új tranzakciók szinkronizálása"), + "syncTransactionsQuestion": m111, "tagAVX20": MessageLookupByLibrary.simpleMessage("AVX20"), "tagBEP20": MessageLookupByLibrary.simpleMessage("BEP20"), "tagERC20": MessageLookupByLibrary.simpleMessage("ERC20"), @@ -1316,6 +1437,7 @@ class MessageLookup extends MessageLookupByLibrary { "tagQRC20": MessageLookupByLibrary.simpleMessage("QRC20"), "tagSBCH": MessageLookupByLibrary.simpleMessage("SBCH"), "tagUBQ": MessageLookupByLibrary.simpleMessage("UBQ"), + "tagZHTLC": MessageLookupByLibrary.simpleMessage("ZHTLC"), "takerOrder": MessageLookupByLibrary.simpleMessage("Vevő rendelés"), "timeOut": MessageLookupByLibrary.simpleMessage("Időtúllépés"), "titleCreatePassword": @@ -1342,6 +1464,12 @@ class MessageLookup extends MessageLookupByLibrary { "Nem sikerült kiszámítani a kereskedelmi díjakat"), "tradingFee": MessageLookupByLibrary.simpleMessage("kereskedési díj:"), "tradingMode": MessageLookupByLibrary.simpleMessage("Kereskedési mód:"), + "transactionAddress": + MessageLookupByLibrary.simpleMessage("Tranzakció címe"), + "transactionHidden": + MessageLookupByLibrary.simpleMessage("Tranzakció rejtett"), + "transactionHiddenPhishing": MessageLookupByLibrary.simpleMessage( + "Ez a tranzakció egy lehetséges adathalász kísérlet miatt el lett rejtve."), "tryRestarting": MessageLookupByLibrary.simpleMessage( "Ha még ekkor sem aktiválódik néhány érme, próbálja meg újraindítani az alkalmazást."), "turkishLanguage": MessageLookupByLibrary.simpleMessage("Török"), @@ -1357,25 +1485,25 @@ class MessageLookup extends MessageLookupByLibrary { "Túl sok a kérés.\n Tranzakciótörténeti kérések száma túllépte a limitet.\n Kérjük, próbálja meg később újra."), "txNotConfirmed": MessageLookupByLibrary.simpleMessage("NEM MEGERŐSÍTETT"), - "txleft": m92, + "txleft": m112, "ukrainianLanguage": MessageLookupByLibrary.simpleMessage("Ukrán"), "unlock": MessageLookupByLibrary.simpleMessage("kinyit"), "unlockFunds": MessageLookupByLibrary.simpleMessage("Alapok feloldása"), - "unlockSuccess": m93, + "unlockSuccess": m113, "unspendable": MessageLookupByLibrary.simpleMessage("elkölthetetlen"), "updatesAvailable": MessageLookupByLibrary.simpleMessage("Új verzió elérhető"), "updatesChecking": MessageLookupByLibrary.simpleMessage("Frissítések keresése..."), - "updatesCurrentVersion": m94, + "updatesCurrentVersion": m114, "updatesNotifAvailable": MessageLookupByLibrary.simpleMessage( "Új verzió elérhető. Kérjük, frissítse."), - "updatesNotifAvailableVersion": m95, + "updatesNotifAvailableVersion": m115, "updatesNotifTitle": MessageLookupByLibrary.simpleMessage("Frissítés elérhető"), "updatesSkip": MessageLookupByLibrary.simpleMessage("Egyelőre kihagyás"), - "updatesTitle": m96, + "updatesTitle": m116, "updatesUpToDate": MessageLookupByLibrary.simpleMessage("Már naprakész"), "updatesUpdate": MessageLookupByLibrary.simpleMessage("Frissítés"), @@ -1401,24 +1529,26 @@ class MessageLookup extends MessageLookupByLibrary { "warningOkBtn": MessageLookupByLibrary.simpleMessage("Ok"), "warningShareLogs": MessageLookupByLibrary.simpleMessage( "Figyelmeztetés - különleges esetekben ez a naplóadat érzékeny információkat tartalmaz, amelyek felhasználhatók a sikertelen cserékből származó érmék elköltésére!"), - "weFailedTo": m97, - "weFailedToActivate": m98, - "welcomeInfo": m99, + "weFailedTo": m117, + "weFailedToActivate": m118, + "welcomeInfo": m119, "welcomeLetSetUp": MessageLookupByLibrary.simpleMessage("KÉSZÍTSÜK FEL!"), "welcomeTitle": MessageLookupByLibrary.simpleMessage("Üdvözöljük"), "welcomeWallet": MessageLookupByLibrary.simpleMessage("pénztárca"), "willBeRedirected": MessageLookupByLibrary.simpleMessage( "A kitöltés után átirányítjuk a portfólió oldalra."), + "willTakeTime": MessageLookupByLibrary.simpleMessage( + "Ez eltart egy ideig, és az alkalmazást az előtérben kell tartani.\nAz alkalmazás aktiválás közbeni leállítása problémákhoz vezethet."), "withdraw": MessageLookupByLibrary.simpleMessage("Kifizetés"), - "withdrawCameraAccessText": m100, + "withdrawCameraAccessText": m120, "withdrawCameraAccessTitle": MessageLookupByLibrary.simpleMessage("Hozzáférés megtagadva"), "withdrawConfirm": MessageLookupByLibrary.simpleMessage("Kiutalás megerősítése"), "withdrawConfirmError": MessageLookupByLibrary.simpleMessage( "Valami rosszul sült el. Próbálja meg később újra."), - "withdrawValue": m101, + "withdrawValue": m121, "wrongCoinSpan1": MessageLookupByLibrary.simpleMessage( "Ön megpróbál beolvasni egy fizetési QR-kódot a következőhöz"), "wrongCoinSpan2": MessageLookupByLibrary.simpleMessage("de a"), @@ -1437,7 +1567,7 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage( "van egy megbízása, amellyel az új megbízások összeilleszthetők."), "youAreSending": MessageLookupByLibrary.simpleMessage("Ön küld:"), - "youWillReceiveClaim": m102, + "youWillReceiveClaim": m122, "youWillReceived": MessageLookupByLibrary.simpleMessage("Fog kapni:"), "yourWallet": MessageLookupByLibrary.simpleMessage("a pénztárcája") }; diff --git a/lib/l10n/messages_ja.dart b/lib/l10n/messages_ja.dart index 77e7c5e54..3645fda7f 100644 --- a/lib/l10n/messages_ja.dart +++ b/lib/l10n/messages_ja.dart @@ -19,246 +19,286 @@ typedef String MessageIfAbsent(String messageStr, List args); class MessageLookup extends MessageLookupByLibrary { String get localeName => 'ja'; - static m0(name) => "${name} の有効化に成功しました!"; + static m0(protocolName) => "${protocolName} コインをアクティブにしますか?"; - static m1(title) => "${title} 住所の連絡先のみを表示"; + static m1(coinName) => "${coinName}をアクティブ化しています"; - static m2(abbr) => "${abbr} が有効化されていないため、${abbr} アドレスに送金できません。ポートフォリオへどうぞ。"; + static m2(coinName) => "${coinName} のアクティベーション"; - static m3(appName) => + static m3(protocolName) => "${protocolName} のアクティベーションが進行中です"; + + static m4(name) => "${name} の有効化に成功しました!"; + + static m5(title) => "${title} 住所の連絡先のみを表示"; + + static m6(abbr) => "${abbr} が有効化されていないため、${abbr} アドレスに送金できません。ポートフォリオへどうぞ。"; + + static m7(appName) => "いいえ! ${appName} は非親権者です。秘密鍵、シード フレーズ、PIN などの機密データを保存することはありません。このデータはユーザーのデバイスにのみ保存され、デバイスから離れることはありません。あなたは自分の資産を完全に管理しています。"; - static m4(appName) => - "${appName} は、モバイルでは Android と iPhone の両方で利用でき、デスクトップでは Windows、Mac、および Linux オペレーティング システムで利用できます。"; + static m8(appName) => + "${appName} は、モバイルでは Android と iPhone の両方で利用でき、デスクトップでは Windows、Mac、Linux オペレーティング システム で利用できます。"; - static m5(appName) => + static m9(appName) => "他の DEX では通常、単一のブロックチェーン ネットワークに基づく資産の取引のみが許可され、プロキシ トークンが使用され、同じ資金で単一の注文のみが許可されます。 ${appName} を使用すると、プロキシ トークンを使用せずに、2 つの異なるブロックチェーン ネットワーク間でネイティブに取引できます。同じ資金で複数の注文を出すこともできます。たとえば、KMD、QTUM、または VRSC で 0.1 BTC を販売できます。最初に約定した注文は、他のすべての注文を自動的にキャンセルします。"; - static m6(appName) => + static m10(appName) => "各スワップの処理時間は、いくつかの要因によって決まります。取引された資産のブロック時間は、各ネットワークによって異なります (通常、ビットコインが最も遅いです)。さらに、ユーザーはセキュリティ設定をカスタマイズできます。たとえば、${appName} に、わずか 3 回の確認後に KMD トランザクションを最終と見なすように依頼できます。これにより、公証。"; - static m7(appName) => + static m11(appName) => "${appName} で取引する際に考慮すべき 2 つの手数料カテゴリがあります。 1. ${appName} は、テイカー オーダーの取引手数料として約 0.13% (取引量の 1/777、ただし 0.0001 以上) を請求し、メイカー オーダーの手数料はゼロです。 2. メーカーとテイカーの両方が、アトミック スワップ トランザクションを行う際に、関連するブロックチェーンに通常のネットワーク料金を支払う必要があります。ネットワーク手数料は、選択した取引ペアによって大きく異なります。"; - static m8(name, link, appName, appCompanyShort) => + static m12(name, link, appName, appCompanyShort) => "はい! ${appName} は、${appCompanyShort} ${name} を通じてサポートを提供しています。チームとコミュニティはいつでも喜んでお手伝いします!"; - static m9(appName) => + static m13(appName) => "いいえ! ${appName} は完全に分散化されています。第三者によるユーザー アクセスを制限することはできません。"; - static m10(appName, appCompanyShort) => + static m14(appName, appCompanyShort) => "${appName} は ${appCompanyShort} チームによって開発されました。 ${appCompanyShort} は、アトミック スワップ、Delayed Proof of Work、相互運用可能なマルチチェーン アーキテクチャなどの革新的なソリューションに取り組んでいる、最も確立されたブロックチェーン プロジェクトの 1 つです。"; - static m11(appName) => - "絶対!詳細については、開発者向けドキュメントを参照するか、パートナーシップについてお問い合わせください。特定の技術的な質問がありますか? ${appName} 開発者コミュニティはいつでもお手伝いします!"; + static m15(appName) => + "絶対!詳細については、開発者向けドキュメントをご覧いただくか、パートナーシップに関するお問い合わせでご連絡ください。特定の技術的な質問がありますか? ${appName} 開発者コミュニティはいつでもお手伝いいたします。"; + + static m16(coinName1, coinName2) => "${coinName1}/${coinName2} に基づく"; - static m12(batteryLevelCritical) => + static m17(batteryLevelCritical) => "交換を安全に行うには、バッテリーの充電が重要です (${batteryLevelCritical}%)。充電してからもう一度お試しください。"; - static m13(batteryLevelLow) => + static m18(batteryLevelLow) => "バッテリーの充電が ${batteryLevelLow}% 未満です。電話の充電を検討してください。"; - static m14(seconde) => "オーダーマッチが進行中です。${seconde} 秒お待ちください!"; + static m19(seconde) => "オーダーマッチが進行中です。${seconde} 秒お待ちください!"; + + static m20(index) => "${index}単語を入力してください"; + + static m21(index) => "シード フレーズの ${index} 単語は何ですか?"; + + static m22(coin) => "${coin} のアクティベーションがキャンセルされました"; - static m15(index) => "${index}単語を入力してください"; + static m23(coin) => "${coin} を正常にアクティブ化しました"; - static m16(index) => "シード フレーズの ${index} 単語は何ですか?"; + static m24(protocolName) => "${protocolName} コインが有効化されました"; - static m17(name) => "連絡先 ${name} を削除してもよろしいですか?"; + static m25(protocolName) => "${protocolName} コインが正常に有効化されました"; - static m18(iUnderstand) => + static m26(protocolName) => "${protocolName} コインは有効化されていません"; + + static m27(name) => "連絡先 ${name} を削除してもよろしいですか?"; + + static m28(iUnderstand) => "カスタム シード フレーズは、生成された BIP39 準拠のシード フレーズまたは秘密鍵 (WIF) よりも安全性が低く、クラックされやすい可能性があります。リスクを理解し、自分が何をしているかを理解していることを確認するには、下のボックスに「${iUnderstand}」と入力してください。"; - static m19(abbr) => "入力 ${abbr} アドレス"; + static m29(coinName) => "${coinName} の取引手数料を受け取る"; + + static m30(coinName) => "${coinName} の取引手数料を送信します"; + + static m31(abbr) => "入力 ${abbr} アドレス"; - static m20(selected, remains) => + static m32(selected, remains) => "${remains} を引き続き有効にすることができます。選択済み: ${selected}"; - static m21(gas) => "ガスが不足しています - 少なくとも ${gas} Gwei を使用してください"; + static m33(gas) => "ガスが不足しています - 少なくとも ${gas} Gwei を使用してください"; - static m22(appName, appCompanyLong) => + static m34(appName, appCompanyLong) => "This End-User License Agreement (\'EULA\') is a legal agreement between you and ${appCompanyLong}.\n\nThis EULA agreement governs your acquisition and use of our ${appName} mobile software (\'Software\', \'Mobile Application\', \'Application\' or \'App\') directly from ${appCompanyLong} or indirectly through a ${appCompanyLong} authorized entity, reseller or distributor (a \'Distributor\').\nPlease read this EULA agreement carefully before completing the installation process and using the ${appName} mobile software. It provides a license to use the ${appName} mobile software and contains warranty information and liability disclaimers.\nIf you register for the beta program of the ${appName} mobile software, this EULA agreement will also govern that trial. By clicking \'accept\' or installing and/or using the ${appName} mobile software, you are confirming your acceptance of the Software and agreeing to become bound by the terms of this EULA agreement.\nIf you are entering into this EULA agreement on behalf of a company or other legal entity, you represent that you have the authority to bind such entity and its affiliates to these terms and conditions. If you do not have such authority or if you do not agree with the terms and conditions of this EULA agreement, do not install or use the Software, and you must not accept this EULA agreement.\nThis EULA agreement shall apply only to the Software supplied by ${appCompanyLong} herewith regardless of whether other software is referred to or described herein. The terms also apply to any ${appCompanyLong} updates, supplements, Internet-based services, and support services for the Software, unless other terms accompany those items on delivery. If so, those terms apply.\n\nLICENSE GRANT\n\n${appCompanyLong} hereby grants you a personal, non-transferable, non-exclusive license to use the ${appName} mobile software on your devices in accordance with the terms of this EULA agreement.\n\nYou are permitted to load the ${appName} mobile software (for example a PC, laptop, mobile or tablet) under your control. You are responsible for ensuring your device meets the minimum security and resource requirements of the ${appName} mobile software.\n\nYou are not permitted to:\n(a) edit, alter, modify, adapt, translate or otherwise change the whole or any part of the Software nor permit the whole or any part of the Software to be combined with or become incorporated in any other software, nor decompile, disassemble or reverse engineer the Software or attempt to do any such things;\n(b) reproduce, copy, distribute, resell or otherwise use the Software for any commercial purpose;\n(c) use the Software in any way which breaches any applicable local, national or international law;\n(d) use the Software for any purpose that ${appCompanyLong} considers is a breach of this EULA agreement.\n\nINTELLECTUAL PROPERTY AND OWNERSHIP\n\n${appCompanyLong} shall at all times retain ownership of the Software as originally downloaded by you and all subsequent downloads of the Software by you. The Software (and the copyright, and other intellectual property rights of whatever nature in the Software, including any modifications made thereto) are and shall remain the property of ${appCompanyLong}.\n\n${appCompanyLong} reserves the right to grant licenses to use the Software to third parties.\n\nTERMINATION\n\nThis EULA agreement is effective from the date you first use the Software and shall continue until terminated. You may terminate it at any time upon written notice to ${appCompanyLong}.\nIt will also terminate immediately if you fail to comply with any term of this EULA agreement. Upon such termination, the licenses granted by this EULA agreement will immediately terminate and you agree to stop all access and use of the Software. The provisions that by their nature continue and survive will survive any termination of this EULA agreement.\n\nGOVERNING LAW\n\nThis EULA agreement, and any dispute arising out of or in connection with this EULA agreement, shall be governed by and construed in accordance with the laws of Vietnam.\n\nThis document was last updated on January 31st, 2020"; - static m23(appCompanyLong) => + static m35(appCompanyLong) => "${appCompanyLong} is the owner and/or authorised user of all trademarks, service marks, design marks, patents, copyrights, database rights and all other intellectual property appearing on or contained within the application, unless otherwise indicated. All information, text, material, graphics, software and advertisements on the application interface are copyright of ${appCompanyLong}, its suppliers and licensors, unless otherwise expressly indicated by ${appCompanyLong}. \nExcept as provided in the Terms, use of the application does not grant You any right, title, interest or license to any such intellectual property You may have access to on the application. \nWe own the rights, or have permission to use, the trademarks listed in our application. You are not authorised to use any of those trademarks without our written authorization – doing so would constitute a breach of our or another party’s intellectual property rights. \nAlternatively, we might authorise You to use the content in our application if You previously contact us and we agree in writing."; - static m24(appCompanyShort, appCompanyLong) => + static m36(appCompanyShort, appCompanyLong) => "${appCompanyLong} cannot guarantee the safety or security of your computer systems. We do not accept liability for any loss or corruption of electronically stored data or any damage to any computer system occurred in connection with the use of the application or of the user content.\n${appCompanyLong} makes no representation or warranty of any kind, express or implied, as to the operation of the application or the user content. You expressly agree that your use of the application is entirely at your sole risk.\nYou agree that the content provided in the application and the user content do not constitute financial product, legal or taxation advice, and You agree on not representing the user content or the application as such.\nTo the extent permitted by current legislation, the application is provided on an “as is, as available” basis.\n\n${appCompanyLong} expressly disclaims all responsibility for any loss, injury, claim, liability, or damage, or any indirect, incidental, special or consequential damages or loss of profits whatsoever resulting from, arising out of or in any way related to:\n(a) any errors in or omissions of the application and/or the user content, including but not limited to technical inaccuracies and typographical errors;\n(b) any third party website, application or content directly or indirectly accessed through links in the application, including but not limited to any errors or omissions;\n(c) the unavailability of the application or any portion of it;\n(d) your use of the application;\n(e) your use of any equipment or software in connection with the application.\n\nAny Services offered in connection with the Platform are provided on an \'as is\' basis, without any representation or warranty, whether express, implied or statutory. To the maximum extent permitted by applicable law, we specifically disclaim any implied warranties of title, merchantability, suitability for a particular purpose and/or non-infringement. We do not make any representations or warranties that use of the Platform will be continuous, uninterrupted, timely, or error-free.\nWe make no warranty that any Platform will be free from viruses, malware, or other related harmful material and that your ability to access any Platform will be uninterrupted. Any defects or malfunction in the product should be directed to the third party offering the Platform, not to ${appCompanyShort}.\nWe will not be responsible or liable to You for any loss of any kind, from action taken, or taken in reliance on the material or information contained in or through the Platform.\nThis is experimental and unfinished software. Use at your own risk. No warranty for any kind of damage. By using this application you agree to this terms and conditions."; - static m25(appCompanyLong) => + static m37(appCompanyLong) => "You agree and understand that there are risks associated with utilizing Services involving Virtual Currencies including, but not limited to, the risk of failure of hardware, software and internet connections, the risk of malicious software introduction, and the risk that third parties may obtain unauthorized access to information stored within your Wallet, including but not limited to your public and private keys. You agree and understand that ${appCompanyLong} will not be responsible for any communication failures, disruptions, errors, distortions or delays You may experience when using the Services, however caused.\nYou accept and acknowledge that there are risks associated with utilizing any virtual currency network, including, but not limited to, the risk of unknown vulnerabilities in or unanticipated changes to the network protocol. You acknowledge and accept that ${appCompanyLong} has no control over any cryptocurrency network and will not be responsible for any harm occurring as a result of such risks, including, but not limited to, the inability to reverse a transaction, and any losses in connection therewith due to erroneous or fraudulent actions.\nThe risk of loss in using Services involving Virtual Currencies may be substantial and losses may occur over a short period of time. In addition, price and liquidity are subject to significant fluctuations that may be unpredictable.\nVirtual Currencies are not legal tender and are not backed by any sovereign government. In addition, the legislative and regulatory landscape around Virtual Currencies is constantly changing and may affect your ability to use, transfer, or exchange Virtual Currencies.\nCFDs are complex instruments and come with a high risk of losing money rapidly due to leverage. 80.6% of retail investor accounts lose money when trading CFDs with this provider. You should consider whether You understand how CFDs work and whether You can afford to take the high risk of losing your money."; - static m26(appCompanyLong) => + static m38(appCompanyLong) => "You agree to indemnify, defend and hold harmless ${appCompanyLong}, its officers, directors, employees, agents, licensors, suppliers and any third party information providers to the application from and against all losses, expenses, damages and costs, including reasonable lawyer fees, resulting from any violation of the Terms by You.\nYou also agree to indemnify ${appCompanyLong} against any claims that information or material which You have submitted to ${appCompanyLong} is in violation of any law or in breach of any third party rights (including, but not limited to, claims in respect of defamation, invasion of privacy, breach of confidence, infringement of copyright or infringement of any other intellectual property right)."; - static m27(appCompanyLong) => + static m39(appCompanyLong) => "In order to be completed, any Virtual Currency transaction created with the ${appCompanyLong} must be confirmed and recorded in the Virtual Currency ledger associated with the relevant Virtual Currency network. Such networks are decentralized, peer-to-peer networks supported by independent third parties, which are not owned, controlled or operated by ${appCompanyLong}.\n${appCompanyLong} has no control over any Virtual Currency network and therefore cannot and does not ensure that any transaction details You submit via our Services will be confirmed on the relevant Virtual Currency network. You agree and understand that the transaction details You submit via our Services may not be completed, or may be substantially delayed, by the Virtual Currency network used to process the transaction. We do not guarantee that the Wallet can transfer title or right in any Virtual Currency or make any warranties whatsoever with regard to title.\nOnce transaction details have been submitted to a Virtual Currency network, we cannot assist You to cancel or otherwise modify your transaction or transaction details. ${appCompanyLong} has no control over any Virtual Currency network and does not have the ability to facilitate any cancellation or modification requests.\nIn the event of a Fork, ${appCompanyLong} may not be able to support activity related to your Virtual Currency. You agree and understand that, in the event of a Fork, the transactions may not be completed, completed partially, incorrectly completed, or substantially delayed. ${appCompanyLong} is not responsible for any loss incurred by You caused in whole or in part, directly or indirectly, by a Fork.\nIn no event shall ${appCompanyLong}, its affiliates and service providers, or any of their respective officers, directors, agents, employees or representatives, be liable for any lost profits or any special, incidental, indirect, intangible, or consequential damages, whether based on contract, tort, negligence, strict liability, or otherwise, arising out of or in connection with authorized or unauthorized use of the services, or this agreement, even if an authorized representative of ${appCompanyLong} has been advised of, has known of, or should have known of the possibility of such damages. \nFor example (and without limiting the scope of the preceding sentence), You may not recover for lost profits, lost business opportunities, or other types of special, incidental, indirect, intangible, or consequential damages. Some jurisdictions do not allow the exclusion or limitation of incidental or consequential damages, so the above limitation may not apply to You. \nWe will not be responsible or liable to You for any loss and take no responsibility for damages or claims arising in whole or in part, directly or indirectly from: \n(a) user error such as forgotten passwords, incorrectly constructed transactions, or mistyped Virtual Currency addresses; \n(b) server failure or data loss; \n(c) corrupted or otherwise non-performing Wallets or Wallet files; \n(d) unauthorized access to applications; \n(e) any unauthorized activities, including without limitation the use of hacking, viruses, phishing, brute forcing or other means of attack against the Services."; - static m28(appCompanyShort, appCompanyLong) => + static m40(appCompanyShort, appCompanyLong) => "For the avoidance of doubt, ${appCompanyLong} does not provide investment, tax or legal advice, nor does ${appCompanyLong} broker trades on your behalf. All ${appCompanyLong} trades are executed automatically, based on the parameters of your order instructions and in accordance with posted Trade execution procedures, and You are solely responsible for determining whether any investment, investment strategy or related transaction is appropriate for You based on your personal investment objectives, financial circumstances and risk tolerance. You should consult your legal or tax professional regarding your specific situation. Neither ${appCompanyShort} nor its owners, members, officers, directors, partners, consultants, nor anyone involved in the publication of this application, is a registered investment adviser or broker-dealer or associated person with a registered investment adviser or broker-dealer and none of the foregoing make any recommendation that the purchase or sale of crypto-assets or securities of any company profiled in the mobile Application is suitable or advisable for any person or that an investment or transaction in such crypto-assets or securities will be profitable. The information contained in the mobile Application is not intended to be, and shall not constitute, an offer to sell or the solicitation of any offer to buy any crypto-asset or security. The information presented in the mobile Application is provided for informational purposes only and is not to be treated as advice or a recommendation to make any specific investment or transaction. Please, consult with a qualified professional before making any decisions. The opinions and analysis included in this applications are based on information from sources deemed to be reliable and are provided “as is” in good faith. ${appCompanyShort} makes no representation or warranty, expressed, implied, or statutory, as to the accuracy or completeness of such information, which may be subject to change without notice. ${appCompanyShort} shall not be liable for any errors or any actions taken in relation to the above. Statements of opinion and belief are those of the authors and/or editors who contribute to this application, and are based solely upon the information possessed by such authors and/or editors. No inference should be drawn that ${appCompanyShort} or such authors or editors have any special or greater knowledge about the crypto-assets or companies profiled or any particular expertise in the industries or markets in which the profiled crypto-assets and companies operate and compete. Information on this application is obtained from sources deemed to be reliable; however, ${appCompanyShort} takes no responsibility for verifying the accuracy of such information and makes no representation that such information is accurate or complete. Certain statements included in this application may be forward-looking statements based on current expectations. ${appCompanyShort} makes no representation and provides no assurance or guarantee that such forward-looking statements will prove to be accurate. Persons using the ${appCompanyShort} application are urged to consult with a qualified professional with respect to an investment or transaction in any crypto-asset or company profiled herein. Additionally, persons using this application expressly represent that the content in this application is not and will not be a consideration in such persons’ investment or transaction decisions. Traders should verify independently information provided in the ${appCompanyShort} application by completing their own due diligence on any crypto-asset or company in which they are contemplating an investment or transaction of any kind and review a complete information package on that crypto-asset or company, which should include, but not be limited to, related blog updates and press releases. Past performance of profiled crypto-assets and securities is not indicative of future results. Crypto-assets and companies profiled on this site may lack an active trading market and invest in a crypto-asset or security that lacks an active trading market or trade on certain media, platforms and markets are deemed highly speculative and carry a high degree of risk. Anyone holding such crypto-assets and securities should be financially able and prepared to bear the risk of loss and the actual loss of his or her entire trade. The information in this application is not designed to be used as a basis for an investment decision. Persons using the ${appCompanyShort} application should confirm to their own satisfaction the veracity of any information prior to entering into any investment or making any transaction. The decision to buy or sell any crypto-asset or security that may be featured by ${appCompanyShort} is done purely and entirely at the reader’s own risk. As a reader and user of this application, You agree that under no circumstances will You seek to hold liable owners, members, officers, directors, partners, consultants or other persons involved in the publication of this application for any losses incurred by the use of information contained in this application ${appCompanyShort} and its contractors and affiliates may profit in the event the crypto-assets and securities increase or decrease in value. Such crypto-assets and securities may be bought or sold from time to time, even after ${appCompanyShort} has distributed positive information regarding the crypto-assets and companies. ${appCompanyShort} has no obligation to inform readers of its trading activities or the trading activities of any of its owners, members, officers, directors, contractors and affiliates and/or any companies affiliated with BC Relations’ owners, members, officers, directors, contractors and affiliates. ${appCompanyShort} and its affiliates may from time to time enter into agreements to purchase crypto-assets or securities to provide a method to reach their goals."; - static m29(appCompanyLong) => + static m41(appCompanyLong) => "The Terms are effective until terminated by ${appCompanyLong}. \nIn the event of termination, You are no longer authorized to access the Application, but all restrictions imposed on You and the disclaimers and limitations of liability set out in the Terms will survive termination. \nSuch termination shall not affect any legal right that may have accrued to ${appCompanyLong} against You up to the date of termination. \n${appCompanyLong} may also remove the Application as a whole or any sections or features of the Application at any time. "; - static m30(appCompanyLong) => + static m42(appCompanyLong) => "The provisions of previous paragraphs are for the benefit of ${appCompanyLong} and its officers, directors, employees, agents, licensors, suppliers, and any third party information providers to the Application. Each of these individuals or entities shall have the right to assert and enforce those provisions directly against You on its own behalf."; - static m31(appName, appCompanyLong) => + static m43(appName, appCompanyLong) => "${appName} mobile is a non-custodial, decentralized and blockchain based application and as such does ${appCompanyLong} never store any user-data (accounts and authentication data). \nWe also collect and process non-personal, anonymized data for statistical purposes and analysis and to help us provide a better service.\n\nThis document was last updated on January 31st, 2020"; - static m32(appName, appCompanyLong) => + static m44(appName, appCompanyLong) => "This disclaimer applies to the contents and services of the app ${appName} and is valid for all users of the “Application” (\'Software\', “Mobile Application”, “Application” or “App”).\n\nThe Application is owned by ${appCompanyLong}.\n\nWe reserve the right to amend the following Terms and Conditions (governing the use of the application “${appName} mobile”) at any time without prior notice and at our sole discretion. It is your responsibility to periodically check this Terms and Conditions for any updates to these Terms, which shall come into force once published.\nYour continued use of the application shall be deemed as acceptance of the following Terms.\nWe are a company incorporated in Vietnam and these Terms and Conditions are governed by and subject to the laws of Vietnam.\nIf You do not agree with these Terms and Conditions, You must not use or access this software."; - static m33(appName) => + static m45(appName) => "You are not allowed to decompile, decode, disassemble, rent, lease, loan, sell, sublicense, or create derivative works from the ${appName} mobile application or the user content. Nor are You allowed to use any network monitoring or detection software to determine the software architecture, or extract information about usage or individuals’ or users’ identities. \nYou are not allowed to copy, modify, reproduce, republish, distribute, display, or transmit for commercial, non-profit or public purposes all or any portion of the application or the user content without our prior written authorization."; - static m34(appName, appCompanyLong) => + static m46(appName, appCompanyLong) => "If you create an account in the Mobile Application, you are responsible for maintaining the security of your account and you are fully responsible for all activities that occur under the account and any other actions taken in connection with it. We will not be liable for any acts or omissions by you, including any damages of any kind incurred as a result of such acts or omissions. \n\n${appName} mobile is a non-custodial wallet implementation and thus ${appCompanyLong} can not access nor restore your account in case of (data) loss."; - static m35(appName) => + static m47(appName) => "End-User License Agreement (EULA) of ${appName} mobile:"; - static m36(coin) => "${coin} フォーセットにリクエストを送信しています..."; + static m48(coinAbbr) => "${coinAbbr} のアクティベーションをキャンセルできませんでした"; + + static m49(coin) => "${coin} フォーセットにリクエストを送信しています..."; - static m37(appCompanyShort) => "${appCompanyShort} ニュース"; + static m50(appCompanyShort) => "${appCompanyShort} ニュース"; - static m38(value) => "料金は ${value} までである必要があります"; + static m51(value) => "料金は ${value} までである必要があります"; - static m39(coin) => "${coin} 手数料"; + static m52(coin) => "${coin} 手数料"; - static m40(coin) => "${coin}をアクティベートしてください。"; + static m53(coin) => "${coin}をアクティベートしてください。"; - static m41(abbr) => "${abbr} 取引手数料を支払うのに十分な残高がありません"; + static m54(value) => "グウェイは ${value} までである必要があります"; - static m42(coinAbbr) => "${coinAbbr} は利用できません:("; + static m55(coinName) => "受信 ${coinName} txs 保護設定"; - static m43(coinName) => "❗注意! ${coinName} の市場の 24 時間の取引高は 10,000 ドル未満です。"; + static m56(abbr) => "${abbr} 取引手数料を支払うのに十分な残高がありません"; - static m44(coinName, number) => "最低販売額は ${number} ${coinName} です"; + static m57(coin) => "無効な ${coin} アドレスです"; - static m45(coinName, number) => "最低購入金額は ${number} ${coinName} です"; + static m58(coinAbbr) => "${coinAbbr} は利用できません:("; - static m46(buyCoin, buyAmount, sellCoin, sellAmount) => + static m59(coinName) => "❗注意! ${coinName} の市場の 24 時間の取引高は 10,000 ドル未満です。"; + + static m60(value) => "制限は最大 ${value} である必要があります"; + + static m61(coinName, number) => "最低販売額は ${number} ${coinName} です"; + + static m62(coinName, number) => "最低購入金額は ${number} ${coinName} です"; + + static m63(buyCoin, buyAmount, sellCoin, sellAmount) => "注文の最小額は ${buyAmount} ${buyCoin} (${sellAmount} ${sellCoin}) です"; - static m47(coinName, number) => "最低販売額は ${number} ${coinName} です"; + static m64(coinName, number) => "最低販売額は ${number} ${coinName} です"; - static m48(minValue, coin) => "${minValue} ${coin} より大きくなければなりません"; + static m65(minValue, coin) => "${minValue} ${coin} より大きくなければなりません"; - static m49(appName) => + static m66(appName) => "現在、携帯データ ネットワークを使用しており、${appName} P2P ネットワークに参加すると、インターネット トラフィックが消費されることに注意してください。携帯電話のデータ プランが高額な場合は、WiFi ネットワークを使用することをお勧めします。"; - static m50(coin) => "最初に ${coin} を有効にして、残高をチャージしてください"; + static m67(coin) => "最初に ${coin} を有効にして、残高をチャージしてください"; - static m51(number) => "${number} オーダーを作成:"; + static m68(number) => "${number} オーダーを作成:"; - static m52(coin) => "${coin} の残高が少なすぎます"; + static m69(coin) => "${coin} の残高が少なすぎます"; - static m53(coin, fee) => + static m70(coin, fee) => "料金を支払うのに十分な ${coin} がありません。 MIN 残高は ${fee} ${coin} です"; - static m54(coinName) => "${coinName} の金額を入力してください。"; + static m71(coinName) => "${coinName} の金額を入力してください。"; - static m55(coin) => "取引に十分な ${coin} がありません!"; + static m72(coin) => "取引に十分な ${coin} がありません!"; - static m56(sell, buy) => "${sell}/${buy} スワップが正常に完了しました"; + static m73(sell, buy) => "${sell}/${buy} スワップが正常に完了しました"; - static m57(sell, buy) => "${sell}/${buy} スワップに失敗しました"; + static m74(sell, buy) => "${sell}/${buy} スワップに失敗しました"; - static m58(sell, buy) => "${sell}/${buy} スワップ開始"; + static m75(sell, buy) => "${sell}/${buy} スワップ開始"; - static m59(sell, buy) => "${sell}/${buy} スワップがタイムアウトしました"; + static m76(sell, buy) => "${sell}/${buy} スワップがタイムアウトしました"; - static m60(coin) => "${coin} のトランザクションを受け取りました!"; + static m77(coin) => "${coin} のトランザクションを受け取りました!"; - static m61(assets) => "${assets} アセット"; + static m78(assets) => "${assets} アセット"; - static m62(coin) => "${coin} の注文はすべてキャンセルされます。"; + static m79(coin) => "${coin} の注文はすべてキャンセルされます。"; - static m63(delta) => "便宜: CEX +${delta}%"; + static m80(delta) => "便宜: CEX +${delta}%"; - static m64(delta) => "高価: CEX ${delta}%"; + static m81(delta) => "高価: CEX ${delta}%"; - static m65(fill) => "${fill}% 埋められました"; + static m82(fill) => "${fill}% 埋められました"; - static m66(coin) => "金額 (${coin})"; + static m83(coin) => "金額 (${coin})"; - static m67(coin) => "価格 (${coin})"; + static m84(coin) => "価格 (${coin})"; - static m68(coin) => "合計 (${coin})"; + static m85(coin) => "合計 (${coin})"; - static m69(abbr) => "${abbr} はアクティブではありません。有効にしてからもう一度お試しください。"; + static m86(abbr) => "${abbr} はアクティブではありません。有効にしてからもう一度お試しください。"; - static m70(appName) => "${appName} を使用できるデバイスはどれですか?"; + static m87(appName) => "${appName} を使用できるデバイスはどれですか?"; - static m71(appName) => "${appName} での取引は、他の DEX での取引とどう違うのですか?"; + static m88(appName) => "${appName} での取引は、他の DEX での取引とどう違うのですか?"; - static m72(appName) => "${appName} の料金はどのように計算されますか?"; + static m89(appName) => "${appName} の料金はどのように計算されますか?"; - static m73(appName) => "${appName} の背後にいるのは誰ですか?"; + static m90(appName) => "${appName} の背後にいるのは誰ですか?"; - static m74(appName) => "${appName} で独自のホワイトラベル取引所を開発することは可能ですか?"; + static m91(appName) => "${appName} で独自のホワイトラベル取引所を開発することは可能ですか?"; - static m75(amount) => "成功! ${amount} KMD を受け取りました。"; + static m92(amount) => "成功! ${amount} KMD を受け取りました。"; - static m76(dd) => "${dd} 日"; + static m93(dd) => "${dd} 日"; - static m77(hh, minutes) => "${hh}時 ${minutes}分"; + static m94(hh, minutes) => "${hh}時 ${minutes}分"; - static m78(mm) => "${mm}分"; + static m95(mm) => "${mm}分"; - static m79(amount) => "クリックして ${amount} 件の注文を表示"; + static m96(amount) => "クリックして ${amount} 件の注文を表示"; - static m80(coinName, address) => "私の ${coinName} アドレス: \n${address}"; + static m97(coinName, address) => "私の ${coinName} アドレス: \n${address}"; - static m81(coin) => "購入する${coin}の金額を入力してください"; + static m98(coin) => "過去の ${coin} 取引をスキャンしますか?"; - static m82(maxCoins) => "アクティブなコインの最大数は ${maxCoins} です。いくつか無効にしてください。"; + static m99(count, maxCount) => "${maxCount} 件中 ${count} 件の注文を表示しています。"; - static m83(coin) => "${coin} はアクティブではありません!"; + static m100(coin) => "購入する${coin}の金額を入力してください"; - static m84(coin) => "売却する${coin}の金額を入力してください"; + static m101(maxCoins) => "アクティブなコインの最大数は ${maxCoins} です。いくつか無効にしてください。"; - static m85(coin) => "${coin} をアクティベートできません"; + static m102(coin) => "${coin} はアクティブではありません!"; - static m86(description) => + static m103(coin) => "売却する${coin}の金額を入力してください"; + + static m104(coin) => "${coin} をアクティベートできません"; + + static m105(description) => "mp3またはwavファイルを選択してください。 ${description} になったら再生します。"; - static m87(description) => "${description} の場合にプレイ"; + static m106(description) => "${description} の場合にプレイ"; - static m88(appName) => + static m107(appName) => "ご不明な点がある場合、または ${appName} アプリで技術的な問題を発見したと思われる場合は、報告してチームからサポートを受けることができます。"; - static m89(coin) => "最初に ${coin} を有効にして残高をチャージしてください"; + static m108(coin) => "最初に ${coin} を有効にして残高をチャージしてください"; - static m90(coin) => "${coin} の残高は、取引手数料を支払うのに十分ではありません。"; + static m109(coin) => "${coin} の残高は、取引手数料を支払うのに十分ではありません。"; - static m91(coin, amount) => + static m110(coin, amount) => "${coin} の残高は、取引手数料を支払うのに十分ではありません。${coin} ${amount} が必要です。"; - static m92(left) => "残りのトランザクション: ${left}"; + static m111(name) => "どの ${name} トランザクションを同期しますか?"; + + static m112(left) => "残りのトランザクション: ${left}"; - static m93(amnt, hash) => "${amnt} 資金のロックを解除しました - TX: ${hash}"; + static m113(amnt, hash) => "${amnt} 資金のロックを解除しました - TX: ${hash}"; - static m94(version) => "バージョン ${version} を使用しています"; + static m114(version) => "バージョン ${version} を使用しています"; - static m95(version) => "バージョン ${version} が利用可能です。更新してください。"; + static m115(version) => "バージョン ${version} が利用可能です。更新してください。"; - static m96(appName) => "${appName} の更新"; + static m116(appName) => "${appName} の更新"; - static m97(coinAbbr) => "${coinAbbr} をアクティベートできませんでした"; + static m117(coinAbbr) => "${coinAbbr} をアクティベートできませんでした"; - static m98(coinAbbr) => "${coinAbbr} をアクティベートできませんでした。アプリを再起動してもう一度お試しください。"; + static m118(coinAbbr) => "${coinAbbr} をアクティベートできませんでした。アプリを再起動してもう一度お試しください。"; - static m99(appName) => + static m119(appName) => "${appName} モバイルは、ネイティブの第 3 世代 DEX 機能などを備えた次世代のマルチコイン ウォレットです。"; - static m100(appName) => + static m120(appName) => "以前にカメラへの ${appName} アクセスを拒否しました。 QR コードのスキャンを続行するには、電話の設定でカメラの許可を手動で変更してください。"; - static m101(amount, coinName) => "WITHDRAW ${amount} ${coinName}"; + static m121(amount, coinName) => "WITHDRAW ${amount} ${coinName}"; - static m102(amount, coin) => "${amount} ${coin} を受け取ります"; + static m122(amount, coin) => "${amount} ${coin} を受け取ります"; final messages = _notInlinedMessages(_notInlinedMessages); static Map _notInlinedMessages(_) => { @@ -281,35 +321,43 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("生体認証保護を有効にする"), "activateAccessPin": MessageLookupByLibrary.simpleMessage("PIN 保護を有効にする"), + "activateCoins": m0, + "activating": m1, + "activation": m2, + "activationCancelled": + MessageLookupByLibrary.simpleMessage("コインのアクティベーションがキャンセルされました"), + "activationInProgress": m3, "addCoin": MessageLookupByLibrary.simpleMessage("コインを有効にする"), - "addingCoinSuccess": m0, + "addingCoinSuccess": m4, "addressAdd": MessageLookupByLibrary.simpleMessage("住所を追加"), "addressBook": MessageLookupByLibrary.simpleMessage("住所録"), "addressBookEmpty": MessageLookupByLibrary.simpleMessage("アドレス帳が空です"), - "addressBookFilter": m1, + "addressBookFilter": m5, "addressBookTitle": MessageLookupByLibrary.simpleMessage("住所録"), - "addressCoinInactive": m2, + "addressCoinInactive": m6, "addressNotFound": MessageLookupByLibrary.simpleMessage("何も見つかりません"), "addressSelectCoin": MessageLookupByLibrary.simpleMessage("コインを選択"), "addressSend": MessageLookupByLibrary.simpleMessage("受取人住所"), "advanced": MessageLookupByLibrary.simpleMessage("高度"), "all": MessageLookupByLibrary.simpleMessage("全て"), + "allPastTransactions": MessageLookupByLibrary.simpleMessage( + "ウォレットには過去の取引が表示されます。すべてのブロックがダウンロードされてスキャンされるため、これにはかなりのストレージと時間がかかります。"), "allowCustomSeed": MessageLookupByLibrary.simpleMessage("カスタム シードを許可する"), "alreadyExists": MessageLookupByLibrary.simpleMessage("もう存在している"), "amount": MessageLookupByLibrary.simpleMessage("額"), "amountToSell": MessageLookupByLibrary.simpleMessage("売却金額"), - "answer_1": m3, - "answer_10": m4, - "answer_2": m5, - "answer_3": m6, + "answer_1": m7, + "answer_10": m8, + "answer_2": m9, + "answer_3": m10, "answer_4": MessageLookupByLibrary.simpleMessage( "はい。各アトミック スワップを正常に完了するには、インターネットへの接続を維持し、アプリを実行している必要があります (通常、接続が非常に短時間中断しても問題ありません)。そうしないと、Maker の場合は取引キャンセルのリスクがあり、Taker の場合は資金を失うリスクがあります。アトミック スワップ プロトコルでは、両方の参加者がオンライン状態を維持し、関与するブロックチェーンを監視して、プロセスがアトミック状態を維持する必要があります。"), - "answer_5": m7, - "answer_6": m8, - "answer_7": m9, - "answer_8": m10, - "answer_9": m11, + "answer_5": m11, + "answer_6": m12, + "answer_7": m13, + "answer_8": m14, + "answer_9": m15, "areYouSure": MessageLookupByLibrary.simpleMessage("本気ですか?"), "authenticate": MessageLookupByLibrary.simpleMessage("認証する"), "automaticRedirected": MessageLookupByLibrary.simpleMessage( @@ -317,8 +365,9 @@ class MessageLookup extends MessageLookupByLibrary { "availableVolume": MessageLookupByLibrary.simpleMessage("最大ボリューム"), "back": MessageLookupByLibrary.simpleMessage("戻る"), "backupTitle": MessageLookupByLibrary.simpleMessage("バックアップ"), - "batteryCriticalError": m12, - "batteryLowWarning": m13, + "basedOnCoinRatio": m16, + "batteryCriticalError": m17, + "batteryLowWarning": m18, "batterySavingWarning": MessageLookupByLibrary.simpleMessage( "お使いの携帯電話はバッテリー節約モードになっています。このモードを無効にするか、アプリケーションをバックグラウンドにしないでください。そうしないと、アプリが OS によって強制終了され、スワップが失敗する可能性があります。"), "bestAvailableRate": MessageLookupByLibrary.simpleMessage("為替レート"), @@ -329,7 +378,7 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("一致しない場合はMakerに変換"), "buySuccessWaiting": MessageLookupByLibrary.simpleMessage("スワップが発行されました。お待ちください!"), - "buySuccessWaitingError": m14, + "buySuccessWaitingError": m19, "buyTestCoinWarning": MessageLookupByLibrary.simpleMessage( "警告、本当の価値のないテスト コインを購入しても構わないと思っています。"), "camoPinBioProtectionConflict": MessageLookupByLibrary.simpleMessage( @@ -359,6 +408,10 @@ class MessageLookup extends MessageLookupByLibrary { "camouflageSetup": MessageLookupByLibrary.simpleMessage("カモフラージュ PIN の設定"), "cancel": MessageLookupByLibrary.simpleMessage("キャンセル"), + "cancelActivation": + MessageLookupByLibrary.simpleMessage("アクティベーションのキャンセル"), + "cancelActivationQuestion": + MessageLookupByLibrary.simpleMessage("アクティベーションをキャンセルしてもよろしいですか?"), "cancelButton": MessageLookupByLibrary.simpleMessage("キャンセル"), "cancelOrder": MessageLookupByLibrary.simpleMessage("注文をキャンセルする"), "candleChartError": MessageLookupByLibrary.simpleMessage( @@ -373,6 +426,7 @@ class MessageLookup extends MessageLookupByLibrary { "cexData": MessageLookupByLibrary.simpleMessage("CEXデータ"), "cexDataDesc": MessageLookupByLibrary.simpleMessage( "このアイコンでマークされた市場データ (価格、チャートなど) は、サードパーティのソース (coingecko.comopenrates.io)。"), + "cexRate": MessageLookupByLibrary.simpleMessage("CEXレート"), "changePin": MessageLookupByLibrary.simpleMessage("PIN コードの変更"), "checkForUpdates": MessageLookupByLibrary.simpleMessage("アップデートを確認"), "checkOut": MessageLookupByLibrary.simpleMessage("チェックアウト"), @@ -381,10 +435,10 @@ class MessageLookup extends MessageLookupByLibrary { "checkSeedPhraseButton1": MessageLookupByLibrary.simpleMessage("継続する"), "checkSeedPhraseButton2": MessageLookupByLibrary.simpleMessage("戻ってもう一度確認する"), - "checkSeedPhraseHint": m15, + "checkSeedPhraseHint": m20, "checkSeedPhraseInfo": MessageLookupByLibrary.simpleMessage( "シード フレーズは重要です。そのため、正確であることを確認したいと考えています。いつでも簡単にウォレットを復元できるように、シード フレーズについて 3 つの異なる質問をします。"), - "checkSeedPhraseSubtile": m16, + "checkSeedPhraseSubtile": m21, "checkSeedPhraseTitle": MessageLookupByLibrary.simpleMessage("シードフレーズを再確認しましょう"), "chineseLanguage": MessageLookupByLibrary.simpleMessage("中国語"), @@ -397,12 +451,19 @@ class MessageLookup extends MessageLookupByLibrary { "closeMessage": MessageLookupByLibrary.simpleMessage("エラーメッセージを閉じる"), "closePreview": MessageLookupByLibrary.simpleMessage("プレビューを閉じる"), "code": MessageLookupByLibrary.simpleMessage("コード:"), + "cofirmCancelActivation": + MessageLookupByLibrary.simpleMessage("アクティベーションをキャンセルしてもよろしいですか?"), + "coinActivationCancelled": m22, + "coinActivationSuccessfull": m23, "coinSelectClear": MessageLookupByLibrary.simpleMessage("クリア"), "coinSelectNotFound": MessageLookupByLibrary.simpleMessage("アクティブなコインはありません"), "coinSelectTitle": MessageLookupByLibrary.simpleMessage("コインを選択"), "coinsActivatedLimitReached": MessageLookupByLibrary.simpleMessage("アセットの最大数を選択しました"), + "coinsAreActivated": m24, + "coinsAreActivatedSuccessfully": m25, + "coinsAreNotActivated": m26, "comingSoon": MessageLookupByLibrary.simpleMessage("近日公開..."), "commingsoon": MessageLookupByLibrary.simpleMessage("TXの詳細は近日公開!"), "commingsoonGeneral": MessageLookupByLibrary.simpleMessage("詳細は近日公開!"), @@ -426,7 +487,7 @@ class MessageLookup extends MessageLookupByLibrary { "contactCancel": MessageLookupByLibrary.simpleMessage("キャンセル"), "contactDelete": MessageLookupByLibrary.simpleMessage("連絡先を削除"), "contactDeleteBtn": MessageLookupByLibrary.simpleMessage("消去"), - "contactDeleteWarning": m17, + "contactDeleteWarning": m27, "contactDiscardBtn": MessageLookupByLibrary.simpleMessage("破棄"), "contactEdit": MessageLookupByLibrary.simpleMessage("編集"), "contactExit": MessageLookupByLibrary.simpleMessage("出口"), @@ -436,7 +497,10 @@ class MessageLookup extends MessageLookupByLibrary { "contactSave": MessageLookupByLibrary.simpleMessage("保存"), "contactTitle": MessageLookupByLibrary.simpleMessage("連絡先の詳細"), "contactTitleName": MessageLookupByLibrary.simpleMessage("名前"), + "contract": MessageLookupByLibrary.simpleMessage("契約"), "convert": MessageLookupByLibrary.simpleMessage("変換"), + "couldNotLaunchUrl": + MessageLookupByLibrary.simpleMessage("URLを起動できませんでした"), "couldntImportError": MessageLookupByLibrary.simpleMessage("インポートできませんでした:"), "create": MessageLookupByLibrary.simpleMessage("トレード"), @@ -449,7 +513,7 @@ class MessageLookup extends MessageLookupByLibrary { "customFee": MessageLookupByLibrary.simpleMessage("カスタム料金"), "customFeeWarning": MessageLookupByLibrary.simpleMessage( "あなたが何をしているのかを知っている場合にのみ、カスタム料金を使用してください!"), - "customSeedWarning": m18, + "customSeedWarning": m28, "dPow": MessageLookupByLibrary.simpleMessage("Komodo dPoW セキュリティ"), "date": MessageLookupByLibrary.simpleMessage("日にち"), "decryptingWallet": MessageLookupByLibrary.simpleMessage("ウォレットの復号化"), @@ -462,6 +526,11 @@ class MessageLookup extends MessageLookupByLibrary { "deleteWallet": MessageLookupByLibrary.simpleMessage("ウォレットの削除"), "deletingWallet": MessageLookupByLibrary.simpleMessage("ウォレットを削除しています..."), + "detailedFeesReceiveCoinTransactionFee": m29, + "detailedFeesSendCoinTransactionFee": m30, + "detailedFeesSendTradingFeeTransactionFee": + MessageLookupByLibrary.simpleMessage("送信取引手数料 取引手数料"), + "detailedFeesTradingFee": MessageLookupByLibrary.simpleMessage("取引手数料"), "details": MessageLookupByLibrary.simpleMessage("詳細"), "deutscheLanguage": MessageLookupByLibrary.simpleMessage("ドイツ語"), "developerTitle": MessageLookupByLibrary.simpleMessage("デベロッパー"), @@ -471,12 +540,14 @@ class MessageLookup extends MessageLookupByLibrary { "disableScreenshots": MessageLookupByLibrary.simpleMessage("スクリーンショット/プレビューを無効にする"), "disclaimerAndTos": MessageLookupByLibrary.simpleMessage("免責事項と利用規約"), + "doNotCloseTheAppTapForMoreInfo": MessageLookupByLibrary.simpleMessage( + "アプリを閉じないでください。詳細についてはタップしてください..."), "done": MessageLookupByLibrary.simpleMessage("終わり"), "dontAskAgain": MessageLookupByLibrary.simpleMessage("二度と聞かない"), "dontWantPassword": MessageLookupByLibrary.simpleMessage("パスワードはいらない"), "duration": MessageLookupByLibrary.simpleMessage("間隔"), "editContact": MessageLookupByLibrary.simpleMessage("連絡先を編集"), - "emptyCoin": m19, + "emptyCoin": m31, "emptyExportPass": MessageLookupByLibrary.simpleMessage("暗号化パスワードを空にすることはできません"), "emptyImportPass": @@ -485,7 +556,10 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("連絡先の名前を空にすることはできません"), "emptyWallet": MessageLookupByLibrary.simpleMessage("ウォレット名を空にすることはできません"), - "enable": m20, + "enable": m32, + "enableNotificationsForActivationProgress": + MessageLookupByLibrary.simpleMessage( + "アクティベーションの進行状況に関する最新情報を取得するには、通知を有効にしてください。"), "enableTestCoins": MessageLookupByLibrary.simpleMessage("テストコインを有効にする"), "enablingTooManyAssetsSpan1": MessageLookupByLibrary.simpleMessage("あなたが持っている"), @@ -515,7 +589,7 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("有効な住所ではありません"), "errorNotAValidAddressSegWit": MessageLookupByLibrary.simpleMessage( "Segwit アドレスはサポートされていません (まだ)"), - "errorNotEnoughGas": m21, + "errorNotEnoughGas": m33, "errorTryAgain": MessageLookupByLibrary.simpleMessage("エラーです。もう一度お試しください"), "errorTryLater": @@ -524,32 +598,32 @@ class MessageLookup extends MessageLookupByLibrary { "errorValueNotEmpty": MessageLookupByLibrary.simpleMessage("データを入力してください"), "estimateValue": MessageLookupByLibrary.simpleMessage("推定合計値"), - "eulaParagraphe1": m22, - "eulaParagraphe10": m23, - "eulaParagraphe11": m24, + "eulaParagraphe1": m34, + "eulaParagraphe10": m35, + "eulaParagraphe11": m36, "eulaParagraphe12": MessageLookupByLibrary.simpleMessage( "When accessing or using the Services, You agree that You are solely responsible for your conduct while accessing and using our Services. Without limiting the generality of the foregoing, You agree that You will not:\n(a) use the Services in any manner that could interfere with, disrupt, negatively affect or inhibit other users from fully enjoying the Services, or that could damage, disable, overburden or impair the functioning of our Services in any manner;\n(b) use the Services to pay for, support or otherwise engage in any illegal activities, including, but not limited to illegal gambling, fraud, money laundering, or terrorist activities;\n(c) use any robot, spider, crawler, scraper or other automated means or interface not provided by us to access our Services or to extract data;\n(d) use or attempt to use another user’s Wallet or credentials without authorization;\n(e) attempt to circumvent any content filtering techniques we employ, or attempt to access any service or area of our Services that You are not authorized to access;\n(f) introduce to the Services any virus, Trojan, worms, logic bombs or other harmful material;\n(g) develop any third-party applications that interact with our Services without our prior written consent;\n(h) provide false, inaccurate, or misleading information; \n(i) encourage or induce any other person to engage in any of the activities prohibited under this Section."), - "eulaParagraphe13": m25, - "eulaParagraphe14": m26, - "eulaParagraphe15": m27, - "eulaParagraphe16": m28, - "eulaParagraphe17": m29, - "eulaParagraphe18": m30, - "eulaParagraphe19": m31, - "eulaParagraphe2": m32, + "eulaParagraphe13": m37, + "eulaParagraphe14": m38, + "eulaParagraphe15": m39, + "eulaParagraphe16": m40, + "eulaParagraphe17": m41, + "eulaParagraphe18": m42, + "eulaParagraphe19": m43, + "eulaParagraphe2": m44, "eulaParagraphe3": MessageLookupByLibrary.simpleMessage( "By entering into this User (each subject accessing or using the site) Agreement (this writing) You declare that You are an individual over the age of majority (at least 18 or older) and have the capacity to enter into this User Agreement and accept to be legally bound by the terms and conditions of this User Agreement, as incorporated herein and amended from time to time."), "eulaParagraphe4": MessageLookupByLibrary.simpleMessage( "We may change the terms of this User Agreement at any time. Any such changes will take effect when published in the application, or when You use the Services.\n\nRead the User Agreement carefully every time You use our Services. Your continued use of the Services shall signify your acceptance to be bound by the current User Agreement. Our failure or delay in enforcing or partially enforcing any provision of this User Agreement shall not be construed as a waiver of any."), - "eulaParagraphe5": m33, - "eulaParagraphe6": m34, + "eulaParagraphe5": m45, + "eulaParagraphe6": m46, "eulaParagraphe7": MessageLookupByLibrary.simpleMessage( "We are not responsible for seed-phrases residing in the Mobile Application. In no event shall we be held liable for any loss of any kind. It is your sole responsibility to maintain appropriate backups of your accounts and their seedprases."), "eulaParagraphe8": MessageLookupByLibrary.simpleMessage( "You should not act, or refrain from acting solely on the basis of the content of this application. \nYour access to this application does not itself create an adviser-client relationship between You and us. \nThe content of this application does not constitute a solicitation or inducement to invest in any financial products or services offered by us. \nAny advice included in this application has been prepared without taking into account your objectives, financial situation or needs. You should consider our Risk Disclosure Notice before making any decision on whether to acquire the product described in that document."), "eulaParagraphe9": MessageLookupByLibrary.simpleMessage( "We do not guarantee your continuous access to the application or that your access or use will be error-free. \nWe will not be liable in the event that the application is unavailable to You for any reason (for example, due to computer downtime ascribable to malfunctions, upgrades, server problems, precautionary or corrective maintenance activities or interruption in telecommunication supplies). "), - "eulaTitle1": m35, + "eulaTitle1": m47, "eulaTitle10": MessageLookupByLibrary.simpleMessage("ACCESS AND SECURITY"), "eulaTitle11": MessageLookupByLibrary.simpleMessage( @@ -598,16 +672,17 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("アイテムは正常にエクスポートされました:"), "exportSwapsTitle": MessageLookupByLibrary.simpleMessage("スワップ"), "exportTitle": MessageLookupByLibrary.simpleMessage("書き出す"), + "failedToCancelActivation": m48, "fakeBalanceAmt": MessageLookupByLibrary.simpleMessage("偽の残高:"), "faqTitle": MessageLookupByLibrary.simpleMessage("よくある質問"), "faucetError": MessageLookupByLibrary.simpleMessage("エラー"), - "faucetInProgress": m36, + "faucetInProgress": m49, "faucetName": MessageLookupByLibrary.simpleMessage("蛇口"), "faucetSuccess": MessageLookupByLibrary.simpleMessage("成功"), "faucetTimedOut": MessageLookupByLibrary.simpleMessage("要求がタイムアウトしました"), "feedNewsTab": MessageLookupByLibrary.simpleMessage("ニュース"), "feedNotFound": MessageLookupByLibrary.simpleMessage("ここには何もない"), - "feedNotifTitle": m37, + "feedNotifTitle": m50, "feedReadMore": MessageLookupByLibrary.simpleMessage("続きを読む..."), "feedTab": MessageLookupByLibrary.simpleMessage("餌"), "feedTitle": MessageLookupByLibrary.simpleMessage("ニュースフィード"), @@ -618,7 +693,7 @@ class MessageLookup extends MessageLookupByLibrary { "feedUpToDate": MessageLookupByLibrary.simpleMessage("すでに最新"), "feedUpdated": MessageLookupByLibrary.simpleMessage("ニュースフィードが更新されました"), "feedback": MessageLookupByLibrary.simpleMessage("ログファイルの共有"), - "feesError": m38, + "feesError": m51, "filtersAll": MessageLookupByLibrary.simpleMessage("全て"), "filtersButton": MessageLookupByLibrary.simpleMessage("フィルター"), "filtersClearAll": @@ -634,17 +709,24 @@ class MessageLookup extends MessageLookupByLibrary { "filtersTo": MessageLookupByLibrary.simpleMessage("現在まで"), "filtersType": MessageLookupByLibrary.simpleMessage("テイカー/メーカー"), "fingerprint": MessageLookupByLibrary.simpleMessage("指紋"), + "finishingUp": MessageLookupByLibrary.simpleMessage("完了しました、お待ちください"), + "foundQrCode": MessageLookupByLibrary.simpleMessage("QRコードが見つかりました"), "frenchLanguage": MessageLookupByLibrary.simpleMessage("フランス語"), "from": MessageLookupByLibrary.simpleMessage("から"), - "gasFee": m39, + "futureTransactions": MessageLookupByLibrary.simpleMessage( + "公開キーに関連付けられたアクティベーション後に行われる今後のトランザクションは同期されます。これは最も迅速なオプションであり、必要なストレージの量も最小限です。"), + "gasFee": m52, "gasLimit": MessageLookupByLibrary.simpleMessage("ガスリミット"), - "gasNotActive": m40, + "gasNotActive": m53, "gasPrice": MessageLookupByLibrary.simpleMessage("ガス料金"), "generalPinNotActive": MessageLookupByLibrary.simpleMessage( "一般的な PIN 保護はアクティブではありません。カモフラージュモードは利用できません。 PIN 保護を有効にしてください。"), "getBackupPhrase": MessageLookupByLibrary.simpleMessage( "重要: 続行する前に、シード フレーズをバックアップしてください。"), + "gettingTxWait": + MessageLookupByLibrary.simpleMessage("トランザクションを取得しています。お待ちください"), "goToPorfolio": MessageLookupByLibrary.simpleMessage("ポートフォリオに移動"), + "gweiError": m54, "helpLink": MessageLookupByLibrary.simpleMessage("ヘルプ"), "helpTitle": MessageLookupByLibrary.simpleMessage("ヘルプとサポート"), "hideBalance": MessageLookupByLibrary.simpleMessage("残高を非表示"), @@ -692,6 +774,7 @@ class MessageLookup extends MessageLookupByLibrary { "importSwapJsonDecodingError": MessageLookupByLibrary.simpleMessage("json ファイルのデコード中にエラーが発生しました"), "importTitle": MessageLookupByLibrary.simpleMessage("輸入"), + "incomingTransactionsProtectionSettings": m55, "infoPasswordDialog": MessageLookupByLibrary.simpleMessage( "安全なパスワードを使用し、同じデバイスに保存しないでください"), "infoTrade1": MessageLookupByLibrary.simpleMessage( @@ -700,23 +783,25 @@ class MessageLookup extends MessageLookupByLibrary { "スワップには最大 60 分かかる場合があります。このアプリケーションを閉じないでください!"), "infoWalletPassword": MessageLookupByLibrary.simpleMessage( "セキュリティ上の理由から、ウォレット暗号化用のパスワードを提供する必要があります。"), - "insufficientBalanceToPay": m41, + "insufficientBalanceToPay": m56, "insufficientText": MessageLookupByLibrary.simpleMessage("この注文に必要な最小ボリュームは"), "insufficientTitle": MessageLookupByLibrary.simpleMessage("ボリューム不足"), "internetRefreshButton": MessageLookupByLibrary.simpleMessage("リフレッシュ"), "internetRestored": MessageLookupByLibrary.simpleMessage("インターネット接続が回復しました"), + "invalidCoinAddress": m57, "invalidSwap": MessageLookupByLibrary.simpleMessage("スワップを続行できません"), "invalidSwapDetailsLink": MessageLookupByLibrary.simpleMessage("詳細"), - "isUnavailable": m42, + "isUnavailable": m58, "japaneseLanguage": MessageLookupByLibrary.simpleMessage("日本"), "koreanLanguage": MessageLookupByLibrary.simpleMessage("韓国語"), "language": MessageLookupByLibrary.simpleMessage("言語"), "latestTxs": MessageLookupByLibrary.simpleMessage("最新の取引"), "legalTitle": MessageLookupByLibrary.simpleMessage("法的"), "less": MessageLookupByLibrary.simpleMessage("以下"), - "lessThanCaution": m43, + "lessThanCaution": m59, + "limitError": m60, "loading": MessageLookupByLibrary.simpleMessage("読み込んでいます..."), "loadingOrderbook": MessageLookupByLibrary.simpleMessage("オーダーブックを読み込んでいます..."), @@ -776,26 +861,29 @@ class MessageLookup extends MessageLookupByLibrary { "milliseconds": MessageLookupByLibrary.simpleMessage("MS"), "min": MessageLookupByLibrary.simpleMessage("最小"), "minOrder": MessageLookupByLibrary.simpleMessage("最小注文量:"), - "minValue": m44, - "minValueBuy": m45, - "minValueOrder": m46, - "minValueSell": m47, - "minVolumeInput": m48, + "minValue": m61, + "minValueBuy": m62, + "minValueOrder": m63, + "minValueSell": m64, + "minVolumeInput": m65, "minVolumeIsTDH": MessageLookupByLibrary.simpleMessage("販売額より低くなければなりません"), "minVolumeTitle": MessageLookupByLibrary.simpleMessage("必要な最小ボリューム"), "minVolumeToggle": MessageLookupByLibrary.simpleMessage("カスタム最小ボリュームを使用"), + "minimizingWillTerminate": MessageLookupByLibrary.simpleMessage( + "警告: iOS でアプリを最小化すると、アクティベーション プロセスが終了します。"), "minutes": MessageLookupByLibrary.simpleMessage("メートル"), - "mobileDataWarning": m49, + "mobileDataWarning": m66, + "moreInfo": MessageLookupByLibrary.simpleMessage("より詳しい情報"), "moreTab": MessageLookupByLibrary.simpleMessage("もっと"), - "multiActivateGas": m50, + "multiActivateGas": m67, "multiBaseAmtPlaceholder": MessageLookupByLibrary.simpleMessage("額"), "multiBasePlaceholder": MessageLookupByLibrary.simpleMessage("コイン"), "multiBaseSelectTitle": MessageLookupByLibrary.simpleMessage("売る"), "multiConfirmCancel": MessageLookupByLibrary.simpleMessage("キャンセル"), "multiConfirmConfirm": MessageLookupByLibrary.simpleMessage("確認"), - "multiConfirmTitle": m51, + "multiConfirmTitle": m68, "multiCreate": MessageLookupByLibrary.simpleMessage("作成"), "multiCreateOrder": MessageLookupByLibrary.simpleMessage("注文"), "multiCreateOrders": MessageLookupByLibrary.simpleMessage("注文"), @@ -809,8 +897,8 @@ class MessageLookup extends MessageLookupByLibrary { "multiInvalidAmt": MessageLookupByLibrary.simpleMessage("金額が無効です"), "multiInvalidSellAmt": MessageLookupByLibrary.simpleMessage("販売金額が無効です"), - "multiLowGas": m52, - "multiLowerThanFee": m53, + "multiLowGas": m69, + "multiLowerThanFee": m70, "multiMaxSellAmt": MessageLookupByLibrary.simpleMessage("最大販売額は"), "multiMinReceiveAmt": MessageLookupByLibrary.simpleMessage("最小受け取り金額は"), "multiMinSellAmt": MessageLookupByLibrary.simpleMessage("最小販売額は"), @@ -837,7 +925,7 @@ class MessageLookup extends MessageLookupByLibrary { "noItemsToImport": MessageLookupByLibrary.simpleMessage("項目が選択されていません"), "noMatchingOrders": MessageLookupByLibrary.simpleMessage("一致する注文が見つかりません"), - "noOrder": m54, + "noOrder": m71, "noOrderAvailable": MessageLookupByLibrary.simpleMessage("クリックして注文を作成"), "noOrders": MessageLookupByLibrary.simpleMessage("注文はありません。取引に行ってください。"), @@ -849,7 +937,8 @@ class MessageLookup extends MessageLookupByLibrary { "noTxs": MessageLookupByLibrary.simpleMessage("取引なし"), "nonNumericInput": MessageLookupByLibrary.simpleMessage("値は数値でなければなりません"), - "notEnoughGas": m55, + "none": MessageLookupByLibrary.simpleMessage("なし"), + "notEnoughGas": m72, "notEnoughtBalanceForFee": MessageLookupByLibrary.simpleMessage( "手数料に十分な残高がありません - 少額で取引してください"), "noteOnOrder": @@ -857,23 +946,23 @@ class MessageLookup extends MessageLookupByLibrary { "notePlaceholder": MessageLookupByLibrary.simpleMessage("メモを追加"), "noteTitle": MessageLookupByLibrary.simpleMessage("ノート"), "nothingFound": MessageLookupByLibrary.simpleMessage("何も見つかりません"), - "notifSwapCompletedText": m56, + "notifSwapCompletedText": m73, "notifSwapCompletedTitle": MessageLookupByLibrary.simpleMessage("スワップ完了"), - "notifSwapFailedText": m57, + "notifSwapFailedText": m74, "notifSwapFailedTitle": MessageLookupByLibrary.simpleMessage("スワップに失敗しました"), - "notifSwapStartedText": m58, + "notifSwapStartedText": m75, "notifSwapStartedTitle": MessageLookupByLibrary.simpleMessage("新しいスワップが開始されました"), "notifSwapStatusTitle": MessageLookupByLibrary.simpleMessage("スワップ ステータスが変更されました"), - "notifSwapTimeoutText": m59, + "notifSwapTimeoutText": m76, "notifSwapTimeoutTitle": MessageLookupByLibrary.simpleMessage("スワップ タイムアウト"), - "notifTxText": m60, + "notifTxText": m77, "notifTxTitle": MessageLookupByLibrary.simpleMessage("着信トランザクション"), - "numberAssets": m61, + "numberAssets": m78, "officialPressRelease": MessageLookupByLibrary.simpleMessage("公式プレスリリース"), "okButton": MessageLookupByLibrary.simpleMessage("Ok"), @@ -881,14 +970,16 @@ class MessageLookup extends MessageLookupByLibrary { "oldLogsTitle": MessageLookupByLibrary.simpleMessage("古いログ"), "oldLogsUsed": MessageLookupByLibrary.simpleMessage("使用スペース"), "openMessage": MessageLookupByLibrary.simpleMessage("エラーメッセージを開く"), - "orderCancel": m62, + "orderBookLess": MessageLookupByLibrary.simpleMessage("少ない"), + "orderBookMore": MessageLookupByLibrary.simpleMessage("もっと"), + "orderCancel": m79, "orderCreated": MessageLookupByLibrary.simpleMessage("オーダーが作成されました"), "orderCreatedInfo": MessageLookupByLibrary.simpleMessage("注文が正常に作成されました"), "orderDetailsAddress": MessageLookupByLibrary.simpleMessage("住所"), "orderDetailsCancel": MessageLookupByLibrary.simpleMessage("キャンセル"), - "orderDetailsExpedient": m63, - "orderDetailsExpensive": m64, + "orderDetailsExpedient": m80, + "orderDetailsExpensive": m81, "orderDetailsFor": MessageLookupByLibrary.simpleMessage("為に"), "orderDetailsIdentical": MessageLookupByLibrary.simpleMessage("CEXと同じ"), "orderDetailsMin": MessageLookupByLibrary.simpleMessage("分。"), @@ -900,7 +991,7 @@ class MessageLookup extends MessageLookupByLibrary { "シングルタップで詳細を開き、ロングタップで注文を選択します"), "orderDetailsSpend": MessageLookupByLibrary.simpleMessage("費やす"), "orderDetailsTitle": MessageLookupByLibrary.simpleMessage("詳細"), - "orderFilled": m65, + "orderFilled": m82, "orderMatched": MessageLookupByLibrary.simpleMessage("一致した注文"), "orderMatching": MessageLookupByLibrary.simpleMessage("オーダーマッチング"), "orderTypePartial": MessageLookupByLibrary.simpleMessage("注文"), @@ -908,9 +999,9 @@ class MessageLookup extends MessageLookupByLibrary { "orders": MessageLookupByLibrary.simpleMessage("注文"), "ordersActive": MessageLookupByLibrary.simpleMessage("アクティブ"), "ordersHistory": MessageLookupByLibrary.simpleMessage("歴史"), - "ordersTableAmount": m66, - "ordersTablePrice": m67, - "ordersTableTotal": m68, + "ordersTableAmount": m83, + "ordersTablePrice": m84, + "ordersTableTotal": m85, "overwrite": MessageLookupByLibrary.simpleMessage("上書き"), "ownOrder": MessageLookupByLibrary.simpleMessage("これはあなた自身の注文です!"), "paidFromBalance": MessageLookupByLibrary.simpleMessage("残高から支払われる:"), @@ -919,6 +1010,8 @@ class MessageLookup extends MessageLookupByLibrary { "paidWith": MessageLookupByLibrary.simpleMessage("で支払った"), "passwordRequirement": MessageLookupByLibrary.simpleMessage( "パスワードには、小文字 1 つ、大文字 1 つ、特殊記号 1 つを含む 12 文字以上を含める必要があります。"), + "pastTransactionsFromDate": MessageLookupByLibrary.simpleMessage( + "ウォレットには、指定した日付以降に行われた過去の取引が表示されます。"), "paymentUriDetailsAccept": MessageLookupByLibrary.simpleMessage("支払い"), "paymentUriDetailsAcceptQuestion": MessageLookupByLibrary.simpleMessage("この取引を受け入れますか?"), @@ -931,8 +1024,11 @@ class MessageLookup extends MessageLookupByLibrary { "paymentUriDetailsDeny": MessageLookupByLibrary.simpleMessage("キャンセル"), "paymentUriDetailsTitle": MessageLookupByLibrary.simpleMessage("支払いが要求されました"), - "paymentUriInactiveCoin": m69, + "paymentUriInactiveCoin": m86, "placeOrder": MessageLookupByLibrary.simpleMessage("ご注文"), + "pleaseAcceptAllCoinActivationRequests": + MessageLookupByLibrary.simpleMessage( + "特別なコインの有効化リクエストをすべて受け入れるか、コインの選択を解除してください。"), "pleaseAddCoin": MessageLookupByLibrary.simpleMessage("コインを追加してください"), "pleaseRestart": MessageLookupByLibrary.simpleMessage( "アプリを再起動してもう一度試すか、下のボタンを押してください。"), @@ -950,19 +1046,20 @@ class MessageLookup extends MessageLookupByLibrary { "protectionCtrlWarning": MessageLookupByLibrary.simpleMessage( "警告、このアトミック スワップは dPoW で保護されていません。"), "pubkey": MessageLookupByLibrary.simpleMessage("公開鍵"), + "qrCodeScanner": MessageLookupByLibrary.simpleMessage("QRコードスキャナー"), "question_1": MessageLookupByLibrary.simpleMessage("私の秘密鍵を保管しますか?"), - "question_10": m70, - "question_2": m71, + "question_10": m87, + "question_2": m88, "question_3": MessageLookupByLibrary.simpleMessage( "各アトミック スワップにはどのくらいの時間がかかりますか?"), "question_4": MessageLookupByLibrary.simpleMessage("スワップ中はオンラインである必要がありますか?"), - "question_5": m72, + "question_5": m89, "question_6": MessageLookupByLibrary.simpleMessage("ユーザーサポートは提供していますか?"), "question_7": MessageLookupByLibrary.simpleMessage("国の制限はありますか?"), - "question_8": m73, - "question_9": m74, + "question_8": m90, + "question_9": m91, "rebrandingAnnouncement": MessageLookupByLibrary.simpleMessage( "新しい時代です! 「AtomicDEX」から「Komodo Wallet」に正式に名前を変更しました"), "receive": MessageLookupByLibrary.simpleMessage("受け取る"), @@ -996,16 +1093,16 @@ class MessageLookup extends MessageLookupByLibrary { "rewardsReadMore": MessageLookupByLibrary.simpleMessage("KMDアクティブユーザー特典について詳しく見る"), "rewardsReceive": MessageLookupByLibrary.simpleMessage("受け取る"), - "rewardsSuccess": m75, + "rewardsSuccess": m92, "rewardsTableFiat": MessageLookupByLibrary.simpleMessage("フィアット"), "rewardsTableRewards": MessageLookupByLibrary.simpleMessage("リワード、KMD"), "rewardsTableStatus": MessageLookupByLibrary.simpleMessage("状態"), "rewardsTableTime": MessageLookupByLibrary.simpleMessage("残り時間"), "rewardsTableTitle": MessageLookupByLibrary.simpleMessage("特典情報:"), "rewardsTableUXTO": MessageLookupByLibrary.simpleMessage("UTXO金額、KMD"), - "rewardsTimeDays": m76, - "rewardsTimeHours": m77, - "rewardsTimeMin": m78, + "rewardsTimeDays": m93, + "rewardsTimeHours": m94, + "rewardsTimeMin": m95, "rewardsTitle": MessageLookupByLibrary.simpleMessage("特典情報"), "russianLanguage": MessageLookupByLibrary.simpleMessage("ロシア"), "saveMerged": MessageLookupByLibrary.simpleMessage("結合して保存"), @@ -1048,12 +1145,14 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("すべてのテスト アセットを選択"), "searchFilterSubtitleUBQ": MessageLookupByLibrary.simpleMessage("すべての Ubiq コインを選択"), + "searchFilterSubtitleZHTLC": + MessageLookupByLibrary.simpleMessage("すべての ZHTLC コインを選択します"), "searchFilterSubtitleutxo": MessageLookupByLibrary.simpleMessage("すべてのUTXOコインを選択"), "searchForTicker": MessageLookupByLibrary.simpleMessage("ティッカーを検索"), "seconds": MessageLookupByLibrary.simpleMessage("s"), "security": MessageLookupByLibrary.simpleMessage("安全"), - "seeOrders": m79, + "seeOrders": m96, "seeTxHistory": MessageLookupByLibrary.simpleMessage("取引履歴を見る"), "seedPhrase": MessageLookupByLibrary.simpleMessage("シードフレーズ"), "seedPhraseTitle": @@ -1064,6 +1163,7 @@ class MessageLookup extends MessageLookupByLibrary { "selectCoinTitle": MessageLookupByLibrary.simpleMessage("コインを有効にする:"), "selectCoinToBuy": MessageLookupByLibrary.simpleMessage("購入したいコインを選択"), "selectCoinToSell": MessageLookupByLibrary.simpleMessage("売りたいコインを選択"), + "selectDate": MessageLookupByLibrary.simpleMessage("日付を選択してください"), "selectFileImport": MessageLookupByLibrary.simpleMessage("ファイルを選ぶ"), "selectLanguage": MessageLookupByLibrary.simpleMessage("言語を選択する"), "selectPaymentMethod": @@ -1086,31 +1186,34 @@ class MessageLookup extends MessageLookupByLibrary { "settingLanguageTitle": MessageLookupByLibrary.simpleMessage("言語"), "settings": MessageLookupByLibrary.simpleMessage("設定"), "share": MessageLookupByLibrary.simpleMessage("シェア"), - "shareAddress": m80, + "shareAddress": m97, + "shouldScanPastTransaction": m98, + "showAddress": MessageLookupByLibrary.simpleMessage("住所を表示"), "showDetails": MessageLookupByLibrary.simpleMessage("詳細を表示"), "showMyOrders": MessageLookupByLibrary.simpleMessage("私の注文を表示"), + "showingOrders": m99, "signInWithPassword": MessageLookupByLibrary.simpleMessage("パスワードでサインイン"), "signInWithSeedPhrase": MessageLookupByLibrary.simpleMessage( "パスワードをお忘れですか?シードからウォレットを復元する"), "simple": MessageLookupByLibrary.simpleMessage("単純"), "simpleTradeActivate": MessageLookupByLibrary.simpleMessage("活性化"), - "simpleTradeBuyHint": m81, + "simpleTradeBuyHint": m100, "simpleTradeBuyTitle": MessageLookupByLibrary.simpleMessage("買う"), "simpleTradeClose": MessageLookupByLibrary.simpleMessage("近い"), - "simpleTradeMaxActiveCoins": m82, - "simpleTradeNotActive": m83, + "simpleTradeMaxActiveCoins": m101, + "simpleTradeNotActive": m102, "simpleTradeRecieve": MessageLookupByLibrary.simpleMessage("受け取る"), - "simpleTradeSellHint": m84, + "simpleTradeSellHint": m103, "simpleTradeSellTitle": MessageLookupByLibrary.simpleMessage("売る"), "simpleTradeSend": MessageLookupByLibrary.simpleMessage("送信"), "simpleTradeShowLess": MessageLookupByLibrary.simpleMessage("表示を減らす"), "simpleTradeShowMore": MessageLookupByLibrary.simpleMessage("もっと見せる"), - "simpleTradeUnableActivate": m85, + "simpleTradeUnableActivate": m104, "skip": MessageLookupByLibrary.simpleMessage("スキップ"), "snackbarDismiss": MessageLookupByLibrary.simpleMessage("解散"), - "soundCantPlayThatMsg": m86, - "soundPlayedWhen": m87, + "soundCantPlayThatMsg": m105, + "soundPlayedWhen": m106, "soundSettingsLink": MessageLookupByLibrary.simpleMessage("音"), "soundSettingsTitle": MessageLookupByLibrary.simpleMessage("サウンド設定"), "soundsDialogTitle": MessageLookupByLibrary.simpleMessage("サウンド"), @@ -1121,18 +1224,20 @@ class MessageLookup extends MessageLookupByLibrary { "soundsNote": MessageLookupByLibrary.simpleMessage( "アプリケーション設定でカスタムサウンドを設定できることに注意してください。"), "spanishLanguage": MessageLookupByLibrary.simpleMessage("スペイン語"), + "startDate": MessageLookupByLibrary.simpleMessage("開始日"), + "startSwap": MessageLookupByLibrary.simpleMessage("スワップの開始"), "step": MessageLookupByLibrary.simpleMessage("ステップ"), "success": MessageLookupByLibrary.simpleMessage("成功!"), "support": MessageLookupByLibrary.simpleMessage("サポート"), - "supportLinksDesc": m88, + "supportLinksDesc": m107, "swap": MessageLookupByLibrary.simpleMessage("スワップ"), "swapCurrent": MessageLookupByLibrary.simpleMessage("現時点の"), "swapDetailTitle": MessageLookupByLibrary.simpleMessage("交換の詳細を確認する"), "swapEstimated": MessageLookupByLibrary.simpleMessage("見積もり"), "swapFailed": MessageLookupByLibrary.simpleMessage("スワップに失敗しました"), - "swapGasActivate": m89, - "swapGasAmount": m90, - "swapGasAmountRequired": m91, + "swapGasActivate": m108, + "swapGasAmount": m109, + "swapGasAmountRequired": m110, "swapOngoing": MessageLookupByLibrary.simpleMessage("スワップ進行中"), "swapProgress": MessageLookupByLibrary.simpleMessage("進捗詳細"), "swapStarted": MessageLookupByLibrary.simpleMessage("開始"), @@ -1140,6 +1245,12 @@ class MessageLookup extends MessageLookupByLibrary { "swapTotal": MessageLookupByLibrary.simpleMessage("合計"), "swapUUID": MessageLookupByLibrary.simpleMessage("UUIDを入れ替える"), "switchTheme": MessageLookupByLibrary.simpleMessage("テーマを切り替える"), + "syncFromDate": MessageLookupByLibrary.simpleMessage("指定した日付から同期"), + "syncFromSaplingActivation": + MessageLookupByLibrary.simpleMessage("苗木アクティベーションからの同期"), + "syncNewTransactions": + MessageLookupByLibrary.simpleMessage("新しいトランザクションを同期する"), + "syncTransactionsQuestion": m111, "tagAVX20": MessageLookupByLibrary.simpleMessage("AVX20"), "tagBEP20": MessageLookupByLibrary.simpleMessage("BEP20"), "tagERC20": MessageLookupByLibrary.simpleMessage("ERC20"), @@ -1154,6 +1265,7 @@ class MessageLookup extends MessageLookupByLibrary { "tagQRC20": MessageLookupByLibrary.simpleMessage("QRC20"), "tagSBCH": MessageLookupByLibrary.simpleMessage("SBCH"), "tagUBQ": MessageLookupByLibrary.simpleMessage("UBQ"), + "tagZHTLC": MessageLookupByLibrary.simpleMessage("ZHTLC"), "takerOrder": MessageLookupByLibrary.simpleMessage("テイカーオーダー"), "timeOut": MessageLookupByLibrary.simpleMessage("タイムアウト"), "titleCreatePassword": MessageLookupByLibrary.simpleMessage("パスワードを作成"), @@ -1176,6 +1288,11 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("取引手数料の計算に失敗しました"), "tradingFee": MessageLookupByLibrary.simpleMessage("取引手数料:"), "tradingMode": MessageLookupByLibrary.simpleMessage("取引モード:"), + "transactionAddress": MessageLookupByLibrary.simpleMessage("取引アドレス"), + "transactionHidden": + MessageLookupByLibrary.simpleMessage("非表示のトランザクション"), + "transactionHiddenPhishing": MessageLookupByLibrary.simpleMessage( + "このトランザクションはフィッシングの可能性があるため非表示になりました。"), "tryRestarting": MessageLookupByLibrary.simpleMessage( "それでも一部のコインが有効化されない場合は、アプリを再起動してみてください。"), "turkishLanguage": MessageLookupByLibrary.simpleMessage("トルコ語"), @@ -1188,23 +1305,23 @@ class MessageLookup extends MessageLookupByLibrary { "txLimitExceeded": MessageLookupByLibrary.simpleMessage( "リクエストが多すぎます。トランザクション履歴リクエストの制限を超えました。後でもう一度やり直してください。"), "txNotConfirmed": MessageLookupByLibrary.simpleMessage("未確認"), - "txleft": m92, + "txleft": m112, "ukrainianLanguage": MessageLookupByLibrary.simpleMessage("ウクライナ語"), "unlock": MessageLookupByLibrary.simpleMessage("ロックを解除"), "unlockFunds": MessageLookupByLibrary.simpleMessage("資金のロックを解除"), - "unlockSuccess": m93, + "unlockSuccess": m113, "unspendable": MessageLookupByLibrary.simpleMessage("使えない"), "updatesAvailable": MessageLookupByLibrary.simpleMessage("新しいバージョンが利用可能"), "updatesChecking": MessageLookupByLibrary.simpleMessage("アップデートの確認..."), - "updatesCurrentVersion": m94, + "updatesCurrentVersion": m114, "updatesNotifAvailable": MessageLookupByLibrary.simpleMessage("新しいバージョンが利用可能です。更新してください。"), - "updatesNotifAvailableVersion": m95, + "updatesNotifAvailableVersion": m115, "updatesNotifTitle": MessageLookupByLibrary.simpleMessage("利用可能なアップデート"), "updatesSkip": MessageLookupByLibrary.simpleMessage("今のところスキップ"), - "updatesTitle": m96, + "updatesTitle": m116, "updatesUpToDate": MessageLookupByLibrary.simpleMessage("すでに最新"), "updatesUpdate": MessageLookupByLibrary.simpleMessage("アップデート"), "uriInsufficientBalanceSpan1": @@ -1227,22 +1344,24 @@ class MessageLookup extends MessageLookupByLibrary { "warningOkBtn": MessageLookupByLibrary.simpleMessage("Ok"), "warningShareLogs": MessageLookupByLibrary.simpleMessage( "警告 - 特殊なケースでは、このログ データには機密情報が含まれており、失敗したスワップからのコインの使用に使用できる可能性があります。"), - "weFailedTo": m97, - "weFailedToActivate": m98, - "welcomeInfo": m99, + "weFailedTo": m117, + "weFailedToActivate": m118, + "welcomeInfo": m119, "welcomeLetSetUp": MessageLookupByLibrary.simpleMessage("セットアップしましょう!"), "welcomeTitle": MessageLookupByLibrary.simpleMessage("ようこそ"), "welcomeWallet": MessageLookupByLibrary.simpleMessage("財布"), "willBeRedirected": MessageLookupByLibrary.simpleMessage( "完了すると、ポートフォリオ ページにリダイレクトされます。"), + "willTakeTime": MessageLookupByLibrary.simpleMessage( + "これには時間がかかるため、アプリをフォアグラウンドに維持する必要があります。\nアクティベーションの進行中にアプリを終了すると、問題が発生する可能性があります。"), "withdraw": MessageLookupByLibrary.simpleMessage("撤退"), - "withdrawCameraAccessText": m100, + "withdrawCameraAccessText": m120, "withdrawCameraAccessTitle": MessageLookupByLibrary.simpleMessage("アクセスが拒否されました"), "withdrawConfirm": MessageLookupByLibrary.simpleMessage("出金確認"), "withdrawConfirmError": MessageLookupByLibrary.simpleMessage( "エラーが発生しました。あとでもう一度試してみてください。"), - "withdrawValue": m101, + "withdrawValue": m121, "wrongCoinSpan1": MessageLookupByLibrary.simpleMessage("の支払い QR コードをスキャンしようとしています"), "wrongCoinSpan2": MessageLookupByLibrary.simpleMessage("しかし、あなたは上にいます"), @@ -1258,7 +1377,7 @@ class MessageLookup extends MessageLookupByLibrary { "you have an order that new orders can match with": MessageLookupByLibrary.simpleMessage("新しい注文と一致する注文があります"), "youAreSending": MessageLookupByLibrary.simpleMessage("あなたが送っているもの:"), - "youWillReceiveClaim": m102, + "youWillReceiveClaim": m122, "youWillReceived": MessageLookupByLibrary.simpleMessage("受け取るもの:"), "yourWallet": MessageLookupByLibrary.simpleMessage("あなたの財布") }; diff --git a/lib/l10n/messages_ko.dart b/lib/l10n/messages_ko.dart index 0e4c57e5b..1c5917a9f 100644 --- a/lib/l10n/messages_ko.dart +++ b/lib/l10n/messages_ko.dart @@ -19,247 +19,287 @@ typedef String MessageIfAbsent(String messageStr, List args); class MessageLookup extends MessageLookupByLibrary { String get localeName => 'ko'; - static m0(name) => "성공적으로 ${name} 활성화!"; + static m0(protocolName) => "${protocolName} 코인을 활성화하시겠습니까?"; - static m1(title) => "${title} 주소를 가진 연락처만 보여지고 있습니다"; + static m1(coinName) => "${coinName} 활성화 중"; - static m2(abbr) => + static m2(coinName) => "${coinName} 활성화"; + + static m3(protocolName) => "${protocolName} 활성화 진행 중"; + + static m4(name) => "성공적으로 ${name} 활성화!"; + + static m5(title) => "${title} 주소를 가진 연락처만 보여지고 있습니다"; + + static m6(abbr) => "${abbr}의 주소로 펀드를 보낼수 없습니다, 왜냐하면 ${abbr}는 활성화가 되어있지 않습니다. 포티폴리오로 가주세요."; - static m3(appName) => + static m7(appName) => "아니요! ${appName}은 정보를 보관하지 않습니다. 키, 시드 문구, 비밀번호 등 기밀 데이터는 저장되지 않습니다. 이 데이터는 사용자의 장치에만 저장되며, 시스템에는 저장되지 않습니다. 당신은 자산을 완전히 관리하고 있습니다."; - static m4(appName) => - "${appName}은 안드로이드와 아이폰 모두에서 모바일에 사용할 수 있으며 윈도우, 맥 및 리눅스 운영 체제의 데스크톱에 사용할 수 있습니다."; + static m8(appName) => + "${appName}은(는) Android 및 iPhone의 모바일과 Windows, Mac 및 Linux 운영 체제의 데스크톱에서 사용할 수 있습니다."; - static m5(appName) => + static m9(appName) => "다른 DEX는 일반적으로 단일 블록체인 네트워크를 기반으로 하는 자산 거래, 프록시 토큰 사용, 같은 펀드에서 단일 주문만 가능합니다.\n\n${appName}을 사용하면 프록시 토큰 없이 두 개의 다른 블록체인 네트워크 간에 기본적으로 교환할 수 있습니다. 같은 자금으로 여러 개를 주문할 수도 있습니다. 예를 들어, KMD, QTUM 또는 VRSC으로 0.1 BTC를 판매할 수 있습니다. 첫 주문이 가득 차면 다른 모든 주문이 자동으로 취소됩니다."; - static m6(appName) => + static m10(appName) => "각 스왑의 처리 시간은 몇 가지 요인에 의해 결정됩니다. 거래되는 자산의 블록 시간은 네트워크마다 다릅니다(보통 비트코인이 가장 느립니다). 게다가 사용자는 보안 설정을 커스터마이징 할 수 있습니다. 예를 들어 3번의 확인 후 ${appName}에게 KMD 트랜잭션을 최종적으로 고려하도록 요구할 수 있습니다, 이는 공증을 기다리는 것보다 스와프 시간이 짧아집니다."; - static m7(appName) => + static m11(appName) => "${appName}에서 거래할 때 고려해야 할 두 가지 수수료 카테고리가 있습니다.\n\n1. ${appName}은 수주자의 거래 수수료로 약 0.13%으로(거래량의 1/777 이상 0.0001 이하)를 청구하며 제조사의 주문은 수수료가 제로입니다.\n\n2. 원자력 스와프 거래를 할 때는 제조사와 수험자 모두 관련된 블록체인에 정상적인 네트워크 요금을 지불해야 합니다.\n\n네트워크 요금은 선택한 거래 쌍에 따라 크게 다를 수 있습니다."; - static m8(name, link, appName, appCompanyShort) => + static m12(name, link, appName, appCompanyShort) => "네! ${appName}은 ${appCompanyShort} ${name}을 통해서 서포트를 지원합니다. 저희 팀과 커뮤니티는 항상 돕고 싶습니다!"; - static m9(appName) => + static m13(appName) => "아니요! ${appName}은 완전한 분권화가 되어있습니다. 유저를 제3자 파티를 통해서 제한하는 것은 불가능합니다."; - static m10(appName, appCompanyShort) => + static m14(appName, appCompanyShort) => "${appName}은 ${appCompanyShort} 팁에서 개발되었습니다. ${appCompanyShort}는 원자력 스왑, 지연 작업 증명, 상호 운용 가능한 멀티체인 아키텍처 등의 혁신적인 솔루션을 추진하고 있는 가장 확립된 블록체인 프로젝트 중 하나입니다."; - static m11(appName) => - "당연합니다! 당신은 개발자 문서를 읽어서 더욱 더 많은 정보를 얻고 저희에게 파트너십에 대해서 문의를 할 수 있습니다. 특정 기술적 질문이 있으신가요? ${appName}의 개발자 커뮤니티는 항상 도움을 줄 준비가 되어있습니다!"; + static m15(appName) => + "전적으로! 자세한 내용은 개발자 문서를 참조하거나 파트너십 문의 사항이 있는 경우 문의해 주세요. 특정 기술 질문이 있습니까? ${appName} 개발자 커뮤니티는 항상 도울 준비가 되어 있습니다!"; - static m12(batteryLevelCritical) => + static m16(coinName1, coinName2) => "${coinName1}/${coinName2} 기준"; + + static m17(batteryLevelCritical) => "스왑을 안전하게 실행하려면 배터리 충전양 (${batteryLevelCritical}%)은 매우 중요합니다. 충전을 하고 다시 시도해 주십시오."; - static m13(batteryLevelLow) => + static m18(batteryLevelLow) => "배터리 충전량이 ${batteryLevelLow}%보다 낮습니다. 휴대폰 충전을 부탁드립니다."; - static m14(seconde) => "주문이 진행 중입니다. ${seconde}초를 기다려 주세요!"; + static m19(seconde) => "주문이 진행 중입니다. ${seconde}초를 기다려 주세요!"; + + static m20(index) => "${index} 단어 입력"; + + static m21(index) => "당신의 시드 문구 안에 있는 ${index} 단어는 무엇입니까?"; + + static m22(coin) => "${coin} 활성화가 취소되었습니다."; + + static m23(coin) => "${coin}을(를) 성공적으로 활성화했습니다"; - static m15(index) => "${index} 단어 입력"; + static m24(protocolName) => "${protocolName} 코인이 활성화되었습니다"; - static m16(index) => "당신의 시드 문구 안에 있는 ${index} 단어는 무엇입니까?"; + static m25(protocolName) => "${protocolName} 코인이 성공적으로 활성화되었습니다."; - static m17(name) => "${name}을 연락처를 삭제하는 것을 확인하십니까?"; + static m26(protocolName) => "${protocolName} 코인이 활성화되지 않았습니다."; - static m18(iUnderstand) => + static m27(name) => "${name}을 연락처를 삭제하는 것을 확인하십니까?"; + + static m28(iUnderstand) => "커스텀 시드 문구는 생성된 BIP39 준거 시드 문구 또는 개인 키(WIF)보다 안전성이 낮고 크랙되기 쉬운 경우가 있습니다. 위험을 이해하고 무엇을 하고 있는지 확인하려면 아래 상자에 \"${iUnderstand}\"라고 입력해주세요."; - static m19(abbr) => "${abbr} 주소 입력"; + static m29(coinName) => "${coinName} 거래 수수료를 받습니다"; + + static m30(coinName) => "${coinName} 거래 수수료 보내기"; - static m20(selected, remains) => + static m31(abbr) => "${abbr} 주소 입력"; + + static m32(selected, remains) => "여전히 ${remains}을(를) 활성화할 수 있습니다. 선택됨: ${selected}"; - static m21(gas) => "가스가 충분하지 않습니다 - 최소 ${gas}양의 가스를 사용하세요"; + static m33(gas) => "가스가 충분하지 않습니다 - 최소 ${gas}양의 가스를 사용하세요"; - static m22(appName, appCompanyLong) => + static m34(appName, appCompanyLong) => "This End-User License Agreement (\'EULA\') is a legal agreement between you and ${appCompanyLong}.\n\nThis EULA agreement governs your acquisition and use of our ${appName} mobile software (\'Software\', \'Mobile Application\', \'Application\' or \'App\') directly from ${appCompanyLong} or indirectly through a ${appCompanyLong} authorized entity, reseller or distributor (a \'Distributor\').\nPlease read this EULA agreement carefully before completing the installation process and using the ${appName} mobile software. It provides a license to use the ${appName} mobile software and contains warranty information and liability disclaimers.\nIf you register for the beta program of the ${appName} mobile software, this EULA agreement will also govern that trial. By clicking \'accept\' or installing and/or using the ${appName} mobile software, you are confirming your acceptance of the Software and agreeing to become bound by the terms of this EULA agreement.\nIf you are entering into this EULA agreement on behalf of a company or other legal entity, you represent that you have the authority to bind such entity and its affiliates to these terms and conditions. If you do not have such authority or if you do not agree with the terms and conditions of this EULA agreement, do not install or use the Software, and you must not accept this EULA agreement.\nThis EULA agreement shall apply only to the Software supplied by ${appCompanyLong} herewith regardless of whether other software is referred to or described herein. The terms also apply to any ${appCompanyLong} updates, supplements, Internet-based services, and support services for the Software, unless other terms accompany those items on delivery. If so, those terms apply.\n\nLICENSE GRANT\n\n${appCompanyLong} hereby grants you a personal, non-transferable, non-exclusive license to use the ${appName} mobile software on your devices in accordance with the terms of this EULA agreement.\n\nYou are permitted to load the ${appName} mobile software (for example a PC, laptop, mobile or tablet) under your control. You are responsible for ensuring your device meets the minimum security and resource requirements of the ${appName} mobile software.\n\nYou are not permitted to:\n(a) edit, alter, modify, adapt, translate or otherwise change the whole or any part of the Software nor permit the whole or any part of the Software to be combined with or become incorporated in any other software, nor decompile, disassemble or reverse engineer the Software or attempt to do any such things;\n(b) reproduce, copy, distribute, resell or otherwise use the Software for any commercial purpose;\n(c) use the Software in any way which breaches any applicable local, national or international law;\n(d) use the Software for any purpose that ${appCompanyLong} considers is a breach of this EULA agreement.\n\nINTELLECTUAL PROPERTY AND OWNERSHIP\n\n${appCompanyLong} shall at all times retain ownership of the Software as originally downloaded by you and all subsequent downloads of the Software by you. The Software (and the copyright, and other intellectual property rights of whatever nature in the Software, including any modifications made thereto) are and shall remain the property of ${appCompanyLong}.\n\n${appCompanyLong} reserves the right to grant licenses to use the Software to third parties.\n\nTERMINATION\n\nThis EULA agreement is effective from the date you first use the Software and shall continue until terminated. You may terminate it at any time upon written notice to ${appCompanyLong}.\nIt will also terminate immediately if you fail to comply with any term of this EULA agreement. Upon such termination, the licenses granted by this EULA agreement will immediately terminate and you agree to stop all access and use of the Software. The provisions that by their nature continue and survive will survive any termination of this EULA agreement.\n\nGOVERNING LAW\n\nThis EULA agreement, and any dispute arising out of or in connection with this EULA agreement, shall be governed by and construed in accordance with the laws of Vietnam.\n\nThis document was last updated on January 31st, 2020"; - static m23(appCompanyLong) => + static m35(appCompanyLong) => "${appCompanyLong} is the owner and/or authorised user of all trademarks, service marks, design marks, patents, copyrights, database rights and all other intellectual property appearing on or contained within the application, unless otherwise indicated. All information, text, material, graphics, software and advertisements on the application interface are copyright of ${appCompanyLong}, its suppliers and licensors, unless otherwise expressly indicated by ${appCompanyLong}. \nExcept as provided in the Terms, use of the application does not grant You any right, title, interest or license to any such intellectual property You may have access to on the application. \nWe own the rights, or have permission to use, the trademarks listed in our application. You are not authorised to use any of those trademarks without our written authorization – doing so would constitute a breach of our or another party’s intellectual property rights. \nAlternatively, we might authorise You to use the content in our application if You previously contact us and we agree in writing."; - static m24(appCompanyShort, appCompanyLong) => + static m36(appCompanyShort, appCompanyLong) => "${appCompanyLong} cannot guarantee the safety or security of your computer systems. We do not accept liability for any loss or corruption of electronically stored data or any damage to any computer system occurred in connection with the use of the application or of the user content.\n${appCompanyLong} makes no representation or warranty of any kind, express or implied, as to the operation of the application or the user content. You expressly agree that your use of the application is entirely at your sole risk.\nYou agree that the content provided in the application and the user content do not constitute financial product, legal or taxation advice, and You agree on not representing the user content or the application as such.\nTo the extent permitted by current legislation, the application is provided on an “as is, as available” basis.\n\n${appCompanyLong} expressly disclaims all responsibility for any loss, injury, claim, liability, or damage, or any indirect, incidental, special or consequential damages or loss of profits whatsoever resulting from, arising out of or in any way related to:\n(a) any errors in or omissions of the application and/or the user content, including but not limited to technical inaccuracies and typographical errors;\n(b) any third party website, application or content directly or indirectly accessed through links in the application, including but not limited to any errors or omissions;\n(c) the unavailability of the application or any portion of it;\n(d) your use of the application;\n(e) your use of any equipment or software in connection with the application.\n\nAny Services offered in connection with the Platform are provided on an \'as is\' basis, without any representation or warranty, whether express, implied or statutory. To the maximum extent permitted by applicable law, we specifically disclaim any implied warranties of title, merchantability, suitability for a particular purpose and/or non-infringement. We do not make any representations or warranties that use of the Platform will be continuous, uninterrupted, timely, or error-free.\nWe make no warranty that any Platform will be free from viruses, malware, or other related harmful material and that your ability to access any Platform will be uninterrupted. Any defects or malfunction in the product should be directed to the third party offering the Platform, not to ${appCompanyShort}.\nWe will not be responsible or liable to You for any loss of any kind, from action taken, or taken in reliance on the material or information contained in or through the Platform.\nThis is experimental and unfinished software. Use at your own risk. No warranty for any kind of damage. By using this application you agree to this terms and conditions."; - static m25(appCompanyLong) => + static m37(appCompanyLong) => "You agree and understand that there are risks associated with utilizing Services involving Virtual Currencies including, but not limited to, the risk of failure of hardware, software and internet connections, the risk of malicious software introduction, and the risk that third parties may obtain unauthorized access to information stored within your Wallet, including but not limited to your public and private keys. You agree and understand that ${appCompanyLong} will not be responsible for any communication failures, disruptions, errors, distortions or delays You may experience when using the Services, however caused.\nYou accept and acknowledge that there are risks associated with utilizing any virtual currency network, including, but not limited to, the risk of unknown vulnerabilities in or unanticipated changes to the network protocol. You acknowledge and accept that ${appCompanyLong} has no control over any cryptocurrency network and will not be responsible for any harm occurring as a result of such risks, including, but not limited to, the inability to reverse a transaction, and any losses in connection therewith due to erroneous or fraudulent actions.\nThe risk of loss in using Services involving Virtual Currencies may be substantial and losses may occur over a short period of time. In addition, price and liquidity are subject to significant fluctuations that may be unpredictable.\nVirtual Currencies are not legal tender and are not backed by any sovereign government. In addition, the legislative and regulatory landscape around Virtual Currencies is constantly changing and may affect your ability to use, transfer, or exchange Virtual Currencies.\nCFDs are complex instruments and come with a high risk of losing money rapidly due to leverage. 80.6% of retail investor accounts lose money when trading CFDs with this provider. You should consider whether You understand how CFDs work and whether You can afford to take the high risk of losing your money."; - static m26(appCompanyLong) => + static m38(appCompanyLong) => "You agree to indemnify, defend and hold harmless ${appCompanyLong}, its officers, directors, employees, agents, licensors, suppliers and any third party information providers to the application from and against all losses, expenses, damages and costs, including reasonable lawyer fees, resulting from any violation of the Terms by You.\nYou also agree to indemnify ${appCompanyLong} against any claims that information or material which You have submitted to ${appCompanyLong} is in violation of any law or in breach of any third party rights (including, but not limited to, claims in respect of defamation, invasion of privacy, breach of confidence, infringement of copyright or infringement of any other intellectual property right)."; - static m27(appCompanyLong) => + static m39(appCompanyLong) => "In order to be completed, any Virtual Currency transaction created with the ${appCompanyLong} must be confirmed and recorded in the Virtual Currency ledger associated with the relevant Virtual Currency network. Such networks are decentralized, peer-to-peer networks supported by independent third parties, which are not owned, controlled or operated by ${appCompanyLong}.\n${appCompanyLong} has no control over any Virtual Currency network and therefore cannot and does not ensure that any transaction details You submit via our Services will be confirmed on the relevant Virtual Currency network. You agree and understand that the transaction details You submit via our Services may not be completed, or may be substantially delayed, by the Virtual Currency network used to process the transaction. We do not guarantee that the Wallet can transfer title or right in any Virtual Currency or make any warranties whatsoever with regard to title.\nOnce transaction details have been submitted to a Virtual Currency network, we cannot assist You to cancel or otherwise modify your transaction or transaction details. ${appCompanyLong} has no control over any Virtual Currency network and does not have the ability to facilitate any cancellation or modification requests.\nIn the event of a Fork, ${appCompanyLong} may not be able to support activity related to your Virtual Currency. You agree and understand that, in the event of a Fork, the transactions may not be completed, completed partially, incorrectly completed, or substantially delayed. ${appCompanyLong} is not responsible for any loss incurred by You caused in whole or in part, directly or indirectly, by a Fork.\nIn no event shall ${appCompanyLong}, its affiliates and service providers, or any of their respective officers, directors, agents, employees or representatives, be liable for any lost profits or any special, incidental, indirect, intangible, or consequential damages, whether based on contract, tort, negligence, strict liability, or otherwise, arising out of or in connection with authorized or unauthorized use of the services, or this agreement, even if an authorized representative of ${appCompanyLong} has been advised of, has known of, or should have known of the possibility of such damages. \nFor example (and without limiting the scope of the preceding sentence), You may not recover for lost profits, lost business opportunities, or other types of special, incidental, indirect, intangible, or consequential damages. Some jurisdictions do not allow the exclusion or limitation of incidental or consequential damages, so the above limitation may not apply to You. \nWe will not be responsible or liable to You for any loss and take no responsibility for damages or claims arising in whole or in part, directly or indirectly from: \n(a) user error such as forgotten passwords, incorrectly constructed transactions, or mistyped Virtual Currency addresses; \n(b) server failure or data loss; \n(c) corrupted or otherwise non-performing Wallets or Wallet files; \n(d) unauthorized access to applications; \n(e) any unauthorized activities, including without limitation the use of hacking, viruses, phishing, brute forcing or other means of attack against the Services."; - static m28(appCompanyShort, appCompanyLong) => + static m40(appCompanyShort, appCompanyLong) => "For the avoidance of doubt, ${appCompanyLong} does not provide investment, tax or legal advice, nor does ${appCompanyLong} broker trades on your behalf. All ${appCompanyLong} trades are executed automatically, based on the parameters of your order instructions and in accordance with posted Trade execution procedures, and You are solely responsible for determining whether any investment, investment strategy or related transaction is appropriate for You based on your personal investment objectives, financial circumstances and risk tolerance. You should consult your legal or tax professional regarding your specific situation. Neither ${appCompanyShort} nor its owners, members, officers, directors, partners, consultants, nor anyone involved in the publication of this application, is a registered investment adviser or broker-dealer or associated person with a registered investment adviser or broker-dealer and none of the foregoing make any recommendation that the purchase or sale of crypto-assets or securities of any company profiled in the mobile Application is suitable or advisable for any person or that an investment or transaction in such crypto-assets or securities will be profitable. The information contained in the mobile Application is not intended to be, and shall not constitute, an offer to sell or the solicitation of any offer to buy any crypto-asset or security. The information presented in the mobile Application is provided for informational purposes only and is not to be treated as advice or a recommendation to make any specific investment or transaction. Please, consult with a qualified professional before making any decisions. The opinions and analysis included in this applications are based on information from sources deemed to be reliable and are provided “as is” in good faith. ${appCompanyShort} makes no representation or warranty, expressed, implied, or statutory, as to the accuracy or completeness of such information, which may be subject to change without notice. ${appCompanyShort} shall not be liable for any errors or any actions taken in relation to the above. Statements of opinion and belief are those of the authors and/or editors who contribute to this application, and are based solely upon the information possessed by such authors and/or editors. No inference should be drawn that ${appCompanyShort} or such authors or editors have any special or greater knowledge about the crypto-assets or companies profiled or any particular expertise in the industries or markets in which the profiled crypto-assets and companies operate and compete. Information on this application is obtained from sources deemed to be reliable; however, ${appCompanyShort} takes no responsibility for verifying the accuracy of such information and makes no representation that such information is accurate or complete. Certain statements included in this application may be forward-looking statements based on current expectations. ${appCompanyShort} makes no representation and provides no assurance or guarantee that such forward-looking statements will prove to be accurate. Persons using the ${appCompanyShort} application are urged to consult with a qualified professional with respect to an investment or transaction in any crypto-asset or company profiled herein. Additionally, persons using this application expressly represent that the content in this application is not and will not be a consideration in such persons’ investment or transaction decisions. Traders should verify independently information provided in the ${appCompanyShort} application by completing their own due diligence on any crypto-asset or company in which they are contemplating an investment or transaction of any kind and review a complete information package on that crypto-asset or company, which should include, but not be limited to, related blog updates and press releases. Past performance of profiled crypto-assets and securities is not indicative of future results. Crypto-assets and companies profiled on this site may lack an active trading market and invest in a crypto-asset or security that lacks an active trading market or trade on certain media, platforms and markets are deemed highly speculative and carry a high degree of risk. Anyone holding such crypto-assets and securities should be financially able and prepared to bear the risk of loss and the actual loss of his or her entire trade. The information in this application is not designed to be used as a basis for an investment decision. Persons using the ${appCompanyShort} application should confirm to their own satisfaction the veracity of any information prior to entering into any investment or making any transaction. The decision to buy or sell any crypto-asset or security that may be featured by ${appCompanyShort} is done purely and entirely at the reader’s own risk. As a reader and user of this application, You agree that under no circumstances will You seek to hold liable owners, members, officers, directors, partners, consultants or other persons involved in the publication of this application for any losses incurred by the use of information contained in this application ${appCompanyShort} and its contractors and affiliates may profit in the event the crypto-assets and securities increase or decrease in value. Such crypto-assets and securities may be bought or sold from time to time, even after ${appCompanyShort} has distributed positive information regarding the crypto-assets and companies. ${appCompanyShort} has no obligation to inform readers of its trading activities or the trading activities of any of its owners, members, officers, directors, contractors and affiliates and/or any companies affiliated with BC Relations’ owners, members, officers, directors, contractors and affiliates. ${appCompanyShort} and its affiliates may from time to time enter into agreements to purchase crypto-assets or securities to provide a method to reach their goals."; - static m29(appCompanyLong) => + static m41(appCompanyLong) => "The Terms are effective until terminated by ${appCompanyLong}. \nIn the event of termination, You are no longer authorized to access the Application, but all restrictions imposed on You and the disclaimers and limitations of liability set out in the Terms will survive termination. \nSuch termination shall not affect any legal right that may have accrued to ${appCompanyLong} against You up to the date of termination. \n${appCompanyLong} may also remove the Application as a whole or any sections or features of the Application at any time. "; - static m30(appCompanyLong) => + static m42(appCompanyLong) => "The provisions of previous paragraphs are for the benefit of ${appCompanyLong} and its officers, directors, employees, agents, licensors, suppliers, and any third party information providers to the Application. Each of these individuals or entities shall have the right to assert and enforce those provisions directly against You on its own behalf."; - static m31(appName, appCompanyLong) => + static m43(appName, appCompanyLong) => "${appName} mobile is a non-custodial, decentralized and blockchain based application and as such does ${appCompanyLong} never store any user-data (accounts and authentication data). \nWe also collect and process non-personal, anonymized data for statistical purposes and analysis and to help us provide a better service.\n\nThis document was last updated on January 31st, 2020"; - static m32(appName, appCompanyLong) => + static m44(appName, appCompanyLong) => "This disclaimer applies to the contents and services of the app ${appName} and is valid for all users of the “Application” (\'Software\', “Mobile Application”, “Application” or “App”).\n\nThe Application is owned by ${appCompanyLong}.\n\nWe reserve the right to amend the following Terms and Conditions (governing the use of the application “${appName} mobile”) at any time without prior notice and at our sole discretion. It is your responsibility to periodically check this Terms and Conditions for any updates to these Terms, which shall come into force once published.\nYour continued use of the application shall be deemed as acceptance of the following Terms.\nWe are a company incorporated in Vietnam and these Terms and Conditions are governed by and subject to the laws of Vietnam.\nIf You do not agree with these Terms and Conditions, You must not use or access this software."; - static m33(appName) => + static m45(appName) => "You are not allowed to decompile, decode, disassemble, rent, lease, loan, sell, sublicense, or create derivative works from the ${appName} mobile application or the user content. Nor are You allowed to use any network monitoring or detection software to determine the software architecture, or extract information about usage or individuals’ or users’ identities. \nYou are not allowed to copy, modify, reproduce, republish, distribute, display, or transmit for commercial, non-profit or public purposes all or any portion of the application or the user content without our prior written authorization."; - static m34(appName, appCompanyLong) => + static m46(appName, appCompanyLong) => "If you create an account in the Mobile Application, you are responsible for maintaining the security of your account and you are fully responsible for all activities that occur under the account and any other actions taken in connection with it. We will not be liable for any acts or omissions by you, including any damages of any kind incurred as a result of such acts or omissions. \n\n${appName} mobile is a non-custodial wallet implementation and thus ${appCompanyLong} can not access nor restore your account in case of (data) loss."; - static m35(appName) => + static m47(appName) => "End-User License Agreement (EULA) of ${appName} mobile:"; - static m36(coin) => "${coin} 호수에게 요청 보내는 중..."; + static m48(coinAbbr) => "${coinAbbr} 활성화를 취소하지 못했습니다."; + + static m49(coin) => "${coin} 호수에게 요청 보내는 중..."; + + static m50(appCompanyShort) => "${appCompanyShort} 뉴스"; + + static m51(value) => "수수료는 최대 ${value}이어야 합니다."; - static m37(appCompanyShort) => "${appCompanyShort} 뉴스"; + static m52(coin) => "${coin} 수수료"; - static m38(value) => "수수료는 최대 ${value}이어야 합니다."; + static m53(coin) => "${coin}을 활성화하세요."; - static m39(coin) => "${coin} 수수료"; + static m54(value) => "Gwei는 최대 ${value}이어야 합니다."; - static m40(coin) => "${coin}을 활성화하세요."; + static m55(coinName) => "수신되는 ${coinName} txs 보호 설정"; - static m41(abbr) => "${abbr} 잔액은 교환 수수료를 지불할 금액보다 부족합니다"; + static m56(abbr) => "${abbr} 잔액은 교환 수수료를 지불할 금액보다 부족합니다"; - static m42(coinAbbr) => "${coinAbbr} 이 사용불가합니다 :("; + static m57(coin) => "잘못된 ${coin} 주소"; - static m43(coinName) => "❗주의! ${coinName} 시장의 24시간 거래량이 \$10,000 미만입니다!"; + static m58(coinAbbr) => "${coinAbbr} 이 사용불가합니다 :("; - static m44(coinName, number) => "최소 판매 양은 ${number} ${coinName}입니다"; + static m59(coinName) => "❗주의! ${coinName} 시장의 24시간 거래량이 \$10,000 미만입니다!"; - static m45(coinName, number) => "최소 구매 양은 ${number} ${coinName}입니다"; + static m60(value) => "한도는 최대 ${value}이어야 합니다."; - static m46(buyCoin, buyAmount, sellCoin, sellAmount) => + static m61(coinName, number) => "최소 판매 양은 ${number} ${coinName}입니다"; + + static m62(coinName, number) => "최소 구매 양은 ${number} ${coinName}입니다"; + + static m63(buyCoin, buyAmount, sellCoin, sellAmount) => "최소 주문 양은 ${buyAmount} ${buyCoin}\n(${sellAmount} ${sellCoin})입니다"; - static m47(coinName, number) => "최소 판매 양은 ${number} ${coinName}입니다"; + static m64(coinName, number) => "최소 판매 양은 ${number} ${coinName}입니다"; - static m48(minValue, coin) => "값은 ${minValue} ${coin}보다 커야합니다"; + static m65(minValue, coin) => "값은 ${minValue} ${coin}보다 커야합니다"; - static m49(appName) => + static m66(appName) => "이제 셀룰러 데이터를 사용하고 ${appName} P2P 네트워크에 참여하여 인터넷 트래픽을 소비합니다. 셀룰러 데이터 요금제가 비싸다면 WiFi 네트워크를 사용하는 것이 좋습니다."; - static m50(coin) => "${coin} 활성화하고 먼저 가장 높은 잔고로"; + static m67(coin) => "${coin} 활성화하고 먼저 가장 높은 잔고로"; + + static m68(number) => "${number} 주문들 생성:"; + + static m69(coin) => "${coin} 잔고가 너무 낮습니다"; - static m51(number) => "${number} 주문들 생성:"; + static m70(coin, fee) => "수수료를 지불할 ${coin}이 부족합니다. 최소 잔고는 ${fee} ${coin}입니다"; - static m52(coin) => "${coin} 잔고가 너무 낮습니다"; + static m71(coinName) => "${coinName} 양을 입력해 주세요."; - static m53(coin, fee) => "수수료를 지불할 ${coin}이 부족합니다. 최소 잔고는 ${fee} ${coin}입니다"; + static m72(coin) => "거래를 위한 ${coin} 부족합니다!"; - static m54(coinName) => "${coinName} 양을 입력해 주세요."; + static m73(sell, buy) => "${sell}/${buy} 가 성공적으로 바꿔었습니다"; - static m55(coin) => "거래를 위한 ${coin} 부족합니다!"; + static m74(sell, buy) => "${sell}/${buy} 를 바꾸기 실패했습니다"; - static m56(sell, buy) => "${sell}/${buy} 가 성공적으로 바꿔었습니다"; + static m75(sell, buy) => "${sell}/${buy} 스와프가 시작되었습니다"; - static m57(sell, buy) => "${sell}/${buy} 를 바꾸기 실패했습니다"; + static m76(sell, buy) => "${sell}/${buy} 스왑 시간이 초과되었습니다"; - static m58(sell, buy) => "${sell}/${buy} 스와프가 시작되었습니다"; + static m77(coin) => "당신은 ${coin} 거래를 받았습니다!"; - static m59(sell, buy) => "${sell}/${buy} 스왑 시간이 초과되었습니다"; + static m78(assets) => "${assets} 자산"; - static m60(coin) => "당신은 ${coin} 거래를 받았습니다!"; + static m79(coin) => "모든 ${coin} 주문이 취소될것 입니다."; - static m61(assets) => "${assets} 자산"; + static m80(delta) => "편함: CEX +${delta}%"; - static m62(coin) => "모든 ${coin} 주문이 취소될것 입니다."; + static m81(delta) => "편함: CEX ${delta}%"; - static m63(delta) => "편함: CEX +${delta}%"; + static m82(fill) => "${fill}% 채워짐"; - static m64(delta) => "편함: CEX ${delta}%"; + static m83(coin) => "Amt. (${coin})"; - static m65(fill) => "${fill}% 채워짐"; + static m84(coin) => "가격 (${coin})"; - static m66(coin) => "Amt. (${coin})"; + static m85(coin) => "총값 (${coin})"; - static m67(coin) => "가격 (${coin})"; + static m86(abbr) => "${abbr}가 활성화되어 있지 않습니다. 활성화 후에 다시 시도해주세요."; - static m68(coin) => "총값 (${coin})"; + static m87(appName) => "어떤 기기에서 ${appName}을 사용할 수 있나요?"; - static m69(abbr) => "${abbr}가 활성화되어 있지 않습니다. 활성화 후에 다시 시도해주세요."; + static m88(appName) => "다른 DEX들에서 거래하는 것 보다 ${appName}에서 하는 것이 무엇이 다른가요?"; - static m70(appName) => "어떤 기기에서 ${appName}을 사용할 수 있나요?"; + static m89(appName) => "${appName}에서 수수료는 어떻게 계산되나요?"; - static m71(appName) => "다른 DEX들에서 거래하는 것 보다 ${appName}에서 하는 것이 무엇이 다른가요?"; + static m90(appName) => "${appName} 뒤에는 누가 있나요?"; - static m72(appName) => "${appName}에서 수수료는 어떻게 계산되나요?"; + static m91(appName) => "${appName}에서 저의 화이트-레이블 익스체인지를 개발할 수 있나요?"; - static m73(appName) => "${appName} 뒤에는 누가 있나요?"; + static m92(amount) => "성공! ${amount} KMD를 받았습니다."; - static m74(appName) => "${appName}에서 저의 화이트-레이블 익스체인지를 개발할 수 있나요?"; + static m93(dd) => "${dd} 날(들)"; - static m75(amount) => "성공! ${amount} KMD를 받았습니다."; + static m94(hh, minutes) => "${hh}h ${minutes}m"; - static m76(dd) => "${dd} 날(들)"; + static m95(mm) => "${mm}분"; - static m77(hh, minutes) => "${hh}h ${minutes}m"; + static m96(amount) => "${amount} 주문을 보기 위해 클릭하세요"; - static m78(mm) => "${mm}분"; + static m97(coinName, address) => "나의 ${coinName} 주소:\n${address}"; - static m79(amount) => "${amount} 주문을 보기 위해 클릭하세요"; + static m98(coin) => "과거 ${coin} 거래를 검색하시겠습니까?"; - static m80(coinName, address) => "나의 ${coinName} 주소:\n${address}"; + static m99(count, maxCount) => "${maxCount}개 주문 중 ${count}개를 표시 중입니다."; - static m81(coin) => "구매할 ${coin} 양을 입력하세요"; + static m100(coin) => "구매할 ${coin} 양을 입력하세요"; - static m82(maxCoins) => "최대 활성화 코인 양은 ${maxCoins}입니다. 조금 비활성화 해주세요."; + static m101(maxCoins) => "최대 활성화 코인 양은 ${maxCoins}입니다. 조금 비활성화 해주세요."; - static m83(coin) => "${coin}이 활성화 되어 있지 않습니다!"; + static m102(coin) => "${coin}이 활성화 되어 있지 않습니다!"; - static m84(coin) => "판매 할 ${coin} 양을 입력하세요"; + static m103(coin) => "판매 할 ${coin} 양을 입력하세요"; - static m85(coin) => "${coin}을 활성화 할 수 없습니다"; + static m104(coin) => "${coin}을 활성화 할 수 없습니다"; - static m86(description) => + static m105(description) => "mp3 또는 wav 파일을 골라주세요. 저희가 ${description}때 들려드리겠습니다."; - static m87(description) => "${description}일때 들려주기"; + static m106(description) => "${description}일때 들려주기"; - static m88(appName) => + static m107(appName) => "궁금한 점이 있거나, ${appName} 앱의 기술적인 문제를 발견하셨다고 생각하시면, 보고하고 팀의 지원을 받으실 수 있습니다."; - static m89(coin) => "${coin} 활성화와 최고 잔고를 먼저 해주세요"; + static m108(coin) => "${coin} 활성화와 최고 잔고를 먼저 해주세요"; - static m90(coin) => "${coin} 잔고가 거래 수수료를 지불하기 부족합니다."; + static m109(coin) => "${coin} 잔고가 거래 수수료를 지불하기 부족합니다."; - static m91(coin, amount) => + static m110(coin, amount) => "${coin} 잔고가 거래 수수료를 지불하기 부족합니다. ${coin} ${amount}가 필요합니다."; - static m92(left) => "남은 거래: ${left}"; + static m111(name) => "어떤 ${name} 거래를 동기화하시겠습니까?"; - static m93(amnt, hash) => "성공적으로 ${amnt} 펀드를 열었습니다 - TX: ${hash}"; + static m112(left) => "남은 거래: ${left}"; - static m94(version) => "당신은 ${version} 사용 중 입니다"; + static m113(amnt, hash) => "성공적으로 ${amnt} 펀드를 열었습니다 - TX: ${hash}"; - static m95(version) => "버전 ${version}이 있습니다. 업데이트를 하세요."; + static m114(version) => "당신은 ${version} 사용 중 입니다"; - static m96(appName) => "${appName} 업데이트"; + static m115(version) => "버전 ${version}이 있습니다. 업데이트를 하세요."; - static m97(coinAbbr) => "저희가 ${coinAbbr}를 활성화 하는 것을 실패했습니다"; + static m116(appName) => "${appName} 업데이트"; - static m98(coinAbbr) => + static m117(coinAbbr) => "저희가 ${coinAbbr}를 활성화 하는 것을 실패했습니다"; + + static m118(coinAbbr) => "저희가 ${coinAbbr}를 활성화 하는 것을 실패했습니다.\n앱을 다시 시작하고 다시 해주세요."; - static m99(appName) => + static m119(appName) => "${appName} 모바일은 3세대 DEX 기능과 더 많은 기능 등을 탑재한 차세대 멀티코인 지갑입니다."; - static m100(appName) => + static m120(appName) => "카메라에 대한 ${appName} 액세스를 이전에 거부했습니다.\nQR코드 스캔을 실시하려면 전화기의 설정에서 카메라의 허가를 수동으로 변경해 주세요."; - static m101(amount, coinName) => "${amount} ${coinName} 인출"; + static m121(amount, coinName) => "${amount} ${coinName} 인출"; - static m102(amount, coin) => "당신은 ${amount} ${coin}을 받습니다"; + static m122(amount, coin) => "당신은 ${amount} ${coin}을 받습니다"; final messages = _notInlinedMessages(_notInlinedMessages); static Map _notInlinedMessages(_) => { @@ -283,35 +323,43 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("생체보안 활성화"), "activateAccessPin": MessageLookupByLibrary.simpleMessage("비밀번호 보호 활성화"), + "activateCoins": m0, + "activating": m1, + "activation": m2, + "activationCancelled": + MessageLookupByLibrary.simpleMessage("코인 활성화가 취소되었습니다."), + "activationInProgress": m3, "addCoin": MessageLookupByLibrary.simpleMessage("코인 활성화"), - "addingCoinSuccess": m0, + "addingCoinSuccess": m4, "addressAdd": MessageLookupByLibrary.simpleMessage("주소 추가"), "addressBook": MessageLookupByLibrary.simpleMessage("주소록"), "addressBookEmpty": MessageLookupByLibrary.simpleMessage("주소록이 비어 있습니다"), - "addressBookFilter": m1, + "addressBookFilter": m5, "addressBookTitle": MessageLookupByLibrary.simpleMessage("주소록"), - "addressCoinInactive": m2, + "addressCoinInactive": m6, "addressNotFound": MessageLookupByLibrary.simpleMessage("찾을 수 없음"), "addressSelectCoin": MessageLookupByLibrary.simpleMessage("코인 선택"), "addressSend": MessageLookupByLibrary.simpleMessage("수신자 선택"), "advanced": MessageLookupByLibrary.simpleMessage("고급"), "all": MessageLookupByLibrary.simpleMessage("모두"), + "allPastTransactions": MessageLookupByLibrary.simpleMessage( + "지갑에는 과거 거래가 표시됩니다. 모든 블록이 다운로드되고 스캔되므로 상당한 저장 공간과 시간이 소요됩니다."), "allowCustomSeed": MessageLookupByLibrary.simpleMessage("커스텀 시드 허용"), "alreadyExists": MessageLookupByLibrary.simpleMessage("벌서 존재합니다"), "amount": MessageLookupByLibrary.simpleMessage("양"), "amountToSell": MessageLookupByLibrary.simpleMessage("판매 할 양"), - "answer_1": m3, - "answer_10": m4, - "answer_2": m5, - "answer_3": m6, + "answer_1": m7, + "answer_10": m8, + "answer_2": m9, + "answer_3": m10, "answer_4": MessageLookupByLibrary.simpleMessage( "네. 각 아토믹 스왑을 정상적으로 완료하려면 인터넷에 접속한 채로 애플리케이션을 실행해 두어야 합니다(보통 연결이 매우 짧은 상태도 문제 없습니다). 그렇지 않으면 제조업자의 경우 거래가 취소되고 인수업자의 경우 자금 손실 위험이 있습니다. 애트믹스와프 프로토콜을 사용하려면 두 참가자가 온라인으로 남아 프로세스가 아토믹 상태를 유지하기 위해 관련 블록체인을 감시해야 합니다."), - "answer_5": m7, - "answer_6": m8, - "answer_7": m9, - "answer_8": m10, - "answer_9": m11, + "answer_5": m11, + "answer_6": m12, + "answer_7": m13, + "answer_8": m14, + "answer_9": m15, "areYouSure": MessageLookupByLibrary.simpleMessage("확실하신가요?"), "authenticate": MessageLookupByLibrary.simpleMessage("증명하기"), "automaticRedirected": MessageLookupByLibrary.simpleMessage( @@ -319,8 +367,9 @@ class MessageLookup extends MessageLookupByLibrary { "availableVolume": MessageLookupByLibrary.simpleMessage("최대 볼륨"), "back": MessageLookupByLibrary.simpleMessage("뒤로"), "backupTitle": MessageLookupByLibrary.simpleMessage("백업"), - "batteryCriticalError": m12, - "batteryLowWarning": m13, + "basedOnCoinRatio": m16, + "batteryCriticalError": m17, + "batteryLowWarning": m18, "batterySavingWarning": MessageLookupByLibrary.simpleMessage( "전화기가 배터리 절약 모드로 되어 있습니다. 이 모드를 비활성화하거나 애플리케이션을 백그라운드에 두지 마세요. 그렇지 않으면 OS에 의해 애플리케이션이 중지되고 스왑에 실패할 수 있습니다."), "bestAvailableRate": MessageLookupByLibrary.simpleMessage("비율 바꾸기"), @@ -331,7 +380,7 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("일치하지 않을 경우 제조사로 변환"), "buySuccessWaiting": MessageLookupByLibrary.simpleMessage("스와프가 발행되었습니다. 잠시만 기다려주세요!"), - "buySuccessWaitingError": m14, + "buySuccessWaitingError": m19, "buyTestCoinWarning": MessageLookupByLibrary.simpleMessage( "경고합니다, 당신은 실제 가치가 없는 테스트 코인을 구매하는 것입니다!"), "camoPinBioProtectionConflict": MessageLookupByLibrary.simpleMessage( @@ -355,6 +404,9 @@ class MessageLookup extends MessageLookupByLibrary { "camoSetupTitle": MessageLookupByLibrary.simpleMessage("위장 비밀번호 셋업"), "camouflageSetup": MessageLookupByLibrary.simpleMessage("위장 비밀번호 셋업"), "cancel": MessageLookupByLibrary.simpleMessage("취소"), + "cancelActivation": MessageLookupByLibrary.simpleMessage("활성화 취소"), + "cancelActivationQuestion": + MessageLookupByLibrary.simpleMessage("활성화를 취소하시겠습니까?"), "cancelButton": MessageLookupByLibrary.simpleMessage("취소"), "cancelOrder": MessageLookupByLibrary.simpleMessage("주문 취소"), "candleChartError": @@ -369,6 +421,7 @@ class MessageLookup extends MessageLookupByLibrary { "cexData": MessageLookupByLibrary.simpleMessage("CEX 데이터"), "cexDataDesc": MessageLookupByLibrary.simpleMessage( "이 아이콘이 표시된 시장 데이터(가격, 차트 등)는, 서드 파티(coingecko.com, openrates.io)에서 받아왔습니다."), + "cexRate": MessageLookupByLibrary.simpleMessage("CEX 비율"), "changePin": MessageLookupByLibrary.simpleMessage("비밀번호 바꾸기"), "checkForUpdates": MessageLookupByLibrary.simpleMessage("업데이트 확인하기"), "checkOut": MessageLookupByLibrary.simpleMessage("확인하기"), @@ -376,10 +429,10 @@ class MessageLookup extends MessageLookupByLibrary { "checkSeedPhraseButton1": MessageLookupByLibrary.simpleMessage("계속하기"), "checkSeedPhraseButton2": MessageLookupByLibrary.simpleMessage("다시가서 확인하기"), - "checkSeedPhraseHint": m15, + "checkSeedPhraseHint": m20, "checkSeedPhraseInfo": MessageLookupByLibrary.simpleMessage( "당신의 시드 문구는 중요합니다 - 그래서 저희는 이것이 맞는지 확인하고 싶습니다. 필요할 때 언제든지 쉽게 지갑을 복원할 수 있도록 시드 문구에 대해 세 가지 다른 질문을 합니다."), - "checkSeedPhraseSubtile": m16, + "checkSeedPhraseSubtile": m21, "checkSeedPhraseTitle": MessageLookupByLibrary.simpleMessage("다시 한번 당신의 시드 문구를 확인해봅시다"), "chineseLanguage": MessageLookupByLibrary.simpleMessage("중국인"), @@ -392,12 +445,19 @@ class MessageLookup extends MessageLookupByLibrary { "closeMessage": MessageLookupByLibrary.simpleMessage("에러 메시지 닫기"), "closePreview": MessageLookupByLibrary.simpleMessage("프리뷰 닫기"), "code": MessageLookupByLibrary.simpleMessage("코드:"), + "cofirmCancelActivation": + MessageLookupByLibrary.simpleMessage("활성화를 취소하시겠습니까?"), + "coinActivationCancelled": m22, + "coinActivationSuccessfull": m23, "coinSelectClear": MessageLookupByLibrary.simpleMessage("클리어"), "coinSelectNotFound": MessageLookupByLibrary.simpleMessage("활성화된 코인 없음"), "coinSelectTitle": MessageLookupByLibrary.simpleMessage("코인 선택"), "coinsActivatedLimitReached": MessageLookupByLibrary.simpleMessage("최대 저작물 수를 선택했습니다."), + "coinsAreActivated": m24, + "coinsAreActivatedSuccessfully": m25, + "coinsAreNotActivated": m26, "comingSoon": MessageLookupByLibrary.simpleMessage("곳 옵니다..."), "commingsoon": MessageLookupByLibrary.simpleMessage("TX 디테일이 곳 옵니다!"), "commingsoonGeneral": @@ -422,7 +482,7 @@ class MessageLookup extends MessageLookupByLibrary { "contactCancel": MessageLookupByLibrary.simpleMessage("취소"), "contactDelete": MessageLookupByLibrary.simpleMessage("연락처 삭제"), "contactDeleteBtn": MessageLookupByLibrary.simpleMessage("삭제"), - "contactDeleteWarning": m17, + "contactDeleteWarning": m27, "contactDiscardBtn": MessageLookupByLibrary.simpleMessage("버리기"), "contactEdit": MessageLookupByLibrary.simpleMessage("편집"), "contactExit": MessageLookupByLibrary.simpleMessage("종료"), @@ -433,7 +493,10 @@ class MessageLookup extends MessageLookupByLibrary { "contactSave": MessageLookupByLibrary.simpleMessage("저장"), "contactTitle": MessageLookupByLibrary.simpleMessage("연락처 상세"), "contactTitleName": MessageLookupByLibrary.simpleMessage("이름"), + "contract": MessageLookupByLibrary.simpleMessage("계약"), "convert": MessageLookupByLibrary.simpleMessage("바꾸기"), + "couldNotLaunchUrl": + MessageLookupByLibrary.simpleMessage("URL을 시작할 수 없습니다."), "couldntImportError": MessageLookupByLibrary.simpleMessage("가져올 수 없습니다:"), "create": MessageLookupByLibrary.simpleMessage("바꾸기"), @@ -446,7 +509,7 @@ class MessageLookup extends MessageLookupByLibrary { "customFee": MessageLookupByLibrary.simpleMessage("통관 수수료"), "customFeeWarning": MessageLookupByLibrary.simpleMessage( "당신이 무엇을 하고 있는지 알고 있는 경우에만 관세비용을 사용하세요!"), - "customSeedWarning": m18, + "customSeedWarning": m28, "dPow": MessageLookupByLibrary.simpleMessage("Komodo dPoW 보안"), "date": MessageLookupByLibrary.simpleMessage("날짜"), "decryptingWallet": MessageLookupByLibrary.simpleMessage("지갑 해석 중"), @@ -458,6 +521,12 @@ class MessageLookup extends MessageLookupByLibrary { "deleteSpan3": MessageLookupByLibrary.simpleMessage(" 비활성화도 됩니다"), "deleteWallet": MessageLookupByLibrary.simpleMessage("지갑 삭제"), "deletingWallet": MessageLookupByLibrary.simpleMessage("지갑 삭제 중..."), + "detailedFeesReceiveCoinTransactionFee": m29, + "detailedFeesSendCoinTransactionFee": m30, + "detailedFeesSendTradingFeeTransactionFee": + MessageLookupByLibrary.simpleMessage("거래 수수료 거래 수수료 보내기"), + "detailedFeesTradingFee": + MessageLookupByLibrary.simpleMessage("거래 수수료"), "details": MessageLookupByLibrary.simpleMessage("상세"), "deutscheLanguage": MessageLookupByLibrary.simpleMessage("독일어"), "developerTitle": MessageLookupByLibrary.simpleMessage("개발자"), @@ -467,13 +536,15 @@ class MessageLookup extends MessageLookupByLibrary { "disableScreenshots": MessageLookupByLibrary.simpleMessage("스크린샷/미리보기 비활성화"), "disclaimerAndTos": MessageLookupByLibrary.simpleMessage("부인서명 & ToS"), + "doNotCloseTheAppTapForMoreInfo": MessageLookupByLibrary.simpleMessage( + "앱을 닫지 마세요. 자세한 내용을 보려면 탭하세요..."), "done": MessageLookupByLibrary.simpleMessage("완료"), "dontAskAgain": MessageLookupByLibrary.simpleMessage("다시 물어보지 마세요"), "dontWantPassword": MessageLookupByLibrary.simpleMessage("전 비밀번호를 원지 않습니다"), "duration": MessageLookupByLibrary.simpleMessage("지속시간"), "editContact": MessageLookupByLibrary.simpleMessage("연락처 편집"), - "emptyCoin": m19, + "emptyCoin": m31, "emptyExportPass": MessageLookupByLibrary.simpleMessage("암호화 암호는 공백으로 둘 수 없습니다"), "emptyImportPass": @@ -482,7 +553,10 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("연락처 이름은 공백으로 둘 수 없습니다"), "emptyWallet": MessageLookupByLibrary.simpleMessage("지갑 이름은 절대로 공백으로 둘 수 없습니다"), - "enable": m20, + "enable": m32, + "enableNotificationsForActivationProgress": + MessageLookupByLibrary.simpleMessage( + "활성화 진행 상황에 대한 업데이트를 받으려면 알림을 활성화하세요."), "enableTestCoins": MessageLookupByLibrary.simpleMessage("실험 코인 활성화"), "enablingTooManyAssetsSpan1": MessageLookupByLibrary.simpleMessage("당신의 소유"), @@ -510,7 +584,7 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("유효한 주소가 없습니다"), "errorNotAValidAddressSegWit": MessageLookupByLibrary.simpleMessage("세그윗 주소가 (아직) 지원되지 않습니다"), - "errorNotEnoughGas": m21, + "errorNotEnoughGas": m33, "errorTryAgain": MessageLookupByLibrary.simpleMessage("에러, 다시 하세요"), "errorTryLater": MessageLookupByLibrary.simpleMessage("에러, 나중에 다시 하세요"), "errorValueEmpty": @@ -518,32 +592,32 @@ class MessageLookup extends MessageLookupByLibrary { "errorValueNotEmpty": MessageLookupByLibrary.simpleMessage("데이터를 입력해주세요"), "estimateValue": MessageLookupByLibrary.simpleMessage("예상된 합계치"), - "eulaParagraphe1": m22, - "eulaParagraphe10": m23, - "eulaParagraphe11": m24, + "eulaParagraphe1": m34, + "eulaParagraphe10": m35, + "eulaParagraphe11": m36, "eulaParagraphe12": MessageLookupByLibrary.simpleMessage( "When accessing or using the Services, You agree that You are solely responsible for your conduct while accessing and using our Services. Without limiting the generality of the foregoing, You agree that You will not:\n(a) use the Services in any manner that could interfere with, disrupt, negatively affect or inhibit other users from fully enjoying the Services, or that could damage, disable, overburden or impair the functioning of our Services in any manner;\n(b) use the Services to pay for, support or otherwise engage in any illegal activities, including, but not limited to illegal gambling, fraud, money laundering, or terrorist activities;\n(c) use any robot, spider, crawler, scraper or other automated means or interface not provided by us to access our Services or to extract data;\n(d) use or attempt to use another user’s Wallet or credentials without authorization;\n(e) attempt to circumvent any content filtering techniques we employ, or attempt to access any service or area of our Services that You are not authorized to access;\n(f) introduce to the Services any virus, Trojan, worms, logic bombs or other harmful material;\n(g) develop any third-party applications that interact with our Services without our prior written consent;\n(h) provide false, inaccurate, or misleading information; \n(i) encourage or induce any other person to engage in any of the activities prohibited under this Section."), - "eulaParagraphe13": m25, - "eulaParagraphe14": m26, - "eulaParagraphe15": m27, - "eulaParagraphe16": m28, - "eulaParagraphe17": m29, - "eulaParagraphe18": m30, - "eulaParagraphe19": m31, - "eulaParagraphe2": m32, + "eulaParagraphe13": m37, + "eulaParagraphe14": m38, + "eulaParagraphe15": m39, + "eulaParagraphe16": m40, + "eulaParagraphe17": m41, + "eulaParagraphe18": m42, + "eulaParagraphe19": m43, + "eulaParagraphe2": m44, "eulaParagraphe3": MessageLookupByLibrary.simpleMessage( "By entering into this User (each subject accessing or using the site) Agreement (this writing) You declare that You are an individual over the age of majority (at least 18 or older) and have the capacity to enter into this User Agreement and accept to be legally bound by the terms and conditions of this User Agreement, as incorporated herein and amended from time to time."), "eulaParagraphe4": MessageLookupByLibrary.simpleMessage( "We may change the terms of this User Agreement at any time. Any such changes will take effect when published in the application, or when You use the Services.\n\nRead the User Agreement carefully every time You use our Services. Your continued use of the Services shall signify your acceptance to be bound by the current User Agreement. Our failure or delay in enforcing or partially enforcing any provision of this User Agreement shall not be construed as a waiver of any."), - "eulaParagraphe5": m33, - "eulaParagraphe6": m34, + "eulaParagraphe5": m45, + "eulaParagraphe6": m46, "eulaParagraphe7": MessageLookupByLibrary.simpleMessage( "We are not responsible for seed-phrases residing in the Mobile Application. In no event shall we be held liable for any loss of any kind. It is your sole responsibility to maintain appropriate backups of your accounts and their seedprases."), "eulaParagraphe8": MessageLookupByLibrary.simpleMessage( "You should not act, or refrain from acting solely on the basis of the content of this application. \nYour access to this application does not itself create an adviser-client relationship between You and us. \nThe content of this application does not constitute a solicitation or inducement to invest in any financial products or services offered by us. \nAny advice included in this application has been prepared without taking into account your objectives, financial situation or needs. You should consider our Risk Disclosure Notice before making any decision on whether to acquire the product described in that document."), "eulaParagraphe9": MessageLookupByLibrary.simpleMessage( "We do not guarantee your continuous access to the application or that your access or use will be error-free. \nWe will not be liable in the event that the application is unavailable to You for any reason (for example, due to computer downtime ascribable to malfunctions, upgrades, server problems, precautionary or corrective maintenance activities or interruption in telecommunication supplies). "), - "eulaTitle1": m35, + "eulaTitle1": m47, "eulaTitle10": MessageLookupByLibrary.simpleMessage("ACCESS AND SECURITY"), "eulaTitle11": MessageLookupByLibrary.simpleMessage( @@ -592,16 +666,17 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("아이템이 성공적으로 내보냈습니다:"), "exportSwapsTitle": MessageLookupByLibrary.simpleMessage("바꾸기"), "exportTitle": MessageLookupByLibrary.simpleMessage("수출"), + "failedToCancelActivation": m48, "fakeBalanceAmt": MessageLookupByLibrary.simpleMessage("가짜 잔고 잔액:"), "faqTitle": MessageLookupByLibrary.simpleMessage("자주 묻는 질문들"), "faucetError": MessageLookupByLibrary.simpleMessage("에러"), - "faucetInProgress": m36, + "faucetInProgress": m49, "faucetName": MessageLookupByLibrary.simpleMessage("호수"), "faucetSuccess": MessageLookupByLibrary.simpleMessage("성공"), "faucetTimedOut": MessageLookupByLibrary.simpleMessage("요청 시간 초과"), "feedNewsTab": MessageLookupByLibrary.simpleMessage("뉴스"), "feedNotFound": MessageLookupByLibrary.simpleMessage("아무것도 없습니다"), - "feedNotifTitle": m37, + "feedNotifTitle": m50, "feedReadMore": MessageLookupByLibrary.simpleMessage("더 읽기..."), "feedTab": MessageLookupByLibrary.simpleMessage("피드"), "feedTitle": MessageLookupByLibrary.simpleMessage("뉴스 피드"), @@ -612,7 +687,7 @@ class MessageLookup extends MessageLookupByLibrary { "feedUpToDate": MessageLookupByLibrary.simpleMessage("벌서 최신화 되어 있습니다"), "feedUpdated": MessageLookupByLibrary.simpleMessage("뉴스 피드가 업데이트 됬습니다"), "feedback": MessageLookupByLibrary.simpleMessage("로그 파일 공유"), - "feesError": m38, + "feesError": m51, "filtersAll": MessageLookupByLibrary.simpleMessage("모두"), "filtersButton": MessageLookupByLibrary.simpleMessage("필터"), "filtersClearAll": MessageLookupByLibrary.simpleMessage("모든 필터 지우기"), @@ -627,17 +702,25 @@ class MessageLookup extends MessageLookupByLibrary { "filtersTo": MessageLookupByLibrary.simpleMessage("날짜까지"), "filtersType": MessageLookupByLibrary.simpleMessage("테이커/메이커"), "fingerprint": MessageLookupByLibrary.simpleMessage("지문"), + "finishingUp": + MessageLookupByLibrary.simpleMessage("마무리 중이니 잠시만 기다려주세요"), + "foundQrCode": MessageLookupByLibrary.simpleMessage("QR코드 발견"), "frenchLanguage": MessageLookupByLibrary.simpleMessage("프랑스 국민"), "from": MessageLookupByLibrary.simpleMessage("에서부터"), - "gasFee": m39, + "futureTransactions": MessageLookupByLibrary.simpleMessage( + "공개 키와 관련된 활성화 후 향후 거래가 동기화됩니다. 이는 가장 빠른 옵션이며 저장 공간을 가장 적게 차지합니다."), + "gasFee": m52, "gasLimit": MessageLookupByLibrary.simpleMessage("가스 제한"), - "gasNotActive": m40, + "gasNotActive": m53, "gasPrice": MessageLookupByLibrary.simpleMessage("가스 가격"), "generalPinNotActive": MessageLookupByLibrary.simpleMessage( "일반 핀 보호가 활성화되어 있지 않습니다.\n위장 모드를 사용 할 수 없습니다.\n핀 보호를 활성화 시켜주세요."), "getBackupPhrase": MessageLookupByLibrary.simpleMessage("중요: 계속하기 전에 시드 문구를 백업해두세요!"), + "gettingTxWait": + MessageLookupByLibrary.simpleMessage("거래를 받는 중입니다. 잠시 기다려 주세요."), "goToPorfolio": MessageLookupByLibrary.simpleMessage("포티폴리오로 가기"), + "gweiError": m54, "helpLink": MessageLookupByLibrary.simpleMessage("도움"), "helpTitle": MessageLookupByLibrary.simpleMessage("도움 및 서포트"), "hideBalance": MessageLookupByLibrary.simpleMessage("잔고 숨기기"), @@ -684,6 +767,7 @@ class MessageLookup extends MessageLookupByLibrary { "importSwapJsonDecodingError": MessageLookupByLibrary.simpleMessage("json파일 읽기에 에러가 났습니다"), "importTitle": MessageLookupByLibrary.simpleMessage("불러오기"), + "incomingTransactionsProtectionSettings": m55, "infoPasswordDialog": MessageLookupByLibrary.simpleMessage( "보안 비밀번호를 사용하고 똑같은 장치에 저장해두지 마세요"), "infoTrade1": MessageLookupByLibrary.simpleMessage( @@ -692,22 +776,24 @@ class MessageLookup extends MessageLookupByLibrary { "스왑은 60분까지 걸릴 수 있습니다. 이 앱플리케이션을 종료하지 마세요!"), "infoWalletPassword": MessageLookupByLibrary.simpleMessage( "보안 이유상 지갑 암호활를 위해 비밀번호를 입력해야 합니다"), - "insufficientBalanceToPay": m41, + "insufficientBalanceToPay": m56, "insufficientText": MessageLookupByLibrary.simpleMessage("이 주문을 하기 위한 최소 볼륨은"), "insufficientTitle": MessageLookupByLibrary.simpleMessage("볼륨 부족"), "internetRefreshButton": MessageLookupByLibrary.simpleMessage("새로 고침"), "internetRestored": MessageLookupByLibrary.simpleMessage("인터넷 연결 복구됨"), + "invalidCoinAddress": m57, "invalidSwap": MessageLookupByLibrary.simpleMessage("스왑 진행 불가능"), "invalidSwapDetailsLink": MessageLookupByLibrary.simpleMessage("상세"), - "isUnavailable": m42, + "isUnavailable": m58, "japaneseLanguage": MessageLookupByLibrary.simpleMessage("일본어"), "koreanLanguage": MessageLookupByLibrary.simpleMessage("한국인"), "language": MessageLookupByLibrary.simpleMessage("언어"), "latestTxs": MessageLookupByLibrary.simpleMessage("마지막 거래"), "legalTitle": MessageLookupByLibrary.simpleMessage("법적"), "less": MessageLookupByLibrary.simpleMessage("덜"), - "lessThanCaution": m43, + "lessThanCaution": m59, + "limitError": m60, "loading": MessageLookupByLibrary.simpleMessage("로딩 중..."), "loadingOrderbook": MessageLookupByLibrary.simpleMessage("주문책 로딩 중..."), "lockScreen": MessageLookupByLibrary.simpleMessage("스크린이 잠겼습니다"), @@ -764,25 +850,28 @@ class MessageLookup extends MessageLookupByLibrary { "milliseconds": MessageLookupByLibrary.simpleMessage("ms"), "min": MessageLookupByLibrary.simpleMessage("최소"), "minOrder": MessageLookupByLibrary.simpleMessage("최소 주문 볼륨"), - "minValue": m44, - "minValueBuy": m45, - "minValueOrder": m46, - "minValueSell": m47, - "minVolumeInput": m48, + "minValue": m61, + "minValueBuy": m62, + "minValueOrder": m63, + "minValueSell": m64, + "minVolumeInput": m65, "minVolumeIsTDH": MessageLookupByLibrary.simpleMessage("판매 양보다 적어야 합니다"), "minVolumeTitle": MessageLookupByLibrary.simpleMessage("필요된 최소 볼륨"), "minVolumeToggle": MessageLookupByLibrary.simpleMessage("커스텀 최소 볼륨 사용"), + "minimizingWillTerminate": MessageLookupByLibrary.simpleMessage( + "경고: iOS에서 앱을 최소화하면 활성화 프로세스가 종료됩니다."), "minutes": MessageLookupByLibrary.simpleMessage("m"), - "mobileDataWarning": m49, + "mobileDataWarning": m66, + "moreInfo": MessageLookupByLibrary.simpleMessage("더 많은 정보"), "moreTab": MessageLookupByLibrary.simpleMessage("더"), - "multiActivateGas": m50, + "multiActivateGas": m67, "multiBaseAmtPlaceholder": MessageLookupByLibrary.simpleMessage("양"), "multiBasePlaceholder": MessageLookupByLibrary.simpleMessage("코인"), "multiBaseSelectTitle": MessageLookupByLibrary.simpleMessage("판매"), "multiConfirmCancel": MessageLookupByLibrary.simpleMessage("취소"), "multiConfirmConfirm": MessageLookupByLibrary.simpleMessage("확인"), - "multiConfirmTitle": m51, + "multiConfirmTitle": m68, "multiCreate": MessageLookupByLibrary.simpleMessage("생성"), "multiCreateOrder": MessageLookupByLibrary.simpleMessage("주문"), "multiCreateOrders": MessageLookupByLibrary.simpleMessage("주문들"), @@ -795,8 +884,8 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("계속하기 전에 모든 에러를 고치세요"), "multiInvalidAmt": MessageLookupByLibrary.simpleMessage("잘못된 양"), "multiInvalidSellAmt": MessageLookupByLibrary.simpleMessage("잘못된 판매 양"), - "multiLowGas": m52, - "multiLowerThanFee": m53, + "multiLowGas": m69, + "multiLowerThanFee": m70, "multiMaxSellAmt": MessageLookupByLibrary.simpleMessage("최대 판매 양은"), "multiMinReceiveAmt": MessageLookupByLibrary.simpleMessage("최소 받는 양은"), "multiMinSellAmt": MessageLookupByLibrary.simpleMessage("최소 판매 양은"), @@ -822,7 +911,7 @@ class MessageLookup extends MessageLookupByLibrary { "noItemsToExport": MessageLookupByLibrary.simpleMessage("선택된 아이템 없음"), "noItemsToImport": MessageLookupByLibrary.simpleMessage("선택된 아이템 없음"), "noMatchingOrders": MessageLookupByLibrary.simpleMessage("알맞는 주문 없음"), - "noOrder": m54, + "noOrder": m71, "noOrderAvailable": MessageLookupByLibrary.simpleMessage("주문을 만들기 위해서 눌러주세요"), "noOrders": MessageLookupByLibrary.simpleMessage("주문 없음, 가서 거래하세요."), @@ -833,7 +922,8 @@ class MessageLookup extends MessageLookupByLibrary { "noSwaps": MessageLookupByLibrary.simpleMessage("히스토리 없음."), "noTxs": MessageLookupByLibrary.simpleMessage("거래내역 없음"), "nonNumericInput": MessageLookupByLibrary.simpleMessage("값은 숫자여야 합니다"), - "notEnoughGas": m55, + "none": MessageLookupByLibrary.simpleMessage("없음"), + "notEnoughGas": m72, "notEnoughtBalanceForFee": MessageLookupByLibrary.simpleMessage( "수수료를 위한 잔고 부족 - 더 작은 양을 거래하세요"), "noteOnOrder": @@ -841,22 +931,22 @@ class MessageLookup extends MessageLookupByLibrary { "notePlaceholder": MessageLookupByLibrary.simpleMessage("노트 추가"), "noteTitle": MessageLookupByLibrary.simpleMessage("노트"), "nothingFound": MessageLookupByLibrary.simpleMessage("찾을 수 없습니다"), - "notifSwapCompletedText": m56, + "notifSwapCompletedText": m73, "notifSwapCompletedTitle": MessageLookupByLibrary.simpleMessage("스와프 완료됨"), - "notifSwapFailedText": m57, + "notifSwapFailedText": m74, "notifSwapFailedTitle": MessageLookupByLibrary.simpleMessage("스와프 실패됨"), - "notifSwapStartedText": m58, + "notifSwapStartedText": m75, "notifSwapStartedTitle": MessageLookupByLibrary.simpleMessage("새로운 스와프가 시작되었습니다"), "notifSwapStatusTitle": MessageLookupByLibrary.simpleMessage("스와프 상태가 바꿨습니다"), - "notifSwapTimeoutText": m59, + "notifSwapTimeoutText": m76, "notifSwapTimeoutTitle": MessageLookupByLibrary.simpleMessage("스왑 시간 초과됨"), - "notifTxText": m60, + "notifTxText": m77, "notifTxTitle": MessageLookupByLibrary.simpleMessage("들어오는 거래"), - "numberAssets": m61, + "numberAssets": m78, "officialPressRelease": MessageLookupByLibrary.simpleMessage("공식 보도 자료"), "okButton": MessageLookupByLibrary.simpleMessage("네"), @@ -864,14 +954,16 @@ class MessageLookup extends MessageLookupByLibrary { "oldLogsTitle": MessageLookupByLibrary.simpleMessage("오래된 로그"), "oldLogsUsed": MessageLookupByLibrary.simpleMessage("사용된 용양"), "openMessage": MessageLookupByLibrary.simpleMessage("에러 메세지 열기"), - "orderCancel": m62, + "orderBookLess": MessageLookupByLibrary.simpleMessage("더 적은"), + "orderBookMore": MessageLookupByLibrary.simpleMessage("더"), + "orderCancel": m79, "orderCreated": MessageLookupByLibrary.simpleMessage("주문 생성됨"), "orderCreatedInfo": MessageLookupByLibrary.simpleMessage("주문이 성공적으로 생성됬습니다"), "orderDetailsAddress": MessageLookupByLibrary.simpleMessage("주소"), "orderDetailsCancel": MessageLookupByLibrary.simpleMessage("취소"), - "orderDetailsExpedient": m63, - "orderDetailsExpensive": m64, + "orderDetailsExpedient": m80, + "orderDetailsExpensive": m81, "orderDetailsFor": MessageLookupByLibrary.simpleMessage("위한"), "orderDetailsIdentical": MessageLookupByLibrary.simpleMessage("똑같은 CEX"), @@ -884,7 +976,7 @@ class MessageLookup extends MessageLookupByLibrary { "한개 탭에서 상세를 열고 긴 탭에서 주문을 선택하세요"), "orderDetailsSpend": MessageLookupByLibrary.simpleMessage("소비"), "orderDetailsTitle": MessageLookupByLibrary.simpleMessage("세부 사항"), - "orderFilled": m65, + "orderFilled": m82, "orderMatched": MessageLookupByLibrary.simpleMessage("주문 매칭됨"), "orderMatching": MessageLookupByLibrary.simpleMessage("주문 매칭"), "orderTypePartial": MessageLookupByLibrary.simpleMessage("주문"), @@ -892,9 +984,9 @@ class MessageLookup extends MessageLookupByLibrary { "orders": MessageLookupByLibrary.simpleMessage("주문"), "ordersActive": MessageLookupByLibrary.simpleMessage("활성화"), "ordersHistory": MessageLookupByLibrary.simpleMessage("히스토리"), - "ordersTableAmount": m66, - "ordersTablePrice": m67, - "ordersTableTotal": m68, + "ordersTableAmount": m83, + "ordersTablePrice": m84, + "ordersTableTotal": m85, "overwrite": MessageLookupByLibrary.simpleMessage("덮어쓰기"), "ownOrder": MessageLookupByLibrary.simpleMessage("이것은 당신만의 주문입니다!"), "paidFromBalance": MessageLookupByLibrary.simpleMessage("잔액에서 지불:"), @@ -902,6 +994,8 @@ class MessageLookup extends MessageLookupByLibrary { "paidWith": MessageLookupByLibrary.simpleMessage("으로 지불"), "passwordRequirement": MessageLookupByLibrary.simpleMessage( "비밀번호는 최서 12자 이상이어여 하고, 소문자, 대문자 및 특수 기호가 하나씩 있어야합니다."), + "pastTransactionsFromDate": MessageLookupByLibrary.simpleMessage( + "귀하의 지갑에는 지정된 날짜 이후에 이루어진 과거 거래가 표시됩니다."), "paymentUriDetailsAccept": MessageLookupByLibrary.simpleMessage("지불"), "paymentUriDetailsAcceptQuestion": MessageLookupByLibrary.simpleMessage("거래를 수락하시겠습니까?"), @@ -913,8 +1007,11 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("코인:"), "paymentUriDetailsDeny": MessageLookupByLibrary.simpleMessage("취소"), "paymentUriDetailsTitle": MessageLookupByLibrary.simpleMessage("지불 요청"), - "paymentUriInactiveCoin": m69, + "paymentUriInactiveCoin": m86, "placeOrder": MessageLookupByLibrary.simpleMessage("당신의 주문을 넣으세요"), + "pleaseAcceptAllCoinActivationRequests": + MessageLookupByLibrary.simpleMessage( + "모든 특별 코인 활성화 요청을 수락하거나 코인 선택을 취소하세요."), "pleaseAddCoin": MessageLookupByLibrary.simpleMessage("코인을 더해 주세요"), "pleaseRestart": MessageLookupByLibrary.simpleMessage( "다시하기 위해서 앱을 다시 시작하거나, 밑에 버튼을 눌러 주세요."), @@ -932,18 +1029,19 @@ class MessageLookup extends MessageLookupByLibrary { "protectionCtrlWarning": MessageLookupByLibrary.simpleMessage( "경고, 이 아토믹 스왑은 dPoW 보호가 않되어 있습니다."), "pubkey": MessageLookupByLibrary.simpleMessage("펍키"), + "qrCodeScanner": MessageLookupByLibrary.simpleMessage("QR 코드 스캐너"), "question_1": MessageLookupByLibrary.simpleMessage("제 개인 키를 보관하나요?"), - "question_10": m70, - "question_2": m71, + "question_10": m87, + "question_2": m88, "question_3": MessageLookupByLibrary.simpleMessage("각각의 아토믹 스왑을 얼마나 걸리나요?"), "question_4": MessageLookupByLibrary.simpleMessage("스왑을 하는 동안 온라인에 있어야 하나요?"), - "question_5": m72, + "question_5": m89, "question_6": MessageLookupByLibrary.simpleMessage("유저 지원을 공급하나요?"), "question_7": MessageLookupByLibrary.simpleMessage("나라 제한이 있나요?"), - "question_8": m73, - "question_9": m74, + "question_8": m90, + "question_9": m91, "rebrandingAnnouncement": MessageLookupByLibrary.simpleMessage( "새로운 시대입니다! \'AtomicDEX\'에서 \'Komodo Wallet\'으로 공식 명칭을 변경하였습니다."), "receive": MessageLookupByLibrary.simpleMessage("받기"), @@ -977,7 +1075,7 @@ class MessageLookup extends MessageLookupByLibrary { "rewardsReadMore": MessageLookupByLibrary.simpleMessage("KMD 활성화 유저 보상에 대해서 더 읽어 보기"), "rewardsReceive": MessageLookupByLibrary.simpleMessage("받기"), - "rewardsSuccess": m75, + "rewardsSuccess": m92, "rewardsTableFiat": MessageLookupByLibrary.simpleMessage("피아트"), "rewardsTableRewards": MessageLookupByLibrary.simpleMessage("보상,\nKMD"), "rewardsTableStatus": MessageLookupByLibrary.simpleMessage("상태"), @@ -985,9 +1083,9 @@ class MessageLookup extends MessageLookupByLibrary { "rewardsTableTitle": MessageLookupByLibrary.simpleMessage("보상 정보:"), "rewardsTableUXTO": MessageLookupByLibrary.simpleMessage("UTXO amt,\nKMD"), - "rewardsTimeDays": m76, - "rewardsTimeHours": m77, - "rewardsTimeMin": m78, + "rewardsTimeDays": m93, + "rewardsTimeHours": m94, + "rewardsTimeMin": m95, "rewardsTitle": MessageLookupByLibrary.simpleMessage("보상 정보"), "russianLanguage": MessageLookupByLibrary.simpleMessage("러시아인"), "saveMerged": MessageLookupByLibrary.simpleMessage("병함 저장"), @@ -1030,12 +1128,14 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("테스트 자산 토큰 모두 선택"), "searchFilterSubtitleUBQ": MessageLookupByLibrary.simpleMessage("Ubiq 코인 모두 선택"), + "searchFilterSubtitleZHTLC": + MessageLookupByLibrary.simpleMessage("모든 ZHTLC 코인을 선택하세요"), "searchFilterSubtitleutxo": MessageLookupByLibrary.simpleMessage("UTXO 코인 모두 선택"), "searchForTicker": MessageLookupByLibrary.simpleMessage("Ticker 찾기"), "seconds": MessageLookupByLibrary.simpleMessage("s"), "security": MessageLookupByLibrary.simpleMessage("보안"), - "seeOrders": m79, + "seeOrders": m96, "seeTxHistory": MessageLookupByLibrary.simpleMessage("거래 내역 보기"), "seedPhrase": MessageLookupByLibrary.simpleMessage("시드 문구"), "seedPhraseTitle": @@ -1048,6 +1148,7 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("구매하고 싶은 코인 선택"), "selectCoinToSell": MessageLookupByLibrary.simpleMessage("판매하고 싶은 코인 선택"), + "selectDate": MessageLookupByLibrary.simpleMessage("날짜를 선택하세요"), "selectFileImport": MessageLookupByLibrary.simpleMessage("파일 선택"), "selectLanguage": MessageLookupByLibrary.simpleMessage("언어 선택"), "selectPaymentMethod": MessageLookupByLibrary.simpleMessage("지불 방법 선택"), @@ -1069,31 +1170,34 @@ class MessageLookup extends MessageLookupByLibrary { "settingLanguageTitle": MessageLookupByLibrary.simpleMessage("언어"), "settings": MessageLookupByLibrary.simpleMessage("설정"), "share": MessageLookupByLibrary.simpleMessage("공유"), - "shareAddress": m80, + "shareAddress": m97, + "shouldScanPastTransaction": m98, + "showAddress": MessageLookupByLibrary.simpleMessage("주소 표시"), "showDetails": MessageLookupByLibrary.simpleMessage("상세 보기"), "showMyOrders": MessageLookupByLibrary.simpleMessage("나의 주문 보기"), + "showingOrders": m99, "signInWithPassword": MessageLookupByLibrary.simpleMessage("비밀번호로 로그인하기"), "signInWithSeedPhrase": MessageLookupByLibrary.simpleMessage( "비밀번호를 까먹으셨나요? 지갑을 시드로부터 복구하세요"), "simple": MessageLookupByLibrary.simpleMessage("심플"), "simpleTradeActivate": MessageLookupByLibrary.simpleMessage("활성화"), - "simpleTradeBuyHint": m81, + "simpleTradeBuyHint": m100, "simpleTradeBuyTitle": MessageLookupByLibrary.simpleMessage("구매"), "simpleTradeClose": MessageLookupByLibrary.simpleMessage("거이"), - "simpleTradeMaxActiveCoins": m82, - "simpleTradeNotActive": m83, + "simpleTradeMaxActiveCoins": m101, + "simpleTradeNotActive": m102, "simpleTradeRecieve": MessageLookupByLibrary.simpleMessage("받기"), - "simpleTradeSellHint": m84, + "simpleTradeSellHint": m103, "simpleTradeSellTitle": MessageLookupByLibrary.simpleMessage("판매"), "simpleTradeSend": MessageLookupByLibrary.simpleMessage("보내기"), "simpleTradeShowLess": MessageLookupByLibrary.simpleMessage("덜 보기"), "simpleTradeShowMore": MessageLookupByLibrary.simpleMessage("더 보기"), - "simpleTradeUnableActivate": m85, + "simpleTradeUnableActivate": m104, "skip": MessageLookupByLibrary.simpleMessage("스킵"), "snackbarDismiss": MessageLookupByLibrary.simpleMessage("해제"), - "soundCantPlayThatMsg": m86, - "soundPlayedWhen": m87, + "soundCantPlayThatMsg": m105, + "soundPlayedWhen": m106, "soundSettingsLink": MessageLookupByLibrary.simpleMessage("소리"), "soundSettingsTitle": MessageLookupByLibrary.simpleMessage("소리 성정"), "soundsDialogTitle": MessageLookupByLibrary.simpleMessage("소리들"), @@ -1104,18 +1208,20 @@ class MessageLookup extends MessageLookupByLibrary { "soundsNote": MessageLookupByLibrary.simpleMessage( "앱플리케이션 성정에서 커스텀 소리를 설정 할 수 있다는 것을 알아두세요."), "spanishLanguage": MessageLookupByLibrary.simpleMessage("스페인의"), + "startDate": MessageLookupByLibrary.simpleMessage("시작일"), + "startSwap": MessageLookupByLibrary.simpleMessage("스왑 시작"), "step": MessageLookupByLibrary.simpleMessage("방법"), "success": MessageLookupByLibrary.simpleMessage("성공!"), "support": MessageLookupByLibrary.simpleMessage("지원"), - "supportLinksDesc": m88, + "supportLinksDesc": m107, "swap": MessageLookupByLibrary.simpleMessage("스왑"), "swapCurrent": MessageLookupByLibrary.simpleMessage("현재"), "swapDetailTitle": MessageLookupByLibrary.simpleMessage("변환 상세 확인"), "swapEstimated": MessageLookupByLibrary.simpleMessage("견적"), "swapFailed": MessageLookupByLibrary.simpleMessage("스왑 실패"), - "swapGasActivate": m89, - "swapGasAmount": m90, - "swapGasAmountRequired": m91, + "swapGasActivate": m108, + "swapGasAmount": m109, + "swapGasAmountRequired": m110, "swapOngoing": MessageLookupByLibrary.simpleMessage("스왑이 진행되고 있습니다"), "swapProgress": MessageLookupByLibrary.simpleMessage("진행 상세"), "swapStarted": MessageLookupByLibrary.simpleMessage("시작됨"), @@ -1123,6 +1229,11 @@ class MessageLookup extends MessageLookupByLibrary { "swapTotal": MessageLookupByLibrary.simpleMessage("전체"), "swapUUID": MessageLookupByLibrary.simpleMessage("UUID 스왑"), "switchTheme": MessageLookupByLibrary.simpleMessage("테마 전환"), + "syncFromDate": MessageLookupByLibrary.simpleMessage("지정된 날짜부터 동기화"), + "syncFromSaplingActivation": + MessageLookupByLibrary.simpleMessage("묘목 활성화에서 동기화"), + "syncNewTransactions": MessageLookupByLibrary.simpleMessage("새 거래 동기화"), + "syncTransactionsQuestion": m111, "tagAVX20": MessageLookupByLibrary.simpleMessage("AVX20"), "tagBEP20": MessageLookupByLibrary.simpleMessage("BEP20"), "tagERC20": MessageLookupByLibrary.simpleMessage("ERC20"), @@ -1137,6 +1248,7 @@ class MessageLookup extends MessageLookupByLibrary { "tagQRC20": MessageLookupByLibrary.simpleMessage("QRC20"), "tagSBCH": MessageLookupByLibrary.simpleMessage("SBCH"), "tagUBQ": MessageLookupByLibrary.simpleMessage("UBQ"), + "tagZHTLC": MessageLookupByLibrary.simpleMessage("ZHTLC"), "takerOrder": MessageLookupByLibrary.simpleMessage("테어커 주문"), "timeOut": MessageLookupByLibrary.simpleMessage("시간 초과"), "titleCreatePassword": MessageLookupByLibrary.simpleMessage("비밀번호 생성"), @@ -1159,6 +1271,10 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("거래 수수료 계산 실패"), "tradingFee": MessageLookupByLibrary.simpleMessage("거래 수수료:"), "tradingMode": MessageLookupByLibrary.simpleMessage("거래 모드:"), + "transactionAddress": MessageLookupByLibrary.simpleMessage("거래 주소"), + "transactionHidden": MessageLookupByLibrary.simpleMessage("숨겨진 거래"), + "transactionHiddenPhishing": MessageLookupByLibrary.simpleMessage( + "피싱 시도 가능성으로 인해 이 거래가 숨겨졌습니다."), "tryRestarting": MessageLookupByLibrary.simpleMessage( "그래도 일부 코인이 활성화되어 있지 않다면, 앱을 재부팅해 보세요."), "turkishLanguage": MessageLookupByLibrary.simpleMessage("터키어"), @@ -1171,22 +1287,22 @@ class MessageLookup extends MessageLookupByLibrary { "txLimitExceeded": MessageLookupByLibrary.simpleMessage( "요청이 너무 많습니다.\n거래 이력 요구 제한을 초과했습니다.\n나중에 다시 시도해주세요."), "txNotConfirmed": MessageLookupByLibrary.simpleMessage("미확인"), - "txleft": m92, + "txleft": m112, "ukrainianLanguage": MessageLookupByLibrary.simpleMessage("우크라이나 인"), "unlock": MessageLookupByLibrary.simpleMessage("열기"), "unlockFunds": MessageLookupByLibrary.simpleMessage("펀드 열기"), - "unlockSuccess": m93, + "unlockSuccess": m113, "unspendable": MessageLookupByLibrary.simpleMessage("사용 불가능"), "updatesAvailable": MessageLookupByLibrary.simpleMessage("새로운 버전 사용 가능"), "updatesChecking": MessageLookupByLibrary.simpleMessage("업데이트 확인중..."), - "updatesCurrentVersion": m94, + "updatesCurrentVersion": m114, "updatesNotifAvailable": MessageLookupByLibrary.simpleMessage("새로운 버전이 있습니다. 업데이트를 하세요."), - "updatesNotifAvailableVersion": m95, + "updatesNotifAvailableVersion": m115, "updatesNotifTitle": MessageLookupByLibrary.simpleMessage("업데이트가 있습니다"), "updatesSkip": MessageLookupByLibrary.simpleMessage("지금은 스킵"), - "updatesTitle": m96, + "updatesTitle": m116, "updatesUpToDate": MessageLookupByLibrary.simpleMessage("벌서 업데이트 되어있습니다"), "updatesUpdate": MessageLookupByLibrary.simpleMessage("업데이트"), @@ -1210,22 +1326,24 @@ class MessageLookup extends MessageLookupByLibrary { "warningOkBtn": MessageLookupByLibrary.simpleMessage("네"), "warningShareLogs": MessageLookupByLibrary.simpleMessage( "경고 - 특별한 경우 이 로그 데이터에는 스왑에 실패한 코인을 사용하는 데 사용할 수 있는 중요한 정보가 포함되어 있습니다!"), - "weFailedTo": m97, - "weFailedToActivate": m98, - "welcomeInfo": m99, + "weFailedTo": m117, + "weFailedToActivate": m118, + "welcomeInfo": m119, "welcomeLetSetUp": MessageLookupByLibrary.simpleMessage("이걸 준비해 봅시다!"), "welcomeTitle": MessageLookupByLibrary.simpleMessage("환영합니다"), "welcomeWallet": MessageLookupByLibrary.simpleMessage("지갑"), "willBeRedirected": MessageLookupByLibrary.simpleMessage("완료 후 포티폴리오 페이지로 리디렉트 됩니다."), + "willTakeTime": MessageLookupByLibrary.simpleMessage( + "이 작업은 시간이 걸리며 앱이 포그라운드에 유지되어야 합니다.\n활성화가 진행되는 동안 앱을 종료하면 문제가 발생할 수 있습니다."), "withdraw": MessageLookupByLibrary.simpleMessage("인출"), - "withdrawCameraAccessText": m100, + "withdrawCameraAccessText": m120, "withdrawCameraAccessTitle": MessageLookupByLibrary.simpleMessage("액세스 거부"), "withdrawConfirm": MessageLookupByLibrary.simpleMessage("인출 확인"), "withdrawConfirmError": MessageLookupByLibrary.simpleMessage("무언가 잘못 됬습니다. 나중에 다시 시도하세요."), - "withdrawValue": m101, + "withdrawValue": m121, "wrongCoinSpan1": MessageLookupByLibrary.simpleMessage("당신은 지불 QR 코드를 스캔 할려고 합니다"), "wrongCoinSpan2": MessageLookupByLibrary.simpleMessage("하지만 당신은"), @@ -1242,7 +1360,7 @@ class MessageLookup extends MessageLookupByLibrary { "you have an order that new orders can match with": MessageLookupByLibrary.simpleMessage("당신은 새로운 주문을 맞출수 있는 주문이 있습니다"), "youAreSending": MessageLookupByLibrary.simpleMessage("당신은 보냅니다:"), - "youWillReceiveClaim": m102, + "youWillReceiveClaim": m122, "youWillReceived": MessageLookupByLibrary.simpleMessage("당신은 받습니다:"), "yourWallet": MessageLookupByLibrary.simpleMessage("당신의 지갑") }; diff --git a/lib/l10n/messages_messages.dart b/lib/l10n/messages_messages.dart index aa130284e..16c95ed7c 100644 --- a/lib/l10n/messages_messages.dart +++ b/lib/l10n/messages_messages.dart @@ -1,5 +1,5 @@ // DO NOT EDIT. This is code generated via package:intl/generate_localized.dart -// This is a library that provides messages for a messages locale. All the +// This is a library that provides messages for a en locale. All the // messages from the main program should be duplicated here with the same // function name. @@ -17,257 +17,299 @@ final messages = MessageLookup(); typedef String MessageIfAbsent(String messageStr, List args); class MessageLookup extends MessageLookupByLibrary { - String get localeName => 'messages'; + String get localeName => 'en'; - static m0(name) => "Activated ${name} successfully !"; + static m0(protocolName) => "Activate ${protocolName} coins?"; - static m1(title) => "Only showing contacts with ${title} addresses"; + static m1(coinName) => "Activating ${coinName}"; - static m2(abbr) => + static m2(coinName) => "${coinName} Activation"; + + static m3(protocolName) => "${protocolName} Activation in Progress"; + + static m4(name) => "Activated ${name} successfully !"; + + static m5(title) => "Only showing contacts with ${title} addresses"; + + static m6(abbr) => "You can not send funds to ${abbr} address, because ${abbr} is not activated. Please go to portfolio."; - static m3(appName) => + static m7(appName) => "No! ${appName} is non-custodial. We never store any sensitive data, including your private keys, seed phrases, or PIN. This data is only stored on the user’s device and never leaves it. You are in full control of your assets."; - static m4(appName) => + static m8(appName) => "${appName} is available for mobile on both Android and iPhone, and for desktop on Windows, Mac, and Linux operating systems."; - static m5(appName) => + static m9(appName) => "Other DEXs generally only allow you to trade assets that are based on a single blockchain network, use proxy tokens, and only allow placing a single order with the same funds.\n\n${appName} enables you to natively trade across two different blockchain networks without proxy tokens. You can also place multiple orders with the same funds. For example, you can sell 0.1 BTC for KMD, QTUM, or VRSC — the first order that fills automatically cancels all other orders."; - static m6(appName) => + static m10(appName) => "Several factors determine the processing time for each swap. The block time of the traded assets depends on each network (Bitcoin typically being the slowest) Additionally, the user can customize security preferences. For example, you can ask ${appName} to consider a KMD transaction as final after just 3 confirmations which makes the swap time shorter compared to waiting for a notarization."; - static m7(appName) => + static m11(appName) => "There are two fee categories to consider when trading on ${appName}.\n\n1. ${appName} charges approximately 0.13% (1/777 of trading volume but not lower than 0.0001) as the trading fee for taker orders, and maker orders have zero fees.\n\n2. Both makers and takers will need to pay normal network fees to the involved blockchains when making atomic swap transactions.\n\nNetwork fees can vary greatly depending on your selected trading pair."; - static m8(name, link, appName, appCompanyShort) => + static m12(name, link, appName, appCompanyShort) => "Yes! ${appName} offers support through the ${appCompanyShort} ${name}. The team and the community are always happy to help!"; - static m9(appName) => + static m13(appName) => "No! ${appName} is fully decentralized. It is not possible to limit user access by any third party."; - static m10(appName, appCompanyShort) => + static m14(appName, appCompanyShort) => "${appName} is developed by the ${appCompanyShort} team. ${appCompanyShort} is one of the most established blockchain projects working on innovative solutions like atomic swaps, Delayed Proof of Work, and an interoperable multi-chain architecture."; - static m11(appName) => + static m15(appName) => "Absolutely! You can read our developer documentation for more details or contact us with your partnership inquiries. Have a specific technical question? The ${appName} developer community is always ready to help!"; - static m12(batteryLevelCritical) => + static m16(coinName1, coinName2) => "based on ${coinName1}/${coinName2}"; + + static m17(batteryLevelCritical) => "Your battery charge is critical (${batteryLevelCritical}%) to perform a swap safely. Please put it on charge and try again."; - static m13(batteryLevelLow) => + static m18(batteryLevelLow) => "Your battery charge is lower than ${batteryLevelLow}%. Please consider phone charging."; - static m14(seconde) => "Ordermatch ongoing, please wait ${seconde} seconds!"; + static m19(seconde) => "Ordermatch ongoing, please wait ${seconde} seconds!"; + + static m20(index) => "Enter the ${index} word"; + + static m21(index) => "What is the ${index} word in your seed phrase?"; - static m15(index) => "Enter the ${index} word"; + static m22(coin) => "${coin} activation cancelled"; - static m16(index) => "What is the ${index} word in your seed phrase?"; + static m23(coin) => "Successfully activated ${coin}"; - static m17(name) => "Are you sure you want to delete contact ${name}?"; + static m24(protocolName) => "${protocolName} coins are activated"; - static m18(iUnderstand) => + static m25(protocolName) => "${protocolName} coins activated successfully"; + + static m26(protocolName) => "${protocolName} coins are not activated"; + + static m27(name) => "Are you sure you want to delete contact ${name}?"; + + static m28(iUnderstand) => "Custom seed phrases might be less secure and easier to crack than a generated BIP39 compliant seed phrase or private key (WIF). To confirm you understand the risk and know what you are doing, type \"${iUnderstand}\" in the box below."; - static m19(abbr) => "Input ${abbr} address"; + static m29(coinName) => "receive ${coinName} transaction fee"; + + static m30(coinName) => "send ${coinName} transaction fee"; - static m20(selected, remains) => + static m31(abbr) => "Input ${abbr} address"; + + static m32(selected, remains) => "You can still enable ${remains}, Selected: ${selected}"; - static m21(gas) => "Not enough gas - use at least ${gas} Gwei"; + static m33(gas) => "Not enough gas - use at least ${gas} Gwei"; - static m22(appName, appCompanyLong) => + static m34(appName, appCompanyLong) => "This End-User License Agreement (\'EULA\') is a legal agreement between you and ${appCompanyLong}.\n\nThis EULA agreement governs your acquisition and use of our ${appName} mobile software (\'Software\', \'Mobile Application\', \'Application\' or \'App\') directly from ${appCompanyLong} or indirectly through a ${appCompanyLong} authorized entity, reseller or distributor (a \'Distributor\').\nPlease read this EULA agreement carefully before completing the installation process and using the ${appName} mobile software. It provides a license to use the ${appName} mobile software and contains warranty information and liability disclaimers.\nIf you register for the beta program of the ${appName} mobile software, this EULA agreement will also govern that trial. By clicking \'accept\' or installing and/or using the ${appName} mobile software, you are confirming your acceptance of the Software and agreeing to become bound by the terms of this EULA agreement.\nIf you are entering into this EULA agreement on behalf of a company or other legal entity, you represent that you have the authority to bind such entity and its affiliates to these terms and conditions. If you do not have such authority or if you do not agree with the terms and conditions of this EULA agreement, do not install or use the Software, and you must not accept this EULA agreement.\nThis EULA agreement shall apply only to the Software supplied by ${appCompanyLong} herewith regardless of whether other software is referred to or described herein. The terms also apply to any ${appCompanyLong} updates, supplements, Internet-based services, and support services for the Software, unless other terms accompany those items on delivery. If so, those terms apply.\n\nLICENSE GRANT\n\n${appCompanyLong} hereby grants you a personal, non-transferable, non-exclusive license to use the ${appName} mobile software on your devices in accordance with the terms of this EULA agreement.\n\nYou are permitted to load the ${appName} mobile software (for example a PC, laptop, mobile or tablet) under your control. You are responsible for ensuring your device meets the minimum security and resource requirements of the ${appName} mobile software.\n\nYou are not permitted to:\n(a) edit, alter, modify, adapt, translate or otherwise change the whole or any part of the Software nor permit the whole or any part of the Software to be combined with or become incorporated in any other software, nor decompile, disassemble or reverse engineer the Software or attempt to do any such things;\n(b) reproduce, copy, distribute, resell or otherwise use the Software for any commercial purpose;\n(c) use the Software in any way which breaches any applicable local, national or international law;\n(d) use the Software for any purpose that ${appCompanyLong} considers is a breach of this EULA agreement.\n\nINTELLECTUAL PROPERTY AND OWNERSHIP\n\n${appCompanyLong} shall at all times retain ownership of the Software as originally downloaded by you and all subsequent downloads of the Software by you. The Software (and the copyright, and other intellectual property rights of whatever nature in the Software, including any modifications made thereto) are and shall remain the property of ${appCompanyLong}.\n\n${appCompanyLong} reserves the right to grant licenses to use the Software to third parties.\n\nTERMINATION\n\nThis EULA agreement is effective from the date you first use the Software and shall continue until terminated. You may terminate it at any time upon written notice to ${appCompanyLong}.\nIt will also terminate immediately if you fail to comply with any term of this EULA agreement. Upon such termination, the licenses granted by this EULA agreement will immediately terminate and you agree to stop all access and use of the Software. The provisions that by their nature continue and survive will survive any termination of this EULA agreement.\n\nGOVERNING LAW\n\nThis EULA agreement, and any dispute arising out of or in connection with this EULA agreement, shall be governed by and construed in accordance with the laws of Vietnam.\n\nThis document was last updated on January 31st, 2020\n\n"; - static m23(appCompanyLong) => + static m35(appCompanyLong) => "${appCompanyLong} is the owner and/or authorised user of all trademarks, service marks, design marks, patents, copyrights, database rights and all other intellectual property appearing on or contained within the application, unless otherwise indicated. All information, text, material, graphics, software and advertisements on the application interface are copyright of ${appCompanyLong}, its suppliers and licensors, unless otherwise expressly indicated by ${appCompanyLong}. \nExcept as provided in the Terms, use of the application does not grant You any right, title, interest or license to any such intellectual property You may have access to on the application. \nWe own the rights, or have permission to use, the trademarks listed in our application. You are not authorised to use any of those trademarks without our written authorization – doing so would constitute a breach of our or another party’s intellectual property rights. \nAlternatively, we might authorise You to use the content in our application if You previously contact us and we agree in writing.\n\n"; - static m24(appCompanyShort, appCompanyLong) => + static m36(appCompanyShort, appCompanyLong) => "${appCompanyLong} cannot guarantee the safety or security of your computer systems. We do not accept liability for any loss or corruption of electronically stored data or any damage to any computer system occurred in connection with the use of the application or of the user content.\n${appCompanyLong} makes no representation or warranty of any kind, express or implied, as to the operation of the application or the user content. You expressly agree that your use of the application is entirely at your sole risk.\nYou agree that the content provided in the application and the user content do not constitute financial product, legal or taxation advice, and You agree on not representing the user content or the application as such.\nTo the extent permitted by current legislation, the application is provided on an “as is, as available” basis.\n\n${appCompanyLong} expressly disclaims all responsibility for any loss, injury, claim, liability, or damage, or any indirect, incidental, special or consequential damages or loss of profits whatsoever resulting from, arising out of or in any way related to: \n(a) any errors in or omissions of the application and/or the user content, including but not limited to technical inaccuracies and typographical errors; \n(b) any third party website, application or content directly or indirectly accessed through links in the application, including but not limited to any errors or omissions; \n(c) the unavailability of the application or any portion of it; \n(d) your use of the application;\n(e) your use of any equipment or software in connection with the application. \n\nAny Services offered in connection with the Platform are provided on an \'as is\' basis, without any representation or warranty, whether express, implied or statutory. To the maximum extent permitted by applicable law, we specifically disclaim any implied warranties of title, merchantability, suitability for a particular purpose and/or non-infringement. We do not make any representations or warranties that use of the Platform will be continuous, uninterrupted, timely, or error-free.\nWe make no warranty that any Platform will be free from viruses, malware, or other related harmful material and that your ability to access any Platform will be uninterrupted. Any defects or malfunction in the product should be directed to the third party offering the Platform, not to ${appCompanyShort}. \nWe will not be responsible or liable to You for any loss of any kind, from action taken, or taken in reliance on the material or information contained in or through the Platform.\nThis is experimental and unfinished software. Use at your own risk. No warranty for any kind of damage. By using this application you agree to this terms and conditions.\n\n"; - static m25(appCompanyLong) => + static m37(appCompanyLong) => "You agree and understand that there are risks associated with utilizing Services involving Virtual Currencies including, but not limited to, the risk of failure of hardware, software and internet connections, the risk of malicious software introduction, and the risk that third parties may obtain unauthorized access to information stored within your Wallet, including but not limited to your public and private keys. You agree and understand that ${appCompanyLong} will not be responsible for any communication failures, disruptions, errors, distortions or delays You may experience when using the Services, however caused.\nYou accept and acknowledge that there are risks associated with utilizing any virtual currency network, including, but not limited to, the risk of unknown vulnerabilities in or unanticipated changes to the network protocol. You acknowledge and accept that ${appCompanyLong} has no control over any cryptocurrency network and will not be responsible for any harm occurring as a result of such risks, including, but not limited to, the inability to reverse a transaction, and any losses in connection therewith due to erroneous or fraudulent actions.\nThe risk of loss in using Services involving Virtual Currencies may be substantial and losses may occur over a short period of time. In addition, price and liquidity are subject to significant fluctuations that may be unpredictable.\nVirtual Currencies are not legal tender and are not backed by any sovereign government. In addition, the legislative and regulatory landscape around Virtual Currencies is constantly changing and may affect your ability to use, transfer, or exchange Virtual Currencies.\nCFDs are complex instruments and come with a high risk of losing money rapidly due to leverage. 80.6% of retail investor accounts lose money when trading CFDs with this provider. You should consider whether You understand how CFDs work and whether You can afford to take the high risk of losing your money.\n\n"; - static m26(appCompanyLong) => + static m38(appCompanyLong) => "You agree to indemnify, defend and hold harmless ${appCompanyLong}, its officers, directors, employees, agents, licensors, suppliers and any third party information providers to the application from and against all losses, expenses, damages and costs, including reasonable lawyer fees, resulting from any violation of the Terms by You.\nYou also agree to indemnify ${appCompanyLong} against any claims that information or material which You have submitted to ${appCompanyLong} is in violation of any law or in breach of any third party rights (including, but not limited to, claims in respect of defamation, invasion of privacy, breach of confidence, infringement of copyright or infringement of any other intellectual property right).\n\n"; - static m27(appCompanyLong) => + static m39(appCompanyLong) => "In order to be completed, any Virtual Currency transaction created with the ${appCompanyLong} must be confirmed and recorded in the Virtual Currency ledger associated with the relevant Virtual Currency network. Such networks are decentralized, peer-to-peer networks supported by independent third parties, which are not owned, controlled or operated by ${appCompanyLong}.\n${appCompanyLong} has no control over any Virtual Currency network and therefore cannot and does not ensure that any transaction details You submit via our Services will be confirmed on the relevant Virtual Currency network. You agree and understand that the transaction details You submit via our Services may not be completed, or may be substantially delayed, by the Virtual Currency network used to process the transaction. We do not guarantee that the Wallet can transfer title or right in any Virtual Currency or make any warranties whatsoever with regard to title.\nOnce transaction details have been submitted to a Virtual Currency network, we cannot assist You to cancel or otherwise modify your transaction or transaction details. ${appCompanyLong} has no control over any Virtual Currency network and does not have the ability to facilitate any cancellation or modification requests.\nIn the event of a Fork, ${appCompanyLong} may not be able to support activity related to your Virtual Currency. You agree and understand that, in the event of a Fork, the transactions may not be completed, completed partially, incorrectly completed, or substantially delayed. ${appCompanyLong} is not responsible for any loss incurred by You caused in whole or in part, directly or indirectly, by a Fork.\nIn no event shall ${appCompanyLong}, its affiliates and service providers, or any of their respective officers, directors, agents, employees or representatives, be liable for any lost profits or any special, incidental, indirect, intangible, or consequential damages, whether based on contract, tort, negligence, strict liability, or otherwise, arising out of or in connection with authorized or unauthorized use of the services, or this agreement, even if an authorized representative of ${appCompanyLong} has been advised of, has known of, or should have known of the possibility of such damages. \nFor example (and without limiting the scope of the preceding sentence), You may not recover for lost profits, lost business opportunities, or other types of special, incidental, indirect, intangible, or consequential damages. Some jurisdictions do not allow the exclusion or limitation of incidental or consequential damages, so the above limitation may not apply to You. \nWe will not be responsible or liable to You for any loss and take no responsibility for damages or claims arising in whole or in part, directly or indirectly from: \n(a) user error such as forgotten passwords, incorrectly constructed transactions, or mistyped Virtual Currency addresses; \n(b) server failure or data loss; \n(c) corrupted or otherwise non-performing Wallets or Wallet files; \n(d) unauthorized access to applications; \n(e) any unauthorized activities, including without limitation the use of hacking, viruses, phishing, brute forcing or other means of attack against the Services.\n\n"; - static m28(appCompanyShort, appCompanyLong) => + static m40(appCompanyShort, appCompanyLong) => "For the avoidance of doubt, ${appCompanyLong} does not provide investment, tax or legal advice, nor does ${appCompanyLong} broker trades on your behalf. All ${appCompanyLong} trades are executed automatically, based on the parameters of your order instructions and in accordance with posted Trade execution procedures, and You are solely responsible for determining whether any investment, investment strategy or related transaction is appropriate for You based on your personal investment objectives, financial circumstances and risk tolerance. You should consult your legal or tax professional regarding your specific situation. Neither ${appCompanyShort} nor its owners, members, officers, directors, partners, consultants, nor anyone involved in the publication of this application, is a registered investment adviser or broker-dealer or associated person with a registered investment adviser or broker-dealer and none of the foregoing make any recommendation that the purchase or sale of crypto-assets or securities of any company profiled in the mobile Application is suitable or advisable for any person or that an investment or transaction in such crypto-assets or securities will be profitable. The information contained in the mobile Application is not intended to be, and shall not constitute, an offer to sell or the solicitation of any offer to buy any crypto-asset or security. The information presented in the mobile Application is provided for informational purposes only and is not to be treated as advice or a recommendation to make any specific investment or transaction. Please, consult with a qualified professional before making any decisions. The opinions and analysis included in this applications are based on information from sources deemed to be reliable and are provided “as is” in good faith. ${appCompanyShort} makes no representation or warranty, expressed, implied, or statutory, as to the accuracy or completeness of such information, which may be subject to change without notice. ${appCompanyShort} shall not be liable for any errors or any actions taken in relation to the above. Statements of opinion and belief are those of the authors and/or editors who contribute to this application, and are based solely upon the information possessed by such authors and/or editors. No inference should be drawn that ${appCompanyShort} or such authors or editors have any special or greater knowledge about the crypto-assets or companies profiled or any particular expertise in the industries or markets in which the profiled crypto-assets and companies operate and compete. Information on this application is obtained from sources deemed to be reliable; however, ${appCompanyShort} takes no responsibility for verifying the accuracy of such information and makes no representation that such information is accurate or complete. Certain statements included in this application may be forward-looking statements based on current expectations. ${appCompanyShort} makes no representation and provides no assurance or guarantee that such forward-looking statements will prove to be accurate. Persons using the ${appCompanyShort} application are urged to consult with a qualified professional with respect to an investment or transaction in any crypto-asset or company profiled herein. Additionally, persons using this application expressly represent that the content in this application is not and will not be a consideration in such persons’ investment or transaction decisions. Traders should verify independently information provided in the ${appCompanyShort} application by completing their own due diligence on any crypto-asset or company in which they are contemplating an investment or transaction of any kind and review a complete information package on that crypto-asset or company, which should include, but not be limited to, related blog updates and press releases. Past performance of profiled crypto-assets and securities is not indicative of future results. Crypto-assets and companies profiled on this site may lack an active trading market and invest in a crypto-asset or security that lacks an active trading market or trade on certain media, platforms and markets are deemed highly speculative and carry a high degree of risk. Anyone holding such crypto-assets and securities should be financially able and prepared to bear the risk of loss and the actual loss of his or her entire trade. The information in this application is not designed to be used as a basis for an investment decision. Persons using the ${appCompanyShort} application should confirm to their own satisfaction the veracity of any information prior to entering into any investment or making any transaction. The decision to buy or sell any crypto-asset or security that may be featured by ${appCompanyShort} is done purely and entirely at the reader’s own risk. As a reader and user of this application, You agree that under no circumstances will You seek to hold liable owners, members, officers, directors, partners, consultants or other persons involved in the publication of this application for any losses incurred by the use of information contained in this application ${appCompanyShort} and its contractors and affiliates may profit in the event the crypto-assets and securities increase or decrease in value. Such crypto-assets and securities may be bought or sold from time to time, even after ${appCompanyShort} has distributed positive information regarding the crypto-assets and companies. ${appCompanyShort} has no obligation to inform readers of its trading activities or the trading activities of any of its owners, members, officers, directors, contractors and affiliates and/or any companies affiliated with BC Relations’ owners, members, officers, directors, contractors and affiliates. ${appCompanyShort} and its affiliates may from time to time enter into agreements to purchase crypto-assets or securities to provide a method to reach their goals.\n\n"; - static m29(appCompanyLong) => + static m41(appCompanyLong) => "The Terms are effective until terminated by ${appCompanyLong}. \nIn the event of termination, You are no longer authorized to access the Application, but all restrictions imposed on You and the disclaimers and limitations of liability set out in the Terms will survive termination. \nSuch termination shall not affect any legal right that may have accrued to ${appCompanyLong} against You up to the date of termination. \n${appCompanyLong} may also remove the Application as a whole or any sections or features of the Application at any time. \n\n"; - static m30(appCompanyLong) => + static m42(appCompanyLong) => "The provisions of previous paragraphs are for the benefit of ${appCompanyLong} and its officers, directors, employees, agents, licensors, suppliers, and any third party information providers to the Application. Each of these individuals or entities shall have the right to assert and enforce those provisions directly against You on its own behalf.\n\n"; - static m31(appName, appCompanyLong) => + static m43(appName, appCompanyLong) => "${appName} mobile is a non-custodial, decentralized and blockchain based application and as such does ${appCompanyLong} never store any user-data (accounts and authentication data). \nWe also collect and process non-personal, anonymized data for statistical purposes and analysis and to help us provide a better service.\n\nThis document was last updated on January 31st, 2020\n\n"; - static m32(appName, appCompanyLong) => + static m44(appName, appCompanyLong) => "This disclaimer applies to the contents and services of the app ${appName} and is valid for all users of the “Application” (\'Software\', “Mobile Application”, “Application” or “App”).\n\nThe Application is owned by ${appCompanyLong}.\n\nWe reserve the right to amend the following Terms and Conditions (governing the use of the application “${appName} mobile”) at any time without prior notice and at our sole discretion. It is your responsibility to periodically check this Terms and Conditions for any updates to these Terms, which shall come into force once published.\nYour continued use of the application shall be deemed as acceptance of the following Terms. \nWe are a company incorporated in Vietnam and these Terms and Conditions are governed by and subject to the laws of Vietnam. \nIf You do not agree with these Terms and Conditions, You must not use or access this software.\n\n"; - static m33(appName) => + static m45(appName) => "You are not allowed to decompile, decode, disassemble, rent, lease, loan, sell, sublicense, or create derivative works from the ${appName} mobile application or the user content. Nor are You allowed to use any network monitoring or detection software to determine the software architecture, or extract information about usage or individuals’ or users’ identities. \nYou are not allowed to copy, modify, reproduce, republish, distribute, display, or transmit for commercial, non-profit or public purposes all or any portion of the application or the user content without our prior written authorization.\n\n"; - static m34(appName, appCompanyLong) => + static m46(appName, appCompanyLong) => "If you create an account in the Mobile Application, you are responsible for maintaining the security of your account and you are fully responsible for all activities that occur under the account and any other actions taken in connection with it. We will not be liable for any acts or omissions by you, including any damages of any kind incurred as a result of such acts or omissions. \n\n${appName} mobile is a non-custodial wallet implementation and thus ${appCompanyLong} can not access nor restore your account in case of (data) loss.\n\n"; - static m35(appName) => + static m47(appName) => "End-User License Agreement (EULA) of ${appName} mobile"; - static m36(coin) => "Sending request to ${coin} faucet..."; + static m48(coinAbbr) => "Failed to cancel activation of ${coinAbbr}"; + + static m49(coin) => "Sending request to ${coin} faucet..."; - static m37(appCompanyShort) => "${appCompanyShort} news"; + static m50(appCompanyShort) => "${appCompanyShort} news"; - static m38(value) => "Fees must be up to ${value}"; + static m51(value) => "Fees must be up to ${value}"; - static m39(coin) => "${coin} fee"; + static m52(coin) => "${coin} fee"; - static m40(coin) => "Please activate ${coin}."; + static m53(coin) => "Please activate ${coin}."; - static m41(abbr) => "${abbr} balance not sufficient to pay trading fee"; + static m54(value) => "Gwei must be up to ${value}"; - static m42(coinAbbr) => "${coinAbbr} is unavailable :("; + static m55(coinName) => "Incoming ${coinName} txs protection settings"; - static m43(coinName) => + static m56(abbr) => "${abbr} balance not sufficient to pay trading fee"; + + static m57(coin) => "Invalid ${coin} address"; + + static m58(coinAbbr) => "${coinAbbr} is unavailable :("; + + static m59(coinName) => "❗Caution! Market for ${coinName} has less than \$10k 24h trading-volume!"; - static m44(coinName, number) => + static m60(value) => "Limit must be up to ${value}"; + + static m61(coinName, number) => "The minimum amount to sell is ${number} ${coinName}"; - static m45(coinName, number) => + static m62(coinName, number) => "The minimum amount to buy is ${number} ${coinName}"; - static m46(buyCoin, buyAmount, sellCoin, sellAmount) => + static m63(buyCoin, buyAmount, sellCoin, sellAmount) => "Order minimum amount is ${buyAmount} ${buyCoin}\n(${sellAmount} ${sellCoin})"; - static m47(coinName, number) => + static m64(coinName, number) => "The minimum amount to sell is ${number} ${coinName}"; - static m48(minValue, coin) => "Must be greater than ${minValue} ${coin}"; + static m65(minValue, coin) => "Must be greater than ${minValue} ${coin}"; - static m49(appName) => + static m66(appName) => "Please note that now you\'re using cellular data and participation in ${appName} P2P network consume internet traffic. It\'s better to use a WiFi network if your cellular data plan is costly."; - static m50(coin) => "Activate ${coin} and top-up balance first"; + static m67(coin) => "Activate ${coin} and top-up balance first"; - static m51(number) => "Create ${number} Order(s):"; + static m68(number) => "Create ${number} Order(s):"; - static m52(coin) => "${coin} balance is too low"; + static m69(coin) => "${coin} balance is too low"; - static m53(coin, fee) => + static m70(coin, fee) => "Not enough ${coin} to pay fees. MIN balance is ${fee} ${coin}"; - static m54(coinName) => "Please enter the ${coinName} amount."; + static m71(coinName) => "Please enter the ${coinName} amount."; - static m55(coin) => "Not enough ${coin} for transaction!"; + static m72(coin) => "Not enough ${coin} for transaction!"; - static m56(sell, buy) => "${sell}/${buy} swap was completed successfully"; + static m73(sell, buy) => "${sell}/${buy} swap was completed successfully"; - static m57(sell, buy) => "${sell}/${buy} swap failed"; + static m74(sell, buy) => "${sell}/${buy} swap failed"; - static m58(sell, buy) => "${sell}/${buy} swap started"; + static m75(sell, buy) => "${sell}/${buy} swap started"; - static m59(sell, buy) => "${sell}/${buy} swap was timed out"; + static m76(sell, buy) => "${sell}/${buy} swap was timed out"; - static m60(coin) => "You have received ${coin} transaction!"; + static m77(coin) => "You have received ${coin} transaction!"; - static m61(assets) => "${assets} Assets"; + static m78(assets) => "${assets} Assets"; - static m62(coin) => "All ${coin} orders will be canceled."; + static m79(coin) => "All ${coin} orders will be canceled."; - static m63(delta) => "Expedient: CEX +${delta}%"; + static m80(delta) => "Expedient: CEX +${delta}%"; - static m64(delta) => "Expensive: CEX ${delta}%"; + static m81(delta) => "Expensive: CEX ${delta}%"; - static m65(fill) => "${fill}% filled"; + static m82(fill) => "${fill}% filled"; - static m66(coin) => "Amt. (${coin})"; + static m83(coin) => "Amt. (${coin})"; - static m67(coin) => "Price (${coin})"; + static m84(coin) => "Price (${coin})"; - static m68(coin) => "Total (${coin})"; + static m85(coin) => "Total (${coin})"; - static m69(abbr) => "${abbr} is not active. Please activate and try again."; + static m86(abbr) => "${abbr} is not active. Please activate and try again."; - static m70(appName) => "Which devices can I use ${appName} on?"; + static m87(appName) => "Which devices can I use ${appName} on?"; - static m71(appName) => + static m88(appName) => "How is trading on ${appName} different from trading on other DEXs?"; - static m72(appName) => "How are the fees on ${appName} calculated?"; + static m89(appName) => "How are the fees on ${appName} calculated?"; - static m73(appName) => "Who is behind ${appName}?"; + static m90(appName) => "Who is behind ${appName}?"; - static m74(appName) => + static m91(appName) => "Is it possible to develop my own white-label exchange on ${appName}?"; - static m75(amount) => "Success! ${amount} KMD received."; + static m92(amount) => "Success! ${amount} KMD received."; + + static m93(dd) => "${dd} day(s)"; - static m76(dd) => "${dd} day(s)"; + static m94(hh, minutes) => "${hh}h ${minutes}m"; - static m77(hh, minutes) => "${hh}h ${minutes}m"; + static m95(mm) => "${mm}min"; - static m78(mm) => "${mm}min"; + static m96(amount) => "Click to see ${amount} orders"; - static m79(amount) => "Click to see ${amount} orders"; + static m97(coinName, address) => "My ${coinName} address: \n${address}"; - static m80(coinName, address) => "My ${coinName} address: \n${address}"; + static m98(coin) => "Scan for past ${coin} transactions?"; - static m81(coin) => "Please enter ${coin} amount to buy"; + static m99(count, maxCount) => "Showing ${count} of ${maxCount} orders. "; - static m82(maxCoins) => + static m100(coin) => "Please enter ${coin} amount to buy"; + + static m101(maxCoins) => "Max active coins number is ${maxCoins}. Please deactivate some."; - static m83(coin) => "${coin} is not active!"; + static m102(coin) => "${coin} is not active!"; - static m84(coin) => "Please enter ${coin} amount to sell"; + static m103(coin) => "Please enter ${coin} amount to sell"; - static m85(coin) => "Unable to activate ${coin}"; + static m104(coin) => "Unable to activate ${coin}"; - static m86(description) => + static m105(description) => "Pick an mp3 or wav file please. We\'ll play it when ${description}."; - static m87(description) => "Played when ${description}"; + static m106(description) => "Played when ${description}"; - static m88(appName) => + static m107(appName) => "If you have any questions, or think you\'ve found a technical problem with the ${appName} app, you can report it and get support from our team."; - static m89(coin) => "Please activate ${coin} and top-up balance first"; + static m108(coin) => "Please activate ${coin} and top-up balance first"; - static m90(coin) => "${coin} balance not sufficient to pay transaction fees."; + static m109(coin) => + "${coin} balance not sufficient to pay transaction fees."; - static m91(coin, amount) => + static m110(coin, amount) => "${coin} balance not sufficient to pay transaction fees. ${coin} ${amount} required."; - static m92(left) => "Transactions Left: ${left}"; + static m111(name) => "Which ${name} transactions would you like to sync?"; - static m93(amnt, hash) => "Successfully unlocked ${amnt} funds - TX: ${hash}"; + static m112(left) => "Transactions Left: ${left}"; - static m94(version) => "You are using version ${version}"; + static m113(amnt, hash) => + "Successfully unlocked ${amnt} funds - TX: ${hash}"; - static m95(version) => "Version ${version} available. Please update."; + static m114(version) => "You are using version ${version}"; - static m96(appName) => "${appName} update"; + static m115(version) => "Version ${version} available. Please update."; - static m97(coinAbbr) => "We failed to activate ${coinAbbr}"; + static m116(appName) => "${appName} update"; - static m98(coinAbbr) => + static m117(coinAbbr) => "We failed to activate ${coinAbbr}"; + + static m118(coinAbbr) => "We failed to activate ${coinAbbr}.\nPlease restart the app to try again."; - static m99(appName) => + static m119(appName) => "${appName} mobile is a next generation multi-coin wallet with native third generation DEX functionality and more."; - static m100(appName) => + static m120(appName) => "You have previously denied ${appName} access to the camera.\nPlease manually change camera permission in your phone settings to proceed with the QR code scan."; - static m101(amount, coinName) => "WITHDRAW ${amount} ${coinName}"; + static m121(amount, coinName) => "WITHDRAW ${amount} ${coinName}"; - static m102(amount, coin) => "You will receive ${amount} ${coin}"; + static m122(amount, coin) => "You will receive ${amount} ${coin}"; final messages = _notInlinedMessages(_notInlinedMessages); static Map _notInlinedMessages(_) => { @@ -292,16 +334,22 @@ class MessageLookup extends MessageLookupByLibrary { "Activate Biometric protection"), "activateAccessPin": MessageLookupByLibrary.simpleMessage("Activate PIN protection"), + "activateCoins": m0, + "activating": m1, + "activation": m2, + "activationCancelled": + MessageLookupByLibrary.simpleMessage("Coin activation cancelled"), + "activationInProgress": m3, "addCoin": MessageLookupByLibrary.simpleMessage("Add Coin"), - "addingCoinSuccess": m0, + "addingCoinSuccess": m4, "addressAdd": MessageLookupByLibrary.simpleMessage("Add Address"), "addressBook": MessageLookupByLibrary.simpleMessage("Address book"), "addressBookEmpty": MessageLookupByLibrary.simpleMessage("Address book is empty"), - "addressBookFilter": m1, + "addressBookFilter": m5, "addressBookTitle": MessageLookupByLibrary.simpleMessage("Address Book"), - "addressCoinInactive": m2, + "addressCoinInactive": m6, "addressNotFound": MessageLookupByLibrary.simpleMessage("Nothing found"), "addressSelectCoin": @@ -310,22 +358,24 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("Recipients address"), "advanced": MessageLookupByLibrary.simpleMessage("Advanced"), "all": MessageLookupByLibrary.simpleMessage("All"), + "allPastTransactions": MessageLookupByLibrary.simpleMessage( + "Your wallet will show any past transactions. This will take significant storage and time as all blocks will be downloaded and scanned."), "allowCustomSeed": MessageLookupByLibrary.simpleMessage("Allow custom seed"), "alreadyExists": MessageLookupByLibrary.simpleMessage("Already exists"), "amount": MessageLookupByLibrary.simpleMessage("Amount"), "amountToSell": MessageLookupByLibrary.simpleMessage("Amount To Sell"), - "answer_1": m3, - "answer_10": m4, - "answer_2": m5, - "answer_3": m6, + "answer_1": m7, + "answer_10": m8, + "answer_2": m9, + "answer_3": m10, "answer_4": MessageLookupByLibrary.simpleMessage( "Yes. You must remain connected to the internet and have your app running to successfully complete each atomic swap (very short breaks in connectivity are usually fine). Otherwise, there is risk of trade cancellation if you are a maker, and risk of loss of funds if you are a taker. The atomic swap protocol requires both participants to stay online and monitor the involved blockchains for the process to stay atomic."), - "answer_5": m7, - "answer_6": m8, - "answer_7": m9, - "answer_8": m10, - "answer_9": m11, + "answer_5": m11, + "answer_6": m12, + "answer_7": m13, + "answer_8": m14, + "answer_9": m15, "areYouSure": MessageLookupByLibrary.simpleMessage("ARE YOU SURE?"), "authenticate": MessageLookupByLibrary.simpleMessage("authenticate"), "automaticRedirected": MessageLookupByLibrary.simpleMessage( @@ -333,8 +383,9 @@ class MessageLookup extends MessageLookupByLibrary { "availableVolume": MessageLookupByLibrary.simpleMessage("max vol"), "back": MessageLookupByLibrary.simpleMessage("back"), "backupTitle": MessageLookupByLibrary.simpleMessage("Backup"), - "batteryCriticalError": m12, - "batteryLowWarning": m13, + "basedOnCoinRatio": m16, + "batteryCriticalError": m17, + "batteryLowWarning": m18, "batterySavingWarning": MessageLookupByLibrary.simpleMessage( "Your phone is in battery saving mode. Please disable this mode or do NOT put the application to the background, otherwise, the app might be killed by OS and swap failed."), "bestAvailableRate": @@ -346,7 +397,7 @@ class MessageLookup extends MessageLookupByLibrary { "Convert to Maker if not matched"), "buySuccessWaiting": MessageLookupByLibrary.simpleMessage("Swap issued, please wait!"), - "buySuccessWaitingError": m14, + "buySuccessWaitingError": m19, "buyTestCoinWarning": MessageLookupByLibrary.simpleMessage( "Warning, you\'re willing to buy test coins WITHOUT real value!"), "camoPinBioProtectionConflict": MessageLookupByLibrary.simpleMessage( @@ -377,6 +428,10 @@ class MessageLookup extends MessageLookupByLibrary { "camouflageSetup": MessageLookupByLibrary.simpleMessage("Camouflage PIN Setup"), "cancel": MessageLookupByLibrary.simpleMessage("Cancel"), + "cancelActivation": + MessageLookupByLibrary.simpleMessage("Cancel Activation"), + "cancelActivationQuestion": MessageLookupByLibrary.simpleMessage( + "Are you sure you want to cancel activation?"), "cancelButton": MessageLookupByLibrary.simpleMessage("Cancel"), "cancelOrder": MessageLookupByLibrary.simpleMessage("Cancel Order"), "candleChartError": MessageLookupByLibrary.simpleMessage( @@ -391,6 +446,7 @@ class MessageLookup extends MessageLookupByLibrary { "cexData": MessageLookupByLibrary.simpleMessage("CEX data"), "cexDataDesc": MessageLookupByLibrary.simpleMessage( "Markets data (prices, charts, etc.) marked with this icon originates from third party sources (coingecko.com, openrates.io)."), + "cexRate": MessageLookupByLibrary.simpleMessage("CEX Rate"), "changePin": MessageLookupByLibrary.simpleMessage("Change PIN code"), "checkForUpdates": MessageLookupByLibrary.simpleMessage("Check for updates"), @@ -401,10 +457,10 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("CONTINUE"), "checkSeedPhraseButton2": MessageLookupByLibrary.simpleMessage("GO BACK AND CHECK AGAIN"), - "checkSeedPhraseHint": m15, + "checkSeedPhraseHint": m20, "checkSeedPhraseInfo": MessageLookupByLibrary.simpleMessage( "Your seed phrase is important - that\'s why we like to make sure it\'s correct. We\'ll ask you three different questions about your seed phrase to make sure you\'ll be able to easily restore your wallet whenever you want."), - "checkSeedPhraseSubtile": m16, + "checkSeedPhraseSubtile": m21, "checkSeedPhraseTitle": MessageLookupByLibrary.simpleMessage( "LET\'S DOUBLE CHECK YOUR SEED PHRASE"), "chineseLanguage": MessageLookupByLibrary.simpleMessage("Chinese"), @@ -421,12 +477,19 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("Close Error Message"), "closePreview": MessageLookupByLibrary.simpleMessage("Close preview"), "code": MessageLookupByLibrary.simpleMessage("Code: "), + "cofirmCancelActivation": MessageLookupByLibrary.simpleMessage( + "Are you sure you want to cancel activation?"), + "coinActivationCancelled": m22, + "coinActivationSuccessfull": m23, "coinSelectClear": MessageLookupByLibrary.simpleMessage("Clear"), "coinSelectNotFound": MessageLookupByLibrary.simpleMessage("No active coins"), "coinSelectTitle": MessageLookupByLibrary.simpleMessage("Select Coin"), "coinsActivatedLimitReached": MessageLookupByLibrary.simpleMessage( "You have selected the max number of assets"), + "coinsAreActivated": m24, + "coinsAreActivatedSuccessfully": m25, + "coinsAreNotActivated": m26, "comingSoon": MessageLookupByLibrary.simpleMessage("Coming soon..."), "commingsoon": MessageLookupByLibrary.simpleMessage("TX details coming soon!"), @@ -455,7 +518,7 @@ class MessageLookup extends MessageLookupByLibrary { "contactCancel": MessageLookupByLibrary.simpleMessage("Cancel"), "contactDelete": MessageLookupByLibrary.simpleMessage("Delete Contact"), "contactDeleteBtn": MessageLookupByLibrary.simpleMessage("Delete"), - "contactDeleteWarning": m17, + "contactDeleteWarning": m27, "contactDiscardBtn": MessageLookupByLibrary.simpleMessage("Discard"), "contactEdit": MessageLookupByLibrary.simpleMessage("Edit"), "contactExit": MessageLookupByLibrary.simpleMessage("Exit"), @@ -466,7 +529,10 @@ class MessageLookup extends MessageLookupByLibrary { "contactSave": MessageLookupByLibrary.simpleMessage("Save"), "contactTitle": MessageLookupByLibrary.simpleMessage("Contact details"), "contactTitleName": MessageLookupByLibrary.simpleMessage("Name"), + "contract": MessageLookupByLibrary.simpleMessage("Contract"), "convert": MessageLookupByLibrary.simpleMessage("Convert"), + "couldNotLaunchUrl": + MessageLookupByLibrary.simpleMessage("Could not launch URL"), "couldntImportError": MessageLookupByLibrary.simpleMessage("Couldn\'t import: "), "create": MessageLookupByLibrary.simpleMessage("trade"), @@ -480,7 +546,7 @@ class MessageLookup extends MessageLookupByLibrary { "customFee": MessageLookupByLibrary.simpleMessage("Custom fee"), "customFeeWarning": MessageLookupByLibrary.simpleMessage( "Only use custom fees if you know what you are doing!"), - "customSeedWarning": m18, + "customSeedWarning": m28, "dPow": MessageLookupByLibrary.simpleMessage("Komodo dPoW security"), "date": MessageLookupByLibrary.simpleMessage("Date"), "decryptingWallet": @@ -497,6 +563,13 @@ class MessageLookup extends MessageLookupByLibrary { "deleteWallet": MessageLookupByLibrary.simpleMessage("Delete Wallet"), "deletingWallet": MessageLookupByLibrary.simpleMessage("Deleting wallet..."), + "detailedFeesReceiveCoinTransactionFee": m29, + "detailedFeesSendCoinTransactionFee": m30, + "detailedFeesSendTradingFeeTransactionFee": + MessageLookupByLibrary.simpleMessage( + "send trading fee transaction fee"), + "detailedFeesTradingFee": + MessageLookupByLibrary.simpleMessage("trading fee"), "details": MessageLookupByLibrary.simpleMessage("details"), "deutscheLanguage": MessageLookupByLibrary.simpleMessage("Deutsch"), "developerTitle": MessageLookupByLibrary.simpleMessage("Developer"), @@ -507,13 +580,15 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("Disable Screenshots/Preview"), "disclaimerAndTos": MessageLookupByLibrary.simpleMessage("Disclaimer & ToS"), + "doNotCloseTheAppTapForMoreInfo": MessageLookupByLibrary.simpleMessage( + "Do not close the app. Tap for more info..."), "done": MessageLookupByLibrary.simpleMessage("Done"), "dontAskAgain": MessageLookupByLibrary.simpleMessage("Don’t ask again"), "dontWantPassword": MessageLookupByLibrary.simpleMessage("I don\'t want a password"), "duration": MessageLookupByLibrary.simpleMessage("Duration"), "editContact": MessageLookupByLibrary.simpleMessage("Edit Contact"), - "emptyCoin": m19, + "emptyCoin": m31, "emptyExportPass": MessageLookupByLibrary.simpleMessage( "Encryption password can\'t be empty"), "emptyImportPass": @@ -522,7 +597,10 @@ class MessageLookup extends MessageLookupByLibrary { "Contact name cannot be empty"), "emptyWallet": MessageLookupByLibrary.simpleMessage( "Wallet name must not be empty"), - "enable": m20, + "enable": m32, + "enableNotificationsForActivationProgress": + MessageLookupByLibrary.simpleMessage( + "Please enable notifications to get updates on the activation progress."), "enableTestCoins": MessageLookupByLibrary.simpleMessage("Enable Test Coins"), "enablingTooManyAssetsSpan1": @@ -556,7 +634,7 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("Not a valid address"), "errorNotAValidAddressSegWit": MessageLookupByLibrary.simpleMessage( "Segwit addresses are not supported (yet)"), - "errorNotEnoughGas": m21, + "errorNotEnoughGas": m33, "errorTryAgain": MessageLookupByLibrary.simpleMessage("Error, please try again"), "errorTryLater": @@ -567,32 +645,32 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("Please input data"), "estimateValue": MessageLookupByLibrary.simpleMessage("Estimated Total Value"), - "eulaParagraphe1": m22, - "eulaParagraphe10": m23, - "eulaParagraphe11": m24, + "eulaParagraphe1": m34, + "eulaParagraphe10": m35, + "eulaParagraphe11": m36, "eulaParagraphe12": MessageLookupByLibrary.simpleMessage( "When accessing or using the Services, You agree that You are solely responsible for your conduct while accessing and using our Services. Without limiting the generality of the foregoing, You agree that You will not:\n(a) use the Services in any manner that could interfere with, disrupt, negatively affect or inhibit other users from fully enjoying the Services, or that could damage, disable, overburden or impair the functioning of our Services in any manner;\n(b) use the Services to pay for, support or otherwise engage in any illegal activities, including, but not limited to illegal gambling, fraud, money laundering, or terrorist activities;\n(c) use any robot, spider, crawler, scraper or other automated means or interface not provided by us to access our Services or to extract data;\n(d) use or attempt to use another user’s Wallet or credentials without authorization;\n(e) attempt to circumvent any content filtering techniques we employ, or attempt to access any service or area of our Services that You are not authorized to access;\n(f) introduce to the Services any virus, Trojan, worms, logic bombs or other harmful material;\n(g) develop any third-party applications that interact with our Services without our prior written consent;\n(h) provide false, inaccurate, or misleading information; \n(i) encourage or induce any other person to engage in any of the activities prohibited under this Section.\n\n"), - "eulaParagraphe13": m25, - "eulaParagraphe14": m26, - "eulaParagraphe15": m27, - "eulaParagraphe16": m28, - "eulaParagraphe17": m29, - "eulaParagraphe18": m30, - "eulaParagraphe19": m31, - "eulaParagraphe2": m32, + "eulaParagraphe13": m37, + "eulaParagraphe14": m38, + "eulaParagraphe15": m39, + "eulaParagraphe16": m40, + "eulaParagraphe17": m41, + "eulaParagraphe18": m42, + "eulaParagraphe19": m43, + "eulaParagraphe2": m44, "eulaParagraphe3": MessageLookupByLibrary.simpleMessage( "By entering into this User (each subject accessing or using the site) Agreement (this writing) You declare that You are an individual over the age of majority (at least 18 or older) and have the capacity to enter into this User Agreement and accept to be legally bound by the terms and conditions of this User Agreement, as incorporated herein and amended from time to time. \n\n"), "eulaParagraphe4": MessageLookupByLibrary.simpleMessage( "We may change the terms of this User Agreement at any time. Any such changes will take effect when published in the application, or when You use the Services.\n\nRead the User Agreement carefully every time You use our Services. Your continued use of the Services shall signify your acceptance to be bound by the current User Agreement. Our failure or delay in enforcing or partially enforcing any provision of this User Agreement shall not be construed as a waiver of any.\n\n"), - "eulaParagraphe5": m33, - "eulaParagraphe6": m34, + "eulaParagraphe5": m45, + "eulaParagraphe6": m46, "eulaParagraphe7": MessageLookupByLibrary.simpleMessage( "We are not responsible for seed-phrases residing in the Mobile Application. In no event shall we be held liable for any loss of any kind. It is your sole responsibility to maintain appropriate backups of your accounts and their seedprases.\n\n"), "eulaParagraphe8": MessageLookupByLibrary.simpleMessage( "You should not act, or refrain from acting solely on the basis of the content of this application. \nYour access to this application does not itself create an adviser-client relationship between You and us. \nThe content of this application does not constitute a solicitation or inducement to invest in any financial products or services offered by us. \nAny advice included in this application has been prepared without taking into account your objectives, financial situation or needs. You should consider our Risk Disclosure Notice before making any decision on whether to acquire the product described in that document.\n\n"), "eulaParagraphe9": MessageLookupByLibrary.simpleMessage( "We do not guarantee your continuous access to the application or that your access or use will be error-free. \nWe will not be liable in the event that the application is unavailable to You for any reason (for example, due to computer downtime ascribable to malfunctions, upgrades, server problems, precautionary or corrective maintenance activities or interruption in telecommunication supplies). \n\n"), - "eulaTitle1": m35, + "eulaTitle1": m47, "eulaTitle10": MessageLookupByLibrary.simpleMessage("ACCESS AND SECURITY\n\n"), "eulaTitle11": MessageLookupByLibrary.simpleMessage( @@ -644,19 +722,20 @@ class MessageLookup extends MessageLookupByLibrary { "Items have been successfully exported:"), "exportSwapsTitle": MessageLookupByLibrary.simpleMessage("Swaps"), "exportTitle": MessageLookupByLibrary.simpleMessage("Export"), + "failedToCancelActivation": m48, "fakeBalanceAmt": MessageLookupByLibrary.simpleMessage("Fake balance amount:"), "faqTitle": MessageLookupByLibrary.simpleMessage("Frequently Asked Questions"), "faucetError": MessageLookupByLibrary.simpleMessage("Error"), - "faucetInProgress": m36, + "faucetInProgress": m49, "faucetName": MessageLookupByLibrary.simpleMessage("FAUCET"), "faucetSuccess": MessageLookupByLibrary.simpleMessage("Success"), "faucetTimedOut": MessageLookupByLibrary.simpleMessage("Request timed out"), "feedNewsTab": MessageLookupByLibrary.simpleMessage("News"), "feedNotFound": MessageLookupByLibrary.simpleMessage("Nothing here"), - "feedNotifTitle": m37, + "feedNotifTitle": m50, "feedReadMore": MessageLookupByLibrary.simpleMessage("Read more..."), "feedTab": MessageLookupByLibrary.simpleMessage("Feed"), "feedTitle": MessageLookupByLibrary.simpleMessage("News Feed"), @@ -669,7 +748,7 @@ class MessageLookup extends MessageLookupByLibrary { "feedUpdated": MessageLookupByLibrary.simpleMessage("News feed updated"), "feedback": MessageLookupByLibrary.simpleMessage("Share Log File"), - "feesError": m38, + "feesError": m51, "filtersAll": MessageLookupByLibrary.simpleMessage("All"), "filtersButton": MessageLookupByLibrary.simpleMessage("Filter"), "filtersClearAll": @@ -685,17 +764,25 @@ class MessageLookup extends MessageLookupByLibrary { "filtersTo": MessageLookupByLibrary.simpleMessage("To date"), "filtersType": MessageLookupByLibrary.simpleMessage("Taker/Maker"), "fingerprint": MessageLookupByLibrary.simpleMessage("Fingerprint"), + "finishingUp": + MessageLookupByLibrary.simpleMessage("Finishing up, please wait"), + "foundQrCode": MessageLookupByLibrary.simpleMessage("Found QR Code"), "frenchLanguage": MessageLookupByLibrary.simpleMessage("French"), "from": MessageLookupByLibrary.simpleMessage("From"), - "gasFee": m39, + "futureTransactions": MessageLookupByLibrary.simpleMessage( + "We will sync future transactions made after activation associated with your public key. This is the quickest option and takes up the least amount of storage."), + "gasFee": m52, "gasLimit": MessageLookupByLibrary.simpleMessage("Gas limit"), - "gasNotActive": m40, + "gasNotActive": m53, "gasPrice": MessageLookupByLibrary.simpleMessage("Gas price"), "generalPinNotActive": MessageLookupByLibrary.simpleMessage( "General PIN protection is not active.\nCamouflage mode will not be available.\nPlease activate PIN protection."), "getBackupPhrase": MessageLookupByLibrary.simpleMessage( "Important: Back up your seed phrase before proceeding!"), + "gettingTxWait": MessageLookupByLibrary.simpleMessage( + "Getting transaction, please wait"), "goToPorfolio": MessageLookupByLibrary.simpleMessage("Go to portfolio"), + "gweiError": m54, "helpLink": MessageLookupByLibrary.simpleMessage("Help"), "helpTitle": MessageLookupByLibrary.simpleMessage("Help and Support"), "hideBalance": MessageLookupByLibrary.simpleMessage("Hide balances"), @@ -747,6 +834,7 @@ class MessageLookup extends MessageLookupByLibrary { "importSwapJsonDecodingError": MessageLookupByLibrary.simpleMessage("Error decoding json file"), "importTitle": MessageLookupByLibrary.simpleMessage("Import"), + "incomingTransactionsProtectionSettings": m55, "infoPasswordDialog": MessageLookupByLibrary.simpleMessage( "Use a secure password and do not store it on the same device"), "infoTrade1": MessageLookupByLibrary.simpleMessage( @@ -755,7 +843,7 @@ class MessageLookup extends MessageLookupByLibrary { "The swap can take up to 60 minutes. DONT close this application!"), "infoWalletPassword": MessageLookupByLibrary.simpleMessage( "You have to provide a password for the wallet encryption due to security reasons."), - "insufficientBalanceToPay": m41, + "insufficientBalanceToPay": m56, "insufficientText": MessageLookupByLibrary.simpleMessage( "Minumum volume required by this order is"), "insufficientTitle": @@ -764,11 +852,12 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("Refresh"), "internetRestored": MessageLookupByLibrary.simpleMessage( "Internet Connection Restored"), + "invalidCoinAddress": m57, "invalidSwap": MessageLookupByLibrary.simpleMessage("Unable to proceed swap"), "invalidSwapDetailsLink": MessageLookupByLibrary.simpleMessage("Details"), - "isUnavailable": m42, + "isUnavailable": m58, "japaneseLanguage": MessageLookupByLibrary.simpleMessage("Japanese"), "koreanLanguage": MessageLookupByLibrary.simpleMessage("Korean"), "language": MessageLookupByLibrary.simpleMessage("Language"), @@ -776,7 +865,8 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("Latest Transactions"), "legalTitle": MessageLookupByLibrary.simpleMessage("Legal"), "less": MessageLookupByLibrary.simpleMessage("Less"), - "lessThanCaution": m43, + "lessThanCaution": m59, + "limitError": m60, "loading": MessageLookupByLibrary.simpleMessage("Loading..."), "loadingOrderbook": MessageLookupByLibrary.simpleMessage("Loading orderbook..."), @@ -842,28 +932,31 @@ class MessageLookup extends MessageLookupByLibrary { "milliseconds": MessageLookupByLibrary.simpleMessage("ms"), "min": MessageLookupByLibrary.simpleMessage("MIN"), "minOrder": MessageLookupByLibrary.simpleMessage("Min order volume:"), - "minValue": m44, - "minValueBuy": m45, - "minValueOrder": m46, - "minValueSell": m47, - "minVolumeInput": m48, + "minValue": m61, + "minValueBuy": m62, + "minValueOrder": m63, + "minValueSell": m64, + "minVolumeInput": m65, "minVolumeIsTDH": MessageLookupByLibrary.simpleMessage( "Must be lower than sell amount"), "minVolumeTitle": MessageLookupByLibrary.simpleMessage("Min volume required"), "minVolumeToggle": MessageLookupByLibrary.simpleMessage("Use custom min volume"), + "minimizingWillTerminate": MessageLookupByLibrary.simpleMessage( + "Warning: Minimizing the app on iOS will terminate the activation process."), "minutes": MessageLookupByLibrary.simpleMessage("m"), - "mobileDataWarning": m49, + "mobileDataWarning": m66, + "moreInfo": MessageLookupByLibrary.simpleMessage("More Info"), "moreTab": MessageLookupByLibrary.simpleMessage("More"), - "multiActivateGas": m50, + "multiActivateGas": m67, "multiBaseAmtPlaceholder": MessageLookupByLibrary.simpleMessage("Amount"), "multiBasePlaceholder": MessageLookupByLibrary.simpleMessage("Coin"), "multiBaseSelectTitle": MessageLookupByLibrary.simpleMessage("Sell"), "multiConfirmCancel": MessageLookupByLibrary.simpleMessage("Cancel"), "multiConfirmConfirm": MessageLookupByLibrary.simpleMessage("Confirm"), - "multiConfirmTitle": m51, + "multiConfirmTitle": m68, "multiCreate": MessageLookupByLibrary.simpleMessage("Create"), "multiCreateOrder": MessageLookupByLibrary.simpleMessage("Order"), "multiCreateOrders": MessageLookupByLibrary.simpleMessage("Orders"), @@ -878,8 +971,8 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("Invalid amount"), "multiInvalidSellAmt": MessageLookupByLibrary.simpleMessage("Invalid sell amount"), - "multiLowGas": m52, - "multiLowerThanFee": m53, + "multiLowGas": m69, + "multiLowerThanFee": m70, "multiMaxSellAmt": MessageLookupByLibrary.simpleMessage("Max sell amount is"), "multiMinReceiveAmt": @@ -912,7 +1005,7 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("No items selected"), "noMatchingOrders": MessageLookupByLibrary.simpleMessage("No matching orders found"), - "noOrder": m54, + "noOrder": m71, "noOrderAvailable": MessageLookupByLibrary.simpleMessage("Click to create an order"), "noOrders": MessageLookupByLibrary.simpleMessage( @@ -926,7 +1019,8 @@ class MessageLookup extends MessageLookupByLibrary { "noTxs": MessageLookupByLibrary.simpleMessage("No Transactions"), "nonNumericInput": MessageLookupByLibrary.simpleMessage("The value must be numeric"), - "notEnoughGas": m55, + "none": MessageLookupByLibrary.simpleMessage("None"), + "notEnoughGas": m72, "notEnoughtBalanceForFee": MessageLookupByLibrary.simpleMessage( "Not enough balance for fees - trade a smaller amount"), "noteOnOrder": MessageLookupByLibrary.simpleMessage( @@ -934,24 +1028,24 @@ class MessageLookup extends MessageLookupByLibrary { "notePlaceholder": MessageLookupByLibrary.simpleMessage("Add a Note"), "noteTitle": MessageLookupByLibrary.simpleMessage("Note"), "nothingFound": MessageLookupByLibrary.simpleMessage("Nothing found"), - "notifSwapCompletedText": m56, + "notifSwapCompletedText": m73, "notifSwapCompletedTitle": MessageLookupByLibrary.simpleMessage("Swap completed"), - "notifSwapFailedText": m57, + "notifSwapFailedText": m74, "notifSwapFailedTitle": MessageLookupByLibrary.simpleMessage("Swap failed"), - "notifSwapStartedText": m58, + "notifSwapStartedText": m75, "notifSwapStartedTitle": MessageLookupByLibrary.simpleMessage("New swap started"), "notifSwapStatusTitle": MessageLookupByLibrary.simpleMessage("Swap status changed"), - "notifSwapTimeoutText": m59, + "notifSwapTimeoutText": m76, "notifSwapTimeoutTitle": MessageLookupByLibrary.simpleMessage("Swap timed out"), - "notifTxText": m60, + "notifTxText": m77, "notifTxTitle": MessageLookupByLibrary.simpleMessage("Incoming transaction"), - "numberAssets": m61, + "numberAssets": m78, "officialPressRelease": MessageLookupByLibrary.simpleMessage("Official press release"), "okButton": MessageLookupByLibrary.simpleMessage("Ok"), @@ -960,14 +1054,16 @@ class MessageLookup extends MessageLookupByLibrary { "oldLogsUsed": MessageLookupByLibrary.simpleMessage("Space used"), "openMessage": MessageLookupByLibrary.simpleMessage("Open Error Message"), - "orderCancel": m62, + "orderBookLess": MessageLookupByLibrary.simpleMessage("Less"), + "orderBookMore": MessageLookupByLibrary.simpleMessage("More"), + "orderCancel": m79, "orderCreated": MessageLookupByLibrary.simpleMessage("Order created"), "orderCreatedInfo": MessageLookupByLibrary.simpleMessage("Order successfully created"), "orderDetailsAddress": MessageLookupByLibrary.simpleMessage("Address"), "orderDetailsCancel": MessageLookupByLibrary.simpleMessage("Cancel"), - "orderDetailsExpedient": m63, - "orderDetailsExpensive": m64, + "orderDetailsExpedient": m80, + "orderDetailsExpensive": m81, "orderDetailsFor": MessageLookupByLibrary.simpleMessage("for"), "orderDetailsIdentical": MessageLookupByLibrary.simpleMessage("Identical to CEX"), @@ -980,7 +1076,7 @@ class MessageLookup extends MessageLookupByLibrary { "Open Details on single tap and select Order by long tap"), "orderDetailsSpend": MessageLookupByLibrary.simpleMessage("Spend"), "orderDetailsTitle": MessageLookupByLibrary.simpleMessage("Details"), - "orderFilled": m65, + "orderFilled": m82, "orderMatched": MessageLookupByLibrary.simpleMessage("Order matched"), "orderMatching": MessageLookupByLibrary.simpleMessage("Order matching"), "orderTypePartial": MessageLookupByLibrary.simpleMessage(" Order"), @@ -989,9 +1085,9 @@ class MessageLookup extends MessageLookupByLibrary { "orders": MessageLookupByLibrary.simpleMessage("orders"), "ordersActive": MessageLookupByLibrary.simpleMessage("Active"), "ordersHistory": MessageLookupByLibrary.simpleMessage("History"), - "ordersTableAmount": m66, - "ordersTablePrice": m67, - "ordersTableTotal": m68, + "ordersTableAmount": m83, + "ordersTablePrice": m84, + "ordersTableTotal": m85, "overwrite": MessageLookupByLibrary.simpleMessage("Overwrite"), "ownOrder": MessageLookupByLibrary.simpleMessage(" This is your own order!"), @@ -1002,6 +1098,8 @@ class MessageLookup extends MessageLookupByLibrary { "paidWith": MessageLookupByLibrary.simpleMessage("Paid with "), "passwordRequirement": MessageLookupByLibrary.simpleMessage( "Password must contain at least 12 characters, with one lower-case, one upper-case and one special symbol."), + "pastTransactionsFromDate": MessageLookupByLibrary.simpleMessage( + "Your wallet will show your past transactions made after the specified date."), "paymentUriDetailsAccept": MessageLookupByLibrary.simpleMessage("Pay"), "paymentUriDetailsAcceptQuestion": MessageLookupByLibrary.simpleMessage( "Do you accept this transaction?"), @@ -1014,8 +1112,11 @@ class MessageLookup extends MessageLookupByLibrary { "paymentUriDetailsDeny": MessageLookupByLibrary.simpleMessage("Cancel"), "paymentUriDetailsTitle": MessageLookupByLibrary.simpleMessage("Payment Requested"), - "paymentUriInactiveCoin": m69, + "paymentUriInactiveCoin": m86, "placeOrder": MessageLookupByLibrary.simpleMessage("Place your order"), + "pleaseAcceptAllCoinActivationRequests": + MessageLookupByLibrary.simpleMessage( + "Please accept all special coin activation requests or deselect the coins."), "pleaseAddCoin": MessageLookupByLibrary.simpleMessage("Please Add A Coin"), "pleaseRestart": MessageLookupByLibrary.simpleMessage( @@ -1035,23 +1136,25 @@ class MessageLookup extends MessageLookupByLibrary { "protectionCtrlWarning": MessageLookupByLibrary.simpleMessage( "Warning, this atomic swap is not dPoW protected. "), "pubkey": MessageLookupByLibrary.simpleMessage("Pubkey"), + "qrCodeScanner": + MessageLookupByLibrary.simpleMessage("QR Code Scanner"), "question_1": MessageLookupByLibrary.simpleMessage( "Do you store my private keys?"), - "question_10": m70, - "question_2": m71, + "question_10": m87, + "question_2": m88, "question_3": MessageLookupByLibrary.simpleMessage( "How long does each atomic swap take?"), "question_4": MessageLookupByLibrary.simpleMessage( "Do I need to be online for the duration of the swap?"), - "question_5": m72, + "question_5": m89, "question_6": MessageLookupByLibrary.simpleMessage( "Do you provide user support?"), "question_7": MessageLookupByLibrary.simpleMessage( "Do you have country restrictions?"), - "question_8": m73, - "question_9": m74, + "question_8": m90, + "question_9": m91, "rebrandingAnnouncement": MessageLookupByLibrary.simpleMessage( - "It\'s a new era! We have officially changed our name from \'AtomicDEX\' to \'Komodo Wallet\'"), + "It\'s a new era! We have officially rebranded from \'AtomicDEX\' to \'Komodo Wallet\'"), "receive": MessageLookupByLibrary.simpleMessage("RECEIVE"), "receiveLower": MessageLookupByLibrary.simpleMessage("Receive"), "recommendSeedMessage": MessageLookupByLibrary.simpleMessage( @@ -1088,7 +1191,7 @@ class MessageLookup extends MessageLookupByLibrary { "rewardsReadMore": MessageLookupByLibrary.simpleMessage( "Read more about KMD active user rewards"), "rewardsReceive": MessageLookupByLibrary.simpleMessage("Receive"), - "rewardsSuccess": m75, + "rewardsSuccess": m92, "rewardsTableFiat": MessageLookupByLibrary.simpleMessage("Fiat"), "rewardsTableRewards": MessageLookupByLibrary.simpleMessage("Rewards,\nKMD"), @@ -1098,15 +1201,15 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("Rewards information:"), "rewardsTableUXTO": MessageLookupByLibrary.simpleMessage("UTXO amt,\nKMD"), - "rewardsTimeDays": m76, - "rewardsTimeHours": m77, - "rewardsTimeMin": m78, + "rewardsTimeDays": m93, + "rewardsTimeHours": m94, + "rewardsTimeMin": m95, "rewardsTitle": MessageLookupByLibrary.simpleMessage("Rewards information"), "russianLanguage": MessageLookupByLibrary.simpleMessage("Russian"), "saveMerged": MessageLookupByLibrary.simpleMessage("Save merged"), "scrollToContinue": MessageLookupByLibrary.simpleMessage( - "Scroll to bottom to continue..."), + "Scroll to the bottom to continue..."), "searchFilterCoin": MessageLookupByLibrary.simpleMessage("Search a coin"), "searchFilterSubtitleAVX": @@ -1145,13 +1248,15 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("Select all Test Assets"), "searchFilterSubtitleUBQ": MessageLookupByLibrary.simpleMessage("Select all Ubiq coins"), + "searchFilterSubtitleZHTLC": + MessageLookupByLibrary.simpleMessage("Select all ZHTLC coins"), "searchFilterSubtitleutxo": MessageLookupByLibrary.simpleMessage("Select all UTXO coins"), "searchForTicker": MessageLookupByLibrary.simpleMessage("Search for Ticker"), "seconds": MessageLookupByLibrary.simpleMessage("s"), "security": MessageLookupByLibrary.simpleMessage("Security"), - "seeOrders": m79, + "seeOrders": m96, "seeTxHistory": MessageLookupByLibrary.simpleMessage("View Transaction History"), "seedPhrase": MessageLookupByLibrary.simpleMessage("Seed Phrase"), @@ -1166,6 +1271,7 @@ class MessageLookup extends MessageLookupByLibrary { "Select the coin you want to BUY"), "selectCoinToSell": MessageLookupByLibrary.simpleMessage( "Select the coin you want to SELL"), + "selectDate": MessageLookupByLibrary.simpleMessage("Select a Date"), "selectFileImport": MessageLookupByLibrary.simpleMessage("Select file"), "selectLanguage": MessageLookupByLibrary.simpleMessage("Select Language"), @@ -1192,33 +1298,36 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("Languages"), "settings": MessageLookupByLibrary.simpleMessage("Settings"), "share": MessageLookupByLibrary.simpleMessage("Share"), - "shareAddress": m80, + "shareAddress": m97, + "shouldScanPastTransaction": m98, + "showAddress": MessageLookupByLibrary.simpleMessage("Show Address"), "showDetails": MessageLookupByLibrary.simpleMessage("Show Details"), "showMyOrders": MessageLookupByLibrary.simpleMessage("Show My Orders"), + "showingOrders": m99, "signInWithPassword": MessageLookupByLibrary.simpleMessage("Sign in with password"), "signInWithSeedPhrase": MessageLookupByLibrary.simpleMessage( "Forgot the password? Restore wallet from seed"), "simple": MessageLookupByLibrary.simpleMessage("Simple"), "simpleTradeActivate": MessageLookupByLibrary.simpleMessage("Activate"), - "simpleTradeBuyHint": m81, + "simpleTradeBuyHint": m100, "simpleTradeBuyTitle": MessageLookupByLibrary.simpleMessage("Buy"), "simpleTradeClose": MessageLookupByLibrary.simpleMessage("Close"), - "simpleTradeMaxActiveCoins": m82, - "simpleTradeNotActive": m83, + "simpleTradeMaxActiveCoins": m101, + "simpleTradeNotActive": m102, "simpleTradeRecieve": MessageLookupByLibrary.simpleMessage("Receive"), - "simpleTradeSellHint": m84, + "simpleTradeSellHint": m103, "simpleTradeSellTitle": MessageLookupByLibrary.simpleMessage("Sell"), "simpleTradeSend": MessageLookupByLibrary.simpleMessage("Send"), "simpleTradeShowLess": MessageLookupByLibrary.simpleMessage("Show less"), "simpleTradeShowMore": MessageLookupByLibrary.simpleMessage("Show more"), - "simpleTradeUnableActivate": m85, + "simpleTradeUnableActivate": m104, "skip": MessageLookupByLibrary.simpleMessage("Skip"), "snackbarDismiss": MessageLookupByLibrary.simpleMessage("Dismiss"), - "soundCantPlayThatMsg": m86, - "soundPlayedWhen": m87, + "soundCantPlayThatMsg": m105, + "soundPlayedWhen": m106, "soundSettingsLink": MessageLookupByLibrary.simpleMessage("Sound"), "soundSettingsTitle": MessageLookupByLibrary.simpleMessage("Sound settings"), @@ -1230,19 +1339,21 @@ class MessageLookup extends MessageLookupByLibrary { "soundsNote": MessageLookupByLibrary.simpleMessage( "Note that you can set your custom sounds in application settings."), "spanishLanguage": MessageLookupByLibrary.simpleMessage("Spanish"), + "startDate": MessageLookupByLibrary.simpleMessage("Start Date"), + "startSwap": MessageLookupByLibrary.simpleMessage("Start Swap"), "step": MessageLookupByLibrary.simpleMessage("Step"), "success": MessageLookupByLibrary.simpleMessage("Success!"), "support": MessageLookupByLibrary.simpleMessage("Support"), - "supportLinksDesc": m88, + "supportLinksDesc": m107, "swap": MessageLookupByLibrary.simpleMessage("swap"), "swapCurrent": MessageLookupByLibrary.simpleMessage("Current"), "swapDetailTitle": MessageLookupByLibrary.simpleMessage("CONFIRM EXCHANGE DETAILS"), "swapEstimated": MessageLookupByLibrary.simpleMessage("Estimate"), "swapFailed": MessageLookupByLibrary.simpleMessage("Swap failed"), - "swapGasActivate": m89, - "swapGasAmount": m90, - "swapGasAmountRequired": m91, + "swapGasActivate": m108, + "swapGasAmount": m109, + "swapGasAmountRequired": m110, "swapOngoing": MessageLookupByLibrary.simpleMessage("Swap ongoing"), "swapProgress": MessageLookupByLibrary.simpleMessage("Progress details"), @@ -1251,6 +1362,13 @@ class MessageLookup extends MessageLookupByLibrary { "swapTotal": MessageLookupByLibrary.simpleMessage("Total"), "swapUUID": MessageLookupByLibrary.simpleMessage("Swap UUID"), "switchTheme": MessageLookupByLibrary.simpleMessage("Switch Theme"), + "syncFromDate": + MessageLookupByLibrary.simpleMessage("Sync from specified date"), + "syncFromSaplingActivation": MessageLookupByLibrary.simpleMessage( + "Sync from sapling activation"), + "syncNewTransactions": + MessageLookupByLibrary.simpleMessage("Sync new transactions"), + "syncTransactionsQuestion": m111, "tagAVX20": MessageLookupByLibrary.simpleMessage("AVX20"), "tagBEP20": MessageLookupByLibrary.simpleMessage("BEP20"), "tagERC20": MessageLookupByLibrary.simpleMessage("ERC20"), @@ -1265,6 +1383,7 @@ class MessageLookup extends MessageLookupByLibrary { "tagQRC20": MessageLookupByLibrary.simpleMessage("QRC20"), "tagSBCH": MessageLookupByLibrary.simpleMessage("SBCH"), "tagUBQ": MessageLookupByLibrary.simpleMessage("UBQ"), + "tagZHTLC": MessageLookupByLibrary.simpleMessage("ZHTLC"), "takerOrder": MessageLookupByLibrary.simpleMessage("Taker Order"), "timeOut": MessageLookupByLibrary.simpleMessage("Timeout"), "titleCreatePassword": @@ -1290,6 +1409,12 @@ class MessageLookup extends MessageLookupByLibrary { "Failed to calculate trade fees"), "tradingFee": MessageLookupByLibrary.simpleMessage("trading fee:"), "tradingMode": MessageLookupByLibrary.simpleMessage("Trading Mode:"), + "transactionAddress": + MessageLookupByLibrary.simpleMessage("Transaction Address"), + "transactionHidden": + MessageLookupByLibrary.simpleMessage("Transaction Hidden"), + "transactionHiddenPhishing": MessageLookupByLibrary.simpleMessage( + "This transaction was hidden due to a possible phishing attempt."), "tryRestarting": MessageLookupByLibrary.simpleMessage( "If even then some coins are still not activated, try restarting the app."), "turkishLanguage": MessageLookupByLibrary.simpleMessage("Turkish"), @@ -1303,24 +1428,24 @@ class MessageLookup extends MessageLookupByLibrary { "txLimitExceeded": MessageLookupByLibrary.simpleMessage( "Too many requests.\nTransactions history requests limit exceeded.\nPlease try again later."), "txNotConfirmed": MessageLookupByLibrary.simpleMessage("UNCONFIRMED"), - "txleft": m92, + "txleft": m112, "ukrainianLanguage": MessageLookupByLibrary.simpleMessage("Ukrainian"), "unlock": MessageLookupByLibrary.simpleMessage("unlock"), "unlockFunds": MessageLookupByLibrary.simpleMessage("Unlock Funds"), - "unlockSuccess": m93, + "unlockSuccess": m113, "unspendable": MessageLookupByLibrary.simpleMessage("unspendable"), "updatesAvailable": MessageLookupByLibrary.simpleMessage("New version available"), "updatesChecking": MessageLookupByLibrary.simpleMessage("Checking for updates..."), - "updatesCurrentVersion": m94, + "updatesCurrentVersion": m114, "updatesNotifAvailable": MessageLookupByLibrary.simpleMessage( "New version available. Please update."), - "updatesNotifAvailableVersion": m95, + "updatesNotifAvailableVersion": m115, "updatesNotifTitle": MessageLookupByLibrary.simpleMessage("Update available"), "updatesSkip": MessageLookupByLibrary.simpleMessage("Skip for now"), - "updatesTitle": m96, + "updatesTitle": m116, "updatesUpToDate": MessageLookupByLibrary.simpleMessage("Already up to date"), "updatesUpdate": MessageLookupByLibrary.simpleMessage("Update"), @@ -1346,24 +1471,26 @@ class MessageLookup extends MessageLookupByLibrary { "warningOkBtn": MessageLookupByLibrary.simpleMessage("Ok"), "warningShareLogs": MessageLookupByLibrary.simpleMessage( "Warning - in special cases this log data contains sensitive information that can be used to spend coins from failed swaps!"), - "weFailedTo": m97, - "weFailedToActivate": m98, - "welcomeInfo": m99, + "weFailedTo": m117, + "weFailedToActivate": m118, + "welcomeInfo": m119, "welcomeLetSetUp": MessageLookupByLibrary.simpleMessage("LET\'S GET SET UP!"), "welcomeTitle": MessageLookupByLibrary.simpleMessage("WELCOME"), "welcomeWallet": MessageLookupByLibrary.simpleMessage("wallet"), "willBeRedirected": MessageLookupByLibrary.simpleMessage( "You will be redirected to portfolio page on completion."), + "willTakeTime": MessageLookupByLibrary.simpleMessage( + "This will take a while and the app must be kept in the foreground.\nTerminating the app while activation is in progress could lead to issues."), "withdraw": MessageLookupByLibrary.simpleMessage("Withdraw"), - "withdrawCameraAccessText": m100, + "withdrawCameraAccessText": m120, "withdrawCameraAccessTitle": MessageLookupByLibrary.simpleMessage("Access Denied"), "withdrawConfirm": MessageLookupByLibrary.simpleMessage("Confirm Withdrawal"), "withdrawConfirmError": MessageLookupByLibrary.simpleMessage( "Something went wrong. Try again later."), - "withdrawValue": m101, + "withdrawValue": m121, "wrongCoinSpan1": MessageLookupByLibrary.simpleMessage( "You are trying to scan a payment QR code for "), "wrongCoinSpan2": @@ -1385,7 +1512,7 @@ class MessageLookup extends MessageLookupByLibrary { "you have an order that new orders can match with"), "youAreSending": MessageLookupByLibrary.simpleMessage("You are sending:"), - "youWillReceiveClaim": m102, + "youWillReceiveClaim": m122, "youWillReceived": MessageLookupByLibrary.simpleMessage("You will receive: "), "yourWallet": MessageLookupByLibrary.simpleMessage("your wallet") diff --git a/lib/l10n/messages_ru.dart b/lib/l10n/messages_ru.dart index b5be76b42..3ed1a81ad 100644 --- a/lib/l10n/messages_ru.dart +++ b/lib/l10n/messages_ru.dart @@ -19,258 +19,299 @@ typedef String MessageIfAbsent(String messageStr, List args); class MessageLookup extends MessageLookupByLibrary { String get localeName => 'ru'; - static m0(name) => "${name} активирован успешно!"; + static m0(protocolName) => "Активировать монеты ${protocolName}?"; - static m1(title) => "Отображаются только контакты с ${title} адресами"; + static m1(coinName) => "Активация ${coinName}"; - static m2(abbr) => + static m2(coinName) => "${coinName} Активация"; + + static m3(protocolName) => "${protocolName} активируется"; + + static m4(name) => "${name} активирован успешно!"; + + static m5(title) => "Отображаются только контакты с ${title} адресами"; + + static m6(abbr) => "Вы не можете отправить средства на адрес ${abbr}, потому что ${abbr} не активирован. Пожалуйста, перейдите в портфолио."; - static m3(appName) => + static m7(appName) => "Нет! Мы никогда не храним конфиденциальные данные, включая ваши приватные ключи, seed ключи или PIN-код. Эти данные хранятся только на устройстве пользователя и никуда не передаются. Вы полностью контролируете свои активы."; - static m4(appName) => - "${appName} доступен для мобильных устройств на Android и iPhone, а также как десктопное приложение на операционных системах Windows, Mac и Linux."; + static m8(appName) => + "Приложение ${appName} доступно для мобильных устройств на Android и iPhone, а также для компьютеров в операционных системах Windows, Mac и Linux."; - static m5(appName) => + static m9(appName) => "Другие DEX обычно позволяют торговать только активами, принадлежащими к одному блокчейну, используют прокси-токены и разрешают размещать только один ордер, использующий ваш баланс.\n\n${appName} позволяет вам торговать между разными блокчейнами без использования прокси-токенов. Вы также можете разместить несколько заказов, используя одни и те же средства. Например, вы можете выставить ордера на продажу 0,1 BTC за KMD, QTUM и VRSC - первый исполненный ордер автоматически отменит все остальные ордера."; - static m6(appName) => + static m10(appName) => "Есть несколько факторов, определяющих время обработки каждого свопа. Время блокировки торгуемых активов зависит от каждой сети (биткоин блокчейн обычно является самым медленным). Кроме того, пользователь может редактировать параметры безопасности. Например, в ${appName} можно установить количество подтверждений, после которых KMD транзакция считается успешной, равным 3, что сокращает время обмена по сравнению с транзакциями, ожидающими нотариального заверения."; - static m7(appName) => + static m11(appName) => "При торговле на ${appName} необходимо учитывать две категории комиссий.\n\n1. ${appName} взимает приблизительно 0,13% (1/777 объема торгов, но не ниже 0,0001) в качестве комиссии за торговлю для тейкер ордеров, а для ордеров-мейкеров комиссия равна нулю.\n\n2. Как мейкеры, так и тейкеры должны платят обычные комиссии за транзакции в используемых блокчейнах при совершении атомарного свопа .\n\nКомиссиии сети могут сильно различаться в зависимости от выбранной вами торговой пары."; - static m8(name, link, appName, appCompanyShort) => + static m12(name, link, appName, appCompanyShort) => "Да! ${appName} предлагает поддержку через ${name} сервер ${appCompanyShort} . Команда и сообщество всегда рады помочь!"; - static m9(appName) => + static m13(appName) => "Нет! ${appName} полностью децентрализована. Ограничить доступ пользователей третьими лицами невозможно."; - static m10(appName, appCompanyShort) => + static m14(appName, appCompanyShort) => "${appName} разработан командой ${appCompanyShort}. ${appCompanyShort} - один из наиболее авторитетных блокчейн-проектов, работающих над инновационными решениями, такими как атомарные свопы, delayed Proof of Work и совместимая многоцепочечная архитектура."; - static m11(appName) => - "Конечно! Вы можете обратиться к нашей документации для разработчиков для получения более подробной информации или связаться с нами по вопросам партнерства. У вас есть конкретный технический вопрос? Разработчики сообщества ${appName} всегда готовы помочь!"; + static m15(appName) => + "Абсолютно! Вы можете прочитать нашу документацию для разработчиков для получения более подробной информации или связаться с нами по вопросам партнерства. Есть конкретный технический вопрос? Сообщество разработчиков ${appName} всегда готово помочь!"; + + static m16(coinName1, coinName2) => "на основе ${coinName1}/${coinName2}"; - static m12(batteryLevelCritical) => + static m17(batteryLevelCritical) => "Критический заряд батареи (${batteryLevelCritical}%) для безопасного выполнения свопа. Пожалуйста поставьте его на зарядку и повторите попытку."; - static m13(batteryLevelLow) => + static m18(batteryLevelLow) => "Заряд батареи ниже ${batteryLevelLow}%. Пожалуйста подумайте о зарядке телефона."; - static m14(seconde) => + static m19(seconde) => "Поиск сделки в процессе, пожалуйста , подождите ${seconde} секунд!"; - static m15(index) => "Введите ${index} слово"; + static m20(index) => "Введите ${index} слово"; + + static m21(index) => "Какое ${index} слово в вашем seed-ключе?"; + + static m22(coin) => "Активация ${coin} отменена"; - static m16(index) => "Какое ${index} слово в вашем seed-ключе?"; + static m23(coin) => "Успешно активирована ${coin}"; - static m17(name) => "Вы уверены, что хотите удалить ${name}?"; + static m24(protocolName) => "Монеты ${protocolName} активированы"; - static m18(iUnderstand) => + static m25(protocolName) => "Монеты ${protocolName} успешно активированы"; + + static m26(protocolName) => "Монеты ${protocolName} не активированы"; + + static m27(name) => "Вы уверены, что хотите удалить ${name}?"; + + static m28(iUnderstand) => "Пользовательские исходные фразы могут быть менее безопасными и их легче взломать, чем сгенерированные исходные фразы или закрытый ключ (WIF), совместимые с BIP39. Чтобы подтвердить, что вы понимаете риск и знаете, что делаете, введите \"${iUnderstand}\" в поле ниже."; - static m19(abbr) => "Введите ${abbr} адрес"; + static m29(coinName) => "получить комиссию за транзакцию ${coinName}"; + + static m30(coinName) => "отправить комиссию за транзакцию ${coinName}"; - static m21(gas) => "Не достаточно газа - используйте минимум ${gas} Gwei"; + static m31(abbr) => "Введите ${abbr} адрес"; - static m22(appName, appCompanyLong) => + static m33(gas) => "Не достаточно газа - используйте минимум ${gas} Gwei"; + + static m34(appName, appCompanyLong) => "This End-User License Agreement (\'EULA\') is a legal agreement between you and ${appCompanyLong}.\n\nThis EULA agreement governs your acquisition and use of our ${appName} mobile software (\'Software\', \'Mobile Application\', \'Application\' or \'App\') directly from ${appCompanyLong} or indirectly through a ${appCompanyLong} authorized entity, reseller or distributor (a \'Distributor\').\nPlease read this EULA agreement carefully before completing the installation process and using the ${appName} mobile software. It provides a license to use the ${appName} mobile software and contains warranty information and liability disclaimers.\nIf you register for the beta program of the ${appName} mobile software, this EULA agreement will also govern that trial. By clicking \'accept\' or installing and/or using the ${appName} mobile software, you are confirming your acceptance of the Software and agreeing to become bound by the terms of this EULA agreement.\nIf you are entering into this EULA agreement on behalf of a company or other legal entity, you represent that you have the authority to bind such entity and its affiliates to these terms and conditions. If you do not have such authority or if you do not agree with the terms and conditions of this EULA agreement, do not install or use the Software, and you must not accept this EULA agreement.\nThis EULA agreement shall apply only to the Software supplied by ${appCompanyLong} herewith regardless of whether other software is referred to or described herein. The terms also apply to any ${appCompanyLong} updates, supplements, Internet-based services, and support services for the Software, unless other terms accompany those items on delivery. If so, those terms apply.\n\nLICENSE GRANT\n\n${appCompanyLong} hereby grants you a personal, non-transferable, non-exclusive license to use the ${appName} mobile software on your devices in accordance with the terms of this EULA agreement.\n\nYou are permitted to load the ${appName} mobile software (for example a PC, laptop, mobile or tablet) under your control. You are responsible for ensuring your device meets the minimum security and resource requirements of the ${appName} mobile software.\n\nYou are not permitted to:\n(a) edit, alter, modify, adapt, translate or otherwise change the whole or any part of the Software nor permit the whole or any part of the Software to be combined with or become incorporated in any other software, nor decompile, disassemble or reverse engineer the Software or attempt to do any such things;\n(b) reproduce, copy, distribute, resell or otherwise use the Software for any commercial purpose;\n(c) use the Software in any way which breaches any applicable local, national or international law;\n(d) use the Software for any purpose that ${appCompanyLong} considers is a breach of this EULA agreement.\n\nINTELLECTUAL PROPERTY AND OWNERSHIP\n\n${appCompanyLong} shall at all times retain ownership of the Software as originally downloaded by you and all subsequent downloads of the Software by you. The Software (and the copyright, and other intellectual property rights of whatever nature in the Software, including any modifications made thereto) are and shall remain the property of ${appCompanyLong}.\n\n${appCompanyLong} reserves the right to grant licenses to use the Software to third parties.\n\nTERMINATION\n\nThis EULA agreement is effective from the date you first use the Software and shall continue until terminated. You may terminate it at any time upon written notice to ${appCompanyLong}.\nIt will also terminate immediately if you fail to comply with any term of this EULA agreement. Upon such termination, the licenses granted by this EULA agreement will immediately terminate and you agree to stop all access and use of the Software. The provisions that by their nature continue and survive will survive any termination of this EULA agreement.\n\nGOVERNING LAW\n\nThis EULA agreement, and any dispute arising out of or in connection with this EULA agreement, shall be governed by and construed in accordance with the laws of Vietnam.\n\nThis document was last updated on January 31st, 2020"; - static m23(appCompanyLong) => + static m35(appCompanyLong) => "${appCompanyLong} is the owner and/or authorised user of all trademarks, service marks, design marks, patents, copyrights, database rights and all other intellectual property appearing on or contained within the application, unless otherwise indicated. All information, text, material, graphics, software and advertisements on the application interface are copyright of ${appCompanyLong}, its suppliers and licensors, unless otherwise expressly indicated by ${appCompanyLong}. \nExcept as provided in the Terms, use of the application does not grant You any right, title, interest or license to any such intellectual property You may have access to on the application. \nWe own the rights, or have permission to use, the trademarks listed in our application. You are not authorised to use any of those trademarks without our written authorization – doing so would constitute a breach of our or another party’s intellectual property rights. \nAlternatively, we might authorise You to use the content in our application if You previously contact us and we agree in writing."; - static m24(appCompanyShort, appCompanyLong) => + static m36(appCompanyShort, appCompanyLong) => "${appCompanyLong} cannot guarantee the safety or security of your computer systems. We do not accept liability for any loss or corruption of electronically stored data or any damage to any computer system occurred in connection with the use of the application or of the user content.\n${appCompanyLong} makes no representation or warranty of any kind, express or implied, as to the operation of the application or the user content. You expressly agree that your use of the application is entirely at your sole risk.\nYou agree that the content provided in the application and the user content do not constitute financial product, legal or taxation advice, and You agree on not representing the user content or the application as such.\nTo the extent permitted by current legislation, the application is provided on an “as is, as available” basis.\n\n${appCompanyLong} expressly disclaims all responsibility for any loss, injury, claim, liability, or damage, or any indirect, incidental, special or consequential damages or loss of profits whatsoever resulting from, arising out of or in any way related to:\n(a) any errors in or omissions of the application and/or the user content, including but not limited to technical inaccuracies and typographical errors;\n(b) any third party website, application or content directly or indirectly accessed through links in the application, including but not limited to any errors or omissions;\n(c) the unavailability of the application or any portion of it;\n(d) your use of the application;\n(e) your use of any equipment or software in connection with the application.\n\nAny Services offered in connection with the Platform are provided on an \'as is\' basis, without any representation or warranty, whether express, implied or statutory. To the maximum extent permitted by applicable law, we specifically disclaim any implied warranties of title, merchantability, suitability for a particular purpose and/or non-infringement. We do not make any representations or warranties that use of the Platform will be continuous, uninterrupted, timely, or error-free.\nWe make no warranty that any Platform will be free from viruses, malware, or other related harmful material and that your ability to access any Platform will be uninterrupted. Any defects or malfunction in the product should be directed to the third party offering the Platform, not to ${appCompanyShort}.\nWe will not be responsible or liable to You for any loss of any kind, from action taken, or taken in reliance on the material or information contained in or through the Platform.\nThis is experimental and unfinished software. Use at your own risk. No warranty for any kind of damage. By using this application you agree to this terms and conditions."; - static m25(appCompanyLong) => + static m37(appCompanyLong) => "You agree and understand that there are risks associated with utilizing Services involving Virtual Currencies including, but not limited to, the risk of failure of hardware, software and internet connections, the risk of malicious software introduction, and the risk that third parties may obtain unauthorized access to information stored within your Wallet, including but not limited to your public and private keys. You agree and understand that ${appCompanyLong} will not be responsible for any communication failures, disruptions, errors, distortions or delays You may experience when using the Services, however caused.\nYou accept and acknowledge that there are risks associated with utilizing any virtual currency network, including, but not limited to, the risk of unknown vulnerabilities in or unanticipated changes to the network protocol. You acknowledge and accept that ${appCompanyLong} has no control over any cryptocurrency network and will not be responsible for any harm occurring as a result of such risks, including, but not limited to, the inability to reverse a transaction, and any losses in connection therewith due to erroneous or fraudulent actions.\nThe risk of loss in using Services involving Virtual Currencies may be substantial and losses may occur over a short period of time. In addition, price and liquidity are subject to significant fluctuations that may be unpredictable.\nVirtual Currencies are not legal tender and are not backed by any sovereign government. In addition, the legislative and regulatory landscape around Virtual Currencies is constantly changing and may affect your ability to use, transfer, or exchange Virtual Currencies.\nCFDs are complex instruments and come with a high risk of losing money rapidly due to leverage. 80.6% of retail investor accounts lose money when trading CFDs with this provider. You should consider whether You understand how CFDs work and whether You can afford to take the high risk of losing your money."; - static m26(appCompanyLong) => + static m38(appCompanyLong) => "You agree to indemnify, defend and hold harmless ${appCompanyLong}, its officers, directors, employees, agents, licensors, suppliers and any third party information providers to the application from and against all losses, expenses, damages and costs, including reasonable lawyer fees, resulting from any violation of the Terms by You.\nYou also agree to indemnify ${appCompanyLong} against any claims that information or material which You have submitted to ${appCompanyLong} is in violation of any law or in breach of any third party rights (including, but not limited to, claims in respect of defamation, invasion of privacy, breach of confidence, infringement of copyright or infringement of any other intellectual property right)."; - static m27(appCompanyLong) => + static m39(appCompanyLong) => "In order to be completed, any Virtual Currency transaction created with the ${appCompanyLong} must be confirmed and recorded in the Virtual Currency ledger associated with the relevant Virtual Currency network. Such networks are decentralized, peer-to-peer networks supported by independent third parties, which are not owned, controlled or operated by ${appCompanyLong}.\n${appCompanyLong} has no control over any Virtual Currency network and therefore cannot and does not ensure that any transaction details You submit via our Services will be confirmed on the relevant Virtual Currency network. You agree and understand that the transaction details You submit via our Services may not be completed, or may be substantially delayed, by the Virtual Currency network used to process the transaction. We do not guarantee that the Wallet can transfer title or right in any Virtual Currency or make any warranties whatsoever with regard to title.\nOnce transaction details have been submitted to a Virtual Currency network, we cannot assist You to cancel or otherwise modify your transaction or transaction details. ${appCompanyLong} has no control over any Virtual Currency network and does not have the ability to facilitate any cancellation or modification requests.\nIn the event of a Fork, ${appCompanyLong} may not be able to support activity related to your Virtual Currency. You agree and understand that, in the event of a Fork, the transactions may not be completed, completed partially, incorrectly completed, or substantially delayed. ${appCompanyLong} is not responsible for any loss incurred by You caused in whole or in part, directly or indirectly, by a Fork.\nIn no event shall ${appCompanyLong}, its affiliates and service providers, or any of their respective officers, directors, agents, employees or representatives, be liable for any lost profits or any special, incidental, indirect, intangible, or consequential damages, whether based on contract, tort, negligence, strict liability, or otherwise, arising out of or in connection with authorized or unauthorized use of the services, or this agreement, even if an authorized representative of ${appCompanyLong} has been advised of, has known of, or should have known of the possibility of such damages. \nFor example (and without limiting the scope of the preceding sentence), You may not recover for lost profits, lost business opportunities, or other types of special, incidental, indirect, intangible, or consequential damages. Some jurisdictions do not allow the exclusion or limitation of incidental or consequential damages, so the above limitation may not apply to You. \nWe will not be responsible or liable to You for any loss and take no responsibility for damages or claims arising in whole or in part, directly or indirectly from: \n(a) user error such as forgotten passwords, incorrectly constructed transactions, or mistyped Virtual Currency addresses; \n(b) server failure or data loss; \n(c) corrupted or otherwise non-performing Wallets or Wallet files; \n(d) unauthorized access to applications; \n(e) any unauthorized activities, including without limitation the use of hacking, viruses, phishing, brute forcing or other means of attack against the Services."; - static m28(appCompanyShort, appCompanyLong) => + static m40(appCompanyShort, appCompanyLong) => "For the avoidance of doubt, ${appCompanyLong} does not provide investment, tax or legal advice, nor does ${appCompanyLong} broker trades on your behalf. All ${appCompanyLong} trades are executed automatically, based on the parameters of your order instructions and in accordance with posted Trade execution procedures, and You are solely responsible for determining whether any investment, investment strategy or related transaction is appropriate for You based on your personal investment objectives, financial circumstances and risk tolerance. You should consult your legal or tax professional regarding your specific situation. Neither ${appCompanyShort} nor its owners, members, officers, directors, partners, consultants, nor anyone involved in the publication of this application, is a registered investment adviser or broker-dealer or associated person with a registered investment adviser or broker-dealer and none of the foregoing make any recommendation that the purchase or sale of crypto-assets or securities of any company profiled in the mobile Application is suitable or advisable for any person or that an investment or transaction in such crypto-assets or securities will be profitable. The information contained in the mobile Application is not intended to be, and shall not constitute, an offer to sell or the solicitation of any offer to buy any crypto-asset or security. The information presented in the mobile Application is provided for informational purposes only and is not to be treated as advice or a recommendation to make any specific investment or transaction. Please, consult with a qualified professional before making any decisions. The opinions and analysis included in this applications are based on information from sources deemed to be reliable and are provided “as is” in good faith. ${appCompanyShort} makes no representation or warranty, expressed, implied, or statutory, as to the accuracy or completeness of such information, which may be subject to change without notice. ${appCompanyShort} shall not be liable for any errors or any actions taken in relation to the above. Statements of opinion and belief are those of the authors and/or editors who contribute to this application, and are based solely upon the information possessed by such authors and/or editors. No inference should be drawn that ${appCompanyShort} or such authors or editors have any special or greater knowledge about the crypto-assets or companies profiled or any particular expertise in the industries or markets in which the profiled crypto-assets and companies operate and compete. Information on this application is obtained from sources deemed to be reliable; however, ${appCompanyShort} takes no responsibility for verifying the accuracy of such information and makes no representation that such information is accurate or complete. Certain statements included in this application may be forward-looking statements based on current expectations. ${appCompanyShort} makes no representation and provides no assurance or guarantee that such forward-looking statements will prove to be accurate. Persons using the ${appCompanyShort} application are urged to consult with a qualified professional with respect to an investment or transaction in any crypto-asset or company profiled herein. Additionally, persons using this application expressly represent that the content in this application is not and will not be a consideration in such persons’ investment or transaction decisions. Traders should verify independently information provided in the ${appCompanyShort} application by completing their own due diligence on any crypto-asset or company in which they are contemplating an investment or transaction of any kind and review a complete information package on that crypto-asset or company, which should include, but not be limited to, related blog updates and press releases. Past performance of profiled crypto-assets and securities is not indicative of future results. Crypto-assets and companies profiled on this site may lack an active trading market and invest in a crypto-asset or security that lacks an active trading market or trade on certain media, platforms and markets are deemed highly speculative and carry a high degree of risk. Anyone holding such crypto-assets and securities should be financially able and prepared to bear the risk of loss and the actual loss of his or her entire trade. The information in this application is not designed to be used as a basis for an investment decision. Persons using the ${appCompanyShort} application should confirm to their own satisfaction the veracity of any information prior to entering into any investment or making any transaction. The decision to buy or sell any crypto-asset or security that may be featured by ${appCompanyShort} is done purely and entirely at the reader’s own risk. As a reader and user of this application, You agree that under no circumstances will You seek to hold liable owners, members, officers, directors, partners, consultants or other persons involved in the publication of this application for any losses incurred by the use of information contained in this application ${appCompanyShort} and its contractors and affiliates may profit in the event the crypto-assets and securities increase or decrease in value. Such crypto-assets and securities may be bought or sold from time to time, even after ${appCompanyShort} has distributed positive information regarding the crypto-assets and companies. ${appCompanyShort} has no obligation to inform readers of its trading activities or the trading activities of any of its owners, members, officers, directors, contractors and affiliates and/or any companies affiliated with BC Relations’ owners, members, officers, directors, contractors and affiliates. ${appCompanyShort} and its affiliates may from time to time enter into agreements to purchase crypto-assets or securities to provide a method to reach their goals."; - static m29(appCompanyLong) => + static m41(appCompanyLong) => "The Terms are effective until terminated by ${appCompanyLong}. \nIn the event of termination, You are no longer authorized to access the Application, but all restrictions imposed on You and the disclaimers and limitations of liability set out in the Terms will survive termination. \nSuch termination shall not affect any legal right that may have accrued to ${appCompanyLong} against You up to the date of termination. \n${appCompanyLong} may also remove the Application as a whole or any sections or features of the Application at any time. "; - static m30(appCompanyLong) => + static m42(appCompanyLong) => "The provisions of previous paragraphs are for the benefit of ${appCompanyLong} and its officers, directors, employees, agents, licensors, suppliers, and any third party information providers to the Application. Each of these individuals or entities shall have the right to assert and enforce those provisions directly against You on its own behalf."; - static m31(appName, appCompanyLong) => + static m43(appName, appCompanyLong) => "${appName} mobile is a non-custodial, decentralized and blockchain based application and as such does ${appCompanyLong} never store any user-data (accounts and authentication data). \nWe also collect and process non-personal, anonymized data for statistical purposes and analysis and to help us provide a better service.\n\nThis document was last updated on January 31st, 2020"; - static m32(appName, appCompanyLong) => + static m44(appName, appCompanyLong) => "This disclaimer applies to the contents and services of the app ${appName} and is valid for all users of the “Application” (\'Software\', “Mobile Application”, “Application” or “App”).\n\nThe Application is owned by ${appCompanyLong}.\n\nWe reserve the right to amend the following Terms and Conditions (governing the use of the application “${appName} mobile”) at any time without prior notice and at our sole discretion. It is your responsibility to periodically check this Terms and Conditions for any updates to these Terms, which shall come into force once published.\nYour continued use of the application shall be deemed as acceptance of the following Terms.\nWe are a company incorporated in Vietnam and these Terms and Conditions are governed by and subject to the laws of Vietnam.\nIf You do not agree with these Terms and Conditions, You must not use or access this software."; - static m33(appName) => + static m45(appName) => "You are not allowed to decompile, decode, disassemble, rent, lease, loan, sell, sublicense, or create derivative works from the ${appName} mobile application or the user content. Nor are You allowed to use any network monitoring or detection software to determine the software architecture, or extract information about usage or individuals’ or users’ identities. \nYou are not allowed to copy, modify, reproduce, republish, distribute, display, or transmit for commercial, non-profit or public purposes all or any portion of the application or the user content without our prior written authorization."; - static m34(appName, appCompanyLong) => + static m46(appName, appCompanyLong) => "If you create an account in the Mobile Application, you are responsible for maintaining the security of your account and you are fully responsible for all activities that occur under the account and any other actions taken in connection with it. We will not be liable for any acts or omissions by you, including any damages of any kind incurred as a result of such acts or omissions. \n\n${appName} mobile is a non-custodial wallet implementation and thus ${appCompanyLong} can not access nor restore your account in case of (data) loss."; - static m35(appName) => + static m47(appName) => "End-User License Agreement (EULA) of ${appName} mobile:"; - static m36(coin) => "Отправка запроса на кран ${coin}"; + static m48(coinAbbr) => "Не удалось отменить активацию ${coinAbbr}."; + + static m49(coin) => "Отправка запроса на кран ${coin}"; - static m37(appCompanyShort) => "Новости Комодо"; + static m50(appCompanyShort) => "Новости Комодо"; - static m38(value) => "Комиссия должна быть не более ${value}"; + static m51(value) => "Комиссия должна быть не более ${value}"; - static m39(coin) => "${coin} комиссия"; + static m52(coin) => "${coin} комиссия"; - static m40(coin) => "Пожалуйста активируйте ${coin}"; + static m53(coin) => "Пожалуйста активируйте ${coin}"; - static m41(abbr) => + static m54(value) => "Значение Gwei должно быть до ${value}."; + + static m55(coinName) => + "Настройки защиты входящих txs-транзакций ${coinName}"; + + static m56(abbr) => "${abbr} недостаточно баланса чтобы оплатить торговую комиссию"; - static m42(coinAbbr) => "${coinAbbr} недоступен :("; + static m57(coin) => "Неверный адрес ${coin}"; - static m43(coinName) => + static m58(coinAbbr) => "${coinAbbr} недоступен :("; + + static m59(coinName) => "❗Осторожно! Объем торгов на рынке ${coinName} за 24 часа составляет менее 10 000 долларов!"; - static m44(coinName, number) => + static m60(value) => "Лимит должен быть до ${value}"; + + static m61(coinName, number) => "Минимальная сумма продажи составляет ${number} ${coinName}."; - static m45(coinName, number) => + static m62(coinName, number) => "Минимальная сумма покупки: ${number} ${coinName}"; - static m46(buyCoin, buyAmount, sellCoin, sellAmount) => + static m63(buyCoin, buyAmount, sellCoin, sellAmount) => "Минимальная сумма ордера ${buyAmount} ${buyCoin}\n(${sellAmount} ${sellCoin})"; - static m47(coinName, number) => + static m64(coinName, number) => "Минимальная сумма на продажу ${number} ${coinName}"; - static m48(minValue, coin) => "Должно быть больше чем ${minValue} ${coin}"; + static m65(minValue, coin) => "Должно быть больше чем ${minValue} ${coin}"; - static m49(appName) => + static m66(appName) => "Обратите внимание, что теперь вы используете сотовые данные, а участие в P2P-сети ${appName} потребляет интернет-трафик. Лучше использовать сеть Wi-Fi, если ваш тарифный план сотовой связи является дорогостоящим."; - static m50(coin) => "Активируйте ${coin} и пополните баланс"; + static m67(coin) => "Активируйте ${coin} и пополните баланс"; - static m51(number) => "Создать ${number} ордер(ов):"; + static m68(number) => "Создать ${number} ордер(ов):"; - static m52(coin) => "${coin} баланс очень низкий"; + static m69(coin) => "${coin} баланс очень низкий"; - static m53(coin, fee) => + static m70(coin, fee) => "Недостаточно ${coin} чтобы оплатить налог. МИН баланс ${fee} ${coin}"; - static m54(coinName) => "Пожалуйста, введите сумму ${coinName}."; + static m71(coinName) => "Пожалуйста, введите сумму ${coinName}."; - static m55(coin) => "Не достаточно ${coin} для транзакции!"; + static m72(coin) => "Не достаточно ${coin} для транзакции!"; - static m56(sell, buy) => "Своп ${sell}/${buy} успешно завершен"; + static m73(sell, buy) => "Своп ${sell}/${buy} успешно завершен"; - static m57(sell, buy) => "Своп ${sell}/${buy} не прошел"; + static m74(sell, buy) => "Своп ${sell}/${buy} не прошел"; - static m58(sell, buy) => "Своп ${sell}/${buy} начат"; + static m75(sell, buy) => "Своп ${sell}/${buy} начат"; - static m59(sell, buy) => "Превышен тайм-аут свопа ${sell}/${buy}"; + static m76(sell, buy) => "Превышен тайм-аут свопа ${sell}/${buy}"; - static m60(coin) => "Вы получили ${coin} транзакцию"; + static m77(coin) => "Вы получили ${coin} транзакцию"; - static m61(assets) => "${assets} Активов"; + static m78(assets) => "${assets} Активов"; - static m62(coin) => "Все ${coin} ордеры будут отменены."; + static m79(coin) => "Все ${coin} ордеры будут отменены."; - static m63(delta) => "На -${delta}% ниже цен CEX"; + static m80(delta) => "На -${delta}% ниже цен CEX"; - static m64(delta) => "На +${delta}% выше цен CEX"; + static m81(delta) => "На +${delta}% выше цен CEX"; - static m65(fill) => "${fill}% заполнено"; + static m82(fill) => "${fill}% заполнено"; - static m66(coin) => "Сумма (${coin})"; + static m83(coin) => "Сумма (${coin})"; - static m67(coin) => "Цена (${coin})"; + static m84(coin) => "Цена (${coin})"; - static m68(coin) => "Всего (${coin})"; + static m85(coin) => "Всего (${coin})"; - static m69(abbr) => + static m86(abbr) => "${abbr} не активен. Пожалуйста активируйте и попробуйте снова."; - static m70(appName) => "На каких устройствах я могу использовать ${appName}?"; + static m87(appName) => "На каких устройствах я могу использовать ${appName}?"; - static m71(appName) => + static m88(appName) => "Чем торговля на ${appName} отличается от торговли на других DEX?"; - static m72(appName) => "Как рассчитываются комиссии на ${appName}?"; + static m89(appName) => "Как рассчитываются комиссии на ${appName}?"; - static m73(appName) => "Кто стоит за ${appName}?"; + static m90(appName) => "Кто стоит за ${appName}?"; - static m74(appName) => + static m91(appName) => "Можно ли разработать собственную white-label биржу на технологии ${appName}?"; - static m75(amount) => "Получено ${amount} KMD."; + static m92(amount) => "Получено ${amount} KMD."; + + static m93(dd) => "${dd} дней}"; - static m76(dd) => "${dd} дней}"; + static m94(hh, minutes) => "${hh}ч ${minutes}мин"; - static m77(hh, minutes) => "${hh}ч ${minutes}мин"; + static m95(mm) => "мин ${mm}"; - static m78(mm) => "мин ${mm}"; + static m96(amount) => "Нажмите, чтобы увидеть ${amount} ордеров"; - static m79(amount) => "Нажмите, чтобы увидеть ${amount} ордеров"; + static m97(coinName, address) => "Мой ${coinName} адрес:\n${address}"; - static m80(coinName, address) => "Мой ${coinName} адрес:\n${address}"; + static m98(coin) => "Сканировать прошлые транзакции с ${coin}?"; - static m81(coin) => "Пожалуйста введите сумму ${coin} для покупки"; + static m99(count, maxCount) => "Показано ${count} из ${maxCount} заказов."; - static m82(maxCoins) => + static m100(coin) => "Пожалуйста введите сумму ${coin} для покупки"; + + static m101(maxCoins) => "Максимальное количество активных монет: ${maxCoins}. Пожалуйста деактивируйте некоторые из них."; - static m83(coin) => "${coin} не активна"; + static m102(coin) => "${coin} не активна"; - static m84(coin) => "Пожалуйста введите сумму ${coin} для продажи"; + static m103(coin) => "Пожалуйста введите сумму ${coin} для продажи"; - static m85(coin) => "Не удалось активировать ${coin}"; + static m104(coin) => "Не удалось активировать ${coin}"; - static m86(description) => + static m105(description) => "Выберите файл в формате mp3 или wav. Воспроизводится, когда ${description}."; - static m87(description) => "Воспроизводится, когда ${description}"; + static m106(description) => "Воспроизводится, когда ${description}"; - static m88(appName) => + static m107(appName) => "Если у вас есть какие-либо вопросы или вы считаете, что обнаружили техническую проблему с приложением ${appName}, вы можете сообщить об этом и получить поддержку от нашей команды."; - static m89(coin) => + static m108(coin) => "Пожалуйста сначала активируйте ${coin} и пополните баланс"; - static m90(coin) => + static m109(coin) => "Баланс ${coin} недостаточен для оплаты комиссии за транзакцию."; - static m91(coin, amount) => + static m110(coin, amount) => "Баланс ${coin} недостаточен для оплаты комиссии за транзакцию. ${coin} ${amount} требуется."; - static m92(left) => "Осталось транзакций: ${left}"; + static m111(name) => "Какие транзакции ${name} вы хотите синхронизировать?"; - static m93(amnt, hash) => + static m112(left) => "Осталось транзакций: ${left}"; + + static m113(amnt, hash) => "Успешно разблокировано ${amnt} средств - TX: ${hash}"; - static m94(version) => "Установлена версия ${version}"; + static m114(version) => "Установлена версия ${version}"; - static m95(version) => "Доступна версия ${version}. Пожалуйста, обновитесь."; + static m115(version) => "Доступна версия ${version}. Пожалуйста, обновитесь."; - static m96(appName) => "Обновление ${appName}"; + static m116(appName) => "Обновление ${appName}"; - static m97(coinAbbr) => "Ошибка активации ${coinAbbr}"; + static m117(coinAbbr) => "Ошибка активации ${coinAbbr}"; - static m98(coinAbbr) => + static m118(coinAbbr) => "Ошибка активации ${coinAbbr}\nПожалуйста перезапустите приложение и попробуйте снова"; - static m99(appName) => + static m119(appName) => "${appName} mobile - это мульти-монетный кошелек с функциональностью DEX третьего поколения и многим другим."; - static m100(appName) => + static m120(appName) => "Ранее вы запретили ${appName} доступ к камере.\nВручную измените разрешения для камеры в настройках телефона, чтобы продолжить сканирование QR-кода."; - static m101(amount, coinName) => "ВЫВЕСТИ ${amount} ${coinName}"; + static m121(amount, coinName) => "ВЫВЕСТИ ${amount} ${coinName}"; - static m102(amount, coin) => "Вы получите ${amount} ${coin}"; + static m122(amount, coin) => "Вы получите ${amount} ${coin}"; final messages = _notInlinedMessages(_notInlinedMessages); static Map _notInlinedMessages(_) => { @@ -296,39 +337,47 @@ class MessageLookup extends MessageLookupByLibrary { "Активировать биометрическую защиту"), "activateAccessPin": MessageLookupByLibrary.simpleMessage("Активировать защиту PIN"), + "activateCoins": m0, + "activating": m1, + "activation": m2, + "activationCancelled": + MessageLookupByLibrary.simpleMessage("Активация монеты отменена"), + "activationInProgress": m3, "addCoin": MessageLookupByLibrary.simpleMessage("Активировать монету"), - "addingCoinSuccess": m0, + "addingCoinSuccess": m4, "addressAdd": MessageLookupByLibrary.simpleMessage("Добавить адрес"), "addressBook": MessageLookupByLibrary.simpleMessage("Адресная книга"), "addressBookEmpty": MessageLookupByLibrary.simpleMessage("Адресная книга пуста"), - "addressBookFilter": m1, + "addressBookFilter": m5, "addressBookTitle": MessageLookupByLibrary.simpleMessage("Адресная книга"), - "addressCoinInactive": m2, + "addressCoinInactive": m6, "addressNotFound": MessageLookupByLibrary.simpleMessage("Не найдено"), "addressSelectCoin": MessageLookupByLibrary.simpleMessage("Выбрать валюту"), "addressSend": MessageLookupByLibrary.simpleMessage("Адрес получателя"), "advanced": MessageLookupByLibrary.simpleMessage("Расширенные"), "all": MessageLookupByLibrary.simpleMessage("Все"), + "allPastTransactions": MessageLookupByLibrary.simpleMessage( + "Ваш кошелек покажет все прошлые транзакции. Это потребует значительного объема памяти и времени, поскольку все блоки будут загружены и отсканированы."), "allowCustomSeed": MessageLookupByLibrary.simpleMessage( "Разрешить произвольный seed-ключ"), "alreadyExists": MessageLookupByLibrary.simpleMessage("Уже существует"), "amount": MessageLookupByLibrary.simpleMessage("Количество"), "amountToSell": MessageLookupByLibrary.simpleMessage("Сумма для продажи"), - "answer_1": m3, - "answer_10": m4, - "answer_2": m5, - "answer_3": m6, + "answer_1": m7, + "answer_10": m8, + "answer_2": m9, + "answer_3": m10, "answer_4": MessageLookupByLibrary.simpleMessage( "Да. Приложение должно оставаться подключенным к Интернету для успешного завершения каждого атомарного свопа (очень короткие перерывы в подключении обычно допустимы). В противном случае существует риск отмены сделки, если вы являетесь мейкером, и риск потери средств, если вы тейкер. Протокол атомарного свопа требует, чтобы оба участника оставались в сети и контролировали задействованные блокчейны, чтобы процесс оставался атомарным."), - "answer_5": m7, - "answer_6": m8, - "answer_7": m9, - "answer_8": m10, - "answer_9": m11, + "answer_5": m11, + "answer_6": m12, + "answer_7": m13, + "answer_8": m14, + "answer_9": m15, "areYouSure": MessageLookupByLibrary.simpleMessage("ВЫ УВЕРЕНЫ?"), "authenticate": MessageLookupByLibrary.simpleMessage("аутентификация"), "automaticRedirected": MessageLookupByLibrary.simpleMessage( @@ -336,8 +385,9 @@ class MessageLookup extends MessageLookupByLibrary { "availableVolume": MessageLookupByLibrary.simpleMessage("макс объем"), "back": MessageLookupByLibrary.simpleMessage("назад"), "backupTitle": MessageLookupByLibrary.simpleMessage("Бэкап"), - "batteryCriticalError": m12, - "batteryLowWarning": m13, + "basedOnCoinRatio": m16, + "batteryCriticalError": m17, + "batteryLowWarning": m18, "batterySavingWarning": MessageLookupByLibrary.simpleMessage( "Ваш телефон находится в режиме экономии заряда батареи. Пожалуйста, отключите этот режим или НЕ переводите приложение в фоновый режим, в противном случае приложение может быть убито операционной системой, и обмен не удастся."), "bestAvailableRate": @@ -351,7 +401,7 @@ class MessageLookup extends MessageLookupByLibrary { "Конвертировать в мейкер если нет совпадений"), "buySuccessWaiting": MessageLookupByLibrary.simpleMessage( "Обмен начался, пожалуйста подождите!"), - "buySuccessWaitingError": m14, + "buySuccessWaitingError": m19, "buyTestCoinWarning": MessageLookupByLibrary.simpleMessage( "Внимание, вы пытаетесь купить тестовые монеты БЕЗ РЕАЛЬНОЙ стоимости."), "camoPinBioProtectionConflict": MessageLookupByLibrary.simpleMessage( @@ -384,6 +434,10 @@ class MessageLookup extends MessageLookupByLibrary { "camouflageSetup": MessageLookupByLibrary.simpleMessage( "Установить маскировочный PIN"), "cancel": MessageLookupByLibrary.simpleMessage("отменить"), + "cancelActivation": + MessageLookupByLibrary.simpleMessage("Отменить активацию"), + "cancelActivationQuestion": MessageLookupByLibrary.simpleMessage( + "Вы уверены, что хотите отменить активацию?"), "cancelButton": MessageLookupByLibrary.simpleMessage("отменить"), "cancelOrder": MessageLookupByLibrary.simpleMessage("Отменить Ордер"), "candleChartError": MessageLookupByLibrary.simpleMessage( @@ -398,6 +452,7 @@ class MessageLookup extends MessageLookupByLibrary { "cexData": MessageLookupByLibrary.simpleMessage("Данные CEX"), "cexDataDesc": MessageLookupByLibrary.simpleMessage( "Данные (цены, графики и т.д.), отмеченные этим значком, получены из сторонних источников ( coingecko.com , openrates.io )."), + "cexRate": MessageLookupByLibrary.simpleMessage("Курс CEX"), "changePin": MessageLookupByLibrary.simpleMessage("Изменить PIN-код"), "checkForUpdates": MessageLookupByLibrary.simpleMessage("Проверить обновления"), @@ -408,10 +463,10 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("ПРОДОЛЖИТЬ"), "checkSeedPhraseButton2": MessageLookupByLibrary.simpleMessage("ВЕРНУТЬСЯ И ПРОВЕРИТЬ СНОВА"), - "checkSeedPhraseHint": m15, + "checkSeedPhraseHint": m20, "checkSeedPhraseInfo": MessageLookupByLibrary.simpleMessage( "Ваш seed-ключ необходим для доступа к кошельку - поэтому мы хотим убедиться, что она правильная. Мы зададим вам три разных вопроса о вашей seed-фразе, чтобы убедиться, что вы сможете легко восстановить свой кошелек, когда захотите."), - "checkSeedPhraseSubtile": m16, + "checkSeedPhraseSubtile": m21, "checkSeedPhraseTitle": MessageLookupByLibrary.simpleMessage( "ДАВАЙТЕ ПЕРЕПРОВЕРИМ ВАШ SEED-КЛЮЧ"), "chineseLanguage": MessageLookupByLibrary.simpleMessage("Китайский"), @@ -428,6 +483,10 @@ class MessageLookup extends MessageLookupByLibrary { "closePreview": MessageLookupByLibrary.simpleMessage("Закрыть предпросмотр"), "code": MessageLookupByLibrary.simpleMessage("Код:"), + "cofirmCancelActivation": MessageLookupByLibrary.simpleMessage( + "Вы уверены, что хотите отменить активацию?"), + "coinActivationCancelled": m22, + "coinActivationSuccessfull": m23, "coinSelectClear": MessageLookupByLibrary.simpleMessage("Очистить"), "coinSelectNotFound": MessageLookupByLibrary.simpleMessage("Нет активных монет"), @@ -435,6 +494,9 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("Выбрать монету"), "coinsActivatedLimitReached": MessageLookupByLibrary.simpleMessage( "Вы выбрали максимальное количество активов"), + "coinsAreActivated": m24, + "coinsAreActivatedSuccessfully": m25, + "coinsAreNotActivated": m26, "comingSoon": MessageLookupByLibrary.simpleMessage("Скоро будет..."), "commingsoon": MessageLookupByLibrary.simpleMessage( "Детали TX скоро будут добавлены!"), @@ -465,7 +527,7 @@ class MessageLookup extends MessageLookupByLibrary { "contactDelete": MessageLookupByLibrary.simpleMessage("Удалить контакт"), "contactDeleteBtn": MessageLookupByLibrary.simpleMessage("Удалить"), - "contactDeleteWarning": m17, + "contactDeleteWarning": m27, "contactDiscardBtn": MessageLookupByLibrary.simpleMessage("Сбросить"), "contactEdit": MessageLookupByLibrary.simpleMessage("Изменить"), "contactExit": MessageLookupByLibrary.simpleMessage("Выйти"), @@ -477,7 +539,10 @@ class MessageLookup extends MessageLookupByLibrary { "contactTitle": MessageLookupByLibrary.simpleMessage("Контактная информация"), "contactTitleName": MessageLookupByLibrary.simpleMessage("Имя"), + "contract": MessageLookupByLibrary.simpleMessage("Договор"), "convert": MessageLookupByLibrary.simpleMessage("Конвертировать"), + "couldNotLaunchUrl": + MessageLookupByLibrary.simpleMessage("Не удалось запустить URL"), "couldntImportError": MessageLookupByLibrary.simpleMessage("Не удалось импортировать:"), "create": MessageLookupByLibrary.simpleMessage("сделка"), @@ -493,7 +558,7 @@ class MessageLookup extends MessageLookupByLibrary { "customFee": MessageLookupByLibrary.simpleMessage("Настроить комиссию"), "customFeeWarning": MessageLookupByLibrary.simpleMessage( "Используйте настраиваемые комиссии только если знаете, что делаете!"), - "customSeedWarning": m18, + "customSeedWarning": m28, "dPow": MessageLookupByLibrary.simpleMessage("Защита Komodo dPoW"), "date": MessageLookupByLibrary.simpleMessage("Дата"), "decryptingWallet": @@ -510,6 +575,13 @@ class MessageLookup extends MessageLookupByLibrary { "deleteWallet": MessageLookupByLibrary.simpleMessage("Удалить кошелек"), "deletingWallet": MessageLookupByLibrary.simpleMessage("Удаляю кошелек"), + "detailedFeesReceiveCoinTransactionFee": m29, + "detailedFeesSendCoinTransactionFee": m30, + "detailedFeesSendTradingFeeTransactionFee": + MessageLookupByLibrary.simpleMessage( + "отправить торговую комиссию комиссию за транзакцию"), + "detailedFeesTradingFee": + MessageLookupByLibrary.simpleMessage("торговая комиссия"), "details": MessageLookupByLibrary.simpleMessage("детали"), "deutscheLanguage": MessageLookupByLibrary.simpleMessage("Немецкий"), "developerTitle": MessageLookupByLibrary.simpleMessage("Разработчик"), @@ -520,6 +592,8 @@ class MessageLookup extends MessageLookupByLibrary { "Отключить скриншоты/предварительный просмотр"), "disclaimerAndTos": MessageLookupByLibrary.simpleMessage("Disclaimer & ToS"), + "doNotCloseTheAppTapForMoreInfo": MessageLookupByLibrary.simpleMessage( + "Не закрывайте приложение. Нажмите, чтобы узнать больше..."), "done": MessageLookupByLibrary.simpleMessage("Готово"), "dontAskAgain": MessageLookupByLibrary.simpleMessage("Не спрашивать снова"), @@ -527,7 +601,7 @@ class MessageLookup extends MessageLookupByLibrary { "Я не хочу использовать пароль"), "duration": MessageLookupByLibrary.simpleMessage("Продолжительность"), "editContact": MessageLookupByLibrary.simpleMessage("Редактировать"), - "emptyCoin": m19, + "emptyCoin": m31, "emptyExportPass": MessageLookupByLibrary.simpleMessage( "Зашифрованный пароль не может быть пустым"), "emptyImportPass": @@ -536,6 +610,9 @@ class MessageLookup extends MessageLookupByLibrary { "Имя контакта не может быть пустым"), "emptyWallet": MessageLookupByLibrary.simpleMessage( "Имя кошелька не должно быть пустым"), + "enableNotificationsForActivationProgress": + MessageLookupByLibrary.simpleMessage( + "Пожалуйста, включите уведомления, чтобы получать обновления о ходе активации."), "enableTestCoins": MessageLookupByLibrary.simpleMessage("Включить тестовые монеты"), "enablingTooManyAssetsSpan1": @@ -569,7 +646,7 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("Невалидный адрес"), "errorNotAValidAddressSegWit": MessageLookupByLibrary.simpleMessage( "Segwit адреса не поддерживаются"), - "errorNotEnoughGas": m21, + "errorNotEnoughGas": m33, "errorTryAgain": MessageLookupByLibrary.simpleMessage( "Ошибка, пожалуйста попробуйте еще раз"), "errorTryLater": MessageLookupByLibrary.simpleMessage( @@ -580,32 +657,32 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("Пожалуйста, введите данные"), "estimateValue": MessageLookupByLibrary.simpleMessage("Расчетная общая стоимость"), - "eulaParagraphe1": m22, - "eulaParagraphe10": m23, - "eulaParagraphe11": m24, + "eulaParagraphe1": m34, + "eulaParagraphe10": m35, + "eulaParagraphe11": m36, "eulaParagraphe12": MessageLookupByLibrary.simpleMessage( "When accessing or using the Services, You agree that You are solely responsible for your conduct while accessing and using our Services. Without limiting the generality of the foregoing, You agree that You will not:\n(a) use the Services in any manner that could interfere with, disrupt, negatively affect or inhibit other users from fully enjoying the Services, or that could damage, disable, overburden or impair the functioning of our Services in any manner;\n(b) use the Services to pay for, support or otherwise engage in any illegal activities, including, but not limited to illegal gambling, fraud, money laundering, or terrorist activities;\n(c) use any robot, spider, crawler, scraper or other automated means or interface not provided by us to access our Services or to extract data;\n(d) use or attempt to use another user’s Wallet or credentials without authorization;\n(e) attempt to circumvent any content filtering techniques we employ, or attempt to access any service or area of our Services that You are not authorized to access;\n(f) introduce to the Services any virus, Trojan, worms, logic bombs or other harmful material;\n(g) develop any third-party applications that interact with our Services without our prior written consent;\n(h) provide false, inaccurate, or misleading information; \n(i) encourage or induce any other person to engage in any of the activities prohibited under this Section."), - "eulaParagraphe13": m25, - "eulaParagraphe14": m26, - "eulaParagraphe15": m27, - "eulaParagraphe16": m28, - "eulaParagraphe17": m29, - "eulaParagraphe18": m30, - "eulaParagraphe19": m31, - "eulaParagraphe2": m32, + "eulaParagraphe13": m37, + "eulaParagraphe14": m38, + "eulaParagraphe15": m39, + "eulaParagraphe16": m40, + "eulaParagraphe17": m41, + "eulaParagraphe18": m42, + "eulaParagraphe19": m43, + "eulaParagraphe2": m44, "eulaParagraphe3": MessageLookupByLibrary.simpleMessage( "By entering into this User (each subject accessing or using the site) Agreement (this writing) You declare that You are an individual over the age of majority (at least 18 or older) and have the capacity to enter into this User Agreement and accept to be legally bound by the terms and conditions of this User Agreement, as incorporated herein and amended from time to time."), "eulaParagraphe4": MessageLookupByLibrary.simpleMessage( "We may change the terms of this User Agreement at any time. Any such changes will take effect when published in the application, or when You use the Services.\n\nRead the User Agreement carefully every time You use our Services. Your continued use of the Services shall signify your acceptance to be bound by the current User Agreement. Our failure or delay in enforcing or partially enforcing any provision of this User Agreement shall not be construed as a waiver of any."), - "eulaParagraphe5": m33, - "eulaParagraphe6": m34, + "eulaParagraphe5": m45, + "eulaParagraphe6": m46, "eulaParagraphe7": MessageLookupByLibrary.simpleMessage( "We are not responsible for seed-phrases residing in the Mobile Application. In no event shall we be held liable for any loss of any kind. It is your sole responsibility to maintain appropriate backups of your accounts and their seedprases."), "eulaParagraphe8": MessageLookupByLibrary.simpleMessage( "You should not act, or refrain from acting solely on the basis of the content of this application. \nYour access to this application does not itself create an adviser-client relationship between You and us. \nThe content of this application does not constitute a solicitation or inducement to invest in any financial products or services offered by us. \nAny advice included in this application has been prepared without taking into account your objectives, financial situation or needs. You should consider our Risk Disclosure Notice before making any decision on whether to acquire the product described in that document."), "eulaParagraphe9": MessageLookupByLibrary.simpleMessage( "We do not guarantee your continuous access to the application or that your access or use will be error-free. \nWe will not be liable in the event that the application is unavailable to You for any reason (for example, due to computer downtime ascribable to malfunctions, upgrades, server problems, precautionary or corrective maintenance activities or interruption in telecommunication supplies). "), - "eulaTitle1": m35, + "eulaTitle1": m47, "eulaTitle10": MessageLookupByLibrary.simpleMessage("ACCESS AND SECURITY"), "eulaTitle11": MessageLookupByLibrary.simpleMessage( @@ -658,12 +735,13 @@ class MessageLookup extends MessageLookupByLibrary { "Элементы которые были успешно экспортированы:"), "exportSwapsTitle": MessageLookupByLibrary.simpleMessage("Свопы"), "exportTitle": MessageLookupByLibrary.simpleMessage("Экспорт"), + "failedToCancelActivation": m48, "fakeBalanceAmt": MessageLookupByLibrary.simpleMessage("Маскировочный баланс:"), "faqTitle": MessageLookupByLibrary.simpleMessage("Часто задаваемые вопросы"), "faucetError": MessageLookupByLibrary.simpleMessage("Ошибка"), - "faucetInProgress": m36, + "faucetInProgress": m49, "faucetName": MessageLookupByLibrary.simpleMessage("FAUCET"), "faucetSuccess": MessageLookupByLibrary.simpleMessage("Успешно"), "faucetTimedOut": @@ -671,7 +749,7 @@ class MessageLookup extends MessageLookupByLibrary { "feedNewsTab": MessageLookupByLibrary.simpleMessage("Новости"), "feedNotFound": MessageLookupByLibrary.simpleMessage("Здесь ничего нет"), - "feedNotifTitle": m37, + "feedNotifTitle": m50, "feedReadMore": MessageLookupByLibrary.simpleMessage("Узнать больше"), "feedTab": MessageLookupByLibrary.simpleMessage("Лента"), "feedTitle": MessageLookupByLibrary.simpleMessage("Лента новостей"), @@ -684,7 +762,7 @@ class MessageLookup extends MessageLookupByLibrary { "feedUpdated": MessageLookupByLibrary.simpleMessage("Лента новостей обновлена"), "feedback": MessageLookupByLibrary.simpleMessage("Отправить логи"), - "feesError": m38, + "feesError": m51, "filtersAll": MessageLookupByLibrary.simpleMessage("Все"), "filtersButton": MessageLookupByLibrary.simpleMessage("Фильтр"), "filtersClearAll": @@ -701,18 +779,26 @@ class MessageLookup extends MessageLookupByLibrary { "filtersTo": MessageLookupByLibrary.simpleMessage("На дату"), "filtersType": MessageLookupByLibrary.simpleMessage("Тейкер/Мейкер"), "fingerprint": MessageLookupByLibrary.simpleMessage("Отпечаток"), + "finishingUp": MessageLookupByLibrary.simpleMessage( + "Заканчиваем, пожалуйста, подождите"), + "foundQrCode": MessageLookupByLibrary.simpleMessage("Найден QR-код"), "frenchLanguage": MessageLookupByLibrary.simpleMessage("Французский"), "from": MessageLookupByLibrary.simpleMessage("Из"), - "gasFee": m39, + "futureTransactions": MessageLookupByLibrary.simpleMessage( + "Мы будем синхронизировать будущие транзакции, совершенные после активации, связанные с вашим открытым ключом. Это самый быстрый вариант и занимает меньше всего места."), + "gasFee": m52, "gasLimit": MessageLookupByLibrary.simpleMessage("Лимит газа"), - "gasNotActive": m40, + "gasNotActive": m53, "gasPrice": MessageLookupByLibrary.simpleMessage("Цена Gas"), "generalPinNotActive": MessageLookupByLibrary.simpleMessage( "Общая защита PIN-кодом не активна.\nРежим маскировки будет недоступен.\nВключите защиту PIN-кодом."), "getBackupPhrase": MessageLookupByLibrary.simpleMessage( "Важно: перед тем как продолжить, сохраните свою seed-фразу в надежном месте!"), + "gettingTxWait": MessageLookupByLibrary.simpleMessage( + "Идет транзакция, пожалуйста, подождите"), "goToPorfolio": MessageLookupByLibrary.simpleMessage("Перейти в портфолио"), + "gweiError": m54, "helpLink": MessageLookupByLibrary.simpleMessage("Помощь"), "helpTitle": MessageLookupByLibrary.simpleMessage("Помощь и поддержка"), "hideBalance": MessageLookupByLibrary.simpleMessage("Спрятать баланс"), @@ -764,6 +850,7 @@ class MessageLookup extends MessageLookupByLibrary { "importSwapJsonDecodingError": MessageLookupByLibrary.simpleMessage( "Ошибка декодирования json файла"), "importTitle": MessageLookupByLibrary.simpleMessage("Импорт"), + "incomingTransactionsProtectionSettings": m55, "infoPasswordDialog": MessageLookupByLibrary.simpleMessage( "Если вы решите не использовать пароль, вам нужно будет вводить свою seed-фразу каждый раз, когда вы хотите получить доступ к своему кошельку."), "infoTrade1": MessageLookupByLibrary.simpleMessage( @@ -772,7 +859,7 @@ class MessageLookup extends MessageLookupByLibrary { "Эта транзакция может занять до 10 минут - НЕ закрывайте приложение!"), "infoWalletPassword": MessageLookupByLibrary.simpleMessage( "Вы можете зашифровать свой кошелек паролем. Если вы решите не использовать пароль, вам нужно будет вводить свою seed-фразу каждый раз, когда вы хотите получить доступ к своему кошельку."), - "insufficientBalanceToPay": m41, + "insufficientBalanceToPay": m56, "insufficientText": MessageLookupByLibrary.simpleMessage( "Минимальное количество необходимое для этого ордера составляет"), "insufficientTitle": @@ -781,11 +868,12 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("Обновить"), "internetRestored": MessageLookupByLibrary.simpleMessage( "Соединение с интернетом восстановлено"), + "invalidCoinAddress": m57, "invalidSwap": MessageLookupByLibrary.simpleMessage("Невозможно продолжить своп"), "invalidSwapDetailsLink": MessageLookupByLibrary.simpleMessage("Подробнее"), - "isUnavailable": m42, + "isUnavailable": m58, "japaneseLanguage": MessageLookupByLibrary.simpleMessage("Японский"), "koreanLanguage": MessageLookupByLibrary.simpleMessage("Корейский"), "language": MessageLookupByLibrary.simpleMessage("Язык"), @@ -793,7 +881,8 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("Последние Транзакции"), "legalTitle": MessageLookupByLibrary.simpleMessage("Легальные аспекты"), "less": MessageLookupByLibrary.simpleMessage("Меньше"), - "lessThanCaution": m43, + "lessThanCaution": m59, + "limitError": m60, "loading": MessageLookupByLibrary.simpleMessage("Загрузка..."), "loadingOrderbook": MessageLookupByLibrary.simpleMessage("Загрузка книги ордеров..."), @@ -865,21 +954,24 @@ class MessageLookup extends MessageLookupByLibrary { "min": MessageLookupByLibrary.simpleMessage("МИН"), "minOrder": MessageLookupByLibrary.simpleMessage("Минимальные объем ордера"), - "minValue": m44, - "minValueBuy": m45, - "minValueOrder": m46, - "minValueSell": m47, - "minVolumeInput": m48, + "minValue": m61, + "minValueBuy": m62, + "minValueOrder": m63, + "minValueSell": m64, + "minVolumeInput": m65, "minVolumeIsTDH": MessageLookupByLibrary.simpleMessage( "Должно быть меньше чем сумма продажи"), "minVolumeTitle": MessageLookupByLibrary.simpleMessage( "Минимальное требуемое количество"), "minVolumeToggle": MessageLookupByLibrary.simpleMessage( "Использовать собственное минимальное количество"), + "minimizingWillTerminate": MessageLookupByLibrary.simpleMessage( + "Предупреждение: сворачивание приложения на iOS приведет к прекращению процесса активации."), "minutes": MessageLookupByLibrary.simpleMessage("мин"), - "mobileDataWarning": m49, + "mobileDataWarning": m66, + "moreInfo": MessageLookupByLibrary.simpleMessage("Больше информации"), "moreTab": MessageLookupByLibrary.simpleMessage("Ещё"), - "multiActivateGas": m50, + "multiActivateGas": m67, "multiBaseAmtPlaceholder": MessageLookupByLibrary.simpleMessage("Сумма"), "multiBasePlaceholder": MessageLookupByLibrary.simpleMessage("Монета"), @@ -887,7 +979,7 @@ class MessageLookup extends MessageLookupByLibrary { "multiConfirmCancel": MessageLookupByLibrary.simpleMessage("Отменить"), "multiConfirmConfirm": MessageLookupByLibrary.simpleMessage("Подтвердить"), - "multiConfirmTitle": m51, + "multiConfirmTitle": m68, "multiCreate": MessageLookupByLibrary.simpleMessage("Создать"), "multiCreateOrder": MessageLookupByLibrary.simpleMessage("Ордер"), "multiCreateOrders": MessageLookupByLibrary.simpleMessage("Ордеры"), @@ -902,8 +994,8 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("Некорректная сумма"), "multiInvalidSellAmt": MessageLookupByLibrary.simpleMessage("Неверная сумма продажи"), - "multiLowGas": m52, - "multiLowerThanFee": m53, + "multiLowGas": m69, + "multiLowerThanFee": m70, "multiMaxSellAmt": MessageLookupByLibrary.simpleMessage("Макс сумма к продаже"), "multiMinReceiveAmt": @@ -938,7 +1030,7 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("Ничего не выбрано"), "noMatchingOrders": MessageLookupByLibrary.simpleMessage( "Совпадающих ордеров не найдено"), - "noOrder": m54, + "noOrder": m71, "noOrderAvailable": MessageLookupByLibrary.simpleMessage( "Нажмите, чтобы создать ордер"), "noOrders": MessageLookupByLibrary.simpleMessage( @@ -952,7 +1044,8 @@ class MessageLookup extends MessageLookupByLibrary { "noTxs": MessageLookupByLibrary.simpleMessage("Нет транзакций"), "nonNumericInput": MessageLookupByLibrary.simpleMessage( "Значение должно быть указано в цифрах"), - "notEnoughGas": m55, + "none": MessageLookupByLibrary.simpleMessage("Никто"), + "notEnoughGas": m72, "notEnoughtBalanceForFee": MessageLookupByLibrary.simpleMessage( "Недостаточно баланса для комиссий - выполните сделку на меньшую сумму"), "noteOnOrder": MessageLookupByLibrary.simpleMessage( @@ -962,24 +1055,24 @@ class MessageLookup extends MessageLookupByLibrary { "noteTitle": MessageLookupByLibrary.simpleMessage("Заметка"), "nothingFound": MessageLookupByLibrary.simpleMessage("Ничего не найдено"), - "notifSwapCompletedText": m56, + "notifSwapCompletedText": m73, "notifSwapCompletedTitle": MessageLookupByLibrary.simpleMessage("Своп завершен"), - "notifSwapFailedText": m57, + "notifSwapFailedText": m74, "notifSwapFailedTitle": MessageLookupByLibrary.simpleMessage("Своп не был завершен"), - "notifSwapStartedText": m58, + "notifSwapStartedText": m75, "notifSwapStartedTitle": MessageLookupByLibrary.simpleMessage("Новый своп начался"), "notifSwapStatusTitle": MessageLookupByLibrary.simpleMessage("Статус свопа изменен"), - "notifSwapTimeoutText": m59, + "notifSwapTimeoutText": m76, "notifSwapTimeoutTitle": MessageLookupByLibrary.simpleMessage("Превышен тайм-аут свопа"), - "notifTxText": m60, + "notifTxText": m77, "notifTxTitle": MessageLookupByLibrary.simpleMessage("Входящая транзакция"), - "numberAssets": m61, + "numberAssets": m78, "officialPressRelease": MessageLookupByLibrary.simpleMessage("Официальный пресс-релиз"), "okButton": MessageLookupByLibrary.simpleMessage("Ок"), @@ -989,14 +1082,16 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("Использовано места"), "openMessage": MessageLookupByLibrary.simpleMessage("Открыть сообщение об ошибке"), - "orderCancel": m62, + "orderBookLess": MessageLookupByLibrary.simpleMessage("Меньше"), + "orderBookMore": MessageLookupByLibrary.simpleMessage("Более"), + "orderCancel": m79, "orderCreated": MessageLookupByLibrary.simpleMessage("Ордер создан"), "orderCreatedInfo": MessageLookupByLibrary.simpleMessage("Ордер успешно создан"), "orderDetailsAddress": MessageLookupByLibrary.simpleMessage("Адрес"), "orderDetailsCancel": MessageLookupByLibrary.simpleMessage("Отменить"), - "orderDetailsExpedient": m63, - "orderDetailsExpensive": m64, + "orderDetailsExpedient": m80, + "orderDetailsExpensive": m81, "orderDetailsFor": MessageLookupByLibrary.simpleMessage("на"), "orderDetailsIdentical": MessageLookupByLibrary.simpleMessage("Совпадает с СЕХ"), @@ -1011,7 +1106,7 @@ class MessageLookup extends MessageLookupByLibrary { "orderDetailsSpend": MessageLookupByLibrary.simpleMessage("Отправьте"), "orderDetailsTitle": MessageLookupByLibrary.simpleMessage("Подробности"), - "orderFilled": m65, + "orderFilled": m82, "orderMatched": MessageLookupByLibrary.simpleMessage("Сделка найдена"), "orderMatching": MessageLookupByLibrary.simpleMessage("Поиск сделки в процессе"), @@ -1021,9 +1116,9 @@ class MessageLookup extends MessageLookupByLibrary { "orders": MessageLookupByLibrary.simpleMessage("ордера"), "ordersActive": MessageLookupByLibrary.simpleMessage("Активные"), "ordersHistory": MessageLookupByLibrary.simpleMessage("История"), - "ordersTableAmount": m66, - "ordersTablePrice": m67, - "ordersTableTotal": m68, + "ordersTableAmount": m83, + "ordersTablePrice": m84, + "ordersTableTotal": m85, "overwrite": MessageLookupByLibrary.simpleMessage("Перезаписать"), "ownOrder": MessageLookupByLibrary.simpleMessage("Это ваш ордер!"), "paidFromBalance": @@ -1033,6 +1128,8 @@ class MessageLookup extends MessageLookupByLibrary { "paidWith": MessageLookupByLibrary.simpleMessage("Оплачено c"), "passwordRequirement": MessageLookupByLibrary.simpleMessage( "Пароль должен содержать не менее 12 символов, включая один строчный, один заглавный и один специальный символ."), + "pastTransactionsFromDate": MessageLookupByLibrary.simpleMessage( + "Ваш кошелек покажет ваши прошлые транзакции, совершенные после указанной даты."), "paymentUriDetailsAccept": MessageLookupByLibrary.simpleMessage("Оплата"), "paymentUriDetailsAcceptQuestion": MessageLookupByLibrary.simpleMessage( @@ -1047,8 +1144,11 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("Отмена:"), "paymentUriDetailsTitle": MessageLookupByLibrary.simpleMessage("Оплата запрошена"), - "paymentUriInactiveCoin": m69, + "paymentUriInactiveCoin": m86, "placeOrder": MessageLookupByLibrary.simpleMessage("Разместить ордер"), + "pleaseAcceptAllCoinActivationRequests": + MessageLookupByLibrary.simpleMessage( + "Пожалуйста, примите все специальные запросы на активацию монет или отмените выбор монет."), "pleaseAddCoin": MessageLookupByLibrary.simpleMessage("Пожалуйста добавьте монету"), "pleaseRestart": MessageLookupByLibrary.simpleMessage( @@ -1068,21 +1168,22 @@ class MessageLookup extends MessageLookupByLibrary { "protectionCtrlWarning": MessageLookupByLibrary.simpleMessage( "Внимание, этот своп не защищен dPoW!"), "pubkey": MessageLookupByLibrary.simpleMessage("Публичный ключ"), + "qrCodeScanner": MessageLookupByLibrary.simpleMessage("Сканер QR-кода"), "question_1": MessageLookupByLibrary.simpleMessage( "Вы храните мои приватные ключи?"), - "question_10": m70, - "question_2": m71, + "question_10": m87, + "question_2": m88, "question_3": MessageLookupByLibrary.simpleMessage( "Сколько времени занимает каждый атомарный своп?"), "question_4": MessageLookupByLibrary.simpleMessage( "Необходимо ли мне быть в сети во время свопа?"), - "question_5": m72, + "question_5": m89, "question_6": MessageLookupByLibrary.simpleMessage( "Предоставляете ли вы поддержку пользователей?"), "question_7": MessageLookupByLibrary.simpleMessage( "Есть ли у вас какие-либо географические ограничения?"), - "question_8": m73, - "question_9": m74, + "question_8": m90, + "question_9": m91, "rebrandingAnnouncement": MessageLookupByLibrary.simpleMessage( "Это новая эра! Мы официально изменили наше название с «AtomicDEX» на «Komodo Wallet»."), "receive": MessageLookupByLibrary.simpleMessage("ПОЛУЧИТЬ"), @@ -1122,7 +1223,7 @@ class MessageLookup extends MessageLookupByLibrary { "rewardsReadMore": MessageLookupByLibrary.simpleMessage( "Узнать больше о KMD вознаграждениях"), "rewardsReceive": MessageLookupByLibrary.simpleMessage("Получить"), - "rewardsSuccess": m75, + "rewardsSuccess": m92, "rewardsTableFiat": MessageLookupByLibrary.simpleMessage("Фиат"), "rewardsTableRewards": MessageLookupByLibrary.simpleMessage("Вознаграждений\nKMD"), @@ -1131,9 +1232,9 @@ class MessageLookup extends MessageLookupByLibrary { "rewardsTableTitle": MessageLookupByLibrary.simpleMessage("Инфо о вознаграждениях:"), "rewardsTableUXTO": MessageLookupByLibrary.simpleMessage("UTXO,\nKMD"), - "rewardsTimeDays": m76, - "rewardsTimeHours": m77, - "rewardsTimeMin": m78, + "rewardsTimeDays": m93, + "rewardsTimeHours": m94, + "rewardsTimeMin": m95, "rewardsTitle": MessageLookupByLibrary.simpleMessage("Инфо о вознаграждениях:"), "russianLanguage": MessageLookupByLibrary.simpleMessage("Русский"), @@ -1179,12 +1280,14 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("Выбрать все Тестовые Активы"), "searchFilterSubtitleUBQ": MessageLookupByLibrary.simpleMessage("Выбрать все Ubiq монеты"), + "searchFilterSubtitleZHTLC": + MessageLookupByLibrary.simpleMessage("Выбрать все монеты ZHTLC"), "searchFilterSubtitleutxo": MessageLookupByLibrary.simpleMessage("Выбрать все UTXO монеты"), "searchForTicker": MessageLookupByLibrary.simpleMessage("Найти Тикер"), "seconds": MessageLookupByLibrary.simpleMessage("сек"), "security": MessageLookupByLibrary.simpleMessage("Безопасность"), - "seeOrders": m79, + "seeOrders": m96, "seeTxHistory": MessageLookupByLibrary.simpleMessage("Показать историю транзакций"), "seedPhrase": MessageLookupByLibrary.simpleMessage("Seed Фраза"), @@ -1199,6 +1302,7 @@ class MessageLookup extends MessageLookupByLibrary { "Выберите монету, которую хотите купить"), "selectCoinToSell": MessageLookupByLibrary.simpleMessage( "Выберите монету, которую хотите продать"), + "selectDate": MessageLookupByLibrary.simpleMessage("Выберите дату"), "selectFileImport": MessageLookupByLibrary.simpleMessage("Выбрать файл"), "selectLanguage": MessageLookupByLibrary.simpleMessage("Выбрать Язык"), @@ -1224,10 +1328,13 @@ class MessageLookup extends MessageLookupByLibrary { "settingLanguageTitle": MessageLookupByLibrary.simpleMessage("Языки"), "settings": MessageLookupByLibrary.simpleMessage("Настройки"), "share": MessageLookupByLibrary.simpleMessage("ПОДЕЛИТЬСЯ"), - "shareAddress": m80, + "shareAddress": m97, + "shouldScanPastTransaction": m98, + "showAddress": MessageLookupByLibrary.simpleMessage("Показать адрес"), "showDetails": MessageLookupByLibrary.simpleMessage("Показать детали"), "showMyOrders": MessageLookupByLibrary.simpleMessage("ПОКАЗАТЬ МОИ ОРДЕРЫ"), + "showingOrders": m99, "signInWithPassword": MessageLookupByLibrary.simpleMessage("Войти с паролем"), "signInWithSeedPhrase": @@ -1235,23 +1342,23 @@ class MessageLookup extends MessageLookupByLibrary { "simple": MessageLookupByLibrary.simpleMessage("Просто"), "simpleTradeActivate": MessageLookupByLibrary.simpleMessage("Активировать"), - "simpleTradeBuyHint": m81, + "simpleTradeBuyHint": m100, "simpleTradeBuyTitle": MessageLookupByLibrary.simpleMessage("Купить"), "simpleTradeClose": MessageLookupByLibrary.simpleMessage("Закрыть"), - "simpleTradeMaxActiveCoins": m82, - "simpleTradeNotActive": m83, + "simpleTradeMaxActiveCoins": m101, + "simpleTradeNotActive": m102, "simpleTradeRecieve": MessageLookupByLibrary.simpleMessage("Получить"), - "simpleTradeSellHint": m84, + "simpleTradeSellHint": m103, "simpleTradeSellTitle": MessageLookupByLibrary.simpleMessage("Продать"), "simpleTradeSend": MessageLookupByLibrary.simpleMessage("Отправить"), "simpleTradeShowLess": MessageLookupByLibrary.simpleMessage("Скрыть"), "simpleTradeShowMore": MessageLookupByLibrary.simpleMessage("Показать больше"), - "simpleTradeUnableActivate": m85, + "simpleTradeUnableActivate": m104, "skip": MessageLookupByLibrary.simpleMessage("Пропустить"), "snackbarDismiss": MessageLookupByLibrary.simpleMessage("Убрать"), - "soundCantPlayThatMsg": m86, - "soundPlayedWhen": m87, + "soundCantPlayThatMsg": m105, + "soundPlayedWhen": m106, "soundSettingsLink": MessageLookupByLibrary.simpleMessage("Звук"), "soundSettingsTitle": MessageLookupByLibrary.simpleMessage("Настройки звука"), @@ -1263,19 +1370,21 @@ class MessageLookup extends MessageLookupByLibrary { "soundsNote": MessageLookupByLibrary.simpleMessage( "Обратите внимание что вы можете установить свои собственные звуки в настройках приложения."), "spanishLanguage": MessageLookupByLibrary.simpleMessage("Испанский"), + "startDate": MessageLookupByLibrary.simpleMessage("Дата начала"), + "startSwap": MessageLookupByLibrary.simpleMessage("Начать обмен"), "step": MessageLookupByLibrary.simpleMessage("Шаг"), "success": MessageLookupByLibrary.simpleMessage("Успех!"), "support": MessageLookupByLibrary.simpleMessage("Поддержка"), - "supportLinksDesc": m88, + "supportLinksDesc": m107, "swap": MessageLookupByLibrary.simpleMessage("обмен"), "swapCurrent": MessageLookupByLibrary.simpleMessage("Текущий"), "swapDetailTitle": MessageLookupByLibrary.simpleMessage("ПОДТВЕРДИТЕ ДЕТАЛИ ОБМЕНА"), "swapEstimated": MessageLookupByLibrary.simpleMessage("прибл"), "swapFailed": MessageLookupByLibrary.simpleMessage("Обмен не удался"), - "swapGasActivate": m89, - "swapGasAmount": m90, - "swapGasAmountRequired": m91, + "swapGasActivate": m108, + "swapGasAmount": m109, + "swapGasAmountRequired": m110, "swapOngoing": MessageLookupByLibrary.simpleMessage("Обмен в процессе"), "swapProgress": MessageLookupByLibrary.simpleMessage("Детали прогресса"), @@ -1284,6 +1393,13 @@ class MessageLookup extends MessageLookupByLibrary { "swapTotal": MessageLookupByLibrary.simpleMessage("Всего"), "swapUUID": MessageLookupByLibrary.simpleMessage("UUID обмена"), "switchTheme": MessageLookupByLibrary.simpleMessage("Переключить тему"), + "syncFromDate": MessageLookupByLibrary.simpleMessage( + "Синхронизировать с указанной даты"), + "syncFromSaplingActivation": MessageLookupByLibrary.simpleMessage( + "Синхронизация с активацией саженца"), + "syncNewTransactions": MessageLookupByLibrary.simpleMessage( + "Синхронизировать новые транзакции"), + "syncTransactionsQuestion": m111, "tagAVX20": MessageLookupByLibrary.simpleMessage("AVX20"), "tagBEP20": MessageLookupByLibrary.simpleMessage("BEP20"), "tagERC20": MessageLookupByLibrary.simpleMessage("ERC20"), @@ -1298,6 +1414,7 @@ class MessageLookup extends MessageLookupByLibrary { "tagQRC20": MessageLookupByLibrary.simpleMessage("QRC20"), "tagSBCH": MessageLookupByLibrary.simpleMessage("SBCH"), "tagUBQ": MessageLookupByLibrary.simpleMessage("UBQ"), + "tagZHTLC": MessageLookupByLibrary.simpleMessage("ZHTLC"), "takerOrder": MessageLookupByLibrary.simpleMessage("Ордер Тейкера"), "timeOut": MessageLookupByLibrary.simpleMessage("Таймаут"), "titleCreatePassword": @@ -1323,6 +1440,12 @@ class MessageLookup extends MessageLookupByLibrary { "tradingFee": MessageLookupByLibrary.simpleMessage("торговая комиссия:"), "tradingMode": MessageLookupByLibrary.simpleMessage("Режим Торговли"), + "transactionAddress": + MessageLookupByLibrary.simpleMessage("Адрес транзакции"), + "transactionHidden": + MessageLookupByLibrary.simpleMessage("Транзакция скрыта"), + "transactionHiddenPhishing": MessageLookupByLibrary.simpleMessage( + "Эта транзакция была скрыта из-за возможной попытки фишинга."), "tryRestarting": MessageLookupByLibrary.simpleMessage( "даже если после этого некоторые монеты все еще не активированы, попробуйте перезапустить приложение."), "turkishLanguage": MessageLookupByLibrary.simpleMessage("Турецкий"), @@ -1337,26 +1460,26 @@ class MessageLookup extends MessageLookupByLibrary { "Слишком много запросов.\nПревышен лимит запросов истории транзакций.\nПовторите попытку позже."), "txNotConfirmed": MessageLookupByLibrary.simpleMessage("НЕПОДТВЕРЖДЕНА"), - "txleft": m92, + "txleft": m112, "ukrainianLanguage": MessageLookupByLibrary.simpleMessage("Украинский"), "unlock": MessageLookupByLibrary.simpleMessage("разблокировать"), "unlockFunds": MessageLookupByLibrary.simpleMessage("Разблокировать средства"), - "unlockSuccess": m93, + "unlockSuccess": m113, "unspendable": MessageLookupByLibrary.simpleMessage("неизрасходованный"), "updatesAvailable": MessageLookupByLibrary.simpleMessage("Доступна новая версия"), "updatesChecking": MessageLookupByLibrary.simpleMessage("Проверка обновлений..."), - "updatesCurrentVersion": m94, + "updatesCurrentVersion": m114, "updatesNotifAvailable": MessageLookupByLibrary.simpleMessage( "Доступна новая версия. Пожалуйста, обновитесь."), - "updatesNotifAvailableVersion": m95, + "updatesNotifAvailableVersion": m115, "updatesNotifTitle": MessageLookupByLibrary.simpleMessage("Доступно обновление"), "updatesSkip": MessageLookupByLibrary.simpleMessage("Пропустить"), - "updatesTitle": m96, + "updatesTitle": m116, "updatesUpToDate": MessageLookupByLibrary.simpleMessage( "Установлена последняя версия"), "updatesUpdate": MessageLookupByLibrary.simpleMessage("Обновление"), @@ -1382,9 +1505,9 @@ class MessageLookup extends MessageLookupByLibrary { "warningOkBtn": MessageLookupByLibrary.simpleMessage("OK"), "warningShareLogs": MessageLookupByLibrary.simpleMessage( "Предупреждение - в особых случаях логи могут содержать конфиденциальную информацию, которую можно использовать для доступа к монетам из незавершенных свопов!"), - "weFailedTo": m97, - "weFailedToActivate": m98, - "welcomeInfo": m99, + "weFailedTo": m117, + "weFailedToActivate": m118, + "welcomeInfo": m119, "welcomeLetSetUp": MessageLookupByLibrary.simpleMessage("ДАВАЙТЕ ВСЕ НАСТРОИМ!"), "welcomeTitle": @@ -1392,15 +1515,17 @@ class MessageLookup extends MessageLookupByLibrary { "welcomeWallet": MessageLookupByLibrary.simpleMessage("кошелек"), "willBeRedirected": MessageLookupByLibrary.simpleMessage( "По завершении вы будете перенаправлены на страницу портфолио."), + "willTakeTime": MessageLookupByLibrary.simpleMessage( + "Это займет некоторое время, и приложение должно оставаться на переднем плане.\nЗакрытие приложения во время активации может привести к проблемам."), "withdraw": MessageLookupByLibrary.simpleMessage("Вывести"), - "withdrawCameraAccessText": m100, + "withdrawCameraAccessText": m120, "withdrawCameraAccessTitle": MessageLookupByLibrary.simpleMessage("Доступ запрещен"), "withdrawConfirm": MessageLookupByLibrary.simpleMessage("Подтвердите вывод"), "withdrawConfirmError": MessageLookupByLibrary.simpleMessage( "Что-то пошло не так. Попробуйте позже."), - "withdrawValue": m101, + "withdrawValue": m121, "wrongCoinSpan1": MessageLookupByLibrary.simpleMessage( "Вы пытаетесь сканировать QR code для оплаты"), "wrongCoinSpan2": @@ -1423,7 +1548,7 @@ class MessageLookup extends MessageLookupByLibrary { "у вас есть ордер, которому могут соответствовать новые ордеры"), "youAreSending": MessageLookupByLibrary.simpleMessage("Вы отправляете:"), - "youWillReceiveClaim": m102, + "youWillReceiveClaim": m122, "youWillReceived": MessageLookupByLibrary.simpleMessage("Вы получите:"), "yourWallet": MessageLookupByLibrary.simpleMessage("ваш кошелек") }; diff --git a/lib/l10n/messages_tr.dart b/lib/l10n/messages_tr.dart index 0167c612a..eb67b86c2 100644 --- a/lib/l10n/messages_tr.dart +++ b/lib/l10n/messages_tr.dart @@ -19,261 +19,305 @@ typedef String MessageIfAbsent(String messageStr, List args); class MessageLookup extends MessageLookupByLibrary { String get localeName => 'tr'; - static m0(name) => "${name} başarıyla etkinleştirildi !"; + static m0(protocolName) => "${protocolName} paraları etkinleştirilsin mi?"; - static m1(title) => "Yalnızca ${title} adresli kişiler gösteriliyor"; + static m1(coinName) => "${coinName} etkinleştiriliyor"; - static m2(abbr) => + static m2(coinName) => "${coinName} Aktivasyonu"; + + static m3(protocolName) => "${protocolName} Etkinleştirme Devam Ediyor"; + + static m4(name) => "${name} başarıyla etkinleştirildi !"; + + static m5(title) => "Yalnızca ${title} adresli kişiler gösteriliyor"; + + static m6(abbr) => "${abbr} etkinleştirilmediği için ${abbr} adresine para gönderemezsiniz. Lütfen portföye gidiniz."; - static m3(appName) => + static m7(appName) => "Hayır ! Komodo Wallet, gözetimsiz bir cüzdandır. Özel kelimeleriniz, gizli kelimeleriniz ve PIN kodunuz dahil hiçbir hassas bilgiyi kaydetmiyoruz. Bu bilgiler sadece kullanıcının cihazında tutulmaktadır ve başka bir yere gitmez. Bu sayede koin ve tokenlerinizin tüm kontrolü sizdedir."; - static m4(appName) => - "Komodo Wallet, mobil tarafında Android ve iPhone\'da, masaüstünde ise Windows, Mac, Linux işletim sistemlerinde kullanılabilir."; + static m8(appName) => + "${appName}, hem Android hem de iPhone\'da mobil cihazlar için ve Windows, Mac ve Linux işletim sistemlerinde masaüstü için kullanılabilir."; - static m5(appName) => + static m9(appName) => "Diğer DEX cüzdanlar genellikle aynı miktar koin ile tek bir alım satım emri vermeye izin verir, ara token kullanır, en önemlisi de tek bir blokzincirin koinlerinin alım satımına olanak sağlar.\n\n${appName} ise birbirinden farklı iki blokzincir ağı arasında ara token kullanmadan doğrudan takas yapmaya imkân sağlar. ${appName} \'te aynı miktar koin ile birden fazla alım satım emri verebilirsiniz. Mesela 0.1 BTC ile KMD, QTUM ve VRSC için ayrı ayrı alım emirleri verebilirsiniz ve bunlardan birinin tamamlanması halinde diğerleri kendiliğinden iptal olmuş olurlar."; - static m6(appName) => + static m10(appName) => "Her bir takasın tamamlanma sürecini etkileyen birkaç etken vardır. Takas edilen koinlerin bağlı olduğu blokzincirlerin blok çıkarım zamanları (Bitcoin en yavaşıdır) bunda etkilidir. Bunun yanında kullanıcılar, takas öncesinde güvenlik seçeneklerini özelleştirebilir. Mesela bir KMD takasına başlamadan evvel Komodo Wallet\'da işlem için 3 onayın yeterli olduğu seçeneği işaretlediğinizde takas süresi noterizasyon eklenmeyeceğinden kısalacaktır."; - static m7(appName) => + static m11(appName) => "${appName}\'te alım satım yaparken bilinmesi gereken iki tür işlem ücreti vardır.\n\n1. ${appName}, alıcı emirlerinden işlem başına yaklaşık olarak %0.13 (takriben 777\'nin 1\'i kadar, fakat bu da 0.0001\'den az olmamak kaydıyla) işlem ücreti alırken, yapıcı emirlerinden herhangi bir ücret alınmamaktadır.\n\n2. Hem yapıcı hem de alıcı emir sahiplerinin ödemesi gerekli olan ve takasın gerçekleştiği blokzincirlerin standart ağ işlem ücretleri.\n\nAğ işlem ücretleri, takas yapmak istediğiniz paritelerin kendi işleyişlerine göre değişiklik göstermektedir."; - static m8(name, link, appName, appCompanyShort) => + static m12(name, link, appName, appCompanyShort) => "Evet! ${appName}, ${appCompanyShort} ${name} aracılığıyla destek sunar. Ekip ve topluluk her zaman yardımcı olmaktan mutluluk duyar!"; - static m9(appName) => + static m13(appName) => "Hayır ! ${appName} tamamıyla merkeziyetsizdir ve kullanıcıların uygulamaya erişimi başkaları tarafından sınırlandırılamaz."; - static m10(appName, appCompanyShort) => + static m14(appName, appCompanyShort) => "${appName}, ${appCompanyShort} takımı tarafından geliştirilmiştir. ${appCompanyShort}, koin takası, Geciktirilmiş İş Kanıtı (dPoW), birlikte çalışabilen çoklu zincir mimarisi gibi yenilikçi blokzincir çözümleri geliştiren köklü bir platformdur."; - static m11(appName) => - "Tabii ki ! Daha fazla bilgi için developer documentation dökümanımızı okuyabilir ya da iş birliği teklifleriniz için bizimle iletişime geçebilirsiniz. Özel bir teknik sorunuz mu var ? ${appName} geliştirici topluluğu yardımcı olmak için her daim hazırdır."; + static m15(appName) => + "Kesinlikle! Daha fazla ayrıntı için geliştirici belgelerimizi okuyabilir veya ortaklık sorularınız için bizimle iletişime geçebilirsiniz. Belirli bir teknik sorunuz mu var? ${appName} geliştirici topluluğu her zaman yardıma hazır!"; + + static m16(coinName1, coinName2) => + "${coinName1}/${coinName2} temel alınarak"; - static m12(batteryLevelCritical) => + static m17(batteryLevelCritical) => "Telefonunuzun bataryası güvenli bir takası tamamlayamayacak (${batteryLevelCritical}%) kadar düşük. Lütfen önce şarja takıp sonra tekrar deneyiniz."; - static m13(batteryLevelLow) => + static m18(batteryLevelLow) => "Telefonunuzun bataryası %${batteryLevelLow}\'den daha az. Lütfen telefonunuzu şarj ediniz."; - static m14(seconde) => + static m19(seconde) => "Emir eşleşmesi devam ediyor, lütfen ${seconde} saniye kadar bekleyiniz."; - static m15(index) => "${index} kelimesini giriniz."; + static m20(index) => "${index} kelimesini giriniz."; - static m16(index) => + static m21(index) => "Gizli kelimeleriniz arasından ${index} olanı hangisidir ?"; - static m17(name) => "${name} kişisini silmek istediğinizden emin misiniz ?"; + static m22(coin) => "${coin} aktivasyonu iptal edildi"; + + static m23(coin) => "${coin} başarıyla etkinleştirildi"; + + static m24(protocolName) => "${protocolName} parası etkinleştirildi"; - static m18(iUnderstand) => + static m25(protocolName) => + "${protocolName} parası başarıyla etkinleştirildi"; + + static m26(protocolName) => "${protocolName} parası etkinleştirilmedi"; + + static m27(name) => "${name} kişisini silmek istediğinizden emin misiniz ?"; + + static m28(iUnderstand) => "Özelleştirilmiş gizli kelime kullanımı yeterince güvenli olmayabilir ve uygulama tarafından oluşturulan BIP39 uyumlu gizli kelimeler ya da özel anahtara (WIF) kıyasla daha kolay kırılabilmektedir. Riskleri kabul edip ne yaptığınızdan emin olduğunuzu tasdiklemek için aşağıdaki kutucuğa \"${iUnderstand}\" yazınız."; - static m19(abbr) => "${abbr} adresini girin"; + static m29(coinName) => "${coinName} işlem ücretini alın"; + + static m30(coinName) => "${coinName} işlem ücretini gönder"; - static m21(gas) => "Yeteri kadar gaz ücreti yok, en az ${gas} Gwei gerekli"; + static m31(abbr) => "${abbr} adresini girin"; - static m22(appName, appCompanyLong) => + static m33(gas) => "Yeteri kadar gaz ücreti yok, en az ${gas} Gwei gerekli"; + + static m34(appName, appCompanyLong) => "This End-User License Agreement (\'EULA\') is a legal agreement between you and ${appCompanyLong}.\n\nThis EULA agreement governs your acquisition and use of our ${appName} mobile software (\'Software\', \'Mobile Application\', \'Application\' or \'App\') directly from ${appCompanyLong} or indirectly through a ${appCompanyLong} authorized entity, reseller or distributor (a \'Distributor\').\nPlease read this EULA agreement carefully before completing the installation process and using the ${appName} mobile software. It provides a license to use the ${appName} mobile software and contains warranty information and liability disclaimers.\nIf you register for the beta program of the ${appName} mobile software, this EULA agreement will also govern that trial. By clicking \'accept\' or installing and/or using the ${appName} mobile software, you are confirming your acceptance of the Software and agreeing to become bound by the terms of this EULA agreement.\nIf you are entering into this EULA agreement on behalf of a company or other legal entity, you represent that you have the authority to bind such entity and its affiliates to these terms and conditions. If you do not have such authority or if you do not agree with the terms and conditions of this EULA agreement, do not install or use the Software, and you must not accept this EULA agreement.\nThis EULA agreement shall apply only to the Software supplied by ${appCompanyLong} herewith regardless of whether other software is referred to or described herein. The terms also apply to any ${appCompanyLong} updates, supplements, Internet-based services, and support services for the Software, unless other terms accompany those items on delivery. If so, those terms apply.\n\nLICENSE GRANT\n\n${appCompanyLong} hereby grants you a personal, non-transferable, non-exclusive license to use the ${appName} mobile software on your devices in accordance with the terms of this EULA agreement.\n\nYou are permitted to load the ${appName} mobile software (for example a PC, laptop, mobile or tablet) under your control. You are responsible for ensuring your device meets the minimum security and resource requirements of the ${appName} mobile software.\n\nYou are not permitted to:\n(a) edit, alter, modify, adapt, translate or otherwise change the whole or any part of the Software nor permit the whole or any part of the Software to be combined with or become incorporated in any other software, nor decompile, disassemble or reverse engineer the Software or attempt to do any such things;\n(b) reproduce, copy, distribute, resell or otherwise use the Software for any commercial purpose;\n(c) use the Software in any way which breaches any applicable local, national or international law;\n(d) use the Software for any purpose that ${appCompanyLong} considers is a breach of this EULA agreement.\n\nINTELLECTUAL PROPERTY AND OWNERSHIP\n\n${appCompanyLong} shall at all times retain ownership of the Software as originally downloaded by you and all subsequent downloads of the Software by you. The Software (and the copyright, and other intellectual property rights of whatever nature in the Software, including any modifications made thereto) are and shall remain the property of ${appCompanyLong}.\n\n${appCompanyLong} reserves the right to grant licenses to use the Software to third parties.\n\nTERMINATION\n\nThis EULA agreement is effective from the date you first use the Software and shall continue until terminated. You may terminate it at any time upon written notice to ${appCompanyLong}.\nIt will also terminate immediately if you fail to comply with any term of this EULA agreement. Upon such termination, the licenses granted by this EULA agreement will immediately terminate and you agree to stop all access and use of the Software. The provisions that by their nature continue and survive will survive any termination of this EULA agreement.\n\nGOVERNING LAW\n\nThis EULA agreement, and any dispute arising out of or in connection with this EULA agreement, shall be governed by and construed in accordance with the laws of Vietnam.\n\nThis document was last updated on January 31st, 2020"; - static m23(appCompanyLong) => + static m35(appCompanyLong) => "${appCompanyLong} is the owner and/or authorised user of all trademarks, service marks, design marks, patents, copyrights, database rights and all other intellectual property appearing on or contained within the application, unless otherwise indicated. All information, text, material, graphics, software and advertisements on the application interface are copyright of ${appCompanyLong}, its suppliers and licensors, unless otherwise expressly indicated by ${appCompanyLong}. \nExcept as provided in the Terms, use of the application does not grant You any right, title, interest or license to any such intellectual property You may have access to on the application. \nWe own the rights, or have permission to use, the trademarks listed in our application. You are not authorised to use any of those trademarks without our written authorization – doing so would constitute a breach of our or another party’s intellectual property rights. \nAlternatively, we might authorise You to use the content in our application if You previously contact us and we agree in writing."; - static m24(appCompanyShort, appCompanyLong) => + static m36(appCompanyShort, appCompanyLong) => "${appCompanyLong} cannot guarantee the safety or security of your computer systems. We do not accept liability for any loss or corruption of electronically stored data or any damage to any computer system occurred in connection with the use of the application or of the user content.\n${appCompanyLong} makes no representation or warranty of any kind, express or implied, as to the operation of the application or the user content. You expressly agree that your use of the application is entirely at your sole risk.\nYou agree that the content provided in the application and the user content do not constitute financial product, legal or taxation advice, and You agree on not representing the user content or the application as such.\nTo the extent permitted by current legislation, the application is provided on an “as is, as available” basis.\n\n${appCompanyLong} expressly disclaims all responsibility for any loss, injury, claim, liability, or damage, or any indirect, incidental, special or consequential damages or loss of profits whatsoever resulting from, arising out of or in any way related to:\n(a) any errors in or omissions of the application and/or the user content, including but not limited to technical inaccuracies and typographical errors;\n(b) any third party website, application or content directly or indirectly accessed through links in the application, including but not limited to any errors or omissions;\n(c) the unavailability of the application or any portion of it;\n(d) your use of the application;\n(e) your use of any equipment or software in connection with the application.\n\nAny Services offered in connection with the Platform are provided on an \'as is\' basis, without any representation or warranty, whether express, implied or statutory. To the maximum extent permitted by applicable law, we specifically disclaim any implied warranties of title, merchantability, suitability for a particular purpose and/or non-infringement. We do not make any representations or warranties that use of the Platform will be continuous, uninterrupted, timely, or error-free.\nWe make no warranty that any Platform will be free from viruses, malware, or other related harmful material and that your ability to access any Platform will be uninterrupted. Any defects or malfunction in the product should be directed to the third party offering the Platform, not to ${appCompanyShort}.\nWe will not be responsible or liable to You for any loss of any kind, from action taken, or taken in reliance on the material or information contained in or through the Platform.\nThis is experimental and unfinished software. Use at your own risk. No warranty for any kind of damage. By using this application you agree to this terms and conditions."; - static m25(appCompanyLong) => + static m37(appCompanyLong) => "You agree and understand that there are risks associated with utilizing Services involving Virtual Currencies including, but not limited to, the risk of failure of hardware, software and internet connections, the risk of malicious software introduction, and the risk that third parties may obtain unauthorized access to information stored within your Wallet, including but not limited to your public and private keys. You agree and understand that ${appCompanyLong} will not be responsible for any communication failures, disruptions, errors, distortions or delays You may experience when using the Services, however caused.\nYou accept and acknowledge that there are risks associated with utilizing any virtual currency network, including, but not limited to, the risk of unknown vulnerabilities in or unanticipated changes to the network protocol. You acknowledge and accept that ${appCompanyLong} has no control over any cryptocurrency network and will not be responsible for any harm occurring as a result of such risks, including, but not limited to, the inability to reverse a transaction, and any losses in connection therewith due to erroneous or fraudulent actions.\nThe risk of loss in using Services involving Virtual Currencies may be substantial and losses may occur over a short period of time. In addition, price and liquidity are subject to significant fluctuations that may be unpredictable.\nVirtual Currencies are not legal tender and are not backed by any sovereign government. In addition, the legislative and regulatory landscape around Virtual Currencies is constantly changing and may affect your ability to use, transfer, or exchange Virtual Currencies.\nCFDs are complex instruments and come with a high risk of losing money rapidly due to leverage. 80.6% of retail investor accounts lose money when trading CFDs with this provider. You should consider whether You understand how CFDs work and whether You can afford to take the high risk of losing your money."; - static m26(appCompanyLong) => + static m38(appCompanyLong) => "You agree to indemnify, defend and hold harmless ${appCompanyLong}, its officers, directors, employees, agents, licensors, suppliers and any third party information providers to the application from and against all losses, expenses, damages and costs, including reasonable lawyer fees, resulting from any violation of the Terms by You.\nYou also agree to indemnify ${appCompanyLong} against any claims that information or material which You have submitted to ${appCompanyLong} is in violation of any law or in breach of any third party rights (including, but not limited to, claims in respect of defamation, invasion of privacy, breach of confidence, infringement of copyright or infringement of any other intellectual property right)."; - static m27(appCompanyLong) => + static m39(appCompanyLong) => "In order to be completed, any Virtual Currency transaction created with the ${appCompanyLong} must be confirmed and recorded in the Virtual Currency ledger associated with the relevant Virtual Currency network. Such networks are decentralized, peer-to-peer networks supported by independent third parties, which are not owned, controlled or operated by ${appCompanyLong}.\n${appCompanyLong} has no control over any Virtual Currency network and therefore cannot and does not ensure that any transaction details You submit via our Services will be confirmed on the relevant Virtual Currency network. You agree and understand that the transaction details You submit via our Services may not be completed, or may be substantially delayed, by the Virtual Currency network used to process the transaction. We do not guarantee that the Wallet can transfer title or right in any Virtual Currency or make any warranties whatsoever with regard to title.\nOnce transaction details have been submitted to a Virtual Currency network, we cannot assist You to cancel or otherwise modify your transaction or transaction details. ${appCompanyLong} has no control over any Virtual Currency network and does not have the ability to facilitate any cancellation or modification requests.\nIn the event of a Fork, ${appCompanyLong} may not be able to support activity related to your Virtual Currency. You agree and understand that, in the event of a Fork, the transactions may not be completed, completed partially, incorrectly completed, or substantially delayed. ${appCompanyLong} is not responsible for any loss incurred by You caused in whole or in part, directly or indirectly, by a Fork.\nIn no event shall ${appCompanyLong}, its affiliates and service providers, or any of their respective officers, directors, agents, employees or representatives, be liable for any lost profits or any special, incidental, indirect, intangible, or consequential damages, whether based on contract, tort, negligence, strict liability, or otherwise, arising out of or in connection with authorized or unauthorized use of the services, or this agreement, even if an authorized representative of ${appCompanyLong} has been advised of, has known of, or should have known of the possibility of such damages. \nFor example (and without limiting the scope of the preceding sentence), You may not recover for lost profits, lost business opportunities, or other types of special, incidental, indirect, intangible, or consequential damages. Some jurisdictions do not allow the exclusion or limitation of incidental or consequential damages, so the above limitation may not apply to You. \nWe will not be responsible or liable to You for any loss and take no responsibility for damages or claims arising in whole or in part, directly or indirectly from: \n(a) user error such as forgotten passwords, incorrectly constructed transactions, or mistyped Virtual Currency addresses; \n(b) server failure or data loss; \n(c) corrupted or otherwise non-performing Wallets or Wallet files; \n(d) unauthorized access to applications; \n(e) any unauthorized activities, including without limitation the use of hacking, viruses, phishing, brute forcing or other means of attack against the Services."; - static m28(appCompanyShort, appCompanyLong) => + static m40(appCompanyShort, appCompanyLong) => "For the avoidance of doubt, ${appCompanyLong} does not provide investment, tax or legal advice, nor does ${appCompanyLong} broker trades on your behalf. All ${appCompanyLong} trades are executed automatically, based on the parameters of your order instructions and in accordance with posted Trade execution procedures, and You are solely responsible for determining whether any investment, investment strategy or related transaction is appropriate for You based on your personal investment objectives, financial circumstances and risk tolerance. You should consult your legal or tax professional regarding your specific situation. Neither ${appCompanyShort} nor its owners, members, officers, directors, partners, consultants, nor anyone involved in the publication of this application, is a registered investment adviser or broker-dealer or associated person with a registered investment adviser or broker-dealer and none of the foregoing make any recommendation that the purchase or sale of crypto-assets or securities of any company profiled in the mobile Application is suitable or advisable for any person or that an investment or transaction in such crypto-assets or securities will be profitable. The information contained in the mobile Application is not intended to be, and shall not constitute, an offer to sell or the solicitation of any offer to buy any crypto-asset or security. The information presented in the mobile Application is provided for informational purposes only and is not to be treated as advice or a recommendation to make any specific investment or transaction. Please, consult with a qualified professional before making any decisions. The opinions and analysis included in this applications are based on information from sources deemed to be reliable and are provided “as is” in good faith. ${appCompanyShort} makes no representation or warranty, expressed, implied, or statutory, as to the accuracy or completeness of such information, which may be subject to change without notice. ${appCompanyShort} shall not be liable for any errors or any actions taken in relation to the above. Statements of opinion and belief are those of the authors and/or editors who contribute to this application, and are based solely upon the information possessed by such authors and/or editors. No inference should be drawn that ${appCompanyShort} or such authors or editors have any special or greater knowledge about the crypto-assets or companies profiled or any particular expertise in the industries or markets in which the profiled crypto-assets and companies operate and compete. Information on this application is obtained from sources deemed to be reliable; however, ${appCompanyShort} takes no responsibility for verifying the accuracy of such information and makes no representation that such information is accurate or complete. Certain statements included in this application may be forward-looking statements based on current expectations. ${appCompanyShort} makes no representation and provides no assurance or guarantee that such forward-looking statements will prove to be accurate. Persons using the ${appCompanyShort} application are urged to consult with a qualified professional with respect to an investment or transaction in any crypto-asset or company profiled herein. Additionally, persons using this application expressly represent that the content in this application is not and will not be a consideration in such persons’ investment or transaction decisions. Traders should verify independently information provided in the ${appCompanyShort} application by completing their own due diligence on any crypto-asset or company in which they are contemplating an investment or transaction of any kind and review a complete information package on that crypto-asset or company, which should include, but not be limited to, related blog updates and press releases. Past performance of profiled crypto-assets and securities is not indicative of future results. Crypto-assets and companies profiled on this site may lack an active trading market and invest in a crypto-asset or security that lacks an active trading market or trade on certain media, platforms and markets are deemed highly speculative and carry a high degree of risk. Anyone holding such crypto-assets and securities should be financially able and prepared to bear the risk of loss and the actual loss of his or her entire trade. The information in this application is not designed to be used as a basis for an investment decision. Persons using the ${appCompanyShort} application should confirm to their own satisfaction the veracity of any information prior to entering into any investment or making any transaction. The decision to buy or sell any crypto-asset or security that may be featured by ${appCompanyShort} is done purely and entirely at the reader’s own risk. As a reader and user of this application, You agree that under no circumstances will You seek to hold liable owners, members, officers, directors, partners, consultants or other persons involved in the publication of this application for any losses incurred by the use of information contained in this application ${appCompanyShort} and its contractors and affiliates may profit in the event the crypto-assets and securities increase or decrease in value. Such crypto-assets and securities may be bought or sold from time to time, even after ${appCompanyShort} has distributed positive information regarding the crypto-assets and companies. ${appCompanyShort} has no obligation to inform readers of its trading activities or the trading activities of any of its owners, members, officers, directors, contractors and affiliates and/or any companies affiliated with BC Relations’ owners, members, officers, directors, contractors and affiliates. ${appCompanyShort} and its affiliates may from time to time enter into agreements to purchase crypto-assets or securities to provide a method to reach their goals."; - static m29(appCompanyLong) => + static m41(appCompanyLong) => "The Terms are effective until terminated by ${appCompanyLong}. \nIn the event of termination, You are no longer authorized to access the Application, but all restrictions imposed on You and the disclaimers and limitations of liability set out in the Terms will survive termination. \nSuch termination shall not affect any legal right that may have accrued to ${appCompanyLong} against You up to the date of termination. \n${appCompanyLong} may also remove the Application as a whole or any sections or features of the Application at any time. "; - static m30(appCompanyLong) => + static m42(appCompanyLong) => "The provisions of previous paragraphs are for the benefit of ${appCompanyLong} and its officers, directors, employees, agents, licensors, suppliers, and any third party information providers to the Application. Each of these individuals or entities shall have the right to assert and enforce those provisions directly against You on its own behalf."; - static m31(appName, appCompanyLong) => + static m43(appName, appCompanyLong) => "${appName} mobile is a non-custodial, decentralized and blockchain based application and as such does ${appCompanyLong} never store any user-data (accounts and authentication data). \nWe also collect and process non-personal, anonymized data for statistical purposes and analysis and to help us provide a better service.\n\nThis document was last updated on January 31st, 2020"; - static m32(appName, appCompanyLong) => + static m44(appName, appCompanyLong) => "This disclaimer applies to the contents and services of the app ${appName} and is valid for all users of the “Application” (\'Software\', “Mobile Application”, “Application” or “App”).\n\nThe Application is owned by ${appCompanyLong}.\n\nWe reserve the right to amend the following Terms and Conditions (governing the use of the application “${appName} mobile”) at any time without prior notice and at our sole discretion. It is your responsibility to periodically check this Terms and Conditions for any updates to these Terms, which shall come into force once published.\nYour continued use of the application shall be deemed as acceptance of the following Terms.\nWe are a company incorporated in Vietnam and these Terms and Conditions are governed by and subject to the laws of Vietnam.\nIf You do not agree with these Terms and Conditions, You must not use or access this software.\n"; - static m33(appName) => + static m45(appName) => "You are not allowed to decompile, decode, disassemble, rent, lease, loan, sell, sublicense, or create derivative works from the ${appName} mobile application or the user content. Nor are You allowed to use any network monitoring or detection software to determine the software architecture, or extract information about usage or individuals’ or users’ identities. \nYou are not allowed to copy, modify, reproduce, republish, distribute, display, or transmit for commercial, non-profit or public purposes all or any portion of the application or the user content without our prior written authorization."; - static m34(appName, appCompanyLong) => + static m46(appName, appCompanyLong) => "If you create an account in the Mobile Application, you are responsible for maintaining the security of your account and you are fully responsible for all activities that occur under the account and any other actions taken in connection with it. We will not be liable for any acts or omissions by you, including any damages of any kind incurred as a result of such acts or omissions. \n\n${appName} mobile is a non-custodial wallet implementation and thus ${appCompanyLong} can not access nor restore your account in case of (data) loss."; - static m35(appName) => + static m47(appName) => "End-User License Agreement (EULA) of ${appName} mobile:"; - static m36(coin) => "${coin} musluğuna talep gönderiliyor.."; + static m48(coinAbbr) => "${coinAbbr} aktivasyonu iptal edilemedi"; + + static m49(coin) => "${coin} musluğuna talep gönderiliyor.."; - static m37(appCompanyShort) => "${appCompanyShort} haberleri"; + static m50(appCompanyShort) => "${appCompanyShort} haberleri"; - static m38(value) => "Ücretler en fazla ${value} olmalıdır"; + static m51(value) => "Ücretler en fazla ${value} olmalıdır"; - static m39(coin) => "${coin} gideri"; + static m52(coin) => "${coin} gideri"; - static m40(coin) => "Lütfen ${coin} koinini aktifleştirin."; + static m53(coin) => "Lütfen ${coin} koinini aktifleştirin."; - static m41(abbr) => + static m54(value) => "Gwei en fazla ${value} olmalıdır"; + + static m55(coinName) => "Gelen ${coinName} txs koruma ayarları"; + + static m56(abbr) => "${abbr} bakiyesi, alım satım işlem ücretlerini karşılamaya yetmiyor."; - static m42(coinAbbr) => "${coinAbbr} mevcut değil :("; + static m57(coin) => "Geçersiz ${coin} adresi"; - static m43(coinName) => + static m58(coinAbbr) => "${coinAbbr} mevcut değil :("; + + static m59(coinName) => "❗Dikkat! ${coinName} piyasasının 24 saatlik işlem hacmi 10 bin dolardan az!"; - static m44(coinName, number) => + static m60(value) => "Sınır en fazla ${value} olmalıdır"; + + static m61(coinName, number) => "${coinName} için yapılabilecek en düşük satış hacmi: ${number}"; - static m45(coinName, number) => + static m62(coinName, number) => "${coinName} için yapılabilecek en düşük alım hacmi: ${number}"; - static m46(buyCoin, buyAmount, sellCoin, sellAmount) => + static m63(buyCoin, buyAmount, sellCoin, sellAmount) => "En düşük emir için: ${buyCoin} ${buyAmount}\n(${sellCoin} ${sellAmount})"; - static m47(coinName, number) => + static m64(coinName, number) => "${coinName} için en düşük satım miktarı: ${number}"; - static m48(minValue, coin) => "${minValue} ${coin}\'den büyük olmalı"; + static m65(minValue, coin) => "${minValue} ${coin}\'den büyük olmalı"; - static m49(appName) => + static m66(appName) => "Lütfen artık hücresel veri kullandığınızı ve ${appName} P2P ağına katılımınızın internet trafiğini tükettiğini unutmayın. Hücresel veri planınız maliyetliyse bir WiFi ağı kullanmak daha iyidir."; - static m50(coin) => "Önce ${coin}\'i etkinleştirin ve bakiyeyi tamamlayın"; + static m67(coin) => "Önce ${coin}\'i etkinleştirin ve bakiyeyi tamamlayın"; - static m51(number) => "${number} Sipariş oluştur:"; + static m68(number) => "${number} Sipariş oluştur:"; - static m52(coin) => "${coin} bakiyesi yetersiz"; + static m69(coin) => "${coin} bakiyesi yetersiz"; - static m53(coin, fee) => + static m70(coin, fee) => "İşlem masrafını ödemeye yetecek ${coin} yok. En az ${fee} ${coin} olmalı."; - static m54(coinName) => + static m71(coinName) => "Uygun bir ${coinName} emri bulunmuyor - bir emir girmeyi deneyin veya daha sonra yeniden kontrol edin."; - static m55(coin) => "İşlem için yeteri kadar ${coin} yok !"; + static m72(coin) => "İşlem için yeteri kadar ${coin} yok !"; - static m56(sell, buy) => "${sell}/${buy} takası başarıyla tamamlandı"; + static m73(sell, buy) => "${sell}/${buy} takası başarıyla tamamlandı"; - static m57(sell, buy) => "${sell}/${buy} takası başarısız oldu"; + static m74(sell, buy) => "${sell}/${buy} takası başarısız oldu"; - static m58(sell, buy) => "${sell}/${buy} takası başladı"; + static m75(sell, buy) => "${sell}/${buy} takası başladı"; - static m59(sell, buy) => "${sell}/${buy} takas zaman aşımına uğradı"; + static m76(sell, buy) => "${sell}/${buy} takas zaman aşımına uğradı"; - static m60(coin) => "${coin} işlemi aldınız!"; + static m77(coin) => "${coin} işlemi aldınız!"; - static m61(assets) => "${assets} Varlıklar"; + static m78(assets) => "${assets} Varlıklar"; - static m62(coin) => "Tüm ${coin} emirleri iptal edilecek"; + static m79(coin) => "Tüm ${coin} emirleri iptal edilecek"; - static m63(delta) => "Ucuz: CEX + %${delta}"; + static m80(delta) => "Ucuz: CEX + %${delta}"; - static m64(delta) => "Pahalı: CEX + %${delta}"; + static m81(delta) => "Pahalı: CEX + %${delta}"; - static m65(fill) => "${fill}% tamamlandı"; + static m82(fill) => "${fill}% tamamlandı"; - static m66(coin) => "(${coin}) miktarı"; + static m83(coin) => "(${coin}) miktarı"; - static m67(coin) => "(${coin}) fiyatı"; + static m84(coin) => "(${coin}) fiyatı"; - static m68(coin) => "Toplam (${coin})"; + static m85(coin) => "Toplam (${coin})"; - static m69(abbr) => + static m86(abbr) => "${abbr} aktif değil. Lütfen aktifleştirip öyle deneyiniz."; - static m70(appName) => "Komodo Wallet\'ı hangi cihazlarda kullanabilirim ?"; + static m87(appName) => "Komodo Wallet\'ı hangi cihazlarda kullanabilirim ?"; - static m71(appName) => + static m88(appName) => "${appName}\'te alım satım yapmanın diğer DEX\'lerdekinden ne gibi farkları vardır ?"; - static m72(appName) => + static m89(appName) => "${appName}\'te işlem ücretleri nasıl hesaplanmaktadır ?"; - static m73(appName) => "Komodo Wallet\'ın arkasında kimler var ?"; + static m90(appName) => "Komodo Wallet\'ın arkasında kimler var ?"; - static m74(appName) => + static m91(appName) => "${appName} üzerinde kendi beyaz etiketli değişimimi geliştirmem mümkün mü?"; - static m75(amount) => "Başarılı ! ${amount} KMD geldi."; + static m92(amount) => "Başarılı ! ${amount} KMD geldi."; + + static m93(dd) => "${dd} gün"; - static m76(dd) => "${dd} gün"; + static m94(hh, minutes) => "${hh}sa ${minutes}dk"; - static m77(hh, minutes) => "${hh}sa ${minutes}dk"; + static m95(mm) => "${mm}dk"; - static m78(mm) => "${mm}dk"; + static m96(amount) => "${amount} adet emri görmek için tıklayın"; - static m79(amount) => "${amount} adet emri görmek için tıklayın"; + static m97(coinName, address) => "${coinName} adresim:\n${address}"; - static m80(coinName, address) => "${coinName} adresim:\n${address}"; + static m98(coin) => "Geçmişteki ${coin} işlemleri taransın mı?"; - static m81(coin) => "Lütfen alınacak ${coin} adetini girin"; + static m99(count, maxCount) => + "${maxCount} siparişten ${count} tanesi gösteriliyor."; - static m82(maxCoins) => + static m100(coin) => "Lütfen alınacak ${coin} adetini girin"; + + static m101(maxCoins) => "Maksimum aktif jeton sayısı ${maxCoins}\'dir. Lütfen bazılarını devre dışı bırakın."; - static m83(coin) => "${coin} koini aktif değil !"; + static m102(coin) => "${coin} koini aktif değil !"; - static m84(coin) => "Lütfen satmak için ${coin} miktarı girin"; + static m103(coin) => "Lütfen satmak için ${coin} miktarı girin"; - static m85(coin) => "${coin} aktifleştirilemedi"; + static m104(coin) => "${coin} aktifleştirilemedi"; - static m86(description) => + static m105(description) => "Lütfen bir mp3 ya da waw dosyası seçin. ${description}\'de ses dosyalarını oynatacağız."; - static m87(description) => "${description}\'de oynatıldı."; + static m106(description) => "${description}\'de oynatıldı."; - static m88(appName) => + static m107(appName) => "Herhangi bir sorunuz varsa veyahut ${appName} uygulamasıyla ile ilgili teknik bir hata bulduğunuzu düşünüyorsanız bunu ekibimize bildirebilir ve destek alabilirsiniz."; - static m89(coin) => "Lütfen önce ${coin} ve kontör bakiyesini etkinleştirin"; + static m108(coin) => "Lütfen önce ${coin} ve kontör bakiyesini etkinleştirin"; - static m90(coin) => + static m109(coin) => "${coin} bakiyesi, işlem ücretlerini karşılayamayacak kadar düşük."; - static m91(coin, amount) => + static m110(coin, amount) => "${coin} bakiyesi, işlem ücretlerini karşılayamayacak kadar düşük. ${amount} ${coin} gerekli."; - static m92(left) => "Kalan işlem: ${left}"; + static m111(name) => + "Hangi ${name} işlemlerini senkronize etmek istiyorsunuz?"; - static m93(amnt, hash) => + static m112(left) => "Kalan işlem: ${left}"; + + static m113(amnt, hash) => "${amnt} fonun kilidi başarıyla kaldırıldı - TX: ${hash}"; - static m94(version) => "${version} sürümünü kullanmaktasınız."; + static m114(version) => "${version} sürümünü kullanmaktasınız."; - static m95(version) => + static m115(version) => "Güncel ${version} sürümü mevcut. Lütfen güncelleyiniz."; - static m96(appName) => "Komodo Wallet güncellemeleri"; + static m116(appName) => "Komodo Wallet güncellemeleri"; - static m97(coinAbbr) => "${coinAbbr} koinini etkinleştiremedik."; + static m117(coinAbbr) => "${coinAbbr} koinini etkinleştiremedik."; - static m98(coinAbbr) => + static m118(coinAbbr) => "${coinAbbr} koinini etkinleştiremedik.\nLütfen uygulamayı yeniden başlatıp tekrar deneyiniz."; - static m99(appName) => + static m119(appName) => "Komodo Wallet mobil yerleşik üçüncü nesil DEX işlevselliği ve daha fazla özellikleri ile yeni nesil bir çoklu koin cüzdanıdır."; - static m100(appName) => + static m120(appName) => "${appName}\'in kameraya erişimi engellenmiş.\nQR kod taramasını yapabilmek için lütfen telefon ayarlarınızdan kamera erişimine izin veriniz."; - static m101(amount, coinName) => "${amount} adet ${coinName} ÇEK"; + static m121(amount, coinName) => "${amount} adet ${coinName} ÇEK"; - static m102(amount, coin) => "${amount} adet ${coin} alacaksınız"; + static m122(amount, coin) => "${amount} adet ${coin} alacaksınız"; final messages = _notInlinedMessages(_notInlinedMessages); static Map _notInlinedMessages(_) => { @@ -299,38 +343,46 @@ class MessageLookup extends MessageLookupByLibrary { "Biyometrik korumayı etkinleştir"), "activateAccessPin": MessageLookupByLibrary.simpleMessage("PIN korumasını etkinleştir"), + "activateCoins": m0, + "activating": m1, + "activation": m2, + "activationCancelled": MessageLookupByLibrary.simpleMessage( + "Coin aktivasyonu iptal edildi"), + "activationInProgress": m3, "addCoin": MessageLookupByLibrary.simpleMessage("Koin etkinleştir"), - "addingCoinSuccess": m0, + "addingCoinSuccess": m4, "addressAdd": MessageLookupByLibrary.simpleMessage("Adres Ekle"), "addressBook": MessageLookupByLibrary.simpleMessage("Adres defteri"), "addressBookEmpty": MessageLookupByLibrary.simpleMessage("Adres defteri boş"), - "addressBookFilter": m1, + "addressBookFilter": m5, "addressBookTitle": MessageLookupByLibrary.simpleMessage("Adres Defteri"), - "addressCoinInactive": m2, + "addressCoinInactive": m6, "addressNotFound": MessageLookupByLibrary.simpleMessage("Bir şey bulunamadı"), "addressSelectCoin": MessageLookupByLibrary.simpleMessage("Koin Seçin"), "addressSend": MessageLookupByLibrary.simpleMessage("Alıcı adresi"), "advanced": MessageLookupByLibrary.simpleMessage("Gelişmiş"), "all": MessageLookupByLibrary.simpleMessage("Hepsi"), + "allPastTransactions": MessageLookupByLibrary.simpleMessage( + "Cüzdanınız geçmiş işlemleri gösterecektir. Tüm bloklar indirilip taranacağından bu, önemli miktarda depolama alanı ve zaman alacaktır."), "allowCustomSeed": MessageLookupByLibrary.simpleMessage("Kişisel kelimeleri kullan"), "alreadyExists": MessageLookupByLibrary.simpleMessage("Zaten mevcut"), "amount": MessageLookupByLibrary.simpleMessage("Tutar"), "amountToSell": MessageLookupByLibrary.simpleMessage("Satılacak Tutar"), - "answer_1": m3, - "answer_10": m4, - "answer_2": m5, - "answer_3": m6, + "answer_1": m7, + "answer_10": m8, + "answer_2": m9, + "answer_3": m10, "answer_4": MessageLookupByLibrary.simpleMessage( "Evet, takas boyunca uygulamanız açık ve internetinizin de (anlık kesintilerde bir sıkıntı yoktur) bağlı olması gerekmektedir. Aksi halde; eğer yapıcı emri (maker) veren siz iseniz takasın iptal olma durumu, alıcı emri (taker) veren iseniz de koinlerinizi kaybetme riski ortaya çıkar. Komodo Wallet protokolünde takası yapan her iki tarafın da işlem boyunca çevrimiçi olması ve takasın başarılı olması için gereklidir."), - "answer_5": m7, - "answer_6": m8, - "answer_7": m9, - "answer_8": m10, - "answer_9": m11, + "answer_5": m11, + "answer_6": m12, + "answer_7": m13, + "answer_8": m14, + "answer_9": m15, "areYouSure": MessageLookupByLibrary.simpleMessage("EMİN MİSİNİZ?"), "authenticate": MessageLookupByLibrary.simpleMessage("Doğrula"), "automaticRedirected": MessageLookupByLibrary.simpleMessage( @@ -339,8 +391,9 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("maksimum hacim"), "back": MessageLookupByLibrary.simpleMessage("geri"), "backupTitle": MessageLookupByLibrary.simpleMessage("Yedekle"), - "batteryCriticalError": m12, - "batteryLowWarning": m13, + "basedOnCoinRatio": m16, + "batteryCriticalError": m17, + "batteryLowWarning": m18, "batterySavingWarning": MessageLookupByLibrary.simpleMessage( "Telefonunuz batarya tasarruf modunda. Lütfen bu modu devre dışı bırakın ya da başvuru uygulamasını arka plana KOYMAYIN. Aksi halde uygulama, işletim sisteminiz tarafından kapatılabilir ve devam etmekte olan takasınız varsa başarısız olabilir."), "bestAvailableRate": @@ -354,7 +407,7 @@ class MessageLookup extends MessageLookupByLibrary { "Eşleşme olmazsa Yapıcı Emrine çevir"), "buySuccessWaiting": MessageLookupByLibrary.simpleMessage( "Takas işlendi, lütfen bekleyiniz."), - "buySuccessWaitingError": m14, + "buySuccessWaitingError": m19, "buyTestCoinWarning": MessageLookupByLibrary.simpleMessage( "Dikkat ! Test koinlerini herhangi bir değer olmadan almak üzeresiniz."), "camoPinBioProtectionConflict": MessageLookupByLibrary.simpleMessage( @@ -385,6 +438,10 @@ class MessageLookup extends MessageLookupByLibrary { "camouflageSetup": MessageLookupByLibrary.simpleMessage("Kamuflajlı PIN Kurulumu"), "cancel": MessageLookupByLibrary.simpleMessage("İptal"), + "cancelActivation": + MessageLookupByLibrary.simpleMessage("Etkinleştirmeyi İptal Et"), + "cancelActivationQuestion": MessageLookupByLibrary.simpleMessage( + "Etkinleştirmeyi iptal etmek istediğinizden emin misiniz?"), "cancelButton": MessageLookupByLibrary.simpleMessage("İptal"), "cancelOrder": MessageLookupByLibrary.simpleMessage("Emri İptal Et"), "candleChartError": MessageLookupByLibrary.simpleMessage( @@ -400,6 +457,7 @@ class MessageLookup extends MessageLookupByLibrary { "cexData": MessageLookupByLibrary.simpleMessage("CEX verisi"), "cexDataDesc": MessageLookupByLibrary.simpleMessage( "Bu simgeyle işaretlenen piyasa verileri (fiyatlar, çizelgeler vb.) üçüncü taraf kaynaklardan (coingecko.com, openrates.io)."), + "cexRate": MessageLookupByLibrary.simpleMessage("CEX Oranı"), "changePin": MessageLookupByLibrary.simpleMessage("PIN kodunu değiştir"), "checkForUpdates": @@ -410,10 +468,10 @@ class MessageLookup extends MessageLookupByLibrary { "checkSeedPhraseButton1": MessageLookupByLibrary.simpleMessage("DEVAM"), "checkSeedPhraseButton2": MessageLookupByLibrary.simpleMessage("GERİ DÖN VE KONTROL ET"), - "checkSeedPhraseHint": m15, + "checkSeedPhraseHint": m20, "checkSeedPhraseInfo": MessageLookupByLibrary.simpleMessage( "Gizli kelimeleriniz çok önemlidir, bu yüzden onları doğru kaydettiğinizden emin olmak istiyoruz. Cüzdanınızı istediğiniz zaman kolayca geri yükleyebilmeniz için gizli kelimeleriniz hakkında size şimdi üç farklı soru soracağız."), - "checkSeedPhraseSubtile": m16, + "checkSeedPhraseSubtile": m21, "checkSeedPhraseTitle": MessageLookupByLibrary.simpleMessage( "GİZLİ KELİMELERİZİ BİR KEZ DAHA KONTROL EDİNİZ"), "chineseLanguage": MessageLookupByLibrary.simpleMessage("Çince"), @@ -430,12 +488,19 @@ class MessageLookup extends MessageLookupByLibrary { "closePreview": MessageLookupByLibrary.simpleMessage("Ön izlemeyi kapat"), "code": MessageLookupByLibrary.simpleMessage("Kod:"), + "cofirmCancelActivation": MessageLookupByLibrary.simpleMessage( + "Etkinleştirmeyi iptal etmek istediğinizden emin misiniz?"), + "coinActivationCancelled": m22, + "coinActivationSuccessfull": m23, "coinSelectClear": MessageLookupByLibrary.simpleMessage("Temizle"), "coinSelectNotFound": MessageLookupByLibrary.simpleMessage("Aktif koin yok"), "coinSelectTitle": MessageLookupByLibrary.simpleMessage("Koin Seç"), "coinsActivatedLimitReached": MessageLookupByLibrary.simpleMessage( "Maksimum varlık sayısını seçtiniz"), + "coinsAreActivated": m24, + "coinsAreActivatedSuccessfully": m25, + "coinsAreNotActivated": m26, "comingSoon": MessageLookupByLibrary.simpleMessage("Yakında..."), "commingsoon": MessageLookupByLibrary.simpleMessage("TX detayları yakında !"), @@ -465,7 +530,7 @@ class MessageLookup extends MessageLookupByLibrary { "contactCancel": MessageLookupByLibrary.simpleMessage("İptal"), "contactDelete": MessageLookupByLibrary.simpleMessage("Kişiyi Sil"), "contactDeleteBtn": MessageLookupByLibrary.simpleMessage("Sil"), - "contactDeleteWarning": m17, + "contactDeleteWarning": m27, "contactDiscardBtn": MessageLookupByLibrary.simpleMessage("Vazgeç"), "contactEdit": MessageLookupByLibrary.simpleMessage("Düzenle"), "contactExit": MessageLookupByLibrary.simpleMessage("Çık"), @@ -476,7 +541,10 @@ class MessageLookup extends MessageLookupByLibrary { "contactSave": MessageLookupByLibrary.simpleMessage("Kaydet"), "contactTitle": MessageLookupByLibrary.simpleMessage("Kişi detayları"), "contactTitleName": MessageLookupByLibrary.simpleMessage("İsim"), + "contract": MessageLookupByLibrary.simpleMessage("Sözleşme"), "convert": MessageLookupByLibrary.simpleMessage("Dönüştür"), + "couldNotLaunchUrl": + MessageLookupByLibrary.simpleMessage("URL başlatılamadı"), "couldntImportError": MessageLookupByLibrary.simpleMessage("İçeri alınamıyor"), "create": MessageLookupByLibrary.simpleMessage("Ticaret"), @@ -490,7 +558,7 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("Özelleştirilmiş gider"), "customFeeWarning": MessageLookupByLibrary.simpleMessage( "Özelleştirilmiş giderleri yalnızca ne yaptığınızdan emin olduğunuzda kullanın !"), - "customSeedWarning": m18, + "customSeedWarning": m28, "dPow": MessageLookupByLibrary.simpleMessage("Komodo dPoW Koruması"), "date": MessageLookupByLibrary.simpleMessage("Tarih"), "decryptingWallet": @@ -507,6 +575,13 @@ class MessageLookup extends MessageLookupByLibrary { "deleteWallet": MessageLookupByLibrary.simpleMessage("Cüzdanı Sil"), "deletingWallet": MessageLookupByLibrary.simpleMessage("Cüzdan siliniyor.."), + "detailedFeesReceiveCoinTransactionFee": m29, + "detailedFeesSendCoinTransactionFee": m30, + "detailedFeesSendTradingFeeTransactionFee": + MessageLookupByLibrary.simpleMessage( + "işlem ücreti gönder işlem ücreti"), + "detailedFeesTradingFee": + MessageLookupByLibrary.simpleMessage("işlem ücreti"), "details": MessageLookupByLibrary.simpleMessage("detaylar"), "deutscheLanguage": MessageLookupByLibrary.simpleMessage("Almanca"), "developerTitle": MessageLookupByLibrary.simpleMessage("Geliştirici"), @@ -517,13 +592,15 @@ class MessageLookup extends MessageLookupByLibrary { "Ekran Görüntülerini/Önizlemeyi Devre Dışı Bırak"), "disclaimerAndTos": MessageLookupByLibrary.simpleMessage( "Yasal Uyarı ve Kullanım Şartları"), + "doNotCloseTheAppTapForMoreInfo": MessageLookupByLibrary.simpleMessage( + "Uygulamayı kapatmayın. Daha fazla bilgi için dokunun..."), "done": MessageLookupByLibrary.simpleMessage("Bitti"), "dontAskAgain": MessageLookupByLibrary.simpleMessage("Tekrar sorma"), "dontWantPassword": MessageLookupByLibrary.simpleMessage("Parola istemiyorum"), "duration": MessageLookupByLibrary.simpleMessage("Süre"), "editContact": MessageLookupByLibrary.simpleMessage("Kişiyi Düzenle"), - "emptyCoin": m19, + "emptyCoin": m31, "emptyExportPass": MessageLookupByLibrary.simpleMessage( "Parola şifreleme kısmı boş kalamaz"), "emptyImportPass": @@ -532,6 +609,9 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("Kişi adı boş kalamaz"), "emptyWallet": MessageLookupByLibrary.simpleMessage("Cüzdan adı boş kalamaz"), + "enableNotificationsForActivationProgress": + MessageLookupByLibrary.simpleMessage( + "Etkinleştirme ilerlemesiyle ilgili güncellemeleri almak için lütfen bildirimleri etkinleştirin."), "enableTestCoins": MessageLookupByLibrary.simpleMessage("Test Koinlerini Aktifleştir"), "enablingTooManyAssetsSpan1": @@ -565,7 +645,7 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("Geçerli bir adres değil"), "errorNotAValidAddressSegWit": MessageLookupByLibrary.simpleMessage( "Segwiit adresler henüz desteklenmemektir"), - "errorNotEnoughGas": m21, + "errorNotEnoughGas": m33, "errorTryAgain": MessageLookupByLibrary.simpleMessage( "Hata, lütfen tekrar deneyiniz"), "errorTryLater": MessageLookupByLibrary.simpleMessage( @@ -576,32 +656,32 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("Lütfen veri giriniz"), "estimateValue": MessageLookupByLibrary.simpleMessage("Tahmini Toplam Değer"), - "eulaParagraphe1": m22, - "eulaParagraphe10": m23, - "eulaParagraphe11": m24, + "eulaParagraphe1": m34, + "eulaParagraphe10": m35, + "eulaParagraphe11": m36, "eulaParagraphe12": MessageLookupByLibrary.simpleMessage( "When accessing or using the Services, You agree that You are solely responsible for your conduct while accessing and using our Services. Without limiting the generality of the foregoing, You agree that You will not:\n(a) use the Services in any manner that could interfere with, disrupt, negatively affect or inhibit other users from fully enjoying the Services, or that could damage, disable, overburden or impair the functioning of our Services in any manner;\n(b) use the Services to pay for, support or otherwise engage in any illegal activities, including, but not limited to illegal gambling, fraud, money laundering, or terrorist activities;\n(c) use any robot, spider, crawler, scraper or other automated means or interface not provided by us to access our Services or to extract data;\n(d) use or attempt to use another user’s Wallet or credentials without authorization;\n(e) attempt to circumvent any content filtering techniques we employ, or attempt to access any service or area of our Services that You are not authorized to access;\n(f) introduce to the Services any virus, Trojan, worms, logic bombs or other harmful material;\n(g) develop any third-party applications that interact with our Services without our prior written consent;\n(h) provide false, inaccurate, or misleading information; \n(i) encourage or induce any other person to engage in any of the activities prohibited under this Section."), - "eulaParagraphe13": m25, - "eulaParagraphe14": m26, - "eulaParagraphe15": m27, - "eulaParagraphe16": m28, - "eulaParagraphe17": m29, - "eulaParagraphe18": m30, - "eulaParagraphe19": m31, - "eulaParagraphe2": m32, + "eulaParagraphe13": m37, + "eulaParagraphe14": m38, + "eulaParagraphe15": m39, + "eulaParagraphe16": m40, + "eulaParagraphe17": m41, + "eulaParagraphe18": m42, + "eulaParagraphe19": m43, + "eulaParagraphe2": m44, "eulaParagraphe3": MessageLookupByLibrary.simpleMessage( "By entering into this User (each subject accessing or using the site) Agreement (this writing) You declare that You are an individual over the age of majority (at least 18 or older) and have the capacity to enter into this User Agreement and accept to be legally bound by the terms and conditions of this User Agreement, as incorporated herein and amended from time to time."), "eulaParagraphe4": MessageLookupByLibrary.simpleMessage( "We may change the terms of this User Agreement at any time. Any such changes will take effect when published in the application, or when You use the Services.\n\nRead the User Agreement carefully every time You use our Services. Your continued use of the Services shall signify your acceptance to be bound by the current User Agreement. Our failure or delay in enforcing or partially enforcing any provision of this User Agreement shall not be construed as a waiver of any."), - "eulaParagraphe5": m33, - "eulaParagraphe6": m34, + "eulaParagraphe5": m45, + "eulaParagraphe6": m46, "eulaParagraphe7": MessageLookupByLibrary.simpleMessage( "We are not responsible for seed-phrases residing in the Mobile Application. In no event shall we be held liable for any loss of any kind. It is your sole responsibility to maintain appropriate backups of your accounts and their seedprases."), "eulaParagraphe8": MessageLookupByLibrary.simpleMessage( "You should not act, or refrain from acting solely on the basis of the content of this application. \nYour access to this application does not itself create an adviser-client relationship between You and us. \nThe content of this application does not constitute a solicitation or inducement to invest in any financial products or services offered by us. \nAny advice included in this application has been prepared without taking into account your objectives, financial situation or needs. You should consider our Risk Disclosure Notice before making any decision on whether to acquire the product described in that document."), "eulaParagraphe9": MessageLookupByLibrary.simpleMessage( "We do not guarantee your continuous access to the application or that your access or use will be error-free. \nWe will not be liable in the event that the application is unavailable to You for any reason (for example, due to computer downtime ascribable to malfunctions, upgrades, server problems, precautionary or corrective maintenance activities or interruption in telecommunication supplies). "), - "eulaTitle1": m35, + "eulaTitle1": m47, "eulaTitle10": MessageLookupByLibrary.simpleMessage("ACCESS AND SECURITY"), "eulaTitle11": MessageLookupByLibrary.simpleMessage( @@ -650,19 +730,20 @@ class MessageLookup extends MessageLookupByLibrary { "Öğeler dışa başarıyla aktarıldı."), "exportSwapsTitle": MessageLookupByLibrary.simpleMessage("Takaslar"), "exportTitle": MessageLookupByLibrary.simpleMessage("Dışa Aktar"), + "failedToCancelActivation": m48, "fakeBalanceAmt": MessageLookupByLibrary.simpleMessage("Sahte bakiye tutarı:"), "faqTitle": MessageLookupByLibrary.simpleMessage("Sıkça Sorulan Sorular"), "faucetError": MessageLookupByLibrary.simpleMessage("Hata"), - "faucetInProgress": m36, + "faucetInProgress": m49, "faucetName": MessageLookupByLibrary.simpleMessage("MUSLUK"), "faucetSuccess": MessageLookupByLibrary.simpleMessage("Başarılı"), "faucetTimedOut": MessageLookupByLibrary.simpleMessage("Talep zaman aşımına uğradı"), "feedNewsTab": MessageLookupByLibrary.simpleMessage("Haberler"), "feedNotFound": MessageLookupByLibrary.simpleMessage("Bir şey yok"), - "feedNotifTitle": m37, + "feedNotifTitle": m50, "feedReadMore": MessageLookupByLibrary.simpleMessage("Daha fazlası için.."), "feedTab": MessageLookupByLibrary.simpleMessage("Bülten"), @@ -676,7 +757,7 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("Haber bülteni güncellendi"), "feedback": MessageLookupByLibrary.simpleMessage("Geri Bildirim Gönder"), - "feesError": m38, + "feesError": m51, "filtersAll": MessageLookupByLibrary.simpleMessage("Hepsi"), "filtersButton": MessageLookupByLibrary.simpleMessage("Filtre"), "filtersClearAll": @@ -692,17 +773,25 @@ class MessageLookup extends MessageLookupByLibrary { "filtersTo": MessageLookupByLibrary.simpleMessage("e kadar"), "filtersType": MessageLookupByLibrary.simpleMessage("Alıcı/Yapıcı"), "fingerprint": MessageLookupByLibrary.simpleMessage("Parmak izi"), + "finishingUp": MessageLookupByLibrary.simpleMessage( + "Bitiriliyor, lütfen bekleyin"), + "foundQrCode": MessageLookupByLibrary.simpleMessage("QR Kodu Bulundu"), "frenchLanguage": MessageLookupByLibrary.simpleMessage("Fransızca"), "from": MessageLookupByLibrary.simpleMessage("Gönderici"), - "gasFee": m39, + "futureTransactions": MessageLookupByLibrary.simpleMessage( + "Genel anahtarınızla ilişkili etkinleştirme sonrasında gelecekte yapılacak işlemleri senkronize edeceğiz. Bu en hızlı seçenektir ve en az depolama alanını kaplar."), + "gasFee": m52, "gasLimit": MessageLookupByLibrary.simpleMessage("Gaz ücreti limiti"), - "gasNotActive": m40, + "gasNotActive": m53, "gasPrice": MessageLookupByLibrary.simpleMessage("Gaz ücreti"), "generalPinNotActive": MessageLookupByLibrary.simpleMessage( "Normal PIN koruması aktif değil.\nKamuflajlı koruma modu aktif olmayacak.\nLütfen PIN korumasını aktifleştirin."), "getBackupPhrase": MessageLookupByLibrary.simpleMessage( "Önemli: Devam etmeden önce gizli kelimelerinizi güvenli bir şekilde yedekleyin !"), + "gettingTxWait": MessageLookupByLibrary.simpleMessage( + "İşlem alınıyor, lütfen bekleyin"), "goToPorfolio": MessageLookupByLibrary.simpleMessage("Portföye git"), + "gweiError": m54, "helpLink": MessageLookupByLibrary.simpleMessage("Yardım"), "helpTitle": MessageLookupByLibrary.simpleMessage("Yardım ve Destek"), "hideBalance": MessageLookupByLibrary.simpleMessage("Bakiyeleri gizle"), @@ -754,6 +843,7 @@ class MessageLookup extends MessageLookupByLibrary { "importSwapJsonDecodingError": MessageLookupByLibrary.simpleMessage( "Json dosyası çözülürken hata oluştu."), "importTitle": MessageLookupByLibrary.simpleMessage("İçeri Al"), + "incomingTransactionsProtectionSettings": m55, "infoPasswordDialog": MessageLookupByLibrary.simpleMessage( "Güvenlı bir parola kullanın ve onu, uygulamayı kullandığınız cihazda saklamayın."), "infoTrade1": MessageLookupByLibrary.simpleMessage( @@ -762,7 +852,7 @@ class MessageLookup extends MessageLookupByLibrary { "Bu işlem 60 dakikaya kadar sürebilir. Uygulamayı KAPATMAYINIZ !"), "infoWalletPassword": MessageLookupByLibrary.simpleMessage( "Cüzdanınızın güvenlik tehditlerine karşı şifrelenebilmesi için bir parola ayarlamalısınız."), - "insufficientBalanceToPay": m41, + "insufficientBalanceToPay": m56, "insufficientText": MessageLookupByLibrary.simpleMessage( "Bu işlem için gereken en az hacim şu kadardır"), "insufficientTitle": @@ -770,18 +860,20 @@ class MessageLookup extends MessageLookupByLibrary { "internetRefreshButton": MessageLookupByLibrary.simpleMessage("Yenile"), "internetRestored": MessageLookupByLibrary.simpleMessage( "İnternet Bağlantısı Yeniden Sağlandı"), + "invalidCoinAddress": m57, "invalidSwap": MessageLookupByLibrary.simpleMessage("Takasa devam edilemiyor"), "invalidSwapDetailsLink": MessageLookupByLibrary.simpleMessage("Detaylar"), - "isUnavailable": m42, + "isUnavailable": m58, "japaneseLanguage": MessageLookupByLibrary.simpleMessage("Japonca"), "koreanLanguage": MessageLookupByLibrary.simpleMessage("Koreli"), "language": MessageLookupByLibrary.simpleMessage("Diller"), "latestTxs": MessageLookupByLibrary.simpleMessage("Son İşlemler"), "legalTitle": MessageLookupByLibrary.simpleMessage("Yasal"), "less": MessageLookupByLibrary.simpleMessage("Daha az"), - "lessThanCaution": m43, + "lessThanCaution": m59, + "limitError": m60, "loading": MessageLookupByLibrary.simpleMessage("Yükleniyor.."), "loadingOrderbook": MessageLookupByLibrary.simpleMessage("Emir defteri yükleniyor..."), @@ -853,27 +945,30 @@ class MessageLookup extends MessageLookupByLibrary { "milliseconds": MessageLookupByLibrary.simpleMessage("ms"), "min": MessageLookupByLibrary.simpleMessage("DK"), "minOrder": MessageLookupByLibrary.simpleMessage("En düşük emir hacmi"), - "minValue": m44, - "minValueBuy": m45, - "minValueOrder": m46, - "minValueSell": m47, - "minVolumeInput": m48, + "minValue": m61, + "minValueBuy": m62, + "minValueOrder": m63, + "minValueSell": m64, + "minVolumeInput": m65, "minVolumeIsTDH": MessageLookupByLibrary.simpleMessage( "Satış miktarından düşük olmalı"), "minVolumeTitle": MessageLookupByLibrary.simpleMessage("Gereken en düşük hacim"), "minVolumeToggle": MessageLookupByLibrary.simpleMessage("hacim"), + "minimizingWillTerminate": MessageLookupByLibrary.simpleMessage( + "Uyarı: iOS\'ta uygulamanın simge durumuna küçültülmesi etkinleştirme sürecini sonlandıracaktır."), "minutes": MessageLookupByLibrary.simpleMessage("dk"), - "mobileDataWarning": m49, + "mobileDataWarning": m66, + "moreInfo": MessageLookupByLibrary.simpleMessage("Daha fazla bilgi"), "moreTab": MessageLookupByLibrary.simpleMessage("Daha Fazla"), - "multiActivateGas": m50, + "multiActivateGas": m67, "multiBaseAmtPlaceholder": MessageLookupByLibrary.simpleMessage("Miktar"), "multiBasePlaceholder": MessageLookupByLibrary.simpleMessage("Koin"), "multiBaseSelectTitle": MessageLookupByLibrary.simpleMessage("Sat"), "multiConfirmCancel": MessageLookupByLibrary.simpleMessage("İptal"), "multiConfirmConfirm": MessageLookupByLibrary.simpleMessage("Onayla"), - "multiConfirmTitle": m51, + "multiConfirmTitle": m68, "multiCreate": MessageLookupByLibrary.simpleMessage("Oluştur"), "multiCreateOrder": MessageLookupByLibrary.simpleMessage("Emir"), "multiCreateOrders": MessageLookupByLibrary.simpleMessage("Emirler"), @@ -889,8 +984,8 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("Geçersiz miktar"), "multiInvalidSellAmt": MessageLookupByLibrary.simpleMessage("Geçersiz satış miktarı"), - "multiLowGas": m52, - "multiLowerThanFee": m53, + "multiLowGas": m69, + "multiLowerThanFee": m70, "multiMaxSellAmt": MessageLookupByLibrary.simpleMessage("En fazla satış miktarı:"), "multiMinReceiveAmt": @@ -924,7 +1019,7 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("Bir öğe seçilmedi"), "noMatchingOrders": MessageLookupByLibrary.simpleMessage("Eşleşen sipariş bulunamadı"), - "noOrder": m54, + "noOrder": m71, "noOrderAvailable": MessageLookupByLibrary.simpleMessage( "Emir oluşturmak için tıklayın"), "noOrders": MessageLookupByLibrary.simpleMessage( @@ -939,7 +1034,8 @@ class MessageLookup extends MessageLookupByLibrary { "noTxs": MessageLookupByLibrary.simpleMessage("İşlem Yok"), "nonNumericInput": MessageLookupByLibrary.simpleMessage("Girilen değer rakam olmalı"), - "notEnoughGas": m55, + "none": MessageLookupByLibrary.simpleMessage("Hiçbiri"), + "notEnoughGas": m72, "notEnoughtBalanceForFee": MessageLookupByLibrary.simpleMessage( "Takas masrafını karşılayacak bakiye bulunmuyor - daha küçük tutar deneyin"), "noteOnOrder": MessageLookupByLibrary.simpleMessage( @@ -948,23 +1044,23 @@ class MessageLookup extends MessageLookupByLibrary { "noteTitle": MessageLookupByLibrary.simpleMessage("Not"), "nothingFound": MessageLookupByLibrary.simpleMessage("Bir şey bulunamadı"), - "notifSwapCompletedText": m56, + "notifSwapCompletedText": m73, "notifSwapCompletedTitle": MessageLookupByLibrary.simpleMessage("Takas tamamlandı"), - "notifSwapFailedText": m57, + "notifSwapFailedText": m74, "notifSwapFailedTitle": MessageLookupByLibrary.simpleMessage("Takas başarısız"), - "notifSwapStartedText": m58, + "notifSwapStartedText": m75, "notifSwapStartedTitle": MessageLookupByLibrary.simpleMessage("Yeni takas başladı"), "notifSwapStatusTitle": MessageLookupByLibrary.simpleMessage("Takas durumu değişti"), - "notifSwapTimeoutText": m59, + "notifSwapTimeoutText": m76, "notifSwapTimeoutTitle": MessageLookupByLibrary.simpleMessage("Takas zaman aşımına uğradı"), - "notifTxText": m60, + "notifTxText": m77, "notifTxTitle": MessageLookupByLibrary.simpleMessage("Gelen işlem"), - "numberAssets": m61, + "numberAssets": m78, "officialPressRelease": MessageLookupByLibrary.simpleMessage("Resmi basın açıklaması"), "okButton": MessageLookupByLibrary.simpleMessage("Tamam"), @@ -973,15 +1069,17 @@ class MessageLookup extends MessageLookupByLibrary { "oldLogsUsed": MessageLookupByLibrary.simpleMessage("Boşluk kullanıldı"), "openMessage": MessageLookupByLibrary.simpleMessage("Hata Mesajını Aç"), - "orderCancel": m62, + "orderBookLess": MessageLookupByLibrary.simpleMessage("Az"), + "orderBookMore": MessageLookupByLibrary.simpleMessage("Daha"), + "orderCancel": m79, "orderCreated": MessageLookupByLibrary.simpleMessage("Emir oluşturuldu"), "orderCreatedInfo": MessageLookupByLibrary.simpleMessage("Emir başarıyla oluşturuldu"), "orderDetailsAddress": MessageLookupByLibrary.simpleMessage("Adres"), "orderDetailsCancel": MessageLookupByLibrary.simpleMessage("İptal"), - "orderDetailsExpedient": m63, - "orderDetailsExpensive": m64, + "orderDetailsExpedient": m80, + "orderDetailsExpensive": m81, "orderDetailsFor": MessageLookupByLibrary.simpleMessage("için"), "orderDetailsIdentical": MessageLookupByLibrary.simpleMessage("CEX\'de"), @@ -994,7 +1092,7 @@ class MessageLookup extends MessageLookupByLibrary { "Ayrıntıları tek dokunuşla açın ve Uzun dokunuşla sipariş et\'i seçin"), "orderDetailsSpend": MessageLookupByLibrary.simpleMessage("Harca"), "orderDetailsTitle": MessageLookupByLibrary.simpleMessage("Detaylar"), - "orderFilled": m65, + "orderFilled": m82, "orderMatched": MessageLookupByLibrary.simpleMessage("Emir eşleşti"), "orderMatching": MessageLookupByLibrary.simpleMessage("Emir eşleşiyor"), "orderTypePartial": MessageLookupByLibrary.simpleMessage("Emir"), @@ -1003,9 +1101,9 @@ class MessageLookup extends MessageLookupByLibrary { "orders": MessageLookupByLibrary.simpleMessage("emirler"), "ordersActive": MessageLookupByLibrary.simpleMessage("Açık"), "ordersHistory": MessageLookupByLibrary.simpleMessage("Geçmiş"), - "ordersTableAmount": m66, - "ordersTablePrice": m67, - "ordersTableTotal": m68, + "ordersTableAmount": m83, + "ordersTablePrice": m84, + "ordersTableTotal": m85, "overwrite": MessageLookupByLibrary.simpleMessage("Üstüne yaz"), "ownOrder": MessageLookupByLibrary.simpleMessage("Bu sizin kendi emriniz !"), @@ -1016,6 +1114,8 @@ class MessageLookup extends MessageLookupByLibrary { "paidWith": MessageLookupByLibrary.simpleMessage("Ödendi"), "passwordRequirement": MessageLookupByLibrary.simpleMessage( "Parolanız en az 12 karakterden oluşurken en az; bir büyük harf, bir küçük harf ve bir sembol içermelidir."), + "pastTransactionsFromDate": MessageLookupByLibrary.simpleMessage( + "Cüzdanınız, belirtilen tarihten sonra yaptığınız geçmiş işlemleri gösterecektir."), "paymentUriDetailsAccept": MessageLookupByLibrary.simpleMessage("Öde"), "paymentUriDetailsAcceptQuestion": MessageLookupByLibrary.simpleMessage( "Bu işlemi kabul ediyor musunuz ?"), @@ -1028,8 +1128,11 @@ class MessageLookup extends MessageLookupByLibrary { "paymentUriDetailsDeny": MessageLookupByLibrary.simpleMessage("İptal"), "paymentUriDetailsTitle": MessageLookupByLibrary.simpleMessage("Ödeme Talep Edildi"), - "paymentUriInactiveCoin": m69, + "paymentUriInactiveCoin": m86, "placeOrder": MessageLookupByLibrary.simpleMessage("Emrinizi girin"), + "pleaseAcceptAllCoinActivationRequests": + MessageLookupByLibrary.simpleMessage( + "Lütfen tüm özel jeton aktivasyon isteklerini kabul edin veya jetonların seçimini kaldırın."), "pleaseAddCoin": MessageLookupByLibrary.simpleMessage("Lütfen bir Koin Ekleyiniz"), "pleaseRestart": MessageLookupByLibrary.simpleMessage( @@ -1049,21 +1152,23 @@ class MessageLookup extends MessageLookupByLibrary { "protectionCtrlWarning": MessageLookupByLibrary.simpleMessage( "Dikkat ! Bu takas dPoW koruması altında değildir."), "pubkey": MessageLookupByLibrary.simpleMessage("Açık Adres"), + "qrCodeScanner": + MessageLookupByLibrary.simpleMessage("QR Kod Tarayıcı"), "question_1": MessageLookupByLibrary.simpleMessage( "Gizli kelimelerimi kaydediyor musunuz ?"), - "question_10": m70, - "question_2": m71, + "question_10": m87, + "question_2": m88, "question_3": MessageLookupByLibrary.simpleMessage( "Takas işlemleri ne kadar sürmektedir ?"), "question_4": MessageLookupByLibrary.simpleMessage( "Takas işlemi boyunca çevrimiçi olmam mı gerekir ?"), - "question_5": m72, + "question_5": m89, "question_6": MessageLookupByLibrary.simpleMessage( "Kullanıcılara destek sunuyor musunuz ?"), "question_7": MessageLookupByLibrary.simpleMessage( "Uygulamanın kullanılamadığı ülkeler var mı ?"), - "question_8": m73, - "question_9": m74, + "question_8": m90, + "question_9": m91, "rebrandingAnnouncement": MessageLookupByLibrary.simpleMessage( "Bu yeni bir dönem! \'AtomicDEX\' olan ismimizi resmi olarak \'Komodo Wallet\' olarak değiştirdik."), "receive": MessageLookupByLibrary.simpleMessage("AL"), @@ -1102,7 +1207,7 @@ class MessageLookup extends MessageLookupByLibrary { "rewardsReadMore": MessageLookupByLibrary.simpleMessage( "KMD aktif kullanıcı ödülleri hakkında daha fazla bilgi edinin"), "rewardsReceive": MessageLookupByLibrary.simpleMessage("Al"), - "rewardsSuccess": m75, + "rewardsSuccess": m92, "rewardsTableFiat": MessageLookupByLibrary.simpleMessage("İtibari para"), "rewardsTableRewards": @@ -1113,9 +1218,9 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("Ödül bilgisi:"), "rewardsTableUXTO": MessageLookupByLibrary.simpleMessage("UTXO amt,\nKMD"), - "rewardsTimeDays": m76, - "rewardsTimeHours": m77, - "rewardsTimeMin": m78, + "rewardsTimeDays": m93, + "rewardsTimeHours": m94, + "rewardsTimeMin": m95, "rewardsTitle": MessageLookupByLibrary.simpleMessage("Ödül bilgisi"), "russianLanguage": MessageLookupByLibrary.simpleMessage("Rusça"), "saveMerged": @@ -1160,13 +1265,15 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("Tüm test koinlerini seç"), "searchFilterSubtitleUBQ": MessageLookupByLibrary.simpleMessage("Tüm Ubiq koinlerini seç"), + "searchFilterSubtitleZHTLC": + MessageLookupByLibrary.simpleMessage("Tüm ZHTLC paralarını seç"), "searchFilterSubtitleutxo": MessageLookupByLibrary.simpleMessage("Tüm UTXO koinlerini seç"), "searchForTicker": MessageLookupByLibrary.simpleMessage("Kayan Yazı Ara"), "seconds": MessageLookupByLibrary.simpleMessage("s"), "security": MessageLookupByLibrary.simpleMessage("Güvenlik"), - "seeOrders": m79, + "seeOrders": m96, "seeTxHistory": MessageLookupByLibrary.simpleMessage("İşlem Geçmişini Görüntüle"), "seedPhrase": MessageLookupByLibrary.simpleMessage("Gizli Kelimeler"), @@ -1181,6 +1288,7 @@ class MessageLookup extends MessageLookupByLibrary { "ALMAK istediğiniz koini seçin"), "selectCoinToSell": MessageLookupByLibrary.simpleMessage( "SATMAK istediğiniz koini seçin"), + "selectDate": MessageLookupByLibrary.simpleMessage("Bir Tarih Seçin"), "selectFileImport": MessageLookupByLibrary.simpleMessage("Dosya seç"), "selectLanguage": MessageLookupByLibrary.simpleMessage("Dili Seç"), "selectPaymentMethod": @@ -1203,10 +1311,13 @@ class MessageLookup extends MessageLookupByLibrary { "settingLanguageTitle": MessageLookupByLibrary.simpleMessage("Diller"), "settings": MessageLookupByLibrary.simpleMessage("Ayarlar"), "share": MessageLookupByLibrary.simpleMessage("Paylaş"), - "shareAddress": m80, + "shareAddress": m97, + "shouldScanPastTransaction": m98, + "showAddress": MessageLookupByLibrary.simpleMessage("Adresi Göster"), "showDetails": MessageLookupByLibrary.simpleMessage("Detayları Göster"), "showMyOrders": MessageLookupByLibrary.simpleMessage("EMİRLERİMİ GÖSTER"), + "showingOrders": m99, "signInWithPassword": MessageLookupByLibrary.simpleMessage("Parola ile giriş yap"), "signInWithSeedPhrase": MessageLookupByLibrary.simpleMessage( @@ -1214,24 +1325,24 @@ class MessageLookup extends MessageLookupByLibrary { "simple": MessageLookupByLibrary.simpleMessage("Basit"), "simpleTradeActivate": MessageLookupByLibrary.simpleMessage("Aktifleştir"), - "simpleTradeBuyHint": m81, + "simpleTradeBuyHint": m100, "simpleTradeBuyTitle": MessageLookupByLibrary.simpleMessage("Satın al"), "simpleTradeClose": MessageLookupByLibrary.simpleMessage("Kapat"), - "simpleTradeMaxActiveCoins": m82, - "simpleTradeNotActive": m83, + "simpleTradeMaxActiveCoins": m101, + "simpleTradeNotActive": m102, "simpleTradeRecieve": MessageLookupByLibrary.simpleMessage("Al"), - "simpleTradeSellHint": m84, + "simpleTradeSellHint": m103, "simpleTradeSellTitle": MessageLookupByLibrary.simpleMessage("Sat"), "simpleTradeSend": MessageLookupByLibrary.simpleMessage("Gönder"), "simpleTradeShowLess": MessageLookupByLibrary.simpleMessage("Daha az göster"), "simpleTradeShowMore": MessageLookupByLibrary.simpleMessage("Daha fazla göster"), - "simpleTradeUnableActivate": m85, + "simpleTradeUnableActivate": m104, "skip": MessageLookupByLibrary.simpleMessage("Geç"), "snackbarDismiss": MessageLookupByLibrary.simpleMessage("Kapat"), - "soundCantPlayThatMsg": m86, - "soundPlayedWhen": m87, + "soundCantPlayThatMsg": m105, + "soundPlayedWhen": m106, "soundSettingsLink": MessageLookupByLibrary.simpleMessage("Ses"), "soundSettingsTitle": MessageLookupByLibrary.simpleMessage("Ses seçenekleri"), @@ -1243,19 +1354,21 @@ class MessageLookup extends MessageLookupByLibrary { "soundsNote": MessageLookupByLibrary.simpleMessage( "Kendi özelleştirilmiş sesli bildirimlerinizi uygulamanın ayarlar bölümünden etkinleştirebileceğinizi unutmayın."), "spanishLanguage": MessageLookupByLibrary.simpleMessage("İspanyolca"), + "startDate": MessageLookupByLibrary.simpleMessage("Başlangıç tarihi"), + "startSwap": MessageLookupByLibrary.simpleMessage("Takası Başlat"), "step": MessageLookupByLibrary.simpleMessage("Adım"), "success": MessageLookupByLibrary.simpleMessage("Başarılı !"), "support": MessageLookupByLibrary.simpleMessage("Destek"), - "supportLinksDesc": m88, + "supportLinksDesc": m107, "swap": MessageLookupByLibrary.simpleMessage("takas"), "swapCurrent": MessageLookupByLibrary.simpleMessage("Mevcut"), "swapDetailTitle": MessageLookupByLibrary.simpleMessage("TAKAS DETAYLARINI ONAYLA"), "swapEstimated": MessageLookupByLibrary.simpleMessage("Yaklaşık"), "swapFailed": MessageLookupByLibrary.simpleMessage("Takas başarısız"), - "swapGasActivate": m89, - "swapGasAmount": m90, - "swapGasAmountRequired": m91, + "swapGasActivate": m108, + "swapGasAmount": m109, + "swapGasAmountRequired": m110, "swapOngoing": MessageLookupByLibrary.simpleMessage("Takas devam ediyor"), "swapProgress": MessageLookupByLibrary.simpleMessage("İşlem detayları"), @@ -1264,6 +1377,13 @@ class MessageLookup extends MessageLookupByLibrary { "swapTotal": MessageLookupByLibrary.simpleMessage("Toplam"), "swapUUID": MessageLookupByLibrary.simpleMessage("Takas UUID"), "switchTheme": MessageLookupByLibrary.simpleMessage("Temayı Değiştir"), + "syncFromDate": MessageLookupByLibrary.simpleMessage( + "Belirtilen tarihten itibaren senkronizasyon"), + "syncFromSaplingActivation": MessageLookupByLibrary.simpleMessage( + "Fidan aktivasyonundan senkronizasyon"), + "syncNewTransactions": MessageLookupByLibrary.simpleMessage( + "Yeni işlemleri senkronize et"), + "syncTransactionsQuestion": m111, "tagAVX20": MessageLookupByLibrary.simpleMessage("AVX20"), "tagBEP20": MessageLookupByLibrary.simpleMessage("BEP20"), "tagERC20": MessageLookupByLibrary.simpleMessage("ERC20"), @@ -1278,6 +1398,7 @@ class MessageLookup extends MessageLookupByLibrary { "tagQRC20": MessageLookupByLibrary.simpleMessage("QRC20"), "tagSBCH": MessageLookupByLibrary.simpleMessage("SBCH"), "tagUBQ": MessageLookupByLibrary.simpleMessage("UBQ"), + "tagZHTLC": MessageLookupByLibrary.simpleMessage("ZHTLC"), "takerOrder": MessageLookupByLibrary.simpleMessage("Alıcı Emri"), "timeOut": MessageLookupByLibrary.simpleMessage("Zaman Aşımı"), "titleCreatePassword": @@ -1304,6 +1425,12 @@ class MessageLookup extends MessageLookupByLibrary { "tradingFee": MessageLookupByLibrary.simpleMessage("Alım satım işlem gideri:"), "tradingMode": MessageLookupByLibrary.simpleMessage("Alım Satım Modu:"), + "transactionAddress": + MessageLookupByLibrary.simpleMessage("İşlem Adresi"), + "transactionHidden": + MessageLookupByLibrary.simpleMessage("İşlem Gizli"), + "transactionHiddenPhishing": MessageLookupByLibrary.simpleMessage( + "Bu işlem olası bir kimlik avı girişimi nedeniyle gizlendi."), "tryRestarting": MessageLookupByLibrary.simpleMessage( "Bazı yeni koinler etkileştirilemedi ise uygulamayı tekrar başlatmayı deneyiniz."), "turkishLanguage": MessageLookupByLibrary.simpleMessage("Türkçe"), @@ -1316,25 +1443,25 @@ class MessageLookup extends MessageLookupByLibrary { "txLimitExceeded": MessageLookupByLibrary.simpleMessage( "Çok fazla istek.\nİşlem geçmişi istekleri sınırı aşıldı.\nLütfen daha sonra tekrar deneyiniz."), "txNotConfirmed": MessageLookupByLibrary.simpleMessage("onaylanmamış"), - "txleft": m92, + "txleft": m112, "ukrainianLanguage": MessageLookupByLibrary.simpleMessage("Ukrayna"), "unlock": MessageLookupByLibrary.simpleMessage("kilidi aç"), "unlockFunds": MessageLookupByLibrary.simpleMessage("Fonların Kilidini Açın"), - "unlockSuccess": m93, + "unlockSuccess": m113, "unspendable": MessageLookupByLibrary.simpleMessage("harcanamaz"), "updatesAvailable": MessageLookupByLibrary.simpleMessage("Yeni sürüm mevcut"), "updatesChecking": MessageLookupByLibrary.simpleMessage( "Güncellemeler kontrol ediliyor.."), - "updatesCurrentVersion": m94, + "updatesCurrentVersion": m114, "updatesNotifAvailable": MessageLookupByLibrary.simpleMessage( "Yeni sürüm mevcut. Lütfen güncelleyiniz."), - "updatesNotifAvailableVersion": m95, + "updatesNotifAvailableVersion": m115, "updatesNotifTitle": MessageLookupByLibrary.simpleMessage("Güncelleme mevcut"), "updatesSkip": MessageLookupByLibrary.simpleMessage("Şimdilik atla"), - "updatesTitle": m96, + "updatesTitle": m116, "updatesUpToDate": MessageLookupByLibrary.simpleMessage("Son sürüm yüklü"), "updatesUpdate": MessageLookupByLibrary.simpleMessage("Güncelle"), @@ -1360,24 +1487,26 @@ class MessageLookup extends MessageLookupByLibrary { "warningOkBtn": MessageLookupByLibrary.simpleMessage("Tamam"), "warningShareLogs": MessageLookupByLibrary.simpleMessage( "Dikkat ! Bu kayıt defteri özel durumlarda, başarısız takaslardan kalan koinlerin harcanmasına sebep olabilecek hassas bilgiler içerebilir."), - "weFailedTo": m97, - "weFailedToActivate": m98, - "welcomeInfo": m99, + "weFailedTo": m117, + "weFailedToActivate": m118, + "welcomeInfo": m119, "welcomeLetSetUp": MessageLookupByLibrary.simpleMessage("HADİ AYARLAYALIM !"), "welcomeTitle": MessageLookupByLibrary.simpleMessage("HOŞ GELDİNİZ"), "welcomeWallet": MessageLookupByLibrary.simpleMessage("cüzdan"), "willBeRedirected": MessageLookupByLibrary.simpleMessage( "Tamamlandığında portföy ekranına yönlendirileceksiniz."), + "willTakeTime": MessageLookupByLibrary.simpleMessage( + "Bu biraz zaman alacak ve uygulamanın ön planda tutulması gerekiyor.\nEtkinleştirme devam ederken uygulamayı sonlandırmak sorunlara yol açabilir."), "withdraw": MessageLookupByLibrary.simpleMessage("Çek"), - "withdrawCameraAccessText": m100, + "withdrawCameraAccessText": m120, "withdrawCameraAccessTitle": MessageLookupByLibrary.simpleMessage("Erişim Engellendi"), "withdrawConfirm": MessageLookupByLibrary.simpleMessage("Çekimi Onayla"), "withdrawConfirmError": MessageLookupByLibrary.simpleMessage( "Bir hata oluştu. Lütfen daha sonra tekrar deneyiniz."), - "withdrawValue": m101, + "withdrawValue": m121, "wrongCoinSpan1": MessageLookupByLibrary.simpleMessage("QR kodlu bir ödemeyi"), "wrongCoinSpan2": @@ -1399,7 +1528,7 @@ class MessageLookup extends MessageLookupByLibrary { "yeni siparişlerin eşleşebileceği bir siparişiniz var"), "youAreSending": MessageLookupByLibrary.simpleMessage("Gönderiyorsunuz:"), - "youWillReceiveClaim": m102, + "youWillReceiveClaim": m122, "youWillReceived": MessageLookupByLibrary.simpleMessage("Alacağınız:"), "yourWallet": MessageLookupByLibrary.simpleMessage("Cüzdanınız") }; diff --git a/lib/l10n/messages_uk.dart b/lib/l10n/messages_uk.dart index 0aae1c67c..237b53e21 100644 --- a/lib/l10n/messages_uk.dart +++ b/lib/l10n/messages_uk.dart @@ -19,255 +19,295 @@ typedef String MessageIfAbsent(String messageStr, List args); class MessageLookup extends MessageLookupByLibrary { String get localeName => 'uk'; - static m0(name) => "${name} успішно активовано!"; + static m0(protocolName) => "Активувати монети ${protocolName}?"; - static m1(title) => "Показано лише контакти з адресами ${title}"; + static m1(coinName) => "Активація ${coinName}"; - static m2(abbr) => + static m2(coinName) => "Активація ${coinName}"; + + static m3(protocolName) => "Виконується активація ${protocolName}"; + + static m4(name) => "${name} успішно активовано!"; + + static m5(title) => "Показано лише контакти з адресами ${title}"; + + static m6(abbr) => "Ви не можете відправити кошти на адресу ${abbr}, оскільки ${abbr} не активований. Будь ласка, перейдіть у портфоліо."; - static m3(appName) => + static m7(appName) => "Ні! ${appName} не зберігє. Ми ніколи не зберігаємо жодних конфіденційних даних, враховуючи ваші насінні ключі, початкові фрази або PIN-код. Ці дані зберігаються лише на пристрої користувача і ніколи не залишають його. Ви повністю контролюєте свої активи."; - static m4(appName) => - "${appName} доступний для мобільних пристроїв на Android та iPhone, а також для настільних ПК в операційних системах Windows, Mac і Linux."; + static m8(appName) => + "${appName} доступний для мобільних пристроїв на Android і iPhone, а також для комп’ютерів в операційних системах Windows, Mac і Linux."; - static m5(appName) => + static m9(appName) => "Інші DEX, як правило, дозволяють лише торгувати активами, які базуються на одній мережі блокчейну, використовують проксі-токени та дозволяють розміщувати лише одне замовлення з тими самими коштами.\n\n${appName} дає вам змогу безпосередньо торгувати між двома різними блокчейн-мережами без проксі-токенів. Ви також можете розмістити кілька замовлень з однаковими коштами. Наприклад, ви можете продати 0,1 BTC за KMD, QTUM або VRSC — перше заповнене замовлення автоматично скасовує всі інші замовлення."; - static m6(appName) => + static m10(appName) => "Кілька факторів визначають час обробки для кожного обміну. Час блокування торгових активів залежить від кожної мережі (біткойн зазвичай найповільніший). Крім того, користувач може налаштувати параметри безпеки. Наприклад, ви можете попросити ${appName} вважати транзакцію KMD остаточною лише після 3 підтверджень, що скорочує час обміну порівняно з очікуванням нотаріальне засвідчення."; - static m7(appName) => + static m11(appName) => "Під час торгівлі в ${appName} слід враховувати дві категорії комісій.\n\n1. ${appName} стягує приблизно 0,13% (1/777 об’єму торгів, але не менше 0,0001) як комісію за торгівлю замовленням-тейкерам, а замовлення-виконавці не мають комісії.\n\n2. Як виробники, так і приймачі повинні будуть сплачувати звичайні мережеві збори залученим блокчейнам під час здійснення транзакцій атомарного свопу.\n\nПлата мережі може значно відрізнятися залежно від вибраної торгової пари."; - static m8(name, link, appName, appCompanyShort) => + static m12(name, link, appName, appCompanyShort) => "Так! ${appName} пропонує підтримку через ${appCompanyShort} ${name}. Команда та спільнота завжди раді допомогти!"; - static m9(appName) => + static m13(appName) => "Ні! ${appName} повністю децентралізовано. Неможливо обмежити доступ користувача сторонніми особами."; - static m10(appName, appCompanyShort) => + static m14(appName, appCompanyShort) => "${appName} розроблено командою ${appCompanyShort}. ${appCompanyShort} — це один із найпопулярніших блокчейн-проектів, який працює над інноваційними рішеннями, такими як атомарні свопи, відкладене підтвердження роботи та взаємодіюча багатоланцюгова архітектура."; - static m11(appName) => - "Абсолютно! Ви можете прочитати нашу документацію для розробників, щоб отримати докладнішу інформацію, або зв’язатися з нами із запитами про партнерство. Є конкретне технічне запитання? Спільнота розробників ${appName} завжди готова допомогти!"; + static m15(appName) => + "Абсолютно! Щоб дізнатися більше, прочитайте нашу документацію для розробників або зв’яжіться з нами із запитами про партнерство. Є конкретне технічне запитання? Спільнота розробників ${appName} завжди готова допомогти!"; + + static m16(coinName1, coinName2) => "на основі ${coinName1}/${coinName2}"; - static m12(batteryLevelCritical) => + static m17(batteryLevelCritical) => "Заряд акумулятора має вирішальне значення (${batteryLevelCritical}%) для безпечної заміни. Будь ласка, зарядіть його та повторіть спробу."; - static m13(batteryLevelLow) => + static m18(batteryLevelLow) => "Заряд акумулятора нижчий ніж ${batteryLevelLow}%. Будь ласка, врахуйте зарядку телефону."; - static m14(seconde) => + static m19(seconde) => "Збіг із замовленням триває, зачекайте ${seconde} секунд!"; - static m15(index) => "Введіть ${index} слово"; + static m20(index) => "Введіть ${index} слово"; + + static m21(index) => "Яке ${index} слово у вашій насінній фразі?"; + + static m22(coin) => "Активацію ${coin} скасовано"; - static m16(index) => "Яке ${index} слово у вашій насінній фразі?"; + static m23(coin) => "Успішно активовано ${coin}"; - static m17(name) => "Ви впевнені, що хочете видалити контакт ${name}?"; + static m24(protocolName) => "Монети ${protocolName} активовані"; - static m18(iUnderstand) => + static m25(protocolName) => "Монети ${protocolName} успішно активовані"; + + static m26(protocolName) => "Монети ${protocolName} не активовані"; + + static m27(name) => "Ви впевнені, що хочете видалити контакт ${name}?"; + + static m28(iUnderstand) => "Довільна насінна фраза може бути менш безпечною та її легше зламати, ніж згенерована початкова фраза або закритий ключ (WIF), сумісна з BIP39. Щоб підтвердити, що ви розумієте ризик і знаєте, що робите, введіть \"\$${iUnderstand}\" у полі нижче."; - static m19(abbr) => "Ведіть ${abbr} адресу"; + static m29(coinName) => "отримати комісію за транзакцію ${coinName}"; + + static m30(coinName) => "надіслати комісію за транзакцію ${coinName}"; - static m20(selected, remains) => + static m31(abbr) => "Ведіть ${abbr} адресу"; + + static m32(selected, remains) => "Ви все ще можете ввімкнути ${remains}, Вибрано: ${selected}"; - static m21(gas) => "Недостатньо газу - використовуйте принаймні ${gas} Gwei"; + static m33(gas) => "Недостатньо газу - використовуйте принаймні ${gas} Gwei"; - static m22(appName, appCompanyLong) => + static m34(appName, appCompanyLong) => "This End-User License Agreement (\'EULA\') is a legal agreement between you and ${appCompanyLong}.\n\nThis EULA agreement governs your acquisition and use of our ${appName} mobile software (\'Software\', \'Mobile Application\', \'Application\' or \'App\') directly from ${appCompanyLong} or indirectly through a ${appCompanyLong} authorized entity, reseller or distributor (a \'Distributor\').\nPlease read this EULA agreement carefully before completing the installation process and using the ${appName} mobile software. It provides a license to use the ${appName} mobile software and contains warranty information and liability disclaimers.\nIf you register for the beta program of the ${appName} mobile software, this EULA agreement will also govern that trial. By clicking \'accept\' or installing and/or using the ${appName} mobile software, you are confirming your acceptance of the Software and agreeing to become bound by the terms of this EULA agreement.\nIf you are entering into this EULA agreement on behalf of a company or other legal entity, you represent that you have the authority to bind such entity and its affiliates to these terms and conditions. If you do not have such authority or if you do not agree with the terms and conditions of this EULA agreement, do not install or use the Software, and you must not accept this EULA agreement.\nThis EULA agreement shall apply only to the Software supplied by ${appCompanyLong} herewith regardless of whether other software is referred to or described herein. The terms also apply to any ${appCompanyLong} updates, supplements, Internet-based services, and support services for the Software, unless other terms accompany those items on delivery. If so, those terms apply.\n\nLICENSE GRANT\n\n${appCompanyLong} hereby grants you a personal, non-transferable, non-exclusive license to use the ${appName} mobile software on your devices in accordance with the terms of this EULA agreement.\n\nYou are permitted to load the ${appName} mobile software (for example a PC, laptop, mobile or tablet) under your control. You are responsible for ensuring your device meets the minimum security and resource requirements of the ${appName} mobile software.\n\nYou are not permitted to:\n(a) edit, alter, modify, adapt, translate or otherwise change the whole or any part of the Software nor permit the whole or any part of the Software to be combined with or become incorporated in any other software, nor decompile, disassemble or reverse engineer the Software or attempt to do any such things;\n(b) reproduce, copy, distribute, resell or otherwise use the Software for any commercial purpose;\n(c) use the Software in any way which breaches any applicable local, national or international law;\n(d) use the Software for any purpose that ${appCompanyLong} considers is a breach of this EULA agreement.\n\nINTELLECTUAL PROPERTY AND OWNERSHIP\n\n${appCompanyLong} shall at all times retain ownership of the Software as originally downloaded by you and all subsequent downloads of the Software by you. The Software (and the copyright, and other intellectual property rights of whatever nature in the Software, including any modifications made thereto) are and shall remain the property of ${appCompanyLong}.\n\n${appCompanyLong} reserves the right to grant licenses to use the Software to third parties.\n\nTERMINATION\n\nThis EULA agreement is effective from the date you first use the Software and shall continue until terminated. You may terminate it at any time upon written notice to ${appCompanyLong}.\nIt will also terminate immediately if you fail to comply with any term of this EULA agreement. Upon such termination, the licenses granted by this EULA agreement will immediately terminate and you agree to stop all access and use of the Software. The provisions that by their nature continue and survive will survive any termination of this EULA agreement.\n\nGOVERNING LAW\n\nThis EULA agreement, and any dispute arising out of or in connection with this EULA agreement, shall be governed by and construed in accordance with the laws of Vietnam.\n\nThis document was last updated on January 31st, 2020"; - static m23(appCompanyLong) => + static m35(appCompanyLong) => "${appCompanyLong} is the owner and/or authorised user of all trademarks, service marks, design marks, patents, copyrights, database rights and all other intellectual property appearing on or contained within the application, unless otherwise indicated. All information, text, material, graphics, software and advertisements on the application interface are copyright of ${appCompanyLong}, its suppliers and licensors, unless otherwise expressly indicated by ${appCompanyLong}.\nExcept as provided in the Terms, use of the application does not grant You any right, title, interest or license to any such intellectual property You may have access to on the application.\nWe own the rights, or have permission to use, the trademarks listed in our application. You are not authorised to use any of those trademarks without our written authorization – doing so would constitute a breach of our or another party’s intellectual property rights.\nAlternatively, we might authorise You to use the content in our application if You previously contact us and we agree in writing.\n\n"; - static m24(appCompanyShort, appCompanyLong) => + static m36(appCompanyShort, appCompanyLong) => "${appCompanyLong} cannot guarantee the safety or security of your computer systems. We do not accept liability for any loss or corruption of electronically stored data or any damage to any computer system occurred in connection with the use of the application or of the user content.\n${appCompanyLong} makes no representation or warranty of any kind, express or implied, as to the operation of the application or the user content. You expressly agree that your use of the application is entirely at your sole risk.\nYou agree that the content provided in the application and the user content do not constitute financial product, legal or taxation advice, and You agree on not representing the user content or the application as such.\nTo the extent permitted by current legislation, the application is provided on an “as is, as available” basis.\n\n${appCompanyLong} expressly disclaims all responsibility for any loss, injury, claim, liability, or damage, or any indirect, incidental, special or consequential damages or loss of profits whatsoever resulting from, arising out of or in any way related to:\n(a) any errors in or omissions of the application and/or the user content, including but not limited to technical inaccuracies and typographical errors;\n(b) any third party website, application or content directly or indirectly accessed through links in the application, including but not limited to any errors or omissions;\n(c) the unavailability of the application or any portion of it;\n(d) your use of the application;\n(e) your use of any equipment or software in connection with the application.\n\nAny Services offered in connection with the Platform are provided on an \'as is\' basis, without any representation or warranty, whether express, implied or statutory. To the maximum extent permitted by applicable law, we specifically disclaim any implied warranties of title, merchantability, suitability for a particular purpose and/or non-infringement. We do not make any representations or warranties that use of the Platform will be continuous, uninterrupted, timely, or error-free.\nWe make no warranty that any Platform will be free from viruses, malware, or other related harmful material and that your ability to access any Platform will be uninterrupted. Any defects or malfunction in the product should be directed to the third party offering the Platform, not to ${appCompanyShort}.\nWe will not be responsible or liable to You for any loss of any kind, from action taken, or taken in reliance on the material or information contained in or through the Platform.\nThis is experimental and unfinished software. Use at your own risk. No warranty for any kind of damage. By using this application you agree to this terms and conditions.\n\n"; - static m25(appCompanyLong) => + static m37(appCompanyLong) => "You agree and understand that there are risks associated with utilizing Services involving Virtual Currencies including, but not limited to, the risk of failure of hardware, software and internet connections, the risk of malicious software introduction, and the risk that third parties may obtain unauthorized access to information stored within your Wallet, including but not limited to your public and private keys. You agree and understand that ${appCompanyLong} will not be responsible for any communication failures, disruptions, errors, distortions or delays You may experience when using the Services, however caused.\nYou accept and acknowledge that there are risks associated with utilizing any virtual currency network, including, but not limited to, the risk of unknown vulnerabilities in or unanticipated changes to the network protocol. You acknowledge and accept that ${appCompanyLong} has no control over any cryptocurrency network and will not be responsible for any harm occurring as a result of such risks, including, but not limited to, the inability to reverse a transaction, and any losses in connection therewith due to erroneous or fraudulent actions.\nThe risk of loss in using Services involving Virtual Currencies may be substantial and losses may occur over a short period of time. In addition, price and liquidity are subject to significant fluctuations that may be unpredictable.\nVirtual Currencies are not legal tender and are not backed by any sovereign government. In addition, the legislative and regulatory landscape around Virtual Currencies is constantly changing and may affect your ability to use, transfer, or exchange Virtual Currencies.\nCFDs are complex instruments and come with a high risk of losing money rapidly due to leverage. 80.6% of retail investor accounts lose money when trading CFDs with this provider. You should consider whether You understand how CFDs work and whether You can afford to take the high risk of losing your money."; - static m26(appCompanyLong) => + static m38(appCompanyLong) => "You agree to indemnify, defend and hold harmless ${appCompanyLong}, its officers, directors, employees, agents, licensors, suppliers and any third party information providers to the application from and against all losses, expenses, damages and costs, including reasonable lawyer fees, resulting from any violation of the Terms by You.\nYou also agree to indemnify ${appCompanyLong} against any claims that information or material which You have submitted to ${appCompanyLong} is in violation of any law or in breach of any third party rights (including, but not limited to, claims in respect of defamation, invasion of privacy, breach of confidence, infringement of copyright or infringement of any other intellectual property right).\n\n"; - static m27(appCompanyLong) => + static m39(appCompanyLong) => "In order to be completed, any Virtual Currency transaction created with the ${appCompanyLong} must be confirmed and recorded in the Virtual Currency ledger associated with the relevant Virtual Currency network. Such networks are decentralized, peer-to-peer networks supported by independent third parties, which are not owned, controlled or operated by ${appCompanyLong}.\n${appCompanyLong} has no control over any Virtual Currency network and therefore cannot and does not ensure that any transaction details You submit via our Services will be confirmed on the relevant Virtual Currency network. You agree and understand that the transaction details You submit via our Services may not be completed, or may be substantially delayed, by the Virtual Currency network used to process the transaction. We do not guarantee that the Wallet can transfer title or right in any Virtual Currency or make any warranties whatsoever with regard to title.\nOnce transaction details have been submitted to a Virtual Currency network, we cannot assist You to cancel or otherwise modify your transaction or transaction details. ${appCompanyLong} has no control over any Virtual Currency network and does not have the ability to facilitate any cancellation or modification requests.\nIn the event of a Fork, ${appCompanyLong} may not be able to support activity related to your Virtual Currency. You agree and understand that, in the event of a Fork, the transactions may not be completed, completed partially, incorrectly completed, or substantially delayed. ${appCompanyLong} is not responsible for any loss incurred by You caused in whole or in part, directly or indirectly, by a Fork.\nIn no event shall ${appCompanyLong}, its affiliates and service providers, or any of their respective officers, directors, agents, employees or representatives, be liable for any lost profits or any special, incidental, indirect, intangible, or consequential damages, whether based on contract, tort, negligence, strict liability, or otherwise, arising out of or in connection with authorized or unauthorized use of the services, or this agreement, even if an authorized representative of ${appCompanyLong} has been advised of, has known of, or should have known of the possibility of such damages.\nFor example (and without limiting the scope of the preceding sentence), You may not recover for lost profits, lost business opportunities, or other types of special, incidental, indirect, intangible, or consequential damages. Some jurisdictions do not allow the exclusion or limitation of incidental or consequential damages, so the above limitation may not apply to You.\nWe will not be responsible or liable to You for any loss and take no responsibility for damages or claims arising in whole or in part, directly or indirectly from:\n(a) user error such as forgotten passwords, incorrectly constructed transactions, or mistyped Virtual Currency addresses;\n(b) server failure or data loss;\n(c) corrupted or otherwise non-performing Wallets or Wallet files;\n(d) unauthorized access to applications;\n(e) any unauthorized activities, including without limitation the use of hacking, viruses, phishing, brute forcing or other means of attack against the Services.\n\n"; - static m28(appCompanyShort, appCompanyLong) => + static m40(appCompanyShort, appCompanyLong) => "For the avoidance of doubt, ${appCompanyLong} does not provide investment, tax or legal advice, nor does ${appCompanyLong} broker trades on your behalf. All ${appCompanyLong} trades are executed automatically, based on the parameters of your order instructions and in accordance with posted Trade execution procedures, and You are solely responsible for determining whether any investment, investment strategy or related transaction is appropriate for You based on your personal investment objectives, financial circumstances and risk tolerance. You should consult your legal or tax professional regarding your specific situation. Neither ${appCompanyShort} nor its owners, members, officers, directors, partners, consultants, nor anyone involved in the publication of this application, is a registered investment adviser or broker-dealer or associated person with a registered investment adviser or broker-dealer and none of the foregoing make any recommendation that the purchase or sale of crypto-assets or securities of any company profiled in the mobile Application is suitable or advisable for any person or that an investment or transaction in such crypto-assets or securities will be profitable. The information contained in the mobile Application is not intended to be, and shall not constitute, an offer to sell or the solicitation of any offer to buy any crypto-asset or security. The information presented in the mobile Application is provided for informational purposes only and is not to be treated as advice or a recommendation to make any specific investment or transaction. Please, consult with a qualified professional before making any decisions. The opinions and analysis included in this applications are based on information from sources deemed to be reliable and are provided “as is” in good faith. ${appCompanyShort} makes no representation or warranty, expressed, implied, or statutory, as to the accuracy or completeness of such information, which may be subject to change without notice. ${appCompanyShort} shall not be liable for any errors or any actions taken in relation to the above. Statements of opinion and belief are those of the authors and/or editors who contribute to this application, and are based solely upon the information possessed by such authors and/or editors. No inference should be drawn that ${appCompanyShort} or such authors or editors have any special or greater knowledge about the crypto-assets or companies profiled or any particular expertise in the industries or markets in which the profiled crypto-assets and companies operate and compete. Information on this application is obtained from sources deemed to be reliable; however, ${appCompanyShort} takes no responsibility for verifying the accuracy of such information and makes no representation that such information is accurate or complete. Certain statements included in this application may be forward-looking statements based on current expectations. ${appCompanyShort} makes no representation and provides no assurance or guarantee that such forward-looking statements will prove to be accurate. Persons using the ${appCompanyShort} application are urged to consult with a qualified professional with respect to an investment or transaction in any crypto-asset or company profiled herein. Additionally, persons using this application expressly represent that the content in this application is not and will not be a consideration in such persons’ investment or transaction decisions. Traders should verify independently information provided in the ${appCompanyShort} application by completing their own due diligence on any crypto-asset or company in which they are contemplating an investment or transaction of any kind and review a complete information package on that crypto-asset or company, which should include, but not be limited to, related blog updates and press releases. Past performance of profiled crypto-assets and securities is not indicative of future results. Crypto-assets and companies profiled on this site may lack an active trading market and invest in a crypto-asset or security that lacks an active trading market or trade on certain media, platforms and markets are deemed highly speculative and carry a high degree of risk. Anyone holding such crypto-assets and securities should be financially able and prepared to bear the risk of loss and the actual loss of his or her entire trade. The information in this application is not designed to be used as a basis for an investment decision. Persons using the ${appCompanyShort} application should confirm to their own satisfaction the veracity of any information prior to entering into any investment or making any transaction. The decision to buy or sell any crypto-asset or security that may be featured by ${appCompanyShort} is done purely and entirely at the reader’s own risk. As a reader and user of this application, You agree that under no circumstances will You seek to hold liable owners, members, officers, directors, partners, consultants or other persons involved in the publication of this application for any losses incurred by the use of information contained in this application ${appCompanyShort} and its contractors and affiliates may profit in the event the crypto-assets and securities increase or decrease in value. Such crypto-assets and securities may be bought or sold from time to time, even after ${appCompanyShort} has distributed positive information regarding the crypto-assets and companies. ${appCompanyShort} has no obligation to inform readers of its trading activities or the trading activities of any of its owners, members, officers, directors, contractors and affiliates and/or any companies affiliated with BC Relations’ owners, members, officers, directors, contractors and affiliates. ${appCompanyShort} and its affiliates may from time to time enter into agreements to purchase crypto-assets or securities to provide a method to reach their goals.\n\n"; - static m29(appCompanyLong) => + static m41(appCompanyLong) => "The Terms are effective until terminated by ${appCompanyLong}.\nIn the event of termination, You are no longer authorized to access the Application, but all restrictions imposed on You and the disclaimers and limitations of liability set out in the Terms will survive termination.\nSuch termination shall not affect any legal right that may have accrued to ${appCompanyLong} against You up to the date of termination.\n${appCompanyLong} may also remove the Application as a whole or any sections or features of the Application at any time.\n\n"; - static m30(appCompanyLong) => + static m42(appCompanyLong) => "The provisions of previous paragraphs are for the benefit of ${appCompanyLong} and its officers, directors, employees, agents, licensors, suppliers, and any third party information providers to the Application. Each of these individuals or entities shall have the right to assert and enforce those provisions directly against You on its own behalf.\n\n"; - static m31(appName, appCompanyLong) => + static m43(appName, appCompanyLong) => "${appName} mobile is a non-custodial, decentralized and blockchain based application and as such does ${appCompanyLong} never store any user-data (accounts and authentication data).\nWe also collect and process non-personal, anonymized data for statistical purposes and analysis and to help us provide a better service.\n\nThis document was last updated on January 31st, 2020"; - static m32(appName, appCompanyLong) => + static m44(appName, appCompanyLong) => "This disclaimer applies to the contents and services of the app ${appName} and is valid for all users of the “Application” (\'Software\', “Mobile Application”, “Application” or “App”).\n\nThe Application is owned by ${appCompanyLong}.\n\nWe reserve the right to amend the following Terms and Conditions (governing the use of the application “${appName} mobile”) at any time without prior notice and at our sole discretion. It is your responsibility to periodically check this Terms and Conditions for any updates to these Terms, which shall come into force once published.\nYour continued use of the application shall be deemed as acceptance of the following Terms.\nWe are a company incorporated in Vietnam and these Terms and Conditions are governed by and subject to the laws of Vietnam.\nIf You do not agree with these Terms and Conditions, You must not use or access this software.\n\n"; - static m33(appName) => + static m45(appName) => "You are not allowed to decompile, decode, disassemble, rent, lease, loan, sell, sublicense, or create derivative works from the ${appName} mobile application or the user content. Nor are You allowed to use any network monitoring or detection software to determine the software architecture, or extract information about usage or individuals’ or users’ identities.\nYou are not allowed to copy, modify, reproduce, republish, distribute, display, or transmit for commercial, non-profit or public purposes all or any portion of the application or the user content without our prior written authorization.\n\n"; - static m34(appName, appCompanyLong) => + static m46(appName, appCompanyLong) => "If you create an account in the Mobile Application, you are responsible for maintaining the security of your account and you are fully responsible for all activities that occur under the account and any other actions taken in connection with it. We will not be liable for any acts or omissions by you, including any damages of any kind incurred as a result of such acts or omissions.\n\n${appName} mobile is a non-custodial wallet implementation and thus ${appCompanyLong} can not access nor restore your account in case of (data) loss.\n\n"; - static m35(appName) => + static m47(appName) => "End-User License Agreement (EULA) of ${appName} mobile:\n\n"; - static m36(coin) => "Надсилання запиту на FAUCET ${coin}..."; + static m48(coinAbbr) => "Не вдалося скасувати активацію ${coinAbbr}"; + + static m49(coin) => "Надсилання запиту на FAUCET ${coin}..."; - static m37(appCompanyShort) => "Новини ${appCompanyShort}"; + static m50(appCompanyShort) => "Новини ${appCompanyShort}"; - static m38(value) => "Комісії мають бути до ${value}"; + static m51(value) => "Комісії мають бути до ${value}"; - static m39(coin) => "Комісія ${coin}"; + static m52(coin) => "Комісія ${coin}"; - static m40(coin) => "Будь ласка, активуйте ${coin}."; + static m53(coin) => "Будь ласка, активуйте ${coin}."; - static m41(abbr) => + static m54(value) => "Gwei має бути до ${value}"; + + static m55(coinName) => "Налаштування захисту вхідних ${coinName} txs"; + + static m56(abbr) => "${abbr} балансу недостатньо для оплати комісії за торгівлю"; - static m42(coinAbbr) => "${coinAbbr} недоступен :("; + static m57(coin) => "Недійсна адреса ${coin}"; - static m43(coinName) => + static m58(coinAbbr) => "${coinAbbr} недоступен :("; + + static m59(coinName) => "❗Обережно! Ринок для ${coinName} має менше 10 тисяч доларів США за 24 години!"; - static m44(coinName, number) => + static m60(value) => "Обмеження має бути до ${value}"; + + static m61(coinName, number) => "Мінімальна сума для продажу становить ${number} ${coinName}"; - static m45(coinName, number) => + static m62(coinName, number) => "Мінімальна сума для купівлі становить ${number}${coinName}"; - static m46(buyCoin, buyAmount, sellCoin, sellAmount) => + static m63(buyCoin, buyAmount, sellCoin, sellAmount) => "Мінімальна сума замовлення становить ${buyAmount}${buyCoin}\n(${sellAmount}${sellCoin})"; - static m47(coinName, number) => + static m64(coinName, number) => "Мінімальна сума для продажу становить ${number}${coinName}"; - static m48(minValue, coin) => "Має бути більше ніж ${minValue} ${coin}"; + static m65(minValue, coin) => "Має бути більше ніж ${minValue} ${coin}"; - static m49(appName) => + static m66(appName) => "Зауважте, що зараз ви використовуєте мобільні дані та участь у мережі ${appName} P2P споживає інтернет-трафік. Краще використовувати мережу WiFi, якщо ваш тарифний план стільникового зв’язку є дорогим."; - static m50(coin) => "Спочатку активуйте ${coin} і поповніть баланс"; + static m67(coin) => "Спочатку активуйте ${coin} і поповніть баланс"; - static m51(number) => "Створіть замовлення (${number}):"; + static m68(number) => "Створіть замовлення (${number}):"; - static m52(coin) => "Баланс ${coin} замалий"; + static m69(coin) => "Баланс ${coin} замалий"; - static m53(coin, fee) => + static m70(coin, fee) => "Недостатньо ${coin} для оплати комісії. MIN баланс становить ${fee} ${coin}"; - static m54(coinName) => "Введіть суму ${coinName}."; + static m71(coinName) => "Введіть суму ${coinName}."; - static m55(coin) => "Недостатньо ${coin} для транзакції!"; + static m72(coin) => "Недостатньо ${coin} для транзакції!"; - static m56(sell, buy) => "Обмін ${sell}/${buy} успішно завершено"; + static m73(sell, buy) => "Обмін ${sell}/${buy} успішно завершено"; - static m57(sell, buy) => "Не вдалося обміняти ${sell}/${buy}"; + static m74(sell, buy) => "Не вдалося обміняти ${sell}/${buy}"; - static m58(sell, buy) => "Розпочато обмін ${sell}/${buy}"; + static m75(sell, buy) => "Розпочато обмін ${sell}/${buy}"; - static m59(sell, buy) => "Час очікування обміну ${sell}/${buy} минув"; + static m76(sell, buy) => "Час очікування обміну ${sell}/${buy} минув"; - static m60(coin) => "Ви отримали ${coin} трансакцію!"; + static m77(coin) => "Ви отримали ${coin} трансакцію!"; - static m61(assets) => "${assets} активів"; + static m78(assets) => "${assets} активів"; - static m62(coin) => "Усі замовлення ${coin} буде скасовано."; + static m79(coin) => "Усі замовлення ${coin} буде скасовано."; - static m63(delta) => "Доцільно: CEX +${delta}%"; + static m80(delta) => "Доцільно: CEX +${delta}%"; - static m64(delta) => "Дорого: CEX ${delta}%"; + static m81(delta) => "Дорого: CEX ${delta}%"; - static m65(fill) => "${fill}% заповнено"; + static m82(fill) => "${fill}% заповнено"; - static m66(coin) => "Сума (${coin})"; + static m83(coin) => "Сума (${coin})"; - static m67(coin) => "Ціна (${coin})"; + static m84(coin) => "Ціна (${coin})"; - static m68(coin) => "Усього (${coin})"; + static m85(coin) => "Усього (${coin})"; - static m69(abbr) => + static m86(abbr) => "${abbr} не активний. Будь ласка, активуйте і спробуйте ще раз."; - static m70(appName) => "На яких пристроях я можу використовувати ${appName}?"; + static m87(appName) => "На яких пристроях я можу використовувати ${appName}?"; - static m71(appName) => + static m88(appName) => "Чим торгівля в ${appName} відрізняється від торгівлі в інших DEX?"; - static m72(appName) => "Як розраховуються комісії за ${appName}?"; + static m89(appName) => "Як розраховуються комісії за ${appName}?"; - static m73(appName) => "Хто стоїть за ${appName}?"; + static m90(appName) => "Хто стоїть за ${appName}?"; - static m74(appName) => + static m91(appName) => "Чи можна розробити власну біржу white-label у ${appName}?"; - static m75(amount) => "Успіх! Отримано ${amount} KMD."; + static m92(amount) => "Успіх! Отримано ${amount} KMD."; + + static m93(dd) => "${dd} дн."; - static m76(dd) => "${dd} дн."; + static m96(amount) => "Натистіть щоб побачити ${amount} угоди"; - static m79(amount) => "Натистіть щоб побачити ${amount} угоди"; + static m97(coinName, address) => "Моя адреса ${coinName}:\n${address}"; - static m80(coinName, address) => "Моя адреса ${coinName}:\n${address}"; + static m98(coin) => "Сканувати минулі транзакції ${coin}?"; - static m81(coin) => "Будь ласка, введіть ${coin} суму для купівлі"; + static m99(count, maxCount) => "Показано ${count} із ${maxCount} замовлень."; - static m82(maxCoins) => + static m100(coin) => "Будь ласка, введіть ${coin} суму для купівлі"; + + static m101(maxCoins) => "Максимальна кількість активних монет становить ${maxCoins}. Будь ласка, деактивуйте кілька монет."; - static m83(coin) => "${coin} не активований!"; + static m102(coin) => "${coin} не активований!"; - static m84(coin) => "Будь ласка, введіть ${coin} суму для продажу"; + static m103(coin) => "Будь ласка, введіть ${coin} суму для продажу"; - static m85(coin) => "Неможливо активувати ${coin}"; + static m104(coin) => "Неможливо активувати ${coin}"; - static m86(description) => + static m105(description) => "Будь ласка, виберіть файл mp3 або wav. Ми почнемо це, коли ${description}."; - static m87(description) => "Грає, коли ${description}"; + static m106(description) => "Грає, коли ${description}"; - static m88(appName) => + static m107(appName) => "Якщо у вас виникли запитання або ви вважаєте, що виявили технічну проблему з додатком ${appName}, ви можете повідомити про це та отримати підтримку від нашої команди."; - static m89(coin) => "Спочатку активуйте ${coin} і поповніть баланс"; + static m108(coin) => "Спочатку активуйте ${coin} і поповніть баланс"; - static m90(coin) => + static m109(coin) => "На балансі ${coin} недостатньо для оплати комісії за трансакцію."; - static m91(coin, amount) => + static m110(coin, amount) => "На балансі ${coin} недостатньо для оплати комісії за трансакцію. Потрібно ${coin} ${amount}."; - static m92(left) => "Транзакцій залишилось: ${left}"; + static m111(name) => "Які транзакції ${name} ви хочете синхронізувати?"; - static m93(amnt, hash) => "Успішно розблоковано ${amnt} - TX: ${hash}"; + static m112(left) => "Транзакцій залишилось: ${left}"; - static m94(version) => "Ви використовуєте версію ${version}"; + static m113(amnt, hash) => "Успішно розблоковано ${amnt} - TX: ${hash}"; - static m95(version) => "Доступна версія ${version}. Будь ласка, оновіть."; + static m114(version) => "Ви використовуєте версію ${version}"; - static m96(appName) => "Оновлення ${appName}"; + static m115(version) => "Доступна версія ${version}. Будь ласка, оновіть."; - static m97(coinAbbr) => "Не вдалося активувати ${coinAbbr}"; + static m116(appName) => "Оновлення ${appName}"; - static m98(coinAbbr) => + static m117(coinAbbr) => "Не вдалося активувати ${coinAbbr}"; + + static m118(coinAbbr) => "Не вдалося активувати ${coinAbbr}. Будь-ласка спробуйте ще"; - static m99(appName) => + static m119(appName) => "${appName} mobile — це мультимонетний гаманець нового покоління з вбудованою функцією DEX третього покоління та більше."; - static m100(appName) => + static m120(appName) => "Ви раніше забороняли ${appName} доступ до камери. Будь ласка, вручну змініть дозвіл камери в налаштуваннях телефону, щоб продовжити сканування QR-коду"; - static m101(amount, coinName) => "ВІДПРАВИТИ ${amount} ${coinName}"; + static m121(amount, coinName) => "ВІДПРАВИТИ ${amount} ${coinName}"; - static m102(amount, coin) => "Ви отримаєте ${amount} ${coin}"; + static m122(amount, coin) => "Ви отримаєте ${amount} ${coin}"; final messages = _notInlinedMessages(_notInlinedMessages); static Map _notInlinedMessages(_) => { @@ -293,16 +333,22 @@ class MessageLookup extends MessageLookupByLibrary { "Активуйте біометричний захист"), "activateAccessPin": MessageLookupByLibrary.simpleMessage("Увімкніть захист PIN-кодом"), + "activateCoins": m0, + "activating": m1, + "activation": m2, + "activationCancelled": + MessageLookupByLibrary.simpleMessage("Активацію монет скасовано"), + "activationInProgress": m3, "addCoin": MessageLookupByLibrary.simpleMessage("Активувати монету"), - "addingCoinSuccess": m0, + "addingCoinSuccess": m4, "addressAdd": MessageLookupByLibrary.simpleMessage("Додати адресу"), "addressBook": MessageLookupByLibrary.simpleMessage("Адресна книга"), "addressBookEmpty": MessageLookupByLibrary.simpleMessage("Адресна книга порожня"), - "addressBookFilter": m1, + "addressBookFilter": m5, "addressBookTitle": MessageLookupByLibrary.simpleMessage("Адресна книга"), - "addressCoinInactive": m2, + "addressCoinInactive": m6, "addressNotFound": MessageLookupByLibrary.simpleMessage("Нічого не знайдено:("), "addressSelectCoin": @@ -311,23 +357,25 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("Адреса отримувача"), "advanced": MessageLookupByLibrary.simpleMessage("Розвинутий"), "all": MessageLookupByLibrary.simpleMessage("Усі"), + "allPastTransactions": MessageLookupByLibrary.simpleMessage( + "У вашому гаманці відображатимуться всі минулі транзакції. Це займе багато пам’яті та часу, оскільки всі блоки будуть завантажені та відскановані."), "allowCustomSeed": MessageLookupByLibrary.simpleMessage("Дозволити довільне насіння"), "alreadyExists": MessageLookupByLibrary.simpleMessage("вже існує"), "amount": MessageLookupByLibrary.simpleMessage("Сума"), "amountToSell": MessageLookupByLibrary.simpleMessage("Сума для продажу"), - "answer_1": m3, - "answer_10": m4, - "answer_2": m5, - "answer_3": m6, + "answer_1": m7, + "answer_10": m8, + "answer_2": m9, + "answer_3": m10, "answer_4": MessageLookupByLibrary.simpleMessage( "Так. Ви повинні залишатися підключеними до Інтернету та запустити програму, щоб успішно завершити кожну атомарну заміну (дуже короткі перерви в з’єднанні зазвичай не впливають). В іншому випадку існує ризик скасування угоди, якщо ви мейкер, і ризик втрати коштів, якщо ви тейкер. Протокол атомарного обміну вимагає, щоб обидва учасники залишалися онлайн і контролювали задіяні блокчейни, щоб процес залишався атомарним."), - "answer_5": m7, - "answer_6": m8, - "answer_7": m9, - "answer_8": m10, - "answer_9": m11, + "answer_5": m11, + "answer_6": m12, + "answer_7": m13, + "answer_8": m14, + "answer_9": m15, "areYouSure": MessageLookupByLibrary.simpleMessage("ТИ ВПЕВНЕНИЙ?"), "authenticate": MessageLookupByLibrary.simpleMessage("автентифікувати"), "automaticRedirected": MessageLookupByLibrary.simpleMessage( @@ -337,8 +385,9 @@ class MessageLookup extends MessageLookupByLibrary { "back": MessageLookupByLibrary.simpleMessage("назад"), "backupTitle": MessageLookupByLibrary.simpleMessage("Резервне копіювання"), - "batteryCriticalError": m12, - "batteryLowWarning": m13, + "basedOnCoinRatio": m16, + "batteryCriticalError": m17, + "batteryLowWarning": m18, "batterySavingWarning": MessageLookupByLibrary.simpleMessage( "Ваш телефон у режимі економії заряду аккумулятора. Будь-ласка, вимкніть цей режим або НЕ переводьте програму у фоновий режим, інакше програма може бути закрита ОС і заміна не вдасться."), "bestAvailableRate": @@ -352,7 +401,7 @@ class MessageLookup extends MessageLookupByLibrary { "Перетворити на Адресант (Maker), якщо не збігається"), "buySuccessWaiting": MessageLookupByLibrary.simpleMessage( "Обмін видається, зачекайте будь-ласка!"), - "buySuccessWaitingError": m14, + "buySuccessWaitingError": m19, "buyTestCoinWarning": MessageLookupByLibrary.simpleMessage( "Попередження, ви можете купити тестові монети БЕЗ реальної вартості!"), "camoPinBioProtectionConflict": MessageLookupByLibrary.simpleMessage( @@ -385,6 +434,10 @@ class MessageLookup extends MessageLookupByLibrary { "camouflageSetup": MessageLookupByLibrary.simpleMessage( "Налаштування камуфляжного PIN-коду"), "cancel": MessageLookupByLibrary.simpleMessage("Скасувати"), + "cancelActivation": + MessageLookupByLibrary.simpleMessage("Скасувати активацію"), + "cancelActivationQuestion": MessageLookupByLibrary.simpleMessage( + "Ви впевнені, що бажаєте скасувати активацію?"), "cancelButton": MessageLookupByLibrary.simpleMessage("Скасувати"), "cancelOrder": MessageLookupByLibrary.simpleMessage("Відмінити замовлення"), @@ -401,6 +454,7 @@ class MessageLookup extends MessageLookupByLibrary { "cexData": MessageLookupByLibrary.simpleMessage("Дані CEX"), "cexDataDesc": MessageLookupByLibrary.simpleMessage( "Ринкові дані (ціни, діаграми, тощо), позначені цією піктограмою, походять із сторонніх джерел (coingecko.com, openrates.io)."), + "cexRate": MessageLookupByLibrary.simpleMessage("Курс CEX"), "changePin": MessageLookupByLibrary.simpleMessage("Змінити PIN-код"), "checkForUpdates": MessageLookupByLibrary.simpleMessage( "Перевірити наявність оновлень"), @@ -411,10 +465,10 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("ПРОДОВЖИТИ"), "checkSeedPhraseButton2": MessageLookupByLibrary.simpleMessage( "ПОВЕРНІТИСЬ І ПЕРЕВІРИТИ ЗНОВУ"), - "checkSeedPhraseHint": m15, + "checkSeedPhraseHint": m20, "checkSeedPhraseInfo": MessageLookupByLibrary.simpleMessage( "Ваша насінна фраза важлива, тому ми хочемо переконатися, що ви її запамʼятали. Ми задамо вам три різні запитання щодо насінної фрази, щоб переконатися, що ви зможете легко відновити свій гаманець, коли захочете."), - "checkSeedPhraseSubtile": m16, + "checkSeedPhraseSubtile": m21, "checkSeedPhraseTitle": MessageLookupByLibrary.simpleMessage( "ДАВАЙТЕ ПЕРЕВІРИМО ВАШУ НАСІННУ ФРАЗУ"), "chineseLanguage": MessageLookupByLibrary.simpleMessage("Китайська"), @@ -433,6 +487,10 @@ class MessageLookup extends MessageLookupByLibrary { "closePreview": MessageLookupByLibrary.simpleMessage("Закрити попередній перегляд"), "code": MessageLookupByLibrary.simpleMessage("Код:"), + "cofirmCancelActivation": MessageLookupByLibrary.simpleMessage( + "Ви впевнені, що бажаєте скасувати активацію?"), + "coinActivationCancelled": m22, + "coinActivationSuccessfull": m23, "coinSelectClear": MessageLookupByLibrary.simpleMessage("Стерти"), "coinSelectNotFound": MessageLookupByLibrary.simpleMessage("Немає активних монет"), @@ -440,6 +498,9 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("Виберіть монету"), "coinsActivatedLimitReached": MessageLookupByLibrary.simpleMessage( "Ви вибрали максимальну кількість ресурсів"), + "coinsAreActivated": m24, + "coinsAreActivatedSuccessfully": m25, + "coinsAreNotActivated": m26, "comingSoon": MessageLookupByLibrary.simpleMessage("Незабаром..."), "commingsoon": MessageLookupByLibrary.simpleMessage("Деталі TX незабаром!"), @@ -471,7 +532,7 @@ class MessageLookup extends MessageLookupByLibrary { "contactDelete": MessageLookupByLibrary.simpleMessage("Видалити контакт"), "contactDeleteBtn": MessageLookupByLibrary.simpleMessage("Видалити"), - "contactDeleteWarning": m17, + "contactDeleteWarning": m27, "contactDiscardBtn": MessageLookupByLibrary.simpleMessage("Відмінити"), "contactEdit": MessageLookupByLibrary.simpleMessage("Редагувати"), "contactExit": MessageLookupByLibrary.simpleMessage("Вихід"), @@ -482,7 +543,10 @@ class MessageLookup extends MessageLookupByLibrary { "contactSave": MessageLookupByLibrary.simpleMessage("Зберегти"), "contactTitle": MessageLookupByLibrary.simpleMessage("Контактні дані"), "contactTitleName": MessageLookupByLibrary.simpleMessage("Ім\'я"), + "contract": MessageLookupByLibrary.simpleMessage("Договір"), "convert": MessageLookupByLibrary.simpleMessage("Конвертувати"), + "couldNotLaunchUrl": + MessageLookupByLibrary.simpleMessage("Не вдалося запустити URL"), "couldntImportError": MessageLookupByLibrary.simpleMessage("Не вдалося імпортувати:"), "create": MessageLookupByLibrary.simpleMessage("торгівля"), @@ -497,7 +561,7 @@ class MessageLookup extends MessageLookupByLibrary { "customFee": MessageLookupByLibrary.simpleMessage("Довільна комісія "), "customFeeWarning": MessageLookupByLibrary.simpleMessage( "Використовуйте довільні комісії, лише якщо знаєте, що робите!"), - "customSeedWarning": m18, + "customSeedWarning": m28, "dPow": MessageLookupByLibrary.simpleMessage("Безпека Komodo dPoW"), "date": MessageLookupByLibrary.simpleMessage("Дата"), "decryptingWallet": @@ -515,6 +579,13 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("Видалити гаманець"), "deletingWallet": MessageLookupByLibrary.simpleMessage("Видалення гаманця..."), + "detailedFeesReceiveCoinTransactionFee": m29, + "detailedFeesSendCoinTransactionFee": m30, + "detailedFeesSendTradingFeeTransactionFee": + MessageLookupByLibrary.simpleMessage( + "відправити плату за торгівлю плату за транзакцію"), + "detailedFeesTradingFee": + MessageLookupByLibrary.simpleMessage("комісія за торгівлю"), "details": MessageLookupByLibrary.simpleMessage("деталі"), "deutscheLanguage": MessageLookupByLibrary.simpleMessage("Німецька"), "developerTitle": MessageLookupByLibrary.simpleMessage("Розробник"), @@ -525,6 +596,8 @@ class MessageLookup extends MessageLookupByLibrary { "Вимкнути знімки екрана/попередній перегляд"), "disclaimerAndTos": MessageLookupByLibrary.simpleMessage("Disclaimer & ToS"), + "doNotCloseTheAppTapForMoreInfo": MessageLookupByLibrary.simpleMessage( + "Не закривайте програму. Торкніться, щоб дізнатися більше..."), "done": MessageLookupByLibrary.simpleMessage("Готово"), "dontAskAgain": MessageLookupByLibrary.simpleMessage("Більше не запитуйте"), @@ -533,7 +606,7 @@ class MessageLookup extends MessageLookupByLibrary { "duration": MessageLookupByLibrary.simpleMessage("Тривалість"), "editContact": MessageLookupByLibrary.simpleMessage("Редагувати контакт"), - "emptyCoin": m19, + "emptyCoin": m31, "emptyExportPass": MessageLookupByLibrary.simpleMessage( "Пароль шифрування не може бути порожнім"), "emptyImportPass": MessageLookupByLibrary.simpleMessage( @@ -542,7 +615,10 @@ class MessageLookup extends MessageLookupByLibrary { "Ім’я контакта не може бути пустим"), "emptyWallet": MessageLookupByLibrary.simpleMessage( "Ім’я гаманця не може бути пустим"), - "enable": m20, + "enable": m32, + "enableNotificationsForActivationProgress": + MessageLookupByLibrary.simpleMessage( + "Увімкніть сповіщення, щоб отримувати оновлення про хід активації."), "enableTestCoins": MessageLookupByLibrary.simpleMessage("Увімкнути тестові монети"), "enablingTooManyAssetsSpan1": @@ -576,7 +652,7 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("Недійсна адреса"), "errorNotAValidAddressSegWit": MessageLookupByLibrary.simpleMessage( "Адреси Segwit не підтримуються (поки що)"), - "errorNotEnoughGas": m21, + "errorNotEnoughGas": m33, "errorTryAgain": MessageLookupByLibrary.simpleMessage("Помилка, спробуйте ще раз"), "errorTryLater": @@ -587,32 +663,32 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("Будь-ласка введіть дані"), "estimateValue": MessageLookupByLibrary.simpleMessage( "Розрахункова загальна вартість"), - "eulaParagraphe1": m22, - "eulaParagraphe10": m23, - "eulaParagraphe11": m24, + "eulaParagraphe1": m34, + "eulaParagraphe10": m35, + "eulaParagraphe11": m36, "eulaParagraphe12": MessageLookupByLibrary.simpleMessage( "When accessing or using the Services, You agree that You are solely responsible for your conduct while accessing and using our Services. Without limiting the generality of the foregoing, You agree that You will not:\n(a) use the Services in any manner that could interfere with, disrupt, negatively affect or inhibit other users from fully enjoying the Services, or that could damage, disable, overburden or impair the functioning of our Services in any manner;\n(b) use the Services to pay for, support or otherwise engage in any illegal activities, including, but not limited to illegal gambling, fraud, money laundering, or terrorist activities;\n(c) use any robot, spider, crawler, scraper or other automated means or interface not provided by us to access our Services or to extract data;\n(d) use or attempt to use another user’s Wallet or credentials without authorization;\n(e) attempt to circumvent any content filtering techniques we employ, or attempt to access any service or area of our Services that You are not authorized to access;\n(f) introduce to the Services any virus, Trojan, worms, logic bombs or other harmful material;\n(g) develop any third-party applications that interact with our Services without our prior written consent;\n(h) provide false, inaccurate, or misleading information;\n(i) encourage or induce any other person to engage in any of the activities prohibited under this Section.\n\n"), - "eulaParagraphe13": m25, - "eulaParagraphe14": m26, - "eulaParagraphe15": m27, - "eulaParagraphe16": m28, - "eulaParagraphe17": m29, - "eulaParagraphe18": m30, - "eulaParagraphe19": m31, - "eulaParagraphe2": m32, + "eulaParagraphe13": m37, + "eulaParagraphe14": m38, + "eulaParagraphe15": m39, + "eulaParagraphe16": m40, + "eulaParagraphe17": m41, + "eulaParagraphe18": m42, + "eulaParagraphe19": m43, + "eulaParagraphe2": m44, "eulaParagraphe3": MessageLookupByLibrary.simpleMessage( "By entering into this User (each subject accessing or using the site) Agreement (this writing) You declare that You are an individual over the age of majority (at least 18 or older) and have the capacity to enter into this User Agreement and accept to be legally bound by the terms and conditions of this User Agreement, as incorporated herein and amended from time to time."), "eulaParagraphe4": MessageLookupByLibrary.simpleMessage( "We may change the terms of this User Agreement at any time. Any such changes will take effect when published in the application, or when You use the Services.\n\nRead the User Agreement carefully every time You use our Services. Your continued use of the Services shall signify your acceptance to be bound by the current User Agreement. Our failure or delay in enforcing or partially enforcing any provision of this User Agreement shall not be construed as a waiver of any.\n\n"), - "eulaParagraphe5": m33, - "eulaParagraphe6": m34, + "eulaParagraphe5": m45, + "eulaParagraphe6": m46, "eulaParagraphe7": MessageLookupByLibrary.simpleMessage( "We are not responsible for seed-phrases residing in the Mobile Application. In no event shall we be held liable for any loss of any kind. It is your sole responsibility to maintain appropriate backups of your accounts and their seedprases.\n\n"), "eulaParagraphe8": MessageLookupByLibrary.simpleMessage( "You should not act, or refrain from acting solely on the basis of the content of this application.\nYour access to this application does not itself create an adviser-client relationship between You and us.\nThe content of this application does not constitute a solicitation or inducement to invest in any financial products or services offered by us.\nAny advice included in this application has been prepared without taking into account your objectives, financial situation or needs. You should consider our Risk Disclosure Notice before making any decision on whether to acquire the product described in that document.\n\n"), "eulaParagraphe9": MessageLookupByLibrary.simpleMessage( "We do not guarantee your continuous access to the application or that your access or use will be error-free.\nWe will not be liable in the event that the application is unavailable to You for any reason (for example, due to computer downtime ascribable to malfunctions, upgrades, server problems, precautionary or corrective maintenance activities or interruption in telecommunication supplies).\n\n"), - "eulaTitle1": m35, + "eulaTitle1": m47, "eulaTitle10": MessageLookupByLibrary.simpleMessage("ACCESS AND SECURITY\n\n"), "eulaTitle11": MessageLookupByLibrary.simpleMessage( @@ -664,19 +740,20 @@ class MessageLookup extends MessageLookupByLibrary { "Елементи успішно експортовано:"), "exportSwapsTitle": MessageLookupByLibrary.simpleMessage("Обмін"), "exportTitle": MessageLookupByLibrary.simpleMessage("Експорт"), + "failedToCancelActivation": m48, "fakeBalanceAmt": MessageLookupByLibrary.simpleMessage("Підроблена сума балансу:"), "faqTitle": MessageLookupByLibrary.simpleMessage("Часто задавані питання"), "faucetError": MessageLookupByLibrary.simpleMessage("Помилка"), - "faucetInProgress": m36, + "faucetInProgress": m49, "faucetName": MessageLookupByLibrary.simpleMessage("FAUCET"), "faucetSuccess": MessageLookupByLibrary.simpleMessage("Успіх"), "faucetTimedOut": MessageLookupByLibrary.simpleMessage("Час запиту вичерпано"), "feedNewsTab": MessageLookupByLibrary.simpleMessage("Новини"), "feedNotFound": MessageLookupByLibrary.simpleMessage("Тут нічого"), - "feedNotifTitle": m37, + "feedNotifTitle": m50, "feedReadMore": MessageLookupByLibrary.simpleMessage("Детальніше..."), "feedTab": MessageLookupByLibrary.simpleMessage("Новини"), "feedTitle": MessageLookupByLibrary.simpleMessage("Стрічка новин"), @@ -689,7 +766,7 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("Стрічку новин оновлено"), "feedback": MessageLookupByLibrary.simpleMessage("Поділитися файлом журналу"), - "feesError": m38, + "feesError": m51, "filtersAll": MessageLookupByLibrary.simpleMessage("Все"), "filtersButton": MessageLookupByLibrary.simpleMessage("Фільтр"), "filtersClearAll": @@ -707,18 +784,26 @@ class MessageLookup extends MessageLookupByLibrary { "filtersType": MessageLookupByLibrary.simpleMessage("Відправник/ Отримувач"), "fingerprint": MessageLookupByLibrary.simpleMessage("Відбиток пальця"), + "finishingUp": MessageLookupByLibrary.simpleMessage( + "Закінчується, будь ласка, зачекайте"), + "foundQrCode": MessageLookupByLibrary.simpleMessage("Знайдено QR-код"), "frenchLanguage": MessageLookupByLibrary.simpleMessage("Французька"), "from": MessageLookupByLibrary.simpleMessage("Від"), - "gasFee": m39, + "futureTransactions": MessageLookupByLibrary.simpleMessage( + "Ми будемо синхронізувати майбутні транзакції, здійснені після активації, пов’язаної з вашим відкритим ключем. Це найшвидший варіант, який займає найменшу кількість пам’яті."), + "gasFee": m52, "gasLimit": MessageLookupByLibrary.simpleMessage("Ліміт комісії"), - "gasNotActive": m40, + "gasNotActive": m53, "gasPrice": MessageLookupByLibrary.simpleMessage("Ціна на комісію"), "generalPinNotActive": MessageLookupByLibrary.simpleMessage( "Загальний захист PIN-кодом не активний.\nРежим камуфляжу буде недоступний.\nУвімкніть захист PIN-кодом."), "getBackupPhrase": MessageLookupByLibrary.simpleMessage( "Важливо: створіть резервну копію насінної фрази, перш ніж продовжити!"), + "gettingTxWait": MessageLookupByLibrary.simpleMessage( + "Отримання трансакції, зачекайте"), "goToPorfolio": MessageLookupByLibrary.simpleMessage("Перейти до портфоліо"), + "gweiError": m54, "helpLink": MessageLookupByLibrary.simpleMessage("Допомога"), "helpTitle": MessageLookupByLibrary.simpleMessage("Допомога та підтримка"), @@ -772,6 +857,7 @@ class MessageLookup extends MessageLookupByLibrary { "importSwapJsonDecodingError": MessageLookupByLibrary.simpleMessage( "Помилка декодування файлу json"), "importTitle": MessageLookupByLibrary.simpleMessage("Імпорт"), + "incomingTransactionsProtectionSettings": m55, "infoPasswordDialog": MessageLookupByLibrary.simpleMessage( "Використовуйте надійний пароль і не зберігайте його ні на одному пристрої"), "infoTrade1": MessageLookupByLibrary.simpleMessage( @@ -780,7 +866,7 @@ class MessageLookup extends MessageLookupByLibrary { "Обмін може тривати до 60 хвилин. НЕ закривайте додаток!"), "infoWalletPassword": MessageLookupByLibrary.simpleMessage( "Ви повинні вказати пароль для шифрування гаманця з міркувань безпеки."), - "insufficientBalanceToPay": m41, + "insufficientBalanceToPay": m56, "insufficientText": MessageLookupByLibrary.simpleMessage( "Мінімальна кількість, необхідна для цього замовлення"), "insufficientTitle": @@ -789,18 +875,20 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("Оновити"), "internetRestored": MessageLookupByLibrary.simpleMessage( "Підключення до Інтернету відновлено"), + "invalidCoinAddress": m57, "invalidSwap": MessageLookupByLibrary.simpleMessage("Неможливо продовжити обмін"), "invalidSwapDetailsLink": MessageLookupByLibrary.simpleMessage("Подробиці"), - "isUnavailable": m42, + "isUnavailable": m58, "japaneseLanguage": MessageLookupByLibrary.simpleMessage("Японська"), "koreanLanguage": MessageLookupByLibrary.simpleMessage("Корейська"), "language": MessageLookupByLibrary.simpleMessage("Мова"), "latestTxs": MessageLookupByLibrary.simpleMessage("Останні транзакції"), "legalTitle": MessageLookupByLibrary.simpleMessage("Юридичний"), "less": MessageLookupByLibrary.simpleMessage("Менше"), - "lessThanCaution": m43, + "lessThanCaution": m59, + "limitError": m60, "loading": MessageLookupByLibrary.simpleMessage("Завантаження..."), "loadingOrderbook": MessageLookupByLibrary.simpleMessage( "Завантаження книги замовлень..."), @@ -875,21 +963,24 @@ class MessageLookup extends MessageLookupByLibrary { "min": MessageLookupByLibrary.simpleMessage("ХВ"), "minOrder": MessageLookupByLibrary.simpleMessage( "Мінімальна кількість замовлень:"), - "minValue": m44, - "minValueBuy": m45, - "minValueOrder": m46, - "minValueSell": m47, - "minVolumeInput": m48, + "minValue": m61, + "minValueBuy": m62, + "minValueOrder": m63, + "minValueSell": m64, + "minVolumeInput": m65, "minVolumeIsTDH": MessageLookupByLibrary.simpleMessage( "Має бути нижчою за суму продажу"), "minVolumeTitle": MessageLookupByLibrary.simpleMessage( "Необхідний мінімальний обсяг"), "minVolumeToggle": MessageLookupByLibrary.simpleMessage( "Використати довільний мінімальний обсяг"), + "minimizingWillTerminate": MessageLookupByLibrary.simpleMessage( + "Попередження: згортання програми на iOS припинить процес активації."), "minutes": MessageLookupByLibrary.simpleMessage("хв"), - "mobileDataWarning": m49, + "mobileDataWarning": m66, + "moreInfo": MessageLookupByLibrary.simpleMessage("Більше інформації"), "moreTab": MessageLookupByLibrary.simpleMessage("Більше"), - "multiActivateGas": m50, + "multiActivateGas": m67, "multiBaseAmtPlaceholder": MessageLookupByLibrary.simpleMessage("Сума"), "multiBasePlaceholder": MessageLookupByLibrary.simpleMessage("Монета"), "multiBaseSelectTitle": @@ -897,7 +988,7 @@ class MessageLookup extends MessageLookupByLibrary { "multiConfirmCancel": MessageLookupByLibrary.simpleMessage("Скасувати"), "multiConfirmConfirm": MessageLookupByLibrary.simpleMessage("Підтвердити"), - "multiConfirmTitle": m51, + "multiConfirmTitle": m68, "multiCreate": MessageLookupByLibrary.simpleMessage("Створити"), "multiCreateOrder": MessageLookupByLibrary.simpleMessage("Замовлення"), "multiCreateOrders": MessageLookupByLibrary.simpleMessage("Замовлення"), @@ -912,8 +1003,8 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("Недійсна сума"), "multiInvalidSellAmt": MessageLookupByLibrary.simpleMessage("Недійсна сума продажу"), - "multiLowGas": m52, - "multiLowerThanFee": m53, + "multiLowGas": m69, + "multiLowerThanFee": m70, "multiMaxSellAmt": MessageLookupByLibrary.simpleMessage( "Максимальна сума продажу становить"), "multiMinReceiveAmt": MessageLookupByLibrary.simpleMessage( @@ -947,7 +1038,7 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("Елементи не вибрано"), "noMatchingOrders": MessageLookupByLibrary.simpleMessage( "Відповідних замовлень не знайдено"), - "noOrder": m54, + "noOrder": m71, "noOrderAvailable": MessageLookupByLibrary.simpleMessage( "Натисніть, щоб створити замовлення"), "noOrders": MessageLookupByLibrary.simpleMessage( @@ -961,7 +1052,8 @@ class MessageLookup extends MessageLookupByLibrary { "noTxs": MessageLookupByLibrary.simpleMessage("Немає транзацкій"), "nonNumericInput": MessageLookupByLibrary.simpleMessage("Значення має бути числовим"), - "notEnoughGas": m55, + "none": MessageLookupByLibrary.simpleMessage("Жодного"), + "notEnoughGas": m72, "notEnoughtBalanceForFee": MessageLookupByLibrary.simpleMessage( "Недостатньо балансу для комісій - торгуйте на меншу суму"), "noteOnOrder": MessageLookupByLibrary.simpleMessage( @@ -971,24 +1063,24 @@ class MessageLookup extends MessageLookupByLibrary { "noteTitle": MessageLookupByLibrary.simpleMessage("Примітка"), "nothingFound": MessageLookupByLibrary.simpleMessage("Нічого не знайдено"), - "notifSwapCompletedText": m56, + "notifSwapCompletedText": m73, "notifSwapCompletedTitle": MessageLookupByLibrary.simpleMessage("Обмін завершено"), - "notifSwapFailedText": m57, + "notifSwapFailedText": m74, "notifSwapFailedTitle": MessageLookupByLibrary.simpleMessage("Помилка обміну"), - "notifSwapStartedText": m58, + "notifSwapStartedText": m75, "notifSwapStartedTitle": MessageLookupByLibrary.simpleMessage("Розпочато новий обмін"), "notifSwapStatusTitle": MessageLookupByLibrary.simpleMessage("Статус обміну змінено"), - "notifSwapTimeoutText": m59, + "notifSwapTimeoutText": m76, "notifSwapTimeoutTitle": MessageLookupByLibrary.simpleMessage("Час очікування обміну минув"), - "notifTxText": m60, + "notifTxText": m77, "notifTxTitle": MessageLookupByLibrary.simpleMessage("Вхідна транзакція"), - "numberAssets": m61, + "numberAssets": m78, "officialPressRelease": MessageLookupByLibrary.simpleMessage("Офіційний прес-реліз"), "okButton": MessageLookupByLibrary.simpleMessage("Ок"), @@ -998,15 +1090,17 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("Використаний простір"), "openMessage": MessageLookupByLibrary.simpleMessage( "Відкрийте повідомлення про помилку"), - "orderCancel": m62, + "orderBookLess": MessageLookupByLibrary.simpleMessage("менше"), + "orderBookMore": MessageLookupByLibrary.simpleMessage("більше"), + "orderCancel": m79, "orderCreated": MessageLookupByLibrary.simpleMessage("Замовлення створено"), "orderCreatedInfo": MessageLookupByLibrary.simpleMessage("Замовлення успішно створено"), "orderDetailsAddress": MessageLookupByLibrary.simpleMessage("Адреса"), "orderDetailsCancel": MessageLookupByLibrary.simpleMessage("Скасувати"), - "orderDetailsExpedient": m63, - "orderDetailsExpensive": m64, + "orderDetailsExpedient": m80, + "orderDetailsExpensive": m81, "orderDetailsFor": MessageLookupByLibrary.simpleMessage("для"), "orderDetailsIdentical": MessageLookupByLibrary.simpleMessage("Ідентичний CEX"), @@ -1019,7 +1113,7 @@ class MessageLookup extends MessageLookupByLibrary { "Відкрийте «Деталі» одним дотиком і виберіть «Замовити довгим дотиком»."), "orderDetailsSpend": MessageLookupByLibrary.simpleMessage("Витратити"), "orderDetailsTitle": MessageLookupByLibrary.simpleMessage("Подробиці"), - "orderFilled": m65, + "orderFilled": m82, "orderMatched": MessageLookupByLibrary.simpleMessage("Замовлення поєднане"), "orderMatching": @@ -1030,9 +1124,9 @@ class MessageLookup extends MessageLookupByLibrary { "orders": MessageLookupByLibrary.simpleMessage("Замовлення"), "ordersActive": MessageLookupByLibrary.simpleMessage("Активні"), "ordersHistory": MessageLookupByLibrary.simpleMessage("Історія"), - "ordersTableAmount": m66, - "ordersTablePrice": m67, - "ordersTableTotal": m68, + "ordersTableAmount": m83, + "ordersTablePrice": m84, + "ordersTableTotal": m85, "overwrite": MessageLookupByLibrary.simpleMessage("Перезаписати"), "ownOrder": MessageLookupByLibrary.simpleMessage("Це ваше замовлення!"), "paidFromBalance": @@ -1042,6 +1136,8 @@ class MessageLookup extends MessageLookupByLibrary { "paidWith": MessageLookupByLibrary.simpleMessage("Сплачено з"), "passwordRequirement": MessageLookupByLibrary.simpleMessage( "Пароль має містити щонайменше 12 символів, з літерою нижнього та верхнього регістру та одного спеціального символу."), + "pastTransactionsFromDate": MessageLookupByLibrary.simpleMessage( + "Ваш гаманець відображатиме ваші минулі транзакції, здійснені після вказаної дати."), "paymentUriDetailsAccept": MessageLookupByLibrary.simpleMessage("Оплатити"), "paymentUriDetailsAcceptQuestion": @@ -1056,9 +1152,12 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("Скасувати"), "paymentUriDetailsTitle": MessageLookupByLibrary.simpleMessage("Запит на оплату"), - "paymentUriInactiveCoin": m69, + "paymentUriInactiveCoin": m86, "placeOrder": MessageLookupByLibrary.simpleMessage("Розмістіть своє замовлення"), + "pleaseAcceptAllCoinActivationRequests": + MessageLookupByLibrary.simpleMessage( + "Будь ласка, прийміть усі спеціальні запити на активацію монет або скасуйте вибір монет."), "pleaseAddCoin": MessageLookupByLibrary.simpleMessage("Будь ласка додайте монету"), "pleaseRestart": MessageLookupByLibrary.simpleMessage( @@ -1078,21 +1177,22 @@ class MessageLookup extends MessageLookupByLibrary { "protectionCtrlWarning": MessageLookupByLibrary.simpleMessage( "Попередження, цей атомарний своп не захищений з dPoW."), "pubkey": MessageLookupByLibrary.simpleMessage("Pubkey"), + "qrCodeScanner": MessageLookupByLibrary.simpleMessage("Сканер QR-коду"), "question_1": MessageLookupByLibrary.simpleMessage( "Ви зберігаєте мої особисті ключі?"), - "question_10": m70, - "question_2": m71, + "question_10": m87, + "question_2": m88, "question_3": MessageLookupByLibrary.simpleMessage( "Скільки часу займає кожна атомарна заміна?"), "question_4": MessageLookupByLibrary.simpleMessage( "Чи потрібно мені бути онлайн під час обміну?"), - "question_5": m72, + "question_5": m89, "question_6": MessageLookupByLibrary.simpleMessage( "Чи забезпечуєте ви підтримку користувачів?"), "question_7": MessageLookupByLibrary.simpleMessage( "Чи є у вас обмеження по країні?"), - "question_8": m73, - "question_9": m74, + "question_8": m90, + "question_9": m91, "rebrandingAnnouncement": MessageLookupByLibrary.simpleMessage( "Це нова ера! Ми офіційно змінили назву з \"AtomicDEX\" на \"Komodo Wallet\""), "receive": MessageLookupByLibrary.simpleMessage("ОТРИМАТИ"), @@ -1132,7 +1232,7 @@ class MessageLookup extends MessageLookupByLibrary { "rewardsReadMore": MessageLookupByLibrary.simpleMessage( "Докладніше про нагороди KMD для активних користувачів"), "rewardsReceive": MessageLookupByLibrary.simpleMessage("Отримати"), - "rewardsSuccess": m75, + "rewardsSuccess": m92, "rewardsTableFiat": MessageLookupByLibrary.simpleMessage("Фіат"), "rewardsTableRewards": MessageLookupByLibrary.simpleMessage("Нагороди,\nKMD"), @@ -1142,7 +1242,7 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("Інформація про нагороди:"), "rewardsTableUXTO": MessageLookupByLibrary.simpleMessage("UTXO кіл,\nKMD"), - "rewardsTimeDays": m76, + "rewardsTimeDays": m93, "rewardsTitle": MessageLookupByLibrary.simpleMessage("Інформація про нагороди"), "russianLanguage": MessageLookupByLibrary.simpleMessage("Російська"), @@ -1188,13 +1288,15 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("Виберіть усі тестові активи"), "searchFilterSubtitleUBQ": MessageLookupByLibrary.simpleMessage("Виберіть усі монети Ubiq"), + "searchFilterSubtitleZHTLC": + MessageLookupByLibrary.simpleMessage("Виберіть усі монети ZHTLC"), "searchFilterSubtitleutxo": MessageLookupByLibrary.simpleMessage("Виберіть усі монети UTXO"), "searchForTicker": MessageLookupByLibrary.simpleMessage("Шукати по тікету"), "seconds": MessageLookupByLibrary.simpleMessage("с"), "security": MessageLookupByLibrary.simpleMessage("Безпека"), - "seeOrders": m79, + "seeOrders": m96, "seeTxHistory": MessageLookupByLibrary.simpleMessage("Побачити історію транзакції"), "seedPhrase": MessageLookupByLibrary.simpleMessage("Фраза насіння"), @@ -1209,6 +1311,7 @@ class MessageLookup extends MessageLookupByLibrary { "Виберіть монету, яку хочете КУПИТИ"), "selectCoinToSell": MessageLookupByLibrary.simpleMessage( "Виберіть монету, яку хочете ПРОДАТИ"), + "selectDate": MessageLookupByLibrary.simpleMessage("Виберіть дату"), "selectFileImport": MessageLookupByLibrary.simpleMessage("Виберіть файл"), "selectLanguage": MessageLookupByLibrary.simpleMessage("Виберіть мову"), @@ -1234,10 +1337,13 @@ class MessageLookup extends MessageLookupByLibrary { "settingLanguageTitle": MessageLookupByLibrary.simpleMessage("Мови"), "settings": MessageLookupByLibrary.simpleMessage("Налаштування"), "share": MessageLookupByLibrary.simpleMessage("Поділитись"), - "shareAddress": m80, + "shareAddress": m97, + "shouldScanPastTransaction": m98, + "showAddress": MessageLookupByLibrary.simpleMessage("Показати адресу"), "showDetails": MessageLookupByLibrary.simpleMessage("Показати деталі"), "showMyOrders": MessageLookupByLibrary.simpleMessage("Показати мої угоди"), + "showingOrders": m99, "signInWithPassword": MessageLookupByLibrary.simpleMessage( "Увійдіть за допомогою пароля"), "signInWithSeedPhrase": MessageLookupByLibrary.simpleMessage( @@ -1245,24 +1351,24 @@ class MessageLookup extends MessageLookupByLibrary { "simple": MessageLookupByLibrary.simpleMessage("Простий"), "simpleTradeActivate": MessageLookupByLibrary.simpleMessage("Активувати"), - "simpleTradeBuyHint": m81, + "simpleTradeBuyHint": m100, "simpleTradeBuyTitle": MessageLookupByLibrary.simpleMessage("Купити"), "simpleTradeClose": MessageLookupByLibrary.simpleMessage("Закрити"), - "simpleTradeMaxActiveCoins": m82, - "simpleTradeNotActive": m83, + "simpleTradeMaxActiveCoins": m101, + "simpleTradeNotActive": m102, "simpleTradeRecieve": MessageLookupByLibrary.simpleMessage("Отримати"), - "simpleTradeSellHint": m84, + "simpleTradeSellHint": m103, "simpleTradeSellTitle": MessageLookupByLibrary.simpleMessage("Продати"), "simpleTradeSend": MessageLookupByLibrary.simpleMessage("Надіслати"), "simpleTradeShowLess": MessageLookupByLibrary.simpleMessage("Показати менше"), "simpleTradeShowMore": MessageLookupByLibrary.simpleMessage("Показати більше"), - "simpleTradeUnableActivate": m85, + "simpleTradeUnableActivate": m104, "skip": MessageLookupByLibrary.simpleMessage("Пропустити"), "snackbarDismiss": MessageLookupByLibrary.simpleMessage("Відхилити"), - "soundCantPlayThatMsg": m86, - "soundPlayedWhen": m87, + "soundCantPlayThatMsg": m105, + "soundPlayedWhen": m106, "soundSettingsLink": MessageLookupByLibrary.simpleMessage("Звук"), "soundSettingsTitle": MessageLookupByLibrary.simpleMessage("Налаштування звуку"), @@ -1274,19 +1380,21 @@ class MessageLookup extends MessageLookupByLibrary { "soundsNote": MessageLookupByLibrary.simpleMessage( "Зверніть увагу, що ви можете встановити власні звуки в налаштуваннях програми."), "spanishLanguage": MessageLookupByLibrary.simpleMessage("Іспанська"), + "startDate": MessageLookupByLibrary.simpleMessage("Дата початку"), + "startSwap": MessageLookupByLibrary.simpleMessage("Почати обмін"), "step": MessageLookupByLibrary.simpleMessage("Крок"), "success": MessageLookupByLibrary.simpleMessage("Успішно!"), "support": MessageLookupByLibrary.simpleMessage("Підтримка"), - "supportLinksDesc": m88, + "supportLinksDesc": m107, "swap": MessageLookupByLibrary.simpleMessage("своп"), "swapCurrent": MessageLookupByLibrary.simpleMessage("Поточний"), "swapDetailTitle": MessageLookupByLibrary.simpleMessage("ПІДТВЕРДИТИ ДЕТАЛІ ОБМІНУ"), "swapEstimated": MessageLookupByLibrary.simpleMessage("Оцінка"), "swapFailed": MessageLookupByLibrary.simpleMessage("Помилка обміну"), - "swapGasActivate": m89, - "swapGasAmount": m90, - "swapGasAmountRequired": m91, + "swapGasActivate": m108, + "swapGasAmount": m109, + "swapGasAmountRequired": m110, "swapOngoing": MessageLookupByLibrary.simpleMessage("Обмін триває"), "swapProgress": MessageLookupByLibrary.simpleMessage("Деталі прогресу"), "swapStarted": MessageLookupByLibrary.simpleMessage("Розпочато"), @@ -1294,6 +1402,13 @@ class MessageLookup extends MessageLookupByLibrary { "swapTotal": MessageLookupByLibrary.simpleMessage("Всього"), "swapUUID": MessageLookupByLibrary.simpleMessage("Swap UUID"), "switchTheme": MessageLookupByLibrary.simpleMessage("Змінити тему"), + "syncFromDate": MessageLookupByLibrary.simpleMessage( + "Синхронізувати з указаної дати"), + "syncFromSaplingActivation": MessageLookupByLibrary.simpleMessage( + "Синхронізація з активації саджанця"), + "syncNewTransactions": MessageLookupByLibrary.simpleMessage( + "Синхронізувати нові транзакції"), + "syncTransactionsQuestion": m111, "tagAVX20": MessageLookupByLibrary.simpleMessage("AVX20"), "tagBEP20": MessageLookupByLibrary.simpleMessage("BEP20"), "tagERC20": MessageLookupByLibrary.simpleMessage("ERC20"), @@ -1308,6 +1423,7 @@ class MessageLookup extends MessageLookupByLibrary { "tagQRC20": MessageLookupByLibrary.simpleMessage("QRC20"), "tagSBCH": MessageLookupByLibrary.simpleMessage("SBCH"), "tagUBQ": MessageLookupByLibrary.simpleMessage("UBQ"), + "tagZHTLC": MessageLookupByLibrary.simpleMessage("ZHTLC"), "takerOrder": MessageLookupByLibrary.simpleMessage("Замовлення покупця"), "timeOut": MessageLookupByLibrary.simpleMessage("Час вийшов"), @@ -1335,6 +1451,12 @@ class MessageLookup extends MessageLookupByLibrary { "tradingFee": MessageLookupByLibrary.simpleMessage("комісія за торгівлю:"), "tradingMode": MessageLookupByLibrary.simpleMessage("Режим торгівлі"), + "transactionAddress": + MessageLookupByLibrary.simpleMessage("Адреса транзакції"), + "transactionHidden": + MessageLookupByLibrary.simpleMessage("Транзакція прихована"), + "transactionHiddenPhishing": MessageLookupByLibrary.simpleMessage( + "Ця трансакція була прихована через можливу спробу фішингу."), "tryRestarting": MessageLookupByLibrary.simpleMessage( "Якщо навіть після цього деякі монети все ще не активовані, спробуйте перезапустити програму."), "turkishLanguage": MessageLookupByLibrary.simpleMessage("Турецька"), @@ -1350,26 +1472,26 @@ class MessageLookup extends MessageLookupByLibrary { "Забагато запитів.\nПеревищено ліміт запитів історії транзакцій.\nБудь-ласка спробуйте пізніше."), "txNotConfirmed": MessageLookupByLibrary.simpleMessage("НЕПІДТВЕРДЖЕНО"), - "txleft": m92, + "txleft": m112, "ukrainianLanguage": MessageLookupByLibrary.simpleMessage("Український"), "unlock": MessageLookupByLibrary.simpleMessage("розблокувати"), "unlockFunds": MessageLookupByLibrary.simpleMessage("Розблокувати"), - "unlockSuccess": m93, + "unlockSuccess": m113, "unspendable": MessageLookupByLibrary.simpleMessage("невитрачений"), "updatesAvailable": MessageLookupByLibrary.simpleMessage("Доступна нова версія"), "updatesChecking": MessageLookupByLibrary.simpleMessage("Перевірка оновлень..."), - "updatesCurrentVersion": m94, + "updatesCurrentVersion": m114, "updatesNotifAvailable": MessageLookupByLibrary.simpleMessage( "Доступна нова версія. Будь ласка, оновіть."), - "updatesNotifAvailableVersion": m95, + "updatesNotifAvailableVersion": m115, "updatesNotifTitle": MessageLookupByLibrary.simpleMessage("Доступне оновлення"), "updatesSkip": MessageLookupByLibrary.simpleMessage("Пропустити поки що"), - "updatesTitle": m96, + "updatesTitle": m116, "updatesUpToDate": MessageLookupByLibrary.simpleMessage("Вже актуально"), "updatesUpdate": MessageLookupByLibrary.simpleMessage("Оновлення"), @@ -1395,24 +1517,26 @@ class MessageLookup extends MessageLookupByLibrary { "warningOkBtn": MessageLookupByLibrary.simpleMessage("Ок"), "warningShareLogs": MessageLookupByLibrary.simpleMessage( "Увага! В особливих випадках дані журналу містять конфіденційну інформацію, яка може бути використана для витрачання монет із невдалих обмінів!"), - "weFailedTo": m97, - "weFailedToActivate": m98, - "welcomeInfo": m99, + "weFailedTo": m117, + "weFailedToActivate": m118, + "welcomeInfo": m119, "welcomeLetSetUp": MessageLookupByLibrary.simpleMessage("ДАВАЙТЕ НАЛАШТОВУВАТИ!"), "welcomeTitle": MessageLookupByLibrary.simpleMessage("ЛАСКАВО ПРОСИМО"), "welcomeWallet": MessageLookupByLibrary.simpleMessage("гаманця"), "willBeRedirected": MessageLookupByLibrary.simpleMessage( "Після завершення ви будете перенаправлені на сторінку портфоліо."), + "willTakeTime": MessageLookupByLibrary.simpleMessage( + "Це займе деякий час, і програма має залишатися в активному режимі.\nЗакриття програми під час активації може призвести до проблем."), "withdraw": MessageLookupByLibrary.simpleMessage("Відправити"), - "withdrawCameraAccessText": m100, + "withdrawCameraAccessText": m120, "withdrawCameraAccessTitle": MessageLookupByLibrary.simpleMessage("Доступ заборонено"), "withdrawConfirm": MessageLookupByLibrary.simpleMessage("Підтвердити зняття"), "withdrawConfirmError": MessageLookupByLibrary.simpleMessage( "Щось пішло не так. Спробуйте ще раз пізніше."), - "withdrawValue": m101, + "withdrawValue": m121, "wrongCoinSpan1": MessageLookupByLibrary.simpleMessage( "Ви намагаєтеся відсканувати платіжний QR-код для"), "wrongCoinSpan2": @@ -1432,7 +1556,7 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage( "у вас є замовлення, з яким можуть відповідати нові замовлення"), "youAreSending": MessageLookupByLibrary.simpleMessage("Ви надсилаєте:"), - "youWillReceiveClaim": m102, + "youWillReceiveClaim": m122, "youWillReceived": MessageLookupByLibrary.simpleMessage("Ви отримаєте:"), "yourWallet": MessageLookupByLibrary.simpleMessage("твій гаманець") diff --git a/lib/l10n/messages_zh.dart b/lib/l10n/messages_zh.dart index 49d2517fe..2a518b57a 100644 --- a/lib/l10n/messages_zh.dart +++ b/lib/l10n/messages_zh.dart @@ -19,238 +19,278 @@ typedef String MessageIfAbsent(String messageStr, List args); class MessageLookup extends MessageLookupByLibrary { String get localeName => 'zh'; - static m0(name) => "成功新增 ${name}!"; + static m0(protocolName) => "激活 ${protocolName} 币?"; - static m1(title) => "仅显示具有${title}地址的联系人"; + static m1(coinName) => "激活${coinName}"; - static m2(abbr) => "您无法将基金发送到${abbr}地址,因为${abbr}未激活。请转到投资组合页面"; + static m2(coinName) => "${coinName} 激活"; - static m3(appName) => + static m3(protocolName) => "${protocolName} 激活正在进行中"; + + static m4(name) => "成功新增 ${name}!"; + + static m5(title) => "仅显示具有${title}地址的联系人"; + + static m6(abbr) => "您无法将基金发送到${abbr}地址,因为${abbr}未激活。请转到投资组合页面"; + + static m7(appName) => "不${appName}是非托管应用。我们不会存储任何敏感数据,包括您的私钥、助记词或PIN。此数据仅存储在用户的设备上,不会转移。您的资产只由您掌控。"; - static m4(appName) => - "${appName}有适用于Android和iPhone系统的手机程序,以及适用于Windows、Mac和Linux操作系统的桌面程序。"; + static m8(appName) => + "${appName} 适用于 Android 和 iPhone 上的移动设备,以及 Windows、Mac 和 Linux 操作系统 上的桌面设备。"; - static m5(appName) => + static m9(appName) => "其他DEX(去中心化交易所)通常只允许您使用代理代币交易基于单个区块链网络的资产,并且只能用一个基金下一个订单。\n但用${appName}您可以在两个不同的区块链网络之间进行交易,且无需代理代币。您还可以用一个基金下多个订单。例如,您可以用KMD、QTUM或VRSC兑0.1 BTC,第一个订单成交后自动取消其他所有订单"; - static m6(appName) => + static m10(appName) => "几个因素决定了每次交易的处理时间。交易资产的区块时间取决于各自的网络(比特币通常是最慢的)。此外,用户可以自定义安全偏好。例如,您可以要求${appName}在确认KMD交易为最终交易前确认3次,这使得交易时间短于等待公证的时间."; - static m7(appName) => + static m11(appName) => "在{appName}上进行交易时,需要考虑两种费用。\n1.{appName}收取约0.13%(交易量的1/777,但不低于0.0001)作为吃单交易的交易费用,挂单交易不收费。\n2.在进行原子交换交易时,无论挂单还是吃单,都需要向相关区块链支付常规的网络费用\n网络费用具体取决于你选择的交易对,不同交易对费用可能大大不同。"; - static m8(name, link, appName, appCompanyShort) => + static m12(name, link, appName, appCompanyShort) => "是的 ${appName} 通过 ${appCompanyShort} ${name}提供支持。团队和社区总是乐于提供帮助!"; - static m9(appName) => "不是${appName} 是完全去中心化的。不会限制任何第三方用户访问。"; + static m13(appName) => "不是${appName} 是完全去中心化的。不会限制任何第三方用户访问。"; - static m10(appName, appCompanyShort) => + static m14(appName, appCompanyShort) => "${appName} 由${appCompanyShort}团队开发。${appCompanyShort}是最成熟的区块链项目之一,致力于开发创新解决方案,如原子交换、延迟工作量证明和可互操作的多链架构。"; - static m11(appName) => - "当然。更多信息,您可以查阅我们的开发者文档 ,或与我们联系询问合作细节。有具体的技术问题吗?{appName}开发者社区随时乐意提供帮助!"; + static m15(appName) => + "绝对地!您可以阅读我们的开发者文档了解更多详细信息,或者联系我们咨询您的合作伙伴关系。有具体的技术问题吗? ${appName} 开发者社区随时准备提供帮助!"; + + static m16(coinName1, coinName2) => "基于${coinName1}/${coinName2}"; - static m12(batteryLevelCritical) => + static m17(batteryLevelCritical) => "您的电池电量过低 (${batteryLevelCritical}%) ,无法安全地进行交换。请先充电,然后重试。"; - static m13(batteryLevelLow) => "您的电池电量低于 ${batteryLevelLow}%。请充电。"; + static m18(batteryLevelLow) => "您的电池电量低于 ${batteryLevelLow}%。请充电。"; + + static m19(seconde) => "正在进行交易匹配,请等待 ${seconde} 秒!"; + + static m20(index) => "请输入第 ${index}个单词"; + + static m21(index) => "您的助記詞的第 ${index}個单词是什麼?"; + + static m22(coin) => "${coin}激活已取消"; - static m14(seconde) => "正在进行交易匹配,请等待 ${seconde} 秒!"; + static m23(coin) => "成功激活${coin}"; - static m15(index) => "请输入第 ${index}个单词"; + static m24(protocolName) => "${protocolName} 币已激活"; - static m16(index) => "您的助記詞的第 ${index}個单词是什麼?"; + static m25(protocolName) => "${protocolName}币激活成功"; - static m17(name) => "确认删除该联系人${name}?"; + static m26(protocolName) => "${protocolName} 代币未激活"; - static m18(iUnderstand) => + static m27(name) => "确认删除该联系人${name}?"; + + static m28(iUnderstand) => "自定义助记词的安全性可能比自动生成的符合BIP39规范的助记词或私钥(WIF)低,更容易被破解。如您已了解风险并知道您正在做什么,请在下面的框中输入\"${iUnderstand}\"。"; - static m19(abbr) => "输入${abbr}地址"; + static m29(coinName) => "接收${coinName}交易费"; + + static m30(coinName) => "发送 ${coinName} 交易费"; - static m20(selected, remains) => "您仍然可以启用${remains},已选择:${selected}"; + static m31(abbr) => "输入${abbr}地址"; - static m21(gas) => "燃料不足-至少使用{gas}Gwei"; + static m32(selected, remains) => "您仍然可以启用${remains},已选择:${selected}"; - static m22(appName, appCompanyLong) => + static m33(gas) => "燃料不足-至少使用{gas}Gwei"; + + static m34(appName, appCompanyLong) => "This End-User License Agreement (\'EULA\') is a legal agreement between you and ${appCompanyLong}.\n\nThis EULA agreement governs your acquisition and use of our ${appName} mobile software (\'Software\', \'Mobile Application\', \'Application\' or \'App\') directly from ${appCompanyLong} or indirectly through a ${appCompanyLong} authorized entity, reseller or distributor (a \'Distributor\').\nPlease read this EULA agreement carefully before completing the installation process and using the ${appName} mobile software. It provides a license to use the ${appName} mobile software and contains warranty information and liability disclaimers.\nIf you register for the beta program of the ${appName} mobile software, this EULA agreement will also govern that trial. By clicking \'accept\' or installing and/or using the ${appName} mobile software, you are confirming your acceptance of the Software and agreeing to become bound by the terms of this EULA agreement.\nIf you are entering into this EULA agreement on behalf of a company or other legal entity, you represent that you have the authority to bind such entity and its affiliates to these terms and conditions. If you do not have such authority or if you do not agree with the terms and conditions of this EULA agreement, do not install or use the Software, and you must not accept this EULA agreement.\nThis EULA agreement shall apply only to the Software supplied by ${appCompanyLong} herewith regardless of whether other software is referred to or described herein. The terms also apply to any ${appCompanyLong} updates, supplements, Internet-based services, and support services for the Software, unless other terms accompany those items on delivery. If so, those terms apply.\n\nLICENSE GRANT\n\n${appCompanyLong} hereby grants you a personal, non-transferable, non-exclusive license to use the ${appName} mobile software on your devices in accordance with the terms of this EULA agreement.\n\nYou are permitted to load the ${appName} mobile software (for example a PC, laptop, mobile or tablet) under your control. You are responsible for ensuring your device meets the minimum security and resource requirements of the ${appName} mobile software.\n\nYou are not permitted to:\n(a) edit, alter, modify, adapt, translate or otherwise change the whole or any part of the Software nor permit the whole or any part of the Software to be combined with or become incorporated in any other software, nor decompile, disassemble or reverse engineer the Software or attempt to do any such things;\n(b) reproduce, copy, distribute, resell or otherwise use the Software for any commercial purpose;\n(c) use the Software in any way which breaches any applicable local, national or international law;\n(d) use the Software for any purpose that ${appCompanyLong} considers is a breach of this EULA agreement.\n\nINTELLECTUAL PROPERTY AND OWNERSHIP\n\n${appCompanyLong} shall at all times retain ownership of the Software as originally downloaded by you and all subsequent downloads of the Software by you. The Software (and the copyright, and other intellectual property rights of whatever nature in the Software, including any modifications made thereto) are and shall remain the property of ${appCompanyLong}.\n\n${appCompanyLong} reserves the right to grant licenses to use the Software to third parties.\n\nTERMINATION\n\nThis EULA agreement is effective from the date you first use the Software and shall continue until terminated. You may terminate it at any time upon written notice to ${appCompanyLong}.\nIt will also terminate immediately if you fail to comply with any term of this EULA agreement. Upon such termination, the licenses granted by this EULA agreement will immediately terminate and you agree to stop all access and use of the Software. The provisions that by their nature continue and survive will survive any termination of this EULA agreement.\n\nGOVERNING LAW\n\nThis EULA agreement, and any dispute arising out of or in connection with this EULA agreement, shall be governed by and construed in accordance with the laws of Vietnam.\n\nThis document was last updated on January 31st, 2020"; - static m23(appCompanyLong) => + static m35(appCompanyLong) => "${appCompanyLong} is the owner and/or authorised user of all trademarks, service marks, design marks, patents, copyrights, database rights and all other intellectual property appearing on or contained within the application, unless otherwise indicated. All information, text, material, graphics, software and advertisements on the application interface are copyright of ${appCompanyLong}, its suppliers and licensors, unless otherwise expressly indicated by ${appCompanyLong}. \nExcept as provided in the Terms, use of the application does not grant You any right, title, interest or license to any such intellectual property You may have access to on the application. \nWe own the rights, or have permission to use, the trademarks listed in our application. You are not authorised to use any of those trademarks without our written authorization – doing so would constitute a breach of our or another party’s intellectual property rights. \nAlternatively, we might authorise You to use the content in our application if You previously contact us and we agree in writing."; - static m24(appCompanyShort, appCompanyLong) => + static m36(appCompanyShort, appCompanyLong) => "${appCompanyLong} cannot guarantee the safety or security of your computer systems. We do not accept liability for any loss or corruption of electronically stored data or any damage to any computer system occurred in connection with the use of the application or of the user content.\n${appCompanyLong} makes no representation or warranty of any kind, express or implied, as to the operation of the application or the user content. You expressly agree that your use of the application is entirely at your sole risk.\nYou agree that the content provided in the application and the user content do not constitute financial product, legal or taxation advice, and You agree on not representing the user content or the application as such.\nTo the extent permitted by current legislation, the application is provided on an “as is, as available” basis.\n\n${appCompanyLong} expressly disclaims all responsibility for any loss, injury, claim, liability, or damage, or any indirect, incidental, special or consequential damages or loss of profits whatsoever resulting from, arising out of or in any way related to:\n(a) any errors in or omissions of the application and/or the user content, including but not limited to technical inaccuracies and typographical errors;\n(b) any third party website, application or content directly or indirectly accessed through links in the application, including but not limited to any errors or omissions;\n(c) the unavailability of the application or any portion of it;\n(d) your use of the application;\n(e) your use of any equipment or software in connection with the application.\n\nAny Services offered in connection with the Platform are provided on an \'as is\' basis, without any representation or warranty, whether express, implied or statutory. To the maximum extent permitted by applicable law, we specifically disclaim any implied warranties of title, merchantability, suitability for a particular purpose and/or non-infringement. We do not make any representations or warranties that use of the Platform will be continuous, uninterrupted, timely, or error-free.\nWe make no warranty that any Platform will be free from viruses, malware, or other related harmful material and that your ability to access any Platform will be uninterrupted. Any defects or malfunction in the product should be directed to the third party offering the Platform, not to ${appCompanyShort}.\nWe will not be responsible or liable to You for any loss of any kind, from action taken, or taken in reliance on the material or information contained in or through the Platform.\nThis is experimental and unfinished software. Use at your own risk. No warranty for any kind of damage. By using this application you agree to this terms and conditions."; - static m25(appCompanyLong) => + static m37(appCompanyLong) => "You agree and understand that there are risks associated with utilizing Services involving Virtual Currencies including, but not limited to, the risk of failure of hardware, software and internet connections, the risk of malicious software introduction, and the risk that third parties may obtain unauthorized access to information stored within your Wallet, including but not limited to your public and private keys. You agree and understand that ${appCompanyLong} will not be responsible for any communication failures, disruptions, errors, distortions or delays You may experience when using the Services, however caused.\nYou accept and acknowledge that there are risks associated with utilizing any virtual currency network, including, but not limited to, the risk of unknown vulnerabilities in or unanticipated changes to the network protocol. You acknowledge and accept that ${appCompanyLong} has no control over any cryptocurrency network and will not be responsible for any harm occurring as a result of such risks, including, but not limited to, the inability to reverse a transaction, and any losses in connection therewith due to erroneous or fraudulent actions.\nThe risk of loss in using Services involving Virtual Currencies may be substantial and losses may occur over a short period of time. In addition, price and liquidity are subject to significant fluctuations that may be unpredictable.\nVirtual Currencies are not legal tender and are not backed by any sovereign government. In addition, the legislative and regulatory landscape around Virtual Currencies is constantly changing and may affect your ability to use, transfer, or exchange Virtual Currencies.\nCFDs are complex instruments and come with a high risk of losing money rapidly due to leverage. 80.6% of retail investor accounts lose money when trading CFDs with this provider. You should consider whether You understand how CFDs work and whether You can afford to take the high risk of losing your money."; - static m26(appCompanyLong) => + static m38(appCompanyLong) => "You agree to indemnify, defend and hold harmless ${appCompanyLong}, its officers, directors, employees, agents, licensors, suppliers and any third party information providers to the application from and against all losses, expenses, damages and costs, including reasonable lawyer fees, resulting from any violation of the Terms by You.\nYou also agree to indemnify ${appCompanyLong} against any claims that information or material which You have submitted to ${appCompanyLong} is in violation of any law or in breach of any third party rights (including, but not limited to, claims in respect of defamation, invasion of privacy, breach of confidence, infringement of copyright or infringement of any other intellectual property right)."; - static m27(appCompanyLong) => + static m39(appCompanyLong) => "In order to be completed, any Virtual Currency transaction created with the ${appCompanyLong} must be confirmed and recorded in the Virtual Currency ledger associated with the relevant Virtual Currency network. Such networks are decentralized, peer-to-peer networks supported by independent third parties, which are not owned, controlled or operated by ${appCompanyLong}.\n${appCompanyLong} has no control over any Virtual Currency network and therefore cannot and does not ensure that any transaction details You submit via our Services will be confirmed on the relevant Virtual Currency network. You agree and understand that the transaction details You submit via our Services may not be completed, or may be substantially delayed, by the Virtual Currency network used to process the transaction. We do not guarantee that the Wallet can transfer title or right in any Virtual Currency or make any warranties whatsoever with regard to title.\nOnce transaction details have been submitted to a Virtual Currency network, we cannot assist You to cancel or otherwise modify your transaction or transaction details. ${appCompanyLong} has no control over any Virtual Currency network and does not have the ability to facilitate any cancellation or modification requests.\nIn the event of a Fork, ${appCompanyLong} may not be able to support activity related to your Virtual Currency. You agree and understand that, in the event of a Fork, the transactions may not be completed, completed partially, incorrectly completed, or substantially delayed. ${appCompanyLong} is not responsible for any loss incurred by You caused in whole or in part, directly or indirectly, by a Fork.\nIn no event shall ${appCompanyLong}, its affiliates and service providers, or any of their respective officers, directors, agents, employees or representatives, be liable for any lost profits or any special, incidental, indirect, intangible, or consequential damages, whether based on contract, tort, negligence, strict liability, or otherwise, arising out of or in connection with authorized or unauthorized use of the services, or this agreement, even if an authorized representative of ${appCompanyLong} has been advised of, has known of, or should have known of the possibility of such damages. \nFor example (and without limiting the scope of the preceding sentence), You may not recover for lost profits, lost business opportunities, or other types of special, incidental, indirect, intangible, or consequential damages. Some jurisdictions do not allow the exclusion or limitation of incidental or consequential damages, so the above limitation may not apply to You. \nWe will not be responsible or liable to You for any loss and take no responsibility for damages or claims arising in whole or in part, directly or indirectly from: \n(a) user error such as forgotten passwords, incorrectly constructed transactions, or mistyped Virtual Currency addresses; \n(b) server failure or data loss; \n(c) corrupted or otherwise non-performing Wallets or Wallet files; \n(d) unauthorized access to applications; \n(e) any unauthorized activities, including without limitation the use of hacking, viruses, phishing, brute forcing or other means of attack against the Services."; - static m28(appCompanyShort, appCompanyLong) => + static m40(appCompanyShort, appCompanyLong) => "For the avoidance of doubt, ${appCompanyLong} does not provide investment, tax or legal advice, nor does ${appCompanyLong} broker trades on your behalf. All ${appCompanyLong} trades are executed automatically, based on the parameters of your order instructions and in accordance with posted Trade execution procedures, and You are solely responsible for determining whether any investment, investment strategy or related transaction is appropriate for You based on your personal investment objectives, financial circumstances and risk tolerance. You should consult your legal or tax professional regarding your specific situation. Neither ${appCompanyShort} nor its owners, members, officers, directors, partners, consultants, nor anyone involved in the publication of this application, is a registered investment adviser or broker-dealer or associated person with a registered investment adviser or broker-dealer and none of the foregoing make any recommendation that the purchase or sale of crypto-assets or securities of any company profiled in the mobile Application is suitable or advisable for any person or that an investment or transaction in such crypto-assets or securities will be profitable. The information contained in the mobile Application is not intended to be, and shall not constitute, an offer to sell or the solicitation of any offer to buy any crypto-asset or security. The information presented in the mobile Application is provided for informational purposes only and is not to be treated as advice or a recommendation to make any specific investment or transaction. Please, consult with a qualified professional before making any decisions. The opinions and analysis included in this applications are based on information from sources deemed to be reliable and are provided “as is” in good faith. ${appCompanyShort} makes no representation or warranty, expressed, implied, or statutory, as to the accuracy or completeness of such information, which may be subject to change without notice. ${appCompanyShort} shall not be liable for any errors or any actions taken in relation to the above. Statements of opinion and belief are those of the authors and/or editors who contribute to this application, and are based solely upon the information possessed by such authors and/or editors. No inference should be drawn that ${appCompanyShort} or such authors or editors have any special or greater knowledge about the crypto-assets or companies profiled or any particular expertise in the industries or markets in which the profiled crypto-assets and companies operate and compete. Information on this application is obtained from sources deemed to be reliable; however, ${appCompanyShort} takes no responsibility for verifying the accuracy of such information and makes no representation that such information is accurate or complete. Certain statements included in this application may be forward-looking statements based on current expectations. ${appCompanyShort} makes no representation and provides no assurance or guarantee that such forward-looking statements will prove to be accurate. Persons using the ${appCompanyShort} application are urged to consult with a qualified professional with respect to an investment or transaction in any crypto-asset or company profiled herein. Additionally, persons using this application expressly represent that the content in this application is not and will not be a consideration in such persons’ investment or transaction decisions. Traders should verify independently information provided in the ${appCompanyShort} application by completing their own due diligence on any crypto-asset or company in which they are contemplating an investment or transaction of any kind and review a complete information package on that crypto-asset or company, which should include, but not be limited to, related blog updates and press releases. Past performance of profiled crypto-assets and securities is not indicative of future results. Crypto-assets and companies profiled on this site may lack an active trading market and invest in a crypto-asset or security that lacks an active trading market or trade on certain media, platforms and markets are deemed highly speculative and carry a high degree of risk. Anyone holding such crypto-assets and securities should be financially able and prepared to bear the risk of loss and the actual loss of his or her entire trade. The information in this application is not designed to be used as a basis for an investment decision. Persons using the ${appCompanyShort} application should confirm to their own satisfaction the veracity of any information prior to entering into any investment or making any transaction. The decision to buy or sell any crypto-asset or security that may be featured by ${appCompanyShort} is done purely and entirely at the reader’s own risk. As a reader and user of this application, You agree that under no circumstances will You seek to hold liable owners, members, officers, directors, partners, consultants or other persons involved in the publication of this application for any losses incurred by the use of information contained in this application ${appCompanyShort} and its contractors and affiliates may profit in the event the crypto-assets and securities increase or decrease in value. Such crypto-assets and securities may be bought or sold from time to time, even after ${appCompanyShort} has distributed positive information regarding the crypto-assets and companies. ${appCompanyShort} has no obligation to inform readers of its trading activities or the trading activities of any of its owners, members, officers, directors, contractors and affiliates and/or any companies affiliated with BC Relations’ owners, members, officers, directors, contractors and affiliates. ${appCompanyShort} and its affiliates may from time to time enter into agreements to purchase crypto-assets or securities to provide a method to reach their goals."; - static m29(appCompanyLong) => + static m41(appCompanyLong) => "The Terms are effective until terminated by ${appCompanyLong}. \nIn the event of termination, You are no longer authorized to access the Application, but all restrictions imposed on You and the disclaimers and limitations of liability set out in the Terms will survive termination. \nSuch termination shall not affect any legal right that may have accrued to ${appCompanyLong} against You up to the date of termination. \n${appCompanyLong} may also remove the Application as a whole or any sections or features of the Application at any time. "; - static m30(appCompanyLong) => + static m42(appCompanyLong) => "The provisions of previous paragraphs are for the benefit of ${appCompanyLong} and its officers, directors, employees, agents, licensors, suppliers, and any third party information providers to the Application. Each of these individuals or entities shall have the right to assert and enforce those provisions directly against You on its own behalf."; - static m31(appName, appCompanyLong) => + static m43(appName, appCompanyLong) => "${appName} mobile is a non-custodial, decentralized and blockchain based application and as such does ${appCompanyLong} never store any user-data (accounts and authentication data). \nWe also collect and process non-personal, anonymized data for statistical purposes and analysis and to help us provide a better service.\n\nThis document was last updated on January 31st, 2020"; - static m32(appName, appCompanyLong) => + static m44(appName, appCompanyLong) => "This disclaimer applies to the contents and services of the app ${appName} and is valid for all users of the “Application” (\'Software\', “Mobile Application”, “Application” or “App”).\n\nThe Application is owned by ${appCompanyLong}.\n\nWe reserve the right to amend the following Terms and Conditions (governing the use of the application “${appName} mobile”) at any time without prior notice and at our sole discretion. It is your responsibility to periodically check this Terms and Conditions for any updates to these Terms, which shall come into force once published.\nYour continued use of the application shall be deemed as acceptance of the following Terms.\nWe are a company incorporated in Vietnam and these Terms and Conditions are governed by and subject to the laws of Vietnam.\nIf You do not agree with these Terms and Conditions, You must not use or access this software."; - static m33(appName) => + static m45(appName) => "You are not allowed to decompile, decode, disassemble, rent, lease, loan, sell, sublicense, or create derivative works from the ${appName} mobile application or the user content. Nor are You allowed to use any network monitoring or detection software to determine the software architecture, or extract information about usage or individuals’ or users’ identities. \nYou are not allowed to copy, modify, reproduce, republish, distribute, display, or transmit for commercial, non-profit or public purposes all or any portion of the application or the user content without our prior written authorization."; - static m34(appName, appCompanyLong) => + static m46(appName, appCompanyLong) => "If you create an account in the Mobile Application, you are responsible for maintaining the security of your account and you are fully responsible for all activities that occur under the account and any other actions taken in connection with it. We will not be liable for any acts or omissions by you, including any damages of any kind incurred as a result of such acts or omissions. \n\n${appName} mobile is a non-custodial wallet implementation and thus ${appCompanyLong} can not access nor restore your account in case of (data) loss."; - static m35(appName) => + static m47(appName) => "End-User License Agreement (EULA) of ${appName} mobile:"; - static m36(coin) => "正在向 ${coin} 水龙头发送请求"; + static m48(coinAbbr) => "无法取消激活 ${coinAbbr}"; + + static m49(coin) => "正在向 ${coin} 水龙头发送请求"; + + static m50(appCompanyShort) => "${appCompanyShort} 新闻"; - static m37(appCompanyShort) => "${appCompanyShort} 新闻"; + static m51(value) => "费用必须高达 ${value}"; - static m38(value) => "费用必须高达 ${value}"; + static m52(coin) => "${coin} 费用"; - static m39(coin) => "${coin} 费用"; + static m53(coin) => "请激活${coin}."; - static m40(coin) => "请激活${coin}."; + static m54(value) => "Gwei 必须达到 ${value}"; - static m41(abbr) => "${abbr}余额不足以支付交易费"; + static m55(coinName) => "传入 ${coinName} 交易保护设置"; - static m42(coinAbbr) => "${coinAbbr} 不可用:("; + static m56(abbr) => "${abbr}余额不足以支付交易费"; - static m43(coinName) => "❗注意! ${coinName} 市场的 24 小时交易量不到 1 万美元!"; + static m57(coin) => "${coin} 地址无效"; - static m44(coinName, number) => "最低售出量为${number} ${coinName}"; + static m58(coinAbbr) => "${coinAbbr} 不可用:("; - static m45(coinName, number) => "最低买入量为${number} ${coinName}"; + static m59(coinName) => "❗注意! ${coinName} 市场的 24 小时交易量不到 1 万美元!"; - static m46(buyCoin, buyAmount, sellCoin, sellAmount) => + static m60(value) => "限制必须达到 ${value}"; + + static m61(coinName, number) => "最低售出量为${number} ${coinName}"; + + static m62(coinName, number) => "最低买入量为${number} ${coinName}"; + + static m63(buyCoin, buyAmount, sellCoin, sellAmount) => "最小交易量为 ${buyAmount} ${buyCoin}\n(${sellAmount} ${sellCoin})"; - static m47(coinName, number) => "最低售出量为 ${number} ${coinName}"; + static m64(coinName, number) => "最低售出量为 ${number} ${coinName}"; - static m48(minValue, coin) => "必须大于${minValue} ${coin}"; + static m65(minValue, coin) => "必须大于${minValue} ${coin}"; - static m49(appName) => + static m66(appName) => "请注意,您现在正在使用流量,使用${appName} P2P网络会消耗互联网流量。如果您的手机流量很贵,最好连接WIFI。"; - static m50(coin) => "先激活${coin}并充值余额"; + static m67(coin) => "先激活${coin}并充值余额"; - static m51(number) => "创建${number}订单:"; + static m68(number) => "创建${number}订单:"; - static m52(coin) => "${coin}余额过低"; + static m69(coin) => "${coin}余额过低"; - static m53(coin, fee) => "${coin}不足支付。最低余额为 ${fee} ${coin}"; + static m70(coin, fee) => "${coin}不足支付。最低余额为 ${fee} ${coin}"; - static m54(coinName) => "请输入 ${coinName} 量"; + static m71(coinName) => "请输入 ${coinName} 量"; - static m55(coin) => "没有足够的${coin} 用于交易!"; + static m72(coin) => "没有足够的${coin} 用于交易!"; - static m56(sell, buy) => "${sell}/${buy} 已成功完成交换"; + static m73(sell, buy) => "${sell}/${buy} 已成功完成交换"; - static m57(sell, buy) => "${sell}/${buy}交换失败"; + static m74(sell, buy) => "${sell}/${buy}交换失败"; - static m58(sell, buy) => "${sell}/${buy}交换开始"; + static m75(sell, buy) => "${sell}/${buy}交换开始"; - static m59(sell, buy) => "${sell}/${buy}交换超时"; + static m76(sell, buy) => "${sell}/${buy}交换超时"; - static m60(coin) => "您已收到{coin}交易!"; + static m77(coin) => "您已收到{coin}交易!"; - static m61(assets) => "${assets} 资产"; + static m78(assets) => "${assets} 资产"; - static m62(coin) => "所有${coin}订单将被取消。"; + static m79(coin) => "所有${coin}订单将被取消。"; - static m63(delta) => "划算的: CEX +${delta}%"; + static m80(delta) => "划算的: CEX +${delta}%"; - static m64(delta) => "昂贵的: CEX ${delta}%"; + static m81(delta) => "昂贵的: CEX ${delta}%"; - static m65(fill) => "${fill}%已填充"; + static m82(fill) => "${fill}%已填充"; - static m66(coin) => "数量(${coin})"; + static m83(coin) => "数量(${coin})"; - static m67(coin) => "价格 (${coin})"; + static m84(coin) => "价格 (${coin})"; - static m68(coin) => "总计 (${coin})"; + static m85(coin) => "总计 (${coin})"; - static m69(abbr) => "${abbr} 未激活。请激活后重试。"; + static m86(abbr) => "${abbr} 未激活。请激活后重试。"; - static m70(appName) => "我可以在哪些设备上使用${appName} ?"; + static m87(appName) => "我可以在哪些设备上使用${appName} ?"; - static m71(appName) => "在${appName} 上交易与在其他DEX上交易有何不同?"; + static m88(appName) => "在${appName} 上交易与在其他DEX上交易有何不同?"; - static m72(appName) => "${appName} 的费用如何计算?"; + static m89(appName) => "${appName} 的费用如何计算?"; - static m73(appName) => "${appName} 的背后是谁?"; + static m90(appName) => "${appName} 的背后是谁?"; - static m74(appName) => "是否可以在${appName} 上开发我个人的白标交换?"; + static m91(appName) => "是否可以在${appName} 上开发我个人的白标交换?"; - static m75(amount) => "成功!收到 ${amount}KMD"; + static m92(amount) => "成功!收到 ${amount}KMD"; - static m76(dd) => "${dd} 天"; + static m93(dd) => "${dd} 天"; - static m77(hh, minutes) => "${hh}小时 ${minutes}分钟"; + static m94(hh, minutes) => "${hh}小时 ${minutes}分钟"; - static m78(mm) => "${mm}分钟"; + static m95(mm) => "${mm}分钟"; - static m79(amount) => "点击查看${amount} 交易"; + static m96(amount) => "点击查看${amount} 交易"; - static m80(coinName, address) => "我的${coinName} 地址:\n${address}"; + static m97(coinName, address) => "我的${coinName} 地址:\n${address}"; - static m81(coin) => "请输入要买入的 ${coin} 数量"; + static m98(coin) => "扫描过去的 ${coin} 交易?"; - static m82(maxCoins) => "货币最大活跃量为${maxCoins}。请停用一些。"; + static m99(count, maxCount) => "显示 ${count} 个订单(共 ${maxCount} 个)。"; - static m83(coin) => "${coin}未激活!"; + static m100(coin) => "请输入要买入的 ${coin} 数量"; - static m84(coin) => "请输入要卖出的${coin}数量"; + static m101(maxCoins) => "货币最大活跃量为${maxCoins}。请停用一些。"; - static m85(coin) => "无法激活${coin}"; + static m102(coin) => "${coin}未激活!"; - static m86(description) => "请选择mp3或wav文件。我们将在${description}时播放它。"; + static m103(coin) => "请输入要卖出的${coin}数量"; - static m87(description) => "当${description}播放"; + static m104(coin) => "无法激活${coin}"; - static m88(appName) => + static m105(description) => "请选择mp3或wav文件。我们将在${description}时播放它。"; + + static m106(description) => "当${description}播放"; + + static m107(appName) => "如果您有任何问题,或者认为您发现${appName} 应用程序存在技术问题,请联系我们获取我们团队的支持。"; - static m89(coin) => "请先激活 ${coin} 并充值余额"; + static m108(coin) => "请先激活 ${coin} 并充值余额"; + + static m109(coin) => "${coin} 余额不足以支付交易费用。"; - static m90(coin) => "${coin} 余额不足以支付交易费用。"; + static m110(coin, amount) => "${coin} 余额不足以支付交易费用。需要 ${coin} ${amount}"; - static m91(coin, amount) => "${coin} 余额不足以支付交易费用。需要 ${coin} ${amount}"; + static m111(name) => "您想要同步哪些${name}交易?"; - static m92(left) => "剩余交易: ${left}"; + static m112(left) => "剩余交易: ${left}"; - static m93(amnt, hash) => "成功解锁 ${amnt} 基金 - 交易: ${hash}"; + static m113(amnt, hash) => "成功解锁 ${amnt} 基金 - 交易: ${hash}"; - static m94(version) => "您正在使用版本${version}"; + static m114(version) => "您正在使用版本${version}"; - static m95(version) => "版本${version}可用。请更新。"; + static m115(version) => "版本${version}可用。请更新。"; - static m96(appName) => "更新${appName}"; + static m116(appName) => "更新${appName}"; - static m97(coinAbbr) => "我们无法激活 ${coinAbbr}"; + static m117(coinAbbr) => "我们无法激活 ${coinAbbr}"; - static m98(coinAbbr) => "我们无法激活${coinAbbr}.\n请重启应用程序后重试"; + static m118(coinAbbr) => "我们无法激活${coinAbbr}.\n请重启应用程序后重试"; - static m99(appName) => "${appName} 应用程序是新一代多币钱包,具有原生第三代DEX功能和更多功能。"; + static m119(appName) => "${appName} 应用程序是新一代多币钱包,具有原生第三代DEX功能和更多功能。"; - static m100(appName) => "您之前禁止${appName} 使用相机。请手动更改手机设置中的相机权限,以便继续二维码扫描"; + static m120(appName) => "您之前禁止${appName} 使用相机。请手动更改手机设置中的相机权限,以便继续二维码扫描"; - static m101(amount, coinName) => "提取 ${amount} ${coinName}"; + static m121(amount, coinName) => "提取 ${amount} ${coinName}"; - static m102(amount, coin) => "您将获得 ${amount} ${coin}"; + static m122(amount, coin) => "您将获得 ${amount} ${coin}"; final messages = _notInlinedMessages(_notInlinedMessages); static Map _notInlinedMessages(_) => { @@ -272,34 +312,41 @@ class MessageLookup extends MessageLookupByLibrary { "activateAccessBiometric": MessageLookupByLibrary.simpleMessage("启动生物识别功能"), "activateAccessPin": MessageLookupByLibrary.simpleMessage("启动PIN码保护"), + "activateCoins": m0, + "activating": m1, + "activation": m2, + "activationCancelled": MessageLookupByLibrary.simpleMessage("硬币激活已取消"), + "activationInProgress": m3, "addCoin": MessageLookupByLibrary.simpleMessage("新增货币"), - "addingCoinSuccess": m0, + "addingCoinSuccess": m4, "addressAdd": MessageLookupByLibrary.simpleMessage("添加地址"), "addressBook": MessageLookupByLibrary.simpleMessage("地址簿"), "addressBookEmpty": MessageLookupByLibrary.simpleMessage("地址簿为空"), - "addressBookFilter": m1, + "addressBookFilter": m5, "addressBookTitle": MessageLookupByLibrary.simpleMessage("地址簿"), - "addressCoinInactive": m2, + "addressCoinInactive": m6, "addressNotFound": MessageLookupByLibrary.simpleMessage("未找到任何内容"), "addressSelectCoin": MessageLookupByLibrary.simpleMessage("选择货币"), "addressSend": MessageLookupByLibrary.simpleMessage("收款人钱包地址"), "advanced": MessageLookupByLibrary.simpleMessage("高级"), "all": MessageLookupByLibrary.simpleMessage("全部"), + "allPastTransactions": MessageLookupByLibrary.simpleMessage( + "您的钱包将显示任何过去的交易。这将占用大量存储空间和时间,因为所有块都将被下载和扫描。"), "allowCustomSeed": MessageLookupByLibrary.simpleMessage("允许自定义助记词"), "alreadyExists": MessageLookupByLibrary.simpleMessage("已存在"), "amount": MessageLookupByLibrary.simpleMessage("数量"), "amountToSell": MessageLookupByLibrary.simpleMessage("卖出量"), - "answer_1": m3, - "answer_10": m4, - "answer_2": m5, - "answer_3": m6, + "answer_1": m7, + "answer_10": m8, + "answer_2": m9, + "answer_3": m10, "answer_4": MessageLookupByLibrary.simpleMessage( "是的,必须保持互联网连接,并确保您的应用程序在运行,才能成功完成原子交换(网络短暂中断通常是可以的)。否则,如果是挂单,会有交易取消的风险,如果是吃单,会有资金损失的风险。原子交换协议要求双方参与者保持在线,并监控所涉及的区块链,确保该过程保持原子性。"), - "answer_5": m7, - "answer_6": m8, - "answer_7": m9, - "answer_8": m10, - "answer_9": m11, + "answer_5": m11, + "answer_6": m12, + "answer_7": m13, + "answer_8": m14, + "answer_9": m15, "areYouSure": MessageLookupByLibrary.simpleMessage("您确定吗?"), "authenticate": MessageLookupByLibrary.simpleMessage("身份验证"), "automaticRedirected": @@ -307,8 +354,9 @@ class MessageLookup extends MessageLookupByLibrary { "availableVolume": MessageLookupByLibrary.simpleMessage("最大交易量"), "back": MessageLookupByLibrary.simpleMessage("上一步"), "backupTitle": MessageLookupByLibrary.simpleMessage("备份"), - "batteryCriticalError": m12, - "batteryLowWarning": m13, + "basedOnCoinRatio": m16, + "batteryCriticalError": m17, + "batteryLowWarning": m18, "batterySavingWarning": MessageLookupByLibrary.simpleMessage( "您的手机处于省电模式。请停用此模式或不要将应用程序置于后台,否则,应用程序可能会被系统自动清除,导致交换失败。"), "bestAvailableRate": MessageLookupByLibrary.simpleMessage("兑换率"), @@ -317,7 +365,7 @@ class MessageLookup extends MessageLookupByLibrary { "buy": MessageLookupByLibrary.simpleMessage("买入"), "buyOrderType": MessageLookupByLibrary.simpleMessage("如果不匹配,则转为挂单"), "buySuccessWaiting": MessageLookupByLibrary.simpleMessage("交换已发起,请等待!"), - "buySuccessWaitingError": m14, + "buySuccessWaitingError": m19, "buyTestCoinWarning": MessageLookupByLibrary.simpleMessage("警告,你正在购买没有实际价值的测试币!"), "camoPinBioProtectionConflict": @@ -339,6 +387,9 @@ class MessageLookup extends MessageLookupByLibrary { "camoSetupTitle": MessageLookupByLibrary.simpleMessage("伪装PIN设置"), "camouflageSetup": MessageLookupByLibrary.simpleMessage("伪装PIN设置"), "cancel": MessageLookupByLibrary.simpleMessage("取消"), + "cancelActivation": MessageLookupByLibrary.simpleMessage("取消激活"), + "cancelActivationQuestion": + MessageLookupByLibrary.simpleMessage("您确定要取消激活吗?"), "cancelButton": MessageLookupByLibrary.simpleMessage("取消"), "cancelOrder": MessageLookupByLibrary.simpleMessage("取消交易"), "candleChartError": MessageLookupByLibrary.simpleMessage("出现错误,稍后重试"), @@ -352,6 +403,7 @@ class MessageLookup extends MessageLookupByLibrary { "cexData": MessageLookupByLibrary.simpleMessage("CEX 数据"), "cexDataDesc": MessageLookupByLibrary.simpleMessage( "带有此图标的市场数据(价格、图表等)来源于第三方(coingecko.com, openrates.io)."), + "cexRate": MessageLookupByLibrary.simpleMessage("CEX 汇率"), "changePin": MessageLookupByLibrary.simpleMessage("更改PIN"), "checkForUpdates": MessageLookupByLibrary.simpleMessage("检查更新"), "checkOut": MessageLookupByLibrary.simpleMessage("退出"), @@ -359,10 +411,10 @@ class MessageLookup extends MessageLookupByLibrary { "checkSeedPhraseButton1": MessageLookupByLibrary.simpleMessage("继续"), "checkSeedPhraseButton2": MessageLookupByLibrary.simpleMessage("返回並再次檢查"), - "checkSeedPhraseHint": m15, + "checkSeedPhraseHint": m20, "checkSeedPhraseInfo": MessageLookupByLibrary.simpleMessage( "您的助记词很重要——因此我们要确保它是正确的。我们将问您三个关于您的助记词的问题,以确保您可以随时轻松地恢复钱包。"), - "checkSeedPhraseSubtile": m16, + "checkSeedPhraseSubtile": m21, "checkSeedPhraseTitle": MessageLookupByLibrary.simpleMessage("请再次确认助记词"), "chineseLanguage": MessageLookupByLibrary.simpleMessage("中文"), @@ -375,11 +427,18 @@ class MessageLookup extends MessageLookupByLibrary { "closeMessage": MessageLookupByLibrary.simpleMessage("关闭错误信息"), "closePreview": MessageLookupByLibrary.simpleMessage("关闭预览"), "code": MessageLookupByLibrary.simpleMessage("代码"), + "cofirmCancelActivation": + MessageLookupByLibrary.simpleMessage("您确定要取消激活吗?"), + "coinActivationCancelled": m22, + "coinActivationSuccessfull": m23, "coinSelectClear": MessageLookupByLibrary.simpleMessage("清除"), "coinSelectNotFound": MessageLookupByLibrary.simpleMessage("没有活跃币"), "coinSelectTitle": MessageLookupByLibrary.simpleMessage("选择货币"), "coinsActivatedLimitReached": MessageLookupByLibrary.simpleMessage("您已选择最大资产数量"), + "coinsAreActivated": m24, + "coinsAreActivatedSuccessfully": m25, + "coinsAreNotActivated": m26, "comingSoon": MessageLookupByLibrary.simpleMessage("即将上线,敬请期待。。。"), "commingsoon": MessageLookupByLibrary.simpleMessage("交易明细加载中!"), "commingsoonGeneral": MessageLookupByLibrary.simpleMessage("详情载入中!"), @@ -402,7 +461,7 @@ class MessageLookup extends MessageLookupByLibrary { "contactCancel": MessageLookupByLibrary.simpleMessage("取消"), "contactDelete": MessageLookupByLibrary.simpleMessage("删除联系人"), "contactDeleteBtn": MessageLookupByLibrary.simpleMessage("删除"), - "contactDeleteWarning": m17, + "contactDeleteWarning": m27, "contactDiscardBtn": MessageLookupByLibrary.simpleMessage("放弃"), "contactEdit": MessageLookupByLibrary.simpleMessage("编辑"), "contactExit": MessageLookupByLibrary.simpleMessage("退出"), @@ -411,7 +470,9 @@ class MessageLookup extends MessageLookupByLibrary { "contactSave": MessageLookupByLibrary.simpleMessage("保存"), "contactTitle": MessageLookupByLibrary.simpleMessage("联系人详细信息"), "contactTitleName": MessageLookupByLibrary.simpleMessage("名称"), + "contract": MessageLookupByLibrary.simpleMessage("合同"), "convert": MessageLookupByLibrary.simpleMessage("转换"), + "couldNotLaunchUrl": MessageLookupByLibrary.simpleMessage("无法启动 URL"), "couldntImportError": MessageLookupByLibrary.simpleMessage("无法导入:"), "create": MessageLookupByLibrary.simpleMessage("交易"), "createAWallet": MessageLookupByLibrary.simpleMessage("创建钱包"), @@ -423,7 +484,7 @@ class MessageLookup extends MessageLookupByLibrary { "customFee": MessageLookupByLibrary.simpleMessage("定制费用"), "customFeeWarning": MessageLookupByLibrary.simpleMessage("选择定制费用前务必明确知晓自己的行为"), - "customSeedWarning": m18, + "customSeedWarning": m28, "dPow": MessageLookupByLibrary.simpleMessage("Komodo dPoW安全"), "date": MessageLookupByLibrary.simpleMessage("日期"), "decryptingWallet": MessageLookupByLibrary.simpleMessage("钱包解密中"), @@ -435,6 +496,11 @@ class MessageLookup extends MessageLookupByLibrary { "deleteSpan3": MessageLookupByLibrary.simpleMessage(" 也将被停用"), "deleteWallet": MessageLookupByLibrary.simpleMessage("删除钱包"), "deletingWallet": MessageLookupByLibrary.simpleMessage("删除钱包中"), + "detailedFeesReceiveCoinTransactionFee": m29, + "detailedFeesSendCoinTransactionFee": m30, + "detailedFeesSendTradingFeeTransactionFee": + MessageLookupByLibrary.simpleMessage("发送交易费 交易费"), + "detailedFeesTradingFee": MessageLookupByLibrary.simpleMessage("交易费"), "details": MessageLookupByLibrary.simpleMessage("详细信息"), "deutscheLanguage": MessageLookupByLibrary.simpleMessage("德语"), "developerTitle": MessageLookupByLibrary.simpleMessage("开发者"), @@ -442,17 +508,21 @@ class MessageLookup extends MessageLookupByLibrary { "dexIsNotAvailable": MessageLookupByLibrary.simpleMessage("DEX不适合该货币"), "disableScreenshots": MessageLookupByLibrary.simpleMessage("禁用屏幕截图/预览"), "disclaimerAndTos": MessageLookupByLibrary.simpleMessage("免责声明 & 使用条款"), + "doNotCloseTheAppTapForMoreInfo": + MessageLookupByLibrary.simpleMessage("不要关闭应用程序。点按了解更多信息..."), "done": MessageLookupByLibrary.simpleMessage("完成"), "dontAskAgain": MessageLookupByLibrary.simpleMessage("不再询问"), "dontWantPassword": MessageLookupByLibrary.simpleMessage("我不想要使用密碼"), "duration": MessageLookupByLibrary.simpleMessage("有效期"), "editContact": MessageLookupByLibrary.simpleMessage("编辑联系人"), - "emptyCoin": m19, + "emptyCoin": m31, "emptyExportPass": MessageLookupByLibrary.simpleMessage("加密密码不能为空"), "emptyImportPass": MessageLookupByLibrary.simpleMessage("密码不能为空"), "emptyName": MessageLookupByLibrary.simpleMessage("联系人名称不能为空"), "emptyWallet": MessageLookupByLibrary.simpleMessage("钱包名称不能为空"), - "enable": m20, + "enable": m32, + "enableNotificationsForActivationProgress": + MessageLookupByLibrary.simpleMessage("请启用通知以获取有关激活进度的更新。"), "enableTestCoins": MessageLookupByLibrary.simpleMessage("启用测试币"), "enablingTooManyAssetsSpan1": MessageLookupByLibrary.simpleMessage("您已启用"), @@ -476,38 +546,38 @@ class MessageLookup extends MessageLookupByLibrary { "errorNotAValidAddress": MessageLookupByLibrary.simpleMessage("钱包地址错误"), "errorNotAValidAddressSegWit": MessageLookupByLibrary.simpleMessage("尚不支持Segwit地址"), - "errorNotEnoughGas": m21, + "errorNotEnoughGas": m33, "errorTryAgain": MessageLookupByLibrary.simpleMessage("出现错误, 請重试"), "errorTryLater": MessageLookupByLibrary.simpleMessage("出现错误,請稍後重试"), "errorValueEmpty": MessageLookupByLibrary.simpleMessage("价值太高或太低"), "errorValueNotEmpty": MessageLookupByLibrary.simpleMessage("请输入数据"), "estimateValue": MessageLookupByLibrary.simpleMessage("预估总价"), - "eulaParagraphe1": m22, - "eulaParagraphe10": m23, - "eulaParagraphe11": m24, + "eulaParagraphe1": m34, + "eulaParagraphe10": m35, + "eulaParagraphe11": m36, "eulaParagraphe12": MessageLookupByLibrary.simpleMessage( "When accessing or using the Services, You agree that You are solely responsible for your conduct while accessing and using our Services. Without limiting the generality of the foregoing, You agree that You will not:\n(a) use the Services in any manner that could interfere with, disrupt, negatively affect or inhibit other users from fully enjoying the Services, or that could damage, disable, overburden or impair the functioning of our Services in any manner;\n(b) use the Services to pay for, support or otherwise engage in any illegal activities, including, but not limited to illegal gambling, fraud, money laundering, or terrorist activities;\n(c) use any robot, spider, crawler, scraper or other automated means or interface not provided by us to access our Services or to extract data;\n(d) use or attempt to use another user’s Wallet or credentials without authorization;\n(e) attempt to circumvent any content filtering techniques we employ, or attempt to access any service or area of our Services that You are not authorized to access;\n(f) introduce to the Services any virus, Trojan, worms, logic bombs or other harmful material;\n(g) develop any third-party applications that interact with our Services without our prior written consent;\n(h) provide false, inaccurate, or misleading information; \n(i) encourage or induce any other person to engage in any of the activities prohibited under this Section."), - "eulaParagraphe13": m25, - "eulaParagraphe14": m26, - "eulaParagraphe15": m27, - "eulaParagraphe16": m28, - "eulaParagraphe17": m29, - "eulaParagraphe18": m30, - "eulaParagraphe19": m31, - "eulaParagraphe2": m32, + "eulaParagraphe13": m37, + "eulaParagraphe14": m38, + "eulaParagraphe15": m39, + "eulaParagraphe16": m40, + "eulaParagraphe17": m41, + "eulaParagraphe18": m42, + "eulaParagraphe19": m43, + "eulaParagraphe2": m44, "eulaParagraphe3": MessageLookupByLibrary.simpleMessage( "By entering into this User (each subject accessing or using the site) Agreement (this writing) You declare that You are an individual over the age of majority (at least 18 or older) and have the capacity to enter into this User Agreement and accept to be legally bound by the terms and conditions of this User Agreement, as incorporated herein and amended from time to time."), "eulaParagraphe4": MessageLookupByLibrary.simpleMessage( "We may change the terms of this User Agreement at any time. Any such changes will take effect when published in the application, or when You use the Services.\n\nRead the User Agreement carefully every time You use our Services. Your continued use of the Services shall signify your acceptance to be bound by the current User Agreement. Our failure or delay in enforcing or partially enforcing any provision of this User Agreement shall not be construed as a waiver of any."), - "eulaParagraphe5": m33, - "eulaParagraphe6": m34, + "eulaParagraphe5": m45, + "eulaParagraphe6": m46, "eulaParagraphe7": MessageLookupByLibrary.simpleMessage( "We are not responsible for seed-phrases residing in the Mobile Application. In no event shall we be held liable for any loss of any kind. It is your sole responsibility to maintain appropriate backups of your accounts and their seedprases."), "eulaParagraphe8": MessageLookupByLibrary.simpleMessage( "You should not act, or refrain from acting solely on the basis of the content of this application. \nYour access to this application does not itself create an adviser-client relationship between You and us. \nThe content of this application does not constitute a solicitation or inducement to invest in any financial products or services offered by us. \nAny advice included in this application has been prepared without taking into account your objectives, financial situation or needs. You should consider our Risk Disclosure Notice before making any decision on whether to acquire the product described in that document."), "eulaParagraphe9": MessageLookupByLibrary.simpleMessage( "We do not guarantee your continuous access to the application or that your access or use will be error-free. \nWe will not be liable in the event that the application is unavailable to You for any reason (for example, due to computer downtime ascribable to malfunctions, upgrades, server problems, precautionary or corrective maintenance activities or interruption in telecommunication supplies). "), - "eulaTitle1": m35, + "eulaTitle1": m47, "eulaTitle10": MessageLookupByLibrary.simpleMessage("ACCESS AND SECURITY"), "eulaTitle11": MessageLookupByLibrary.simpleMessage( @@ -554,16 +624,17 @@ class MessageLookup extends MessageLookupByLibrary { "exportSuccessTitle": MessageLookupByLibrary.simpleMessage("项目成功导出"), "exportSwapsTitle": MessageLookupByLibrary.simpleMessage("交换"), "exportTitle": MessageLookupByLibrary.simpleMessage("导出"), + "failedToCancelActivation": m48, "fakeBalanceAmt": MessageLookupByLibrary.simpleMessage("虚假余额"), "faqTitle": MessageLookupByLibrary.simpleMessage("常见问题"), "faucetError": MessageLookupByLibrary.simpleMessage("错误"), - "faucetInProgress": m36, + "faucetInProgress": m49, "faucetName": MessageLookupByLibrary.simpleMessage("水龙头"), "faucetSuccess": MessageLookupByLibrary.simpleMessage("成功"), "faucetTimedOut": MessageLookupByLibrary.simpleMessage("请求超时"), "feedNewsTab": MessageLookupByLibrary.simpleMessage("新闻"), "feedNotFound": MessageLookupByLibrary.simpleMessage("无内容"), - "feedNotifTitle": m37, + "feedNotifTitle": m50, "feedReadMore": MessageLookupByLibrary.simpleMessage("阅读更多"), "feedTab": MessageLookupByLibrary.simpleMessage("Feed"), "feedTitle": MessageLookupByLibrary.simpleMessage("Feed新闻"), @@ -572,7 +643,7 @@ class MessageLookup extends MessageLookupByLibrary { "feedUpToDate": MessageLookupByLibrary.simpleMessage("已更新"), "feedUpdated": MessageLookupByLibrary.simpleMessage("Feed新闻已更新"), "feedback": MessageLookupByLibrary.simpleMessage("共享日志文件"), - "feesError": m38, + "feesError": m51, "filtersAll": MessageLookupByLibrary.simpleMessage("全部"), "filtersButton": MessageLookupByLibrary.simpleMessage("过滤器"), "filtersClearAll": MessageLookupByLibrary.simpleMessage("清除所有过滤器"), @@ -587,17 +658,23 @@ class MessageLookup extends MessageLookupByLibrary { "filtersTo": MessageLookupByLibrary.simpleMessage("截止日期"), "filtersType": MessageLookupByLibrary.simpleMessage("吃单/挂单"), "fingerprint": MessageLookupByLibrary.simpleMessage("指纹"), + "finishingUp": MessageLookupByLibrary.simpleMessage("已完成,请稍候"), + "foundQrCode": MessageLookupByLibrary.simpleMessage("找到二维码"), "frenchLanguage": MessageLookupByLibrary.simpleMessage("法语"), "from": MessageLookupByLibrary.simpleMessage("起始日期"), - "gasFee": m39, + "futureTransactions": MessageLookupByLibrary.simpleMessage( + "我们将同步与您的公钥关联的激活后进行的未来交易。这是最快的选项,占用的存储空间最少。"), + "gasFee": m52, "gasLimit": MessageLookupByLibrary.simpleMessage("燃料上限"), - "gasNotActive": m40, + "gasNotActive": m53, "gasPrice": MessageLookupByLibrary.simpleMessage("燃料价格"), "generalPinNotActive": MessageLookupByLibrary.simpleMessage( "常规PIN保护未激活。\n伪装模式将失效\n请激活PIN保护"), "getBackupPhrase": MessageLookupByLibrary.simpleMessage("重要提醒: 請在繼續之前備份助記詞 !"), + "gettingTxWait": MessageLookupByLibrary.simpleMessage("正在获取交易,请稍候"), "goToPorfolio": MessageLookupByLibrary.simpleMessage("前往投资组合"), + "gweiError": m54, "helpLink": MessageLookupByLibrary.simpleMessage("帮助"), "helpTitle": MessageLookupByLibrary.simpleMessage("帮助和支持"), "hideBalance": MessageLookupByLibrary.simpleMessage("隐藏余额"), @@ -635,6 +712,7 @@ class MessageLookup extends MessageLookupByLibrary { "importSwapJsonDecodingError": MessageLookupByLibrary.simpleMessage("解码json文件时出错"), "importTitle": MessageLookupByLibrary.simpleMessage("导入"), + "incomingTransactionsProtectionSettings": m55, "infoPasswordDialog": MessageLookupByLibrary.simpleMessage("使用安全密码,不要将其存储在同一设备上"), "infoTrade1": MessageLookupByLibrary.simpleMessage("無法撤銷交换请求!"), @@ -642,21 +720,23 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("交换最长需要60分钟。不要关闭此应用程序!"), "infoWalletPassword": MessageLookupByLibrary.simpleMessage("安全起见,您必须为加密钱包设置密码。"), - "insufficientBalanceToPay": m41, + "insufficientBalanceToPay": m56, "insufficientText": MessageLookupByLibrary.simpleMessage("此订单最小交易量为"), "insufficientTitle": MessageLookupByLibrary.simpleMessage("交易量不足"), "internetRefreshButton": MessageLookupByLibrary.simpleMessage("刷新"), "internetRestored": MessageLookupByLibrary.simpleMessage("已重新连接互联网"), + "invalidCoinAddress": m57, "invalidSwap": MessageLookupByLibrary.simpleMessage("无法继续交换"), "invalidSwapDetailsLink": MessageLookupByLibrary.simpleMessage("详细信息"), - "isUnavailable": m42, + "isUnavailable": m58, "japaneseLanguage": MessageLookupByLibrary.simpleMessage("日文"), "koreanLanguage": MessageLookupByLibrary.simpleMessage("韩国人"), "language": MessageLookupByLibrary.simpleMessage("语言"), "latestTxs": MessageLookupByLibrary.simpleMessage("最新交易"), "legalTitle": MessageLookupByLibrary.simpleMessage("合法的"), "less": MessageLookupByLibrary.simpleMessage("较少"), - "lessThanCaution": m43, + "lessThanCaution": m59, + "limitError": m60, "loading": MessageLookupByLibrary.simpleMessage("載入中"), "loadingOrderbook": MessageLookupByLibrary.simpleMessage("正在加载订单记录"), "lockScreen": MessageLookupByLibrary.simpleMessage("屏幕已锁定"), @@ -709,24 +789,27 @@ class MessageLookup extends MessageLookupByLibrary { "milliseconds": MessageLookupByLibrary.simpleMessage("毫秒"), "min": MessageLookupByLibrary.simpleMessage("最小"), "minOrder": MessageLookupByLibrary.simpleMessage("最小交易量"), - "minValue": m44, - "minValueBuy": m45, - "minValueOrder": m46, - "minValueSell": m47, - "minVolumeInput": m48, + "minValue": m61, + "minValueBuy": m62, + "minValueOrder": m63, + "minValueSell": m64, + "minVolumeInput": m65, "minVolumeIsTDH": MessageLookupByLibrary.simpleMessage("必须低于售出量"), "minVolumeTitle": MessageLookupByLibrary.simpleMessage("所需最小量"), "minVolumeToggle": MessageLookupByLibrary.simpleMessage("使用自定义最小量"), + "minimizingWillTerminate": + MessageLookupByLibrary.simpleMessage("警告:最小化 iOS 上的应用程序将终止激活过程。"), "minutes": MessageLookupByLibrary.simpleMessage("分钟"), - "mobileDataWarning": m49, + "mobileDataWarning": m66, + "moreInfo": MessageLookupByLibrary.simpleMessage("更多信息"), "moreTab": MessageLookupByLibrary.simpleMessage("更多"), - "multiActivateGas": m50, + "multiActivateGas": m67, "multiBaseAmtPlaceholder": MessageLookupByLibrary.simpleMessage("数量"), "multiBasePlaceholder": MessageLookupByLibrary.simpleMessage("货币"), "multiBaseSelectTitle": MessageLookupByLibrary.simpleMessage("卖出"), "multiConfirmCancel": MessageLookupByLibrary.simpleMessage("取消"), "multiConfirmConfirm": MessageLookupByLibrary.simpleMessage("确认"), - "multiConfirmTitle": m51, + "multiConfirmTitle": m68, "multiCreate": MessageLookupByLibrary.simpleMessage("创建"), "multiCreateOrder": MessageLookupByLibrary.simpleMessage("订单"), "multiCreateOrders": MessageLookupByLibrary.simpleMessage("订单"), @@ -737,8 +820,8 @@ class MessageLookup extends MessageLookupByLibrary { "multiFixErrors": MessageLookupByLibrary.simpleMessage("请在继续之前修复所有错误"), "multiInvalidAmt": MessageLookupByLibrary.simpleMessage("数量无效"), "multiInvalidSellAmt": MessageLookupByLibrary.simpleMessage("售出量无效"), - "multiLowGas": m52, - "multiLowerThanFee": m53, + "multiLowGas": m69, + "multiLowerThanFee": m70, "multiMaxSellAmt": MessageLookupByLibrary.simpleMessage("最大售出量为"), "multiMinReceiveAmt": MessageLookupByLibrary.simpleMessage("最小接收量为"), "multiMinSellAmt": MessageLookupByLibrary.simpleMessage("最小售出量为"), @@ -762,7 +845,7 @@ class MessageLookup extends MessageLookupByLibrary { "noItemsToExport": MessageLookupByLibrary.simpleMessage("未选择项目"), "noItemsToImport": MessageLookupByLibrary.simpleMessage("未选择项目"), "noMatchingOrders": MessageLookupByLibrary.simpleMessage("无匹配订单"), - "noOrder": m54, + "noOrder": m71, "noOrderAvailable": MessageLookupByLibrary.simpleMessage("点击创建订单"), "noOrders": MessageLookupByLibrary.simpleMessage("没有订单,请先交易"), "noRewardYet": MessageLookupByLibrary.simpleMessage("没有奖励可领取-请一小时后重试"), @@ -771,39 +854,42 @@ class MessageLookup extends MessageLookupByLibrary { "noSwaps": MessageLookupByLibrary.simpleMessage("没有历史记录"), "noTxs": MessageLookupByLibrary.simpleMessage("没有交易"), "nonNumericInput": MessageLookupByLibrary.simpleMessage("该值必须是数字"), - "notEnoughGas": m55, + "none": MessageLookupByLibrary.simpleMessage("没有任何"), + "notEnoughGas": m72, "notEnoughtBalanceForFee": MessageLookupByLibrary.simpleMessage("手续费余额不足-减少交易量"), "noteOnOrder": MessageLookupByLibrary.simpleMessage("备注:不能取消已匹配的订单"), "notePlaceholder": MessageLookupByLibrary.simpleMessage("添加备注"), "noteTitle": MessageLookupByLibrary.simpleMessage("备注"), "nothingFound": MessageLookupByLibrary.simpleMessage("无内容"), - "notifSwapCompletedText": m56, + "notifSwapCompletedText": m73, "notifSwapCompletedTitle": MessageLookupByLibrary.simpleMessage("交换已完成"), - "notifSwapFailedText": m57, + "notifSwapFailedText": m74, "notifSwapFailedTitle": MessageLookupByLibrary.simpleMessage("交换失败"), - "notifSwapStartedText": m58, + "notifSwapStartedText": m75, "notifSwapStartedTitle": MessageLookupByLibrary.simpleMessage("已开始新交换"), "notifSwapStatusTitle": MessageLookupByLibrary.simpleMessage("交换状态已更改"), - "notifSwapTimeoutText": m59, + "notifSwapTimeoutText": m76, "notifSwapTimeoutTitle": MessageLookupByLibrary.simpleMessage("交换超时"), - "notifTxText": m60, + "notifTxText": m77, "notifTxTitle": MessageLookupByLibrary.simpleMessage("应记交易"), - "numberAssets": m61, + "numberAssets": m78, "officialPressRelease": MessageLookupByLibrary.simpleMessage("官方新闻稿"), "okButton": MessageLookupByLibrary.simpleMessage("好的"), "oldLogsDelete": MessageLookupByLibrary.simpleMessage("删除"), "oldLogsTitle": MessageLookupByLibrary.simpleMessage("历史记录"), "oldLogsUsed": MessageLookupByLibrary.simpleMessage("占用的空间"), "openMessage": MessageLookupByLibrary.simpleMessage("打开错误消息"), - "orderCancel": m62, + "orderBookLess": MessageLookupByLibrary.simpleMessage("较少的"), + "orderBookMore": MessageLookupByLibrary.simpleMessage("更多的"), + "orderCancel": m79, "orderCreated": MessageLookupByLibrary.simpleMessage("订单已创建"), "orderCreatedInfo": MessageLookupByLibrary.simpleMessage("订单已成功创建"), "orderDetailsAddress": MessageLookupByLibrary.simpleMessage("地址"), "orderDetailsCancel": MessageLookupByLibrary.simpleMessage("取消"), - "orderDetailsExpedient": m63, - "orderDetailsExpensive": m64, + "orderDetailsExpedient": m80, + "orderDetailsExpensive": m81, "orderDetailsFor": MessageLookupByLibrary.simpleMessage("与"), "orderDetailsIdentical": MessageLookupByLibrary.simpleMessage("CEX相同"), "orderDetailsMin": MessageLookupByLibrary.simpleMessage("最小量"), @@ -815,7 +901,7 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("单击打开详细信息,然后长按选择订购"), "orderDetailsSpend": MessageLookupByLibrary.simpleMessage("花费"), "orderDetailsTitle": MessageLookupByLibrary.simpleMessage("详细信息"), - "orderFilled": m65, + "orderFilled": m82, "orderMatched": MessageLookupByLibrary.simpleMessage("已匹配订单"), "orderMatching": MessageLookupByLibrary.simpleMessage("订单匹配中"), "orderTypePartial": MessageLookupByLibrary.simpleMessage("订单"), @@ -823,9 +909,9 @@ class MessageLookup extends MessageLookupByLibrary { "orders": MessageLookupByLibrary.simpleMessage("订单"), "ordersActive": MessageLookupByLibrary.simpleMessage("活跃"), "ordersHistory": MessageLookupByLibrary.simpleMessage("历史记录"), - "ordersTableAmount": m66, - "ordersTablePrice": m67, - "ordersTableTotal": m68, + "ordersTableAmount": m83, + "ordersTablePrice": m84, + "ordersTableTotal": m85, "overwrite": MessageLookupByLibrary.simpleMessage("覆盖"), "ownOrder": MessageLookupByLibrary.simpleMessage("这是您个人的订单"), "paidFromBalance": MessageLookupByLibrary.simpleMessage("用余额支付:"), @@ -833,6 +919,8 @@ class MessageLookup extends MessageLookupByLibrary { "paidWith": MessageLookupByLibrary.simpleMessage("支付方式:"), "passwordRequirement": MessageLookupByLibrary.simpleMessage( "密码必须至少包含12个字符,包括一个小写、一个大写和一个特殊符号"), + "pastTransactionsFromDate": + MessageLookupByLibrary.simpleMessage("您的钱包将显示您过去在指定日期之后进行的交易。"), "paymentUriDetailsAccept": MessageLookupByLibrary.simpleMessage("支付"), "paymentUriDetailsAcceptQuestion": MessageLookupByLibrary.simpleMessage("您接受这笔交易吗?"), @@ -845,8 +933,10 @@ class MessageLookup extends MessageLookupByLibrary { "paymentUriDetailsDeny": MessageLookupByLibrary.simpleMessage("取消"), "paymentUriDetailsTitle": MessageLookupByLibrary.simpleMessage("已请求的付款"), - "paymentUriInactiveCoin": m69, + "paymentUriInactiveCoin": m86, "placeOrder": MessageLookupByLibrary.simpleMessage("下单"), + "pleaseAcceptAllCoinActivationRequests": + MessageLookupByLibrary.simpleMessage("请接受所有特殊硬币激活请求或取消选择硬币。"), "pleaseAddCoin": MessageLookupByLibrary.simpleMessage("请添加货币"), "pleaseRestart": MessageLookupByLibrary.simpleMessage("请重启应用程序后重试,或按下面的按钮。"), @@ -864,16 +954,17 @@ class MessageLookup extends MessageLookupByLibrary { "protectionCtrlWarning": MessageLookupByLibrary.simpleMessage("警告,此原子交换不受dPoW保护。"), "pubkey": MessageLookupByLibrary.simpleMessage("公钥"), + "qrCodeScanner": MessageLookupByLibrary.simpleMessage("二维码扫描仪"), "question_1": MessageLookupByLibrary.simpleMessage("你们会保存我的私钥吗?"), - "question_10": m70, - "question_2": m71, + "question_10": m87, + "question_2": m88, "question_3": MessageLookupByLibrary.simpleMessage("每次原子交换需要多长时间?"), "question_4": MessageLookupByLibrary.simpleMessage("在交换期间我要保持在线吗"), - "question_5": m72, + "question_5": m89, "question_6": MessageLookupByLibrary.simpleMessage("你们会提供用户支持吗?"), "question_7": MessageLookupByLibrary.simpleMessage("你们有地区限制吗?"), - "question_8": m73, - "question_9": m74, + "question_8": m90, + "question_9": m91, "rebrandingAnnouncement": MessageLookupByLibrary.simpleMessage( "这是一个新时代!我们已正式将名称从“AtomicDEX”更改为“Komodo Wallet”"), "receive": MessageLookupByLibrary.simpleMessage("接收"), @@ -902,7 +993,7 @@ class MessageLookup extends MessageLookupByLibrary { "rewardsReadMore": MessageLookupByLibrary.simpleMessage("阅读有关KMD活跃用户奖励的更多信息"), "rewardsReceive": MessageLookupByLibrary.simpleMessage("接收"), - "rewardsSuccess": m75, + "rewardsSuccess": m92, "rewardsTableFiat": MessageLookupByLibrary.simpleMessage("法币"), "rewardsTableRewards": MessageLookupByLibrary.simpleMessage("奖励,KMD"), "rewardsTableStatus": MessageLookupByLibrary.simpleMessage("状态"), @@ -910,9 +1001,9 @@ class MessageLookup extends MessageLookupByLibrary { "rewardsTableTitle": MessageLookupByLibrary.simpleMessage("奖励信息"), "rewardsTableUXTO": MessageLookupByLibrary.simpleMessage("UTXO 数量\nKMD"), - "rewardsTimeDays": m76, - "rewardsTimeHours": m77, - "rewardsTimeMin": m78, + "rewardsTimeDays": m93, + "rewardsTimeHours": m94, + "rewardsTimeMin": m95, "rewardsTitle": MessageLookupByLibrary.simpleMessage("奖励信息"), "russianLanguage": MessageLookupByLibrary.simpleMessage("俄语"), "saveMerged": MessageLookupByLibrary.simpleMessage("保存合并"), @@ -954,12 +1045,14 @@ class MessageLookup extends MessageLookupByLibrary { MessageLookupByLibrary.simpleMessage("选择所有测试资产"), "searchFilterSubtitleUBQ": MessageLookupByLibrary.simpleMessage("选择所有Ubiq货币"), + "searchFilterSubtitleZHTLC": + MessageLookupByLibrary.simpleMessage("选择所有ZHTLC币"), "searchFilterSubtitleutxo": MessageLookupByLibrary.simpleMessage("选择所有UTXO货币"), "searchForTicker": MessageLookupByLibrary.simpleMessage("搜索货币代码"), "seconds": MessageLookupByLibrary.simpleMessage("秒"), "security": MessageLookupByLibrary.simpleMessage("证券"), - "seeOrders": m79, + "seeOrders": m96, "seeTxHistory": MessageLookupByLibrary.simpleMessage("查看交易记录"), "seedPhrase": MessageLookupByLibrary.simpleMessage("助记词"), "seedPhraseTitle": MessageLookupByLibrary.simpleMessage("您的新助記詞"), @@ -969,6 +1062,7 @@ class MessageLookup extends MessageLookupByLibrary { "selectCoinTitle": MessageLookupByLibrary.simpleMessage("激活货币:"), "selectCoinToBuy": MessageLookupByLibrary.simpleMessage("选择您想买入的货币"), "selectCoinToSell": MessageLookupByLibrary.simpleMessage("选择您想卖出的货币"), + "selectDate": MessageLookupByLibrary.simpleMessage("选择日期"), "selectFileImport": MessageLookupByLibrary.simpleMessage("选择文件"), "selectLanguage": MessageLookupByLibrary.simpleMessage("选择语言"), "selectPaymentMethod": MessageLookupByLibrary.simpleMessage("选择您的支付方式"), @@ -987,30 +1081,33 @@ class MessageLookup extends MessageLookupByLibrary { "settingLanguageTitle": MessageLookupByLibrary.simpleMessage("语言"), "settings": MessageLookupByLibrary.simpleMessage("设置"), "share": MessageLookupByLibrary.simpleMessage("分享"), - "shareAddress": m80, + "shareAddress": m97, + "shouldScanPastTransaction": m98, + "showAddress": MessageLookupByLibrary.simpleMessage("显示地址"), "showDetails": MessageLookupByLibrary.simpleMessage("显示详细信息"), "showMyOrders": MessageLookupByLibrary.simpleMessage("显示我的订单"), + "showingOrders": m99, "signInWithPassword": MessageLookupByLibrary.simpleMessage("使用密码登录"), "signInWithSeedPhrase": MessageLookupByLibrary.simpleMessage("忘记密码?用助记词恢复钱包"), "simple": MessageLookupByLibrary.simpleMessage("简单"), "simpleTradeActivate": MessageLookupByLibrary.simpleMessage("激活"), - "simpleTradeBuyHint": m81, + "simpleTradeBuyHint": m100, "simpleTradeBuyTitle": MessageLookupByLibrary.simpleMessage("买入"), "simpleTradeClose": MessageLookupByLibrary.simpleMessage("关闭"), - "simpleTradeMaxActiveCoins": m82, - "simpleTradeNotActive": m83, + "simpleTradeMaxActiveCoins": m101, + "simpleTradeNotActive": m102, "simpleTradeRecieve": MessageLookupByLibrary.simpleMessage("接收"), - "simpleTradeSellHint": m84, + "simpleTradeSellHint": m103, "simpleTradeSellTitle": MessageLookupByLibrary.simpleMessage("卖出"), "simpleTradeSend": MessageLookupByLibrary.simpleMessage("发送"), "simpleTradeShowLess": MessageLookupByLibrary.simpleMessage("收起"), "simpleTradeShowMore": MessageLookupByLibrary.simpleMessage("显示更多"), - "simpleTradeUnableActivate": m85, + "simpleTradeUnableActivate": m104, "skip": MessageLookupByLibrary.simpleMessage("跳过"), "snackbarDismiss": MessageLookupByLibrary.simpleMessage("不予考虑"), - "soundCantPlayThatMsg": m86, - "soundPlayedWhen": m87, + "soundCantPlayThatMsg": m105, + "soundPlayedWhen": m106, "soundSettingsLink": MessageLookupByLibrary.simpleMessage("声音"), "soundSettingsTitle": MessageLookupByLibrary.simpleMessage("声音设置"), "soundsDialogTitle": MessageLookupByLibrary.simpleMessage("声音"), @@ -1021,18 +1118,20 @@ class MessageLookup extends MessageLookupByLibrary { "soundsNote": MessageLookupByLibrary.simpleMessage("请注意,您可以在应用程序设置中设置自定义声音。"), "spanishLanguage": MessageLookupByLibrary.simpleMessage("西班牙语"), + "startDate": MessageLookupByLibrary.simpleMessage("开始日期"), + "startSwap": MessageLookupByLibrary.simpleMessage("开始交换"), "step": MessageLookupByLibrary.simpleMessage("步骤"), "success": MessageLookupByLibrary.simpleMessage("成功"), "support": MessageLookupByLibrary.simpleMessage("支持"), - "supportLinksDesc": m88, + "supportLinksDesc": m107, "swap": MessageLookupByLibrary.simpleMessage("交换"), "swapCurrent": MessageLookupByLibrary.simpleMessage("现状"), "swapDetailTitle": MessageLookupByLibrary.simpleMessage("确认兑换细节"), "swapEstimated": MessageLookupByLibrary.simpleMessage("预估"), "swapFailed": MessageLookupByLibrary.simpleMessage("交换失败"), - "swapGasActivate": m89, - "swapGasAmount": m90, - "swapGasAmountRequired": m91, + "swapGasActivate": m108, + "swapGasAmount": m109, + "swapGasAmountRequired": m110, "swapOngoing": MessageLookupByLibrary.simpleMessage("正在交换"), "swapProgress": MessageLookupByLibrary.simpleMessage("进度详情"), "swapStarted": MessageLookupByLibrary.simpleMessage("已开始"), @@ -1040,6 +1139,11 @@ class MessageLookup extends MessageLookupByLibrary { "swapTotal": MessageLookupByLibrary.simpleMessage("总共"), "swapUUID": MessageLookupByLibrary.simpleMessage("UUID交换"), "switchTheme": MessageLookupByLibrary.simpleMessage("切换主题"), + "syncFromDate": MessageLookupByLibrary.simpleMessage("从指定日期同步"), + "syncFromSaplingActivation": + MessageLookupByLibrary.simpleMessage("从树苗激活同步"), + "syncNewTransactions": MessageLookupByLibrary.simpleMessage("同步新交易"), + "syncTransactionsQuestion": m111, "tagAVX20": MessageLookupByLibrary.simpleMessage("AVX20"), "tagBEP20": MessageLookupByLibrary.simpleMessage("BEP20"), "tagERC20": MessageLookupByLibrary.simpleMessage("ERC20"), @@ -1054,6 +1158,7 @@ class MessageLookup extends MessageLookupByLibrary { "tagQRC20": MessageLookupByLibrary.simpleMessage("QRC20"), "tagSBCH": MessageLookupByLibrary.simpleMessage("SBCH"), "tagUBQ": MessageLookupByLibrary.simpleMessage("UBQ"), + "tagZHTLC": MessageLookupByLibrary.simpleMessage("ZHTLC"), "takerOrder": MessageLookupByLibrary.simpleMessage("吃单交易"), "timeOut": MessageLookupByLibrary.simpleMessage("超时"), "titleCreatePassword": MessageLookupByLibrary.simpleMessage("创建密码"), @@ -1074,6 +1179,10 @@ class MessageLookup extends MessageLookupByLibrary { "tradePreimageError": MessageLookupByLibrary.simpleMessage("无法计算交易费用"), "tradingFee": MessageLookupByLibrary.simpleMessage("交易费用:"), "tradingMode": MessageLookupByLibrary.simpleMessage("交易模式:"), + "transactionAddress": MessageLookupByLibrary.simpleMessage("交易地址"), + "transactionHidden": MessageLookupByLibrary.simpleMessage("交易隐藏"), + "transactionHiddenPhishing": + MessageLookupByLibrary.simpleMessage("由于可能存在网络钓鱼尝试,该交易被隐藏。"), "tryRestarting": MessageLookupByLibrary.simpleMessage("如果还是有一些货币未被激活,请尝试重启应用程序。"), "turkishLanguage": MessageLookupByLibrary.simpleMessage("土耳其语"), @@ -1086,21 +1195,21 @@ class MessageLookup extends MessageLookupByLibrary { "txLimitExceeded": MessageLookupByLibrary.simpleMessage("请求过多。超出交易历史请求限制。请稍后重试"), "txNotConfirmed": MessageLookupByLibrary.simpleMessage("未确认"), - "txleft": m92, + "txleft": m112, "ukrainianLanguage": MessageLookupByLibrary.simpleMessage("乌克兰"), "unlock": MessageLookupByLibrary.simpleMessage("解锁"), "unlockFunds": MessageLookupByLibrary.simpleMessage("解锁基金"), - "unlockSuccess": m93, + "unlockSuccess": m113, "unspendable": MessageLookupByLibrary.simpleMessage("不可交易"), "updatesAvailable": MessageLookupByLibrary.simpleMessage("已有新版本"), "updatesChecking": MessageLookupByLibrary.simpleMessage("正在检查更新"), - "updatesCurrentVersion": m94, + "updatesCurrentVersion": m114, "updatesNotifAvailable": MessageLookupByLibrary.simpleMessage("已有新版本。请更新。"), - "updatesNotifAvailableVersion": m95, + "updatesNotifAvailableVersion": m115, "updatesNotifTitle": MessageLookupByLibrary.simpleMessage("可更新"), "updatesSkip": MessageLookupByLibrary.simpleMessage("暂时跳过"), - "updatesTitle": m96, + "updatesTitle": m116, "updatesUpToDate": MessageLookupByLibrary.simpleMessage("准备更新"), "updatesUpdate": MessageLookupByLibrary.simpleMessage("已更新"), "uriInsufficientBalanceSpan1": @@ -1121,22 +1230,24 @@ class MessageLookup extends MessageLookupByLibrary { "warningOkBtn": MessageLookupByLibrary.simpleMessage("好的"), "warningShareLogs": MessageLookupByLibrary.simpleMessage( "警告-在特殊情况下,此登录数据包含敏感信息,可用于消费交换失败的货币!"), - "weFailedTo": m97, - "weFailedToActivate": m98, - "welcomeInfo": m99, + "weFailedTo": m117, + "weFailedToActivate": m118, + "welcomeInfo": m119, "welcomeLetSetUp": MessageLookupByLibrary.simpleMessage("让我们开始吧"), "welcomeTitle": MessageLookupByLibrary.simpleMessage("欢迎"), "welcomeWallet": MessageLookupByLibrary.simpleMessage("钱包"), "willBeRedirected": MessageLookupByLibrary.simpleMessage("完成后,您将跳转至投资组合页面"), + "willTakeTime": MessageLookupByLibrary.simpleMessage( + "这将需要一段时间,并且应用程序必须保持在前台。\n在激活过程中终止应用程序可能会导致问题。"), "withdraw": MessageLookupByLibrary.simpleMessage("提取"), - "withdrawCameraAccessText": m100, + "withdrawCameraAccessText": m120, "withdrawCameraAccessTitle": MessageLookupByLibrary.simpleMessage("被拒绝使用"), "withdrawConfirm": MessageLookupByLibrary.simpleMessage("确认提取"), "withdrawConfirmError": MessageLookupByLibrary.simpleMessage("出现错误。请稍后重试。"), - "withdrawValue": m101, + "withdrawValue": m121, "wrongCoinSpan1": MessageLookupByLibrary.simpleMessage("您正在尝试扫描付款二维码"), "wrongCoinSpan2": MessageLookupByLibrary.simpleMessage("但您在"), "wrongCoinSpan3": MessageLookupByLibrary.simpleMessage("提取页面"), @@ -1150,7 +1261,7 @@ class MessageLookup extends MessageLookupByLibrary { "you have an order that new orders can match with": MessageLookupByLibrary.simpleMessage("你有一个新订单可以匹配的订单"), "youAreSending": MessageLookupByLibrary.simpleMessage("您正在发送:"), - "youWillReceiveClaim": m102, + "youWillReceiveClaim": m122, "youWillReceived": MessageLookupByLibrary.simpleMessage("您将收到:"), "yourWallet": MessageLookupByLibrary.simpleMessage("您的钱包") }; diff --git a/lib/localizations.dart b/lib/localizations.dart index 4c6f3d917..04161b788 100644 --- a/lib/localizations.dart +++ b/lib/localizations.dart @@ -302,7 +302,7 @@ class AppLocalizations { args: [appName]); String answer_9(String appName) => Intl.message( 'Absolutely! You can read our' - ' ' + ' ' 'developer documentation for more' ' details or contact us with your partnership inquiries. Have a specific' ' technical question? The $appName developer community' @@ -314,7 +314,7 @@ class AppLocalizations { name: 'question_10', args: [appName]); String answer_10(String appName) => Intl.message( '$appName is available for mobile on both Android and iPhone,' - ' and for desktop on ' + ' and for desktop on ' 'Windows, Mac, and Linux operating systems.', name: 'answer_10', args: [appName]); @@ -499,7 +499,7 @@ class AppLocalizations { Intl.message('Not enough balance', name: 'errorAmountBalance'); String gweiError(int value) => Intl.message( 'Gwei must be up to $value', - name: 'gweiErrorMessage', + name: 'gweiError', args: [value], ); String feesError(double value) => Intl.message( @@ -509,7 +509,7 @@ class AppLocalizations { ); String limitError(int value) => Intl.message( 'Limit must be up to $value', - name: 'limitErrorMessage', + name: 'limitError', args: [value], ); String get errorNotAValidAddress => @@ -559,7 +559,7 @@ class AppLocalizations { String get gettingTxWait => Intl.message('Getting transaction, please wait', name: 'gettingTxWait'); String get finishingUp => - Intl.message('Finishing up, please wait', name: 'gettingTxWait'); + Intl.message('Finishing up, please wait', name: 'finishingUp'); String get feedback => Intl.message('Share Log File', name: 'feedback'); String get loadingOrderbook => Intl.message('Loading orderbook...', name: 'loadingOrderbook'); @@ -1266,6 +1266,13 @@ class AppLocalizations { name: 'weFailedToActivate', args: [coinAbbr], ); + + String failedToCancelActivation(String coinAbbr) => Intl.message( + 'Failed to cancel activation of $coinAbbr', + name: 'failedToCancelActivation', + args: [coinAbbr], + ); + String isUnavailable(String coinAbbr) => Intl.message( '$coinAbbr is unavailable :(', name: 'isUnavailable', @@ -1320,6 +1327,11 @@ class AppLocalizations { Intl.message('Min sell amount is', name: 'multiMinSellAmt'); String get multiInvalidAmt => Intl.message('Invalid amount', name: 'multiInvalidAmt'); + String invalidCoinAddress(String coin) => Intl.message( + 'Invalid $coin address', + args: [coin], + name: 'invalidCoinAddress', + ); String multiActivateGas(String coin) => Intl.message('Activate $coin and top-up balance first', name: 'multiActivateGas', args: [coin]); @@ -1573,7 +1585,8 @@ class AppLocalizations { String get cancelButton => Intl.message('Cancel', name: 'cancelButton'); String get scrollToContinue => - Intl.message('Scroll to bottom to continue...', name: 'scrollToContinue'); + Intl.message('Scroll to the bottom to continue...', + name: 'scrollToContinue'); String get developerTitle => Intl.message('Developer', name: 'developerTitle'); @@ -1687,6 +1700,83 @@ class AppLocalizations { 'Invalid swap data. Please provide a valid swap status JSON file.', name: 'importInvalidSwapData'); + String activating(String coinName) => Intl.message('Activating $coinName', + name: 'activating', args: [coinName]); + String get doNotCloseTheAppTapForMoreInfo => + Intl.message('Do not close the app. Tap for more info...', + name: 'doNotCloseTheAppTapForMoreInfo'); + String activation(String coinName) => Intl.message('$coinName Activation', + name: 'activation', args: [coinName]); + String coinsAreActivated(String protocolName) => + Intl.message('$protocolName coins are activated', + name: 'coinsAreActivated', args: [protocolName]); + String coinsAreNotActivated(String protocolName) => + Intl.message('$protocolName coins are not activated', + name: 'coinsAreNotActivated', args: [protocolName]); + String coinsAreActivatedSuccessfully(String protocolName) => + Intl.message('$protocolName coins activated successfully', + name: 'coinsAreActivatedSuccessfully', args: [protocolName]); + String activationInProgress(String protocolName) => + Intl.message('$protocolName Activation in Progress', + name: 'activationInProgress', args: [protocolName]); + String activateCoins(String protocolName) => + Intl.message('Activate $protocolName coins?', + name: 'activateCoins', args: [protocolName]); + String get moreInfo => Intl.message('More Info', name: 'moreInfo'); + + String get showAddress => Intl.message('Show Address', name: 'showAddress'); + String get transactionHiddenPhishing => Intl.message( + 'This transaction was hidden due to a possible phishing attempt.', + name: 'transactionHiddenPhishing'); + String get transactionAddress => + Intl.message('Transaction Address', name: 'transactionAddress'); + String get transactionHidden => + Intl.message('Transaction Hidden', name: 'transactionHidden'); + String get couldNotLaunchUrl => + Intl.message('Could not launch URL', name: 'couldNotLaunchUrl'); + + String get willTakeTime => Intl.message( + 'This will take a while and the app must be kept in the foreground.\nTerminating the app while activation is in progress could lead to issues.', + name: 'willTakeTime'); + String get minimizingWillTerminate => Intl.message( + 'Warning: Minimizing the app on iOS will terminate the activation process.', + name: 'minimizingWillTerminate'); + String get enableNotificationsForActivationProgress => Intl.message( + 'Please enable notifications to get updates on the activation progress.', + name: 'enableNotificationsForActivationProgress'); + + String get qrCodeScanner => + Intl.message('QR Code Scanner', name: 'qrCodeScanner'); + String get foundQrCode => Intl.message('Found QR Code', name: 'foundQrCode'); + String get contract => Intl.message('Contract', name: 'contract'); + String get startSwap => Intl.message('Start Swap', name: 'startSwap'); + String get none => Intl.message('None', name: 'none'); + String get cexRate => Intl.message('CEX Rate', name: 'cexRate'); + String incomingTransactionsProtectionSettings(String coinName) => + Intl.message('Incoming $coinName txs protection settings', + name: 'incomingTransactionsProtectionSettings', args: [coinName]); + String showingOrders(int count, int maxCount) => + Intl.message('Showing $count of $maxCount orders. ', + name: 'showingOrders', args: [count, maxCount]); + String get orderBookLess => Intl.message('Less', name: 'orderBookLess'); + String get orderBookMore => Intl.message('More', name: 'orderBookMore'); + + String basedOnCoinRatio(String coinName1, String coinName2) => + Intl.message('based on $coinName1/$coinName2', + name: 'basedOnCoinRatio', args: [coinName1, coinName2]); + + String get detailedFeesSendTradingFeeTransactionFee => + Intl.message('send trading fee transaction fee', + name: 'detailedFeesSendTradingFeeTransactionFee'); + String get detailedFeesTradingFee => + Intl.message('trading fee', name: 'detailedFeesTradingFee'); + String detailedFeesSendCoinTransactionFee(String coinName) => + Intl.message('send $coinName transaction fee', + name: 'detailedFeesSendCoinTransactionFee', args: [coinName]); + String detailedFeesReceiveCoinTransactionFee(String coinName) => + Intl.message('receive $coinName transaction fee', + name: 'detailedFeesReceiveCoinTransactionFee', args: [coinName]); + // --- Filters String get filtersButton => Intl.message('Filter', name: 'filtersButton'); String get filtersStatus => Intl.message('Status', name: 'filtersStatus'); @@ -1809,11 +1899,76 @@ class AppLocalizations { // Rebranding String get rebrandingAnnouncement => Intl.message( - "It's a new era! We have officially changed our name from 'AtomicDEX' to 'Komodo Wallet'", + "It's a new era! We have officially rebranded from 'AtomicDEX' to 'Komodo Wallet'", name: 'rebrandingAnnouncement'); String get officialPressRelease => Intl.message('Official press release', name: 'officialPressRelease'); + +// --- Asyncronous coin activations (requires syncing) + String shouldScanPastTransaction(String coin) => Intl.message( + 'Scan for past $coin transactions?', + name: 'shouldScanPastTransaction', + args: [coin], + ); + + String get activationCancelled => + Intl.message('Coin activation cancelled', name: 'activationCancelled'); + + String coinActivationSuccessfull(String coin) => Intl.message( + 'Successfully activated $coin', + name: 'coinActivationSuccessfull', + args: [coin], + ); + + String coinActivationCancelled(String coin) => Intl.message( + '$coin activation cancelled', + name: 'coinActivationCancelled', + args: [coin], + ); + + String get pleaseAcceptAllCoinActivationRequests => Intl.message( + 'Please accept all special coin activation requests or deselect the coins.', + name: 'pleaseAcceptAllCoinActivationRequests', + ); + + String get cancelActivation => + Intl.message('Cancel Activation', name: 'cancelActivation'); + + String get cancelActivationQuestion => Intl.message( + 'Are you sure you want to cancel activation?', + name: 'cancelActivationQuestion', + ); + + String syncTransactionsQuestion(String name) => Intl.message( + 'Which $name transactions would you like to sync?', + name: 'syncTransactionsQuestion', + args: [name], + ); + String get syncNewTransactions => + Intl.message('Sync new transactions', name: 'syncNewTransactions'); + String get syncFromDate => + Intl.message('Sync from specified date', name: 'syncFromDate'); + String get syncFromSaplingActivation => Intl.message( + 'Sync from sapling activation', + name: 'syncFromSaplingActivation', + ); + String get selectDate => Intl.message('Select a Date', name: 'selectDate'); + String get startDate => Intl.message('Start Date', name: 'startDate'); + String get futureTransactions => Intl.message( + 'We will sync future transactions made after activation associated with your public key. This is the quickest option and takes up the least amount of storage.', + name: 'futureTransactions', + ); + String get allPastTransactions => Intl.message( + 'Your wallet will show any past transactions. This will take significant storage and time as all blocks will be downloaded and scanned.', + name: 'allPastTransactions', + ); + String get pastTransactionsFromDate => Intl.message( + 'Your wallet will show your past transactions made after the specified date.', + name: 'pastTransactionsFromDate', + ); + // --- + } class AppLocalizationsDelegate extends LocalizationsDelegate { diff --git a/lib/main.dart b/lib/main.dart index 1f58b82c3..45990b375 100644 --- a/lib/main.dart +++ b/lib/main.dart @@ -1,13 +1,20 @@ import 'dart:async'; + import 'package:connectivity_plus/connectivity_plus.dart'; import 'package:flutter/material.dart'; import 'package:flutter/services.dart'; -import 'package:flutter_localizations/flutter_localizations.dart'; import 'package:flutter_bloc/flutter_bloc.dart' as real_bloc; +import 'package:flutter_localizations/flutter_localizations.dart'; import 'package:komodo_dex/packages/z_coin_activation/bloc/z_coin_activation_bloc.dart'; +import 'package:komodo_dex/packages/z_coin_activation/bloc/z_coin_activation_event.dart'; import 'package:komodo_dex/packages/z_coin_activation/bloc/z_coin_activation_state.dart'; import 'package:komodo_dex/packages/z_coin_activation/bloc/z_coin_notifications.dart'; import 'package:komodo_dex/packages/z_coin_activation/widgets/z_coin_status_list_tile.dart'; +import 'package:komodo_dex/services/mm.dart'; +import 'package:local_auth/local_auth.dart'; +import 'package:provider/provider.dart'; +import 'package:shared_preferences/shared_preferences.dart'; + import '../app_config/app_config.dart'; import '../blocs/authenticate_bloc.dart'; import '../blocs/coins_bloc.dart'; @@ -37,20 +44,22 @@ import '../services/mm_service.dart'; import '../utils/log.dart'; import '../widgets/bloc_provider.dart'; import '../widgets/build_red_dot.dart'; -import 'package:local_auth/local_auth.dart'; -import 'package:provider/provider.dart'; -import 'package:shared_preferences/shared_preferences.dart'; - import 'app_config/theme_data.dart'; import 'model/multi_order_provider.dart'; -import 'packages/rebranding/rebranding_provider.dart'; import 'model/startup_provider.dart'; +import 'packages/rebranding/rebranding_provider.dart'; import 'utils/utils.dart'; import 'widgets/shared_preferences_builder.dart'; Future main() async { WidgetsFlutterBinding.ensureInitialized(); + // Ensure the Dart version is >= 2.14.0 + assert(appConfig.isDartSdkVersionSupported, ''' + Your Dart SDK version is not supported. + Please update your Dart SDK to >= ${appConfig.minDartVersion}. + '''); + await applicationDocumentsDirectory; await Log.init(); @@ -178,6 +187,8 @@ class _MyAppState extends State with WidgetsBindingObserver { super.initState(); _initCheckNetworkStatus(); WidgetsBinding.instance.addObserver(this); + + MM.untilRpcIsUp().then((_) => _requestResync()); } @override @@ -207,11 +218,20 @@ class _MyAppState extends State with WidgetsBindingObserver { Log('main', 'lifecycle: resumed'); mainBloc.isInBackground = false; lockService.lockSignal(context); - await mmSe.handleWakeUp(); + final didNeedWakeUp = await mmSe.wakeUpSuspendedApi(); + + if (didNeedWakeUp) _requestResync(); + break; } } + void _requestResync() { + context + .read() + .add(ZCoinActivationRequested(isResync: true)); + } + @override Widget build(BuildContext context) { SystemChrome.setEnabledSystemUIMode(SystemUiMode.manual, overlays: [ diff --git a/lib/model/cex_provider.dart b/lib/model/cex_provider.dart index 4a43be6a1..35a81237b 100644 --- a/lib/model/cex_provider.dart +++ b/lib/model/cex_provider.dart @@ -377,7 +377,10 @@ class CexPrices { _init(); } + bool isInitialized = false; + Future _init() async { + if (isInitialized) return; prefs = await SharedPreferences.getInstance(); activeCurrency = prefs.getInt('activeCurrency') ?? 0; _selectedFiat = prefs.getString('selectedFiat') ?? 'USD'; @@ -389,6 +392,8 @@ class CexPrices { updatePrices(); updateRates(); }); + + isInitialized = true; } List currencies; @@ -436,6 +441,9 @@ class CexPrices { }, ); _body = _res.body; + + if (_body == null) + return Log('cex_provider', 'Failed to fetch rates: $_res'); } catch (e) { Log('cex_provider', 'Failed to fetch rates: $e'); } @@ -608,7 +616,11 @@ class CexPrices { return; }, ); - _body = _res.body; + _body = _res?.body; + if (_body == null) { + _fetchingPrices = false; + return false; + } } catch (e) { Log('cex_provider', 'Failed to fetch usd prices: $e'); } @@ -616,8 +628,10 @@ class CexPrices { _fetchingPrices = false; Map json; + try { - json = jsonDecode(_body); + final isJsonString = _body.startsWith('{'); + json = isJsonString ? jsonDecode(_body) : null; } catch (e) { Log('cex_provider', 'Failed to parse prices json: $e'); } @@ -696,14 +710,16 @@ class CexPrices { _fetchingPrices = false; + if (_body == null) return false; + Map json; try { json = jsonDecode(_body); } catch (e) { Log('cex_provider', 'Failed to parse prices json: $e'); } - if (json == null) return false; + if (json['error'] != null) { Log('cex_provider', 'Prices endpoint error: ${json['error']}'); return false; diff --git a/lib/model/coin.dart b/lib/model/coin.dart index 197e84e18..8a67a50b9 100644 --- a/lib/model/coin.dart +++ b/lib/model/coin.dart @@ -2,6 +2,7 @@ import 'dart:collection'; import 'dart:convert'; import 'package:flutter/services.dart'; +import 'package:komodo_dex/app_config/coins_updater.dart'; import '../app_config/app_config.dart'; import '../app_config/coin_converter.dart'; @@ -33,8 +34,7 @@ Future> get coins async { _coinsInvoked = true; Log('coin:29', 'Loading coins.json…'); - const ci = 'assets/coins.json'; - final cis = await rootBundle.loadString(ci, cache: false); + final String cis = await CoinUpdater().getCoins(); final List cil = json.decode(cis); final Map> cim = {}; for (dynamic js in cil) cim[js['coin']] = Map.from(js); @@ -195,8 +195,7 @@ class Coin { if (lightWalletDServers != null) 'light_wallet_d_servers': List.from(lightWalletDServers.map((x) => x)), - - }; + }; String getTxFeeSatoshi() { int txFeeRes = 0; diff --git a/lib/model/get_buy.dart b/lib/model/get_buy.dart index 9bd6ba469..cb2e20ee2 100644 --- a/lib/model/get_buy.dart +++ b/lib/model/get_buy.dart @@ -8,9 +8,9 @@ GetBuySell getBuyFromJson(String str) => GetBuySell.fromJson(json.decode(str)); String getBuyToJson(GetBuySell data) => json.encode(data.toJson()); -/// https://developers.atomicdex.io/basic-docs/atomicdex/atomicdex-api.html#buy +/// https://developers.komodoplatform.com/basic-docs/atomicdex/atomicdex-api.html#buy class GetBuySell { - /// https://developers.atomicdex.io/basic-docs/atomicdex/atomicdex-api.html#buy + /// https://developers.komodoplatform.com/basic-docs/atomicdex/atomicdex-api.html#buy GetBuySell({ this.userpass, this.method = 'buy', diff --git a/lib/model/get_orderbook.dart b/lib/model/get_orderbook.dart index be07acf16..36c8b6cc5 100644 --- a/lib/model/get_orderbook.dart +++ b/lib/model/get_orderbook.dart @@ -13,6 +13,7 @@ class GetOrderbook { GetOrderbook({ this.userpass, this.method = 'orderbook', + this.mmrpc = '2.0', this.base, this.rel, }); @@ -20,19 +21,24 @@ class GetOrderbook { factory GetOrderbook.fromJson(Map json) => GetOrderbook( userpass: json['userpass'] ?? '', method: json['method'] ?? '', - base: json['base'] ?? '', - rel: json['rel'] ?? '', + mmrpc: json['mmrpc'] ?? '', + base: json['params']['base'] ?? '', + rel: json['params']['rel'] ?? '', ); String userpass; String method; + String mmrpc; String base; String rel; Map toJson() => { 'userpass': userpass ?? '', 'method': method ?? '', - 'base': base ?? '', - 'rel': rel ?? '', + 'mmrpc': mmrpc, + 'params': { + 'base': base ?? '', + 'rel': rel ?? '', + } }; } diff --git a/lib/model/get_tx_history.dart b/lib/model/get_tx_history.dart index 0b793ecbf..2b35f9dd6 100644 --- a/lib/model/get_tx_history.dart +++ b/lib/model/get_tx_history.dart @@ -7,10 +7,7 @@ import 'dart:convert'; import 'package:komodo_dex/model/coin_type.dart'; import '../blocs/coins_bloc.dart'; -import '../model/coin_type.dart'; -import '../services/mm_service.dart'; import '../utils/utils.dart'; - import 'coin.dart'; String getTxHistoryToJson(GetTxHistory data) => json.encode(data.toJson()); @@ -34,35 +31,34 @@ class GetTxHistory { // slp coins uses the rpc 2.0 methods Coin coinToEnable = coinsBloc.getKnownCoinByAbbr(coin); - bool v2Coins = isSlp(coinToEnable) || - coinToEnable.type == CoinType.iris || - coinToEnable.type == CoinType.cosmos; - return v2Coins + final type = coinToEnable.type; + + if (type == CoinType.zhtlc) method = 'z_coin_tx_history'; + + final isV2Coin = isSlp(coinToEnable) || + [CoinType.iris, CoinType.cosmos, CoinType.zhtlc].contains(type); + + return isV2Coin ? { 'userpass': userpass ?? '', 'method': method ?? '', 'mmrpc': '2.0', 'params': { 'coin': coin ?? '', - } - } - : coinToEnable.type == CoinType.zhtlc - ? { - 'userpass': mmSe.userpass ?? '', - 'method': 'z_coin_tx_history', - 'mmrpc': '2.0', - 'params': { - 'coin': coin ?? '', - 'limit': limit ?? 0, + 'limit': limit ?? 0, + if (fromId != null) + 'paging_options': { + 'FromId': int.tryParse(fromId ?? '') ?? fromId, }, - } - : { - 'userpass': userpass ?? '', - 'method': method ?? '', - 'coin': coin ?? '', - 'limit': limit ?? 0, - 'from_id': fromId, - 'decimals': coinToEnable.decimals - }; + }, + } + : { + 'userpass': userpass ?? '', + 'method': method ?? '', + 'coin': coin ?? '', + 'limit': limit ?? 0, + 'from_id': fromId, + 'decimals': coinToEnable.decimals, + }; } } diff --git a/lib/model/get_withdraw.dart b/lib/model/get_withdraw.dart index f5fda718e..fe51a4f1b 100644 --- a/lib/model/get_withdraw.dart +++ b/lib/model/get_withdraw.dart @@ -39,6 +39,7 @@ class GetWithdraw { 'params': { 'coin': coin ?? '', 'to': to ?? '', + 'max': max ?? false, if (amount != null) 'amount': amount, } } @@ -58,16 +59,19 @@ class GetWithdraw { class GetWithdrawTaskStatus { GetWithdrawTaskStatus({ this.method = 'task::withdraw::status', + this.mmrpc = '2.0', @required this.taskId, @required this.userpass, }); String method; + String mmrpc; int taskId; String userpass; Map toJson() => { 'method': method, + 'mmrpc': mmrpc, 'userpass': userpass, 'params': { 'task_id': taskId, diff --git a/lib/model/orderbook.dart b/lib/model/orderbook.dart index 052571264..dd4cab835 100644 --- a/lib/model/orderbook.dart +++ b/lib/model/orderbook.dart @@ -40,19 +40,19 @@ class Orderbook { .map((dynamic x) => Ask.fromJson(x, json['rel']))) .where((Ask bid) => bid != null) .toList(), - numbids: json['numbids'] ?? 0, + numbids: json['num_bids'] ?? 0, asks: json['asks'] == null ? null : List.from(json['asks'] .map((dynamic x) => Ask.fromJson(x, json['base']))) .where((Ask ask) => ask != null) .toList(), - numasks: json['numasks'] ?? 0, + numasks: json['num_asks'] ?? 0, askdepth: json['askdepth'] ?? 0, base: json['base'] ?? '', rel: json['rel'] ?? '', timestamp: json['timestamp'] ?? DateTime.now().millisecond, - netid: json['netid'] ?? 0, + netid: json['net_id'] ?? 0, ); List bids; @@ -69,16 +69,16 @@ class Orderbook { 'bids': bids == null ? null : List.from(bids.map((Ask x) => x.toJson())), - 'numbids': numbids ?? 0, + 'num_bids': numbids ?? 0, 'asks': asks == null ? null : List.from(asks.map((Ask x) => x.toJson())), - 'numasks': numasks ?? 0, + 'num_asks': numasks ?? 0, 'askdepth': askdepth ?? 0, 'base': base ?? '', 'rel': rel ?? '', 'timestamp': timestamp ?? DateTime.now().millisecond, - 'netid': netid ?? 0, + 'net_id': netid ?? 0, }; } @@ -97,18 +97,18 @@ class Ask { }); factory Ask.fromJson(Map json, [String coin]) { - if (isInfinite(json['price'])) return null; - if (isInfinite(json['maxvolume'])) return null; + if (isInfinite(json['price']['decimal'])) return null; + if (isInfinite(json['base_min_volume']['decimal'])) return null; return Ask( coin: coin ?? json['coin'] ?? '', - address: json['address'] ?? '', - price: json['price'] ?? 0.0, - priceFract: json['price_fraction'], - maxvolume: deci(json['maxvolume']), - maxvolumeFract: json['max_volume_fraction'], - minVolume: fract2rat(json['min_volume_fraction']) ?? - Rational.parse(json['min_volume']), + address: json['address']['address_data'] ?? 'Shielded', + price: json['price']['decimal'] ?? 0.0, + priceFract: json['price']['fraction'], + maxvolume: deci(json['base_max_volume']['decimal']), + maxvolumeFract: json['base_max_volume']['fraction'], + minVolume: fract2rat(json['base_min_volume']['fraction']) ?? + Rational.parse(json['base_min_volume']['decimal']), pubkey: json['pubkey'] ?? '', age: json['age'] ?? 0, zcredits: json['zcredits'] ?? 0, @@ -132,12 +132,17 @@ class Ask { Map toJson() => { 'coin': coin ?? '', - 'address': address ?? '', - 'price': price ?? 0.0, - 'price_fraction': priceFract, - 'maxvolume': maxvolume.toString(), - 'max_volume_fraction': maxvolumeFract, - 'min_volume_fraction': rat2fract(minVolume), + 'address': address == 'Shielded' + ? {'address_type': 'Shielded'} + : {'address_data': address}, + 'price': {'decimal': price ?? 0.0, 'fraction': priceFract}, + 'base_max_volume': { + 'decimal': maxvolume.toString(), + 'fraction': maxvolumeFract, + }, + 'base_min_volume': { + 'fraction': rat2fract(minVolume), + }, 'pubkey': pubkey ?? '', 'age': age ?? 0, 'zcredits': zcredits ?? 0, diff --git a/lib/model/recent_swaps.dart b/lib/model/recent_swaps.dart index c46394b2b..ae7cb70ef 100644 --- a/lib/model/recent_swaps.dart +++ b/lib/model/recent_swaps.dart @@ -61,7 +61,7 @@ class Result { } /// MM swap data, -/// https://developers.atomicdex.io/basic-docs/atomicdex/atomicdex-api.html#my-swap-status +/// https://developers.komodoplatform.com/basic-docs/atomicdex/atomicdex-api.html#my-swap-status class MmSwap { MmSwap( {this.errorEvents, @@ -152,7 +152,9 @@ class MmSwap { String myOrderUuid; - Map toJson() => { + Map toJson() { + try { + return { 'error_events': List.from(errorEvents.map((dynamic x) => x)) ?? [], @@ -174,6 +176,10 @@ class MmSwap { 'taker_amount': takerAmount, 'my_order_uuid': myOrderUuid, }; + } catch (e) { + return null; + } + } Status get status { // cf. SwapHistoryBloc::getStatusSwap @@ -233,7 +239,7 @@ class SwapEEL { } /// Fields of a swap event, -/// https://developers.atomicdex.io/basic-docs/atomicdex/atomicdex-api.html#my-swap-status +/// https://developers.komodoplatform.com/basic-docs/atomicdex/atomicdex-api.html#my-swap-status class SwapEF { SwapEF( {this.lockDuration, diff --git a/lib/model/swap.dart b/lib/model/swap.dart index 7f76a1dfd..6990f9112 100644 --- a/lib/model/swap.dart +++ b/lib/model/swap.dart @@ -38,7 +38,7 @@ class Swap { Status status; Map get toJson => { - 'result': result.toJson ?? MmSwap().toJson, + 'result': result.toJson() ?? MmSwap().toJson, }; int compareToSwap(Swap other) { diff --git a/lib/model/transaction_data.dart b/lib/model/transaction_data.dart index e9d5d73d7..b622c2bbc 100644 --- a/lib/model/transaction_data.dart +++ b/lib/model/transaction_data.dart @@ -126,10 +126,18 @@ class FeeDetails { ); try { - // QRC20 tokens - feeDetails.totalFee = cutTrailingZeros(formatPrice( - double.parse(json['miner_fee']) + - double.parse(json['total_gas_fee']))); + final minerFee = + json['miner_fee'] == null ? null : double.tryParse(json['miner_fee']); + + final totalGasFee = json['total_gas_fee'] == null + ? null + : double.tryParse(json['total_gas_fee']); + + if (minerFee != null || totalGasFee != null) { + final total = minerFee ?? 0.0 + totalGasFee ?? 0.0; + // QRC20 tokens + feeDetails.totalFee = cutTrailingZeros(formatPrice(total)); + } } catch (_) {} return feeDetails; diff --git a/lib/model/transactions.dart b/lib/model/transactions.dart index 3d909daf2..f3d523892 100644 --- a/lib/model/transactions.dart +++ b/lib/model/transactions.dart @@ -45,18 +45,31 @@ class Result { this.transactions, }); - factory Result.fromJson(Map json) => Result( - fromId: json['from_id'] ?? '', - limit: json['limit'] ?? 0, - skipped: json['skipped'] ?? 0, - total: json['total'] ?? 0, - currentBlock: json['current_block'] ?? 0, - syncStatus: json['sync_status'] == null - ? SyncStatus() - : SyncStatus.fromJson(json['sync_status']), - transactions: List.from( - json['transactions'].map((dynamic x) => Transaction.fromJson(x))), - ); + static Result fromJson(Map json) { + if (json == null) return null; + + final fromIdRaw = json['from_id'] ?? + (json['paging_options'] != null && + json['paging_options']['FromId'] != null + ? json['paging_options']['FromId'] + : null); + + final fromId = fromIdRaw is int ? fromIdRaw.toString() : fromIdRaw; + + return Result( + fromId: fromId, + limit: json['limit'] ?? 0, + skipped: json['skipped'] ?? 0, + total: json['total'] ?? 0, + currentBlock: json['current_block'] ?? 0, + syncStatus: json['sync_status'] == null + ? SyncStatus() + : SyncStatus.fromJson(json['sync_status']), + transactions: List.from( + json['transactions'].map((dynamic x) => Transaction.fromJson(x)), + ), + ); + } String fromId; int currentBlock; diff --git a/lib/packages/rebranding/rebranding_dialog.dart b/lib/packages/rebranding/rebranding_dialog.dart index 650e0b2d4..a85e7fab4 100644 --- a/lib/packages/rebranding/rebranding_dialog.dart +++ b/lib/packages/rebranding/rebranding_dialog.dart @@ -5,6 +5,8 @@ import 'package:komodo_dex/packages/rebranding/rebranding_provider.dart'; import 'package:provider/provider.dart'; import 'package:url_launcher/url_launcher_string.dart'; +// TODO: Remove the code after the rebranding notice has expired. See date +// specified in [appConfig.isRebrandingExpired?]. class RebrandingDialog extends StatefulWidget { final bool isModal; @@ -21,7 +23,7 @@ class _RebrandingDialogState extends State { void initState() { super.initState(); if (widget.isModal) { - Future.delayed(Duration(seconds: 5), () { + Future.delayed(Duration(seconds: 2), () { if (mounted) { setState(() { _canClose = true; diff --git a/lib/packages/rebranding/rebranding_provider.dart b/lib/packages/rebranding/rebranding_provider.dart index cd8d44b01..4833c0076 100644 --- a/lib/packages/rebranding/rebranding_provider.dart +++ b/lib/packages/rebranding/rebranding_provider.dart @@ -2,13 +2,24 @@ import 'package:flutter/foundation.dart'; import 'package:shared_preferences/shared_preferences.dart'; class RebrandingProvider extends ChangeNotifier { + RebrandingProvider(); + + // TODO! Remove code/assets for rebranding after the date below + final rebrandingExpirationDate = DateTime(2023, 12, 1); + bool get isRebrandingExpired => + DateTime.now().isAfter(rebrandingExpirationDate); + bool _closedPermanently = false; bool _closedThisSession = false; SharedPreferences _prefs; Future get prefsLoaded => _loadPrefs(); - RebrandingProvider(); + bool get shouldShowRebrandingDialog => + !isRebrandingExpired && !closedPermanently && !closedThisSession; + + bool get shouldShowRebrandingNews => + !isRebrandingExpired && !closedPermanently; Future _loadPrefs() async { _prefs = await SharedPreferences.getInstance(); diff --git a/lib/packages/z_coin_activation/bloc/z_coin_activation_api.dart b/lib/packages/z_coin_activation/bloc/z_coin_activation_api.dart index 8a64d7899..d33e9e9cd 100644 --- a/lib/packages/z_coin_activation/bloc/z_coin_activation_api.dart +++ b/lib/packages/z_coin_activation/bloc/z_coin_activation_api.dart @@ -22,12 +22,16 @@ class ZCoinActivationApi { final String _baseUrl = mmSe.url; String get _userpass => mmSe.userpass; - String get folder => Platform.isIOS ? '/ZcashParams/' : '/.zcash-params/'; + Directory get zCashParamsDirectory => Directory( + (applicationDocumentsDirectorySync.path + '/zcash-params'), + ); bool _paramsDownloaded = false; Map firstScannedBlocks = {}; + void resetFirstScannedBlocks() => firstScannedBlocks = {}; + Future userSelectedZhtlcSyncStartTimestamp() async { final zhtlcActivationPrefs = await loadZhtlcActivationPrefs(); SyncType zhtlcSyncType = zhtlcActivationPrefs['zhtlcSyncType']; @@ -44,25 +48,31 @@ class ZCoinActivationApi { } /// Creates a new activation task for the given coin. - Future initiateActivation(String ticker) async { + Future initiateActivation( + String ticker, { + bool noSyncParams = false, + }) async { await musicService.play(MusicMode.ACTIVE); await downloadZParams(); - final dir = await applicationDocumentsDirectory; Coin coin = coinsBloc.getKnownCoinByAbbr(ticker); + Map rpcData = { + 'electrum_servers': Coin.getServerList(coin.serverList), + 'light_wallet_d_servers': coin.lightWalletDServers + }; + + if (!noSyncParams) { + rpcData['sync_params'] = { + 'date': (await userSelectedZhtlcSyncStartTimestamp()) + }; + } + Map activationParams = { - 'mode': { - 'rpc': 'Light', - 'rpc_data': { - 'electrum_servers': Coin.getServerList(coin.serverList), - 'light_wallet_d_servers': coin.lightWalletDServers, - 'sync_params': {'date': (await userSelectedZhtlcSyncStartTimestamp())} - } - }, + 'mode': {'rpc': 'Light', 'rpc_data': rpcData}, 'scan_blocks_per_iteration': 150, 'scan_interval_ms': 150, - 'zcash_params_path': dir.path + folder + 'zcash_params_path': zCashParamsDirectory.path, }; final response = await http.post( @@ -93,7 +103,7 @@ class ZCoinActivationApi { } } - Future cancelActivation(int taskId) async { + Future cancelActivationTask(int taskId) async { final response = await http.post( Uri.parse(_baseUrl), headers: {'Content-Type': 'application/json'}, @@ -126,20 +136,25 @@ class ZCoinActivationApi { } } + Future cancelCoinActivation(String ticker) async { + int taskId = await getTaskId(ticker); + + if (taskId == null) return; + + await cancelActivationTask(taskId); + await _removeCoinTaskId(ticker); + firstScannedBlocks.remove(ticker); + } + Future> cancelAllActivation() async { List knownZCoins = await getKnownZCoins(); - List activatedCoins = await activatedZCoins(); + List activatedCoins = await apiActivatedZCoins(); List cancelledCoins = []; for (Coin coin in knownZCoins) { String ticker = coin.abbr; int coinTaskId = await getTaskId(ticker); - // Check if taskId exists - if (coinTaskId == null) { - continue; - } - // Check if coin is already activated if (activatedCoins.contains(ticker)) { continue; @@ -155,10 +170,8 @@ class ZCoinActivationApi { // Attempt to cancel the activation try { - await cancelActivation(coinTaskId); - await _removeCoinTaskId(ticker); + await cancelCoinActivation(ticker); - firstScannedBlocks.remove(ticker); cancelledCoins.add(ticker); } catch (e) { Log( @@ -181,38 +194,43 @@ class ZCoinActivationApi { await storage.write(key: await taskIdKey(abbr), value: taskId.toString()); } - Stream activateCoin(String ticker) async* { + Stream activateCoin( + String ticker, { + bool resync = false, + }) async* { int coinTaskId = await getTaskId(ticker); + ZCoinStatus taskStatus; + final isAlreadyActivated = (await apiActivatedZCoins()).contains(ticker); + + if (!resync) { + taskStatus = coinTaskId == null + ? ZCoinStatus.fromTaskStatus( + ticker, + isAlreadyActivated + ? ActivationTaskStatus.active + : ActivationTaskStatus.notFound, + ) + : await activationTaskStatus(coinTaskId, ticker: ticker); + final isActivatedOnBackend = + (isAlreadyActivated || taskStatus.isActivated); + + final isRegistered = coinsBloc.getBalanceByAbbr(ticker) != null; + + if (isActivatedOnBackend) { + yield taskStatus; - final isAlreadyActivated = (await activatedZCoins()).contains(ticker); - - ZCoinStatus taskStatus = coinTaskId == null - ? ZCoinStatus.fromTaskStatus( - ticker, - isAlreadyActivated - ? ActivationTaskStatus.active - : ActivationTaskStatus.notFound, - ) - : await activationTaskStatus(coinTaskId, ticker: ticker); - - final isActivatedOnBackend = (isAlreadyActivated || taskStatus.isActivated); - - final isRegistered = coinsBloc.getBalanceByAbbr(ticker) != null; - - if (isActivatedOnBackend) { - yield taskStatus; + if (!isRegistered) { + final coin = (await coins)[ticker]; + await coinsBloc.setupCoinAfterActivation(coin); + } - if (!isRegistered) { - final coin = (await coins)[ticker]; - await coinsBloc.setupCoinAfterActivation(coin); + return; } - - return; } ZCoinStatus lastEmittedStatus; - coinTaskId = await initiateActivation(ticker); + coinTaskId = await initiateActivation(ticker, noSyncParams: resync); lastEmittedStatus = await activationTaskStatus(coinTaskId, ticker: ticker); @@ -228,13 +246,9 @@ class ZCoinActivationApi { if (shouldEmitStatus) { lastEmittedStatus = taskStatus; - // yield taskStatus; yield taskStatus; } - final isTaskActive = taskStatus.status == ActivationTaskStatus.active; - final isTaskNotFound = taskStatus.status == ActivationTaskStatus.notFound; - if (taskStatus.status == ActivationTaskStatus.active || taskStatus.status == ActivationTaskStatus.notFound) { ZCoinProgressNotifications.clear(); @@ -311,7 +325,7 @@ class ZCoinActivationApi { await storage.delete(key: await taskIdKey(ticker)); } - Future> activatedZCoins() async { + Future> apiActivatedZCoins() async { final response = await http.post( Uri.parse(_baseUrl), headers: {'Content-Type': 'application/json'}, @@ -326,21 +340,23 @@ class ZCoinActivationApi { final enabledCoins = (jsonDecode(response.body)['result']['coins'] as List) .map((e) => e['ticker'] as String) - .toList(); + .toSet(); - final knownZCoins = await getKnownZCoins(); + final knownZCoins = (await getKnownZCoins()).map((c) => c.abbr).toSet(); - final activatedZCoins = knownZCoins - .where((c) => enabledCoins.contains(c.abbr) || c.isActive) - .map((c) => c.abbr) - .toList(); - - return activatedZCoins; + return knownZCoins.intersection(enabledCoins).toList(); } else { throw Exception('Failed to get activated zcoins'); } } + Future> localDbActivatedZCoins() async { + return (await getKnownZCoins()) + .where((c) => c.isActive) + .map((c) => c.abbr) + .toSet(); + } + Future> getKnownZCoins() async { final _coins = await coins; @@ -357,16 +373,17 @@ class ZCoinActivationApi { Future downloadZParams() async { if (_paramsDownloaded) return; - final dir = await applicationDocumentsDirectory; - final zDir = Directory(dir.path + folder); - - final doesZcashDirectoryExist = await zDir.exists(); + final doesZcashDirectoryExist = await zCashParamsDirectory.exists(); - final isZcashDirBigEnough = - (await MMService.getDirectorySize(zDir.path, endsWith: '')) > 1; + final isZcashDirBigEnough = (await MMService.getDirectorySize( + zCashParamsDirectory.path, + endsWith: '', + allowCache: false, + )) > + 1; if (!doesZcashDirectoryExist) { - await zDir.create(); + await zCashParamsDirectory.create(recursive: true); } if (doesZcashDirectoryExist && isZcashDirBigEnough) { @@ -386,10 +403,21 @@ class ZCoinActivationApi { final request = await client.getUrl(Uri.parse(param)); final response = await request.close(); + final wasSuccessful = response.statusCode.toString().startsWith('2'); + + if (!wasSuccessful) { + final exceptionMessage = 'Failed to download $param: ' + '${response.statusCode} ${response.reasonPhrase}'; + + Log('ZCoinActivationApi:downloadZParams', exceptionMessage); + throw Exception(exceptionMessage); + } + final bytes = await consolidateHttpClientResponseBytes(response); - final file = File('${zDir.path}/${param.split('/').last}'); - await file.writeAsBytes(bytes); + final file = + File('${zCashParamsDirectory.path}/${param.split('/').last}'); + await file.writeAsBytes(bytes, flush: true); }); await Future.wait(futures); @@ -401,8 +429,8 @@ class ZCoinActivationApi { Map responseBody, String ticker, }) async { - int _progress = 100; - String _messageDetails = ''; + int _progress = 5; + String _messageDetails = 'Activating $ticker'; if (!responseBody.containsKey('result')) return null; final result = responseBody['result'] is Map @@ -411,13 +439,6 @@ class ZCoinActivationApi { String status = result['status']; dynamic details = result['details']; - // checkPointBlock will be removed - //Coin coin = coinsBloc.getKnownCoinByAbbr(ticker); - // int blockOffset = 0; - // if (coin.type == CoinType.zhtlc) { - // blockOffset = coin.protocol.protocolData.checkPointBlock?.height ?? 0; - // } - // use range from checkpoint block to present if (status == 'Ok') { if (details.containsKey('error')) { @@ -478,9 +499,6 @@ class ZCoinActivationApi { _messageDetails = isBuildingPhase ? 'Building $ticker wallet database' : 'Updating $ticker blocks cache'; - } else { - _progress = 5; - _messageDetails = 'Activating $ticker'; } return ZCoinStatus( diff --git a/lib/packages/z_coin_activation/bloc/z_coin_activation_bloc.dart b/lib/packages/z_coin_activation/bloc/z_coin_activation_bloc.dart index 61e6ef707..2777cea9f 100644 --- a/lib/packages/z_coin_activation/bloc/z_coin_activation_bloc.dart +++ b/lib/packages/z_coin_activation/bloc/z_coin_activation_bloc.dart @@ -10,15 +10,14 @@ import 'package:komodo_dex/packages/z_coin_activation/bloc/z_coin_activation_sta import 'package:komodo_dex/packages/z_coin_activation/bloc/z_coin_notifications.dart'; import 'package:komodo_dex/packages/z_coin_activation/models/z_coin_activation_prefs.dart'; import 'package:komodo_dex/packages/z_coin_activation/models/z_coin_status.dart'; +import 'package:komodo_dex/utils/log.dart'; -// TODO: Localize messages class ZCoinActivationBloc extends Bloc - with ActivationEta { + with ActivationEta, ProgressCalculator { ZCoinActivationBloc() : super(ZCoinActivationInitial()) { on(_handleActivationRequested); on(_handleSetRequestedCoins); - on(_handleActivationStatusRequested); on(_handleActivationCancelRequested); } @@ -30,16 +29,20 @@ class ZCoinActivationBloc ZCoinActivationRequested event, Emitter emit, ) async { - final toActivate = await _repository.outstandingZCoinActivations(); - final toActivateInitalCount = toActivate.length; + final pendingCoinsToActivate = event.isResync + ? await _repository.outstandingZCoinActivations() + : await _repository.getRequestedActivatedCoins(); - try { - final isAllCoinsEnabled = await _repository.isAllRequestedZCoinsEnabled(); - if (isAllCoinsEnabled) { - add(ZCoinActivationStatusRequested()); - return; - } + final hasCoinsToActivate = pendingCoinsToActivate.isNotEmpty; + + if (!hasCoinsToActivate) { + if (state is! ZCoinActivationInitial) emit(ZCoinActivationInitial()); + return; + } + + final totalCoinsToActivateCount = pendingCoinsToActivate.length.toInt(); + try { final zhtlcActivationPrefs = await loadZhtlcActivationPrefs(); SyncType zhtlcSyncType = zhtlcActivationPrefs['zhtlcSyncType']; @@ -47,31 +50,40 @@ class ZCoinActivationBloc ZCoinActivationInProgess( progress: 0, message: 'Starting activation', + isResync: event.isResync, eta: null, startTime: DateTime.now(), ), ); + + final previouslyActivated = + await _repository.zCoinsTickersWithPreviousActivation(); + await emit.forEach( - _repository.activateRequestedZCoins(), + event.isResync + ? _repository.resyncZCoins() + : _repository.activateRequestedZCoins(), onData: (coinStatus) { if (coinStatus.isFailed) { return ZCoinActivationFailure( - 'Failed to activate ZHTLC coins, please try again later', + ZCoinActivationFailureReason.failedAfterStart, ); } + final completedCoinsCount = + totalCoinsToActivateCount - pendingCoinsToActivate.length; + + double overallProgress = calculateOverallProgress( + completedCoinsCount, + totalCoinsToActivateCount, + coinStatus.progress, + ); + if (coinStatus.isActivated) { - toActivate.remove(coinStatus.coin); + pendingCoinsToActivate.remove(coinStatus.coin); } - final coinsRemainingCount = toActivate.length; - - // Progress of the coin currently being activated - final coinProgress = coinStatus.progress; - final overallProgress = (1 - - (coinsRemainingCount / toActivateInitalCount) + - (coinProgress / toActivateInitalCount)) - .clamp(0.0, 1.0); + overallProgress = calculateSmoothProgress(overallProgress); final previousInProgressState = state is ZCoinActivationInProgess ? (state as ZCoinActivationInProgess) @@ -88,40 +100,50 @@ class ZCoinActivationBloc coinStatus, overallProgress: overallProgress, eta: eta, - ); - } - if (coinStatus.isActivated) { - return ZCoinActivationSuccess('Completed ZHTLC activation'); + ).ignore(); } + return ZCoinActivationInProgess( progress: shouldShowNewProgress ? overallProgress : lastProgress, message: 'Activating ${coinStatus.coin}', + isResync: previouslyActivated.contains(coinStatus.coin), eta: eta, - startTime: previousInProgressState.startTime, + startTime: previousInProgressState?.startTime ?? DateTime.now(), ); }, onError: (e, s) { - debugPrint('Failed to activate coins: $e'); - return ZCoinActivationFailure('Failed to activate coins'); + Log( + 'ZCoinActivationBloc:_handleActivationRequested', + 'Failed to activate coins: $e', + ); + return ZCoinActivationFailure( + ZCoinActivationFailureReason.failedAfterStart, + ); }, ); final isAllActivated = await _repository.isAllRequestedZCoinsEnabled(); - if (isAllActivated) { - // This is not always success, it just means the list is empty - // And this emit might remove another important notification - // emit(ZCoinActivationSuccess('ZHTLC coins activation process ended')); + if (isAllActivated == true && + state.asProgressOrNull()?.isResync == false) { + emit(ZCoinActivationSuccess()); } else { - emit(ZCoinActivationFailure('Failed to activate coins')); + emit( + ZCoinActivationFailure(ZCoinActivationFailureReason.failedAfterStart), + ); } } catch (e) { debugPrint('Failed to start activation: $e'); emit( - ZCoinActivationFailure('Failed to start activation'), + ZCoinActivationFailure(ZCoinActivationFailureReason.startFailed), ); } finally { + if (state is ZCoinActivationInProgess) emit(ZCoinActivationInitial()); + await _clearNotification(); + + resetEta(); + resetProgress(); } } @@ -135,46 +157,7 @@ class ZCoinActivationBloc } catch (e) { debugPrint('Failed to set requested coins: $e'); emit( - ZCoinActivationFailure('Failed to set requested coins'), - ); - } - } - - Future _handleActivationStatusRequested( - ZCoinActivationStatusRequested event, - Emitter emit, - ) async { - try { - final isAllCoinsEnabled = await _repository.isAllRequestedZCoinsEnabled(); - - // TODO? Consider if better to base the "in progress" state on the - // API task status instead of the existing bloc state. - final isActivationInProgress = state is ZCoinActivationInProgess; - - if (!isActivationInProgress || isAllCoinsEnabled) { - await _clearNotification(); - } - - ZCoinActivationState newState; - if (isAllCoinsEnabled) { - newState = isActivationInProgress - ? ZCoinActivationSuccess('Activation in progress...') - : ZCoinActivationKnownState(isAllCoinsEnabled); - } else if (isActivationInProgress) { - newState = state as ZCoinActivationInProgess; - } else { - newState = ZCoinActivationKnownState(isAllCoinsEnabled); - } - - emit(newState); - - if (!isAllCoinsEnabled && !isActivationInProgress) { - add(ZCoinActivationRequested()); - } - } catch (e) { - debugPrint('Failed to get activation status: $e'); - emit( - ZCoinActivationFailure('Failed to get activation status'), + ZCoinActivationFailure(ZCoinActivationFailureReason.startFailed), ); } } @@ -185,11 +168,11 @@ class ZCoinActivationBloc ) async { try { await _repository.cancelAllZCoinActivations(); - emit(ZCoinActivationFailure('Cancelling ZHTLC activation...')); + emit(ZCoinActivationFailure(ZCoinActivationFailureReason.cancelled)); } catch (e) { debugPrint('Failed to cancel ZHTLC activation: $e'); emit( - ZCoinActivationFailure('Failed to cancel ZHTLC activation'), + ZCoinActivationFailure(ZCoinActivationFailureReason.failedToCancel), ); } } diff --git a/lib/packages/z_coin_activation/bloc/z_coin_activation_eta_mixin.dart b/lib/packages/z_coin_activation/bloc/z_coin_activation_eta_mixin.dart index a6931c962..046e4fd9e 100644 --- a/lib/packages/z_coin_activation/bloc/z_coin_activation_eta_mixin.dart +++ b/lib/packages/z_coin_activation/bloc/z_coin_activation_eta_mixin.dart @@ -5,39 +5,47 @@ import 'package:meta/meta.dart'; mixin ActivationEta { final List<_ActivationEntry> _activationEntries = []; + void resetEta() { + _activationEntries.clear(); + } + Duration calculateETA(double progress) { - _activationEntries.add(_ActivationEntry( - progress: progress, - timeStamp: DateTime.now(), - )); + _activationEntries.add( + _ActivationEntry( + progress: progress, + timeStamp: DateTime.now(), + ), + ); final hasEnoughEntries = _activationEntries.length >= 6 && _activationEntries.first.timeStamp .difference(_activationEntries.last.timeStamp) .inSeconds .abs() > - 50; - - _activationEntries.retainWhere((entry) { - final elapsedSeconds = - DateTime.now().difference(entry.timeStamp).inSeconds; - return elapsedSeconds <= 60 || !hasEnoughEntries; - }); + 30; if (!hasEnoughEntries) { return null; } + _activationEntries.retainWhere((entry) { + final elapsedSeconds = + DateTime.now().difference(entry.timeStamp).inSeconds.abs(); + return elapsedSeconds <= 120; + }); + double averageChangePerSecond = 0; if (_activationEntries.length > 1) { try { final sumDeltaProgress = _activationEntries .sublist(0, _activationEntries.length - 1) - .map((entry) => (entry.progress - - _activationEntries[_activationEntries.indexOf(entry) + 1] - .progress) - .abs()) + .map( + (entry) => (entry.progress - + _activationEntries[_activationEntries.indexOf(entry) + 1] + .progress) + .abs(), + ) .reduce((a, b) => a + b); averageChangePerSecond = sumDeltaProgress / @@ -76,3 +84,63 @@ class _ActivationEntry { final double progress; final DateTime timeStamp; } + +mixin ProgressCalculator { + DateTime _lastProgressUpdate; + double _lastProgressValue = 0.0; + + void resetProgress() { + _lastProgressUpdate = null; + _lastProgressValue = 0.0; + } + + double calculateSmoothProgress(double currentProgress) { + if (currentProgress == 1.0) return 1.0; + + final now = DateTime.now(); + + // If this is the first calculation, set the baseline + if (_lastProgressUpdate == null || currentProgress == 1) { + _lastProgressUpdate = now; + _lastProgressValue = currentProgress; + return currentProgress; + } + + final timeDifference = now.difference(_lastProgressUpdate).inSeconds; + + // Calculate the maximum allowed progress increase + final maxProgressIncrease = 0.01 * (timeDifference / 0.5); + + // Determine the new progress based on the allowed increase + double newProgress = _lastProgressValue + maxProgressIncrease; + + // Ensure the new progress does not exceed the current reported progress + if (newProgress > currentProgress) { + newProgress = currentProgress; + } + + // Update the last progress and timestamp + _lastProgressValue = newProgress; + _lastProgressUpdate = now; + + return newProgress; + } + + double calculateOverallProgress( + int completedCoins, int totalCoins, double currentCoinProgress) { + // Fraction of the total progress that each coin represents. + double coinShare = 1.0 / totalCoins; + + // Progress contributed by the coins that have already been fully activated. + double completedCoinsProgress = completedCoins * coinShare; + + // Represents the progress of the coin currently being activated. + double inProgressCoinContribution = currentCoinProgress * coinShare; + + // Calculating the overall progress + double val = + (completedCoinsProgress + inProgressCoinContribution).clamp(0.0, 1.0); + + return val; + } +} diff --git a/lib/packages/z_coin_activation/bloc/z_coin_activation_event.dart b/lib/packages/z_coin_activation/bloc/z_coin_activation_event.dart index 79e4e8cae..9dd511113 100644 --- a/lib/packages/z_coin_activation/bloc/z_coin_activation_event.dart +++ b/lib/packages/z_coin_activation/bloc/z_coin_activation_event.dart @@ -3,7 +3,11 @@ abstract class ZCoinActivationEvent { } /// Activates any requested ZCoins not already activated -class ZCoinActivationRequested extends ZCoinActivationEvent {} +class ZCoinActivationRequested extends ZCoinActivationEvent { + const ZCoinActivationRequested({this.isResync = false}); + + final bool isResync; +} /// Sets the list of requested ZCoins to activate. /// Must call [ZCoinActivationRequested] to activate the coins. @@ -13,6 +17,4 @@ class ZCoinActivationSetRequestedCoins extends ZCoinActivationEvent { final List coins; } -class ZCoinActivationStatusRequested extends ZCoinActivationEvent {} - class ZCoinActivationCancelRequested extends ZCoinActivationEvent {} diff --git a/lib/packages/z_coin_activation/bloc/z_coin_activation_repository.dart b/lib/packages/z_coin_activation/bloc/z_coin_activation_repository.dart index 426bddfef..af74c4a82 100644 --- a/lib/packages/z_coin_activation/bloc/z_coin_activation_repository.dart +++ b/lib/packages/z_coin_activation/bloc/z_coin_activation_repository.dart @@ -18,14 +18,23 @@ class ZCoinActivationRepository with RequestedZCoinsStorage { static Future get taskIdKey async => 'activationTaskId_${(await Db.getCurrentWallet()).id}'; - Stream _activateZCoins(List zCoins) async* { + Stream resyncZCoins() async* { + final outStandingZCoins = await outstandingZCoinActivations(); + + yield* _activateZCoins(outStandingZCoins, resyncOnly: true); + } + + Stream _activateZCoins( + List zCoins, { + bool resyncOnly = false, + }) async* { try { if (zCoins.isEmpty) return; while (zCoins.isNotEmpty) { final currentCoinTicker = zCoins.first; - - await for (final update in api.activateCoin(currentCoinTicker)) { + await for (final update + in api.activateCoin(currentCoinTicker, resync: resyncOnly)) { Log( 'ZCoinActivationRepository:activateZCoins', 'Update received: ${update.toJson()}', @@ -37,8 +46,6 @@ class ZCoinActivationRepository with RequestedZCoinsStorage { if (!isRegistered) { await coinsBloc.setupCoinAfterActivation(coin); } - - await removeRequestedActivatedCoins([currentCoinTicker]); } else if (update.status == ActivationTaskStatus.failed) { await removeRequestedActivatedCoins([currentCoinTicker]); await api.removeTaskId(currentCoinTicker); @@ -54,6 +61,7 @@ class ZCoinActivationRepository with RequestedZCoinsStorage { } catch (e) { rethrow; } finally { + api.resetFirstScannedBlocks(); await coinsBloc.syncCoinsStateWithApi(); } } @@ -63,15 +71,22 @@ class ZCoinActivationRepository with RequestedZCoinsStorage { yield* _activateZCoins(zCoinsToActivate); } + /// Gets coins currently active in API. + /// + /// Returns null if there is an error. @override - Future> getEnabledZCoins() async { - final enabledCoins = await api.activatedZCoins(); - - final requestedCoins = await getRequestedActivatedCoins(); - - // Remove the requested coins that are now active + Future> getApiEnabledZCoins() async { + try { + final enabledCoins = await api.apiActivatedZCoins(); - return enabledCoins; + return enabledCoins; + } catch (e) { + Log( + 'z_coin_activation_repository:getEnabledZCoins', + 'Failed to get enabled ZCoins: $e', + ); + return null; + } } Future cancelAllZCoinActivations() async { @@ -89,20 +104,34 @@ class ZCoinActivationRepository with RequestedZCoinsStorage { } } + // This is a workaround for the legacy coins bloc. It's not a good practice. + Future legacyCoinsBlocDisableLocallyCallback( + String ticker, + ) async { + try { + await api.cancelCoinActivation(ticker); + await removeRequestedActivatedCoins([ticker]); + } catch (e) { + Log( + 'z_coin_activation_repository:cancelAllZCoinActivations', + 'Failed to cancel ZCoin activations: $e', + ); + } + } + @override Future> outstandingZCoinActivations() async { - final knownZCoins = await getKnownZCoins(); + final Set requestedCoins = + (await getRequestedActivatedCoins()).toSet(); - final activatedZCoins = (await getEnabledZCoins()).toSet(); - final requestedCoins = (await getRequestedActivatedCoins()).toSet(); + final Set locallyActiveCoins = await api.localDbActivatedZCoins(); - final coinsAlreadyActivated = activatedZCoins.intersection(requestedCoins); + final Set apiActiveZCoins = + ((await getApiEnabledZCoins()) ?? []).toSet(); - if (coinsAlreadyActivated.isNotEmpty) { - await removeRequestedActivatedCoins(coinsAlreadyActivated.toList()); - } + apiActiveZCoins.removeWhere((coin) => !locallyActiveCoins.contains(coin)); - return requestedCoins.difference(activatedZCoins).toList(); + return requestedCoins.difference(apiActiveZCoins).toList(); } Future> getKnownZCoins() async { @@ -170,4 +199,18 @@ class ZCoinActivationRepository with RequestedZCoinsStorage { return status; } + + /// Returns a list of activated coins according to our local database. + /// + /// This is not related to the activation status of the coins on the API. The + /// current API activation status could be `true` or `false`. + Future> zCoinsTickersWithPreviousActivation() async { + final knownZCoins = (await getKnownZCoins()).map((c) => c.abbr).toSet(); + + final allActivatedCoins = (await Db.getCoinsFromDb()).toSet(); + + final previouslyActivated = knownZCoins.intersection(allActivatedCoins); + + return previouslyActivated.toList(); + } } diff --git a/lib/packages/z_coin_activation/bloc/z_coin_activation_state.dart b/lib/packages/z_coin_activation/bloc/z_coin_activation_state.dart index 0aeb7bc4c..6b281275a 100644 --- a/lib/packages/z_coin_activation/bloc/z_coin_activation_state.dart +++ b/lib/packages/z_coin_activation/bloc/z_coin_activation_state.dart @@ -23,26 +23,42 @@ class ZCoinActivationInProgess extends ZCoinActivationState { const ZCoinActivationInProgess({ @required this.progress, @required this.message, + @required this.isResync, this.eta, this.startTime, }); final double progress; final String message; - final Duration eta; // nullable - final DateTime startTime; // nullable + + /// Describes whether the activation is the initial activation after selecting + /// coins to activate (false) or a resync after the initial + /// activation (true). e.g. when restarting the app. + final bool isResync; + + /// Nullable + final Duration eta; + + /// Nullable + final DateTime startTime; } class ZCoinActivationSuccess extends ZCoinActivationState { - ZCoinActivationSuccess(this.message); - - final String message; + ZCoinActivationSuccess(); } class ZCoinActivationFailure extends ZCoinActivationState { - const ZCoinActivationFailure(this.message); + const ZCoinActivationFailure(this.reason); - final String message; + final ZCoinActivationFailureReason reason; +} + +enum ZCoinActivationFailureReason { + startFailed, + cancelled, + failedToCancel, + failedAfterStart, + failedOther, } class ZCoinActivationStatusLoading extends ZCoinActivationState {} diff --git a/lib/packages/z_coin_activation/bloc/z_coin_notifications.dart b/lib/packages/z_coin_activation/bloc/z_coin_notifications.dart index 79830716a..5ec22dce3 100644 --- a/lib/packages/z_coin_activation/bloc/z_coin_notifications.dart +++ b/lib/packages/z_coin_activation/bloc/z_coin_notifications.dart @@ -121,6 +121,7 @@ class ZCoinProgressNotifications { showProgress: true, maxProgress: 100, onlyAlertOnce: true, + playSound: false, progress: progressInt, ); diff --git a/lib/packages/z_coin_activation/bloc/z_coin_requested_activation_storage.dart b/lib/packages/z_coin_activation/bloc/z_coin_requested_activation_storage.dart index 7c0b4849e..0b53b7d68 100644 --- a/lib/packages/z_coin_activation/bloc/z_coin_requested_activation_storage.dart +++ b/lib/packages/z_coin_activation/bloc/z_coin_requested_activation_storage.dart @@ -45,11 +45,18 @@ mixin RequestedZCoinsStorage { await setRequestedActivatedCoins(updatedList.toList()); } + /// Returns true if all requested coins are enabled. + /// Returns false if not all requested coins are enabled. + /// Returns null if no coins are requested. Future isAllRequestedZCoinsEnabled() async { - return (await outstandingZCoinActivations()).isEmpty; + final requestedCoins = await getRequestedActivatedCoins(); + + return requestedCoins.isEmpty + ? null + : (await outstandingZCoinActivations()).isEmpty; } Future> outstandingZCoinActivations(); - Future> getEnabledZCoins(); + Future> getApiEnabledZCoins(); } diff --git a/lib/packages/z_coin_activation/models/z_coin_status.dart b/lib/packages/z_coin_activation/models/z_coin_status.dart index f0392c34e..e6448e6bd 100644 --- a/lib/packages/z_coin_activation/models/z_coin_status.dart +++ b/lib/packages/z_coin_activation/models/z_coin_status.dart @@ -29,9 +29,11 @@ class ZCoinStatus { final String message; final double progress; - bool get isActivated => status == ActivationTaskStatus.active; + bool get isActivated => + status == ActivationTaskStatus.active || + message.contains('is activated already'); - bool get isFailed => status == ActivationTaskStatus.failed; + bool get isFailed => status == ActivationTaskStatus.failed && !isActivated; bool get isInProgress => status == ActivationTaskStatus.inProgress; diff --git a/lib/packages/z_coin_activation/widgets/rotating_progress_indicator.dart b/lib/packages/z_coin_activation/widgets/rotating_progress_indicator.dart index acf66bcf8..000eb7343 100644 --- a/lib/packages/z_coin_activation/widgets/rotating_progress_indicator.dart +++ b/lib/packages/z_coin_activation/widgets/rotating_progress_indicator.dart @@ -13,34 +13,83 @@ class RotatingCircularProgressIndicator extends StatefulWidget { class _RotatingCircularProgressIndicatorState extends State - with SingleTickerProviderStateMixin { - AnimationController controller; + with TickerProviderStateMixin { + AnimationController rotationController; + AnimationController progressController; + Animation progressAnimation; + Animation rotationAnimation; + + final ValueNotifier _targetValue = ValueNotifier(null); @override void initState() { super.initState(); - controller = - AnimationController(duration: const Duration(seconds: 2), vsync: this) - ..repeat(); + + rotationController = AnimationController( + duration: const Duration(seconds: 2), + vsync: this, + )..repeat(); + + rotationAnimation = CurvedAnimation( + parent: rotationController, + curve: Curves.slowMiddle, + ); + + progressController = AnimationController( + duration: const Duration(seconds: 1), + vsync: this, + ); + + _updateProgressAnimation(widget.value); + progressController.value = widget.value; + } + + void _updateProgressAnimation(double targetValue) { + progressAnimation = Tween( + begin: progressController.value, + end: targetValue, + ).animate(CurvedAnimation( + parent: progressController, + curve: Curves.easeOut, + )) + ..addListener(() { + if (progressAnimation.isCompleted) { + progressController.value = progressAnimation.value; + } + }); + progressController.forward(from: 0); + } + + @override + void didUpdateWidget(RotatingCircularProgressIndicator oldWidget) { + super.didUpdateWidget(oldWidget); + if (widget.value != oldWidget.value) { + _updateProgressAnimation(widget.value); + } } @override void dispose() { - controller.dispose(); + rotationController.dispose(); + progressController.dispose(); + _targetValue.dispose(); super.dispose(); } @override Widget build(BuildContext context) { - final mustRotate = widget.value != null || widget.value < 0.1; + final mustRotate = widget.value != null; return RotationTransition( - turns: mustRotate - ? Tween(begin: 0.0, end: 1.0).animate(controller) - : AlwaysStoppedAnimation(0), - child: CircularProgressIndicator.adaptive( - value: widget.value, - key: ValueKey('rotating_progress_indicator'), + turns: mustRotate ? rotationAnimation : AlwaysStoppedAnimation(0), + child: AnimatedBuilder( + animation: progressAnimation, + builder: (BuildContext context, Widget child) { + return CircularProgressIndicator( + key: ValueKey('rotating_progress_indicator'), + value: progressAnimation.value, + ); + }, ), ); } diff --git a/lib/packages/z_coin_activation/widgets/z_coin_status_list_tile.dart b/lib/packages/z_coin_activation/widgets/z_coin_status_list_tile.dart index 00879ebd4..554c722cd 100644 --- a/lib/packages/z_coin_activation/widgets/z_coin_status_list_tile.dart +++ b/lib/packages/z_coin_activation/widgets/z_coin_status_list_tile.dart @@ -1,8 +1,11 @@ import 'dart:async'; import 'dart:io'; -import 'package:intl/intl.dart'; + +import 'package:flutter/foundation.dart'; import 'package:flutter/material.dart'; import 'package:flutter_bloc/flutter_bloc.dart'; +import 'package:intl/intl.dart'; +import 'package:komodo_dex/blocs/settings_bloc.dart'; import 'package:komodo_dex/localizations.dart'; import 'package:komodo_dex/packages/z_coin_activation/bloc/z_coin_activation_bloc.dart'; import 'package:komodo_dex/packages/z_coin_activation/bloc/z_coin_activation_event.dart'; @@ -10,8 +13,9 @@ import 'package:komodo_dex/packages/z_coin_activation/bloc/z_coin_activation_sta import 'package:komodo_dex/packages/z_coin_activation/bloc/z_coin_notifications.dart'; import 'package:komodo_dex/packages/z_coin_activation/models/z_coin_activation_prefs.dart'; import 'package:komodo_dex/packages/z_coin_activation/widgets/rotating_progress_indicator.dart'; +import 'package:komodo_dex/services/mm.dart'; import 'package:komodo_dex/services/mm_service.dart'; -import 'package:komodo_dex/widgets/confirmation_dialog.dart'; +import 'package:komodo_dex/widgets/animated_linear_progress_indicator.dart'; class ZCoinStatusWidget extends StatefulWidget { const ZCoinStatusWidget({Key key}) : super(key: key); @@ -34,24 +38,25 @@ class ZCoinStatusWidget extends StatefulWidget { class _ZCoinStatusWidgetState extends State { static bool get canNotify => ZCoinProgressNotifications.canNotify; + AppLocalizations get localisations => AppLocalizations.of(context); + @override initState() { super.initState(); - Timer.periodic(Duration(seconds: 1), (timer) { - if (apiReady != mmSe.running) { - setState(() => apiReady = mmSe.running); - } - if (apiReady) { - return timer.cancel(); - } - }); + if (!apiReady) { + MM.untilRpcIsUp().then((_) { + if (mounted) setState(() => apiReady = true); + }); + } } bool apiReady = mmSe.running; @override Widget build(BuildContext context) { + final protocolTag = localisations.tagZHTLC; + return BlocBuilder( builder: (context, state) { bool isActivationInProgress = state is ZCoinActivationInProgess; @@ -59,15 +64,11 @@ class _ZCoinStatusWidgetState extends State { if (isActivationInProgress) { final progressState = state as ZCoinActivationInProgess; return ListTile( + title: Text(localisations.activating(protocolTag)), + dense: true, onTap: () => _showInProgressDialog(context), - title: Text('ZHTLC Activating'), - subtitle: Text( - 'Do not close the app. Tap for more info...', - ), - leading: Icon( - Icons.warning, - color: Colors.red, - ), + subtitle: Text(localisations.doNotCloseTheAppTapForMoreInfo), + leading: Icon(Icons.hourglass_full_rounded), tileColor: Theme.of(context).primaryColor, trailing: SizedBox( child: RotatingCircularProgressIndicator( @@ -81,7 +82,7 @@ class _ZCoinStatusWidgetState extends State { final bool isStatusLoading = state is ZCoinActivationStatusLoading; return ListTile( - title: Text('ZCoin (ZHTLC) Activation'), + title: Text(localisations.activation('PIRATE ($protocolTag)')), tileColor: Theme.of(context).primaryColor, leading: isStatusLoading ? CircularProgressIndicator() @@ -96,30 +97,30 @@ class _ZCoinStatusWidgetState extends State { : state is ZCoinActivationStatusChecked ? Text( state.isActivated - ? 'ZHTLC coins are activated' - : 'ZHTLC coins are not activated', + ? localisations.coinsAreActivated(protocolTag) + : localisations.coinsAreNotActivated(protocolTag), ) : null, selected: false, - trailing: IconButton( - icon: Icon( - Icons.refresh, - color: Colors.white, - ), - onPressed: () => context - .read() - .add(ZCoinActivationStatusRequested()), - ), ); }, ); } static void listener(BuildContext context, ZCoinActivationState state) { - final scaffold = ScaffoldMessenger.maybeOf(context); + ScaffoldMessengerState scaffold; + + try { + ScaffoldMessenger.maybeOf(context); + } catch (e) { + return; + } + if (scaffold == null) return; - final l10n = AppLocalizations.of(context); + final localisations = AppLocalizations.of(context); + + final protocolTag = localisations.tagZHTLC; final theme = Theme.of(context); @@ -131,7 +132,9 @@ class _ZCoinStatusWidgetState extends State { updateNotice = scaffold.showMaterialBanner( MaterialBanner( elevation: 1, - content: Text(state.message), + content: Text( + localiseFailedReason(localisations, state.reason), + ), leading: Icon( Icons.error, color: Colors.red, @@ -141,7 +144,7 @@ class _ZCoinStatusWidgetState extends State { TextButton( onPressed: () => scaffold.hideCurrentMaterialBanner(), child: Text( - l10n.okButton, + localisations.okButton, style: TextStyle().copyWith(color: theme.colorScheme.onError), ), ), @@ -154,17 +157,16 @@ class _ZCoinStatusWidgetState extends State { updateNotice = scaffold.showMaterialBanner( MaterialBanner( elevation: 1, - leading: Icon( Icons.check_circle, color: theme.colorScheme.secondary, ), - content: Text(state.message), - // backgroundColor: Colors.green, + content: + Text(localisations.coinsAreActivatedSuccessfully(protocolTag)), actions: [ TextButton( onPressed: () => scaffold.hideCurrentMaterialBanner(), - child: Text(l10n.okButton), + child: Text(localisations.okButton), ), ], ), @@ -179,7 +181,7 @@ class _ZCoinStatusWidgetState extends State { elevation: 1, content: Row( children: [ - Text('ZHTLC Activation in Progress'), + Text(localisations.activationInProgress(protocolTag)), SizedBox(width: 8), SizedBox.square( dimension: 24, @@ -189,20 +191,18 @@ class _ZCoinStatusWidgetState extends State { ), if (state.progress != null && state.progress > 0) ...[ SizedBox(width: 8), - Text( - '${(state.progress * 100).round()}%', - ), + Text('${(state.progress * 100).round()}%'), ] ], ), actions: [ TextButton( onPressed: () => scaffold.hideCurrentMaterialBanner(), - child: Text(l10n.okButton), + child: Text(localisations.okButton), ), TextButton( onPressed: () => _showInProgressDialog(context), - child: Text('More Info'), + child: Text(localisations.moreInfo), ), ], ), @@ -219,15 +219,37 @@ class _ZCoinStatusWidgetState extends State { }, ); } + + static String localiseFailedReason( + AppLocalizations localisations, + ZCoinActivationFailureReason reason, + ) { + final tag = localisations.tagZHTLC; + switch (reason) { + case ZCoinActivationFailureReason.startFailed: + case ZCoinActivationFailureReason.failedAfterStart: + case ZCoinActivationFailureReason.failedOther: + return localisations.weFailedTo(tag); + + case ZCoinActivationFailureReason.failedToCancel: + return localisations.failedToCancelActivation(tag); + + case ZCoinActivationFailureReason.cancelled: + return localisations.coinActivationCancelled(tag); + + default: + return localisations.weFailedTo(tag); + } + } } Future> _showConfirmationDialog(BuildContext context) { - final appL10n = AppLocalizations.of(context); - SyncType _syncType = SyncType.newTransactions; DateTime _lastDate = DateTime.now().subtract(Duration(days: 1)); DateTime _selectedDate = _lastDate; + final localisations = AppLocalizations.of(context); + return showDialog>( context: context, barrierDismissible: false, @@ -235,7 +257,9 @@ Future> _showConfirmationDialog(BuildContext context) { return StatefulBuilder( builder: (BuildContext context, StateSetter setState) { return AlertDialog( - title: Text('Scan for past Z-Coin (ZHTLC) transactions?'), + title: Text( + localisations.syncTransactionsQuestion(localisations.tagZHTLC), + ), shape: RoundedRectangleBorder( borderRadius: BorderRadius.circular(10), side: BorderSide( @@ -245,12 +269,8 @@ Future> _showConfirmationDialog(BuildContext context) { content: SingleChildScrollView( child: ListBody( children: [ - Text( - 'You have selected to activate a ZHTLC asset. Which transactions would you like to sync?', - ), - // Radio list tiles RadioListTile( - title: const Text('Sync new transactions'), + title: Text(localisations.syncNewTransactions), value: SyncType.newTransactions, groupValue: _syncType, onChanged: (SyncType value) { @@ -260,7 +280,7 @@ Future> _showConfirmationDialog(BuildContext context) { }, ), RadioListTile( - title: const Text('Sync from specified date'), + title: Text(localisations.syncFromDate), value: SyncType.specifiedDate, groupValue: _syncType, onChanged: (SyncType value) { @@ -269,73 +289,72 @@ Future> _showConfirmationDialog(BuildContext context) { }); }, ), - RadioListTile( - title: const Text('Sync from sapling activation'), - value: SyncType.fullSync, - groupValue: _syncType, - onChanged: (SyncType value) { - setState(() { - _syncType = value; - }); - }, + + // Date Picker shown if sync type is specified date + AnimatedContainer( + height: _syncType == SyncType.specifiedDate ? 80 : 0, + duration: Duration(milliseconds: 300), + curve: Curves.easeInOut, + child: ClipRRect( + child: Column( + children: [ + ElevatedButton( + onPressed: () async { + final DateTime pickedDate = await showDatePicker( + context: context, + initialDate: _selectedDate, + firstDate: DateTime(2000), + lastDate: DateTime.now(), + ); + if (pickedDate != null && + pickedDate != _selectedDate) + setState(() { + _selectedDate = pickedDate; + }); + }, + child: Text(localisations.selectDate), + ), + // Display the selected date + Text( + '${localisations.startDate}: ' + "${DateFormat('yyyy-MM-dd').format(_selectedDate)}", + ), + ], + ), + ), ), - // Date Picker - _syncType == SyncType.specifiedDate - ? Column( - children: [ - ElevatedButton( - onPressed: () async { - final DateTime pickedDate = - await showDatePicker( - context: context, - initialDate: _selectedDate, - firstDate: DateTime(2000), - lastDate: DateTime.now(), - ); - if (pickedDate != null && - pickedDate != _selectedDate) - setState(() { - _selectedDate = pickedDate; - }); - }, - child: Text('Select Date'), - ), - // Display the selected date - Text( - "Start Date: ${DateFormat('yyyy-MM-dd').format(_selectedDate)}", - ), - ], - ) - : SizedBox.shrink(), + if (settingsBloc.enableTestCoins) + RadioListTile( + title: Text(localisations.syncFromSaplingActivation), + value: SyncType.fullSync, + groupValue: _syncType, + onChanged: (SyncType value) { + setState(() { + _syncType = value; + }); + }, + ), SizedBox(height: 16), // Sync Type Description if (_syncType == SyncType.newTransactions) - Text( - 'Your wallet will show future transactions made after activation associated with your public key.', - ), + Text(localisations.futureTransactions), + if (_syncType == SyncType.fullSync) - Text( - 'Your wallet will show all past transactions associated with your public key. This will take significant storage and time as all blocks will be downloaded and scanned.', - ), + Text(localisations.allPastTransactions), + if (_syncType == SyncType.specifiedDate) - Text( - 'Your wallet will show all past transactions associated with your public key made after the specified date.', - ), + Text(localisations.pastTransactionsFromDate), if (Platform.isIOS) ...[ SizedBox(height: 16), - ListTile( - leading: Icon( - Icons.warning, - color: Colors.amber, - ), - dense: true, - title: Text( - 'Warning: Minimizing the app on iOS will terminate the activation process.', - style: TextStyle(color: Colors.amber), - ), - ) + Text( + localisations.minimizingWillTerminate, + style: Theme.of(context) + .textTheme + .bodyText2 + .copyWith(color: Colors.amber), + ), ], if (_syncType == SyncType.fullSync || _syncType == SyncType.specifiedDate) @@ -354,16 +373,14 @@ Future> _showConfirmationDialog(BuildContext context) { child: Padding( padding: EdgeInsets.all(8), child: Row( - children: const [ + children: [ Icon( Icons.warning, color: Colors.amber, ), SizedBox(width: 8), Expanded( - child: Text( - 'This will take a while and the app must be kept in the foreground. Terminating the app while activation is in progress could lead to issues.', - ), + child: Text(localisations.willTakeTime), ), ], ), @@ -378,7 +395,7 @@ Future> _showConfirmationDialog(BuildContext context) { TextButton( onPressed: () => Navigator.pop>(context, null), - child: Text(appL10n.cancelButton), + child: Text(localisations.cancelButton), ), TextButton( onPressed: () => Navigator.pop>( @@ -388,7 +405,7 @@ Future> _showConfirmationDialog(BuildContext context) { 'zhtlcSyncStartDate': _selectedDate }, ), - child: Text(appL10n.confirm), + child: Text(localisations.confirm), ), ], ); @@ -398,84 +415,115 @@ Future> _showConfirmationDialog(BuildContext context) { ); } -void _showInProgressDialog(BuildContext context) { - showDialog( +Future _showInProgressDialog(BuildContext context) async { + return showDialog( context: context, builder: (context) { - final state = - context.watch().state.asProgressOrNull(); - - if (state == null) { - WidgetsBinding.instance.addPostFrameCallback((_) { - Navigator.pop(context); - }); - return Container(); - } + return BlocConsumer( + listener: (context, state) { + final progressState = state.asProgressOrNull(); - final appL10n = AppLocalizations.of(context); + if (progressState == null || progressState.progress >= 1) { + Navigator.of(context, rootNavigator: true).maybePop(); + } + }, + listenWhen: (previous, current) => previous != current, + builder: (context, s) { + final state = s.asProgressOrNull(); - final etaString = state?.eta?.inMinutes == null - ? appL10n.loading - : '${state.eta.inMinutes}${appL10n.minutes}'; - return AlertDialog( - title: Text('${appL10n.warning}: ZHLTC Activation in Progress'), - content: Column( - mainAxisSize: MainAxisSize.min, - children: [ - if (!ZCoinProgressNotifications.canNotify) ...[ - Text( - 'Please enable notifications to get updates on the activation progress.', - style: TextStyle(color: Colors.amber), - ), - SizedBox(height: 16), - ], - Text( - 'This will take a while and the app must be kept in the foreground.' - 'Closing the app while activation is in progress could lead to issues.', - ), - SizedBox(height: 16), - Text( - '${appL10n.rewardsTableTime}: $etaString', - ), - SizedBox(height: 16), - Text( - '${appL10n.swapProgress}: ${(state.progress * 100).round()}%', + if (state == null || state.progress >= 1) { + Navigator.of(context, rootNavigator: true).maybePop(); + return Container(); + } + + final localisations = AppLocalizations.of(context); + + final etaString = state?.eta?.inMinutes != null + ? '${state.eta.inMinutes}${localisations.minutes}' + : kDebugMode + ? '¯\\_(ツ)_/¯' + : null; + return AlertDialog( + title: Text( + '${localisations.warning}: ' + '${localisations.activationInProgress(localisations.tagZHTLC)}', ), - SizedBox(height: 4), - LinearProgressIndicator( - value: state.progress, + content: Column( + mainAxisSize: MainAxisSize.min, + children: [ + if (!ZCoinProgressNotifications.canNotify) ...[ + Text( + localisations.enableNotificationsForActivationProgress, + style: TextStyle(color: Colors.amber), + ), + SizedBox(height: 16), + ], + Text(localisations.willTakeTime), + SizedBox(height: 16), + if (etaString != null) ...[ + Text('${localisations.rewardsTableTime}: $etaString'), + SizedBox(height: 16), + ], + Text( + '${localisations.swapProgress}: ${(state.progress * 100).round()}%', + ), + SizedBox(height: 8), + AnimatedLinearProgressIndicator( + key: Key('z_coin_status_linear_progress_indicator'), + value: state.progress, + ), + ], ), - ], - ), - actions: [ + actions: [ + if (!state.isResync) + TextButton( + onPressed: () => + _showConfirmCancelActivationDialog(context).ignore(), + child: Text( + localisations.cancelActivation, + style: DefaultTextStyle.of(context) + .style + .copyWith(color: Theme.of(context).errorColor), + ), + ), + TextButton( + onPressed: () => Navigator.pop(context), + child: Text(localisations.close), + ), + ], + ); + }, + ); + }, + ); +} + +Future _showConfirmCancelActivationDialog(BuildContext context) async { + final localisations = AppLocalizations.of(context); + + return showDialog( + context: context, + builder: (BuildContext context) { + return AlertDialog( + title: Text(localisations.cancelActivation), + content: Text(localisations.cancelActivationQuestion), + actions: [ TextButton( + child: Text(localisations.close), onPressed: () { - showConfirmationDialog( - context: context, - title: 'Stop Activation', - message: - 'Are you sure you want to stop the activation process?', - onConfirm: () { - context - .read() - .add(ZCoinActivationCancelRequested()); - }, - confirmButtonText: 'Stop', - ); + Navigator.of(context).pop(false); }, - child: Text('Stop'), ), - TextButton( - onPressed: () => Navigator.pop(context), - child: Text(appL10n.close), + ElevatedButton( + child: Text(localisations.confirm), + onPressed: () { + context + .read() + .add(ZCoinActivationCancelRequested()); + Navigator.of(context).pop(true); + }, ), ], - shape: RoundedRectangleBorder( - borderRadius: BorderRadius.circular(10), - side: BorderSide( - color: Theme.of(context).colorScheme.error, - ), - ), ); }, ); diff --git a/lib/screens/dex/orders/swap/final_trade_success.dart b/lib/screens/dex/orders/swap/final_trade_success.dart index 552b6dbed..8fc3b089a 100644 --- a/lib/screens/dex/orders/swap/final_trade_success.dart +++ b/lib/screens/dex/orders/swap/final_trade_success.dart @@ -164,7 +164,7 @@ class _FinalTradeSuccessState extends State final otherCoin = myInfo['otherCoin']; final shareText = "I've just atomic swapped $myCoin/$otherCoin" - ' on my phone! You can try it too: https://atomicdex.io\n' + ' on my phone! You can try it too: https://komodoplatform.com\n' '#blockchain #dex #atomicdex #komodoplatform #atomicswap'; await Share.shareFiles( diff --git a/lib/screens/dex/trade/build_detailed_fees.dart b/lib/screens/dex/trade/build_detailed_fees.dart index 3d017b091..b2c7fa3b0 100644 --- a/lib/screens/dex/trade/build_detailed_fees.dart +++ b/lib/screens/dex/trade/build_detailed_fees.dart @@ -318,7 +318,7 @@ class _BuildDetailedFeesState extends State { items.add(Container( padding: EdgeInsets.fromLTRB(8, 2, 4, 2), child: Text( - '• None', + '• ${AppLocalizations.of(context).none}', style: Theme.of(context).textTheme.caption, ), )); diff --git a/lib/screens/dex/trade/pro/confirm/protection_control.dart b/lib/screens/dex/trade/pro/confirm/protection_control.dart index d51bb6737..2f70327e8 100644 --- a/lib/screens/dex/trade/pro/confirm/protection_control.dart +++ b/lib/screens/dex/trade/pro/confirm/protection_control.dart @@ -58,7 +58,7 @@ class _ProtectionControlState extends State { Padding( padding: const EdgeInsets.symmetric(horizontal: 30.0), child: Text( - 'Incoming ${widget.coin.abbr} txs protection settings:', + '${AppLocalizations.of(context).incomingTransactionsProtectionSettings(widget.coin.abbr)}:', textAlign: TextAlign.center, style: Theme.of(context).textTheme.bodyText1, ), diff --git a/lib/screens/dex/trade/pro/create/receive/matching_bids_page.dart b/lib/screens/dex/trade/pro/create/receive/matching_bids_page.dart index 7eddbe35d..67e0531ef 100644 --- a/lib/screens/dex/trade/pro/create/receive/matching_bids_page.dart +++ b/lib/screens/dex/trade/pro/create/receive/matching_bids_page.dart @@ -152,7 +152,8 @@ class _MatchingBidsPageState extends State { mainAxisAlignment: MainAxisAlignment.end, children: [ Text( - 'Showing $_listLimit of ${max(_listLength, _listLimit)} orders. ', + AppLocalizations.of(context) + .showingOrders(_listLimit, max(_listLength, _listLimit)), style: Theme.of(context).textTheme.bodyText1, ), if (_listLimit > _listLimitMin) diff --git a/lib/screens/dex/trade/pro/evaluation.dart b/lib/screens/dex/trade/pro/evaluation.dart index ff722b81f..fb1bae1d3 100644 --- a/lib/screens/dex/trade/pro/evaluation.dart +++ b/lib/screens/dex/trade/pro/evaluation.dart @@ -147,7 +147,7 @@ class _EvaluationState extends State { CexMarker(context, size: Size.fromRadius(6)), SizedBox(width: 2), Text( - 'CEX Rate: 1 $_sellAbbr = ' + '${AppLocalizations.of(context).cexRate}: 1 $_sellAbbr = ' '${cutTrailingZeros(formatPrice(_cexRate))} $_buyAbbr', style: TextStyle( fontSize: 12, diff --git a/lib/screens/dex/trade/simple/build_detailed_fees_simple.dart b/lib/screens/dex/trade/simple/build_detailed_fees_simple.dart index 51d863cd7..38fa69092 100644 --- a/lib/screens/dex/trade/simple/build_detailed_fees_simple.dart +++ b/lib/screens/dex/trade/simple/build_detailed_fees_simple.dart @@ -237,7 +237,7 @@ class _BuildDetailedFeesState extends State { '• ${cutTrailingZeros(formatPrice(_sellTxFee.amount))} ' '${_sellTxFee.coin} ' '(${_cexProvider.convert(double.tryParse(_sellTxFee.amount), from: _sellTxFee.coin)}): ' - 'send $_sellCoin tx fee', + '${AppLocalizations.of(context).detailedFeesSendCoinTransactionFee(_sellCoin)}', style: Theme.of(context).textTheme.caption, ), ), @@ -248,7 +248,7 @@ class _BuildDetailedFeesState extends State { '• ${cutTrailingZeros(formatPrice(_receiveTxFee.amount))} ' '${_receiveTxFee.coin} ' '(${_cexProvider.convert(double.tryParse(_receiveTxFee.amount), from: _receiveTxFee.coin)}): ' - 'receive $_receiveCoin tx fee', + '${AppLocalizations.of(context).detailedFeesReceiveCoinTransactionFee(_receiveCoin)}', style: Theme.of(context).textTheme.caption, ), ), @@ -259,7 +259,7 @@ class _BuildDetailedFeesState extends State { '• ${cutTrailingZeros(formatPrice(_dexFee.amount))} ' '${_dexFee.coin} ' '(${_cexProvider.convert(double.tryParse(_dexFee.amount), from: _dexFee.coin)}): ' - 'trading fee', + '${AppLocalizations.of(context).detailedFeesTradingFee}', style: Theme.of(context).textTheme.caption, ), ), @@ -270,7 +270,7 @@ class _BuildDetailedFeesState extends State { '• ${cutTrailingZeros(formatPrice(_feeToSendDexFee.amount))} ' '${_feeToSendDexFee.coin} ' '(${_cexProvider.convert(double.tryParse(_feeToSendDexFee.amount), from: _feeToSendDexFee.coin)}): ' - 'send trading fee tx fee', + '${AppLocalizations.of(context).detailedFeesSendTradingFeeTransactionFee}', style: Theme.of(context).textTheme.caption, ), ), @@ -288,7 +288,7 @@ class _BuildDetailedFeesState extends State { '• ${cutTrailingZeros(formatPrice(_sellTxFee.amount))} ' '${_sellTxFee.coin} ' '(${_cexProvider.convert(double.tryParse(_sellTxFee.amount), from: _sellTxFee.coin)}): ' - 'send $_sellCoin tx fee', + '${AppLocalizations.of(context).detailedFeesSendCoinTransactionFee(_sellCoin)}', style: Theme.of(context).textTheme.caption, ), )); @@ -300,7 +300,7 @@ class _BuildDetailedFeesState extends State { '• ${cutTrailingZeros(formatPrice(_receiveTxFee.amount))} ' '${_receiveTxFee.coin} ' '(${_cexProvider.convert(double.tryParse(_receiveTxFee.amount), from: _receiveTxFee.coin)}): ' - 'receive $_receiveCoin tx fee', + '${AppLocalizations.of(context).detailedFeesReceiveCoinTransactionFee(_receiveCoin)}', style: Theme.of(context).textTheme.caption, ), )); @@ -312,7 +312,7 @@ class _BuildDetailedFeesState extends State { '• ${cutTrailingZeros(formatPrice(_dexFee.amount))} ' '${_dexFee.coin} ' '(${_cexProvider.convert(double.tryParse(_dexFee.amount), from: _dexFee.coin)}): ' - 'trading fee', + '${AppLocalizations.of(context).detailedFeesTradingFee}', style: Theme.of(context).textTheme.caption, ), )); @@ -324,7 +324,7 @@ class _BuildDetailedFeesState extends State { '• ${cutTrailingZeros(formatPrice(_feeToSendDexFee.amount))} ' '${_feeToSendDexFee.coin} ' '(${_cexProvider.convert(double.tryParse(_feeToSendDexFee.amount), from: _feeToSendDexFee.coin)}): ' - 'send trading fee tx fee', + '${AppLocalizations.of(context).detailedFeesSendTradingFeeTransactionFee}', style: Theme.of(context).textTheme.caption, ), )); @@ -333,7 +333,7 @@ class _BuildDetailedFeesState extends State { items.add(Container( padding: EdgeInsets.fromLTRB(8, 2, 4, 2), child: Text( - '• None', + '• ${AppLocalizations.of(context).none}', style: Theme.of(context).textTheme.caption, ), )); diff --git a/lib/screens/dex/trade/simple/confirm/swap_confirmation_page_simple.dart b/lib/screens/dex/trade/simple/confirm/swap_confirmation_page_simple.dart index 24596a937..adb96fb00 100644 --- a/lib/screens/dex/trade/simple/confirm/swap_confirmation_page_simple.dart +++ b/lib/screens/dex/trade/simple/confirm/swap_confirmation_page_simple.dart @@ -518,7 +518,7 @@ class _SwapConfirmationPageSimpleState borderRadius: BorderRadius.circular(30.0), ), ), - child: Text('Start Swap !'.toUpperCase()), + child: Text(AppLocalizations.of(context).startSwap), ), ), ], diff --git a/lib/screens/dex/trade/simple/create/coins_list.dart b/lib/screens/dex/trade/simple/create/coins_list.dart index 31194b0b1..914e908bf 100644 --- a/lib/screens/dex/trade/simple/create/coins_list.dart +++ b/lib/screens/dex/trade/simple/create/coins_list.dart @@ -57,32 +57,34 @@ class _CoinsListState extends State { children: [ if (widget.type == Market.BUY) ...{ Container( - padding: EdgeInsets.only(bottom: 5), - child: Icon( - Icons.arrow_left, - color: Theme.of(context).textTheme.bodyText1.color, - )), + padding: EdgeInsets.only(bottom: 5), + child: Icon( + Icons.arrow_left, + color: Theme.of(context).textTheme.bodyText1.color, + ), + ), }, Expanded( child: Container( - height: 106, - padding: EdgeInsets.fromLTRB(0, 10, 0, 4), - alignment: Alignment(0, 1), - child: Text( - message, - textAlign: widget.type == Market.BUY - ? TextAlign.left - : TextAlign.right, - style: Theme.of(context).textTheme.bodyText1, - )), + height: 106, + padding: EdgeInsets.fromLTRB(0, 10, 0, 4), + alignment: Alignment(0, 1), + child: Text( + message, + textAlign: + widget.type == Market.BUY ? TextAlign.left : TextAlign.right, + style: Theme.of(context).textTheme.bodyText1, + ), + ), ), if (widget.type == Market.SELL) ...{ Container( - padding: EdgeInsets.only(bottom: 5), - child: Icon( - Icons.arrow_right, - color: Theme.of(context).textTheme.bodyText1.color, - )), + padding: EdgeInsets.only(bottom: 5), + child: Icon( + Icons.arrow_right, + color: Theme.of(context).textTheme.bodyText1.color, + ), + ), SizedBox(width: 6), } ], diff --git a/lib/screens/dex/trade/trade_modes_page.dart b/lib/screens/dex/trade/trade_modes_page.dart index 56effb02a..42dd866c3 100644 --- a/lib/screens/dex/trade/trade_modes_page.dart +++ b/lib/screens/dex/trade/trade_modes_page.dart @@ -71,11 +71,13 @@ class _TradeModesPageState extends State indicatorPadding: EdgeInsets.symmetric(horizontal: 0), tabs: [ Tab( - child: Text('Simple', style: style), + child: + Text(AppLocalizations.of(context).simple, style: style), key: const Key('simple-tab'), ), Tab( - child: Text('Advanced', style: style), + child: Text(AppLocalizations.of(context).advanced, + style: style), key: const Key('advanced-tab'), ), Tab( diff --git a/lib/screens/feed/news/news_tab.dart b/lib/screens/feed/news/news_tab.dart index 3b468d8c5..c5e871b96 100644 --- a/lib/screens/feed/news/news_tab.dart +++ b/lib/screens/feed/news/news_tab.dart @@ -1,9 +1,11 @@ import 'package:flutter/material.dart'; import 'package:komodo_dex/packages/rebranding/rebranding_dialog.dart'; +import 'package:komodo_dex/packages/rebranding/rebranding_provider.dart'; +import 'package:provider/provider.dart'; + import '../../../localizations.dart'; import '../../../model/feed_provider.dart'; import '../../feed/news/build_news_item.dart'; -import 'package:provider/provider.dart'; class NewsTab extends StatefulWidget { @override @@ -19,6 +21,8 @@ class _NewsTabState extends State { _feedProvider = Provider.of(context); _news = _feedProvider.getNews(); + final rebrandingProvider = context.watch(); + WidgetsBinding.instance.addPostFrameCallback((_) { if (_feedProvider.hasNewItems) { _feedProvider.hasNewItems = false; @@ -48,7 +52,8 @@ class _NewsTabState extends State { return Column( children: [ - RebrandingDialog(isModal: false), + if (rebrandingProvider.shouldShowRebrandingNews) + RebrandingDialog(isModal: false), _buildUpdateIndicator(), Expanded( child: RefreshIndicator( @@ -81,11 +86,7 @@ class _NewsTabState extends State { padding: const EdgeInsets.symmetric(horizontal: 8, vertical: 8), itemCount: _news.length, itemBuilder: (BuildContext context, int i) { - return Column( - children: [ - BuildNewsItem(_news[i]), - ], - ); + return BuildNewsItem(_news[i]); }), ), ), diff --git a/lib/screens/markets/build_coin_price_list_item.dart b/lib/screens/markets/build_coin_price_list_item.dart index 72c75056a..e496f4bab 100644 --- a/lib/screens/markets/build_coin_price_list_item.dart +++ b/lib/screens/markets/build_coin_price_list_item.dart @@ -212,7 +212,7 @@ class _BuildCoinPriceListItemState extends State { return [ const SizedBox(width: 4), Text( - '(based on ${widget.coinBalance.coin.abbr}/$mediateBase)', + '(${AppLocalizations.of(context).basedOnCoinRatio(widget.coinBalance.coin.abbr, mediateBase)})', style: TextStyle( fontSize: 12, color: diff --git a/lib/screens/markets/order_book_page.dart b/lib/screens/markets/order_book_page.dart index 892649d65..ae0ecd321 100644 --- a/lib/screens/markets/order_book_page.dart +++ b/lib/screens/markets/order_book_page.dart @@ -330,7 +330,8 @@ class _OrderBookPageState extends State { mainAxisAlignment: MainAxisAlignment.end, children: [ Text( - 'Showing $listLimit of ${max(listLength, listLimit)} orders. ', + AppLocalizations.of(context) + .showingOrders(listLimit, max(listLength, listLimit)), style: Theme.of(context).textTheme.bodyText1, ), if (listLimit > listLimitMin) @@ -343,7 +344,7 @@ class _OrderBookPageState extends State { child: Container( padding: EdgeInsets.all(6), child: Text( - 'Less', + AppLocalizations.of(context).orderBookLess, style: TextStyle( fontSize: 14, color: Theme.of(context).colorScheme.secondary, @@ -360,7 +361,7 @@ class _OrderBookPageState extends State { child: Container( padding: EdgeInsets.all(6), child: Text( - 'More', + AppLocalizations.of(context).orderBookMore, style: TextStyle( fontSize: 14, color: Theme.of(context).colorScheme.secondary, diff --git a/lib/screens/portfolio/activate/select_coins_page.dart b/lib/screens/portfolio/activate/select_coins_page.dart index cfd3f018b..d2761ea6b 100644 --- a/lib/screens/portfolio/activate/select_coins_page.dart +++ b/lib/screens/portfolio/activate/select_coins_page.dart @@ -329,6 +329,8 @@ class _SelectCoinsPageState extends State { } void _pressDoneButton() async { + final localisations = AppLocalizations.of(context); + final numCoinsEnabled = coinsBloc.coinBalance.length; final numCoinsTryingEnable = coinsBloc.coinBeforeActivation.where((c) => c.isActive).toList().length; @@ -341,23 +343,22 @@ class _SelectCoinsPageState extends State { context: context, builder: (BuildContext context) { return CustomSimpleDialog( - title: - Text(AppLocalizations.of(context).enablingTooManyAssetsTitle), + title: Text(localisations.enablingTooManyAssetsTitle), children: [ - Text(AppLocalizations.of(context).enablingTooManyAssetsSpan1 + + Text(localisations.enablingTooManyAssetsSpan1 + numCoinsEnabled.toString() + - AppLocalizations.of(context).enablingTooManyAssetsSpan2 + + localisations.enablingTooManyAssetsSpan2 + numCoinsTryingEnable.toString() + - AppLocalizations.of(context).enablingTooManyAssetsSpan3 + + localisations.enablingTooManyAssetsSpan3 + maxCoinPerPlatform.toString() + - AppLocalizations.of(context).enablingTooManyAssetsSpan4), + localisations.enablingTooManyAssetsSpan4), SizedBox(height: 12), Row( mainAxisAlignment: MainAxisAlignment.end, children: [ ElevatedButton( onPressed: () => dialogBloc.closeDialog(context), - child: Text(AppLocalizations.of(context).warningOkBtn), + child: Text(localisations.warningOkBtn), ), ], ), @@ -373,9 +374,8 @@ class _SelectCoinsPageState extends State { ScaffoldMessenger.maybeOf(context)?.showSnackBar( SnackBar( content: Text( - // AppLocalizations.of(context).zCoinActivationNotAcceptedTitle, - 'Coin Activation Cancelled\n' - 'Please accept all activation requests to continue or deselect coins to activate.', + '${localisations.activationCancelled}\n' + '${localisations.pleaseAcceptAllCoinActivationRequests}', ), duration: const Duration(seconds: 2), ), diff --git a/lib/screens/portfolio/add_coin_button.dart b/lib/screens/portfolio/add_coin_button.dart deleted file mode 100644 index 4cd56c688..000000000 --- a/lib/screens/portfolio/add_coin_button.dart +++ /dev/null @@ -1,164 +0,0 @@ -import 'dart:async'; -import 'dart:io'; - -import 'package:flutter/material.dart'; -import '../../../../blocs/coins_bloc.dart'; -import '../../../../blocs/dialog_bloc.dart'; -import '../../../../blocs/main_bloc.dart'; -import '../../../../localizations.dart'; -import '../../../../app_config/app_config.dart'; -import '../../../../model/coin.dart'; -import '../portfolio/activate/select_coins_page.dart'; -import '../../../../services/db/database.dart'; -import '../../../../widgets/custom_simple_dialog.dart'; -import '../../widgets/primary_button.dart'; - -class AddCoinButton extends StatelessWidget { - const AddCoinButton( - {Key key, - this.isCollapsed = false, - this.hideAddCoinLoading = false, - this.onShowAddCoinLoading}) - : super(key: key); - - final bool isCollapsed; - final bool hideAddCoinLoading; - final VoidCallback onShowAddCoinLoading; - - @override - Widget build(BuildContext context) { - return StreamBuilder( - initialData: coinsBloc.currentActiveCoin, - stream: coinsBloc.outcurrentActiveCoin, - builder: - (BuildContext context, AsyncSnapshot snapshot) { - bool isLoading = snapshot.data != null; - if (isLoading && !hideAddCoinLoading) { - return isCollapsed - ? Container( - alignment: Alignment.center, - padding: const EdgeInsets.all(12), - child: AspectRatio( - aspectRatio: 1, - child: CircularProgressIndicator(), - ), - ) - : Column( - mainAxisSize: MainAxisSize.min, - mainAxisAlignment: MainAxisAlignment.center, - children: [ - const SizedBox( - height: 8, - ), - const CircularProgressIndicator(), - const SizedBox( - height: 8, - ), - Text(snapshot.data.currentStatus ?? - AppLocalizations.of(context).connecting), - const SizedBox( - height: 8, - ), - ], - ); - } else { - return FutureBuilder( - future: _buildAddCoinButton(), - builder: (BuildContext context, AsyncSnapshot snapshot) { - final hasCoinsToAdd = snapshot.data; - - if (hasCoinsToAdd ?? false) { - if (isCollapsed) - return Center( - child: OutlinedButton( - style: Theme.of(context) - .outlinedButtonTheme - .style - .copyWith( - shape: MaterialStateProperty.all( - const CircleBorder(), - ), - ), - key: const Key('add-coins-button-collapse'), - onPressed: () => _showAddCoinPage(context, isLoading), - child: Icon(Icons.add), - ), - ); - - return PrimaryButton( - key: const Key('add-coins-button'), - icon: Icon(Icons.add), - text: AppLocalizations.of(context).addCoin, - onPressed: () => _showAddCoinPage(context, isLoading), - ); - } else { - return SizedBox(); - } - }, - ); - } - }); - } - - void _showAddCoinPage(BuildContext context, bool isLoading) { - if (isLoading && hideAddCoinLoading && onShowAddCoinLoading != null) { - onShowAddCoinLoading(); - return; - } - - if (mainBloc.networkStatus != NetworkStatus.Online) { - ScaffoldMessenger.of(context).showSnackBar(SnackBar( - duration: const Duration(seconds: 2), - backgroundColor: Theme.of(context).errorColor, - content: Text(AppLocalizations.of(context).noInternet), - )); - } else { - final numCoinsEnabled = coinsBloc.coinBalance.length; - final maxCoinPerPlatform = Platform.isAndroid - ? appConfig.maxCoinsEnabledAndroid - : appConfig.maxCoinEnabledIOS; - if (numCoinsEnabled >= maxCoinPerPlatform) { - dialogBloc.closeDialog(context); - dialogBloc.dialog = showDialog( - context: context, - builder: (BuildContext context) { - return CustomSimpleDialog( - title: - Text(AppLocalizations.of(context).tooManyAssetsEnabledTitle), - children: [ - Text(AppLocalizations.of(context).tooManyAssetsEnabledSpan1 + - numCoinsEnabled.toString() + - AppLocalizations.of(context).tooManyAssetsEnabledSpan2 + - maxCoinPerPlatform.toString() + - AppLocalizations.of(context).tooManyAssetsEnabledSpan3), - SizedBox(height: 12), - Row( - mainAxisAlignment: MainAxisAlignment.end, - children: [ - ElevatedButton( - onPressed: () => dialogBloc.closeDialog(context), - child: Text(AppLocalizations.of(context).warningOkBtn), - ), - ], - ), - ], - ); - }, - ).then((dynamic _) => dialogBloc.dialog = null); - } else { - Navigator.push( - context, - MaterialPageRoute( - builder: (BuildContext context) => const SelectCoinsPage()), - ); - } - } - } - - /// Returns `true` if there are coins we can still activate, `false` if all of them activated. - Future _buildAddCoinButton() async { - final active = await Db.activeCoins; - final known = await coins; - return active.length < known.length; - } -} diff --git a/lib/screens/portfolio/add_coin_fab.dart b/lib/screens/portfolio/add_coin_fab.dart new file mode 100644 index 000000000..82320b14b --- /dev/null +++ b/lib/screens/portfolio/add_coin_fab.dart @@ -0,0 +1,147 @@ +import 'dart:async'; +import 'dart:io'; + +import 'package:flutter/material.dart'; +import 'package:komodo_dex/widgets/eager_floating_action_button.dart'; + +import '../../../../app_config/app_config.dart'; +import '../../../../blocs/coins_bloc.dart'; +import '../../../../blocs/dialog_bloc.dart'; +import '../../../../blocs/main_bloc.dart'; +import '../../../../localizations.dart'; +import '../../../../model/coin.dart'; +import '../../../../services/db/database.dart'; +import '../../../../widgets/custom_simple_dialog.dart'; +import '../portfolio/activate/select_coins_page.dart'; + +class AddCoinFab extends StatefulWidget { + const AddCoinFab({Key key}) : super(key: key); + + @override + _AddCoinFabState createState() => _AddCoinFabState(); +} + +class _AddCoinFabState extends State { + bool _areCoinsLoading = true; + StreamSubscription _coinSubscription; + + @override + void initState() { + super.initState(); + + if (coinsBloc.currentActiveCoin == null) { + setState(() => _areCoinsLoading = false); + } else { + _coinSubscription = coinsBloc.outcurrentActiveCoin.listen( + (coinData) { + setState(() { + _areCoinsLoading = coinData != null; + }); + _showAddCoinPageIfNeeded(); + }, + cancelOnError: false, + ); + } + } + + void _showAddCoinPageIfNeeded() async { + if (!mounted) return; + + bool hasCoinsToAdd = await _userHasInactiveCoins(); + + if (_areCoinsLoading && hasCoinsToAdd) { + _showAddCoinPage(context, _areCoinsLoading); + } + } + + @override + Widget build(BuildContext context) { + return FutureBuilder( + future: _userHasInactiveCoins(), + builder: (context, snapshot) { + bool hasCoinsToAdd = snapshot.data ?? true; + + return EagerFloatingActionButton( + onTap: () => _onPressed(context), + isReady: !_areCoinsLoading, + child: + Icon(hasCoinsToAdd == false ? Icons.do_not_disturb : Icons.add), + ); + }, + ); + } + + void _onPressed(BuildContext context) { + _showAddCoinPage(context, _areCoinsLoading); + } + + void _showAddCoinPage(BuildContext context, bool isLoading) { + if (mainBloc.networkStatus != NetworkStatus.Online) { + ScaffoldMessenger.of(context).showSnackBar( + SnackBar( + duration: const Duration(seconds: 2), + backgroundColor: Theme.of(context).errorColor, + content: Text(AppLocalizations.of(context).noInternet), + ), + ); + } else { + final numCoinsEnabled = coinsBloc.coinBalance.length; + final maxCoinPerPlatform = Platform.isAndroid + ? appConfig.maxCoinsEnabledAndroid + : appConfig.maxCoinEnabledIOS; + if (numCoinsEnabled >= maxCoinPerPlatform) { + dialogBloc.closeDialog(context); + dialogBloc.dialog = showDialog( + context: context, + builder: (BuildContext context) { + return CustomSimpleDialog( + title: + Text(AppLocalizations.of(context).tooManyAssetsEnabledTitle), + children: [ + Text( + AppLocalizations.of(context).tooManyAssetsEnabledSpan1 + + numCoinsEnabled.toString() + + AppLocalizations.of(context).tooManyAssetsEnabledSpan2 + + maxCoinPerPlatform.toString() + + AppLocalizations.of(context).tooManyAssetsEnabledSpan3, + ), + SizedBox(height: 12), + Row( + mainAxisAlignment: MainAxisAlignment.end, + children: [ + ElevatedButton( + onPressed: () => dialogBloc.closeDialog(context), + child: Text(AppLocalizations.of(context).warningOkBtn), + ), + ], + ), + ], + ); + }, + ).then((dynamic _) => dialogBloc.dialog = null); + } else { + WidgetsBinding.instance.addPostFrameCallback((_) { + dialogBloc.closeDialog(context); + Navigator.push( + context, + MaterialPageRoute( + builder: (BuildContext context) => const SelectCoinsPage(), + ), + ); + }); + } + } + } + + Future _userHasInactiveCoins() async { + final active = await Db.activeCoins; + final known = await coins; + return active.length < known.length; + } + + @override + void dispose() { + _coinSubscription?.cancel(); + super.dispose(); + } +} diff --git a/lib/screens/portfolio/animated_asset_proportions_graph.dart b/lib/screens/portfolio/animated_asset_proportions_graph.dart new file mode 100644 index 000000000..925608d0c --- /dev/null +++ b/lib/screens/portfolio/animated_asset_proportions_graph.dart @@ -0,0 +1,91 @@ +import 'dart:async'; + +import 'package:flutter/material.dart'; +import 'package:komodo_dex/blocs/coins_bloc.dart'; +import 'package:komodo_dex/model/coin_balance.dart'; + +/// Horizontal bar-graph widget that shows the proportion of the value of each +/// asset in the user's wallet according to the fiat USD value. +/// +/// The width of each asset animates when the user's coin balances change or +/// when the conversion rate of the coins changes. +class AnimatedAssetProportionsBarGraph extends StatefulWidget { + const AnimatedAssetProportionsBarGraph({Key key}) : super(key: key); + + @override + State createState() => + _AnimatedAssetProportionsBarGraphState(); +} + +class _AnimatedAssetProportionsBarGraphState + extends State { + StreamSubscription> _coinsSubscription; + + List data = coinsBloc.coinBalance.toList(); + + static const _animationDuration = Duration(milliseconds: 400); + + @override + void initState() { + super.initState(); + WidgetsBinding.instance.addPostFrameCallback((_) { + _coinsSubscription = coinsBloc.outCoins.listen((newData) { + setState(() => data = newData); + }); + }); + } + + @override + Widget build(BuildContext context) { + final bool _isVisible = data != null; + + final balance = + data.fold(0, (sum, coinBalance) => sum + coinBalance.balanceUSD); + + final barProportions = (data ?? []).where((c) => c.balanceUSD > 0).map((c) { + final widthFraction = ((c.balanceUSD * 100) / balance) / 100; + return MapEntry(c.coin, widthFraction); + }); + + return LayoutBuilder( + key: Key('animated_asset_proportions_bar_graph_layout_builder'), + builder: (context, constraints) { + final totalWidth = constraints.maxWidth; + + final Iterable bars = barProportions.map((e) { + return AnimatedContainer( + key: Key(e.key.abbr), + duration: _animationDuration, + curve: Curves.easeInOut, + color: Color(int.parse(e.key.colorCoin)), + width: totalWidth * e.value, + ); + }); + + return ClipRect( + key: Key('animated_asset_proportions_bar_graph_clip_rect'), + child: AnimatedOpacity( + key: Key( + 'animated_asset_proportions_bar_graph_animated_opacity', + ), + opacity: _isVisible ? 1.0 : 0.0, + duration: _animationDuration, + child: SizedBox( + width: totalWidth, + height: 16, + child: Row( + children: bars.toList(), + ), + ), + ), + ); + }, + ); + } + + @override + void dispose() { + _coinsSubscription.cancel(); + super.dispose(); + } +} diff --git a/lib/screens/portfolio/coin_detail/coin_detail.dart b/lib/screens/portfolio/coin_detail/coin_detail.dart index abe41e1ef..8424134ee 100644 --- a/lib/screens/portfolio/coin_detail/coin_detail.dart +++ b/lib/screens/portfolio/coin_detail/coin_detail.dart @@ -85,7 +85,6 @@ class _CoinDetailState extends State { Transaction latestTransaction; bool isRetryingActivation = false; - ScrollController scrollController = ScrollController(); @override void initState() { @@ -107,10 +106,14 @@ class _CoinDetailState extends State { isLoading = true; }); coinsBloc.updateTransactions(currentCoinBalance, limit, null).then((_) { + final result = coinsBloc.transactionsOrNull?.result; + + if (result?.transactions?.isNotEmpty ?? false) { + fromId = result.transactions.last.internalId; + } + }).whenComplete(() { if (mounted) { - setState(() { - isLoading = false; - }); + setState(() => isLoading = false); } }); coinsBloc.getLatestTransaction(currentCoinBalance).then((Transaction t) { @@ -119,22 +122,53 @@ class _CoinDetailState extends State { super.initState(); _scrollController.addListener(() { - if (_scrollController.position.pixels == - _scrollController.position.maxScrollExtent) { + if (!isTransactionsScrolledToEnd || isLoading) return; + + final blocTransactions = coinsBloc.transactionsOrNull; + + final hasMoreToLoad = blocTransactions.result == null + ? null + : blocTransactions.result.total > + blocTransactions.result.transactions.length; + + if (hasMoreToLoad ?? true) { setState(() { isLoading = true; }); + + final maxScrollBeforeLoading = + _scrollController.position.maxScrollExtent.toDouble(); + coinsBloc .updateTransactions(currentCoinBalance, limit, fromId) .then((_) { - setState(() { - isLoading = false; - }); + final result = coinsBloc.transactionsOrNull?.result; + + if (result?.transactions?.isNotEmpty ?? false) { + fromId = result.transactions.last.internalId; + } + + // Scroll down slightly so that the user is aware that there is new + // content. If the user has scrolled up while loading, they will + // be scrolled back down to the beginning of the new content. + if (_scrollController.hasClients) { + _scrollController.animateTo( + maxScrollBeforeLoading + 40, + duration: const Duration(milliseconds: 400), + curve: Curves.easeInOut, + ); + } + }).whenComplete(() { + if (mounted) setState(() => isLoading = false); }); } }); } + bool get isTransactionsScrolledToEnd => + _scrollController.position.pixels == + _scrollController.position.maxScrollExtent; + @override void dispose() { if (!isDeleteLoading) { @@ -168,7 +202,8 @@ class _CoinDetailState extends State { appBar: AppBar( elevation: elevationHeader, foregroundColor: ThemeData.estimateBrightnessForColor( - Color(int.parse(currentCoinBalance.coin.colorCoin))) == + Color(int.parse(currentCoinBalance.coin.colorCoin)), + ) == Brightness.dark ? Colors.white : Colors.black, @@ -186,7 +221,9 @@ class _CoinDetailState extends State { onPressed: () async { if (currentCoinBalance.coin.isDefault) { await showCantRemoveDefaultCoin( - context, currentCoinBalance.coin); + context, + currentCoinBalance.coin, + ); } else { setState(() { isDeleteLoading = true; @@ -207,9 +244,12 @@ class _CoinDetailState extends State { icon: Icon(Icons.share), onPressed: () async { mainBloc.isUrlLaucherIsOpen = true; - await Share.share(AppLocalizations.of(context).shareAddress( + await Share.share( + AppLocalizations.of(context).shareAddress( currentCoinBalance.coin.name, - currentCoinBalance.balance.address)); + currentCoinBalance.balance.address, + ), + ); }, ) ], @@ -241,23 +281,52 @@ class _CoinDetailState extends State { centerTitle: false, backgroundColor: Color(int.parse(currentCoinBalance.coin.colorCoin)), ), - body: Builder(builder: (BuildContext context) { - mainContext = context; - return ListView( - shrinkWrap: true, - controller: scrollController, - children: [ - if (!currentCoinBalance.coin.suspended) _buildForm(), - _buildHeaderCoinDetail(context), - if (_shouldRefresh && !currentCoinBalance.coin.suspended) - _buildNewTransactionsButton(), - if (!currentCoinBalance.coin.suspended) _buildSyncChain(), - !currentCoinBalance.coin.suspended - ? _buildTransactionsList(context) - : _buildErrorMessage(context) - ], - ); - }), + body: Column( + children: [ + // Don't show the loading bar for the initial load, since there is + // already a circular progress indicator in the place of the list. + if (isLoading && fromId != null) LinearProgressIndicator(), + Expanded( + child: Builder( + builder: (BuildContext context) { + mainContext = context; + + return RefreshIndicator( + backgroundColor: Theme.of(context).colorScheme.background, + color: Theme.of(context).colorScheme.secondary, + key: _refreshIndicatorKey, + onRefresh: _refresh, + child: Scrollbar( + controller: _scrollController, + child: CustomScrollView( + controller: _scrollController, + slivers: [ + if (!currentCoinBalance.coin.suspended) + SliverToBoxAdapter(child: _buildForm()), + SliverToBoxAdapter( + child: _buildHeaderCoinDetail(context), + ), + if (_shouldRefresh && + !currentCoinBalance.coin.suspended) + SliverToBoxAdapter( + child: _buildNewTransactionsButton(), + ), + if (!currentCoinBalance.coin.suspended) + SliverToBoxAdapter(child: _buildSyncChain()), + (currentCoinBalance.coin.suspended) + ? SliverToBoxAdapter( + child: _buildErrorMessage(context), + ) + : _buildTransactionsSliverList(context), + ], + ), + ), + ); + }, + ), + ), + ], + ), ), ); } @@ -274,67 +343,69 @@ class _CoinDetailState extends State { } return StreamBuilder( - stream: coinsBloc.outTransactions, - initialData: coinsBloc.transactions, - builder: (BuildContext context, AsyncSnapshot snapshot) { - if (snapshot.hasData && snapshot.data is Transactions) { - final Transactions tx = snapshot.data; - final String syncState = StateOfSync.InProgress.toString() - .substring(StateOfSync.InProgress.toString().indexOf('.') + 1); - if (tx.result != null && - tx.result.syncStatus != null && - tx.result.syncStatus.state != null) { - timer ??= Timer.periodic(const Duration(seconds: 3), (_) async { - final Transaction t = - await coinsBloc.getLatestTransaction(currentCoinBalance); - - if (_isWaiting) { - _refresh(); - } else if (_scrollController.hasClients && - _scrollController.position.pixels == 0.0) { - _refresh(); - } else if (latestTransaction == null || - latestTransaction.internalId != t.internalId) { - _shouldRefresh = true; - } + stream: coinsBloc.outTransactions, + initialData: coinsBloc.transactions, + builder: (BuildContext context, AsyncSnapshot snapshot) { + if (snapshot.hasData && snapshot.data is Transactions) { + final Transactions tx = snapshot.data; + final String syncState = StateOfSync.InProgress.toString() + .substring(StateOfSync.InProgress.toString().indexOf('.') + 1); + if (tx.result != null && + tx.result.syncStatus != null && + tx.result.syncStatus.state != null) { + timer ??= Timer.periodic(const Duration(seconds: 3), (_) async { + final Transaction t = + await coinsBloc.getLatestTransaction(currentCoinBalance); - latestTransaction = t; - }); - - if (tx.result.syncStatus.state == syncState) { - final String txLeft = tx - .result.syncStatus.additionalInfo.transactionsLeft - .toString(); - - return Container( - padding: - const EdgeInsets.symmetric(vertical: 8, horizontal: 16), - color: Theme.of(context).scaffoldBackgroundColor, - child: Row( - mainAxisAlignment: MainAxisAlignment.spaceBetween, - children: [ - Center( - child: SizedBox( + if (_isWaiting) { + _refresh(); + } else if (_scrollController.hasClients && + _scrollController.position.pixels == 0.0) { + _refresh(); + } else if (latestTransaction == null || + latestTransaction.internalId != t.internalId) { + _shouldRefresh = true; + } + + latestTransaction = t; + }); + + if (tx.result.syncStatus.state == syncState) { + final String txLeft = tx + .result.syncStatus.additionalInfo.transactionsLeft + .toString(); + + return Container( + padding: + const EdgeInsets.symmetric(vertical: 8, horizontal: 16), + color: Theme.of(context).scaffoldBackgroundColor, + child: Row( + mainAxisAlignment: MainAxisAlignment.spaceBetween, + children: [ + Center( + child: SizedBox( height: 20, width: 20, child: const CircularProgressIndicator( strokeWidth: 1, ), - )), - const SizedBox( - width: 8, ), - Text(AppLocalizations.of(context).loading), - Expanded(child: SizedBox()), - Text(AppLocalizations.of(context).txleft(txLeft)), - ], - ), - ); - } + ), + const SizedBox( + width: 8, + ), + Text(AppLocalizations.of(context).loading), + Expanded(child: SizedBox()), + Text(AppLocalizations.of(context).txleft(txLeft)), + ], + ), + ); } } - return SizedBox(); - }); + } + return SizedBox(); + }, + ); } Widget _buildTxExplorerButton(String link) { @@ -370,7 +441,7 @@ class _CoinDetailState extends State { ); } - Widget _buildTransactionsList(BuildContext context) { + Widget _buildTransactionsSliverList(BuildContext context) { List coinsWithoutHist = [ CoinType.hrc, CoinType.ubiq, @@ -380,68 +451,74 @@ class _CoinDetailState extends State { ]; if (coinsWithoutHist.contains(currentCoinBalance.coin.type)) { - return _buildTxExplorerButton( - '${currentCoinBalance.coin.explorerUrl}address/${currentCoinBalance.balance.address}'); + return SliverToBoxAdapter( + child: _buildTxExplorerButton( + '${currentCoinBalance.coin.explorerUrl}address/${currentCoinBalance.balance.address}', + ), + ); } - return RefreshIndicator( - backgroundColor: Theme.of(context).scaffoldBackgroundColor, - color: Theme.of(context).colorScheme.secondary, - key: _refreshIndicatorKey, - onRefresh: _refresh, - child: StreamBuilder( - stream: coinsBloc.outTransactions, - initialData: coinsBloc.transactions, - builder: (BuildContext context, AsyncSnapshot snapshot) { - if (snapshot.connectionState == ConnectionState.waiting) { - _isWaiting = true; - return const Center(child: CircularProgressIndicator()); - } else { - _isWaiting = false; - } - if (snapshot.data is Transactions) { - final Transactions transactions = snapshot.data; - final String syncState = StateOfSync.InProgress.toString() - .substring( - StateOfSync.InProgress.toString().indexOf('.') + 1); - - if (snapshot.hasData && - transactions.result != null && - transactions.result.transactions != null) { - if (transactions.result.transactions.isNotEmpty) { - //@Slyris plz clean up - return ListView.builder( - itemCount: transactions.result.transactions.length, - physics: ClampingScrollPhysics(), - shrinkWrap: true, - itemBuilder: (context, i) => _buildTransactionItem( - transactions.result.transactions[i], - ), - padding: EdgeInsets.symmetric(horizontal: 8, vertical: 8), - controller: _scrollController, - ); - } else if (transactions.result.transactions.isEmpty && - !(transactions.result.syncStatus.state == syncState)) { - return Center( - child: Text( - AppLocalizations.of(context).noTxs, - style: Theme.of(context).textTheme.bodyText1, - )); - } - } - } else if (snapshot.data is ErrorCode && - snapshot.data.error != null) { - return Padding( - padding: const EdgeInsets.all(16.0), - child: Center( - child: Text( - snapshot.data.error.message, + + return StreamBuilder( + key: const Key('transactions-list'), + stream: coinsBloc.outTransactions, + initialData: coinsBloc.transactions, + builder: (BuildContext context, AsyncSnapshot snapshot) { + if (snapshot.connectionState == ConnectionState.waiting) { + _isWaiting = true; + return SliverFillRemaining( + child: const Center(child: CircularProgressIndicator()), + ); + } else { + _isWaiting = false; + } + + if (snapshot.data is Transactions) { + final Transactions transactions = snapshot.data; + final String syncState = StateOfSync.InProgress.toString().substring( + StateOfSync.InProgress.toString().indexOf('.') + 1, + ); + + if (snapshot.hasData && + transactions.result != null && + transactions.result.transactions != null) { + if (transactions.result.transactions.isNotEmpty) { + return SliverList( + delegate: SliverChildBuilderDelegate( + (context, i) => _buildTransactionItem( + transactions.result.transactions[i], + ), + childCount: transactions.result.transactions.length, + ), + ); + } else if (transactions.result.transactions.isEmpty && + !(transactions.result.syncStatus.state == syncState)) { + return SliverFillRemaining( + child: Center( + child: Text( + AppLocalizations.of(context).noTxs, style: Theme.of(context).textTheme.bodyText1, - textAlign: TextAlign.center, - )), - ); - } - return SizedBox(); - })); + ), + ), + ); + } + } + } else if (snapshot.data is ErrorCode && snapshot.data.error != null) { + return SliverFillRemaining( + child: Padding( + padding: const EdgeInsets.all(16.0), + child: Center( + child: Text( + snapshot.data.error.message, + style: Theme.of(context).textTheme.bodyText1, + textAlign: TextAlign.center, + ), + ), + ), + ); + } + return SliverFillRemaining(child: SizedBox()); + }, + ); } void _goToPreviousPage(BuildContext context) { @@ -527,10 +604,8 @@ class _CoinDetailState extends State { } Widget _buildTransactionItem(Transaction transaction) { - fromId = transaction.internalId; - return TransactionListItem( - key: ValueKey('transaction-list-item-$fromId'), + key: ValueKey('transaction-list-item-${transaction.internalId}'), transaction: transaction, currentCoinBalance: currentCoinBalance, ); @@ -542,102 +617,98 @@ class _CoinDetailState extends State { if (currentCoinBalance.coin.protocol?.protocolData != null) _buildContractAddress(currentCoinBalance.coin.protocol), Padding( - padding: const EdgeInsets.symmetric(vertical: 48), + padding: const EdgeInsets.symmetric(vertical: 24), child: StreamBuilder>( - initialData: coinsBloc.coinBalance, - stream: coinsBloc.outCoins, - builder: (BuildContext context, - AsyncSnapshot> snapshot) { - if (snapshot.hasData) { - for (CoinBalance coinBalance in snapshot.data) { - if (coinBalance.coin.abbr == currentCoinBalance.coin.abbr) { - currentCoinBalance = coinBalance; - } + initialData: coinsBloc.coinBalance, + stream: coinsBloc.outCoins, + builder: ( + BuildContext context, + AsyncSnapshot> snapshot, + ) { + if (snapshot.hasData) { + for (CoinBalance coinBalance in snapshot.data) { + if (coinBalance.coin.abbr == currentCoinBalance.coin.abbr) { + currentCoinBalance = coinBalance; } + } - return StreamBuilder( - initialData: settingsBloc.showBalance, - stream: settingsBloc.outShowBalance, - builder: (BuildContext context, - AsyncSnapshot showBalance) { - String coinBalance = - currentCoinBalance.balance.getBalance(); - final String unspendableBalance = - currentCoinBalance.balance.getUnspendableBalance(); - bool hidden = false; - if (showBalance.hasData && showBalance.data == false) { - coinBalance = '**.**'; - hidden = true; - } - return Column( - children: [ - Text( - coinBalance + ' ' + currentCoinBalance.coin.abbr, - style: Theme.of(context).textTheme.headline5, - textAlign: TextAlign.center, + return StreamBuilder( + initialData: settingsBloc.showBalance, + stream: settingsBloc.outShowBalance, + builder: + (BuildContext context, AsyncSnapshot showBalance) { + String coinBalance = + currentCoinBalance.balance.getBalance(); + final String unspendableBalance = + currentCoinBalance.balance.getUnspendableBalance(); + bool hidden = false; + if (showBalance.hasData && showBalance.data == false) { + coinBalance = '**.**'; + hidden = true; + } + return Column( + children: [ + Text( + coinBalance + ' ' + currentCoinBalance.coin.abbr, + style: Theme.of(context).textTheme.headline5, + textAlign: TextAlign.center, + ), + if (double.tryParse(unspendableBalance ?? '0') > 0) + Container( + padding: EdgeInsets.fromLTRB(0, 4, 0, 4), + child: Text( + '(+${hidden ? '**.**' : unspendableBalance}' + ' ${currentCoinBalance.coin.abbr}' + ' ${AppLocalizations.of(context).unspendable})', + style: Theme.of(context).textTheme.caption, ), - if (double.tryParse(unspendableBalance ?? '0') > 0) - Container( - padding: EdgeInsets.fromLTRB(0, 4, 0, 4), - child: Text( - '(+${hidden ? '**.**' : unspendableBalance}' - ' ${currentCoinBalance.coin.abbr}' - ' ${AppLocalizations.of(context).unspendable})', - style: Theme.of(context).textTheme.caption, - ), - ), - Text(cexProvider.convert( - currentCoinBalance.balanceUSD, - hidden: hidden, - )), - ], - ); - }); - } else { - return SizedBox(); - } - }), + ), + Text( + cexProvider.convert( + currentCoinBalance.balanceUSD, + hidden: hidden, + ), + ), + ], + ); + }, + ); + } else { + return SizedBox(); + } + }, + ), ), - Row( - mainAxisAlignment: MainAxisAlignment.spaceBetween, - children: [ - Expanded( - child: Padding( - padding: const EdgeInsets.only(left: 16, right: 8), - child: _buildButtonLight(StatusButton.RECEIVE, mContext), - )), - if (currentCoinBalance.coin.abbr == 'KMD' && - double.parse(currentCoinBalance.balance.getBalance()) >= 10) - Expanded( - child: Padding( - padding: const EdgeInsets.only(right: 8), - child: _buildButtonLight(StatusButton.CLAIM, mContext), - )), - if (appConfig.defaultTestCoins - .contains(currentCoinBalance.coin.abbr) || - currentCoinBalance.coin.abbr == 'ZOMBIE') - Expanded( - child: Padding( - padding: const EdgeInsets.only(right: 8), - child: _buildButtonLight(StatusButton.FAUCET, mContext), - )), - if (currentCoinBalance.coin.abbr == 'TKL' || - currentCoinBalance.coin.abbr == 'MCL') - Expanded( - child: Padding( - padding: const EdgeInsets.only(right: 8), - child: _buildButtonLight(StatusButton.PUBKEY, mContext), - )), - Expanded( - child: Padding( - padding: const EdgeInsets.only(right: 16), - child: _buildButtonLight(StatusButton.SEND, mContext), - )), - ], + Container( + width: double.infinity, + padding: const EdgeInsets.symmetric(horizontal: 8), + child: Row( + children: [ + Flexible( + child: _buildButtonLight(StatusButton.RECEIVE, mContext), + ), + SizedBox(width: 8), + if (appConfig.defaultTestCoins + .contains(currentCoinBalance.coin.abbr) || + currentCoinBalance.coin.abbr == 'ZOMBIE') ...[ + Flexible( + child: _buildButtonLight(StatusButton.FAUCET, mContext), + ), + SizedBox(width: 8), + ], + Flexible( + child: _buildButtonLight(StatusButton.SEND, mContext), + ), + SizedBox(width: 8), + if (currentCoinBalance.coin.abbr == 'KMD' && + double.parse(currentCoinBalance.balance.getBalance()) >= 10) + Flexible( + child: _buildButtonLight(StatusButton.CLAIM, mContext), + ), + ], + ), ), - const SizedBox( - height: 16, - ) + const SizedBox(height: 16) ], ); } @@ -671,7 +742,7 @@ class _CoinDetailState extends State { crossAxisAlignment: CrossAxisAlignment.center, children: [ SizedBox(width: 12), - Text('Contract:'), + Text('${AppLocalizations.of(context).contract}:'), SizedBox(width: 8), Flexible( child: Card( @@ -722,6 +793,29 @@ class _CoinDetailState extends State { Widget _buildButtonLight(StatusButton statusButton, BuildContext mContext) { String text = ''; + Widget icon; + + switch (statusButton) { + case StatusButton.RECEIVE: + icon = Icon(Icons.qr_code_rounded, color: Colors.green); + break; + case StatusButton.SEND: + icon = Icon( + Icons.north_east_rounded, + color: Colors.red, + ); + break; + case StatusButton.PUBKEY: + icon = Icon(Icons.copy_rounded); + break; + case StatusButton.FAUCET: + icon = Icon(Icons.local_drink_rounded, color: Colors.blue); + break; + case StatusButton.CLAIM: + icon = Icon(Icons.card_giftcard_rounded); + break; + } + switch (statusButton) { case StatusButton.RECEIVE: text = AppLocalizations.of(context).receive; @@ -743,6 +837,7 @@ class _CoinDetailState extends State { return Stack( children: [ SecondaryButton( + icon: icon, key: Key('open-' + statusButton.name), text: text, textColor: Theme.of(context).textTheme.button.color, @@ -754,7 +849,8 @@ class _CoinDetailState extends State { Navigator.push( context, MaterialPageRoute( - builder: (BuildContext context) => RewardsPage()), + builder: (BuildContext context) => RewardsPage(), + ), ); }, ), @@ -772,6 +868,7 @@ class _CoinDetailState extends State { return SecondaryButton( key: Key('open-' + statusButton.name), text: text, + icon: icon, isDarkMode: Theme.of(context).brightness != Brightness.light, textColor: Theme.of(context).colorScheme.secondary, borderColor: Theme.of(context).colorScheme.secondary, @@ -780,22 +877,28 @@ class _CoinDetailState extends State { : () { switch (statusButton) { case StatusButton.RECEIVE: - showCopyDialog(mContext, currentCoinBalance.balance.address, - currentCoinBalance.coin); + showCopyDialog( + mContext, + currentCoinBalance.balance.address, + currentCoinBalance.coin, + ); break; case StatusButton.FAUCET: showFaucetDialog( - context: mContext, - coin: currentCoinBalance.coin.abbr, - address: currentCoinBalance.balance.address); + context: mContext, + coin: currentCoinBalance.coin.abbr, + address: currentCoinBalance.balance.address, + ); break; case StatusButton.SEND: if (double.parse(currentCoinBalance.balance.getBalance()) == 0) { - ScaffoldMessenger.of(context).showSnackBar(SnackBar( - content: - Text(AppLocalizations.of(context).noFundsDetected), - )); + ScaffoldMessenger.of(context).showSnackBar( + SnackBar( + content: + Text(AppLocalizations.of(context).noFundsDetected), + ), + ); return; } if (currentIndex == 3) { @@ -814,8 +917,9 @@ class _CoinDetailState extends State { } break; case StatusButton.PUBKEY: - getPublicKey().then((v) => - showCopyDialog(mContext, v, currentCoinBalance.coin)); + getPublicKey().then( + (v) => showCopyDialog(mContext, v, currentCoinBalance.coin), + ); break; default: } @@ -843,10 +947,10 @@ class _CoinDetailState extends State { unfocusEverything(); }, child: Card( - margin: - const EdgeInsets.only(top: 0, left: 0, right: 0, bottom: 16), - elevation: 8.0, - child: listSteps[currentIndex]), + margin: const EdgeInsets.only(top: 0, left: 0, right: 0, bottom: 16), + elevation: 8.0, + child: listSteps[currentIndex], + ), ), ); } @@ -887,11 +991,13 @@ class _CoinDetailState extends State { void catchError(BuildContext mContext, [String err]) { resetSend(); coinsDetailBloc.resetCustomFee(); - ScaffoldMessenger.of(mContext).showSnackBar(SnackBar( - duration: const Duration(seconds: 2), - backgroundColor: Theme.of(context).errorColor, - content: Text(err ?? AppLocalizations.of(mContext).errorTryLater), - )); + ScaffoldMessenger.of(mContext).showSnackBar( + SnackBar( + duration: const Duration(seconds: 2), + backgroundColor: Theme.of(context).errorColor, + content: Text(err ?? AppLocalizations.of(mContext).errorTryLater), + ), + ); } void resetSend() { @@ -930,15 +1036,19 @@ class _CoinDetailState extends State { currentCoinBalance.coin.abbr.toUpperCase()) { convertedVal = _amountController.text; } else if (cexProvider.withdrawCurrency == cexProvider.selectedFiat) { - convertedVal = cexProvider.convert(amountParsed, - from: cexProvider.withdrawCurrency, - to: currentCoinBalance.coin.abbr, - showSymbol: false); + convertedVal = cexProvider.convert( + amountParsed, + from: cexProvider.withdrawCurrency, + to: currentCoinBalance.coin.abbr, + showSymbol: false, + ); } else { - convertedVal = cexProvider.convert(amountParsed, - from: cexProvider.withdrawCurrency, - to: currentCoinBalance.coin.abbr, - showSymbol: false); + convertedVal = cexProvider.convert( + amountParsed, + from: cexProvider.withdrawCurrency, + to: currentCoinBalance.coin.abbr, + showSymbol: false, + ); } return convertedVal; } @@ -948,164 +1058,184 @@ class _CoinDetailState extends State { _addressController.clear(); _memoController.clear(); listSteps.clear(); - listSteps.add(AmountAddressStep( - coinBalance: currentCoinBalance, - paymentUriInfo: widget.paymentUriInfo, - scrollController: scrollController, - onCancel: () { - setState(() { - isExpanded = false; - _waitForInit(); - }); - }, - onWithdrawPressed: () async { - scrollController.animateTo( - scrollController.position.minScrollExtent, - curve: Curves.easeOut, - duration: const Duration(milliseconds: 300), - ); - setState(() { - isExpanded = false; - listSteps.add(BuildConfirmationStep( - coinBalance: currentCoinBalance, - amountToPay: _getWithdrawAmountCrypto(), - addressToSend: _addressController.text, - memo: _memoController.text, - onCancel: () { - setState(() { - isExpanded = false; - _waitForInit(); - }); - }, - onNoInternet: () { - ScaffoldMessenger.of(mainContext).showSnackBar(SnackBar( - duration: const Duration(seconds: 2), - backgroundColor: Theme.of(context).errorColor, - content: Text(AppLocalizations.of(mainContext).noInternet), - )); - }, - onError: () { - catchError(mainContext); - }, - onConfirmPressed: (WithdrawResponse response) { - setState(() { - isSendIsActive = false; - }); - scrollController.animateTo( - scrollController.position.minScrollExtent, - curve: Curves.easeOut, - duration: const Duration(milliseconds: 300), - ); - - listSteps.add( - Column( - mainAxisAlignment: MainAxisAlignment.center, - mainAxisSize: MainAxisSize.min, - children: [ - SizedBox( - height: 100, - width: double.infinity, - child: const Center( - child: CircularProgressIndicator(strokeWidth: 2), - ), - ), - SizedBox(height: 10), - Text( - AppLocalizations.of(context).finishingUp, - style: Theme.of(context).textTheme.button.copyWith( - color: Theme.of(context).colorScheme.onSecondary), + listSteps.add( + AmountAddressStep( + coinBalance: currentCoinBalance, + paymentUriInfo: widget.paymentUriInfo, + scrollController: _scrollController, + onCancel: () { + setState(() { + isExpanded = false; + _waitForInit(); + }); + }, + onWithdrawPressed: () async { + _scrollController.animateTo( + _scrollController.position.minScrollExtent, + curve: Curves.easeOut, + duration: const Duration(milliseconds: 300), + ); + setState(() { + isExpanded = false; + listSteps.add( + BuildConfirmationStep( + coinBalance: currentCoinBalance, + amountToPay: _getWithdrawAmountCrypto(), + addressToSend: _addressController.text, + memo: _memoController.text, + onCancel: () { + setState(() { + isExpanded = false; + _waitForInit(); + }); + }, + onNoInternet: () { + ScaffoldMessenger.of(mainContext).showSnackBar( + SnackBar( + duration: const Duration(seconds: 2), + backgroundColor: Theme.of(context).errorColor, + content: + Text(AppLocalizations.of(mainContext).noInternet), ), - SizedBox(height: 30), - ], - ), - ); - - setState(() { - currentIndex = 2; - }); - - ApiProvider() - .postRawTransaction( - mmSe.client, - GetSendRawTransaction( - coin: currentCoinBalance.coin.abbr, - txHex: response.txHex)) - .then((dynamic dataRawTx) { - if (dataRawTx is SendRawTransactionResponse && - dataRawTx.txHash.isNotEmpty) { - coinsBloc.updateCoinBalances(); - Future.delayed(const Duration(seconds: 5), () { - coinsBloc.updateCoinBalances(); + ); + }, + onError: () { + catchError(mainContext); + }, + onConfirmPressed: (WithdrawResponse response) { + setState(() { + isSendIsActive = false; }); + _scrollController.animateTo( + _scrollController.position.minScrollExtent, + curve: Curves.easeOut, + duration: const Duration(milliseconds: 300), + ); - setState(() { - listSteps.add(SuccessStep( - txHash: dataRawTx.txHash, - )); + listSteps.add( + Column( + mainAxisAlignment: MainAxisAlignment.center, + mainAxisSize: MainAxisSize.min, + children: [ + SizedBox( + height: 100, + width: double.infinity, + child: const Center( + child: CircularProgressIndicator(strokeWidth: 2), + ), + ), + SizedBox(height: 10), + Text( + AppLocalizations.of(context).finishingUp, + style: Theme.of(context).textTheme.button.copyWith( + color: + Theme.of(context).colorScheme.onSecondary, + ), + ), + SizedBox(height: 30), + ], + ), + ); - currentIndex = 3; + setState(() { + currentIndex = 2; }); - _closeAfterAWait(); - } else if (dataRawTx is ErrorString && - dataRawTx.error.contains('gas is too low')) { - resetSend(); - final String gas = dataRawTx.error - .substring( - dataRawTx.error.indexOf( - r':', dataRawTx.error.indexOf(r'"')) + - 1, - dataRawTx.error - .indexOf(r',', dataRawTx.error.indexOf(r'"'))) - .trim(); - ScaffoldMessenger.of(mainContext).showSnackBar(SnackBar( - duration: const Duration(seconds: 2), - backgroundColor: Theme.of(context).errorColor, - content: Text( - AppLocalizations.of(mainContext).errorNotEnoughGas(gas), + + ApiProvider() + .postRawTransaction( + mmSe.client, + GetSendRawTransaction( + coin: currentCoinBalance.coin.abbr, + txHex: response.txHex, ), - )); - } else { - if (dataRawTx is ErrorString) { - int start = dataRawTx.error.indexOf(r'"'); - int end = dataRawTx.error.lastIndexOf(r'"'); - if (start != -1 || end != -1) { - String err = dataRawTx.error.substring(start + 1, end); - catchError(mainContext, toInitialUpper(err)); - return; + ) + .then((dynamic dataRawTx) { + if (dataRawTx is SendRawTransactionResponse && + dataRawTx.txHash.isNotEmpty) { + coinsBloc.updateCoinBalances(); + Future.delayed(const Duration(seconds: 5), () { + coinsBloc.updateCoinBalances(); + }); + + setState(() { + listSteps.add( + SuccessStep( + txHash: dataRawTx.txHash, + ), + ); + + currentIndex = 3; + }); + _closeAfterAWait(); + } else if (dataRawTx is ErrorString && + dataRawTx.error.contains('gas is too low')) { + resetSend(); + final String gas = dataRawTx.error + .substring( + dataRawTx.error.indexOf( + r':', + dataRawTx.error.indexOf(r'"'), + ) + + 1, + dataRawTx.error + .indexOf(r',', dataRawTx.error.indexOf(r'"')), + ) + .trim(); + ScaffoldMessenger.of(mainContext).showSnackBar( + SnackBar( + duration: const Duration(seconds: 2), + backgroundColor: Theme.of(context).errorColor, + content: Text( + AppLocalizations.of(mainContext) + .errorNotEnoughGas(gas), + ), + ), + ); + } else { + if (dataRawTx is ErrorString) { + int start = dataRawTx.error.indexOf(r'"'); + int end = dataRawTx.error.lastIndexOf(r'"'); + if (start != -1 || end != -1) { + String err = + dataRawTx.error.substring(start + 1, end); + catchError(mainContext, toInitialUpper(err)); + return; + } + } + catchError(mainContext); } - } - catchError(mainContext); - } - }).catchError((dynamic onError) { - if (onError is ErrorString) { - int start = onError.error.indexOf(r'"'); - int end = onError.error.lastIndexOf(r'"'); - if (start != -1 || end != -1) { - String err = onError.error.substring(start + 1, end); - catchError(mainContext, toInitialUpper(err)); - return; - } - } - catchError(mainContext); - }); + }).catchError((dynamic onError) { + if (onError is ErrorString) { + int start = onError.error.indexOf(r'"'); + int end = onError.error.lastIndexOf(r'"'); + if (start != -1 || end != -1) { + String err = onError.error.substring(start + 1, end); + catchError(mainContext, toInitialUpper(err)); + return; + } + } + catchError(mainContext); + }); - if (response is WithdrawResponse) { - } else { - catchError(mainContext); - } - }, - )); - }); - setState(() { - currentIndex = 1; - isExpanded = true; - }); - }, - focusNode: _focus, - addressController: _addressController, - amountController: _amountController, - memoController: _memoController, - )); + if (response is WithdrawResponse) { + } else { + catchError(mainContext); + } + }, + ), + ); + }); + setState(() { + currentIndex = 1; + isExpanded = true; + }); + }, + focusNode: _focus, + addressController: _addressController, + amountController: _amountController, + memoController: _memoController, + ), + ); } } diff --git a/lib/screens/portfolio/coin_detail/steps_withdraw.dart/amount_address_step/address_field.dart b/lib/screens/portfolio/coin_detail/steps_withdraw.dart/amount_address_step/address_field.dart index 6d48bdb5e..3b802bd1a 100644 --- a/lib/screens/portfolio/coin_detail/steps_withdraw.dart/amount_address_step/address_field.dart +++ b/lib/screens/portfolio/coin_detail/steps_withdraw.dart/amount_address_step/address_field.dart @@ -76,6 +76,8 @@ class _AddressFieldState extends State { @override Widget build(BuildContext context) { + final localisations = AppLocalizations.of(context); + return Padding( padding: const EdgeInsets.symmetric(vertical: 16), child: Column( @@ -135,7 +137,7 @@ class _AddressFieldState extends State { return AppLocalizations.of(context).errorValueNotEmpty; } if (!mm2Validated) { - return 'Invalid ${widget.coin.abbr} address'; + return localisations.invalidCoinAddress(widget.coin.abbr); } return null; diff --git a/lib/screens/portfolio/coin_detail/tx_list_item.dart b/lib/screens/portfolio/coin_detail/tx_list_item.dart index 498cc76e9..bb51d9130 100644 --- a/lib/screens/portfolio/coin_detail/tx_list_item.dart +++ b/lib/screens/portfolio/coin_detail/tx_list_item.dart @@ -1,20 +1,21 @@ import 'package:flutter/material.dart'; -import 'package:auto_size_text/auto_size_text.dart'; import 'package:komodo_dex/screens/portfolio/coin_detail/warning_transaction_list_item.dart'; +import 'package:provider/provider.dart'; + import '../../../../blocs/settings_bloc.dart'; import '../../../../model/cex_provider.dart'; import '../../../../model/coin_balance.dart'; import '../../../../model/transaction_data.dart'; import '../../../../services/db/database.dart'; import '../../../../utils/utils.dart'; -import 'package:provider/provider.dart'; - import '../transaction_detail.dart'; class TransactionListItem extends StatefulWidget { - const TransactionListItem( - {this.transaction, this.currentCoinBalance, Key key}) - : super(key: key); + const TransactionListItem({ + this.transaction, + this.currentCoinBalance, + Key key, + }) : super(key: key); final Transaction transaction; final CoinBalance currentCoinBalance; @@ -27,204 +28,120 @@ class _TransactionListItemState extends State { CexProvider cexProvider; bool isNoteExpanded = false; + String note; + double get transactionValue => double.parse(widget.transaction.myBalanceChange); bool get isWarningTransaction => transactionValue == 0 && isErcType(widget.currentCoinBalance.coin); + bool get isConfirmed => widget.transaction.confirmations > 0; + + bool get isReceived => double.parse(widget.transaction.myBalanceChange) > 0; + + /// Shows the shortened address of either the `to` field if the transaction is + /// a send (our balance decreased), or otherwise, show the `from` field if + /// it is a receive (our balance increased). + String get formattedAddress { + final addresses = isReceived + ? widget.transaction.from + : widget.transaction.getToAddress(); + + String formatted = addresses.map((e) => formatAddressShort(e)).join(','); + + if (formatted.isEmpty) formatted = '**********'; + + return formatted; + } + + @override + void initState() { + super.initState(); + Db.getNote(widget.transaction.txHash).then((value) { + if (mounted) setState(() => note = flattenParagraphs(value)); + }); + } + @override Widget build(BuildContext context) { cexProvider ??= Provider.of(context); - final TextStyle subtitle = Theme.of(context) - .textTheme - .subtitle1 - .copyWith(fontWeight: FontWeight.bold); - if (isWarningTransaction) { return WarningTransactionListItem( address: widget.transaction.from.join(', '), ); } + final hasNote = note?.isNotEmpty ?? false; + return Card( - child: InkWell( - borderRadius: const BorderRadius.all(Radius.circular(4)), - onTap: () => Navigator.push( - context, - MaterialPageRoute( - builder: (BuildContext context) => TransactionDetail( + child: ListTile( + contentPadding: EdgeInsets.symmetric(horizontal: 16, vertical: 8), + onTap: () => Navigator.push( + context, + MaterialPageRoute( + builder: (BuildContext context) => TransactionDetail( transaction: widget.transaction, - coinBalance: widget.currentCoinBalance), + coinBalance: widget.currentCoinBalance, + ), + ), ), - ), - child: Column( - crossAxisAlignment: CrossAxisAlignment.start, - children: [ - Row( - mainAxisAlignment: MainAxisAlignment.spaceBetween, - children: [ - Padding( - padding: const EdgeInsets.all(16.0), - child: Container( - padding: const EdgeInsets.all(8.0), - decoration: BoxDecoration( - shape: BoxShape.circle, - border: Border.all( - color: double.parse( - widget.transaction.myBalanceChange) > - 0 - ? Colors.green - : Colors.redAccent, - width: 2)), - child: double.parse(widget.transaction.myBalanceChange) > 0 - ? Icon(Icons.arrow_downward) - : Icon(Icons.arrow_upward)), - ), - Expanded( - child: Column( - mainAxisAlignment: MainAxisAlignment.end, - crossAxisAlignment: CrossAxisAlignment.end, - children: [ - Padding( - padding: - const EdgeInsets.only(left: 16, right: 16, top: 8), - child: StreamBuilder( - initialData: settingsBloc.showBalance, - stream: settingsBloc.outShowBalance, - builder: (BuildContext context, - AsyncSnapshot snapshot) { - final amount = - deci(widget.transaction.myBalanceChange); - String amountString = deci2s(amount); - if (snapshot.hasData && snapshot.data == false) { - amountString = - (amount.toDouble() < 0 ? '-' : '') + '**.**'; - } - return AutoSizeText( - '${amount.toDouble() > 0 ? '+' : ''}$amountString ${widget.currentCoinBalance.coin.abbr}', - maxLines: 1, - style: subtitle, - textAlign: TextAlign.end, - ); - }), - ), - StreamBuilder( - initialData: settingsBloc.showBalance, - stream: settingsBloc.outShowBalance, - builder: (BuildContext context, - AsyncSnapshot snapshot) { - if (widget.currentCoinBalance.priceForOne == null) { - return const Padding( - padding: EdgeInsets.only( - left: 16, right: 16, bottom: 16, top: 8), - child: SizedBox( - width: 16, - height: 16, - child: CircularProgressIndicator( - strokeWidth: 2.0, - ), - )); - } else { - final usdAmount = - deci(widget.currentCoinBalance.priceForOne) * - deci(widget.transaction.myBalanceChange); - if (usdAmount != deci(0)) { - bool hidden = false; - if (snapshot.hasData && snapshot.data == false) { - hidden = true; - } - return Padding( - padding: const EdgeInsets.only( - left: 16, right: 16, bottom: 16, top: 8), - child: Text( - cexProvider.convert( - usdAmount.toDouble(), - hidden: hidden, - ), - style: Theme.of(context).textTheme.bodyText1, - ), - ); - } - return SizedBox(); - } - }), - ], - ), + // Show date + title: Text(widget.transaction.getTimeFormat()), + isThreeLine: hasNote, + dense: false, + subtitle: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + SizedBox(height: 6), + Text( + formattedAddress, + style: Theme.of(context).textTheme.bodyText2, + ), + if (note != null) ...[ + SizedBox(height: 4), + Text( + note, + maxLines: isNoteExpanded ? null : 2, + overflow: TextOverflow.ellipsis, + style: Theme.of(context).textTheme.caption, ), ], - ), - FutureBuilder( - future: Db.getNote(widget.transaction.txHash), - builder: (BuildContext context, AsyncSnapshot snapshot) { - if (!snapshot.hasData) { - return SizedBox(); + ], + ), + leading: Icon( + isReceived ? Icons.arrow_downward : Icons.arrow_upward, + size: 32, + color: isReceived ? Colors.green : Colors.redAccent, + ), + trailing: Row( + mainAxisSize: MainAxisSize.min, + children: [ + StreamBuilder( + initialData: settingsBloc.showBalance, + stream: settingsBloc.outShowBalance, + builder: (BuildContext context, AsyncSnapshot snapshot) { + final amount = deci(widget.transaction.myBalanceChange); + String amountString = deci2s(amount); + if (snapshot.hasData && snapshot.data == false) { + amountString = (amount.toDouble() < 0 ? '-' : '') + '**.**'; } - return InkWell( - onTap: () { - setState(() { - isNoteExpanded = !isNoteExpanded; - }); - }, - child: Padding( - padding: const EdgeInsets.symmetric( - horizontal: 16.0, vertical: 8.0), - child: Text( - snapshot.data, - maxLines: isNoteExpanded ? null : 1, - overflow: isNoteExpanded ? null : TextOverflow.ellipsis, - style: Theme.of(context).textTheme.bodyText1, - ), - ), + return Text( + '${amount.toDouble() > 0 ? '+' : ''}$amountString', ); - }), - Container( - color: Theme.of(context).scaffoldBackgroundColor, - height: 1, - width: double.infinity, - ), - Padding( - padding: const EdgeInsets.symmetric(horizontal: 16, vertical: 8), - child: Row( - mainAxisAlignment: MainAxisAlignment.spaceBetween, - children: [ - Padding( - padding: const EdgeInsets.symmetric(vertical: 8), - child: Text( - widget.transaction.getTimeFormat(), - style: Theme.of(context).textTheme.bodyText1.copyWith( - color: Colors.grey, - ), - ), - ), - Expanded(child: SizedBox()), - Builder( - builder: (BuildContext context) { - return widget.transaction.confirmations > 0 - ? Container( - height: 12, - width: 12, - decoration: BoxDecoration( - borderRadius: - const BorderRadius.all(Radius.circular(16)), - color: Colors.green), - ) - : Container( - height: 12, - width: 12, - decoration: BoxDecoration( - borderRadius: - const BorderRadius.all(Radius.circular(16)), - color: Colors.red), - ); - }, - ) - ], + }, + ), + SizedBox(width: 8), + Icon( + isConfirmed ? Icons.check_circle : Icons.hourglass_bottom, + color: isConfirmed + ? Theme.of(context).colorScheme.secondaryVariant + : Colors.amber, ), - ) - ], + ], + ), ), - )); + ); } } diff --git a/lib/screens/portfolio/coin_detail/warning_transaction_list_item.dart b/lib/screens/portfolio/coin_detail/warning_transaction_list_item.dart index 7da4923c3..151cd6dc6 100644 --- a/lib/screens/portfolio/coin_detail/warning_transaction_list_item.dart +++ b/lib/screens/portfolio/coin_detail/warning_transaction_list_item.dart @@ -1,9 +1,9 @@ import 'package:flutter/material.dart'; import 'package:komodo_dex/app_config/app_config.dart'; +import 'package:komodo_dex/localizations.dart'; import 'package:url_launcher/url_launcher_string.dart'; // This is a quick hotfix. The designs and UX for this screen are not final. -// TODO: Localise messages and implement finalised UX and designs. @immutable class WarningTransactionListItem extends StatefulWidget { @@ -22,10 +22,10 @@ class _WarningTransactionListItemState bool _showAddress = false; // Function to open URL - void _launchURL() async => await canLaunchUrlString( + void _launchURL(BuildContext context) async => await canLaunchUrlString( appConfig.transactionWarningInfoUrl) ? await launchUrlString('https://cryptonews.net/news/security/20792248/') - : throw Exception('Could not launch URL'); + : throw Exception(AppLocalizations.of(context).couldNotLaunchUrl); @override Widget build(BuildContext context) { @@ -40,12 +40,14 @@ class _WarningTransactionListItemState color: Colors.red, ), title: Text( - _showAddress ? 'Transaction Address:' : 'Transaction Hidden', + _showAddress + ? '${AppLocalizations.of(context).transactionAddress}:' + : AppLocalizations.of(context).transactionHidden, ), subtitle: Text( _showAddress ? widget.address - : 'This transaction was hidden due to a possible phishing attempt.', + : AppLocalizations.of(context).transactionHiddenPhishing, style: Theme.of(context).textTheme.caption, ), enabled: false, @@ -55,7 +57,7 @@ class _WarningTransactionListItemState mainAxisAlignment: MainAxisAlignment.end, children: [ TextButton( - child: Text('Show Address'), + child: Text(AppLocalizations.of(context).showAddress), onPressed: _showAddress ? null : () { @@ -66,8 +68,8 @@ class _WarningTransactionListItemState ), const SizedBox(width: 8), TextButton( - child: Text('More Info'), - onPressed: _launchURL, + child: Text(AppLocalizations.of(context).moreInfo), + onPressed: () => _launchURL(context), ), const SizedBox(width: 8), ], diff --git a/lib/screens/portfolio/coins_list.dart b/lib/screens/portfolio/coins_list.dart new file mode 100644 index 000000000..e69de29bb diff --git a/lib/screens/portfolio/coins_page.dart b/lib/screens/portfolio/coins_page.dart index c8e3e9cc5..52bcb1f2e 100644 --- a/lib/screens/portfolio/coins_page.dart +++ b/lib/screens/portfolio/coins_page.dart @@ -1,21 +1,20 @@ import 'dart:async'; -import 'dart:math'; import 'package:auto_size_text/auto_size_text.dart'; import 'package:flutter/material.dart'; import 'package:flutter_bloc/flutter_bloc.dart'; import 'package:flutter_slidable/flutter_slidable.dart'; import 'package:intl/intl.dart'; +import 'package:komodo_dex/blocs/authenticate_bloc.dart'; +import 'package:komodo_dex/packages/rebranding/rebranding_dialog.dart'; +import 'package:komodo_dex/packages/rebranding/rebranding_provider.dart'; import 'package:komodo_dex/packages/z_coin_activation/bloc/z_coin_activation_bloc.dart'; -import 'package:komodo_dex/packages/z_coin_activation/bloc/z_coin_activation_event.dart'; import 'package:komodo_dex/packages/z_coin_activation/bloc/z_coin_activation_state.dart'; import 'package:komodo_dex/packages/z_coin_activation/widgets/z_coin_status_list_tile.dart'; +import 'package:komodo_dex/screens/portfolio/animated_asset_proportions_graph.dart'; +import 'package:komodo_dex/widgets/animated_collapse.dart'; import 'package:provider/provider.dart'; -import 'package:komodo_dex/blocs/authenticate_bloc.dart'; -import 'package:komodo_dex/packages/rebranding/rebranding_provider.dart'; -import 'add_coin_button.dart'; -import 'package:komodo_dex/packages/rebranding/rebranding_dialog.dart'; import '../../../../blocs/coins_bloc.dart'; import '../../../../blocs/settings_bloc.dart'; import '../../../../localizations.dart'; @@ -23,6 +22,7 @@ import '../../../../model/cex_provider.dart'; import '../../../../model/coin_balance.dart'; import '../../../../services/mm_service.dart'; import '../portfolio/loading_coin.dart'; +import 'add_coin_fab.dart'; import 'item_coin.dart'; class CoinsPage extends StatefulWidget { @@ -33,23 +33,14 @@ class CoinsPage extends StatefulWidget { class _CoinsPageState extends State { CexProvider _cexProvider; ScrollController _scrollController; - double _heightFactor = 2.3; BuildContext contextMain; NumberFormat f = NumberFormat('###,##0.0#'); - double _heightScreen; double _heightSliver; - double _widthScreen; - - bool hideAddCoinLoading = true; - - void _showAddCoinLoading() { - setState(() { - hideAddCoinLoading = false; - }); - } StreamSubscription _loginSubscription; + Timer _timer; + // Rebranding Future showRebrandingDialog(BuildContext context) async { showDialog( @@ -57,16 +48,13 @@ class _CoinsPageState extends State { barrierDismissible: true, // allow dismiss when clicking outside builder: (BuildContext context) => RebrandingDialog(), ).then((_) { - // This is called when the dialog is dismissed Provider.of(context, listen: false) .closeThisSession(); }); } void _scrollListener() { - setState(() { - _heightFactor = (exp(-_scrollController.offset / 60) * 1.3) + 1; - }); + setState(() {}); } @override @@ -75,17 +63,6 @@ class _CoinsPageState extends State { _scrollController.addListener(_scrollListener); if (mmSe.running) coinsBloc.updateCoinBalances(); - final bloc = BlocProvider.of(context); - - // Check every 5 seconds if mmSe is running. When it is running, emit the - // event [ZCoinActivationStatusRequested] and kill the timer. - Timer.periodic(const Duration(seconds: 5), (timer) { - if (mmSe.running) { - bloc.add(ZCoinActivationStatusRequested()); - timer.cancel(); - } - }); - // Subscribe to the outIsLogin stream _loginSubscription = authBloc.outIsLogin.listen((isLogin) async { if (isLogin) { @@ -95,9 +72,8 @@ class _CoinsPageState extends State { // Wait for the prefs to load await rebrandingNotifier.prefsLoaded; - if (!rebrandingNotifier.closedPermanently && - !rebrandingNotifier.closedThisSession) { - showRebrandingDialog(context); + if (rebrandingNotifier.shouldShowRebrandingDialog) { + showRebrandingDialog(context).ignore(); } } }); @@ -107,212 +83,155 @@ class _CoinsPageState extends State { @override void dispose() { - _loginSubscription.cancel(); + _loginSubscription?.cancel()?.ignore(); + _timer?.cancel(); super.dispose(); } @override Widget build(BuildContext context) { _cexProvider = Provider.of(context); - _heightScreen = MediaQuery.of(context).size.height; - _widthScreen = MediaQuery.of(context).size.width; - _heightSliver = _heightScreen * 0.25 - MediaQuery.of(context).padding.top; - if (_heightSliver < 125) _heightSliver = 125; + _heightSliver = (kToolbarHeight + MediaQuery.of(context).padding.top); final bool isCollapsed = _scrollController.hasClients && _scrollController.offset > _heightSliver; return Scaffold( + floatingActionButton: AddCoinFab(key: Key('add-coin-button')), body: NestedScrollView( controller: _scrollController, headerSliverBuilder: (BuildContext context, bool innerBoxIsScrolled) { return [ SliverAppBar( + elevation: 4, backgroundColor: Theme.of(context).scaffoldBackgroundColor, - expandedHeight: 130, + expandedHeight: _heightSliver, pinned: true, - actions: [ - AnimatedOpacity( - opacity: isCollapsed ? 1 : 0, - duration: Duration(milliseconds: 600), - curve: Curves.easeInOutExpo, - child: IgnorePointer( - ignoring: !isCollapsed, - child: AddCoinButton( - key: Key('add-coin-button-collapsed'), - isCollapsed: true, - hideAddCoinLoading: hideAddCoinLoading, - onShowAddCoinLoading: _showAddCoinLoading, + flexibleSpace: LayoutBuilder( + builder: (BuildContext context, BoxConstraints constraints) { + return AnimatedContainer( + key: Key('animated-container-portfolio-gradient'), + duration: Duration(milliseconds: 200), + decoration: BoxDecoration( + gradient: backgroundGradient, ), - ), - ), - SizedBox(width: 8), - ], - flexibleSpace: Builder( - builder: (BuildContext context) { - return Stack( - children: [ - FlexibleSpaceBar( - collapseMode: CollapseMode.pin, - centerTitle: true, - titlePadding: EdgeInsetsDirectional.only(bottom: 10), - title: SizedBox( - width: _widthScreen * 0.5, - child: Center( - heightFactor: _heightFactor, - child: StreamBuilder>( - initialData: coinsBloc.coinBalance, - stream: coinsBloc.outCoins, - builder: ( - BuildContext context, - AsyncSnapshot> snapshot, - ) { - if (snapshot.data != null) { - double totalBalanceUSD = 0; - - for (CoinBalance coinBalance - in snapshot.data) { - totalBalanceUSD += coinBalance.balanceUSD; - } - return StreamBuilder( - initialData: settingsBloc.showBalance, - stream: settingsBloc.outShowBalance, - builder: ( - BuildContext context, - AsyncSnapshot snapshot, - ) { - bool hidden = false; - if (snapshot.hasData && !snapshot.data) { - hidden = true; - } - final String amountText = - _cexProvider.convert( - totalBalanceUSD, - hidden: hidden, - ); - return TextButton( - onPressed: () => - _cexProvider.switchCurrency(), - style: TextButton.styleFrom( - primary: isCollapsed - ? Theme.of(context).brightness == - Brightness.light - ? Colors.black - .withOpacity(0.8) - : Colors.white - : Colors.white.withOpacity(0.8), - textStyle: Theme.of(context) - .textTheme - .headline6, - ), - child: AutoSizeText( - amountText, - maxFontSize: 18, - minFontSize: 12, - maxLines: 1, - ), - ); - }, - ); - } else { - return Center( - child: const CircularProgressIndicator(), - ); + child: SafeArea( + child: Column( + mainAxisSize: MainAxisSize.max, + mainAxisAlignment: MainAxisAlignment.center, + children: [ + StreamBuilder>( + key: Key('stream-builder-coin-balance'), + initialData: coinsBloc.coinBalance, + stream: coinsBloc.outCoins, + builder: ( + BuildContext context, + AsyncSnapshot> snapshot, + ) { + if (snapshot.data != null) { + double totalBalanceUSD = 0; + + for (CoinBalance coinBalance in snapshot.data) { + totalBalanceUSD += coinBalance.balanceUSD; } - }, - ), - ), - ), - background: Container( - child: Padding( - padding: const EdgeInsets.only(bottom: 16), - child: Column( - mainAxisAlignment: MainAxisAlignment.end, - crossAxisAlignment: CrossAxisAlignment.center, - children: [ - const LoadAsset(), - const SizedBox( - height: 14.0, - ), - StreamBuilder( + return StreamBuilder( initialData: settingsBloc.showBalance, stream: settingsBloc.outShowBalance, builder: ( BuildContext context, AsyncSnapshot snapshot, ) { - return snapshot.hasData && snapshot.data - ? BarGraph() - : SizedBox(); + bool hidden = false; + if (snapshot.hasData && !snapshot.data) { + hidden = true; + } + final String amountText = + _cexProvider.convert( + totalBalanceUSD, + hidden: hidden, + ); + return Expanded( + child: Stack( + fit: StackFit.passthrough, + children: [ + Center( + child: AutoSizeText( + amountText, + maxFontSize: 24, + minFontSize: 12, + maxLines: 1, + style: Theme.of(context) + .textTheme + .headline5 + .copyWith( + color: Colors.white, + fontWeight: FontWeight.w600, + ), + ), + ), + Align( + alignment: Alignment.centerRight, + child: AnimatedOpacity( + opacity: + innerBoxIsScrolled ? 0 : 1, + duration: + Duration(milliseconds: 300), + child: IconButton( + icon: Icon( + Icons.swap_horiz, + color: Colors.white, + ), + onPressed: () => _cexProvider + .switchCurrency(), + ), + ), + ), + ], + ), + ); }, - ) - ], - ), + ); + } else { + return Center( + child: const CircularProgressIndicator(), + ); + } + }, ), - height: _heightScreen * 0.35, - decoration: BoxDecoration( - gradient: LinearGradient( - begin: Alignment.bottomLeft, - end: Alignment.topRight, - stops: const [0.01, 1], - colors: const [ - Color.fromRGBO(98, 90, 229, 1), - Color.fromRGBO(45, 184, 240, 1), - ], + AnimatedCollapse( + key: Key('animated-collapse-bar-graph'), + fullHeight: 8, + isCollapsed: isCollapsed, + child: AnimatedAssetProportionsBarGraph( + key: Key('bar-graph'), ), ), - ), + ], ), - Positioned( - left: 0, - right: 0, - bottom: 0, - child: _buildProgressIndicator(), - ), - ], + ), ); }, ), automaticallyImplyLeading: false, ), - SliverAppBar( - automaticallyImplyLeading: false, - backgroundColor: Theme.of(context).scaffoldBackgroundColor, - toolbarHeight: 48, - flexibleSpace: Center( - child: IntrinsicWidth( - // Child has infite width. We want to change so that it - // ignores the infinite width and takes up min width. - child: Padding( - padding: const EdgeInsets.symmetric(horizontal: 16), - child: AddCoinButton( - key: Key('add-coin-button'), - hideAddCoinLoading: hideAddCoinLoading, - onShowAddCoinLoading: _showAddCoinLoading, - ), - ), - ), - ), - pinned: false, - ), BlocBuilder( + key: Key('bloc-builder-zcoin-activation'), builder: (context, state) { final isActivationInProgress = state is ZCoinActivationInProgess; - return SliverVisibility( - visible: isActivationInProgress, - sliver: isActivationInProgress - ? SliverAppBar( - automaticallyImplyLeading: false, - backgroundColor: - Theme.of(context).scaffoldBackgroundColor, - flexibleSpace: Center( - child: ZCoinStatusWidget(), - ), - pinned: false, - ) - : SliverToBoxAdapter(child: SizedBox.shrink()), + return SliverToBoxAdapter( + key: Key('sliver-to-box-adapter-zcoin-status'), + child: AnimatedCollapse( + isCollapsed: !isActivationInProgress, + fullHeight: 64, + child: Card( + child: ZCoinStatusWidget( + key: Key('zcoin-status-widget'), + ), + margin: EdgeInsets.zero, + ), + ), ); }, ), @@ -326,79 +245,22 @@ class _CoinsPageState extends State { ); } - Widget _buildProgressIndicator() { - return StreamBuilder( - initialData: coinsBloc.currentActiveCoin, - stream: coinsBloc.outcurrentActiveCoin, - builder: (BuildContext context, AsyncSnapshot snapshot) { - return snapshot.data != null && !hideAddCoinLoading - ? const SizedBox( - height: 2, - child: LinearProgressIndicator(), - ) - : SizedBox(); - }, - ); - } -} - -class BarGraph extends StatefulWidget { - @override - BarGraphState createState() { - return BarGraphState(); - } -} - -class BarGraphState extends State { - @override - Widget build(BuildContext context) { - final double _widthScreen = MediaQuery.of(context).size.width; - final double _widthBar = _widthScreen - 32; - - return StreamBuilder>( - initialData: coinsBloc.coinBalance, - stream: coinsBloc.outCoins, - builder: - (BuildContext context, AsyncSnapshot> snapshot) { - final bool _isVisible = snapshot.data != null; - final List barItem = []; - - if (snapshot.data != null) { - double sumOfAllBalances = 0; - - for (CoinBalance coinBalance in snapshot.data) { - sumOfAllBalances += coinBalance.balanceUSD; - } - - for (CoinBalance coinBalance in snapshot.data) { - if (coinBalance.balanceUSD > 0) { - barItem.add( - Container( - color: Color(int.parse(coinBalance.coin.colorCoin)), - width: _widthBar * - (((coinBalance.balanceUSD * 100) / sumOfAllBalances) / - 100), - ), - ); - } - } - } - - return AnimatedOpacity( - opacity: _isVisible ? 1.0 : 0.0, - duration: const Duration(milliseconds: 300), - child: ClipRRect( - borderRadius: const BorderRadius.all(Radius.circular(16)), - child: SizedBox( - width: _widthBar, - height: 16, - child: Row( - children: barItem, - ), - ), - ), - ); - }, + LinearGradient get backgroundGradient { + final progress = ((_scrollController.offset - _heightSliver) / + (_heightSliver - + (kToolbarHeight + MediaQuery.of(context).padding.top))) + .clamp(0.0, 1.0); + + final colors = [ + Color.fromRGBO(98, 90, 229, 1), + Color.fromRGBO(45, 184, 240, 1), + ].map((color) => color.withOpacity((1 - progress).clamp(0.2, 1))).toList(); + + return LinearGradient( + begin: Alignment.bottomLeft, + end: Alignment.topRight, + stops: const [0.01, 1], + colors: colors, ); } } @@ -512,30 +374,25 @@ class ListCoinsState extends State { coinsBloc.sortCoins(snapshot.data); return SlidableAutoCloseBehavior( - child: ListView( - padding: EdgeInsets.zero, - children: [ - ListView.separated( - padding: const EdgeInsets.all(0), - key: const Key('list-view-coins'), - itemCount: _coinsSorted.length, - shrinkWrap: true, - physics: ClampingScrollPhysics(), - itemBuilder: (BuildContext context, int index) { - return ItemCoin( - key: Key( - 'coin-list-${_coinsSorted[index].coin.abbr}', - ), - mContext: context, - coinBalance: _coinsSorted[index], - ); - // } - }, - separatorBuilder: (context, _) => Divider( - color: Theme.of(context).colorScheme.surface, + child: ListView.separated( + padding: const EdgeInsets.all(0), + key: const Key('list-view-coins'), + itemCount: _coinsSorted.length, + physics: ClampingScrollPhysics(), + itemBuilder: (BuildContext context, int index) { + return ItemCoin( + key: Key( + 'coin-list-${_coinsSorted[index].coin.abbr}', ), - ), - ], + showAlternateColor: index.isOdd, + mContext: context, + coinBalance: _coinsSorted[index], + ); + // } + }, + separatorBuilder: (context, _) => Divider( + color: Theme.of(context).colorScheme.surface, + ), ), ); } else if (snapshot.connectionState == ConnectionState.waiting) { @@ -544,16 +401,7 @@ class ListCoinsState extends State { // MRC: Add center to fix random UI glitch // due to loading Add Button return Center( - child: Column( - mainAxisAlignment: MainAxisAlignment.center, - children: [ - AddCoinButton( - key: const Key('add-coin-button-empty'), - isCollapsed: true, - ), - Text(AppLocalizations.of(context).pleaseAddCoin), - ], - ), + child: Text(AppLocalizations.of(context).pleaseAddCoin), ); } else { return SizedBox(); diff --git a/lib/screens/portfolio/copy_dialog.dart b/lib/screens/portfolio/copy_dialog.dart index 87b2ed9f8..9ac36f214 100644 --- a/lib/screens/portfolio/copy_dialog.dart +++ b/lib/screens/portfolio/copy_dialog.dart @@ -44,7 +44,7 @@ void showCopyDialog(BuildContext mContext, String address, Coin coin) { address, textKey: const Key('coin-details-address'), style: Theme.of(context).textTheme.bodyText1, - maxLines: 2, + maxLines: 3, ), )), ), diff --git a/lib/screens/portfolio/item_coin.dart b/lib/screens/portfolio/item_coin.dart index 8c4e1926c..9b718c1ae 100644 --- a/lib/screens/portfolio/item_coin.dart +++ b/lib/screens/portfolio/item_coin.dart @@ -2,6 +2,8 @@ import 'package:auto_size_text/auto_size_text.dart'; import 'package:flutter/material.dart'; import 'package:flutter_slidable/flutter_slidable.dart'; import 'package:intl/intl.dart'; +import 'package:provider/provider.dart'; + import '../../../../blocs/main_bloc.dart'; import '../../../../blocs/settings_bloc.dart'; import '../../../../blocs/swap_bloc.dart'; @@ -12,25 +14,20 @@ import '../../../../model/cex_provider.dart'; import '../../../../model/coin.dart'; import '../../../../model/coin_balance.dart'; import '../../../../model/rewards_provider.dart'; -import '../portfolio/faucet_dialog.dart'; import '../../../../utils/log.dart'; -import '../../../app_config/app_config.dart'; import '../../utils/utils.dart'; -import '../../../../widgets/build_protocol_chip.dart'; -import '../../../../widgets/build_red_dot.dart'; -import 'package:provider/provider.dart'; - import 'coin_detail/coin_detail.dart'; import 'copy_dialog.dart'; -import 'rewards_page.dart'; class ItemCoin extends StatefulWidget { const ItemCoin({ Key key, @required this.mContext, + this.showAlternateColor, this.coinBalance, }) : super(key: key); + final bool showAlternateColor; final CoinBalance coinBalance; final BuildContext mContext; @@ -50,51 +47,61 @@ class _ItemCoinState extends State final Balance balance = widget.coinBalance.balance; final NumberFormat f = NumberFormat('###,##0.########'); final List actions = []; - if (double.parse(balance.getBalance()) > 0) { + final hasAssetBalance = double.parse(balance.getBalance()) > 0; + if (hasAssetBalance) { Log( - 'coins_page:379', - '${coin.abbr} balance: ${balance.balance}' - '; locked_by_swaps: ${balance.lockedBySwaps}'); - actions.add(SlidableAction( - label: AppLocalizations.of(context).send, - backgroundColor: Colors.white, - icon: Icons.arrow_upward, - onPressed: (context) async { - await Navigator.push( - context, - MaterialPageRoute( + 'coins_page:379', + '${coin.abbr} balance: ${balance.balance}' + '; locked_by_swaps: ${balance.lockedBySwaps}', + ); + + actions.add( + SlidableAction( + label: AppLocalizations.of(context).send, + backgroundColor: Colors.white, + icon: Icons.arrow_upward, + onPressed: (context) async { + await Navigator.push( + context, + MaterialPageRoute( builder: (BuildContext context) => CoinDetail( - coinBalance: widget.coinBalance, - isSendIsActive: true, - )), - ); - cexProvider.withdrawCurrency = null; - setState(() {}); - }, - )); + coinBalance: widget.coinBalance, + isSendIsActive: true, + ), + ), + ); + cexProvider.withdrawCurrency = null; + setState(() {}); + }, + ), + ); } - actions.add(SlidableAction( - label: AppLocalizations.of(context).receive, - backgroundColor: Theme.of(context).scaffoldBackgroundColor, - icon: Icons.arrow_downward, - onPressed: (mContext) { - showCopyDialog(context, balance.address, coin); - }, - )); - if (!coin.walletOnly && double.parse(balance.getBalance()) > 0) { - actions.add(SlidableAction( - label: AppLocalizations.of(context).swap.toUpperCase(), - backgroundColor: Theme.of(context).colorScheme.secondary, - icon: Icons.swap_vert, - onPressed: (context) { - mainBloc.setCurrentIndexTab(1); - swapHistoryBloc.isSwapsOnGoing = false; - Future.delayed(const Duration(milliseconds: 100), () { - swapBloc.updateSellCoin(widget.coinBalance); - swapBloc.setEnabledSellField(true); - }); + actions.add( + SlidableAction( + label: AppLocalizations.of(context).receive, + backgroundColor: Theme.of(context).scaffoldBackgroundColor, + icon: Icons.arrow_downward, + onPressed: (mContext) { + showCopyDialog(context, balance.address, coin); }, - )); + ), + ); + if (!coin.walletOnly && double.parse(balance.getBalance()) > 0) { + actions.add( + SlidableAction( + label: AppLocalizations.of(context).swap.toUpperCase(), + backgroundColor: Theme.of(context).colorScheme.secondary, + icon: Icons.swap_vert, + onPressed: (context) { + mainBloc.setCurrentIndexTab(1); + swapHistoryBloc.isSwapsOnGoing = false; + Future.delayed(const Duration(milliseconds: 100), () { + swapBloc.updateSellCoin(widget.coinBalance); + swapBloc.setEnabledSellField(true); + }); + }, + ), + ); } return Opacity( @@ -128,262 +135,115 @@ class _ItemCoinState extends State ), ], ), - child: Builder(builder: (BuildContext context) { - return InkWell( - borderRadius: const BorderRadius.all(Radius.circular(4)), - onLongPress: () => Slidable.of(context).openStartActionPane(), - onTap: () async { - //if (coin.suspended) { - //showSuspendedDilog(context, coin: coin); - //return; - //} - - final slidableController = Slidable.of(context); - if (slidableController != null) { - slidableController.close(); - } - await Navigator.push( - context, - MaterialPageRoute( - builder: (BuildContext context) => - CoinDetail(coinBalance: widget.coinBalance), - ), - ); - cexProvider.withdrawCurrency = null; - }, - child: Container( - color: Theme.of(context).colorScheme.surface, - child: Row( - children: [ - Container( - height: 128, - color: Color(int.parse(coin.colorCoin)), - width: 8, - ), - const SizedBox(width: 14), - SizedBox( - width: 110, - child: Column( - mainAxisAlignment: MainAxisAlignment.center, - children: [ - Stack( - children: [ - CircleAvatar( - radius: 28, - backgroundColor: Colors.transparent, - backgroundImage: - AssetImage(getCoinIconPath(balance.coin)), - ), - if (coin.suspended) - Icon( - Icons.warning_rounded, - size: 20, - color: Colors.yellow[600], - ), - ], - alignment: Alignment.bottomRight, + child: Builder( + builder: (BuildContext context) { + return Container( + color: widget.showAlternateColor + ? Theme.of(context).cardColor.withOpacity(1) + : null, + child: InkWell( + borderRadius: const BorderRadius.all(Radius.circular(4)), + onLongPress: () => Slidable.of(context).openStartActionPane(), + onTap: () async { + final slidableController = Slidable.of(context); + if (slidableController != null) { + slidableController.close(); + } + await Navigator.push( + context, + MaterialPageRoute( + builder: (BuildContext context) => + CoinDetail(coinBalance: widget.coinBalance), + ), + ); + cexProvider.withdrawCurrency = null; + }, + child: Row( + children: [ + Container( + height: 64, + color: Color(int.parse(coin.colorCoin)), + width: 6, + ), + Expanded( + child: ListTile( + leading: Container( + width: 48, + height: 48, + decoration: BoxDecoration( + color: Theme.of(context).colorScheme.surface, + shape: BoxShape.circle, + ), + alignment: Alignment.center, + clipBehavior: Clip.none, + child: coin.suspended + ? Icon( + Icons.warning_rounded, + size: 20, + color: Colors.yellow[600], + ) + : Image.asset( + getCoinIconPath(balance.coin), + fit: BoxFit.contain, + ), ), - const SizedBox(height: 8), - Text( + title: Text( coin.name.toUpperCase(), - textAlign: TextAlign.center, style: Theme.of(context).textTheme.subtitle2, ), - ], - ), - ), - Expanded( - child: Padding( - padding: - const EdgeInsets.only(top: 8, bottom: 8, right: 12), - child: Column( - mainAxisAlignment: MainAxisAlignment.center, - crossAxisAlignment: CrossAxisAlignment.end, - children: [ - StreamBuilder( - initialData: settingsBloc.showBalance, - stream: settingsBloc.outShowBalance, - builder: (BuildContext context, - AsyncSnapshot snapshot) { - String amount = f - .format(double.parse(balance.getBalance())); - if (snapshot.hasData && !snapshot.data) - amount = '**.**'; - return AutoSizeText( - '$amount ${coin.abbr}', - maxLines: 1, - style: Theme.of(context).textTheme.headline6, - ); - }), - const SizedBox(height: 8), - StreamBuilder( - initialData: settingsBloc.showBalance, - stream: settingsBloc.outShowBalance, - builder: (BuildContext context, - AsyncSnapshot snapshot) { - bool hidden = false; - if (snapshot.hasData && !snapshot.data) - hidden = true; - return Text( - cexProvider.convert( - widget.coinBalance.balanceUSD, - hidden: hidden, + trailing: StreamBuilder( + initialData: settingsBloc.showBalance, + stream: settingsBloc.outShowBalance, + builder: ( + BuildContext context, + AsyncSnapshot snapshot, + ) { + bool hidden = false; + if (snapshot.hasData && !snapshot.data) + hidden = true; + return Text( + cexProvider.convert( + widget.coinBalance.balanceUSD, + hidden: hidden, + ), + style: DefaultTextStyle.of(context) + .style + .copyWith( + color: hasAssetBalance ? null : Colors.grey, ), - style: Theme.of(context) - .textTheme - .bodyText1 - .copyWith( - color: Colors.grey, - ), - ); - }), - _buildClaimButton(), - Row( - mainAxisSize: MainAxisSize.min, - crossAxisAlignment: CrossAxisAlignment.center, - children: [ - _buildFaucetButton(), - _buildWalletOnly(), - _buildProtocolChip(coin), - ], - ), - ], + ); + }, + ), + subtitle: StreamBuilder( + initialData: settingsBloc.showBalance, + stream: settingsBloc.outShowBalance, + builder: ( + BuildContext context, + AsyncSnapshot snapshot, + ) { + String amount = + f.format(double.parse(balance.getBalance())); + if (snapshot.hasData && !snapshot.data) + amount = '**.**'; + return AutoSizeText( + '$amount ${coin.abbr}', + textAlign: TextAlign.left, + maxLines: 1, + style: DefaultTextStyle.of(context) + .style + .apply(fontSizeFactor: 0.9), + ); + }, + ), ), ), - ), - ], - ), - ), - ); - }), - ), - ); - } - - Widget _buildClaimButton() { - final bool needClaimButton = widget.coinBalance.coin.abbr == 'KMD' && - double.parse(widget.coinBalance.balance.getBalance()) >= 10; - - if (!needClaimButton) return SizedBox(); - - return Padding( - padding: const EdgeInsets.only(top: 8), - child: OutlinedButton( - onPressed: !widget.coinBalance.coin.suspended - ? () async { - rewardsProvider.update(); - Navigator.push( - context, - MaterialPageRoute( - builder: (BuildContext context) => RewardsPage()), - ); - } - : null, - style: OutlinedButton.styleFrom( - padding: const EdgeInsets.symmetric(vertical: 6, horizontal: 16), - textStyle: - Theme.of(context).textTheme.bodyText2.copyWith(fontSize: 12), - side: BorderSide(color: Theme.of(context).colorScheme.secondary), - shape: RoundedRectangleBorder( - borderRadius: BorderRadius.circular(30.0), - ), - ), - child: Row( - mainAxisSize: MainAxisSize.min, - children: [ - if (!widget.coinBalance.coin.suspended && rewardsProvider.needClaim) - Container( - padding: const EdgeInsets.only(right: 4), - child: Stack( - children: [ - SizedBox( - width: 10, - height: 10, - ), - buildRedDot(context) ], ), ), - Text(AppLocalizations.of(context).rewardsButton.toUpperCase()) - ], + ); + }, ), ), ); } - - Widget _buildFaucetButton() { - return appConfig.defaultTestCoins.contains(widget.coinBalance.coin.abbr) || - widget.coinBalance.coin.abbr == 'ZOMBIE' - ? Padding( - padding: const EdgeInsets.only(top: 8, left: 4, right: 4), - child: OutlinedButton( - onPressed: !widget.coinBalance.coin.suspended - ? () async { - showFaucetDialog( - context: context, - coin: widget.coinBalance.coin.abbr, - address: widget.coinBalance.balance.address); - } - : null, - style: OutlinedButton.styleFrom( - padding: - const EdgeInsets.symmetric(vertical: 6, horizontal: 16), - textStyle: Theme.of(context) - .textTheme - .bodyText2 - .copyWith(fontSize: 12), - side: - BorderSide(color: Theme.of(context).colorScheme.secondary), - shape: RoundedRectangleBorder( - borderRadius: BorderRadius.circular(30.0), - ), - ), - child: Text(AppLocalizations.of(context).faucetName), - ), - ) - : SizedBox(); - } - - Widget _buildProtocolChip(Coin coin) { - return Padding( - padding: const EdgeInsets.only(top: 8, left: 4), - child: BuildProtocolChip(coin), - ); - } - - Widget _buildWalletOnly() { - if (!widget.coinBalance.coin.walletOnly) return SizedBox(); - - return Padding( - padding: EdgeInsets.only(top: 8, left: 4), - child: InkWell( - onTap: () { - ScaffoldMessengerState scaffoldMessenger; - try { - scaffoldMessenger = ScaffoldMessenger.of(context); - } catch (_) {} - - if (scaffoldMessenger != null) { - scaffoldMessenger.showSnackBar(SnackBar( - duration: Duration(seconds: 2), - content: Text(AppLocalizations.of(context).dexIsNotAvailable), - )); - } - }, - child: Container( - decoration: BoxDecoration( - borderRadius: const BorderRadius.all(Radius.circular(16)), - color: Theme.of(context).scaffoldBackgroundColor, - ), - padding: const EdgeInsets.symmetric(vertical: 8, horizontal: 12), - child: Text( - AppLocalizations.of(context).walletOnly.toUpperCase(), - style: Theme.of(context) - .textTheme - .caption - .copyWith(fontFamily: 'RobotoCondensed'), - ), - )), - ); - } } diff --git a/lib/screens/settings/setting_page.dart b/lib/screens/settings/setting_page.dart index 0866f8e6f..4543899c5 100644 --- a/lib/screens/settings/setting_page.dart +++ b/lib/screens/settings/setting_page.dart @@ -1,26 +1,36 @@ import 'dart:convert'; import 'dart:io'; -import 'package:komodo_dex/packages/z_coin_activation/bloc/z_coin_activation_bloc.dart'; -import 'package:komodo_dex/packages/z_coin_activation/bloc/z_coin_activation_event.dart'; +import 'package:flutter/material.dart'; +import 'package:flutter_svg/svg.dart'; import 'package:komodo_dex/packages/z_coin_activation/widgets/z_coin_status_list_tile.dart'; import 'package:komodo_dex/utils/log_storage.dart'; +import 'package:package_info_plus/package_info_plus.dart'; +import 'package:provider/provider.dart'; +import 'package:share/share.dart'; import '../../app_config/app_config.dart'; -import '../../blocs/camo_bloc.dart'; -import '../../model/cex_provider.dart'; -import '../../model/swap.dart'; -import '../../model/swap_provider.dart'; -import 'package:flutter/material.dart'; -import 'package:flutter_svg/svg.dart'; import '../../blocs/authenticate_bloc.dart'; +import '../../blocs/camo_bloc.dart'; import '../../blocs/dialog_bloc.dart'; import '../../blocs/main_bloc.dart'; import '../../blocs/settings_bloc.dart'; import '../../blocs/wallet_bloc.dart'; import '../../localizations.dart'; +import '../../model/cex_provider.dart'; +import '../../model/swap.dart'; +import '../../model/swap_provider.dart'; import '../../model/updates_provider.dart'; import '../../model/wallet_security_settings_provider.dart'; +import '../../services/mm_service.dart'; +import '../../utils/log.dart'; +import '../../utils/utils.dart'; +import '../../widgets/build_red_dot.dart'; +import '../../widgets/custom_simple_dialog.dart'; +import '../../widgets/eula_contents.dart'; +import '../../widgets/primary_button.dart'; +import '../../widgets/scrollable_dialog.dart'; +import '../../widgets/tac_contents.dart'; import '../authentification/lock_screen.dart'; import '../authentification/pin_page.dart'; import '../authentification/show_delete_wallet_confirmation.dart'; @@ -31,19 +41,6 @@ import '../import-export/import_swap_page.dart'; import '../settings/camo_pin_setup_page.dart'; import '../settings/updates_page.dart'; import '../settings/view_seed_unlock_page.dart'; -import '../../services/mm_service.dart'; -import '../../utils/log.dart'; -import '../../utils/utils.dart'; -import '../../widgets/build_red_dot.dart'; -import '../../widgets/custom_simple_dialog.dart'; -import '../../widgets/eula_contents.dart'; -import '../../widgets/primary_button.dart'; -import '../../widgets/scrollable_dialog.dart'; -import '../../widgets/tac_contents.dart'; - -import 'package:provider/provider.dart'; -import 'package:share/share.dart'; -import 'package:package_info_plus/package_info_plus.dart'; class SettingPage extends StatefulWidget { @override @@ -57,7 +54,6 @@ class _SettingPageState extends State { @override void initState() { - context.read().add(ZCoinActivationStatusRequested()); _getVersionApplication().then((String onValue) { setState(() { version = onValue; @@ -124,11 +120,6 @@ class _SettingPageState extends State { _buildTitle(AppLocalizations.of(context).developerTitle), _buildEnableTestCoins(), SizedBox(height: 2), - - // - ZCoinStatusWidget(), - SizedBox(height: 2), - _buildTitle(version), if (appConfig.isUpdateCheckerEnabled) _buildUpdate(), const SizedBox( diff --git a/lib/screens/settings/view_private_keys.dart b/lib/screens/settings/view_private_keys.dart index 836ae3fc8..eb1b29f05 100644 --- a/lib/screens/settings/view_private_keys.dart +++ b/lib/screens/settings/view_private_keys.dart @@ -129,7 +129,7 @@ class _CoinPrivKeyState extends State { Widget _buildDialogContent() { return SizedBox( - height: MediaQuery.of(context).size.height * 0.5, + height: MediaQuery.of(context).size.height * 0.65, width: MediaQuery.of(context).size.width * 0.9, child: FutureBuilder( future: MM.getPrivKey(GetPrivKey(coin: widget.coin)), diff --git a/lib/services/mm.dart b/lib/services/mm.dart index d6c4b0b38..dfc21b70d 100644 --- a/lib/services/mm.dart +++ b/lib/services/mm.dart @@ -1,3 +1,4 @@ +import 'dart:async'; import 'dart:convert'; import 'package:flutter/cupertino.dart'; @@ -220,7 +221,7 @@ class ApiProvider { ).toJson(), ); - // https://developers.atomicdex.io/basic-docs/atomicdex/atomicdex-api.html#electrum + // https://developers.komodoplatform.com/basic-docs/atomicdex/atomicdex-api.html#electrum final electrum = { 'method': 'electrum', 'userpass': mmSe.userpass, @@ -295,7 +296,7 @@ class ApiProvider { } } - /// https://developers.atomicdex.io/basic-docs/atomicdex/atomicdex-api.html#coins-needed-for-kick-start + /// https://developers.komodoplatform.com/basic-docs/atomicdex/atomicdex-api.html#coins-needed-for-kick-start Future getCoinToKickStart( http.Client client, BaseService body, @@ -378,7 +379,7 @@ class ApiProvider { } /// Returns a parsed JSON of the MM metrics - /// https://developers.atomicdex.io/basic-docs/atomicdex/atomicdex-tutorials/atomicdex-metrics.html + /// https://developers.komodoplatform.com/basic-docs/atomicdex/atomicdex-tutorials/atomicdex-metrics.html Future getMetricsMM2(BaseService body, {http.Client client}) async { client ??= mmSe.client; final userBody = await _assertUserpass(client, body); @@ -453,7 +454,9 @@ class ApiProvider { ) .then((Response res) { _assert200(res); - return orderbookFromJson(res.body); + return orderbookFromJson( + json.encode(json.decode(res.body)['result']), + ); }), ); } catch (e) { @@ -718,6 +721,26 @@ class ApiProvider { ), ); + /// Ping mm2 endpoint to check if the host up. Use [isRpcUp] to verify + /// that the API is running. [pingMm2] is useful to check if the host is + /// running without trying to authenticate since the IP will be banned if + /// an invalid RPC password is used multiple times. + Future pingMm2({http.Client client}) async { + client ??= mmSe.client; + try { + final r = await client.post( + Uri.parse(url), + body: json.encode({'method': 'ping'}), + ); + + Log('ApiProvider:pingMm2', r.toString()); + + return true; + } catch (e) { + return false; + } + } + Future getVersionMM2(BaseService body, {http.Client client}) async { client ??= mmSe.client; @@ -748,15 +771,67 @@ class ApiProvider { return value; } + Completer _completerRpcIsUp; + Timer _recheckIfRpcIsUpTimer; + + void _completeRpcUpCheck({bool isError = false}) { + if (isError) throw UnimplementedError(); + + _completerRpcIsUp?.complete(); + _recheckIfRpcIsUpTimer?.cancel(); + + _completerRpcIsUp = null; + _recheckIfRpcIsUpTimer = null; + } + + Future untilRpcIsUp() async { + const MAX_RETRIES = null; + const retryWarningInterval = Duration(seconds: 100); + + _completerRpcIsUp ??= Completer(); + + if (await isRpcUp()) { + return _completerRpcIsUp.future.then((_) => _completeRpcUpCheck()); + } + + if (!(_recheckIfRpcIsUpTimer?.isActive ?? false)) { + int retries = 0; + + _recheckIfRpcIsUpTimer = + Timer.periodic(Duration(seconds: 1), (Timer t) async { + final isUp = mmSe.running && await pingMm2() && await isRpcUp(); + + final exceededMaxRetries = + (MAX_RETRIES != null && retries >= MAX_RETRIES); + + if (isUp || exceededMaxRetries) { + _completeRpcUpCheck(); + } + + retries++; + + // Every [retryWarningInterval] seconds, log a warning + if (retries % retryWarningInterval.inSeconds == 0) { + Log( + 'ApiProvider:untilRpcIsUp', + ': Waiting a long time for RPC to be up', + ); + } + }); + } + + return _completerRpcIsUp.future; + } + Future isRpcUp([http.Client client]) async { client ??= mmSe.client; bool isUp = false; try { - final VersionMm2 versionmm2 = + final VersionMm2 versionMm2 = await MM.getVersionMM2(BaseService(method: 'version')); - isUp = versionmm2 is VersionMm2 && versionmm2 != null; + isUp = versionMm2 is VersionMm2 && versionMm2 != null; } catch (e) { Log('mm', 'isRpcUp: $e'); } @@ -865,8 +940,6 @@ class ApiProvider { _assert200(r); _logRes('postWithdraw', r); - final parsedBody = _parseResponse(r); - return withdrawResponseFromJson(res.body); } @@ -885,9 +958,6 @@ class ApiProvider { } while (true) { - // TODO: Handle "In progress" status. Currently we are only emitting - // the initial and completed status. - client ??= mmSe.client; final userBody = await _assertUserpass( @@ -907,20 +977,22 @@ class ApiProvider { final result = parsedBody['result'] as Map; final status = result['status'] as String; - final details = result['details'] as Map; + dynamic details = result['details']; // String or Map - if (status == 'Ok') { - yield WithdrawResponse.fromJson(details); - return; + if (status == 'InProgress') { + // Would be a real shame if we DDOSed ourselves. + await Future.delayed(const Duration(seconds: 3)); + + continue; // No-op, continue the loop. } - if (status == 'InProgress') { - // No-op, continue the loop. - } else { - throw ErrorString('Withdraw failed with unknown status: $status'); + if (status == 'Ok' && details is Map) { + yield WithdrawResponse.fromJson(details); + return; } - await Future.delayed(const Duration(seconds: 3)); + Log('mm:withdrawTaskStream', 'status: $status, details: $details'); + throw ErrorString('Withdraw failed with unknown status: $status'); } } @@ -988,7 +1060,7 @@ class ApiProvider { } void _assertSuccess({@required String error, @required int code}) { - final isErrorCode = code != null || !code.toString().startsWith('2'); + final isErrorCode = code != null && !code.toString().startsWith('2'); final isErrorMessage = error != null && error.isNotEmpty; @@ -1014,7 +1086,7 @@ class ApiProvider { .replaceFirstMapped(RegExp('^(.{0,99}).*'), (Match m) => m[1]); } throw ErrorString( - 'HTTP ${r.statusCode}: Could not assert 200 in response.', + 'HTTP ${r.statusCode}: Could not assert 200 in response. $emsg', ); } } diff --git a/lib/services/mm_service.dart b/lib/services/mm_service.dart index 71eaa604e..c5718a877 100644 --- a/lib/services/mm_service.dart +++ b/lib/services/mm_service.dart @@ -1,7 +1,6 @@ import 'dart:async'; import 'dart:convert'; import 'dart:io'; -import 'dart:isolate'; import 'dart:math'; import 'package:flutter/foundation.dart'; @@ -9,8 +8,8 @@ import 'package:flutter/services.dart' show EventChannel, MethodChannel, rootBundle, SystemChannels; import 'package:http/http.dart' as http; import 'package:http/http.dart'; +import 'package:komodo_dex/app_config/coins_updater.dart'; import 'package:package_info_plus/package_info_plus.dart'; -import 'package:path/path.dart' as path; import '../app_config/app_config.dart'; import '../blocs/coins_bloc.dart'; @@ -31,7 +30,7 @@ import '../utils/utils.dart'; /// Singleton shorthand for `MMService()`, Market Maker API. MMService mmSe = MMService._internal(); -/// Interface to Market Maker, https://developers.atomicdex.io/ +/// Interface to Market Maker, https://developers.komodoplatform.com/ class MMService { factory MMService() => mmSe; MMService._internal(); @@ -40,7 +39,15 @@ class MMService { Process mm2Process; List coins = []; - /// Switched on when we hear from MM. + /// Represents wether mm2 has been started or not for this session even if + /// it is not currently running. + /// + /// On iOS, the RPC server is killed when the app goes to background. This + /// will remain true when the app is restored. + /// + /// Use [MM.isRpcUp()] to get the current status of the RPC server. + /// + /// Use [MM.untilRpcIsUp()] to efficiently await until RPC is up. bool get running => _running; bool _running = false; @@ -150,7 +157,7 @@ class MMService { jobService.install('updateMm2VersionInfo', 3.14, (j) async { if (!mmSe.running) return; - if (mmVersion == null && mmDate == null) { + if (mmVersion == null && mmDate == null && await MM.pingMm2()) { await initializeMmVersion(); } }); @@ -451,7 +458,7 @@ class MMService { Future> readJsonCoinInit() async { try { - return jsonDecode(await rootBundle.loadString('assets/coins.json')); + return jsonDecode(await CoinUpdater().getCoins()); } catch (e) { if (kDebugMode) { Log('mm_service', 'readJsonCoinInit] $e'); @@ -469,7 +476,7 @@ class MMService { await coinsBloc.activateCoinKickStart(); final active = await coinsBloc.electrumCoins(); - await coinsBloc.enableCoins(active); + await coinsBloc.enableCoins(active, initialization: true); for (int i = 0; i < 2; i++) { await coinsBloc.retryActivatingSuspendedCoins(); @@ -525,19 +532,33 @@ class MMService { return mm2StatusFrom(await checkStatusMm2()); } - Future handleWakeUp() async { - if (!Platform.isIOS) return; - if (!running) return; + /// Handles the initialisation of MM2 and the app state if the app was + /// suspended and then resumed. + /// + /// Returns a [bool] with the result of whether a wake-up was performed. + /// Typically this is only necessary on iOS. + FutureOr wakeUpSuspendedApi() async { + if (!Platform.isIOS || !running) return false; /// Wait until mm2 is up, in case it was restarted from Swift - await pauseUntil(() async => await MM.isRpcUp()); + await MM.untilRpcIsUp(); /// If [running], but enabled coins list is empty, /// it means that mm2 was restarted from Swift, and we /// should reenable active coins ones again - if ((await MM.getEnabledCoins()).isEmpty) initCoinsAndLoad(); + if (await hasCoinsLoaded()) return false; + + await initCoinsAndLoad().catchError((e) { + Log('MMService:handleWakeUp', + 'Failed to init coins and load. ${e.toString()}'); + }); + + return true; } + Future hasCoinsLoaded() async => + (await MM.getEnabledCoins()).isNotEmpty; + Future> getAllBalances(bool forceUpdate) async { Log('mm_service', 'getAllBalances'); final List coins = await coinsBloc.electrumCoins(); diff --git a/lib/services/notif_service.dart b/lib/services/notif_service.dart index 989bd4f7b..490ba3594 100644 --- a/lib/services/notif_service.dart +++ b/lib/services/notif_service.dart @@ -1,6 +1,7 @@ import 'dart:async'; import 'package:flutter/services.dart'; +import 'package:flutter_local_notifications/flutter_local_notifications.dart'; import '../blocs/coins_bloc.dart'; import '../blocs/main_bloc.dart'; import '../localizations.dart'; @@ -51,11 +52,24 @@ class NotifService { } try { - await chanell.invokeMethod('show_notification', { - 'title': notif.title, - 'text': notif.text, - 'uid': nativeId, - }); + await FlutterLocalNotificationsPlugin().show( + nativeId, + notif.title, + notif.text, + NotificationDetails( + android: AndroidNotificationDetails( + 'komodo_dex', + 'Komodo DEX', + importance: Importance.defaultImportance, + priority: Priority.defaultPriority, + ), + iOS: DarwinNotificationDetails( + presentAlert: true, + presentBadge: true, + presentSound: null, + ), + ), + ); } catch (e) { Log('notif_service', 'show] $e'); } @@ -112,7 +126,7 @@ class NotifService { )); if (res is! Transactions) continue; - for (Transaction tx in res.result.transactions) { + for (Transaction tx in res.result?.transactions ?? []) { if (tx.to.contains(address)) { if (double.parse(tx.myBalanceChange) < 0) continue; transactions.add(tx); diff --git a/lib/utils/log.dart b/lib/utils/log.dart index 4ac0fc0b5..9be6d2e0a 100644 --- a/lib/utils/log.dart +++ b/lib/utils/log.dart @@ -1,12 +1,11 @@ import 'dart:async'; import 'dart:io'; -import 'dart:isolate'; import 'dart:math'; + import 'package:flutter/foundation.dart'; import 'package:flutter_secure_storage/flutter_secure_storage.dart'; -import 'package:komodo_dex/utils/log_storage.dart'; -import 'package:shared_preferences/shared_preferences.dart'; import 'package:intl/intl.dart'; +import 'package:komodo_dex/utils/log_storage.dart'; import '../services/mm_service.dart'; import '../utils/utils.dart'; @@ -18,7 +17,6 @@ class Log { factory Log(String key, dynamic message) { Log.println(key, message); return _instance; - return null; } Log._(); static final _instance = Log._(); @@ -34,10 +32,9 @@ class Log { //return message.toString().startsWith('pickMode]') || message.toString().startsWith('play]'); //return key.startsWith('swap_provider:'); return kDebugMode; - return true; } - static FlutterSecureStorage _secureStorage = FlutterSecureStorage(); + static final FlutterSecureStorage _secureStorage = FlutterSecureStorage(); static String twoDigits(int n) => n >= 10 ? '$n' : '0$n'; diff --git a/lib/utils/utils.dart b/lib/utils/utils.dart index 22172f1d0..7534a9a54 100644 --- a/lib/utils/utils.dart +++ b/lib/utils/utils.dart @@ -960,3 +960,16 @@ bool isCoinPresent(Coin coin, String query, String filter) { (coin.abbr.toLowerCase().contains(query.trim().toLowerCase()) || coin.name.toLowerCase().contains(query.trim().toLowerCase())); } + +String formatAddressShort(String address) { + if (address == null) return null; + if (address.length < 10) return address; + return address.substring(0, 5) + + '...' + + address.substring(address.length - 5); +} + +String flattenParagraphs(String text) { + if (text == null) return null; + return text.replaceAll('\n', ' ').replaceAll('\r', ' ').replaceAll('\t', ' '); +} diff --git a/lib/widgets/animated_collapse.dart b/lib/widgets/animated_collapse.dart new file mode 100644 index 000000000..d3af9b3dd --- /dev/null +++ b/lib/widgets/animated_collapse.dart @@ -0,0 +1,78 @@ +import 'package:flutter/material.dart'; + +class AnimatedCollapse extends StatefulWidget { + const AnimatedCollapse({ + Key key, + @required this.fullHeight, + @required this.isCollapsed, + @required this.child, + }) : super(key: key); + + final Widget child; + final bool isCollapsed; + final double fullHeight; + + @override + _AnimatedCollapseState createState() => _AnimatedCollapseState(); +} + +class _AnimatedCollapseState extends State + with SingleTickerProviderStateMixin { + AnimationController _controller; + Animation _heightAnimation; + + @override + void initState() { + super.initState(); + + _controller = AnimationController( + duration: const Duration(milliseconds: 400), + vsync: this, + ); + + _heightAnimation = Tween( + begin: widget.fullHeight, + end: 0, + ).animate(CurvedAnimation(parent: _controller, curve: Curves.easeInOutExpo)) + ..addListener(() { + setState(() {}); + }); + + if (widget.isCollapsed) { + _controller.value = 1.0; // set to collapsed + } + } + + @override + void didUpdateWidget(AnimatedCollapse oldWidget) { + super.didUpdateWidget(oldWidget); + if (widget.isCollapsed != oldWidget.isCollapsed) { + if (widget.isCollapsed) { + _controller.forward(); + } else { + _controller.reverse(); + } + } + } + + @override + Widget build(BuildContext context) { + return AnimatedBuilder( + animation: _controller, + builder: (context, child) { + return Container( + clipBehavior: Clip.antiAlias, + decoration: BoxDecoration(shape: BoxShape.rectangle), + height: _heightAnimation.value, + child: _heightAnimation.value == 0 ? null : widget.child, + ); + }, + ); + } + + @override + void dispose() { + _controller.dispose(); + super.dispose(); + } +} diff --git a/lib/widgets/animated_linear_progress_indicator.dart b/lib/widgets/animated_linear_progress_indicator.dart new file mode 100644 index 000000000..c63ff6a6e --- /dev/null +++ b/lib/widgets/animated_linear_progress_indicator.dart @@ -0,0 +1,133 @@ +import 'package:flutter/material.dart'; + +class AnimatedLinearProgressIndicator extends StatefulWidget { + const AnimatedLinearProgressIndicator({ + Key key, + @required this.value, + // this.duration = const Duration(milliseconds: 200), + this.duration = const Duration(milliseconds: 800), + this.trackColor, + this.progressColor, + }) : super(key: key); + + /// Progress value between 0.0 and 1.0 + final double value; + final Duration duration; + final Color trackColor; + final Color progressColor; + + @override + _AnimatedLinearProgressIndicatorState createState() => + _AnimatedLinearProgressIndicatorState(); +} + +class _AnimatedLinearProgressIndicatorState + extends State + with TickerProviderStateMixin { + AnimationController _controller; + + @override + void initState() { + super.initState(); + _controller = AnimationController( + vsync: this, + duration: widget.duration, + upperBound: 1, + lowerBound: 0, + value: widget.value, + ); + + _controller.addListener(() => setState(() {})); + } + + @override + void didUpdateWidget(AnimatedLinearProgressIndicator oldWidget) { + super.didUpdateWidget(oldWidget); + + if (oldWidget.value != widget.value) { + _controller.animateTo( + widget.value, + duration: widget.duration, + curve: Curves.easeInOut, + ); + } + } + + @override + void dispose() { + _controller.dispose(); + super.dispose(); + } + + @override + Widget build(BuildContext context) { + final linearProgressTheme = Theme.of(context).progressIndicatorTheme; + final displayedTrackColor = widget.trackColor ?? + linearProgressTheme.linearTrackColor ?? + Theme.of(context).colorScheme.background; + + final displayedProgressColor = + widget.progressColor ?? linearProgressTheme.color; + + final displayedHeight = linearProgressTheme.linearMinHeight ?? 4; + + return CustomPaint( + key: Key('animated_linear_progress_indicator_custom_paint'), + painter: _ProgressBarPainter( + progress: _controller.value, + progressColor: displayedProgressColor, + trackColor: displayedTrackColor, + ), + child: Container(height: displayedHeight), + ); + } +} + +class _ProgressBarPainter extends CustomPainter { + _ProgressBarPainter({ + @required this.progress, + @required this.trackColor, + @required this.progressColor, + //ignore: unused_element + this.borderRadius = Radius.zero, + }) : assert(progress != null && progress >= 0.0 && progress <= 1.0); + + final double progress; + final Color trackColor; + final Color progressColor; + final Radius borderRadius; + + @override + void paint(Canvas canvas, Size size) { + final backgroundPaint = Paint() + ..color = trackColor + ..style = PaintingStyle.fill; + + final progressPaint = Paint() + ..color = progressColor + ..style = PaintingStyle.fill; + + final backgroundRect = RRect.fromRectAndRadius( + Rect.fromPoints(Offset.zero, Offset(size.width, size.height)), + borderRadius, + ); + canvas.drawRRect(backgroundRect, backgroundPaint); + + // Clamp the progress between 0 and 1 to avoid any issues. + final clampedProgress = progress.clamp(0.0, 1.0); + + final progressRect = RRect.fromRectAndRadius( + Rect.fromPoints( + Offset.zero, + Offset(size.width * clampedProgress, size.height), + ), + borderRadius, + ); + canvas.drawRRect(progressRect, progressPaint); + } + + @override + bool shouldRepaint(covariant _ProgressBarPainter oldDelegate) { + return oldDelegate.progress != progress; + } +} diff --git a/lib/widgets/eager_floating_action_button.dart b/lib/widgets/eager_floating_action_button.dart new file mode 100644 index 000000000..bc88e5447 --- /dev/null +++ b/lib/widgets/eager_floating_action_button.dart @@ -0,0 +1,96 @@ +import 'package:flutter/material.dart'; + +/// An eager floating action button (FAB) that responds to taps even when it's not "ready". +/// +/// The FAB, when tapped while not ready, will display a circular progress loader. If the FAB +/// becomes ready after being tapped, the provided `onTap` callback will be triggered automatically. +/// +/// Usage: +/// +/// ```dart +/// EagerFloatingActionButton( +/// isReady: someCondition, +/// onTap: () { +/// // Handle FAB tap here. +/// }, +/// child: Icon(Icons.add), +/// ) +/// ``` +class EagerFloatingActionButton extends StatefulWidget { + /// Creates an instance of the eager floating action button. + const EagerFloatingActionButton({ + @required this.onTap, + @required this.isReady, + this.child, + this.location, + }); + + /// The callback that is called when the FAB is tapped and is ready. + /// + /// If the FAB is tapped when not ready, this callback will be called once the FAB becomes ready. + final VoidCallback onTap; + + /// Indicates whether the FAB is ready or not. + /// + /// If `false`, the FAB will show a circular progress loader when tapped. + final bool isReady; + + /// The widget to display inside the FAB. + /// + /// Typically an [Icon]. + final Widget child; + + /// The location to place the FAB within the [Scaffold], if needed. + final FloatingActionButtonLocation location; + + @override + _EagerFloatingActionButtonState createState() => + _EagerFloatingActionButtonState(); +} + +class _EagerFloatingActionButtonState extends State { + bool _isLoading = false; + + @override + void didUpdateWidget(EagerFloatingActionButton oldWidget) { + super.didUpdateWidget(oldWidget); + + if (widget.isReady == oldWidget.isReady) return; + + if (!_isLoading) return; + + if (widget.isReady && widget.onTap != null) { + widget.onTap(); + } + + if (widget.isReady) { + _isLoading = false; + } + } + + @override + Widget build(BuildContext context) { + final isTappable = widget.onTap != null && _isLoading == false; + + return FloatingActionButton( + onPressed: isTappable + ? () { + if (!widget.isReady) { + setState(() { + _isLoading = true; + }); + } else { + widget.onTap(); + } + } + : null, + child: _isLoading + ? CircularProgressIndicator( + valueColor: AlwaysStoppedAnimation( + Theme.of(context).colorScheme.onPrimary, + ), + ) + : widget.child, + ); + } +} diff --git a/lib/widgets/qr_view.dart b/lib/widgets/qr_view.dart index 4d1f31dfa..d9538fef2 100644 --- a/lib/widgets/qr_view.dart +++ b/lib/widgets/qr_view.dart @@ -1,6 +1,7 @@ import 'dart:async'; import 'package:flutter/material.dart'; +import 'package:komodo_dex/localizations.dart'; import 'package:mobile_scanner/mobile_scanner.dart'; class QRScan extends StatefulWidget { @@ -16,7 +17,7 @@ class _QRScanState extends State { @override Widget build(BuildContext context) { return Scaffold( - appBar: AppBar(title: const Text('QR Code Scanner')), + appBar: AppBar(title: Text(AppLocalizations.of(context).qrCodeScanner)), body: MobileScanner( allowDuplicates: false, controller: MobileScannerController(formats: [BarcodeFormat.qrCode]), @@ -30,7 +31,8 @@ class _QRScanState extends State { if (code != null) { debugPrint('Barcode found! $code'); ScaffoldMessenger.of(context).showSnackBar( - const SnackBar(content: Text('Found Qr Code')), + SnackBar( + content: Text(AppLocalizations.of(context).foundQrCode)), ); await Future.delayed(Duration(seconds: 1)); diff --git a/lib/widgets/secondary_button.dart b/lib/widgets/secondary_button.dart index d6848df59..47f990b5d 100644 --- a/lib/widgets/secondary_button.dart +++ b/lib/widgets/secondary_button.dart @@ -6,6 +6,7 @@ class SecondaryButton extends StatelessWidget { @required this.onPressed, this.text, this.child, + this.icon, this.isDarkMode = true, this.borderColor = Colors.black, this.height, @@ -16,6 +17,7 @@ class SecondaryButton extends StatelessWidget { final VoidCallback onPressed; final String text; final Widget child; + final Widget icon; final bool isDarkMode; final Color borderColor; final Color textColor; @@ -24,41 +26,56 @@ class SecondaryButton extends StatelessWidget { @override Widget build(BuildContext context) { - Widget child; - bool isSend = false; + Widget finalChild = child; + bool isSend = text != null && text == 'SEND'; + if (text != null) { - if (text == 'SEND') { - isSend = true; - } - child = Text( + finalChild = Text( text.toUpperCase(), maxLines: 1, - overflow: TextOverflow.ellipsis, + overflow: TextOverflow.fade, + softWrap: false, ); - } else { - child = child; } + return SizedBox( height: height, - width: double.infinity, - child: OutlinedButton( - key: isSend ? const Key('secondary-button-send') : null, - onPressed: onPressed, - style: OutlinedButton.styleFrom( - primary: Theme.of(context).brightness == Brightness.light - ? textColor - : Theme.of(context).colorScheme.onSurface, - padding: const EdgeInsets.symmetric(vertical: 12, horizontal: 16), - side: BorderSide( - color: Theme.of(context).brightness == Brightness.light - ? borderColor - : Colors.white, - ), - shape: RoundedRectangleBorder( - borderRadius: BorderRadius.circular(30.0), - ), - ), - child: child, + + // Please don't do this. It makes it difficult work with the widget in + // situations where you want to constrain the button to take up as + // little space as possible. Instead, let the parent widget handle + // constraining the button. + width: width ?? double.infinity, + child: icon == null + ? OutlinedButton( + key: isSend ? const Key('secondary-button-send') : null, + onPressed: onPressed, + style: _getButtonStyle(context), + child: finalChild, + ) + : OutlinedButton.icon( + key: isSend ? const Key('secondary-button-send') : null, + onPressed: onPressed, + style: _getButtonStyle(context), + icon: icon, + label: finalChild, + ), + ); + } + + ButtonStyle _getButtonStyle(BuildContext context) { + return OutlinedButton.styleFrom( + primary: Theme.of(context).brightness == Brightness.light + ? textColor + : Theme.of(context).colorScheme.onSurface, + padding: const EdgeInsets.symmetric(vertical: 12, horizontal: 16), + side: BorderSide( + color: Theme.of(context).brightness == Brightness.light + ? borderColor + : Colors.white, + ), + shape: RoundedRectangleBorder( + borderRadius: BorderRadius.circular(30.0), ), ); } diff --git a/lib/widgets/swap_share_card.dart b/lib/widgets/swap_share_card.dart index 402fb9f63..b5840afbf 100644 --- a/lib/widgets/swap_share_card.dart +++ b/lib/widgets/swap_share_card.dart @@ -1,4 +1,5 @@ import 'package:flutter/material.dart'; +import 'package:url_launcher/url_launcher_string.dart'; import '../model/swap.dart'; import '../utils/utils.dart'; import 'package:intl/intl.dart'; @@ -225,21 +226,25 @@ class SwapShareCard extends StatelessWidget { ), Padding( padding: const EdgeInsets.fromLTRB(0, 0, 8, 8), - child: Column( - mainAxisSize: MainAxisSize.min, - crossAxisAlignment: CrossAxisAlignment.end, - children: [ - const Expanded(child: SizedBox()), - Image.asset( - 'assets/swap_share/swap_share_qrcode.png', - height: 34, - ), - const SizedBox(height: 8), - const Text( - 'Download Komodo Wallet on atomicdex.io', - style: TextStyle(fontSize: 6), - ), - ], + child: GestureDetector( + onTap: () => + launchUrlString('https://komodoplatform.com'), + child: Column( + mainAxisSize: MainAxisSize.min, + crossAxisAlignment: CrossAxisAlignment.end, + children: [ + const Expanded(child: SizedBox()), + Image.asset( + 'assets/swap_share/swap_share_qrcode.png', + height: 34, + ), + const SizedBox(height: 8), + const Text( + 'Download Komodo Wallet on komodoplatform.com', + style: TextStyle(fontSize: 6), + ), + ], + ), ), ), ], diff --git a/pubspec.yaml b/pubspec.yaml index 5f4463d20..cb8243851 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -7,12 +7,12 @@ description: Multicoin Wallet with DEX gateway # Both the version and the builder number may be overridden in flutter # build by specifying --build-name and --build-number, respectively. # Read more about versioning at semver.org. -version: 0.7.0+0 +version: 0.8.0+0 publish_to: none environment: - sdk: ">=2.3.0 <3.0.0" + sdk: ">=2.8.1 <3.0.0" # We're using specific (pinned) plugin versions in order to help us review the dependency upgrades. # KomodoPlatform plugin upgrades should be created as new branches, with PR into master;