diff --git a/.github/ISSUE_TEMPLATE/bug_report.md b/.github/ISSUE_TEMPLATE/bug_report.md
index 3a058c8b6c..a6c06597fa 100644
--- a/.github/ISSUE_TEMPLATE/bug_report.md
+++ b/.github/ISSUE_TEMPLATE/bug_report.md
@@ -1,6 +1,6 @@
---
name: Bug report
-about: Create a report to help us improve
+about: Something looks wierd or doesn't work as expected? Let us know the details so we can fix it!
title: "[BUG]: "
labels: bug
assignees: ''
@@ -8,25 +8,28 @@ assignees: ''
---
**Describe the bug**
-A clear and concise description of what the bug is.
+Please give us a clear and concise description of what the bug is, including screenshots or video if applicable.
+
**To Reproduce**
Steps to reproduce the behavior:
1. Go to '...'
-2. Click on '....'
-3. Scroll down to '....'
+2. Scroll down to '....'
+3. Click on '....'
4. See error
+
**Expected behavior**
-A clear and concise description of what you expected to happen.
+Please describe what you expected to happen.
+
-**Screenshots**
-If applicable, add screenshots to help explain your problem.
+**Operating Environment(s):**
+ - OS: [e.g. Windows/OSX/Linux. If Linux, include distro. ]
+ - OS version: [e.g. 7/10/11, 10.13/10.15, 18.04/20.04 ]
+ - AtomicDEX Version: [e.g. 0.5.7]
+ - Build branch: [e.g. master/dev]
-**Desktop (please complete the following information):**
- - OS: [e.g. iOS]
- - Browser [e.g. chrome, safari]
- - Version [e.g. 22]
**Additional context**
-Add any other context about the problem here.
+ - Add any related context about the problem here (e.g. screen resolution, mining activity on address)
+ - Attach [log files](https://forum.komodoplatform.com/t/accessing-atomicdex-desktop-log-files/540)
diff --git a/.github/ISSUE_TEMPLATE/feature_request.md b/.github/ISSUE_TEMPLATE/feature_request.md
index 89af96c70e..11f973fa6c 100644
--- a/.github/ISSUE_TEMPLATE/feature_request.md
+++ b/.github/ISSUE_TEMPLATE/feature_request.md
@@ -1,20 +1,24 @@
---
name: Feature request
-about: Suggest an idea for this project
-title: "[FEATURE REQUEST]: "
+about: Something missing? Got a cool idea? Let us know!
+title: "[FR]: "
labels: ''
assignees: ''
---
**Is your feature request related to a problem? Please describe.**
-A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]
+What problem does your suggestion solve? E.g. It would be more convenient if [...]
+
+
+**Describe your solution**
+A clear and concise description of how your solution could be implemented.
-**Describe the solution you'd like**
-A clear and concise description of what you want to happen.
**Describe alternatives you've considered**
-A clear and concise description of any alternative solutions or features you've considered.
+Have you considered any alternative approaches to solving to the problem?
+
**Additional context**
-Add any other context or screenshots about the feature request here.
+For visual features, screenshots are great to include.
+If your request is similar to a feature frm a different app, please include a link.
diff --git a/.github/ISSUE_TEMPLATE/support.md b/.github/ISSUE_TEMPLATE/support.md
new file mode 100644
index 0000000000..c3b49f6c2a
--- /dev/null
+++ b/.github/ISSUE_TEMPLATE/support.md
@@ -0,0 +1,12 @@
+---
+name: Support query
+about: Did something go wrong? Need some help? Please follow the links below for assistance
+title: "[SQ]: "
+labels: 'support'
+assignees: ''
+
+---
+
+[Komodo Platform Discord Support Channel](https://discord.gg/RRZ8hzc)
+[Komodo Platform Forum](https://forum.komodoplatform.com/t/atomicdex-desktop-collection/541)
+[Develper Documentation](https://developers.komodoplatform.com/)
\ No newline at end of file
diff --git a/.github/workflows/atomicdex-desktop-ci.yml b/.github/workflows/atomicdex-desktop-ci.yml
index 4f6964f310..0da80bdc12 100644
--- a/.github/workflows/atomicdex-desktop-ci.yml
+++ b/.github/workflows/atomicdex-desktop-ci.yml
@@ -12,10 +12,13 @@ on:
- cron: '0 0 * * 1'
env:
+ DEX_API: "mm2"
+ DEX_RPCPORT: 7783
+ DEX_RPC: "http://127.0.0.1:7783"
DEX_PROJECT_NAME: "atomicdex-desktop-ce"
DEX_DISPLAY_NAME: "AtomicDex Desktop CE"
- DEX_COMPANY: "KomodoPlatform"
- DEX_WEBSITE: "https://atomicdex.io/"
+ DEX_COMPANY: "Komodian"
+ DEX_WEBSITE: "https://komodian.org/"
jobs:
@@ -27,31 +30,50 @@ jobs:
fail-fast: false
matrix:
name: [
- ubuntu-qt-5-15-2,
- osx-qt-5-15-2,
- windows-10-qt-5-15-2
+ ubuntu-release,
+ ubuntu-debug,
+ osx-release,
+ osx-debug,
+ windows-release,
+ windows-debug
]
include:
- - name: ubuntu-qt-5-15-2
- os: ubuntu-18.04
+ - name: ubuntu-release
+ os: ubuntu-20.04
qt: '5.15.2'
- type: 'release'
+ type: 'Release'
+ host: 'linux'
- - name: osx-qt-5-15-2
- os: macos-latest
+ - name: ubuntu-debug
+ os: ubuntu-20.04
qt: '5.15.2'
- type: 'release'
+ type: 'Debug'
+ host: 'linux'
- - name: windows-10-qt-5-15-2
+ - name: osx-release
+ os: macos-11
+ qt: '5.15.2'
+ type: 'Release'
+ host: 'mac'
+
+ - name: osx-debug
+ os: macos-11
+ qt: '5.15.2'
+ type: 'Debug'
+ host: 'mac'
+
+ - name: windows-release
os: windows-latest
qt: '5.15.2'
- type: 'release'
+ type: 'Release'
+ host: 'windows'
- #- name: osx-qt-5-15-2-dbg
- # os: macos-latest
- # qt: '5.15.2'
- # type: 'debug'
+ - name: windows-debug
+ os: windows-latest
+ qt: '5.15.2'
+ type: 'Debug'
+ host: 'windows'
steps:
- uses: actions/checkout@v2
@@ -64,55 +86,74 @@ jobs:
with:
python-version: '3.9'
- - name: Install QT (Linux)
- if: runner.os == 'Linux'
+ - name: Install MSVC
+ if: runner.os == 'Windows'
+ uses: ilammy/msvc-dev-cmd@v1.4.1
+
+ - name: Build libwally (Windows)
+ if: runner.os == 'Windows'
+ run: |
+ cd '${{ github.workspace }}'
+ git clone -b v0.8.5 --recurse-submodules https://github.com/KomodoPlatform/libwally-core.git
+ cd '${{ github.workspace }}\libwally-core'
+ git submodule init
+ git submodule sync --recursive
+ git submodule update --init --recursive
+ $env:LIBWALLY_DIR='${{ github.workspace }}\libwally-core'
+ "$env:LIBWALLY_DIR\tools\msvc\gen_ecmult_static_context.bat"
+ copy src\ccan\ccan\str\hex\hex.c src\ccan\ccan\str\hex\hex_.c
+ copy src\ccan\ccan\base64\base64.c src\ccan\ccan\base64\base64_.c
+ cl /utf-8 /DUSE_ECMULT_STATIC_PRECOMPUTATION /DECMULT_WINDOW_SIZE=15 /DWALLY_CORE_BUILD /DHAVE_CONFIG_H /DSECP256K1_BUILD /I$env:LIBWALLY_DIR\src\wrap_js\windows_config /I$env:LIBWALLY_DIR /I$env:LIBWALLY_DIR\src /I$env:LIBWALLY_DIR\include /I$env:LIBWALLY_DIR\src\ccan /I$env:LIBWALLY_DIR\src\ccan\base64 /I$env:LIBWALLY_DIR\src\secp256k1 /Zi /LD src/aes.c src/anti_exfil.c src/base58.c src/base64.c src/bech32.c src/bip32.c src/bip38.c src/bip39.c src/blech32.c src/ecdh.c src/elements.c src/hex.c src/hmac.c src/internal.c src/mnemonic.c src/pbkdf2.c src/pullpush.c src/psbt.c src/script.c src/scrypt.c src/sign.c src/symmetric.c src/transaction.c src/wif.c src/wordlist.c src/ccan/ccan/crypto/ripemd160/ripemd160.c src/ccan/ccan/crypto/sha256/sha256.c src/ccan/ccan/crypto/sha512/sha512.c src/ccan/ccan/base64/base64_.c src\ccan\ccan\str\hex\hex_.c src/secp256k1/src/secp256k1.c src/secp256k1/src/precomputed_ecmult_gen.c src/secp256k1/src/precomputed_ecmult.c /Fewally.dll
+ Copy-Item "${{ github.workspace }}\libwally-core\wally.dll" -Destination "${{ github.workspace }}\wally\wally.dll" -force
+
+
+ - name: Install QT (macOS)
+ if: runner.os == 'macOS'
uses: KomodoPlatform/install-qt-action@v2.14.0
with:
version: ${{ matrix.qt }}
setup-python: 'false'
- host: 'linux'
+ host: ${{ matrix.host }}
target: 'desktop'
dir: '${{ github.workspace }}'
modules: 'qtcharts qtwidgets debug_info qtwebengine qtwebview'
- aqtversion: '==0.8'
- py7zrversion: '==0.6'
- - name: Install QT (MacOS)
- if: runner.os == 'macOS'
+ - name: Install QT (Linux)
+ if: runner.os == 'Linux'
uses: KomodoPlatform/install-qt-action@v2.14.0
with:
version: ${{ matrix.qt }}
setup-python: 'false'
- host: 'mac'
+ host: ${{ matrix.host }}
target: 'desktop'
dir: '${{ github.workspace }}'
- modules: 'qtcharts qtwidgets debug_info qtwebview qtwebengine'
-
- - name: Install QT IFW (MacOS)
- if: runner.os == 'macOS'
- run: |
- python3 -m aqt tool mac tools_ifw 4.4.1 qt.tools.ifw.44 --outputdir ${{ github.workspace }}/Qt
- echo "${{ github.workspace }}/Qt/Tools/QtInstallerFramework/4.4/bin" >> $GITHUB_PATH
+ modules: 'qtcharts qtwidgets debug_info qtwebengine qtwebview'
+ aqtversion: '==0.8'
+ py7zrversion: '==0.6'
- name: Install QT (Windows)
if: runner.os == 'Windows'
uses: KomodoPlatform/install-qt-action@v2.14.0
with:
version: ${{ matrix.qt }}
- host: 'windows'
+ host: ${{ matrix.host }}
target: 'desktop'
arch: 'win64_msvc2019_64'
dir: 'C:\'
modules: 'qtcharts qtwidgets debug_info qtwebview qtwebengine'
+ - name: Install QT IFW (MacOS)
+ if: runner.os == 'macOS'
+ run: |
+ python3 -m aqt tool ${{ matrix.host }} tools_ifw 4.5.1 qt.tools.ifw.45 --outputdir ${{ github.workspace }}/Qt
+ echo "${{ github.workspace }}/Qt/Tools/QtInstallerFramework/4.5/bin" >> $GITHUB_PATH
+
- name: Install QT IFW (Windows)
if: runner.os == 'Windows'
run: |
python -m pip install --upgrade pip
- python -m aqt tool windows tools_ifw 4.4.1 qt.tools.ifw.44 --outputdir C:/Qt
- echo "C:/Qt/Tools/QtInstallerFramework/4.4/bin" | Out-File -FilePath $env:GITHUB_PATH -Encoding utf8 -Append
- echo $env:GITHUB_PATH
- echo $env:PATH
+ python -m aqt tool ${{ matrix.host }} tools_ifw 4.5.1 qt.tools.ifw.45 --outputdir C:/Qt
+ echo "C:/Qt/Tools/QtInstallerFramework/4.5/bin" | Out-File -FilePath $env:GITHUB_PATH -Encoding utf8 -Append
- name: Install nim (Linux)
if: runner.os == 'Linux'
@@ -125,7 +166,6 @@ jobs:
chmod +x choosenim.sh
./choosenim.sh -y
export PATH=/home/runner/.nimble/bin:$PATH
- ls /home/runner/.choosenim/toolchains
chmod +x /home/runner/.choosenim/toolchains/nim-1.4.8/bin/*
- name: Install deps (Linux)
@@ -135,11 +175,20 @@ jobs:
echo ${{ github.sha }}
sudo ./ci_tools_atomic_dex/ci_scripts/linux_script.sh
+ - name: Install deps (MacOS)
+ if: runner.os == 'macOS'
+ run: |
+ ./ci_tools_atomic_dex/ci_scripts/osx_script.sh
+
+ - name: Upload env variable for vpkg (MacOS)
+ if: runner.os == 'macOS'
+ run: |
+ echo "CXX=/usr/local/opt/llvm/bin/clang++" >> $GITHUB_ENV
+ echo "CC=/usr/local/opt/llvm/bin/clang" >> $GITHUB_ENV
+
- name: Upload env variable for vpkg (Linux)
if: runner.os == 'Linux'
run: |
- #echo "CXXFLAGS=-stdlib=libc++" >> $GITHUB_ENV
- #echo "LDFLAGS=-stdlib=libc++" >> $GITHUB_ENV
echo "CXX=clang++-12" >> $GITHUB_ENV
echo "CC=clang-12" >> $GITHUB_ENV
@@ -150,52 +199,27 @@ jobs:
setupOnly: true
appendedCacheKey: ${{ hashFiles('vcpkg.json') }}
- - name: Install deps (MacOS)
- if: runner.os == 'macOS'
- run: |
- ./ci_tools_atomic_dex/ci_scripts/osx_script.sh
- - name: Upload env variable for vpkg (MacOS)
- if: runner.os == 'macOS'
- run: |
- echo "CXX=/usr/local/opt/llvm/bin/clang++" >> $GITHUB_ENV
- echo "CC=/usr/local/opt/llvm/bin/clang" >> $GITHUB_ENV
+ # - name: import code signing certificates (macos)
+ # if: runner.os == 'macOS' && 'KomodoPlatform/atomicDEX-Desktop' == github.repository
+ # uses: Apple-Actions/import-codesign-certs@v1
+ # with:
+ # keychain: ${{ github.run_id }}
+ # keychain-password: ${{ github.run_id }}
+ # p12-file-base64: ${{ secrets.CERTIFICATES_P12 }}
+ # p12-password: ${{ secrets.CERTIFICATES_P12_PASSWORD }}
+
+ # - name: import installer code signing certificates (macos)
+ # if: runner.os == 'macOS' && 'KomodoPlatform/atomicDEX-Desktop' == github.repository
+ # uses: apple-actions/import-codesign-certs@v1
+ # with:
+ # keychain: ${{ github.run_id }}
+ # keychain-password: ${{ github.run_id }}
+ # create-keychain: false
+ # p12-file-base64: ${{ secrets.CERTIFICATES_INSTALLER_P12 }}
+ # p12-password: ${{ secrets.CERTIFICATES_P12_PASSWORD }}
- - name: Build AtomicDEX (Linux)
- if: runner.os == 'Linux'
- run: |
- export QT_INSTALL_CMAKE_PATH=${{ github.workspace }}/Qt/${{ matrix.qt }}/gcc_64/lib/cmake
- export QT_ROOT=${{ github.workspace }}/Qt/${{ matrix.qt }}
- export PATH=${{ github.workspace }}/Qt/${{ matrix.qt }}/gcc_64/bin:$PATH
- export PATH=$HOME/.nimble/bin:$PATH
- #export CXXFLAGS=-stdlib=libc++
- #export LDFLAGS=-stdlib=libc++
- export CXX=clang++-12
- export CC=clang-12
- cd ci_tools_atomic_dex
- nimble build -y
- ./ci_tools_atomic_dex build release
- ./ci_tools_atomic_dex bundle release
-
-# - name: import code signing certificates (macos)
-# if: runner.os == 'macOS'
-# uses: Apple-Actions/import-codesign-certs@v1
-# with:
-# keychain: ${{ github.run_id }}
-# keychain-password: ${{ github.run_id }}
-# p12-file-base64: ${{ secrets.CERTIFICATES_P12 }}
-# p12-password: ${{ secrets.CERTIFICATES_P12_PASSWORD }}
-
-# - name: import installer code signing certificates (macos)
-# if: runner.os == 'macOS'
-# uses: apple-actions/import-codesign-certs@v1
-# with:
-# keychain: ${{ github.run_id }}
-# keychain-password: ${{ github.run_id }}
-# create-keychain: false
-# p12-file-base64: ${{ secrets.CERTIFICATES_INSTALLER_P12 }}
-# p12-password: ${{ secrets.CERTIFICATES_P12_PASSWORD }}
- name: Build AtomicDEX (MacOS)
if: runner.os == 'macOS'
@@ -207,27 +231,17 @@ jobs:
export ASC_PUBLIC_ID="${{ secrets.ASC_PUBLIC_ID }}"
export QT_INSTALL_CMAKE_PATH=${{ github.workspace }}/Qt/${{ matrix.qt }}/clang_64/lib/cmake
export QT_ROOT=${{ github.workspace }}/Qt/${{ matrix.qt }}
- export MACOSX_DEPLOYMENT_TARGET=10.13
+ export MACOSX_DEPLOYMENT_TARGET=10.15
export CC=clang
export CXX=clang++
cd ci_tools_atomic_dex
nimble build -y
- ./ci_tools_atomic_dex bundle ${{ matrix.type }} --osx_sdk=$HOME/sdk/MacOSX10.14.sdk --compiler=clang++
+ ./ci_tools_atomic_dex bundle ${{ matrix.type }} --osx_sdk=$HOME/sdk/MacOSX10.15.sdk --compiler=clang++
- - name: Build AtomicDEX (Windows)
- if: runner.os == 'Windows'
- shell: powershell
- run: |
- $Env:QT_VERSION = "${{ matrix.qt }}"
- .\ci_tools_atomic_dex\ci_scripts\windows_script.ps1
- - name: Running Tests (Linux)
- working-directory: ci_tools_atomic_dex
- if: runner.os == 'Linux' && 'KomodoPlatform/atomicDEX-Desktop' == github.repository
+ - name: Build AtomicDEX (Linux)
+ if: runner.os == 'Linux'
run: |
- export REPORT_CI_TOKEN=${{ secrets.REPORT_CI_TOKEN_SECRET }}
- export ATOMICDEX_TEST_SEED=${{ secrets.ATOMICDEX_TEST_SEED }}
- export ATOMICDEX_PASSWORD=${{ secrets.ATOMICDEX_PASSWORD }}
export QT_INSTALL_CMAKE_PATH=${{ github.workspace }}/Qt/${{ matrix.qt }}/gcc_64/lib/cmake
export QT_ROOT=${{ github.workspace }}/Qt/${{ matrix.qt }}
export PATH=${{ github.workspace }}/Qt/${{ matrix.qt }}/gcc_64/bin:$PATH
@@ -236,57 +250,31 @@ jobs:
#export LDFLAGS=-stdlib=libc++
export CXX=clang++-12
export CC=clang-12
- echo "Running tests"
- ./ci_tools_atomic_dex tests release
- cd build-Release/bin/AntaraAtomicDexTestsAppDir/usr/bin
- cat ${{ env.DEX_PROJECT_NAME }}-tests-result.xml
- #curl https://report.ci/upload.py --output upload.py
- ls
- #python upload.py --sha `git rev-parse HEAD` -n "[Doctest Linux]" --include='${{ env.DEX_PROJECT_NAME }}-tests-result.xml' --framework=doctest --merge ".*"
- #echo "Uploading tests on Linux finished"
+ cd ci_tools_atomic_dex
+ nimble build -y
- - name: Running Tests (MacOS)
- working-directory: ci_tools_atomic_dex
- if: runner.os == 'macOS' && 'KomodoPlatform/atomicDEX-Desktop' == github.repository
- run: |
- export REPORT_CI_TOKEN=${{ secrets.REPORT_CI_TOKEN_SECRET }}
- export ATOMICDEX_TEST_SEED=${{ secrets.ATOMICDEX_TEST_SEED }}
- export ATOMICDEX_PASSWORD=${{ secrets.ATOMICDEX_PASSWORD }}
- export QT_INSTALL_CMAKE_PATH=${{ github.workspace }}/Qt/${{ matrix.qt }}/clang_64/lib/cmake
- export QT_ROOT=${{ github.workspace }}/Qt/${{ matrix.qt }}
- export CC=clang
- export CXX=clang++
- echo "Running tests"
- #./ci_tools_atomic_dex tests ${{ matrix.type }}
- #cd build-${{ matrix.type }}/bin/${{ env.DEX_PROJECT_NAME }}_tests.app/Contents/MacOS
- #cat ${{ env.DEX_PROJECT_NAME }}-tests-result.xml
- #curl https://report.ci/upload.py --output upload.py
- ls
- #python upload.py --sha `git rev-parse HEAD` -n "[Doctest MacOS ${{ matrix.type }}]" --include='${{ env.DEX_PROJECT_NAME }}-tests-result.xml' --framework=doctest --merge ".*"
- #echo "Uploading tests on OSX finished"
+ ./ci_tools_atomic_dex build ${{ matrix.type }}
+ ./ci_tools_atomic_dex bundle ${{ matrix.type }}
- - name: Running Tests (Windows)
+
+ - name: Build AtomicDEX (Windows)
+ if: runner.os == 'Windows'
shell: powershell
- if: runner.os == 'Windows' && 'KomodoPlatform/atomicDEX-Desktop' == github.repository
run: |
- echo "Running tests"
- $Env:REPORT_CI_TOKEN = "${{ secrets.REPORT_CI_TOKEN_SECRET }}"
- $Env:QT_INSTALL_CMAKE_PATH = "C:\Qt\${{ matrix.qt }}\msvc2019_64"
- cd b\bin
- ./${{ env.DEX_PROJECT_NAME }}_tests.exe --reporters=xml --out=${{ env.DEX_PROJECT_NAME }}-tests-result.xml -s
- #Invoke-WebRequest -Uri https://report.ci/upload.py -OutFile upload.py
- #python upload.py --sha $(git rev-parse HEAD) -n "[Doctest Windows]" --include='${{ env.DEX_PROJECT_NAME }}-tests-result.xml' --framework=doctest --merge ".*"
+ $Env:QT_VERSION = "${{ matrix.qt }}"
+ .\ci_tools_atomic_dex\ci_scripts\windows_script.ps1
- name: Upload env variable for artifacts (Linux)
if: runner.os == 'Linux'
run: |
- ls ./bundled/linux/
echo "artifact_name_zstd=${{ env.DEX_PROJECT_NAME }}-${{ matrix.name }}-$(git rev-parse --short HEAD).tar.zst" >> $GITHUB_ENV
echo "artifact_name_zip=${{ env.DEX_PROJECT_NAME }}-${{ matrix.name }}-$(git rev-parse --short HEAD).zip" >> $GITHUB_ENV
echo "artifact_name_appimage=${{ env.DEX_PROJECT_NAME }}-${{ matrix.name }}-$(git rev-parse --short HEAD)-x86_64.AppImage" >> $GITHUB_ENV
echo "target_name_zstd=${{ env.DEX_PROJECT_NAME }}-linux-$(git rev-parse --short HEAD).tar.zst" >> $GITHUB_ENV
echo "target_name_zip=${{ env.DEX_PROJECT_NAME }}-linux-$(git rev-parse --short HEAD).zip" >> $GITHUB_ENV
- echo "target_name_appimage=${{ env.DEX_PROJECT_NAME }}-$(git rev-parse --short HEAD)-x86_64.AppImage" >> $GITHUB_ENV
+ echo "target_name_appimage=${{ env.DEX_PROJECT_NAME }}-linux-$(git rev-parse --short HEAD)-x86_64.AppImage" >> $GITHUB_ENV
+
+
- name: Upload bundle artifact (Linux ZSTD)
if: runner.os == 'Linux'
@@ -315,7 +303,6 @@ jobs:
- name: Upload env variable for artifacts (macOS)
if: runner.os == 'macOS'
run: |
- ls ./bundled/osx/
echo "artifact_name_dmg=${{ env.DEX_PROJECT_NAME }}-${{ matrix.name }}-$(git rev-parse --short HEAD).dmg" >> $GITHUB_ENV
echo "artifact_name_installer=${{ env.DEX_PROJECT_NAME }}-installer-${{ matrix.name }}-$(git rev-parse --short HEAD).7z" >> $GITHUB_ENV
@@ -340,7 +327,7 @@ jobs:
run: |
echo "on_windows"
echo "artifact_name_zip=${{ env.DEX_PROJECT_NAME }}-${{ matrix.name }}-$(git rev-parse --short HEAD).zip" | Out-File -FilePath $env:GITHUB_ENV -Encoding utf8 -Append
- echo "artifact_name_installer=${{ env.DEX_PROJECT_NAME }}-installer-${{ matrix.name }}-$(git rev-parse --short HEAD).exe" | Out-File -FilePath $env:GITHUB_ENV -Encoding utf8 -Append
+ echo "artifact_name_installer=${{ env.DEX_PROJECT_NAME }}-${{ matrix.name }}-installer-$(git rev-parse --short HEAD).exe" | Out-File -FilePath $env:GITHUB_ENV -Encoding utf8 -Append
- name: Upload artifacts (Windows zip)
if: runner.os == 'Windows'
@@ -357,3 +344,61 @@ jobs:
name: ${{ env.artifact_name_installer }}
path: ./bundled/windows/${{ env.DEX_PROJECT_NAME }}_installer.exe
retention-days: 7
+
+
+
+ - name: Running Tests (Linux)
+ working-directory: ci_tools_atomic_dex
+ continue-on-error: true
+ if: runner.os == 'Linux' && 'KomodoPlatform/atomicDEX-Desktop' == github.repository
+ run: |
+ export REPORT_CI_TOKEN=${{ secrets.REPORT_CI_TOKEN_SECRET }}
+ export ATOMICDEX_TEST_SEED=${{ secrets.ATOMICDEX_TEST_SEED }}
+ export ATOMICDEX_PASSWORD=${{ secrets.ATOMICDEX_PASSWORD }}
+ export QT_INSTALL_CMAKE_PATH=${{ github.workspace }}/Qt/${{ matrix.qt }}/gcc_64/lib/cmake
+ export QT_ROOT=${{ github.workspace }}/Qt/${{ matrix.qt }}
+ export PATH=${{ github.workspace }}/Qt/${{ matrix.qt }}/gcc_64/bin:$PATH
+ export PATH=$HOME/.nimble/bin:$PATH
+ export CXX=clang++-12
+ export CC=clang-12
+ #echo "Running tests"
+ #./ci_tools_atomic_dex tests ${{ matrix.type }}
+ #cd build-${{ matrix.type }}/bin/AntaraAtomicDexTestsAppDir/usr/bin
+ #cat ${{ env.DEX_PROJECT_NAME }}-tests-result.xml
+
+ - name: Running Tests (MacOS)
+ working-directory: ci_tools_atomic_dex
+ continue-on-error: true
+ if: runner.os == 'macOS' && 'KomodoPlatform/atomicDEX-Desktop' == github.repository
+ run: |
+ export MAC_SIGN_IDENTITY="${{ secrets.MAC_SIGN_IDENTITY }}"
+ export INSTALLER_MAC_SIGN_IDENTITY="${{ secrets.INSTALLER_MAC_SIGN_IDENTITY }}"
+ export APPLE_ATOMICDEX_PASSWORD="${{ secrets.APPLE_ATOMICDEX_PASSWORD }}"
+ export APPLE_ID="${{ secrets.APPLE_ID }}"
+ export ASC_PUBLIC_ID="${{ secrets.ASC_PUBLIC_ID }}"
+ export MACOSX_DEPLOYMENT_TARGET=10.13
+ export REPORT_CI_TOKEN=${{ secrets.REPORT_CI_TOKEN_SECRET }}
+ export ATOMICDEX_TEST_SEED=${{ secrets.ATOMICDEX_TEST_SEED }}
+ export ATOMICDEX_PASSWORD=${{ secrets.ATOMICDEX_PASSWORD }}
+ export QT_INSTALL_CMAKE_PATH=${{ github.workspace }}/Qt/${{ matrix.qt }}/clang_64/lib/cmake
+ export QT_ROOT=${{ github.workspace }}/Qt/${{ matrix.qt }}
+ export CC=clang
+ export CXX=clang++
+ #echo "Running tests"
+ #nimble build -y
+ #./ci_tools_atomic_dex tests ${{ matrix.type }}
+ #cd build-${{ matrix.type }}/bin/${{ env.DEX_PROJECT_NAME }}_tests.app/Contents/MacOS
+ #cat ${{ env.DEX_PROJECT_NAME }}-tests-result.xml
+
+ - name: Running Tests (Windows)
+ shell: powershell
+ continue-on-error: true
+ if: runner.os == 'Windows' && 'KomodoPlatform/atomicDEX-Desktop' == github.repository
+ run: |
+ #echo "Running tests"
+ $Env:REPORT_CI_TOKEN = "${{ secrets.REPORT_CI_TOKEN_SECRET }}"
+ $Env:QT_INSTALL_CMAKE_PATH = "C:\Qt\${{ matrix.qt }}\msvc2019_64"
+ #cd b\bin
+ #./${{ env.DEX_PROJECT_NAME }}_tests.exe --reporters=xml --out=${{ env.DEX_PROJECT_NAME }}-tests-result.xml -s
+ #Invoke-WebRequest -Uri https://report.ci/upload.py -OutFile upload.py
+ #python upload.py --sha $(git rev-parse HEAD) -n "[Doctest Windows]" --include='${{ env.DEX_PROJECT_NAME }}-tests-result.xml' --framework=doctest --merge ".*"
\ No newline at end of file
diff --git a/.github/workflows/atomicdex-desktop-release-vt.yml b/.github/workflows/atomicdex-desktop-release-vt.yml
index 8ce53e0185..dd678373a9 100644
--- a/.github/workflows/atomicdex-desktop-release-vt.yml
+++ b/.github/workflows/atomicdex-desktop-release-vt.yml
@@ -10,7 +10,7 @@ jobs:
steps:
-
name: VirusTotal Scan
- uses: crazy-max/ghaction-virustotal@v2.4.1
+ uses: crazy-max/ghaction-virustotal@v3.1.0
with:
vt_api_key: ${{ secrets.VT_API_KEY }}
github_token: ${{ github.token }}
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 2b1c01a392..1056b03058 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -11,7 +11,7 @@ include(vcpkg_prerequisites)
include(qt_prerequisites)
include(cfg_hash)
-project(${DEX_PROJECT_NAME} LANGUAGES CXX VERSION 0.5.6)
+project(${DEX_PROJECT_NAME} LANGUAGES CXX VERSION 0.5.7)
message(STATUS "${PROJECT_NAME} is version ${PROJECT_VERSION}")
include(cmake_default_options)
@@ -61,13 +61,13 @@ endif ()
##! We fetch our dependencies
if (APPLE)
FetchContent_Declare(mm2
- URL https://github.com/KomodoPlatform/atomicDEX-API/releases/download/beta-2.1.7132/mm2-cfb031a21-Darwin-Release.zip)
+ URL https://github.com/KomodoPlatform/atomicDEX-API/releases/download/beta-2.1.8741/mm2-6e4de5d21-Darwin-Release.zip)
elseif (UNIX AND NOT APPLE)
FetchContent_Declare(mm2
- URL https://github.com/KomodoPlatform/atomicDEX-API/releases/download/beta-2.1.7132/mm2-cfb031a21-Linux-Release.zip)
+ URL https://github.com/KomodoPlatform/atomicDEX-API/releases/download/beta-2.1.8741/mm2-6e4de5d21-Linux-Release.zip)
else ()
FetchContent_Declare(mm2
- URL https://github.com/KomodoPlatform/atomicDEX-API/releases/download/beta-2.1.7132/mm2-cfb031a21-Windows_NT-Release.zip)
+ URL https://github.com/KomodoPlatform/atomicDEX-API/releases/download/beta-2.1.8741/mm2-6e4de5d21-Windows_NT-Release.zip)
endif ()
#FetchContent_Declare(qmaterial URL https://github.com/KomodoPlatform/Qaterial/archive/last-clang-working-2.zip)
@@ -88,15 +88,14 @@ FetchContent_MakeAvailable(mm2 jl777-coins qmaterial)
##! Configure our needs.
if (UNIX)
- configure_file(assets/config/${PROJECT_VERSION}-coins.json ${CMAKE_CURRENT_SOURCE_DIR}/assets/config/${PROJECT_VERSION}-coins.json COPYONLY)
+ configure_file(${jl777-coins_SOURCE_DIR}/utils/coins_config.json ${CMAKE_CURRENT_SOURCE_DIR}/assets/config/${PROJECT_VERSION}-coins.json COPYONLY)
configure_file(${jl777-coins_SOURCE_DIR}/coins ${CMAKE_CURRENT_SOURCE_DIR}/assets/tools/mm2/coins COPYONLY)
- configure_file(${mm2_SOURCE_DIR}/mm2 ${CMAKE_CURRENT_SOURCE_DIR}/assets/tools/mm2/mm2 COPYONLY)
+ configure_file(${mm2_SOURCE_DIR}/mm2 ${CMAKE_CURRENT_SOURCE_DIR}/assets/tools/mm2/${DEX_API} COPYONLY)
else ()
- configure_file(assets/config/${PROJECT_VERSION}-coins.json ${CMAKE_BINARY_DIR}/bin/assets/config/${PROJECT_VERSION}-coins.json COPYONLY)
+ configure_file(${jl777-coins_SOURCE_DIR}/utils/coins_config.json ${CMAKE_BINARY_DIR}/bin/assets/config/${PROJECT_VERSION}-coins.json COPYONLY)
configure_file(${jl777-coins_SOURCE_DIR}/coins ${CMAKE_BINARY_DIR}/bin/assets/tools/mm2/coins COPYONLY)
- configure_file(${mm2_SOURCE_DIR}/mm2.exe ${CMAKE_BINARY_DIR}/bin/assets/tools/mm2/mm2.exe COPYONLY)
+ configure_file(${mm2_SOURCE_DIR}/mm2.exe ${CMAKE_BINARY_DIR}/bin/assets/tools/mm2/${DEX_API}.exe COPYONLY)
configure_file(${mm2_SOURCE_DIR}/msvcp140.dll ${CMAKE_BINARY_DIR}/bin/assets/tools/mm2/msvcp140.dll COPYONLY)
- configure_file(${mm2_SOURCE_DIR}/msvcr100.dll ${CMAKE_BINARY_DIR}/bin/assets/tools/mm2/msvcr100.dll COPYONLY)
configure_file(${mm2_SOURCE_DIR}/vcruntime140.dll ${CMAKE_BINARY_DIR}/bin/assets/tools/mm2/vcruntime140.dll COPYONLY)
endif ()
diff --git a/assets/config/.gitignore b/assets/config/.gitignore
new file mode 100644
index 0000000000..2f7e12e1e9
--- /dev/null
+++ b/assets/config/.gitignore
@@ -0,0 +1 @@
+*-coins.json
diff --git a/assets/config/0.5.6-coins.json b/assets/config/0.5.6-coins.json
deleted file mode 100644
index f24ad8f9c1..0000000000
--- a/assets/config/0.5.6-coins.json
+++ /dev/null
@@ -1,10541 +0,0 @@
-{
- "1INCH-AVX20": {
- "coin": "1INCH-AVX20",
- "name": "1inch",
- "coinpaprika_id": "1inch-1inch",
- "coingecko_id": "1inch",
- "nomics_id": "1INCH",
- "nodes": [
- "https://api.avax.network/ext/bc/C/rpc"
- ],
- "explorer_url": [
- "https://snowtrace.io/"
- ],
- "type": "AVX-20",
- "active": false,
- "currently_enabled": false
- },
- "1INCH-BEP20": {
- "coin": "1INCH-BEP20",
- "name": "1inch",
- "coinpaprika_id": "1inch-1inch",
- "coingecko_id": "1inch",
- "nomics_id": "1INCH",
- "nodes": [
- "http://bsc1.cipig.net:8655",
- "http://bsc2.cipig.net:8655",
- "http://bsc3.cipig.net:8655"
- ],
- "explorer_url": [
- "https://bscscan.com/"
- ],
- "type": "BEP-20",
- "active": false,
- "currently_enabled": false
- },
- "1INCH-ERC20": {
- "coin": "1INCH-ERC20",
- "name": "1inch",
- "coinpaprika_id": "1inch-1inch",
- "coingecko_id": "1inch",
- "nomics_id": "1INCH",
- "nodes": [
- "http://eth1.cipig.net:8555",
- "http://eth2.cipig.net:8555",
- "http://eth3.cipig.net:8555"
- ],
- "explorer_url": [
- "https://etherscan.io/"
- ],
- "type": "ERC-20",
- "active": false,
- "currently_enabled": false
- },
- "1INCH-HRC20": {
- "coin": "1INCH-HRC20",
- "name": "1inch",
- "coinpaprika_id": "1inch-1inch",
- "coingecko_id": "1inch",
- "nomics_id": "1INCH",
- "nodes": [
- "https://api.harmony.one",
- "https://api.s0.t.hmny.io"
- ],
- "explorer_url": [
- "https://explorer.harmony.one/"
- ],
- "type": "HRC-20",
- "active": false,
- "currently_enabled": false
- },
- "1INCH-KRC20": {
- "coin": "1INCH-KRC20",
- "name": "1inch",
- "coinpaprika_id": "1inch-1inch",
- "coingecko_id": "1inch",
- "nomics_id": "1INCH",
- "nodes": [
- "https://rpc-mainnet.kcc.network"
- ],
- "explorer_url": [
- "https://explorer.kcc.io/en/"
- ],
- "type": "KRC-20",
- "active": false,
- "currently_enabled": false
- },
- "1INCH-PLG20": {
- "coin": "1INCH-PLG20",
- "name": "1inch",
- "coinpaprika_id": "1inch-1inch",
- "coingecko_id": "1inch",
- "nomics_id": "1INCH",
- "nodes": [
- "https://polygon-rpc.com",
- "https://poly-rpc.gateway.pokt.network",
- "https://matic-mainnet.chainstacklabs.com"
- ],
- "explorer_url": [
- "https://polygonscan.com/"
- ],
- "type": "Matic",
- "active": false,
- "currently_enabled": false
- },
- "AAVE-AVX20": {
- "coin": "AAVE-AVX20",
- "name": "Aave",
- "coinpaprika_id": "aave-new",
- "coingecko_id": "aave",
- "nomics_id": "AAVE",
- "nodes": [
- "https://api.avax.network/ext/bc/C/rpc"
- ],
- "explorer_url": [
- "https://snowtrace.io/"
- ],
- "type": "AVX-20",
- "active": false,
- "currently_enabled": false
- },
- "AAVE-BEP20": {
- "coin": "AAVE-BEP20",
- "name": "Aave",
- "coinpaprika_id": "aave-new",
- "coingecko_id": "aave",
- "nomics_id": "AAVE",
- "nodes": [
- "http://bsc1.cipig.net:8655",
- "http://bsc2.cipig.net:8655",
- "http://bsc3.cipig.net:8655"
- ],
- "explorer_url": [
- "https://bscscan.com/"
- ],
- "type": "BEP-20",
- "active": false,
- "currently_enabled": false
- },
- "AAVE-ERC20": {
- "coin": "AAVE-ERC20",
- "name": "Aave",
- "coinpaprika_id": "aave-new",
- "coingecko_id": "aave",
- "nomics_id": "AAVE",
- "nodes": [
- "http://eth1.cipig.net:8555",
- "http://eth2.cipig.net:8555",
- "http://eth3.cipig.net:8555"
- ],
- "explorer_url": [
- "https://etherscan.io/"
- ],
- "type": "ERC-20",
- "active": false,
- "currently_enabled": false
- },
- "AAVE-FTM20": {
- "coin": "AAVE-FTM20",
- "name": "Aave",
- "coinpaprika_id": "aave-new",
- "coingecko_id": "aave",
- "nomics_id": "AAVE",
- "nodes": [
- "https://rpc.ftm.tools/"
- ],
- "explorer_url": [
- "https://ftmscan.com/"
- ],
- "type": "FTM-20",
- "active": false,
- "currently_enabled": false
- },
- "AAVE-HCO20": {
- "coin": "AAVE-HCO20",
- "name": "Aave",
- "coinpaprika_id": "aave-new",
- "coingecko_id": "aave",
- "nomics_id": "AAVE",
- "nodes": [
- "https://http-mainnet.hecochain.com"
- ],
- "explorer_url": [
- "https://hecoinfo.com/"
- ],
- "type": "HecoChain",
- "active": false,
- "currently_enabled": false
- },
- "AAVE-HRC20": {
- "coin": "AAVE-HRC20",
- "name": "Aave",
- "coinpaprika_id": "aave-new",
- "coingecko_id": "aave",
- "nomics_id": "AAVE",
- "nodes": [
- "https://api.harmony.one",
- "https://api.s0.t.hmny.io"
- ],
- "explorer_url": [
- "https://explorer.harmony.one/"
- ],
- "type": "HRC-20",
- "active": false,
- "currently_enabled": false
- },
- "AAVE-KRC20": {
- "coin": "AAVE-KRC20",
- "name": "Aave",
- "coinpaprika_id": "aave-new",
- "coingecko_id": "aave",
- "nomics_id": "AAVE",
- "nodes": [
- "https://rpc-mainnet.kcc.network"
- ],
- "explorer_url": [
- "https://explorer.kcc.io/en/"
- ],
- "type": "KRC-20",
- "active": false,
- "currently_enabled": false
- },
- "AAVE-PLG20": {
- "coin": "AAVE-PLG20",
- "name": "Aave",
- "coinpaprika_id": "aave-new",
- "coingecko_id": "aave",
- "nomics_id": "AAVE",
- "nodes": [
- "https://polygon-rpc.com",
- "https://poly-rpc.gateway.pokt.network",
- "https://matic-mainnet.chainstacklabs.com"
- ],
- "explorer_url": [
- "https://polygonscan.com/"
- ],
- "type": "Matic",
- "active": false,
- "currently_enabled": false
- },
- "ABY-OLD": {
- "coin": "ABY-OLD",
- "name": "ArtByte (OLD)",
- "coinpaprika_id": "aby-artbyte",
- "coingecko_id": "artbyte",
- "nomics_id": "ABY2",
- "electrum": [
- {
- "url": "electrumx.aby.ewmcx.biz:50002",
- "protocol": "SSL",
- "disable_cert_verification": true
- },
- {
- "url": "failover.aby.ewmcx.biz:50002",
- "protocol": "SSL",
- "disable_cert_verification": true
- }
- ],
- "explorer_url": [
- "http://aby-explorer.ewmcx.info/"
- ],
- "type": "UTXO",
- "active": false,
- "currently_enabled": false
- },
- "ABY": {
- "coin": "ABY",
- "name": "ArtByte",
- "coinpaprika_id": "aby-artbyte",
- "coingecko_id": "artbyte",
- "nomics_id": "ABY2",
- "electrum": [
- {
- "url": "elec-seeder-one.artbytecoin.org:50012",
- "protocol": "SSL",
- "disable_cert_verification": true,
- "ws_url": "elec-seeder-one.artbytecoin.org:50013"
- },
- {
- "url": "elec-seeder-two.artbytecoin.org:50012",
- "protocol": "SSL",
- "disable_cert_verification": true,
- "ws_url": "elec-seeder-two.artbytecoin.org:50013"
- },
- {
- "url": "electrumx-three.artbyte.live:50012",
- "protocol": "SSL",
- "disable_cert_verification": false,
- "ws_url": "electrumx-three.artbyte.live:50013"
- },
- {
- "url": "electrumx-four.artbyte.live:50012",
- "protocol": "SSL",
- "disable_cert_verification": false,
- "ws_url": "electrumx-four.artbyte.live:50013"
- }
- ],
- "explorer_url": [
- "https://chainz.cryptoid.info/aby/"
- ],
- "explorer_tx_url": "tx.dws?",
- "explorer_address_url": "address.dws?",
- "type": "UTXO",
- "active": false,
- "currently_enabled": false
- },
- "ADA-BEP20": {
- "coin": "ADA-BEP20",
- "name": "Cardano",
- "coinpaprika_id": "ada-cardano",
- "coingecko_id": "cardano",
- "nomics_id": "ADA",
- "nodes": [
- "http://bsc1.cipig.net:8655",
- "http://bsc2.cipig.net:8655",
- "http://bsc3.cipig.net:8655"
- ],
- "explorer_url": [
- "https://bscscan.com/"
- ],
- "type": "BEP-20",
- "active": false,
- "currently_enabled": false
- },
- "ADX-BEP20": {
- "coin": "ADX-BEP20",
- "name": "AdEx",
- "coinpaprika_id": "adx-adex",
- "coingecko_id": "adex",
- "nomics_id": "ADX",
- "nodes": [
- "http://bsc1.cipig.net:8655",
- "http://bsc2.cipig.net:8655",
- "http://bsc3.cipig.net:8655"
- ],
- "explorer_url": [
- "https://bscscan.com/"
- ],
- "type": "BEP-20",
- "active": false,
- "currently_enabled": false
- },
- "ADX-ERC20": {
- "coin": "ADX-ERC20",
- "name": "AdEx",
- "coinpaprika_id": "adx-adex",
- "coingecko_id": "adex",
- "nomics_id": "ADX",
- "nodes": [
- "http://eth1.cipig.net:8555",
- "http://eth2.cipig.net:8555",
- "http://eth3.cipig.net:8555"
- ],
- "explorer_url": [
- "https://etherscan.io/"
- ],
- "type": "ERC-20",
- "active": false,
- "currently_enabled": false
- },
- "AGIX-ERC20": {
- "coin": "AGIX-ERC20",
- "name": "SingularityNET",
- "coinpaprika_id": "agix-singularitynet",
- "coingecko_id": "singularitynet",
- "nomics_id": "AGIX",
- "nodes": [
- "http://eth1.cipig.net:8555",
- "http://eth2.cipig.net:8555",
- "http://eth3.cipig.net:8555"
- ],
- "explorer_url": [
- "https://etherscan.io/"
- ],
- "type": "ERC-20",
- "active": false,
- "currently_enabled": false
- },
- "AGIX-PLG20": {
- "coin": "AGIX-PLG20",
- "name": "SingularityNET",
- "coinpaprika_id": "agix-singularitynet",
- "coingecko_id": "singularitynet",
- "nomics_id": "AGIX",
- "nodes": [
- "https://polygon-rpc.com",
- "https://poly-rpc.gateway.pokt.network",
- "https://matic-mainnet.chainstacklabs.com"
- ],
- "explorer_url": [
- "https://polygonscan.com/"
- ],
- "type": "Matic",
- "active": false,
- "currently_enabled": false
- },
- "ANKR-BEP20": {
- "coin": "ANKR-BEP20",
- "name": "Ankr",
- "coinpaprika_id": "ankr-ankr-network",
- "coingecko_id": "ankr",
- "nomics_id": "ANKR",
- "nodes": [
- "http://bsc1.cipig.net:8655",
- "http://bsc2.cipig.net:8655",
- "http://bsc3.cipig.net:8655"
- ],
- "explorer_url": [
- "https://bscscan.com/"
- ],
- "type": "BEP-20",
- "active": false,
- "currently_enabled": false
- },
- "ANKR-ERC20": {
- "coin": "ANKR-ERC20",
- "name": "Ankr",
- "coinpaprika_id": "ankr-ankr-network",
- "coingecko_id": "ankr",
- "nomics_id": "ANKR",
- "nodes": [
- "http://eth1.cipig.net:8555",
- "http://eth2.cipig.net:8555",
- "http://eth3.cipig.net:8555"
- ],
- "explorer_url": [
- "https://etherscan.io/"
- ],
- "type": "ERC-20",
- "active": false,
- "currently_enabled": false
- },
- "APE-ERC20": {
- "coin": "APE-ERC20",
- "name": "ApeCoin",
- "coinpaprika_id": "ape-apecoin",
- "coingecko_id": "apecoin",
- "nomics_id": "APE7",
- "nodes": [
- "http://eth1.cipig.net:8555",
- "http://eth2.cipig.net:8555",
- "http://eth3.cipig.net:8555"
- ],
- "explorer_url": [
- "https://etherscan.io/"
- ],
- "type": "ERC-20",
- "active": false,
- "currently_enabled": false
- },
- "APE-BEP20": {
- "coin": "APE-BEP20",
- "name": "ApeCoin",
- "coinpaprika_id": "ape-apecoin",
- "coingecko_id": "apecoin",
- "nomics_id": "APE7",
- "nodes": [
- "http://bsc1.cipig.net:8655",
- "http://bsc2.cipig.net:8655",
- "http://bsc3.cipig.net:8655"
- ],
- "explorer_url": [
- "https://bscscan.com/"
- ],
- "type": "BEP-20",
- "active": false,
- "currently_enabled": false
- },
- "ARRR-BEP20": {
- "coin": "ARRR-BEP20",
- "name": "Pirate",
- "coinpaprika_id": "arrr-pirate",
- "coingecko_id": "pirate-chain",
- "nomics_id": "ARRR",
- "nodes": [
- "http://bsc1.cipig.net:8655",
- "http://bsc2.cipig.net:8655",
- "http://bsc3.cipig.net:8655"
- ],
- "explorer_url": [
- "https://bscscan.com/"
- ],
- "type": "BEP-20",
- "active": false,
- "currently_enabled": false,
- "wallet_only": true
- },
- "ARPA-BEP20": {
- "coin": "ARPA-BEP20",
- "name": "ARPA Chain",
- "coinpaprika_id": "arpa-arpa-chain",
- "coingecko_id": "arpa-chain",
- "nomics_id": "ARPA",
- "nodes": [
- "http://bsc1.cipig.net:8655",
- "http://bsc2.cipig.net:8655",
- "http://bsc3.cipig.net:8655"
- ],
- "explorer_url": [
- "https://bscscan.com/"
- ],
- "type": "BEP-20",
- "active": false,
- "currently_enabled": false
- },
- "ARPA-ERC20": {
- "coin": "ARPA-ERC20",
- "name": "ARPA Chain",
- "coinpaprika_id": "arpa-arpa-chain",
- "coingecko_id": "arpa-chain",
- "nomics_id": "ARPA",
- "nodes": [
- "http://eth1.cipig.net:8555",
- "http://eth2.cipig.net:8555",
- "http://eth3.cipig.net:8555"
- ],
- "explorer_url": [
- "https://etherscan.io/"
- ],
- "type": "ERC-20",
- "active": false,
- "currently_enabled": false
- },
- "ATOM-BEP20": {
- "coin": "ATOM-BEP20",
- "name": "Cosmos",
- "coinpaprika_id": "atom-cosmos",
- "coingecko_id": "cosmos",
- "nomics_id": "ATOM",
- "nodes": [
- "http://bsc1.cipig.net:8655",
- "http://bsc2.cipig.net:8655",
- "http://bsc3.cipig.net:8655"
- ],
- "explorer_url": [
- "https://bscscan.com/"
- ],
- "type": "BEP-20",
- "active": false,
- "currently_enabled": false
- },
- "AUR": {
- "coin": "AUR",
- "name": "Auroracoin",
- "coinpaprika_id": "aur-auroracoin",
- "coingecko_id": "auroracoin",
- "nomics_id": "AUR",
- "electrum": [
- {
- "url": "electrumx.aur.ewmcx.info:50002",
- "protocol": "SSL",
- "disable_cert_verification": true,
- "ws_url": "electrumx.aur.ewmcx.info:50003"
- },
- {
- "url": "failover.aur.ewmcx.biz:50002",
- "protocol": "SSL",
- "disable_cert_verification": true,
- "ws_url": "failover.aur.ewmcx.biz:50003"
- }
- ],
- "explorer_url": [
- "https://chainz.cryptoid.info/aur/"
- ],
- "explorer_tx_url": "tx.dws?",
- "explorer_address_url": "address.dws?",
- "type": "UTXO",
- "active": false,
- "currently_enabled": false
- },
- "AVA-BEP20": {
- "coin": "AVA-BEP20",
- "name": "Travala.com",
- "coinpaprika_id": "ava-travala",
- "coingecko_id": "concierge-io",
- "nomics_id": "AVA",
- "nodes": [
- "http://bsc1.cipig.net:8655",
- "http://bsc2.cipig.net:8655",
- "http://bsc3.cipig.net:8655"
- ],
- "explorer_url": [
- "https://bscscan.com/"
- ],
- "type": "BEP-20",
- "active": false,
- "currently_enabled": false
- },
- "AVAX-BEP20": {
- "coin": "AVAX-BEP20",
- "name": "Avalanche",
- "coinpaprika_id": "avax-avalanche",
- "coingecko_id": "avalanche-2",
- "nomics_id": "AVAX",
- "nodes": [
- "http://bsc1.cipig.net:8655",
- "http://bsc2.cipig.net:8655",
- "http://bsc3.cipig.net:8655"
- ],
- "explorer_url": [
- "https://bscscan.com/"
- ],
- "type": "BEP-20",
- "active": false,
- "currently_enabled": false
- },
- "AVAX": {
- "coin": "AVAX",
- "name": "Avalanche",
- "coinpaprika_id": "avax-avalanche",
- "coingecko_id": "avalanche-2",
- "nomics_id": "AVAX",
- "nodes": [
- "https://api.avax.network/ext/bc/C/rpc"
- ],
- "explorer_url": [
- "https://snowtrace.io/"
- ],
- "type": "AVX-20",
- "active": false,
- "currently_enabled": false
- },
- "AVAXT": {
- "coin": "AVAXT",
- "name": "Avalanche Testnet",
- "coinpaprika_id": "test-coin",
- "coingecko_id": "test-coin",
- "is_testnet": true,
- "nodes": [
- "https://api.avax-test.network/ext/bc/C/rpc"
- ],
- "explorer_url": [
- "https://cchain.explorer.avax-test.network/"
- ],
- "type": "AVX-20",
- "active": false,
- "currently_enabled": false
- },
- "AXE": {
- "coin": "AXE",
- "name": "Axe",
- "coinpaprika_id": "axe-axe",
- "coingecko_id": "axe",
- "nomics_id": "AXE",
- "electrum": [
- {
- "url": "electrum1.cipig.net:10057",
- "ws_url": "electrum1.cipig.net:30057"
- },
- {
- "url": "electrum2.cipig.net:10057",
- "ws_url": "electrum2.cipig.net:30057"
- },
- {
- "url": "electrum3.cipig.net:10057",
- "ws_url": "electrum3.cipig.net:30057"
- }
- ],
- "explorer_url": [
- "https://axe-explorer.arcpool.com/"
- ],
- "type": "UTXO",
- "active": false,
- "currently_enabled": false
- },
- "AXS-BEP20": {
- "coin": "AXS-BEP20",
- "name": "Axie Infinity",
- "coinpaprika_id": "axs-axie-infinity",
- "coingecko_id": "axie-infinity",
- "nomics_id": "AXS2",
- "nodes": [
- "http://bsc1.cipig.net:8655",
- "http://bsc2.cipig.net:8655",
- "http://bsc3.cipig.net:8655"
- ],
- "explorer_url": [
- "https://bscscan.com/"
- ],
- "type": "BEP-20",
- "active": false,
- "currently_enabled": false
- },
- "AXS-ERC20": {
- "coin": "AXS-ERC20",
- "name": "Axie Infinity",
- "coinpaprika_id": "axs-axie-infinity",
- "coingecko_id": "axie-infinity",
- "nomics_id": "AXS2",
- "nodes": [
- "http://eth1.cipig.net:8555",
- "http://eth2.cipig.net:8555",
- "http://eth3.cipig.net:8555"
- ],
- "explorer_url": [
- "https://etherscan.io/"
- ],
- "type": "ERC-20",
- "active": false,
- "currently_enabled": false
- },
- "BABYDOGE-BEP20": {
- "coin": "BABYDOGE-BEP20",
- "name": "Baby Doge Coin",
- "coinpaprika_id": "babydoge-baby-doge-coin",
- "coingecko_id": "baby-doge-coin",
- "nomics_id": "BABYDOGE2",
- "nodes": [
- "http://bsc1.cipig.net:8655",
- "http://bsc2.cipig.net:8655",
- "http://bsc3.cipig.net:8655"
- ],
- "explorer_url": [
- "https://bscscan.com/"
- ],
- "type": "BEP-20",
- "active": false,
- "currently_enabled": false
- },
- "BAL-BEP20": {
- "coin": "BAL-BEP20",
- "name": "Balancer",
- "coinpaprika_id": "bal-balancer",
- "coingecko_id": "balancer",
- "nomics_id": "BAL",
- "nodes": [
- "http://bsc1.cipig.net:8655",
- "http://bsc2.cipig.net:8655",
- "http://bsc3.cipig.net:8655"
- ],
- "explorer_url": [
- "https://bscscan.com/"
- ],
- "type": "BEP-20",
- "active": false,
- "currently_enabled": false
- },
- "BAL-ERC20": {
- "coin": "BAL-ERC20",
- "name": "Balancer",
- "coinpaprika_id": "bal-balancer",
- "coingecko_id": "balancer",
- "nomics_id": "BAL",
- "nodes": [
- "http://eth1.cipig.net:8555",
- "http://eth2.cipig.net:8555",
- "http://eth3.cipig.net:8555"
- ],
- "explorer_url": [
- "https://etherscan.io/"
- ],
- "type": "ERC-20",
- "active": false,
- "currently_enabled": false
- },
- "BAL-KRC20": {
- "coin": "BAL-KRC20",
- "name": "Balancer",
- "coinpaprika_id": "bal-balancer",
- "coingecko_id": "balancer",
- "nomics_id": "BAL",
- "nodes": [
- "https://rpc-mainnet.kcc.network"
- ],
- "explorer_url": [
- "https://explorer.kcc.io/en/"
- ],
- "type": "KRC-20",
- "active": false,
- "currently_enabled": false
- },
- "BAL-PLG20": {
- "coin": "BAL-PLG20",
- "name": "Balancer",
- "coinpaprika_id": "bal-balancer",
- "coingecko_id": "balancer",
- "nomics_id": "BAL",
- "nodes": [
- "https://polygon-rpc.com",
- "https://poly-rpc.gateway.pokt.network",
- "https://matic-mainnet.chainstacklabs.com"
- ],
- "explorer_url": [
- "https://polygonscan.com/"
- ],
- "type": "Matic",
- "active": false,
- "currently_enabled": false
- },
- "BANANO-BEP20": {
- "coin": "BANANO-BEP20",
- "name": "Banano",
- "coinpaprika_id": "ban-banano",
- "coingecko_id": "banano",
- "nomics_id": "BAN",
- "nodes": [
- "http://bsc1.cipig.net:8655",
- "http://bsc2.cipig.net:8655",
- "http://bsc3.cipig.net:8655"
- ],
- "explorer_url": [
- "https://bscscan.com/"
- ],
- "type": "BEP-20",
- "active": false,
- "currently_enabled": false
- },
- "BAND-BEP20": {
- "coin": "BAND-BEP20",
- "name": "Band Protocol",
- "coinpaprika_id": "band-band-protocol",
- "coingecko_id": "band-protocol",
- "nomics_id": "BAND",
- "nodes": [
- "http://bsc1.cipig.net:8655",
- "http://bsc2.cipig.net:8655",
- "http://bsc3.cipig.net:8655"
- ],
- "explorer_url": [
- "https://bscscan.com/"
- ],
- "type": "BEP-20",
- "active": false,
- "currently_enabled": false
- },
- "BAND-ERC20": {
- "coin": "BAND-ERC20",
- "name": "Band Protocol",
- "coinpaprika_id": "band-band-protocol",
- "coingecko_id": "band-protocol",
- "nodes": [
- "http://eth1.cipig.net:8555",
- "http://eth2.cipig.net:8555",
- "http://eth3.cipig.net:8555"
- ],
- "explorer_url": [
- "https://etherscan.io/"
- ],
- "type": "ERC-20",
- "active": false,
- "currently_enabled": false
- },
- "BAND-FTM20": {
- "coin": "BAND-FTM20",
- "name": "Band Protocol",
- "coinpaprika_id": "band-band-protocol",
- "coingecko_id": "band-protocol",
- "nomics_id": "BAND",
- "nodes": [
- "https://rpc.ftm.tools/"
- ],
- "explorer_url": [
- "https://ftmscan.com/"
- ],
- "type": "FTM-20",
- "active": false,
- "currently_enabled": false
- },
- "BAND-PLG20": {
- "coin": "BAND-PLG20",
- "name": "Band Protocol",
- "coinpaprika_id": "band-band-protocol",
- "coingecko_id": "band-protocol",
- "nomics_id": "BAND",
- "nodes": [
- "https://polygon-rpc.com",
- "https://poly-rpc.gateway.pokt.network",
- "https://matic-mainnet.chainstacklabs.com"
- ],
- "explorer_url": [
- "https://polygonscan.com/"
- ],
- "type": "Matic",
- "active": false,
- "currently_enabled": false
- },
- "BCH": {
- "coin": "BCH",
- "coingecko_id": "bitcoin-cash",
- "coinpaprika_id": "bch-bitcoin-cash",
- "nomics_id": "BCH",
- "active": false,
- "currently_enabled": false,
- "electrum": [
- {
- "url": "electrum1.cipig.net:10055",
- "ws_url": "electrum1.cipig.net:30055"
- },
- {
- "url": "electrum2.cipig.net:10055",
- "ws_url": "electrum2.cipig.net:30055"
- },
- {
- "url": "electrum3.cipig.net:10055",
- "ws_url": "electrum3.cipig.net:30055"
- }
- ],
- "explorer_url": [
- "https://explorer.bitcoin.com/bch/"
- ],
- "type": "UTXO",
- "name": "Bitcoin Cash"
- },
- "BCH-ERC20": {
- "coin": "BCH-ERC20",
- "name": "Bitcoin Cash",
- "coinpaprika_id": "bch-bitcoin-cash",
- "coingecko_id": "bitcoin-cash",
- "nomics_id": "BCH",
- "nodes": [
- "http://eth1.cipig.net:8555",
- "http://eth2.cipig.net:8555",
- "http://eth3.cipig.net:8555"
- ],
- "explorer_url": [
- "https://etherscan.io/"
- ],
- "type": "ERC-20",
- "active": false,
- "currently_enabled": false
- },
- "BCH-BEP20": {
- "coin": "BCH-BEP20",
- "name": "Bitcoin Cash",
- "coinpaprika_id": "bch-bitcoin-cash",
- "coingecko_id": "bitcoin-cash",
- "nomics_id": "BCH",
- "nodes": [
- "http://bsc1.cipig.net:8655",
- "http://bsc2.cipig.net:8655",
- "http://bsc3.cipig.net:8655"
- ],
- "explorer_url": [
- "https://bscscan.com/"
- ],
- "type": "BEP-20",
- "active": false,
- "currently_enabled": false
- },
- "BCH-HCO20": {
- "coin": "BCH-HCO20",
- "name": "Bitcoin Cash",
- "coinpaprika_id": "bch-bitcoin-cash",
- "coingecko_id": "bitcoin-cash",
- "nomics_id": "BCH",
- "nodes": [
- "https://http-mainnet.hecochain.com"
- ],
- "explorer_url": [
- "https://hecoinfo.com/"
- ],
- "type": "HecoChain",
- "active": false,
- "currently_enabled": false
- },
- "BIDR-BEP20": {
- "coin": "BIDR-BEP20",
- "name": "BIDR",
- "forex_id": "IDR",
- "coinpaprika_id": "bidr-binanceidr",
- "coingecko_id": "binanceidr",
- "nomics_id": "BIDR",
- "nodes": [
- "http://bsc1.cipig.net:8655",
- "http://bsc2.cipig.net:8655",
- "http://bsc3.cipig.net:8655"
- ],
- "explorer_url": [
- "https://bscscan.com/"
- ],
- "type": "BEP-20",
- "active": false,
- "currently_enabled": false
- },
- "BLK": {
- "coin": "BLK",
- "name": "BlackCoin",
- "coinpaprika_id": "blk-blackcoin",
- "coingecko_id": "blackcoin",
- "nomics_id": "BLK",
- "electrum": [
- {
- "url": "electrum1.blackcoin.nl:10002",
- "protocol": "SSL",
- "disable_cert_verification": false,
- "ws_url": "electrum1.blackcoin.nl:10004"
- },
- {
- "url": "electrum2.blackcoin.nl:20002",
- "protocol": "SSL",
- "disable_cert_verification": false,
- "ws_url": "electrum2.blackcoin.nl:20004"
- },
- {
- "url": "electrum3.blackcoin.nl:30002",
- "protocol": "SSL",
- "disable_cert_verification": false,
- "ws_url": "electrum3.blackcoin.nl:30004"
- }
- ],
- "explorer_url": [
- "https://chainz.cryptoid.info/blk/"
- ],
- "explorer_tx_url": "tx.dws?",
- "explorer_address_url": "address.dws?",
- "type": "UTXO",
- "active": false,
- "currently_enabled": false
- },
- "BLK-BEP20": {
- "coin": "BLK-BEP20",
- "name": "BlackCoin",
- "coinpaprika_id": "blk-blackcoin",
- "coingecko_id": "blackcoin",
- "nomics_id": "BLK",
- "nodes": [
- "http://bsc1.cipig.net:8655",
- "http://bsc2.cipig.net:8655",
- "http://bsc3.cipig.net:8655"
- ],
- "explorer_url": [
- "https://bscscan.com/"
- ],
- "type": "BEP-20",
- "active": false,
- "currently_enabled": false
- },
- "tBLK": {
- "coin": "tBLK",
- "name": "BlackCoin (testnet)",
- "coinpaprika_id": "test-coin",
- "coingecko_id": "test-coin",
- "is_testnet": true,
- "electrum": [
- {
- "url": "electrum1.blackcoin.nl:10012",
- "protocol": "SSL",
- "disable_cert_verification": true,
- "ws_url": "electrum1.blackcoin.nl:10014"
- },
- {
- "url": "electrum2.blackcoin.nl:20012",
- "protocol": "SSL",
- "disable_cert_verification": true,
- "ws_url": "electrum2.blackcoin.nl:20014"
- },
- {
- "url": "electrum3.blackcoin.nl:30012",
- "protocol": "SSL",
- "disable_cert_verification": true,
- "ws_url": "electrum3.blackcoin.nl:30014"
- }
- ],
- "explorer_url": [
- "https://explorer.blackcoin.nl/"
- ],
- "explorer_tx_url": "tx/",
- "explorer_address_url": "address/",
- "type": "UTXO",
- "active": false,
- "currently_enabled": false
- },
- "BNB": {
- "coin": "BNB",
- "name": "Binance Coin",
- "coinpaprika_id": "bnb-binance-coin",
- "coingecko_id": "binancecoin",
- "nomics_id": "BNB",
- "nodes": [
- "http://bsc1.cipig.net:8655",
- "http://bsc2.cipig.net:8655",
- "http://bsc3.cipig.net:8655"
- ],
- "explorer_url": [
- "https://bscscan.com/"
- ],
- "type": "BEP-20",
- "active": false,
- "currently_enabled": false
- },
- "BNBT": {
- "coin": "BNBT",
- "name": "Binance Coin (Testnet)",
- "coinpaprika_id": "test-coin",
- "coingecko_id": "test-coin",
- "nodes": [
- "https://data-seed-prebsc-1-s2.binance.org:8545"
- ],
- "explorer_url": [
- "https://testnet.bscscan.com/"
- ],
- "is_testnet": true,
- "type": "BEP-20",
- "active": false,
- "currently_enabled": false
- },
- "BNT-BEP20": {
- "coin": "BNT-BEP20",
- "name": "Bancor",
- "coinpaprika_id": "bnt-bancor",
- "coingecko_id": "bancor",
- "nomics_id": "BNT",
- "nodes": [
- "http://bsc1.cipig.net:8655",
- "http://bsc2.cipig.net:8655",
- "http://bsc3.cipig.net:8655"
- ],
- "explorer_url": [
- "https://bscscan.com/"
- ],
- "type": "BEP-20",
- "active": false,
- "currently_enabled": false
- },
- "BNT-ERC20": {
- "coin": "BNT-ERC20",
- "name": "Bancor",
- "coinpaprika_id": "bnt-bancor",
- "coingecko_id": "bancor",
- "nomics_id": "BNT",
- "nodes": [
- "http://eth1.cipig.net:8555",
- "http://eth2.cipig.net:8555",
- "http://eth3.cipig.net:8555"
- ],
- "explorer_url": [
- "https://etherscan.io/"
- ],
- "type": "ERC-20",
- "active": false,
- "currently_enabled": false
- },
- "BNT-PLG20": {
- "coin": "BNT-PLG20",
- "name": "Bancor",
- "coinpaprika_id": "bnt-bancor",
- "coingecko_id": "bancor",
- "nomics_id": "BNT",
- "nodes": [
- "https://polygon-rpc.com",
- "https://poly-rpc.gateway.pokt.network",
- "https://matic-mainnet.chainstacklabs.com"
- ],
- "explorer_url": [
- "https://polygonscan.com/"
- ],
- "type": "Matic",
- "active": false,
- "currently_enabled": false
- },
- "BONE-ERC20" : {
- "coin": "BONE-ERC20",
- "name": "Bone ShibaSwap",
- "coinpaprika_id": "bone-bone-shibaswap",
- "coingecko_id": "bone-shibaswap",
- "nomics_id": "BONE6",
- "nodes": [
- "http://eth1.cipig.net:8555",
- "http://eth2.cipig.net:8555",
- "http://eth3.cipig.net:8555"
- ],
- "explorer_url": [
- "https://etherscan.io/"
- ],
- "type": "ERC-20",
- "active": false,
- "currently_enabled": false
- },
- "BRZ-BEP20": {
- "coin": "BRZ-BEP20",
- "name": "Brazilian Digital Token",
- "forex_id": "BRL",
- "coinpaprika_id": "brz-brazilian-digital-token",
- "coingecko_id": "brz",
- "nomics_id": "BRZ",
- "nodes": [
- "http://bsc1.cipig.net:8655",
- "http://bsc2.cipig.net:8655",
- "http://bsc3.cipig.net:8655"
- ],
- "explorer_url": [
- "https://bscscan.com/"
- ],
- "type": "BEP-20",
- "active": false,
- "currently_enabled": false
- },
- "BRZ-ERC20": {
- "coin": "BRZ-ERC20",
- "name": "Brazilian Digital Token",
- "forex_id": "BRL",
- "coinpaprika_id": "brz-brazilian-digital-token",
- "coingecko_id": "brz",
- "nomics_id": "BRZ",
- "nodes": [
- "http://eth1.cipig.net:8555",
- "http://eth2.cipig.net:8555",
- "http://eth3.cipig.net:8555"
- ],
- "explorer_url": [
- "https://etherscan.io/"
- ],
- "type": "ERC-20",
- "active": false,
- "currently_enabled": false
- },
- "BSTY": {
- "coin": "BSTY",
- "name": "GlobalBoost-Y",
- "coinpaprika_id": "bsty-globalboost-y",
- "coingecko_id": "globalboost",
- "nomics_id": "BSTY",
- "electrum": [
- {
- "url": "66.172.33.175:50001",
- "protocol": "TCP"
- },
- {
- "url": "bsty-main.coinmunity.gold:50012",
- "protocol": "SSL",
- "disable_cert_verification": true,
- "ws_url": "bsty-main.coinmunity.gold:50013"
- },
- {
- "url": "bsty-bkp.coinmunity.gold:50012",
- "protocol": "SSL",
- "disable_cert_verification": true,
- "ws_url": "bsty-bkp.coinmunity.gold:50013"
- }
- ],
- "explorer_url": [
- "https://insight.globalboost.info/"
- ],
- "type": "UTXO",
- "active": false,
- "currently_enabled": false
- },
- "RBTC": {
- "coin": "RBTC",
- "name": "RSK Smart Bitcoin",
- "alias_ticker": "BTC",
- "coinpaprika_id": "rbtc-smart-bitcoin",
- "coingecko_id": "rootstock",
- "nodes": [
- "https://public-node.rsk.co"
- ],
- "explorer_url": [
- "https://explorer.rsk.co"
- ],
- "type": "RSK Smart Bitcoin",
- "active": false,
- "currently_enabled": false
- },
- "BTC": {
- "coin": "BTC",
- "name": "Bitcoin",
- "type": "UTXO",
- "coingecko_id": "bitcoin",
- "coinpaprika_id": "btc-bitcoin",
- "nomics_id": "BTC",
- "electrum": [
- {
- "url": "electrum3.cipig.net:10000",
- "ws_url": "electrum3.cipig.net:30000"
- },
- {
- "url": "electrum2.cipig.net:10000",
- "ws_url": "electrum2.cipig.net:30000"
- },
- {
- "url": "electrum1.cipig.net:10000",
- "ws_url": "electrum1.cipig.net:30000"
- }
- ],
- "explorer_url": [
- "https://blockstream.info/"
- ],
- "active": true,
- "currently_enabled": false
- },
- "BTC-BEP20": {
- "coin": "BTC-BEP20",
- "name": "Bitcoin",
- "coinpaprika_id": "btc-bitcoin",
- "coingecko_id": "bitcoin",
- "nomics_id": "BTC",
- "nodes": [
- "http://bsc1.cipig.net:8655",
- "http://bsc2.cipig.net:8655",
- "http://bsc3.cipig.net:8655"
- ],
- "explorer_url": [
- "https://bscscan.com/"
- ],
- "type": "BEP-20",
- "active": false,
- "currently_enabled": false
- },
- "BTCZ": {
- "coin": "BTCZ",
- "name": "BitcoinZ",
- "coinpaprika_id": "btcz-bitcoinz",
- "coingecko_id": "bitcoinz",
- "nomics_id": "BTCZ",
- "electrum": [
- {
- "url": "electrum1.btcz.rocks:50001",
- "ws_url": "electrum1.btcz.rocks:50004"
- },
- {
- "url": "electrum2.btcz.rocks:50001",
- "ws_url": "electrum2.btcz.rocks:50004"
- }
- ],
- "explorer_url": [
- "https://explorer.btcz.rocks/"
- ],
- "type": "UTXO",
- "active": false,
- "currently_enabled": false
- },
- "BTX": {
- "coin": "BTX",
- "name": "BitCore",
- "coinpaprika_id": "btx-bitcore",
- "coingecko_id": "bitcore",
- "nomics_id": "BTX",
- "electrum": [
- {
- "url": "btx-electrumx.coinsmunity.com:50002",
- "protocol": "SSL",
- "disable_cert_verification": true,
- "ws_url": "btx-electrumx.coinsmunity.com:50003"
- }
- ],
- "explorer_url": [
- "https://chainz.cryptoid.info/btx/"
- ],
- "explorer_tx_url": "tx.dws?",
- "explorer_address_url": "address.dws?",
- "type": "UTXO",
- "active": false,
- "currently_enabled": false
- },
- "BTX-BEP20": {
- "coin": "BTX-BEP20",
- "name": "BitCore",
- "coinpaprika_id": "btx-bitcore",
- "coingecko_id": "bitcore",
- "nomics_id": "BTX",
- "nodes": [
- "http://bsc1.cipig.net:8655",
- "http://bsc2.cipig.net:8655",
- "http://bsc3.cipig.net:8655"
- ],
- "explorer_url": [
- "https://bscscan.com/"
- ],
- "type": "BEP-20",
- "active": false,
- "currently_enabled": false
- },
- "BET": {
- "coin": "BET",
- "name": "BET",
- "type": "Smart Chain",
- "coingecko_id": "test-coin",
- "coinpaprika_id": "test-coin",
- "electrum": [
- {
- "url": "electrum1.cipig.net:10012",
- "ws_url": "electrum1.cipig.net:30012"
- },
- {
- "url": "electrum2.cipig.net:10012",
- "ws_url": "electrum2.cipig.net:30012"
- },
- {
- "url": "electrum3.cipig.net:10012",
- "ws_url": "electrum3.cipig.net:30012"
- }
- ],
- "explorer_url": [
- "https://bet.explorer.dexstats.info/"
- ],
- "active": false,
- "currently_enabled": false
- },
- "BOTS": {
- "coin": "BOTS",
- "name": "BOTS",
- "type": "Smart Chain",
- "coingecko_id": "test-coin",
- "coinpaprika_id": "test-coin",
- "electrum": [
- {
- "url": "electrum1.cipig.net:10007",
- "ws_url": "electrum1.cipig.net:30007"
- },
- {
- "url": "electrum2.cipig.net:10007",
- "ws_url": "electrum2.cipig.net:30007"
- },
- {
- "url": "electrum3.cipig.net:10007",
- "ws_url": "electrum3.cipig.net:30007"
- }
- ],
- "explorer_url": [
- "https://bots.explorer.dexstats.info/"
- ],
- "active": false,
- "currently_enabled": false
- },
- "BTT-BEP20": {
- "coin": "BTT-BEP20",
- "name": "BitTorrent (OLD)",
- "coinpaprika_id": "btt-bittorrent",
- "coingecko_id": "bittorrent-old",
- "nomics_id": "BITTORRENT",
- "nodes": [
- "http://bsc1.cipig.net:8655",
- "http://bsc2.cipig.net:8655",
- "http://bsc3.cipig.net:8655"
- ],
- "explorer_url": [
- "https://bscscan.com/"
- ],
- "type": "BEP-20",
- "active": false,
- "currently_enabled": false
- },
- "BTTC-BEP20": {
- "coin": "BTTC-BEP20",
- "name": "BitTorrent",
- "coinpaprika_id": "bttc-bittorrent-chain",
- "coingecko_id": "bittorrent",
- "nomics_id": "BTT2",
- "nodes": [
- "http://bsc1.cipig.net:8655",
- "http://bsc2.cipig.net:8655",
- "http://bsc3.cipig.net:8655"
- ],
- "explorer_url": [
- "https://bscscan.com/"
- ],
- "type": "BEP-20",
- "active": false,
- "currently_enabled": false
- },
- "BTU-ERC20": {
- "coin": "BTU-ERC20",
- "name": "BTU Protocol",
- "coinpaprika_id": "btu-btu-protocol",
- "coingecko_id": "btu-protocol",
- "nomics_id": "BTU",
- "nodes": [
- "http://eth1.cipig.net:8555",
- "http://eth2.cipig.net:8555",
- "http://eth3.cipig.net:8555"
- ],
- "explorer_url": [
- "https://etherscan.io/"
- ],
- "type": "ERC-20",
- "active": false,
- "currently_enabled": false
- },
- "BTU-PLG20": {
- "coin": "BTU-PLG20",
- "name": "BTU Protocol",
- "coinpaprika_id": "btu-btu-protocol",
- "coingecko_id": "btu-protocol",
- "nomics_id": "BTU",
- "nodes": [
- "https://polygon-rpc.com",
- "https://poly-rpc.gateway.pokt.network",
- "https://matic-mainnet.chainstacklabs.com"
- ],
- "explorer_url": [
- "https://polygonscan.com/"
- ],
- "type": "Matic",
- "active": false,
- "currently_enabled": false
- },
- "BUSD-AVX20": {
- "coin": "BUSD-AVX20",
- "name": "Binance USD",
- "coinpaprika_id": "busd-binance-usd",
- "coingecko_id": "binance-usd",
- "nomics_id": "BUSD",
- "nodes": [
- "https://api.avax.network/ext/bc/C/rpc"
- ],
- "explorer_url": [
- "https://snowtrace.io/"
- ],
- "type": "AVX-20",
- "active": false,
- "currently_enabled": false
- },
- "BUSD-MVR20": {
- "coin": "BUSD-MVR20",
- "name": "Binance USD",
- "coinpaprika_id": "busd-binance-usd",
- "coingecko_id": "binance-usd",
- "nomics_id": "BUSD",
- "nodes": [
- "https://rpc.api.moonriver.moonbeam.network"
- ],
- "explorer_url": [
- "https://moonriver.moonscan.io/"
- ],
- "type": "Moonriver",
- "active": false,
- "currently_enabled": false
- },
- "BUSD-ERC20": {
- "coin": "BUSD-ERC20",
- "name": "Binance USD",
- "coinpaprika_id": "busd-binance-usd",
- "coingecko_id": "binance-usd",
- "nomics_id": "BUSD",
- "nodes": [
- "http://eth1.cipig.net:8555",
- "http://eth2.cipig.net:8555",
- "http://eth3.cipig.net:8555"
- ],
- "explorer_url": [
- "https://etherscan.io/"
- ],
- "type": "ERC-20",
- "active": false,
- "currently_enabled": false
- },
- "BUSD-BEP20": {
- "coin": "BUSD-BEP20",
- "name": "Binance USD",
- "coinpaprika_id": "busd-binance-usd",
- "coingecko_id": "binance-usd",
- "nomics_id": "BUSD",
- "nodes": [
- "http://bsc1.cipig.net:8655",
- "http://bsc2.cipig.net:8655",
- "http://bsc3.cipig.net:8655"
- ],
- "explorer_url": [
- "https://bscscan.com/"
- ],
- "type": "BEP-20",
- "active": false,
- "currently_enabled": false
- },
- "BUSD-HRC20": {
- "coin": "BUSD-HRC20",
- "name": "Binance USD",
- "coinpaprika_id": "busd-binance-usd",
- "coingecko_id": "binance-usd",
- "nomics_id": "BUSD",
- "nodes": [
- "https://api.harmony.one",
- "https://api.s0.t.hmny.io"
- ],
- "explorer_url": [
- "https://explorer.harmony.one/"
- ],
- "type": "HRC-20",
- "active": false,
- "currently_enabled": false
- },
- "BUSD-PLG20": {
- "coin": "BUSD-PLG20",
- "name": "Binance USD",
- "coinpaprika_id": "busd-binance-usd",
- "coingecko_id": "binance-usd",
- "nomics_id": "BUSD",
- "nodes": [
- "https://polygon-rpc.com",
- "https://poly-rpc.gateway.pokt.network",
- "https://matic-mainnet.chainstacklabs.com"
- ],
- "explorer_url": [
- "https://polygonscan.com/"
- ],
- "type": "Matic",
- "active": false,
- "currently_enabled": false
- },
- "BTE": {
- "coin": "BTE",
- "name": "Bitweb",
- "type": "UTXO",
- "coingecko_id": "bitweb",
- "coinpaprika_id": "bte-bitweb",
- "nomics_id": "BTE3",
- "electrum": [
- {
- "url": "electrumx.bitwebcore.org:20001"
- },
- {
- "url": "electrumx6.scalaris.info:20001"
- },
- {
- "url": "electrumx7.scalaris.info:20001"
- }
- ],
- "explorer_url": [
- "https://explorer.bitwebcore.org/"
- ],
- "active": false,
- "currently_enabled": false
- },
- "CADC-ERC20": {
- "coin": "CADC-ERC20",
- "name": "CAD Coin",
- "forex_id": "CAD",
- "coinpaprika_id": "cadc-cad-coin",
- "coingecko_id": "cad-coin",
- "nomics_id": "CADC",
- "nodes": [
- "http://eth1.cipig.net:8555",
- "http://eth2.cipig.net:8555",
- "http://eth3.cipig.net:8555"
- ],
- "explorer_url": [
- "https://etherscan.io/"
- ],
- "type": "ERC-20",
- "active": false,
- "currently_enabled": false
- },
- "CADC-PLG20": {
- "coin": "CADC-PLG20",
- "name": "CAD Coin",
- "forex_id": "CAD",
- "coinpaprika_id": "cadc-cad-coin",
- "coingecko_id": "cad-coin",
- "nomics_id": "CADC",
- "nodes": [
- "https://polygon-rpc.com",
- "https://poly-rpc.gateway.pokt.network",
- "https://matic-mainnet.chainstacklabs.com"
- ],
- "explorer_url": [
- "https://polygonscan.com/"
- ],
- "type": "Matic",
- "active": false,
- "currently_enabled": false
- },
- "CAKE": {
- "coin": "CAKE",
- "name": "PancakeSwap",
- "coinpaprika_id": "cake-pancakeswap",
- "coingecko_id": "pancakeswap-token",
- "nomics_id": "CAKE",
- "nodes": [
- "http://bsc1.cipig.net:8655",
- "http://bsc2.cipig.net:8655",
- "http://bsc3.cipig.net:8655"
- ],
- "explorer_url": [
- "https://bscscan.com/"
- ],
- "type": "BEP-20",
- "active": false,
- "currently_enabled": false
- },
- "CASE": {
- "coin": "CASE",
- "name": "Case Token",
- "coinpaprika_id": "test-coin",
- "coingecko_id": "test-coin",
- "nomics_id": "CASE",
- "nodes": [
- "http://bsc1.cipig.net:8655",
- "http://bsc2.cipig.net:8655",
- "http://bsc3.cipig.net:8655"
- ],
- "explorer_url": [
- "https://bscscan.com/"
- ],
- "type": "BEP-20",
- "active": false,
- "currently_enabled": false
- },
- "CCL": {
- "coin": "CCL",
- "name": "CoinCollect",
- "coinpaprika_id": "test-coin",
- "coingecko_id": "test-coin",
- "electrum": [
- {
- "url": "electrum1.cipig.net:10029",
- "ws_url": "electrum1.cipig.net:30029"
- },
- {
- "url": "electrum2.cipig.net:10029",
- "ws_url": "electrum2.cipig.net:30029"
- },
- {
- "url": "electrum3.cipig.net:10029",
- "ws_url": "electrum3.cipig.net:30029"
- }
- ],
- "explorer_url": [
- "https://ccl.explorer.dexstats.info/"
- ],
- "type": "Smart Chain",
- "active": false,
- "currently_enabled": false
- },
- "CDN": {
- "coin": "CDN",
- "name": "Canada eCoin",
- "coinpaprika_id": "cdn-canada-ecoin",
- "coingecko_id": "test-coin",
- "nomics_id": "CDN",
- "electrum": [
- {
- "url": "mumbai.ecoincore.com:34333",
- "protocol": "SSL",
- "disable_cert_verification": true,
- "ws_url": "mumbai.ecoincore.com:34335"
- },
- {
- "url": "holland.ecoincore.com:34333",
- "protocol": "SSL",
- "disable_cert_verification": true,
- "ws_url": "holland.ecoincore.com:34335"
- },
- {
- "url": "miami.ecoincore.com:34333",
- "protocol": "SSL",
- "disable_cert_verification": true,
- "ws_url": "miami.ecoincore.com:34335"
- },
- {
- "url": "woolloomooloo.ecoincore.com:34333",
- "protocol": "SSL",
- "disable_cert_verification": true,
- "ws_url": "woolloomooloo.ecoincore.com:34335"
- },
- {
- "url": "lenoir.ecoincore.com:34333",
- "protocol": "SSL",
- "disable_cert_verification": true,
- "ws_url": "lenoir.ecoincore.com:34335"
- }
- ],
- "explorer_url": [
- "https://chainz.cryptoid.info/cdn/"
- ],
- "explorer_tx_url": "tx.dws?",
- "explorer_address_url": "address.dws?",
- "type": "UTXO",
- "active": false,
- "currently_enabled": false
- },
- "CELR-ERC20": {
- "coin": "CELR-ERC20",
- "name": "Celer Network",
- "coinpaprika_id": "celr-celer-network",
- "coingecko_id": "celer-network",
- "nomics_id": "CELR",
- "nodes": [
- "http://eth1.cipig.net:8555",
- "http://eth2.cipig.net:8555",
- "http://eth3.cipig.net:8555"
- ],
- "explorer_url": [
- "https://etherscan.io/"
- ],
- "type": "ERC-20",
- "active": false,
- "currently_enabled": false
- },
- "CELR-BEP20": {
- "coin": "CELR-BEP20",
- "name": "Celer Network",
- "coinpaprika_id": "celr-celer-network",
- "coingecko_id": "celer-network",
- "nomics_id": "CELR",
- "nodes": [
- "http://bsc1.cipig.net:8655",
- "http://bsc2.cipig.net:8655",
- "http://bsc3.cipig.net:8655"
- ],
- "explorer_url": [
- "https://bscscan.com/"
- ],
- "type": "BEP-20",
- "active": false,
- "currently_enabled": false
- },
- "CELR-ARB20": {
- "coin": "CELR-ARB20",
- "name": "Celer Network",
- "coinpaprika_id": "celr-celer-network",
- "coingecko_id": "celer-network",
- "nomics_id": "CELR",
- "nodes": [
- "https://arb1.arbitrum.io/rpc"
- ],
- "explorer_url": [
- "https://arbiscan.io/"
- ],
- "type": "Arbitrum",
- "active": false,
- "currently_enabled": false,
- "wallet_only": true
- },
- "CLC": {
- "coin": "CLC",
- "name": "Collider Coin",
- "coinpaprika_id": "clc-collider-coin",
- "coingecko_id": "test-coin",
- "nomics_id": "CLC2",
- "electrum": [
- {
- "url": "electrumx.cryptocollider.com:10001"
- },
- {
- "url": "electrumx2.cryptocollider.com:10001"
- }
- ],
- "explorer_url": [
- "https://clc.explorer.dexstats.info/"
- ],
- "type": "Smart Chain",
- "active": false,
- "currently_enabled": false
- },
- "COMP-AVX20": {
- "coin": "COMP-AVX20",
- "name": "Compound",
- "coinpaprika_id": "comp-compoundd",
- "coingecko_id": "compound-governance-token",
- "nomics_id": "COMP",
- "nodes": [
- "https://api.avax.network/ext/bc/C/rpc"
- ],
- "explorer_url": [
- "https://snowtrace.io/"
- ],
- "type": "AVX-20",
- "active": false,
- "currently_enabled": false
- },
- "COMP-BEP20": {
- "coin": "COMP-BEP20",
- "name": "Compound",
- "coinpaprika_id": "comp-compoundd",
- "coingecko_id": "compound-governance-token",
- "nomics_id": "COMP",
- "nodes": [
- "http://bsc1.cipig.net:8655",
- "http://bsc2.cipig.net:8655",
- "http://bsc3.cipig.net:8655"
- ],
- "explorer_url": [
- "https://bscscan.com/"
- ],
- "type": "BEP-20",
- "active": false,
- "currently_enabled": false
- },
- "COMP-ERC20": {
- "coin": "COMP-ERC20",
- "name": "Compound",
- "coinpaprika_id": "comp-compoundd",
- "coingecko_id": "compound-governance-token",
- "nomics_id": "COMP",
- "nodes": [
- "http://eth1.cipig.net:8555",
- "http://eth2.cipig.net:8555",
- "http://eth3.cipig.net:8555"
- ],
- "explorer_url": [
- "https://etherscan.io/"
- ],
- "type": "ERC-20",
- "active": false,
- "currently_enabled": false
- },
- "COMP-KRC20": {
- "coin": "COMP-KRC20",
- "name": "Compound",
- "coinpaprika_id": "comp-compoundd",
- "coingecko_id": "compound-governance-token",
- "nomics_id": "COMP",
- "nodes": [
- "https://rpc-mainnet.kcc.network"
- ],
- "explorer_url": [
- "https://explorer.kcc.io/en/"
- ],
- "type": "KRC-20",
- "active": false,
- "currently_enabled": false
- },
- "COMP-PLG20": {
- "coin": "COMP-PLG20",
- "name": "Compound",
- "coinpaprika_id": "comp-compoundd",
- "coingecko_id": "compound-governance-token",
- "nomics_id": "COMP",
- "nodes": [
- "https://polygon-rpc.com",
- "https://poly-rpc.gateway.pokt.network",
- "https://matic-mainnet.chainstacklabs.com"
- ],
- "explorer_url": [
- "https://polygonscan.com/"
- ],
- "type": "Matic",
- "active": false,
- "currently_enabled": false
- },
- "CRYPTO": {
- "coin": "CRYPTO",
- "name": "CRYPTO",
- "type": "Smart Chain",
- "coingecko_id": "test-coin",
- "coinpaprika_id": "test-coin",
- "electrum": [
- {
- "url": "electrum1.cipig.net:10008",
- "ws_url": "electrum1.cipig.net:30008"
- },
- {
- "url": "electrum2.cipig.net:10008",
- "ws_url": "electrum2.cipig.net:30008"
- },
- {
- "url": "electrum3.cipig.net:10008",
- "ws_url": "electrum3.cipig.net:30008"
- }
- ],
- "explorer_url": [
- "https://crypto.explorer.dexstats.info/"
- ],
- "active": false,
- "currently_enabled": false
- },
- "CUMMIES-BEP20": {
- "coin": "CUMMIES-BEP20",
- "name": "CumRocket",
- "nomics_id": "CUMMIES",
- "coinpaprika_id": "cummies-cumrocket",
- "coingecko_id": "cumrocket",
- "nodes": [
- "http://bsc1.cipig.net:8655",
- "http://bsc2.cipig.net:8655",
- "http://bsc3.cipig.net:8655"
- ],
- "explorer_url": [
- "https://bscscan.com/"
- ],
- "type": "BEP-20",
- "active": false,
- "currently_enabled": false
- },
- "DAI-AVX20": {
- "coin": "DAI-AVX20",
- "name": "Dai",
- "coinpaprika_id": "dai-dai",
- "coingecko_id": "dai",
- "nomics_id": "DAI",
- "nodes": [
- "https://api.avax.network/ext/bc/C/rpc"
- ],
- "explorer_url": [
- "https://snowtrace.io/"
- ],
- "type": "AVX-20",
- "active": false,
- "currently_enabled": false
- },
- "DAI-FTM20": {
- "coin": "DAI-FTM20",
- "name": "Dai",
- "coinpaprika_id": "dai-dai",
- "coingecko_id": "dai",
- "nomics_id": "DAI",
- "nodes": [
- "https://rpc.ftm.tools/"
- ],
- "explorer_url": [
- "https://ftmscan.com/"
- ],
- "type": "FTM-20",
- "active": false,
- "currently_enabled": false
- },
- "DAI-HCO20": {
- "coin": "DAI-HCO20",
- "name": "Dai",
- "coinpaprika_id": "dai-dai",
- "coingecko_id": "dai",
- "nomics_id": "DAI",
- "nodes": [
- "https://http-mainnet.hecochain.com"
- ],
- "explorer_url": [
- "https://hecoinfo.com/"
- ],
- "type": "HecoChain",
- "active": false,
- "currently_enabled": false
- },
- "DAI-HRC20": {
- "coin": "DAI-HRC20",
- "name": "Dai",
- "coinpaprika_id": "dai-dai",
- "coingecko_id": "dai",
- "nomics_id": "DAI",
- "nodes": [
- "https://api.harmony.one",
- "https://api.s0.t.hmny.io"
- ],
- "explorer_url": [
- "https://explorer.harmony.one/"
- ],
- "type": "HRC-20",
- "active": false,
- "currently_enabled": false
- },
- "DAI-BEP20": {
- "coin": "DAI-BEP20",
- "name": "Dai",
- "coinpaprika_id": "dai-dai",
- "coingecko_id": "dai",
- "nomics_id": "DAI",
- "nodes": [
- "http://bsc1.cipig.net:8655",
- "http://bsc2.cipig.net:8655",
- "http://bsc3.cipig.net:8655"
- ],
- "explorer_url": [
- "https://bscscan.com/"
- ],
- "type": "BEP-20",
- "active": false,
- "currently_enabled": false
- },
- "DAI-ERC20": {
- "coin": "DAI-ERC20",
- "name": "Dai",
- "coinpaprika_id": "dai-dai",
- "coingecko_id": "dai",
- "nomics_id": "DAI",
- "nodes": [
- "http://eth1.cipig.net:8555",
- "http://eth2.cipig.net:8555",
- "http://eth3.cipig.net:8555"
- ],
- "explorer_url": [
- "https://etherscan.io/"
- ],
- "type": "ERC-20",
- "active": false,
- "currently_enabled": false
- },
- "DAI-MVR20": {
- "coin": "DAI-MVR20",
- "name": "Dai",
- "coinpaprika_id": "dai-dai",
- "coingecko_id": "dai",
- "nomics_id": "DAI",
- "nodes": [
- "https://rpc.api.moonriver.moonbeam.network"
- ],
- "explorer_url": [
- "https://moonriver.moonscan.io/"
- ],
- "type": "Moonriver",
- "active": false,
- "currently_enabled": false
- },
- "DAI-PLG20": {
- "coin": "DAI-PLG20",
- "name": "Dai",
- "coinpaprika_id": "dai-dai",
- "coingecko_id": "dai",
- "nomics_id": "DAI",
- "nodes": [
- "https://polygon-rpc.com",
- "https://poly-rpc.gateway.pokt.network",
- "https://matic-mainnet.chainstacklabs.com"
- ],
- "explorer_url": [
- "https://polygonscan.com/"
- ],
- "type": "Matic",
- "active": false,
- "currently_enabled": false
- },
- "DASH": {
- "active": false,
- "coin": "DASH",
- "name": "Dash",
- "coingecko_id": "dash",
- "coinpaprika_id": "dash-dash",
- "nomics_id": "DASH",
- "currently_enabled": false,
- "electrum": [
- {
- "url": "electrum1.cipig.net:10061",
- "ws_url": "electrum1.cipig.net:30061"
- },
- {
- "url": "electrum2.cipig.net:10061",
- "ws_url": "electrum2.cipig.net:30061"
- },
- {
- "url": "electrum3.cipig.net:10061",
- "ws_url": "electrum3.cipig.net:30061"
- }
- ],
- "explorer_url": [
- "https://blockchair.com/dash/"
- ],
- "explorer_tx_url": "transaction/",
- "type": "UTXO"
- },
- "DUST": {
- "coin": "DUST",
- "name": "Dragonfairy",
- "coinpaprika_id": "test-coin",
- "coingecko_id": "test-coin",
- "electrum": [
- {
- "url": "51.222.85.227:10001",
- "ws_url": "51.222.85.227:9001"
- },
- {
- "url": "78.141.233.64:10001",
- "ws_url": "78.141.233.64:9001"
- },
- {
- "url": "192.248.166.207:10001",
- "ws_url": "192.248.166.207:9001"
- }
- ],
- "explorer_url": [
- "http://dragonfairy.gives/"
- ],
- "type": "Smart Chain",
- "active": false,
- "currently_enabled": false
- },
- "DGB": {
- "active": false,
- "coin": "DGB",
- "name": "DigiByte",
- "coinpaprika_id": "dgb-digibyte",
- "coingecko_id": "digibyte",
- "nomics_id": "DGB",
- "currently_enabled": false,
- "electrum": [
- {
- "url": "electrum1.cipig.net:10059",
- "ws_url": "electrum1.cipig.net:30059"
- },
- {
- "url": "electrum2.cipig.net:10059",
- "ws_url": "electrum2.cipig.net:30059"
- },
- {
- "url": "electrum3.cipig.net:10059",
- "ws_url": "electrum3.cipig.net:30059"
- }
- ],
- "explorer_url": [
- "https://digiexplorer.info/"
- ],
- "type": "UTXO"
- },
- "DGC": {
- "coin": "DGC",
- "name": "Digitalcoin",
- "coinpaprika_id": "dgc-digitalcoin",
- "coingecko_id": "digitalcoin",
- "nomics_id": "DGC",
- "electrum": [
- {
- "url": "electrumx.dgc.ewmcx.org:50001",
- "protocol": "TCP",
- "ws_url": "electrumx.dgc.ewmcx.org:50003"
- },
- {
- "url": "failover.dgc.ewmcx.biz:50002",
- "protocol": "SSL",
- "disable_cert_verification": true,
- "ws_url": "failover.dgc.ewmcx.biz:50003"
- }
- ],
- "explorer_url": [
- "https://chainz.cryptoid.info/dgc/"
- ],
- "explorer_tx_url": "tx.dws?",
- "explorer_address_url": "address.dws?",
- "type": "UTXO",
- "active": false,
- "currently_enabled": false
- },
- "DIA-ERC20": {
- "coin": "DIA-ERC20",
- "name": "DIAToken",
- "coinpaprika_id": "dia-dia",
- "coingecko_id": "dia-data",
- "nomics_id": "DIA",
- "nodes": [
- "http://eth1.cipig.net:8555",
- "http://eth2.cipig.net:8555",
- "http://eth3.cipig.net:8555"
- ],
- "explorer_url": [
- "https://etherscan.io/"
- ],
- "type": "ERC-20",
- "active": false,
- "currently_enabled": false
- },
- "DIA-BEP20": {
- "coin": "DIA-BEP20",
- "name": "DIAToken",
- "coinpaprika_id": "dia-dia",
- "coingecko_id": "dia-data",
- "nomics_id": "DIA",
- "nodes": [
- "http://bsc1.cipig.net:8655",
- "http://bsc2.cipig.net:8655",
- "http://bsc3.cipig.net:8655"
- ],
- "explorer_url": [
- "https://bscscan.com/"
- ],
- "type": "BEP-20",
- "active": false,
- "currently_enabled": false
- },
- "DIMI": {
- "coin": "DIMI",
- "name": "Diminutive Coin",
- "coinpaprika_id": "dimi-diminutive-coin",
- "coingecko_id": "diminutive-coin",
- "nomics_id": "DIMI",
- "electrum": [
- {
- "url": "electrumx1.diminutivecoin.com:50012",
- "protocol": "SSL",
- "disable_cert_verification": true,
- "ws_url": "electrumx1.diminutivecoin.com:50013"
- },
- {
- "url": "electrumx2.diminutivecoin.com:50012",
- "protocol": "SSL",
- "disable_cert_verification": true,
- "ws_url": "electrumx2.diminutivecoin.com:50013"
- }
- ],
- "explorer_url": [
- "https://explorer.diminutivecoin.com/"
- ],
- "type": "UTXO",
- "active": false,
- "currently_enabled": false
- },
- "DIMI-BEP20": {
- "coin": "DIMI-BEP20",
- "name": "DiminutiveCoin",
- "coinpaprika_id": "dimi-diminutive-coin",
- "coingecko_id": "diminutive-coin",
- "nomics_id": "DIMI",
- "nodes": [
- "http://bsc1.cipig.net:8655",
- "http://bsc2.cipig.net:8655",
- "http://bsc3.cipig.net:8655"
- ],
- "explorer_url": [
- "https://bscscan.com/"
- ],
- "type": "BEP-20",
- "active": false,
- "currently_enabled": false
- },
- "DIMI-QRC20": {
- "coin": "DIMI-QRC20",
- "name": "DiminutiveCoin",
- "coinpaprika_id": "dimi-diminutive-coin",
- "coingecko_id": "diminutive-coin",
- "nomics_id": "DIMI",
- "explorer_url": [
- "https://explorer.qtum.org/"
- ],
- "type": "QRC-20",
- "active": false,
- "currently_enabled": false
- },
- "DODO-BEP20": {
- "coin": "DODO-BEP20",
- "name": "DODO",
- "coinpaprika_id": "dodo-dodo",
- "coingecko_id": "dodo",
- "nomics_id": "DODO",
- "nodes": [
- "http://bsc1.cipig.net:8655",
- "http://bsc2.cipig.net:8655",
- "http://bsc3.cipig.net:8655"
- ],
- "explorer_url": [
- "https://bscscan.com/"
- ],
- "type": "BEP-20",
- "active": false,
- "currently_enabled": false
- },
- "DODO-ERC20": {
- "coin": "DODO-ERC20",
- "name": "DODO",
- "coinpaprika_id": "dodo-dodo",
- "coingecko_id": "dodo",
- "nomics_id": "DODO",
- "nodes": [
- "http://eth1.cipig.net:8555",
- "http://eth2.cipig.net:8555",
- "http://eth3.cipig.net:8555"
- ],
- "explorer_url": [
- "https://etherscan.io/"
- ],
- "type": "ERC-20",
- "active": false,
- "currently_enabled": false
- },
- "DODO-KRC20": {
- "coin": "DODO-KRC20",
- "name": "DODO",
- "coinpaprika_id": "dodo-dodo",
- "coingecko_id": "dodo",
- "nomics_id": "DODO",
- "nodes": [
- "https://rpc-mainnet.kcc.network"
- ],
- "explorer_url": [
- "https://explorer.kcc.io/en/"
- ],
- "type": "KRC-20",
- "active": false,
- "currently_enabled": false
- },
- "DOGE": {
- "coin": "DOGE",
- "name": "Dogecoin",
- "coinpaprika_id": "doge-dogecoin",
- "coingecko_id": "dogecoin",
- "nomics_id": "DOGE",
- "electrum": [
- {
- "url": "electrum1.cipig.net:10060",
- "ws_url": "electrum1.cipig.net:30060"
- },
- {
- "url": "electrum2.cipig.net:10060",
- "ws_url": "electrum2.cipig.net:30060"
- },
- {
- "url": "electrum3.cipig.net:10060",
- "ws_url": "electrum3.cipig.net:30060"
- }
- ],
- "explorer_url": [
- "https://dogechain.info/"
- ],
- "type": "UTXO",
- "active": false,
- "currently_enabled": false
- },
- "DOGE-BEP20": {
- "coin": "DOGE-BEP20",
- "name": "Dogecoin",
- "coinpaprika_id": "doge-dogecoin",
- "coingecko_id": "dogecoin",
- "nomics_id": "DOGE",
- "nodes": [
- "http://bsc1.cipig.net:8655",
- "http://bsc2.cipig.net:8655",
- "http://bsc3.cipig.net:8655"
- ],
- "explorer_url": [
- "https://bscscan.com/"
- ],
- "type": "BEP-20",
- "active": false,
- "currently_enabled": false
- },
- "DOGEDASH-BEP20": {
- "coin": "DOGEDASH-BEP20",
- "name": "Doge Dash",
- "coinpaprika_id": "dogedash-doge-dash",
- "coingecko_id": "doge-dash",
- "nomics_id": "DOGEDASH",
- "nodes": [
- "http://bsc1.cipig.net:8655",
- "http://bsc2.cipig.net:8655",
- "http://bsc3.cipig.net:8655"
- ],
- "explorer_url": [
- "https://bscscan.com/"
- ],
- "type": "BEP-20",
- "active": false,
- "currently_enabled": false
- },
- "DOGGY-BEP20": {
- "coin": "DOGGY-BEP20",
- "name": "Doggy",
- "coinpaprika_id": "doggy-doggy",
- "coingecko_id": "doggy",
- "nomics_id": "DOGGY",
- "nodes": [
- "http://bsc1.cipig.net:8655",
- "http://bsc2.cipig.net:8655",
- "http://bsc3.cipig.net:8655"
- ],
- "explorer_url": [
- "https://bscscan.com/"
- ],
- "type": "BEP-20",
- "active": false,
- "currently_enabled": false
- },
- "DOI": {
- "coin": "DOI",
- "name": "Doichain",
- "coinpaprika_id": "doi-doicoin",
- "coingecko_id": "doichain",
- "nomics_id": "DOI",
- "electrum": [
- {
- "url": "itchy-jellyfish-89.doi.works:50002",
- "protocol": "SSL",
- "ws-url": "itchy-jellyfish-89.doi.works:50004"
- },
- {
- "url": "big-parrot-60.doi.works:50002",
- "protocol": "SSL",
- "ws-url": "big-parrot-60.doi.works:50004"
- },
- {
- "url": "ugly-bird-70.doi.works:50002",
- "protocol": "SSL",
- "ws-url": "ugly-bird-70.doi.works:50004"
- },
- {
- "url":"pink-deer-69.doi.works:50002",
- "protocol": "SSL",
- "ws-url": "pink-deer-69.doi.works:50004"
- },
- {
- "url":"pink-deer-69.doi.works:50001",
- "protocol": "TCP"
- }
- ],
- "explorer_url": [
- "https://explorer.doichain.org/"
- ],
- "type": "UTXO",
- "active": false,
- "currently_enabled": false
- },
- "DOT-BEP20": {
- "coin": "DOT-BEP20",
- "name": "Polkadot",
- "coinpaprika_id": "dot-polkadot",
- "coingecko_id": "polkadot",
- "nomics_id": "DOT",
- "nodes": [
- "http://bsc1.cipig.net:8655",
- "http://bsc2.cipig.net:8655",
- "http://bsc3.cipig.net:8655"
- ],
- "explorer_url": [
- "https://bscscan.com/"
- ],
- "type": "BEP-20",
- "active": false,
- "currently_enabled": false
- },
- "DOT-HCO20": {
- "coin": "DOT-HCO20",
- "name": "Polkadot",
- "coinpaprika_id": "dot-polkadot",
- "coingecko_id": "polkadot",
- "nomics_id": "DOT",
- "nodes": [
- "https://http-mainnet.hecochain.com"
- ],
- "explorer_url": [
- "https://hecoinfo.com/"
- ],
- "type": "HecoChain",
- "active": false,
- "currently_enabled": false
- },
- "DP": {
- "coin": "DP",
- "name": "DigitalPrice",
- "coinpaprika_id": "dp-digitalprice",
- "coingecko_id": "digitalprice",
- "nomics_id": "DP",
- "electrum": [
- {
- "url": "1.eu.dp.electrum.dexstats.info:10021"
- }
- ],
- "explorer_url": [
- "https://dp.explorer.dexstats.info/"
- ],
- "type": "Smart Chain",
- "active": false,
- "currently_enabled": false
- },
- "ECA": {
- "coin": "ECA",
- "name": "Electra",
- "coinpaprika_id": "eca-electra",
- "coingecko_id": "electra",
- "nomics_id": "ECA",
- "electrum": [
- {
- "url": "electrum1.cipig.net:10052",
- "ws_url": "electrum1.cipig.net:30052"
- },
- {
- "url": "electrum2.cipig.net:10052",
- "ws_url": "electrum2.cipig.net:30052"
- },
- {
- "url": "electrum3.cipig.net:10052",
- "ws_url": "electrum3.cipig.net:30052"
- }
- ],
- "explorer_url": [
- "https://eca.ccore.online/"
- ],
- "type": "UTXO",
- "active": false,
- "currently_enabled": false
- },
- "EFL": {
- "coin": "EFL",
- "name": "e-Gulden",
- "coinpaprika_id": "efl-e-gulden",
- "coingecko_id": "electronicgulden",
- "nomics_id": "EFL",
- "electrum": [
- {
- "url": "holland.ecoincore.com:11017",
- "protocol": "SSL",
- "disable_cert_verification": true,
- "ws_url": "holland.ecoincore.com:11019"
- },
- {
- "url": "lenoir.ecoincore.com:11017",
- "protocol": "SSL",
- "disable_cert_verification": true,
- "ws_url": "lenoir.ecoincore.com:11019"
- },
- {
- "url": "electrum1.egulden.org:50002",
- "protocol": "SSL",
- "disable_cert_verification": true,
- "ws_url": "electrum1.egulden.org:50004"
- },
- {
- "url": "electrum2.egulden.org:50002",
- "protocol": "SSL",
- "disable_cert_verification": true,
- "ws_url": "electrum2.egulden.org:50004"
- },
- {
- "url": "electrum5.egulden.org:11017",
- "protocol": "SSL",
- "disable_cert_verification": true,
- "ws_url": "electrum5.egulden.org:11019"
- }
- ],
- "explorer_url": [
- "https://chainz.cryptoid.info/efl/"
- ],
- "explorer_tx_url": "tx.dws?",
- "explorer_address_url": "address.dws?",
- "type": "UTXO",
- "active": false,
- "currently_enabled": false
- },
- "EGLD-BEP20": {
- "coin": "EGLD-BEP20",
- "name": "Elrond",
- "coinpaprika_id": "egld-elrond",
- "coingecko_id": "elrond-erd-2",
- "nomics_id": "EGLD",
- "nodes": [
- "http://bsc1.cipig.net:8655",
- "http://bsc2.cipig.net:8655",
- "http://bsc3.cipig.net:8655"
- ],
- "explorer_url": [
- "https://bscscan.com/"
- ],
- "type": "BEP-20",
- "active": false,
- "currently_enabled": false
- },
- "EILN-ERC20": {
- "coin": "EILN-ERC20",
- "name": "ilien",
- "coinpaprika_id": "eiln-e-ilien",
- "coingecko_id": "test-coin",
- "nomics_id": "EILN",
- "nodes": [
- "http://eth1.cipig.net:8555",
- "http://eth2.cipig.net:8555",
- "http://eth3.cipig.net:8555"
- ],
- "explorer_url": [
- "https://etherscan.io/"
- ],
- "type": "ERC-20",
- "active": false,
- "currently_enabled": false
- },
- "ELF-BEP20": {
- "coin": "ELF-BEP20",
- "name": "aelf",
- "coinpaprika_id": "elf-aelf",
- "coingecko_id": "aelf",
- "nomics_id": "ELF",
- "nodes": [
- "http://bsc1.cipig.net:8655",
- "http://bsc2.cipig.net:8655",
- "http://bsc3.cipig.net:8655"
- ],
- "explorer_url": [
- "https://bscscan.com/"
- ],
- "type": "BEP-20",
- "active": false,
- "currently_enabled": false
- },
- "ELF-ERC20": {
- "coin": "ELF-ERC20",
- "name": "aelf",
- "coinpaprika_id": "elf-aelf",
- "coingecko_id": "aelf",
- "nomics_id": "ELF",
- "nodes": [
- "http://eth1.cipig.net:8555",
- "http://eth2.cipig.net:8555",
- "http://eth3.cipig.net:8555"
- ],
- "explorer_url": [
- "https://etherscan.io/"
- ],
- "type": "ERC-20",
- "active": false,
- "currently_enabled": false
- },
- "EMC2": {
- "coin": "EMC2",
- "name": "Einsteinium",
- "coinpaprika_id": "emc2-einsteinium",
- "coingecko_id": "einsteinium",
- "nomics_id": "EMC2",
- "electrum": [
- {
- "url": "electrum1.cipig.net:10062",
- "ws_url": "electrum1.cipig.net:30062"
- },
- {
- "url": "electrum2.cipig.net:10062",
- "ws_url": "electrum2.cipig.net:30062"
- },
- {
- "url": "electrum3.cipig.net:10062",
- "ws_url": "electrum3.cipig.net:30062"
- }
- ],
- "explorer_url": [
- "https://chainz.cryptoid.info/emc2/"
- ],
- "explorer_tx_url": "tx.dws?",
- "explorer_address_url": "address.dws?",
- "type": "UTXO",
- "active": false,
- "currently_enabled": false
- },
- "EOS-BEP20": {
- "coin": "EOS-BEP20",
- "name": "EOS",
- "coinpaprika_id": "eos-eos",
- "coingecko_id": "eos",
- "nomics_id": "EOS",
- "nodes": [
- "http://bsc1.cipig.net:8655",
- "http://bsc2.cipig.net:8655",
- "http://bsc3.cipig.net:8655"
- ],
- "explorer_url": [
- "https://bscscan.com/"
- ],
- "type": "BEP-20",
- "active": false,
- "currently_enabled": false
- },
- "ETC": {
- "coin": "ETC",
- "name": "Ethereum Classic",
- "coinpaprika_id": "etc-ethereum-classic",
- "coingecko_id": "ethereum-classic",
- "nomics_id": "ETC",
- "nodes": [
- "https://www.ethercluster.com/etc"
- ],
- "explorer_url": [
- "https://blockscout.com/etc/mainnet/"
- ],
- "type": "Ethereum Classic",
- "active": false,
- "currently_enabled": false
- },
- "ETC-BEP20": {
- "coin": "ETC-BEP20",
- "name": "Ethereum Classic",
- "coinpaprika_id": "etc-ethereum-classic",
- "coingecko_id": "ethereum-classic",
- "nomics_id": "ETC",
- "nodes": [
- "http://bsc1.cipig.net:8655",
- "http://bsc2.cipig.net:8655",
- "http://bsc3.cipig.net:8655"
- ],
- "explorer_url": [
- "https://bscscan.com/"
- ],
- "type": "BEP-20",
- "active": false,
- "currently_enabled": false
- },
- "FET-ERC20": {
- "coin": "FET-ERC20",
- "name": "Fetch.ai",
- "coinpaprika_id": "fetch-ai",
- "coingecko_id": "fetch-ai",
- "nomics_id": "FET",
- "nodes": [
- "http://eth1.cipig.net:8555",
- "http://eth2.cipig.net:8555",
- "http://eth3.cipig.net:8555"
- ],
- "explorer_url": [
- "https://etherscan.io/"
- ],
- "type": "ERC-20",
- "active": false,
- "currently_enabled": false
- },
- "FET-BEP20": {
- "coin": "FET-BEP20",
- "name": "Fetch.ai",
- "coinpaprika_id": "fetch-ai",
- "coingecko_id": "fetch-ai",
- "nomics_id": "FET",
- "nodes": [
- "http://bsc1.cipig.net:8655",
- "http://bsc2.cipig.net:8655",
- "http://bsc3.cipig.net:8655"
- ],
- "explorer_url": [
- "https://bscscan.com/"
- ],
- "type": "BEP-20",
- "active": false,
- "currently_enabled": false
- },
- "FET-PLG20": {
- "coin": "FET-PLG20",
- "name": "Fetch.ai",
- "coinpaprika_id": "fetch-ai",
- "coingecko_id": "fetch-ai",
- "nomics_id": "FET",
- "nodes": [
- "https://polygon-rpc.com",
- "https://poly-rpc.gateway.pokt.network",
- "https://matic-mainnet.chainstacklabs.com"
- ],
- "explorer_url": [
- "https://polygonscan.com/"
- ],
- "type": "Matic",
- "active": false,
- "currently_enabled": false
- },
- "FIL-BEP20": {
- "coin": "FIL-BEP20",
- "name": "Filecoin",
- "coinpaprika_id": "fil-filecoin",
- "coingecko_id": "filecoin",
- "nomics_id": "FIL",
- "nodes": [
- "http://bsc1.cipig.net:8655",
- "http://bsc2.cipig.net:8655",
- "http://bsc3.cipig.net:8655"
- ],
- "explorer_url": [
- "https://bscscan.com/"
- ],
- "type": "BEP-20",
- "active": false,
- "currently_enabled": false
- },
- "FIL-HCO20": {
- "coin": "FIL-HCO20",
- "name": "Filecoin",
- "coinpaprika_id": "fil-filecoin",
- "coingecko_id": "filecoin",
- "nomics_id": "FIL",
- "nodes": [
- "https://http-mainnet.hecochain.com"
- ],
- "explorer_url": [
- "https://hecoinfo.com/"
- ],
- "type": "HecoChain",
- "active": false,
- "currently_enabled": false
- },
- "FLOKI-BEP20": {
- "coin": "FLOKI-BEP20",
- "name": "Floki Inu",
- "coinpaprika_id": "floki-floki-inu",
- "coingecko_id": "floki-inu",
- "nomics_id": "FLOKI15",
- "nodes": [
- "http://bsc1.cipig.net:8655",
- "http://bsc2.cipig.net:8655",
- "http://bsc3.cipig.net:8655"
- ],
- "explorer_url": [
- "https://bscscan.com/"
- ],
- "type": "BEP-20",
- "active": false,
- "currently_enabled": false
- },
- "FLUX": {
- "coin": "FLUX",
- "name": "Flux",
- "coinpaprika_id": "zel-zelcash",
- "coingecko_id": "zelcash",
- "nomics_id": "ZEL",
- "electrum": [
- {
- "url": "electrumx.runonflux.io:50002",
- "protocol": "SSL",
- "disable_cert_verification": true,
- "ws_url": "electrumx.runonflux.io:50004"
- },
- {
- "url": "electrumx2.runonflux.io:50001",
- "protocol": "TCP",
- "ws_url": "electrumx2.runonflux.io:50004"
- }
- ],
- "explorer_url": [
- "https://explorer.runonflux.io/"
- ],
- "type": "UTXO",
- "active": false,
- "currently_enabled": false
- },
- "FLUX-ERC20": {
- "coin": "FLUX-ERC20",
- "name": "Flux",
- "coinpaprika_id": "zel-zelcash",
- "coingecko_id": "zelcash",
- "nomics_id": "ZEL",
- "nodes": [
- "http://eth1.cipig.net:8555",
- "http://eth2.cipig.net:8555",
- "http://eth3.cipig.net:8555"
- ],
- "explorer_url": [
- "https://etherscan.io/"
- ],
- "type": "ERC-20",
- "active": false,
- "currently_enabled": false
- },
- "FLUX-BEP20": {
- "coin": "FLUX-BEP20",
- "name": "Flux",
- "coinpaprika_id": "zel-zelcash",
- "coingecko_id": "zelcash",
- "nomics_id": "ZEL",
- "nodes": [
- "http://bsc1.cipig.net:8655",
- "http://bsc2.cipig.net:8655",
- "http://bsc3.cipig.net:8655"
- ],
- "explorer_url": [
- "https://bscscan.com/"
- ],
- "type": "BEP-20",
- "active": false,
- "currently_enabled": false
- },
- "FIRO": {
- "coin": "FIRO",
- "name": "Firo",
- "coinpaprika_id": "firo-firo",
- "coingecko_id": "zcoin",
- "nomics_id": "FIRO",
- "electrum": [
- {
- "url": "electrumx01.firo.org:50001"
- },
- {
- "url": "electrumx02.firo.org:50001"
- },
- {
- "url": "electrumx03.firo.org:50001"
- }
- ],
- "explorer_url": [
- "https://explorer.firo.org/"
- ],
- "type": "UTXO",
- "active": false,
- "currently_enabled": false
- },
- "FIRO-BEP20": {
- "coin": "FIRO-BEP20",
- "name": "Firo",
- "coinpaprika_id": "firo-firo",
- "coingecko_id": "zcoin",
- "nomics_id": "FIRO",
- "nodes": [
- "http://bsc1.cipig.net:8655",
- "http://bsc2.cipig.net:8655",
- "http://bsc3.cipig.net:8655"
- ],
- "explorer_url": [
- "https://bscscan.com/"
- ],
- "type": "BEP-20",
- "active": false,
- "currently_enabled": false
- },
- "FJC": {
- "coin": "FJC",
- "name": "Fujicoin",
- "coinpaprika_id": "fjc-fujicoin",
- "coingecko_id": "fujicoin",
- "nomics_id": "FJC",
- "electrum": [
- {
- "url": "electrumx1.fujicoin.org:50001",
- "protocol": "TCP"
- },
- {
- "url": "electrumx2.fujicoin.org:50001",
- "protocol": "TCP"
- }
- ],
- "explorer_url": [
- "https://explorer.fujicoin.org/"
- ],
- "explorer_tx_url": "tx/",
- "explorer_address_url": "address/",
- "type": "UTXO",
- "active": false,
- "currently_enabled": false
- },
- "FJC-BEP20": {
- "coin": "FJC-BEP20",
- "name": "Fujicoin",
- "coinpaprika_id": "fjc-fujicoin",
- "coingecko_id": "fujicoin",
- "nomics_id": "FJC",
- "nodes": [
- "http://bsc1.cipig.net:8655",
- "http://bsc2.cipig.net:8655",
- "http://bsc3.cipig.net:8655"
- ],
- "explorer_url": [
- "https://bscscan.com/"
- ],
- "type": "BEP-20",
- "active": false,
- "currently_enabled": false
- },
- "FJCB": {
- "coin": "FJCB",
- "name": "FJCB Fujicoin",
- "coinpaprika_id": "fjcb-fjcb-fujicoin",
- "coingecko_id": "test-coin",
- "nomics_id": "FJCB",
- "nodes": [
- "http://bsc1.cipig.net:8655",
- "http://bsc2.cipig.net:8655",
- "http://bsc3.cipig.net:8655"
- ],
- "explorer_url": [
- "https://bscscan.com/"
- ],
- "type": "BEP-20",
- "active": false,
- "currently_enabled": false
- },
- "FLOW-BEP20": {
- "coin": "FLOW-BEP20",
- "name": "Flow",
- "coinpaprika_id": "flow-flow",
- "coingecko_id": "flow",
- "nomics_id": "FLOW2",
- "nodes": [
- "http://bsc1.cipig.net:8655",
- "http://bsc2.cipig.net:8655",
- "http://bsc3.cipig.net:8655"
- ],
- "explorer_url": [
- "https://bscscan.com/"
- ],
- "type": "BEP-20",
- "active": false,
- "currently_enabled": false
- },
- "STFIRO": {
- "coin": "STFIRO",
- "name": "StakedFIRO",
- "coinpaprika_id": "test-coin",
- "coingecko_id": "stakehound",
- "nodes": [
- "http://eth1.cipig.net:8555",
- "http://eth2.cipig.net:8555",
- "http://eth3.cipig.net:8555"
- ],
- "explorer_url": [
- "https://etherscan.io/"
- ],
- "type": "ERC-20",
- "active": false,
- "currently_enabled": false
- },
- "FTC": {
- "coin": "FTC",
- "name": "Feathercoin",
- "coinpaprika_id": "ftc-feathercoin",
- "coingecko_id": "feathercoin",
- "nomics_id": "FTC",
- "electrum": [
- {
- "url": "electrum1.cipig.net:10054",
- "ws_url": "electrum1.cipig.net:30054"
- },
- {
- "url": "electrum2.cipig.net:10054",
- "ws_url": "electrum2.cipig.net:30054"
- },
- {
- "url": "electrum3.cipig.net:10054",
- "ws_url": "electrum3.cipig.net:30054"
- }
- ],
- "explorer_url": [
- "http://explorer.feathercoin.com/"
- ],
- "type": "UTXO",
- "active": false,
- "currently_enabled": false
- },
- "FTMT": {
- "coin": "FTMT",
- "name": "Fantom Testnet",
- "coinpaprika_id": "test-coin",
- "coingecko_id": "test-coin",
- "is_testnet": true,
- "nodes": [
- "https://rpc.testnet.fantom.network/"
- ],
- "explorer_url": [
- "https://testnet.ftmscan.com/"
- ],
- "type": "FTM-20",
- "active": false,
- "currently_enabled": false
- },
- "FTM": {
- "coin": "FTM",
- "name": "Fantom",
- "coinpaprika_id": "ftm-fantom",
- "coingecko_id": "fantom",
- "nomics_id": "FTM",
- "nodes": [
- "https://rpc.ftm.tools/"
- ],
- "explorer_url": [
- "https://ftmscan.com/"
- ],
- "type": "FTM-20",
- "active": false,
- "currently_enabled": false
- },
- "FTM-BEP20": {
- "coin": "FTM-BEP20",
- "name": "Fantom",
- "coinpaprika_id": "ftm-fantom",
- "coingecko_id": "fantom",
- "nomics_id": "FTM",
- "nodes": [
- "http://bsc1.cipig.net:8655",
- "http://bsc2.cipig.net:8655",
- "http://bsc3.cipig.net:8655"
- ],
- "explorer_url": [
- "https://bscscan.com/"
- ],
- "type": "BEP-20",
- "active": false,
- "currently_enabled": false
- },
- "FTM-ERC20": {
- "coin": "FTM-ERC20",
- "name": "Fantom",
- "coinpaprika_id": "ftm-fantom",
- "coingecko_id": "fantom",
- "nomics_id": "FTM",
- "nodes": [
- "http://eth1.cipig.net:8555",
- "http://eth2.cipig.net:8555",
- "http://eth3.cipig.net:8555"
- ],
- "explorer_url": [
- "https://etherscan.io/"
- ],
- "type": "ERC-20",
- "active": false,
- "currently_enabled": false
- },
- "GALA-ERC20": {
- "coin": "GALA-ERC20",
- "name": "Gala",
- "coinpaprika_id": "gala-gala",
- "coingecko_id": "gala",
- "nomics_id": "GALA",
- "nodes": [
- "http://eth1.cipig.net:8555",
- "http://eth2.cipig.net:8555",
- "http://eth3.cipig.net:8555"
- ],
- "explorer_url": [
- "https://etherscan.io/"
- ],
- "type": "ERC-20",
- "active": false,
- "currently_enabled": false
- },
- "GALA-BEP20": {
- "coin": "GALA-BEP20",
- "name": "Gala",
- "coinpaprika_id": "gala-gala",
- "coingecko_id": "gala",
- "nomics_id": "GALA",
- "nodes": [
- "http://bsc1.cipig.net:8655",
- "http://bsc2.cipig.net:8655",
- "http://bsc3.cipig.net:8655"
- ],
- "explorer_url": [
- "https://bscscan.com/"
- ],
- "type": "BEP-20",
- "active": false,
- "currently_enabled": false
- },
- "GLEEC": {
- "coin": "GLEEC",
- "name": "Gleec",
- "coinpaprika_id": "gleec-gleec-coin",
- "coingecko_id": "gleec-coin",
- "nomics_id": "GLEEC",
- "electrum": [
- {
- "url": "electrum1.cipig.net:10022",
- "ws_url": "electrum1.cipig.net:30022"
- },
- {
- "url": "electrum2.cipig.net:10022",
- "ws_url": "electrum2.cipig.net:30022"
- },
- {
- "url": "electrum3.cipig.net:10022",
- "ws_url": "electrum3.cipig.net:30022"
- }
- ],
- "explorer_url": [
- "https://gleec.explorer.dexstats.info/"
- ],
- "type": "Smart Chain",
- "active": false,
- "currently_enabled": false
- },
- "GM-BEP20": {
- "coin": "GM-BEP20",
- "name": "GM Wagmi",
- "nodes": [
- "http://bsc1.cipig.net:8655",
- "http://bsc2.cipig.net:8655",
- "http://bsc3.cipig.net:8655"
- ],
- "explorer_url": [
- "https://bscscan.com/"
- ],
- "type": "BEP-20",
- "active": false,
- "currently_enabled": false
- },
- "GMT-BEP20": {
- "coin": "GMT-BEP20",
- "name": "STEPN",
- "coinpaprika_id": "test-coin",
- "coingecko_id": "stepn",
- "nomics_id": "GMT7",
- "nodes": [
- "http://bsc1.cipig.net:8655",
- "http://bsc2.cipig.net:8655",
- "http://bsc3.cipig.net:8655"
- ],
- "explorer_url": [
- "https://bscscan.com/"
- ],
- "type": "BEP-20",
- "active": false,
- "currently_enabled": false
- },
- "GRMS": {
- "coin": "GRMS",
- "type": "Smart Chain",
- "name": "GRMS",
- "coingecko_id": "test-coin",
- "coinpaprika_id": "grms-grms",
- "nomics_id": "GRMS",
- "electrum": [
- {
- "url": "89.108.102.188:17485"
- },
- {
- "url": "31.31.199.13:17485"
- }
- ],
- "explorer_url": [
- "https://explorer.grms.pw/"
- ],
- "active": false,
- "currently_enabled": false
- },
- "GRS": {
- "coin": "GRS",
- "name": "Groestlcoin",
- "coinpaprika_id": "grs-groestlcoin",
- "coingecko_id": "groestlcoin",
- "nomics_id": "GRS",
- "electrum": [
- {
- "url": "electrum11.groestlcoin.org:50001",
- "ws_url": "electrum11.groestlcoin.org:50004"
- },
- {
- "url": "electrum12.groestlcoin.org:50001",
- "ws_url": "electrum12.groestlcoin.org:50004"
- },
- {
- "url": "electrum13.groestlcoin.org:50001",
- "ws_url": "electrum13.groestlcoin.org:50004"
- },
- {
- "url": "electrum14.groestlcoin.org:50001",
- "ws_url": "electrum14.groestlcoin.org:50004"
- }
- ],
- "explorer_url": [
- "https://chainz.cryptoid.info/grs/"
- ],
- "explorer_tx_url": "tx.dws?",
- "explorer_address_url": "address.dws?",
- "type": "UTXO",
- "active": false,
- "currently_enabled": false
- },
- "GRT-AVX20": {
- "coin": "GRT-AVX20",
- "name": "The Graph",
- "coinpaprika_id": "grt-the-graph",
- "coingecko_id": "the-graph",
- "nomics_id": "GRT",
- "nodes": [
- "https://api.avax.network/ext/bc/C/rpc"
- ],
- "explorer_url": [
- "https://snowtrace.io/"
- ],
- "type": "AVX-20",
- "active": false,
- "currently_enabled": false
- },
- "GRT-ERC20": {
- "coin": "GRT-ERC20",
- "name": "The Graph",
- "coinpaprika_id": "grt-the-graph",
- "coingecko_id": "the-graph",
- "nomics_id": "GRT",
- "nodes": [
- "http://eth1.cipig.net:8555",
- "http://eth2.cipig.net:8555",
- "http://eth3.cipig.net:8555"
- ],
- "explorer_url": [
- "https://etherscan.io/"
- ],
- "type": "ERC-20",
- "active": false,
- "currently_enabled": false
- },
- "GRT-KRC20": {
- "coin": "GRT-KRC20",
- "name": "The Graph",
- "coinpaprika_id": "grt-the-graph",
- "coingecko_id": "the-graph",
- "nomics_id": "GRT",
- "nodes": [
- "https://rpc-mainnet.kcc.network"
- ],
- "explorer_url": [
- "https://explorer.kcc.io/en/"
- ],
- "type": "KRC-20",
- "active": false,
- "currently_enabled": false
- },
- "GRT-PLG20": {
- "coin": "GRT-PLG20",
- "name": "The Graph",
- "coinpaprika_id": "grt-the-graph",
- "coingecko_id": "the-graph",
- "nomics_id": "GRT",
- "nodes": [
- "https://polygon-rpc.com",
- "https://poly-rpc.gateway.pokt.network",
- "https://matic-mainnet.chainstacklabs.com"
- ],
- "explorer_url": [
- "https://polygonscan.com/"
- ],
- "type": "Matic",
- "active": false,
- "currently_enabled": false
- },
- "GST-BEP20": {
- "coin": "GST-BEP20",
- "name": "Green Satoshi Token",
- "coinpaprika_id": "gst-gst",
- "coingecko_id": "green-satoshi-token",
- "nomics_id": "GST7",
- "nodes": [
- "http://bsc1.cipig.net:8655",
- "http://bsc2.cipig.net:8655",
- "http://bsc3.cipig.net:8655"
- ],
- "explorer_url": [
- "https://bscscan.com/"
- ],
- "type": "BEP-20",
- "active": false,
- "currently_enabled": false
- },
- "HODL": {
- "coin": "HODL",
- "name": "HODL",
- "coinpaprika_id": "test-coin",
- "coingecko_id": "test-coin",
- "electrum": [
- {
- "url": "electrum1.cipig.net:10009",
- "ws_url": "electrum1.cipig.net:30009"
- },
- {
- "url": "electrum2.cipig.net:10009",
- "ws_url": "electrum2.cipig.net:30009"
- },
- {
- "url": "electrum3.cipig.net:10009",
- "ws_url": "electrum3.cipig.net:30009"
- }
- ],
- "explorer_url": [
- "https://hodl.explorer.dexstats.info/"
- ],
- "type": "Smart Chain",
- "active": false,
- "currently_enabled": false
- },
- "INJ-BEP20": {
- "coin": "INJ-BEP20",
- "name": "Injective Protocol",
- "coinpaprika_id": "inj-injective-protocol",
- "coingecko_id": "injective-protocol",
- "nomics_id": "INJ",
- "nodes": [
- "http://bsc1.cipig.net:8655",
- "http://bsc2.cipig.net:8655",
- "http://bsc3.cipig.net:8655"
- ],
- "explorer_url": [
- "https://bscscan.com/"
- ],
- "type": "BEP-20",
- "active": false,
- "currently_enabled": false
- },
- "INJ-ERC20": {
- "coin": "INJ-ERC20",
- "name": "Injective Protocol",
- "coinpaprika_id": "inj-injective-protocol",
- "coingecko_id": "injective-protocol",
- "nomics_id": "INJ",
- "nodes": [
- "http://eth1.cipig.net:8555",
- "http://eth2.cipig.net:8555",
- "http://eth3.cipig.net:8555"
- ],
- "explorer_url": [
- "https://etherscan.io/"
- ],
- "type": "ERC-20",
- "active": false,
- "currently_enabled": false
- },
- "IOTA-BEP20": {
- "coin": "IOTA-BEP20",
- "name": "IOTA",
- "coinpaprika_id": "miota-iota",
- "coingecko_id": "iota",
- "nomics_id": "IOT",
- "nodes": [
- "http://bsc1.cipig.net:8655",
- "http://bsc2.cipig.net:8655",
- "http://bsc3.cipig.net:8655"
- ],
- "explorer_url": [
- "https://bscscan.com/"
- ],
- "type": "BEP-20",
- "active": false,
- "currently_enabled": false
- },
- "IOTX-BEP20": {
- "coin": "IOTX-BEP20",
- "name": "IoTeX",
- "coinpaprika_id": "iotx-iotex",
- "coingecko_id": "iotex",
- "nomics_id": "IOTX",
- "nodes": [
- "http://bsc1.cipig.net:8655",
- "http://bsc2.cipig.net:8655",
- "http://bsc3.cipig.net:8655"
- ],
- "explorer_url": [
- "https://bscscan.com/"
- ],
- "type": "BEP-20",
- "active": false,
- "currently_enabled": false
- },
- "IOTX-PLG20": {
- "coin": "IOTX-PLG20",
- "name": "IoTeX",
- "coinpaprika_id": "iotx-iotex",
- "coingecko_id": "iotex",
- "nomics_id": "IOTX",
- "nodes": [
- "https://polygon-rpc.com",
- "https://poly-rpc.gateway.pokt.network",
- "https://matic-mainnet.chainstacklabs.com"
- ],
- "explorer_url": [
- "https://polygonscan.com/"
- ],
- "type": "Matic",
- "active": false,
- "currently_enabled": false
- },
- "JCHF-ERC20": {
- "coin": "JCHF-ERC20",
- "name": "Jarvis Swiss Franc",
- "forex_id": "CHF",
- "coinpaprika_id": "test-coin",
- "coingecko_id": "jarvis-synthetic-swiss-franc",
- "nomics_id": "JCHF",
- "nodes": [
- "http://eth1.cipig.net:8555",
- "http://eth2.cipig.net:8555",
- "http://eth3.cipig.net:8555"
- ],
- "explorer_url": [
- "https://etherscan.io/"
- ],
- "type": "ERC-20",
- "active": false,
- "currently_enabled": false
- },
- "JCHF-PLG20": {
- "coin": "JCHF-PLG20",
- "name": "Jarvis Swiss Franc",
- "forex_id": "CHF",
- "coinpaprika_id": "test-coin",
- "coingecko_id": "jarvis-synthetic-swiss-franc",
- "nomics_id": "JCHF",
- "nodes": [
- "https://polygon-rpc.com",
- "https://poly-rpc.gateway.pokt.network",
- "https://matic-mainnet.chainstacklabs.com"
- ],
- "explorer_url": [
- "https://polygonscan.com/"
- ],
- "type": "Matic",
- "active": false,
- "currently_enabled": false
- },
- "JEUR-ERC20": {
- "coin": "JEUR-ERC20",
- "name": "Jarvis Euro",
- "forex_id": "EUR",
- "coinpaprika_id": "test-coin",
- "coingecko_id": "jarvis-synthetic-euro",
- "nomics_id": "JEUR",
- "nodes": [
- "http://eth1.cipig.net:8555",
- "http://eth2.cipig.net:8555",
- "http://eth3.cipig.net:8555"
- ],
- "explorer_url": [
- "https://etherscan.io/"
- ],
- "type": "ERC-20",
- "active": false,
- "currently_enabled": false
- },
- "JEUR-PLG20": {
- "coin": "JEUR-PLG20",
- "name": "Jarvis Euro",
- "forex_id": "EUR",
- "coinpaprika_id": "test-coin",
- "coingecko_id": "jarvis-synthetic-euro",
- "nomics_id": "JEUR",
- "nodes": [
- "https://polygon-rpc.com",
- "https://poly-rpc.gateway.pokt.network",
- "https://matic-mainnet.chainstacklabs.com"
- ],
- "explorer_url": [
- "https://polygonscan.com/"
- ],
- "type": "Matic",
- "active": false,
- "currently_enabled": false
- },
- "JGBP-ERC20": {
- "coin": "JGBP-ERC20",
- "name": "Jarvis British Pound",
- "forex_id": "GBP",
- "coinpaprika_id": "test-coin",
- "coingecko_id": "jarvis-synthetic-british-pound",
- "nomics_id": "JGBP",
- "nodes": [
- "http://eth1.cipig.net:8555",
- "http://eth2.cipig.net:8555",
- "http://eth3.cipig.net:8555"
- ],
- "explorer_url": [
- "https://etherscan.io/"
- ],
- "type": "ERC-20",
- "active": false,
- "currently_enabled": false
- },
- "JGBP-PLG20": {
- "coin": "JGBP-PLG20",
- "name": "Jarvis British Pound",
- "forex_id": "GBP",
- "coinpaprika_id": "test-coin",
- "coingecko_id": "jarvis-synthetic-british-pound",
- "nomics_id": "JGBP",
- "nodes": [
- "https://polygon-rpc.com",
- "https://poly-rpc.gateway.pokt.network",
- "https://matic-mainnet.chainstacklabs.com"
- ],
- "explorer_url": [
- "https://polygonscan.com/"
- ],
- "type": "Matic",
- "active": false,
- "currently_enabled": false
- },
- "JJPY-PLG20": {
- "coin": "JJPY-PLG20",
- "name": "Jarvis Japanese Yen",
- "forex_id": "JPY",
- "coinpaprika_id": "test-coin",
- "coingecko_id": "jarvis-synthetic-japanese-yen",
- "nomics_id": "JJPY",
- "nodes": [
- "https://polygon-rpc.com",
- "https://poly-rpc.gateway.pokt.network",
- "https://matic-mainnet.chainstacklabs.com"
- ],
- "explorer_url": [
- "https://polygonscan.com/"
- ],
- "type": "Matic",
- "active": false,
- "currently_enabled": false
- },
- "JPYC-AVX20": {
- "coin": "JPYC-AVX20",
- "name": "JPY Coin",
- "forex_id": "JPY",
- "coinpaprika_id": "fetch-ai",
- "coingecko_id": "jpy-coin",
- "nomics_id": "JPYC2",
- "nodes": [
- "https://api.avax.network/ext/bc/C/rpc"
- ],
- "explorer_url": [
- "https://cchain.explorer.avax.network/"
- ],
- "type": "AVX-20",
- "active": false,
- "currently_enabled": false
- },
- "JPYC-PLG20": {
- "coin": "JPYC-PLG20",
- "name": "JPY Coin",
- "forex_id": "JPY",
- "coinpaprika_id": "test-coin",
- "coingecko_id": "jpy-coin",
- "nomics_id": "JPYC2",
- "nodes": [
- "https://polygon-rpc.com",
- "https://poly-rpc.gateway.pokt.network",
- "https://matic-mainnet.chainstacklabs.com"
- ],
- "explorer_url": [
- "https://polygonscan.com/"
- ],
- "type": "Matic",
- "active": false,
- "currently_enabled": false
- },
- "JRT-ERC20": {
- "coin": "JRT-ERC20",
- "name": "Jarvis Reward Token",
- "coinpaprika_id": "jrt-jarvis-reward-token",
- "coingecko_id": "jarvis-reward-token",
- "nomics_id": "JRT",
- "nodes": [
- "http://eth1.cipig.net:8555",
- "http://eth2.cipig.net:8555",
- "http://eth3.cipig.net:8555"
- ],
- "explorer_url": [
- "https://etherscan.io/"
- ],
- "type": "ERC-20",
- "active": false,
- "currently_enabled": false
- },
- "JRT-PLG20": {
- "coin": "JRT-PLG20",
- "name": "Jarvis Reward Token",
- "coinpaprika_id": "jrt-jarvis-reward-token",
- "coingecko_id": "jarvis-reward-token",
- "nomics_id": "JRT",
- "nodes": [
- "https://polygon-rpc.com",
- "https://poly-rpc.gateway.pokt.network",
- "https://matic-mainnet.chainstacklabs.com"
- ],
- "explorer_url": [
- "https://polygonscan.com/"
- ],
- "type": "Matic",
- "active": false,
- "currently_enabled": false
- },
- "JSTR": {
- "coin": "JSTR",
- "name": "Ropsten test ERC20",
- "coinpaprika_id": "test-coin",
- "coingecko_id": "test-coin",
- "is_testnet": true,
- "nodes": [
- "https://ropsten.infura.io/v3/1d059a9aca7d49a3a380c71068bffb1c"
- ],
- "explorer_url": [
- "https://ropsten.etherscan.io/"
- ],
- "type": "ERC-20",
- "active": false,
- "currently_enabled": false
- },
- "JUMBLR": {
- "coin": "JUMBLR",
- "name": "JUMBLR",
- "type": "Smart Chain",
- "coingecko_id": "test-coin",
- "coinpaprika_id": "test-coin",
- "electrum": [
- {
- "url": "electrum1.cipig.net:10004",
- "ws_url": "electrum1.cipig.net:30004"
- },
- {
- "url": "electrum2.cipig.net:10004",
- "ws_url": "electrum2.cipig.net:30004"
- },
- {
- "url": "electrum3.cipig.net:10004",
- "ws_url": "electrum3.cipig.net:30004"
- }
- ],
- "explorer_url": [
- "https://jumblr.explorer.dexstats.info/"
- ],
- "active": false,
- "currently_enabled": false
- },
- "KNC-BEP20": {
- "coin": "KNC-BEP20",
- "name": "Kyber Network",
- "coinpaprika_id": "knc-kyber-network",
- "coingecko_id": "kyber-network-crystal",
- "nomics_id": "KNC3",
- "nodes": [
- "http://bsc1.cipig.net:8655",
- "http://bsc2.cipig.net:8655",
- "http://bsc3.cipig.net:8655"
- ],
- "explorer_url": [
- "https://bscscan.com/"
- ],
- "type": "BEP-20",
- "active": false,
- "currently_enabled": false
- },
- "KNC-ERC20": {
- "coin": "KNC-ERC20",
- "name": "Kyber Network",
- "coinpaprika_id": "knc-kyber-network",
- "coingecko_id": "kyber-network-crystal",
- "nomics_id": "KNC3",
- "nodes": [
- "http://eth1.cipig.net:8555",
- "http://eth2.cipig.net:8555",
- "http://eth3.cipig.net:8555"
- ],
- "explorer_url": [
- "https://etherscan.io/"
- ],
- "type": "ERC-20",
- "active": false,
- "currently_enabled": false
- },
- "KOIN": {
- "coin": "KOIN",
- "name": "Koinon",
- "coinpaprika_id": "koin-koinon",
- "coingecko_id": "koinon",
- "nomics_id": "KOIN",
- "electrum": [
- {
- "url": "electrum1.cipig.net:10024",
- "ws_url": "electrum1.cipig.net:30024"
- },
- {
- "url": "electrum2.cipig.net:10024",
- "ws_url": "electrum2.cipig.net:30024"
- },
- {
- "url": "electrum3.cipig.net:10024",
- "ws_url": "electrum3.cipig.net:30024"
- }
- ],
- "explorer_url": [
- "https://koin.explorer.dexstats.info/"
- ],
- "type": "Smart Chain",
- "active": false,
- "currently_enabled": false
- },
- "LBC": {
- "coin": "LBC",
- "name": "LBRY Credits",
- "coinpaprika_id": "lbc-lbry-credits",
- "coingecko_id": "lbry-credits",
- "nomics_id": "LBC",
- "electrum": [
- {
- "url": "electrum1.cipig.net:10067",
- "ws_url": "electrum1.cipig.net:30067"
- },
- {
- "url": "electrum2.cipig.net:10067",
- "ws_url": "electrum2.cipig.net:30067"
- },
- {
- "url": "electrum3.cipig.net:10067",
- "ws_url": "electrum3.cipig.net:30067"
- }
- ],
- "explorer_url": [
- "https://explorer.lbry.com/"
- ],
- "type": "UTXO",
- "active": false,
- "currently_enabled": false
- },
- "LCC": {
- "coin": "LCC",
- "name": "Litecoin Cash",
- "coinpaprika_id": "lcc-litecoin-cash",
- "coingecko_id": "litecoin-cash",
- "nomics_id": "LCC",
- "electrum": [
- {
- "url": "188.166.117.139:50001"
- }
- ],
- "explorer_url": [
- "https://chainz.cryptoid.info/lcc/"
- ],
- "explorer_tx_url": "tx.dws?",
- "explorer_address_url": "address.dws?",
- "type": "UTXO",
- "active": false,
- "currently_enabled": false
- },
- "LTC": {
- "active": true,
- "coin": "LTC",
- "coingecko_id": "litecoin",
- "coinpaprika_id": "ltc-litecoin",
- "nomics_id": "LTC",
- "currently_enabled": false,
- "electrum": [
- {
- "url": "electrum1.cipig.net:10063",
- "ws_url": "electrum1.cipig.net:30063"
- },
- {
- "url": "electrum2.cipig.net:10063",
- "ws_url": "electrum2.cipig.net:30063"
- },
- {
- "url": "electrum3.cipig.net:10063",
- "ws_url": "electrum3.cipig.net:30063"
- }
- ],
- "explorer_url": [
- "https://blockexplorer.one/litecoin/mainnet/"
- ],
- "type": "UTXO",
- "name": "Litecoin",
- "is_segwit_on": false
- },
- "LUNA-ERC20": {
- "coin": "LUNA-ERC20",
- "name": "Terra",
- "coinpaprika_id": "luna-terra",
- "coingecko_id": "terra-luna",
- "nodes": [
- "http://eth1.cipig.net:8555",
- "http://eth2.cipig.net:8555",
- "http://eth3.cipig.net:8555"
- ],
- "explorer_url": [
- "https://etherscan.io/"
- ],
- "type": "ERC-20",
- "active": false,
- "currently_enabled": false,
- "wallet_only": true
- },
- "LUNA-BEP20": {
- "coin": "LUNA-BEP20",
- "name": "Terra",
- "coinpaprika_id": "luna-terra",
- "coingecko_id": "terra-luna",
- "nodes": [
- "http://bsc1.cipig.net:8655",
- "http://bsc2.cipig.net:8655",
- "http://bsc3.cipig.net:8655"
- ],
- "explorer_url": [
- "https://bscscan.com/"
- ],
- "type": "BEP-20",
- "active": false,
- "currently_enabled": false,
- "wallet_only": true
- },
- "LUNA-HRC20": {
- "coin": "LUNA-HRC20",
- "name": "Terra",
- "coinpaprika_id": "luna-terra",
- "coingecko_id": "terra-luna",
- "nodes": [
- "https://api.harmony.one",
- "https://api.s0.t.hmny.io"
- ],
- "explorer_url": [
- "https://explorer.harmony.one/"
- ],
- "type": "HRC-20",
- "active": false,
- "currently_enabled": false,
- "wallet_only": true
- },
- "LUNA-PLG20": {
- "coin": "LUNA-PLG20",
- "name": "Terra",
- "coinpaprika_id": "luna-terra",
- "coingecko_id": "terra-luna",
- "nodes": [
- "https://polygon-rpc.com",
- "https://poly-rpc.gateway.pokt.network",
- "https://matic-mainnet.chainstacklabs.com"
- ],
- "explorer_url": [
- "https://polygonscan.com/"
- ],
- "type": "Matic",
- "active": false,
- "currently_enabled": false,
- "wallet_only": true
- },
- "LYNX": {
- "coin": "LYNX",
- "name": "Lynx",
- "coinpaprika_id": "lynx-lynx",
- "coingecko_id": "lynx",
- "nomics_id": "LYNX",
- "electrum": [
- {
- "url": "electrum5.getlynx.io:50002",
- "protocol": "SSL",
- "ws_url": "electrum5.getlynx.io:50004"
- },
- {
- "url": "electrum6.getlynx.io:50002",
- "protocol": "SSL",
- "ws_url": "electrum6.getlynx.io:50004"
- },
- {
- "url": "electrum7.getlynx.io:50002",
- "protocol": "SSL",
- "ws_url": "electrum7.getlynx.io:50004"
- },
- {
- "url": "electrum8.getlynx.io:50002",
- "protocol": "SSL",
- "ws_url": "electrum8.getlynx.io:50004"
- },
- {
- "url": "electrum9.getlynx.io:50002",
- "protocol": "SSL",
- "ws_url": "electrum9.getlynx.io:50004"
- }
- ],
- "explorer_url": [
- "https://chainz.cryptoid.info/lynx/"
- ],
- "explorer_tx_url": "tx.dws?",
- "explorer_address_url": "address.dws?",
- "type": "UTXO",
- "active": false,
- "currently_enabled": false
- },
- "LTFN": {
- "coin": "LTFN",
- "name": "Litecoin Finance",
- "coinpaprika_id": "test-coin",
- "coingecko_id": "litecoin-finance",
- "nomics_id": "LTFN",
- "electrum": [
- {
- "url": "eltfnx.scalaris.info:30001"
- },
- {
- "url": "eltfnx6.scalaris.info:30001"
- },
- {
- "url": "eltfnx7.scalaris.info:30001"
- }
- ],
- "explorer_url": [
- "https://openchains.info/coin/ltfn/"
- ],
- "type": "UTXO",
- "active": false,
- "currently_enabled": false
- },
- "MATICTEST": {
- "coin": "MATICTEST",
- "name": "Matic Testnet",
- "is_testnet": true,
- "coinpaprika_id": "test-coin",
- "coingecko_id": "test-coin",
- "nodes": [
- "https://rpc-mumbai.matic.today",
- "https://matic-mumbai.chainstacklabs.com",
- "https://rpc-mumbai.maticvigil.com"
- ],
- "explorer_url": [
- "https://mumbai.polygonscan.com/"
- ],
- "type": "Matic",
- "active": false,
- "currently_enabled": false
- },
- "MATIC": {
- "coin": "MATIC",
- "name": "Polygon",
- "coinpaprika_id": "matic-matic-network",
- "coingecko_id": "matic-network",
- "nomics_id": "MATIC",
- "nodes": [
- "https://polygon-rpc.com",
- "https://poly-rpc.gateway.pokt.network",
- "https://matic-mainnet.chainstacklabs.com"
- ],
- "explorer_url": [
- "https://polygonscan.com/"
- ],
- "type": "Matic",
- "active": false,
- "currently_enabled": false
- },
- "MATIC-BEP20": {
- "coin": "MATIC-BEP20",
- "name": "Polygon",
- "coinpaprika_id": "matic-matic-network",
- "coingecko_id": "matic-network",
- "nomics_id": "MATIC",
- "nodes": [
- "http://bsc1.cipig.net:8655",
- "http://bsc2.cipig.net:8655",
- "http://bsc3.cipig.net:8655"
- ],
- "explorer_url": [
- "https://bscscan.com/"
- ],
- "type": "BEP-20",
- "active": false,
- "currently_enabled": false
- },
- "MATIC-ERC20": {
- "coin": "MATIC-ERC20",
- "name": "Polygon",
- "coinpaprika_id": "matic-matic-network",
- "coingecko_id": "matic-network",
- "nomics_id": "MATIC",
- "nodes": [
- "http://eth1.cipig.net:8555",
- "http://eth2.cipig.net:8555",
- "http://eth3.cipig.net:8555"
- ],
- "explorer_url": [
- "https://etherscan.io/"
- ],
- "type": "ERC-20",
- "active": false,
- "currently_enabled": false
- },
- "MATIC-HCO20": {
- "coin": "MATIC-HCO20",
- "name": "Polygon",
- "coinpaprika_id": "matic-matic-network",
- "coingecko_id": "matic-network",
- "nomics_id": "MATIC",
- "nodes": [
- "https://http-mainnet.hecochain.com"
- ],
- "explorer_url": [
- "https://hecoinfo.com/"
- ],
- "type": "HecoChain",
- "active": false,
- "currently_enabled": false
- },
- "MATIC-HRC20": {
- "coin": "MATIC-HRC20",
- "name": "Polygon",
- "coinpaprika_id": "matic-matic-network",
- "coingecko_id": "matic-network",
- "nomics_id": "MATIC",
- "nodes": [
- "https://api.harmony.one",
- "https://api.s0.t.hmny.io"
- ],
- "explorer_url": [
- "https://explorer.harmony.one/"
- ],
- "type": "HRC-20",
- "active": false,
- "currently_enabled": false
- },
- "MATIC-KRC20": {
- "coin": "MATIC-KRC20",
- "name": "Polygon",
- "coinpaprika_id": "matic-matic-network",
- "coingecko_id": "matic-network",
- "nomics_id": "MATIC",
- "nodes": [
- "https://rpc-mainnet.kcc.network"
- ],
- "explorer_url": [
- "https://explorer.kcc.io/en/"
- ],
- "type": "KRC-20",
- "active": false,
- "currently_enabled": false
- },
- "MCL": {
- "coin": "MCL",
- "name": "Marmara Credit Loops",
- "coingecko_id": "test-coin",
- "coinpaprika_id": "mcl-marmara-credit-loops",
- "nomics_id": "MCL",
- "electrum": [
- {
- "url": "electrum1.cipig.net:10023",
- "ws_url": "electrum1.cipig.net:30023"
- },
- {
- "url": "electrum2.cipig.net:10023",
- "ws_url": "electrum2.cipig.net:30023"
- },
- {
- "url": "electrum3.cipig.net:10023",
- "ws_url": "electrum3.cipig.net:30023"
- }
- ],
- "explorer_url": [
- "http://explorer.marmara.io/"
- ],
- "type": "Smart Chain",
- "active": false,
- "currently_enabled": false
- },
- "GMS": {
- "coin": "GMS",
- "type": "Smart Chain",
- "name": "GMSmining",
- "coingecko_id": "test-coin",
- "coinpaprika_id": "test-coin",
- "electrum": [
- {
- "url": "electrum.gmsmining.pw:17485"
- },
- {
- "url": "electrum1.gmsmining.pw:17485"
- }
- ],
- "explorer_url": [
- "https://explorer.gmsmining.pw/"
- ],
- "active": false,
- "currently_enabled": false
- },
- "MIR-ERC20": {
- "coin": "MIR-ERC20",
- "name": "Mirror Protocol",
- "coinpaprika_id": "mir-mirror-protocol",
- "coingecko_id": "mirror-protocol",
- "nomics_id": "MIRROR",
- "nodes": [
- "http://eth1.cipig.net:8555",
- "http://eth2.cipig.net:8555",
- "http://eth3.cipig.net:8555"
- ],
- "explorer_url": [
- "https://etherscan.io/"
- ],
- "type": "ERC-20",
- "active": false,
- "currently_enabled": false
- },
- "MIR-BEP20": {
- "coin": "MIR-BEP20",
- "name": "Mirror Protocol",
- "coinpaprika_id": "mir-mirror-protocol",
- "coingecko_id": "mirror-protocol",
- "nomics_id": "MIRROR",
- "nodes": [
- "http://bsc1.cipig.net:8655",
- "http://bsc2.cipig.net:8655",
- "http://bsc3.cipig.net:8655"
- ],
- "explorer_url": [
- "https://bscscan.com/"
- ],
- "type": "BEP-20",
- "active": false,
- "currently_enabled": false
- },
- "MM-ERC20": {
- "coin": "MM-ERC20",
- "name": "Million",
- "coinpaprika_id": "mm-million",
- "coingecko_id": "million",
- "nomics_id": "MM4",
- "nodes": [
- "http://eth1.cipig.net:8555",
- "http://eth2.cipig.net:8555",
- "http://eth3.cipig.net:8555"
- ],
- "explorer_url": [
- "https://etherscan.io/"
- ],
- "type": "ERC-20",
- "active": false,
- "currently_enabled": false
- },
- "MM-AVX20": {
- "coin": "MM-AVX20",
- "name": "Million",
- "coinpaprika_id": "mm-million",
- "coingecko_id": "million",
- "nomics_id": "MM4",
- "nodes": [
- "https://api.avax.network/ext/bc/C/rpc"
- ],
- "explorer_url": [
- "https://snowtrace.io/"
- ],
- "type": "AVX-20",
- "active": false,
- "currently_enabled": false
- },
- "MM-BEP20": {
- "coin": "MM-BEP20",
- "name": "Million",
- "coinpaprika_id": "mm-million",
- "coingecko_id": "million",
- "nomics_id": "MM4",
- "nodes": [
- "http://bsc1.cipig.net:8655",
- "http://bsc2.cipig.net:8655",
- "http://bsc3.cipig.net:8655"
- ],
- "explorer_url": [
- "https://bscscan.com/"
- ],
- "type": "BEP-20",
- "active": false,
- "currently_enabled": false
- },
- "MM-MVR20": {
- "coin": "MM-MVR20",
- "name": "Million",
- "coinpaprika_id": "mm-million",
- "coingecko_id": "million",
- "nomics_id": "MM4",
- "nodes": [
- "https://rpc.api.moonriver.moonbeam.network"
- ],
- "explorer_url": [
- "https://moonriver.moonscan.io/"
- ],
- "type": "Moonriver",
- "active": false,
- "currently_enabled": false
- },
- "MM-PLG20": {
- "coin": "MM-PLG20",
- "name": "Million",
- "coinpaprika_id": "mm-million",
- "coingecko_id": "million",
- "nomics_id": "MM4",
- "nodes": [
- "https://polygon-rpc.com",
- "https://poly-rpc.gateway.pokt.network",
- "https://matic-mainnet.chainstacklabs.com"
- ],
- "explorer_url": [
- "https://polygonscan.com/"
- ],
- "type": "Matic",
- "active": false,
- "currently_enabled": false
- },
- "MSHARK": {
- "coin": "MSHARK",
- "name": "MiliShark",
- "coinpaprika_id": "test-coin",
- "coingecko_id": "test-coin",
- "electrum": [
- {
- "url": "electrum1.cipig.net:10013",
- "ws_url": "electrum1.cipig.net:30013"
- },
- {
- "url": "electrum2.cipig.net:10013",
- "ws_url": "electrum2.cipig.net:30013"
- },
- {
- "url": "electrum3.cipig.net:10013",
- "ws_url": "electrum3.cipig.net:30013"
- }
- ],
- "explorer_url": [
- "https://mshark.explorer.dexstats.info/"
- ],
- "type": "Smart Chain",
- "active": false,
- "currently_enabled": false
- },
- "NEAR-BEP20": {
- "coin": "NEAR-BEP20",
- "name": "NEAR Protocol",
- "coinpaprika_id": "near-near-protocol",
- "coingecko_id": "near",
- "nomics_id": "NEAR",
- "nodes": [
- "http://bsc1.cipig.net:8655",
- "http://bsc2.cipig.net:8655",
- "http://bsc3.cipig.net:8655"
- ],
- "explorer_url": [
- "https://bscscan.com/"
- ],
- "type": "BEP-20",
- "active": false,
- "currently_enabled": false
- },
- "OCEAN-BEP20": {
- "coin": "OCEAN-BEP20",
- "name": "Ocean Protocol",
- "coinpaprika_id": "ocean-ocean-protocol",
- "coingecko_id": "ocean-protocol",
- "nomics_id": "OCEAN",
- "nodes": [
- "http://bsc1.cipig.net:8655",
- "http://bsc2.cipig.net:8655",
- "http://bsc3.cipig.net:8655"
- ],
- "explorer_url": [
- "https://bscscan.com/"
- ],
- "type": "BEP-20",
- "active": false,
- "currently_enabled": false
- },
- "OCEAN-ERC20": {
- "coin": "OCEAN-ERC20",
- "name": "Ocean Protocol",
- "coinpaprika_id": "ocean-ocean-protocol",
- "coingecko_id": "ocean-protocol",
- "nomics_id": "OCEAN",
- "nodes": [
- "http://eth1.cipig.net:8555",
- "http://eth2.cipig.net:8555",
- "http://eth3.cipig.net:8555"
- ],
- "explorer_url": [
- "https://etherscan.io/"
- ],
- "type": "ERC-20",
- "active": false,
- "currently_enabled": false
- },
- "OCEAN-PLG20": {
- "coin": "OCEAN-PLG20",
- "name": "Ocean Protocol",
- "coinpaprika_id": "ocean-ocean-protocol",
- "coingecko_id": "ocean-protocol",
- "nomics_id": "OCEAN",
- "nodes": [
- "https://polygon-rpc.com",
- "https://poly-rpc.gateway.pokt.network",
- "https://matic-mainnet.chainstacklabs.com"
- ],
- "explorer_url": [
- "https://polygonscan.com/"
- ],
- "type": "Matic",
- "active": false,
- "currently_enabled": false
- },
- "ONE": {
- "active": false,
- "coin": "ONE",
- "coingecko_id": "harmony",
- "coinpaprika_id": "one-harmony",
- "nomics_id": "HARMONY",
- "currently_enabled": false,
- "nodes": [
- "https://api.harmony.one",
- "https://api.s0.t.hmny.io"
- ],
- "explorer_url": [
- "https://explorer.harmony.one/"
- ],
- "type": "HRC-20",
- "name": "Harmony"
- },
- "ONT-BEP20": {
- "coin": "ONT-BEP20",
- "name": "Ontology",
- "coinpaprika_id": "ont-ontology",
- "coingecko_id": "ontology",
- "nomics_id": "ONT",
- "nodes": [
- "http://bsc1.cipig.net:8655",
- "http://bsc2.cipig.net:8655",
- "http://bsc3.cipig.net:8655"
- ],
- "explorer_url": [
- "https://bscscan.com/"
- ],
- "type": "BEP-20",
- "active": false,
- "currently_enabled": false
- },
- "PAX-BEP20": {
- "coin": "PAX-BEP20",
- "name": "Paxos Standard",
- "coinpaprika_id": "pax-paxos-standard-token",
- "coingecko_id": "paxos-standard",
- "nomics_id": "PAX",
- "nodes": [
- "http://bsc1.cipig.net:8655",
- "http://bsc2.cipig.net:8655",
- "http://bsc3.cipig.net:8655"
- ],
- "explorer_url": [
- "https://bscscan.com/"
- ],
- "type": "BEP-20",
- "active": false,
- "currently_enabled": false
- },
- "PAX-ERC20": {
- "coin": "PAX-ERC20",
- "name": "Paxos Standard",
- "coinpaprika_id": "pax-paxos-standard-token",
- "coingecko_id": "paxos-standard",
- "nomics_id": "PAX",
- "nodes": [
- "http://eth1.cipig.net:8555",
- "http://eth2.cipig.net:8555",
- "http://eth3.cipig.net:8555"
- ],
- "explorer_url": [
- "https://etherscan.io/"
- ],
- "type": "ERC-20",
- "active": false,
- "currently_enabled": false
- },
- "PAX-KRC20": {
- "coin": "PAX-KRC20",
- "name": "Paxos Standard",
- "coinpaprika_id": "pax-paxos-standard-token",
- "coingecko_id": "paxos-standard",
- "nomics_id": "PAX",
- "nodes": [
- "https://rpc-mainnet.kcc.network"
- ],
- "explorer_url": [
- "https://explorer.kcc.io/en/"
- ],
- "type": "KRC-20",
- "active": false,
- "currently_enabled": false
- },
- "PAX-PLG20": {
- "coin": "PAX-PLG20",
- "name": "Paxos Standard",
- "coinpaprika_id": "pax-paxos-standard-token",
- "coingecko_id": "paxos-standard",
- "nomics_id": "PAX",
- "nodes": [
- "https://polygon-rpc.com",
- "https://poly-rpc.gateway.pokt.network",
- "https://matic-mainnet.chainstacklabs.com"
- ],
- "explorer_url": [
- "https://polygonscan.com/"
- ],
- "type": "Matic",
- "active": false,
- "currently_enabled": false
- },
- "PAXG-BEP20": {
- "coin": "PAXG-BEP20",
- "name": "PAX Gold",
- "coinpaprika_id": "paxg-pax-gold",
- "coingecko_id": "pax-gold",
- "nomics_id": "PAXG",
- "nodes": [
- "http://bsc1.cipig.net:8655",
- "http://bsc2.cipig.net:8655",
- "http://bsc3.cipig.net:8655"
- ],
- "explorer_url": [
- "https://bscscan.com/"
- ],
- "type": "BEP-20",
- "active": false,
- "currently_enabled": false
- },
- "PAXG-ERC20": {
- "coin": "PAXG-ERC20",
- "name": "PAX Gold",
- "coinpaprika_id": "paxg-pax-gold",
- "coingecko_id": "pax-gold",
- "nomics_id": "PAXG",
- "nodes": [
- "http://eth1.cipig.net:8555",
- "http://eth2.cipig.net:8555",
- "http://eth3.cipig.net:8555"
- ],
- "explorer_url": [
- "https://etherscan.io/"
- ],
- "type": "ERC-20",
- "active": false,
- "currently_enabled": false,
- "wallet_only": true
- },
- "PAXG-PLG20": {
- "coin": "PAXG-PLG20",
- "name": "PAX Gold",
- "coinpaprika_id": "paxg-pax-gold",
- "coingecko_id": "pax-gold",
- "nomics_id": "PAXG",
- "nodes": [
- "https://polygon-rpc.com",
- "https://poly-rpc.gateway.pokt.network",
- "https://matic-mainnet.chainstacklabs.com"
- ],
- "explorer_url": [
- "https://polygonscan.com/"
- ],
- "type": "Matic",
- "active": false,
- "currently_enabled": false
- },
- "KCS": {
- "active": false,
- "coin": "KCS",
- "coingecko_id": "kucoin-shares",
- "coinpaprika_id": "kcs-kucoin-token",
- "nomics_id": "KCS",
- "currently_enabled": false,
- "nodes": [
- "https://rpc-mainnet.kcc.network"
- ],
- "explorer_url": [
- "https://explorer.kcc.io/en/"
- ],
- "type": "KRC-20",
- "name": "KuCoin Token"
- },
- "MOVR": {
- "active": false,
- "coin": "MOVR",
- "coingecko_id": "moonriver",
- "coinpaprika_id": "movr-moonriver",
- "nomics_id": "MOVR",
- "currently_enabled": false,
- "nodes": [
- "https://rpc.api.moonriver.moonbeam.network"
- ],
- "explorer_url": [
- "https://moonriver.moonscan.io/"
- ],
- "type": "Moonriver",
- "name": "Moonriver"
- },
- "GLMR": {
- "active": false,
- "coin": "GLMR",
- "coingecko_id": "moonbeam",
- "coinpaprika_id": "glmr-moonbeam",
- "nomics_id": "GLMR",
- "currently_enabled": false,
- "nodes": [
- "https://rpc.api.moonbeam.network"
- ],
- "explorer_url": [
- "https://moonscan.io/"
- ],
- "type": "Moonbeam",
- "name": "Moonbeam"
- },
- "ETH": {
- "active": false,
- "coin": "ETH",
- "coingecko_id": "ethereum",
- "coinpaprika_id": "eth-ethereum",
- "nomics_id": "ETH",
- "currently_enabled": false,
- "nodes": [
- "http://eth1.cipig.net:8555",
- "http://eth2.cipig.net:8555",
- "http://eth3.cipig.net:8555"
- ],
- "explorer_url": [
- "https://etherscan.io/"
- ],
- "type": "ERC-20",
- "name": "Ethereum"
- },
- "ETH-BEP20": {
- "coin": "ETH-BEP20",
- "name": "Ethereum",
- "coinpaprika_id": "eth-ethereum",
- "coingecko_id": "ethereum",
- "nomics_id": "ETH",
- "nodes": [
- "http://bsc1.cipig.net:8655",
- "http://bsc2.cipig.net:8655",
- "http://bsc3.cipig.net:8655"
- ],
- "explorer_url": [
- "https://bscscan.com/"
- ],
- "type": "BEP-20",
- "active": false,
- "currently_enabled": false
- },
- "ETH-AVX20": {
- "coin": "ETH-AVX20",
- "name": "Ethereum",
- "coinpaprika_id": "eth-ethereum",
- "coingecko_id": "ethereum",
- "nomics_id": "ETH",
- "nodes": [
- "https://api.avax.network/ext/bc/C/rpc"
- ],
- "explorer_url": [
- "https://snowtrace.io/"
- ],
- "type": "AVX-20",
- "active": false,
- "currently_enabled": false
- },
- "ETH-FTM20": {
- "coin": "ETH-FTM20",
- "name": "Ethereum",
- "coinpaprika_id": "eth-ethereum",
- "coingecko_id": "ethereum",
- "nomics_id": "ETH",
- "nodes": [
- "https://rpc.ftm.tools/"
- ],
- "explorer_url": [
- "https://ftmscan.com/"
- ],
- "type": "FTM-20",
- "active": false,
- "currently_enabled": false
- },
- "ETH-HCO20": {
- "coin": "ETH-HCO20",
- "name": "Ethereum",
- "coinpaprika_id": "eth-ethereum",
- "coingecko_id": "ethereum",
- "nomics_id": "ETH",
- "nodes": [
- "https://http-mainnet.hecochain.com"
- ],
- "explorer_url": [
- "https://hecoinfo.com/"
- ],
- "type": "HecoChain",
- "active": false,
- "currently_enabled": false
- },
- "ETH-HRC20": {
- "coin": "ETH-HRC20",
- "name": "Ethereum",
- "coinpaprika_id": "eth-ethereum",
- "coingecko_id": "ethereum",
- "nomics_id": "ETH",
- "nodes": [
- "https://api.harmony.one",
- "https://api.s0.t.hmny.io"
- ],
- "explorer_url": [
- "https://explorer.harmony.one/"
- ],
- "type": "HRC-20",
- "active": false,
- "currently_enabled": false
- },
- "ETH-KRC20": {
- "coin": "ETH-KRC20",
- "name": "Ethereum",
- "coinpaprika_id": "eth-ethereum",
- "coingecko_id": "ethereum",
- "nomics_id": "ETH",
- "nodes": [
- "https://rpc-mainnet.kcc.network"
- ],
- "explorer_url": [
- "https://explorer.kcc.io/en/"
- ],
- "type": "KRC-20",
- "active": false,
- "currently_enabled": false
- },
- "ETH-PLG20": {
- "coin": "ETH-PLG20",
- "name": "Ethereum",
- "coinpaprika_id": "eth-ethereum",
- "coingecko_id": "ethereum",
- "nomics_id": "ETH",
- "nodes": [
- "https://polygon-rpc.com",
- "https://poly-rpc.gateway.pokt.network",
- "https://matic-mainnet.chainstacklabs.com"
- ],
- "explorer_url": [
- "https://polygonscan.com/"
- ],
- "type": "Matic",
- "active": false,
- "currently_enabled": false
- },
- "ETH-ARB20": {
- "active": false,
- "wallet_only": true,
- "coin": "ETH-ARB20",
- "coingecko_id": "ethereum",
- "coinpaprika_id": "eth-ethereum",
- "nomics_id": "ETH",
- "currently_enabled": false,
- "nodes": [
- "https://arb1.arbitrum.io/rpc"
- ],
- "explorer_url": [
- "https://arbiscan.io/"
- ],
- "type": "Arbitrum",
- "name": "Ethereum"
- },
- "ETHK-OPT20": {
- "active": false,
- "wallet_only": true,
- "coin": "ETHK-OPT20",
- "coingecko_id": "test-coin",
- "coinpaprika_id": "test-coin",
- "currently_enabled": false,
- "is_testnet": true,
- "nodes": [
- "https://kovan.optimism.io"
- ],
- "explorer_url": [
- "https://kovan-optimistic.etherscan.io/"
- ],
- "type": "Optimism",
- "name": "EthKovan Optimism (Testnet)"
- },
- "ETHR-ARB20": {
- "active": false,
- "wallet_only": true,
- "coin": "ETHR-ARB20",
- "coingecko_id": "test-coin",
- "coinpaprika_id": "test-coin",
- "currently_enabled": false,
- "is_testnet": true,
- "nodes": [
- "https://rinkeby.arbitrum.io/rpc"
- ],
- "explorer_url": [
- "https://rinkeby-explorer.arbitrum.io/#/"
- ],
- "type": "Arbitrum",
- "name": "EthRinkeby Arbitrum (Testnet)"
- },
- "ETHR": {
- "active": false,
- "coin": "ETHR",
- "coingecko_id": "test-coin",
- "coinpaprika_id": "test-coin",
- "currently_enabled": false,
- "is_testnet": true,
- "nodes": [
- "https://ropsten.infura.io/v3/1d059a9aca7d49a3a380c71068bffb1c"
- ],
- "explorer_url": [
- "https://ropsten.etherscan.io/"
- ],
- "type": "ERC-20",
- "name": "Ethereum Ropsten (Testnet)"
- },
- "UIS": {
- "coin": "UIS",
- "name": "Unitus",
- "coinpaprika_id": "uis-unitus",
- "coingecko_id": "unitus",
- "nomics_id": "UIS",
- "electrum": [
- {
- "url": "failover.trc-uis.ewmcx.biz:50002",
- "protocol": "SSL",
- "disable_cert_verification": true,
- "ws_url": "failover.trc-uis.ewmcx.biz:50003"
- },
- {
- "url": "electrumx.uis.ewmcx.info:50001",
- "ws_url": "electrumx.uis.ewmcx.info:50004"
- }
- ],
- "explorer_url": [
- "https://explorer.unitus.network/"
- ],
- "type": "UTXO",
- "active": false,
- "currently_enabled": false
- },
- "UNO": {
- "coin": "UNO",
- "name": "Unobtanium",
- "coinpaprika_id": "uno-unobtanium",
- "coingecko_id": "unobtanium",
- "nomics_id": "UNO",
- "electrum": [
- {
- "url": "uno-main.coinmunity.gold:50002",
- "protocol": "SSL",
- "disable_cert_verification": true,
- "ws_url": "uno-main.coinmunity.gold:50003"
- },
- {
- "url": "uno-bkp.coinmunity.gold:50002",
- "protocol": "SSL",
- "disable_cert_verification": true,
- "ws_url": "uno-bkp.coinmunity.gold:50003"
- }
- ],
- "explorer_url": [
- "https://chainz.cryptoid.info/uno/"
- ],
- "explorer_tx_url": "tx.dws?",
- "explorer_address_url": "address.dws?",
- "type": "UTXO",
- "active": false,
- "currently_enabled": false
- },
- "USDC-AVX20": {
- "coin": "USDC-AVX20",
- "name": "USD Coin",
- "coinpaprika_id": "usdc-usd-coin",
- "coingecko_id": "usd-coin",
- "nomics_id": "USDC",
- "nodes": [
- "https://api.avax.network/ext/bc/C/rpc"
- ],
- "explorer_url": [
- "https://snowtrace.io/"
- ],
- "type": "AVX-20",
- "active": false,
- "currently_enabled": false
- },
- "USDC-MVR20": {
- "coin": "USDC-MVR20",
- "name": "USD Coin",
- "coinpaprika_id": "usdc-usd-coin",
- "coingecko_id": "usd-coin",
- "nomics_id": "USDC",
- "nodes": [
- "https://rpc.api.moonriver.moonbeam.network"
- ],
- "explorer_url": [
- "https://moonriver.moonscan.io/"
- ],
- "type": "Moonriver",
- "active": false,
- "currently_enabled": false
- },
- "USDC-FTM20": {
- "coin": "USDC-FTM20",
- "name": "USD Coin",
- "coinpaprika_id": "usdc-usd-coin",
- "coingecko_id": "usd-coin",
- "nomics_id": "USDC",
- "nodes": [
- "https://rpc.ftm.tools/"
- ],
- "explorer_url": [
- "https://ftmscan.com/"
- ],
- "type": "FTM-20",
- "active": false,
- "currently_enabled": false
- },
- "USDC-BEP20": {
- "coin": "USDC-BEP20",
- "name": "USD Coin",
- "coinpaprika_id": "usdc-usd-coin",
- "coingecko_id": "usd-coin",
- "nomics_id": "USDC",
- "nodes": [
- "http://bsc1.cipig.net:8655",
- "http://bsc2.cipig.net:8655",
- "http://bsc3.cipig.net:8655"
- ],
- "explorer_url": [
- "https://bscscan.com/"
- ],
- "type": "BEP-20",
- "active": false,
- "currently_enabled": false
- },
- "USDC-ERC20": {
- "coin": "USDC-ERC20",
- "name": "USD Coin",
- "coinpaprika_id": "usdc-usd-coin",
- "coingecko_id": "usd-coin",
- "nomics_id": "USDC",
- "nodes": [
- "http://eth1.cipig.net:8555",
- "http://eth2.cipig.net:8555",
- "http://eth3.cipig.net:8555"
- ],
- "explorer_url": [
- "https://etherscan.io/"
- ],
- "type": "ERC-20",
- "active": false,
- "currently_enabled": false
- },
- "USDC-KRC20": {
- "coin": "USDC-KRC20",
- "name": "USD Coin",
- "coinpaprika_id": "usdc-usd-coin",
- "coingecko_id": "usd-coin",
- "nomics_id": "USDC",
- "nodes": [
- "https://rpc-mainnet.kcc.network"
- ],
- "explorer_url": [
- "https://explorer.kcc.io/en/"
- ],
- "type": "KRC-20",
- "active": false,
- "currently_enabled": false
- },
- "USDC-HCO20": {
- "coin": "USDC-HCO20",
- "name": "USD Coin",
- "coinpaprika_id": "usdc-usd-coin",
- "coingecko_id": "usd-coin",
- "nomics_id": "USDC",
- "nodes": [
- "https://http-mainnet.hecochain.com"
- ],
- "explorer_url": [
- "https://hecoinfo.com/"
- ],
- "type": "HecoChain",
- "active": false,
- "currently_enabled": false
- },
- "USDC-HRC20": {
- "coin": "USDC-HRC20",
- "name": "USD Coin",
- "coinpaprika_id": "usdc-usd-coin",
- "coingecko_id": "usd-coin",
- "nomics_id": "USDC",
- "nodes": [
- "https://api.harmony.one",
- "https://api.s0.t.hmny.io"
- ],
- "explorer_url": [
- "https://explorer.harmony.one/"
- ],
- "type": "HRC-20",
- "active": false,
- "currently_enabled": false
- },
- "USDC-PLG20": {
- "coin": "USDC-PLG20",
- "name": "USD Coin",
- "coinpaprika_id": "usdc-usd-coin",
- "coingecko_id": "usd-coin",
- "nomics_id": "USDC",
- "nodes": [
- "https://polygon-rpc.com",
- "https://poly-rpc.gateway.pokt.network",
- "https://matic-mainnet.chainstacklabs.com"
- ],
- "explorer_url": [
- "https://polygonscan.com/"
- ],
- "type": "Matic",
- "active": false,
- "currently_enabled": false
- },
- "USDI": {
- "coin": "USDI",
- "name": "USD Inflation Coin",
- "coinpaprika_id": "test-coin",
- "coingecko_id": "test-coin",
- "nomics_id": "USDI",
- "electrum": [
- {
- "url": "usdi1.blackcoin.nl:10002",
- "protocol": "SSL"
- },
- {
- "url": "usdi2.blackcoin.nl:20002",
- "protocol": "SSL"
- }
- ],
- "explorer_url": [
- "https://chainz.cryptoid.info/usdi/"
- ],
- "explorer_tx_url": "tx.dws?",
- "explorer_address_url": "address.dws?",
- "type": "UTXO",
- "active": false,
- "currently_enabled": false
- },
- "USDT-MVR20": {
- "coin": "USDT-MVR20",
- "name": "Tether",
- "coinpaprika_id": "usdt-tether",
- "coingecko_id": "tether",
- "nomics_id": "USDT",
- "nodes": [
- "https://rpc.api.moonriver.moonbeam.network"
- ],
- "explorer_url": [
- "https://moonriver.moonscan.io/"
- ],
- "type": "Moonriver",
- "active": false,
- "currently_enabled": false
- },
- "USDT-HCO20": {
- "coin": "USDT-HCO20",
- "name": "Tether",
- "coinpaprika_id": "usdt-tether",
- "coingecko_id": "tether",
- "nomics_id": "USDT",
- "nodes": [
- "https://http-mainnet.hecochain.com"
- ],
- "explorer_url": [
- "https://hecoinfo.com/"
- ],
- "type": "HecoChain",
- "active": false,
- "currently_enabled": false
- },
- "USDT-FTM20": {
- "coin": "USDT-FTM20",
- "name": "Tether",
- "coinpaprika_id": "usdt-tether",
- "coingecko_id": "tether",
- "nomics_id": "USDT",
- "nodes": [
- "https://rpc.ftm.tools/"
- ],
- "explorer_url": [
- "https://ftmscan.com/"
- ],
- "type": "FTM-20",
- "active": false,
- "currently_enabled": false
- },
- "USDT-KRC20": {
- "coin": "USDT-KRC20",
- "name": "Tether",
- "coinpaprika_id": "usdt-tether",
- "coingecko_id": "tether",
- "nomics_id": "USDT",
- "nodes": [
- "https://rpc-mainnet.kcc.network"
- ],
- "explorer_url": [
- "https://explorer.kcc.io/en/"
- ],
- "type": "KRC-20",
- "active": false,
- "currently_enabled": false
- },
- "USDT-ARB20": {
- "coin": "USDT-ARB20",
- "name": "Tether",
- "wallet_only": true,
- "coinpaprika_id": "usdt-tether",
- "coingecko_id": "tether",
- "nomics_id": "USDT",
- "nodes": [
- "https://arb1.arbitrum.io/rpc"
- ],
- "explorer_url": [
- "https://arbiscan.io/"
- ],
- "type": "Arbitrum",
- "active": false,
- "currently_enabled": false
- },
- "USDT-AVX20": {
- "coin": "USDT-AVX20",
- "name": "Tether",
- "coinpaprika_id": "usdt-tether",
- "coingecko_id": "tether",
- "nomics_id": "USDT",
- "nodes": [
- "https://api.avax.network/ext/bc/C/rpc"
- ],
- "explorer_url": [
- "https://snowtrace.io/"
- ],
- "type": "AVX-20",
- "active": false,
- "currently_enabled": false
- },
- "USDT-PLG20": {
- "coin": "USDT-PLG20",
- "name": "Tether",
- "coinpaprika_id": "usdt-tether",
- "coingecko_id": "tether",
- "nomics_id": "USDT",
- "nodes": [
- "https://polygon-rpc.com",
- "https://poly-rpc.gateway.pokt.network",
- "https://matic-mainnet.chainstacklabs.com"
- ],
- "explorer_url": [
- "https://polygonscan.com/"
- ],
- "type": "Matic",
- "active": false,
- "currently_enabled": false
- },
- "USDT-BEP20": {
- "coin": "USDT-BEP20",
- "name": "Tether",
- "coinpaprika_id": "usdt-tether",
- "coingecko_id": "tether",
- "nomics_id": "USDT",
- "nodes": [
- "http://bsc1.cipig.net:8655",
- "http://bsc2.cipig.net:8655",
- "http://bsc3.cipig.net:8655"
- ],
- "explorer_url": [
- "https://bscscan.com/"
- ],
- "type": "BEP-20",
- "active": false,
- "currently_enabled": false
- },
- "USDT-ERC20": {
- "coin": "USDT-ERC20",
- "name": "Tether",
- "coinpaprika_id": "usdt-tether",
- "coingecko_id": "tether",
- "nomics_id": "USDT",
- "nodes": [
- "http://eth1.cipig.net:8555",
- "http://eth2.cipig.net:8555",
- "http://eth3.cipig.net:8555"
- ],
- "explorer_url": [
- "https://etherscan.io/"
- ],
- "type": "ERC-20",
- "active": false,
- "currently_enabled": false,
- "wallet_only": true
- },
- "USDT-HRC20": {
- "coin": "USDT-HRC20",
- "name": "Tether",
- "coinpaprika_id": "usdt-tether",
- "coingecko_id": "tether",
- "nomics_id": "USDT",
- "nodes": [
- "https://api.harmony.one",
- "https://api.s0.t.hmny.io"
- ],
- "explorer_url": [
- "https://explorer.harmony.one/"
- ],
- "type": "HRC-20",
- "active": false,
- "currently_enabled": false
- },
- "AWC": {
- "active": false,
- "coin": "AWC",
- "coingecko_id": "atomic-wallet-coin",
- "coinpaprika_id": "awc-atomic-wallet-coin",
- "currently_enabled": false,
- "nodes": [
- "http://eth1.cipig.net:8555",
- "http://eth2.cipig.net:8555",
- "http://eth3.cipig.net:8555"
- ],
- "explorer_url": [
- "https://etherscan.io/"
- ],
- "type": "ERC-20",
- "name": "Atomic Wallet Coin"
- },
- "BAT-AVX20": {
- "coin": "BAT-AVX20",
- "name": "Basic Attention Token",
- "coinpaprika_id": "bat-basic-attention-token",
- "coingecko_id": "basic-attention-token",
- "nomics_id": "BAT",
- "nodes": [
- "https://api.avax.network/ext/bc/C/rpc"
- ],
- "explorer_url": [
- "https://snowtrace.io/"
- ],
- "type": "AVX-20",
- "active": false,
- "currently_enabled": false
- },
- "BAT-ERC20": {
- "coin": "BAT-ERC20",
- "name": "Basic Attention Token",
- "coinpaprika_id": "bat-basic-attention-token",
- "coingecko_id": "basic-attention-token",
- "nomics_id": "BAT",
- "nodes": [
- "http://eth1.cipig.net:8555",
- "http://eth2.cipig.net:8555",
- "http://eth3.cipig.net:8555"
- ],
- "explorer_url": [
- "https://etherscan.io/"
- ],
- "type": "ERC-20",
- "active": false,
- "currently_enabled": false
- },
- "BAT-BEP20": {
- "coin": "BAT-BEP20",
- "name": "Basic Attention Token",
- "coinpaprika_id": "bat-basic-attention-token",
- "coingecko_id": "basic-attention-token",
- "nomics_id": "BAT",
- "nodes": [
- "http://bsc1.cipig.net:8655",
- "http://bsc2.cipig.net:8655",
- "http://bsc3.cipig.net:8655"
- ],
- "explorer_url": [
- "https://bscscan.com/"
- ],
- "type": "BEP-20",
- "active": false,
- "currently_enabled": false
- },
- "BAT-KRC20": {
- "coin": "BAT-KRC20",
- "name": "Basic Attention Token",
- "coinpaprika_id": "bat-basic-attention-token",
- "coingecko_id": "basic-attention-token",
- "nomics_id": "BAT",
- "nodes": [
- "https://rpc-mainnet.kcc.network"
- ],
- "explorer_url": [
- "https://explorer.kcc.io/en/"
- ],
- "type": "KRC-20",
- "active": false,
- "currently_enabled": false
- },
- "BAT-PLG20": {
- "coin": "BAT-PLG20",
- "name": "Basic Attention Token",
- "coinpaprika_id": "bat-basic-attention-token",
- "coingecko_id": "basic-attention-token",
- "nomics_id": "BAT",
- "nodes": [
- "https://polygon-rpc.com",
- "https://poly-rpc.gateway.pokt.network",
- "https://matic-mainnet.chainstacklabs.com"
- ],
- "explorer_url": [
- "https://polygonscan.com/"
- ],
- "type": "Matic",
- "active": false,
- "currently_enabled": false
- },
- "KMD": {
- "coin": "KMD",
- "name": "Komodo",
- "type": "Smart Chain",
- "is_claimable": true,
- "minimal_claim_amount": "10",
- "coingecko_id": "komodo",
- "coinpaprika_id": "kmd-komodo",
- "nomics_id": "KMD",
- "electrum": [
- {
- "url": "electrum3.cipig.net:10001",
- "ws_url": "electrum3.cipig.net:30001"
- },
- {
- "url": "electrum2.cipig.net:10001",
- "ws_url": "electrum2.cipig.net:30001"
- },
- {
- "url": "electrum1.cipig.net:10001",
- "ws_url": "electrum1.cipig.net:30001"
- }
- ],
- "explorer_url": [
- "https://kmdexplorer.io/"
- ],
- "active": true,
- "currently_enabled": false
- },
- "KMD-BEP20": {
- "coin": "KMD-BEP20",
- "name": "Komodo",
- "coinpaprika_id": "kmd-komodo",
- "coingecko_id": "komodo",
- "nomics_id": "KMD",
- "nodes": [
- "http://bsc1.cipig.net:8655",
- "http://bsc2.cipig.net:8655",
- "http://bsc3.cipig.net:8655"
- ],
- "explorer_url": [
- "https://bscscan.com/"
- ],
- "type": "BEP-20",
- "active": false,
- "currently_enabled": false
- },
- "KSM-BEP20": {
- "coin": "KSM-BEP20",
- "name": "Kusama",
- "coinpaprika_id": "ksm-kusama",
- "coingecko_id": "kusama",
- "nomics_id": "KSM",
- "nodes": [
- "http://bsc1.cipig.net:8655",
- "http://bsc2.cipig.net:8655",
- "http://bsc3.cipig.net:8655"
- ],
- "explorer_url": [
- "https://bscscan.com/"
- ],
- "type": "BEP-20",
- "active": false,
- "currently_enabled": false
- },
- "LABS": {
- "coin": "LABS",
- "name": "Labs",
- "type": "Smart Chain",
- "coingecko_id": "test-coin",
- "coinpaprika_id": "test-coin",
- "electrum": [
- {
- "url": "electrum1.cipig.net:10019",
- "ws_url": "electrum1.cipig.net:30019"
- },
- {
- "url": "electrum2.cipig.net:10019",
- "ws_url": "electrum2.cipig.net:30019"
- },
- {
- "url": "electrum3.cipig.net:10019",
- "ws_url": "electrum3.cipig.net:30019"
- }
- ],
- "explorer_url": [
- "https://labs.explorer.dexstats.info/"
- ],
- "active": false,
- "currently_enabled": false
- },
- "LINK-AVX20": {
- "coin": "LINK-AVX20",
- "name": "Chainlink",
- "coinpaprika_id": "link-chainlink",
- "coingecko_id": "chainlink",
- "nomics_id": "LINK",
- "nodes": [
- "https://api.avax.network/ext/bc/C/rpc"
- ],
- "explorer_url": [
- "https://snowtrace.io/"
- ],
- "type": "AVX-20",
- "active": false,
- "currently_enabled": false
- },
- "LINK-BEP20": {
- "coin": "LINK-BEP20",
- "name": "Chainlink",
- "coinpaprika_id": "link-chainlink",
- "coingecko_id": "chainlink",
- "nomics_id": "LINK",
- "nodes": [
- "http://bsc1.cipig.net:8655",
- "http://bsc2.cipig.net:8655",
- "http://bsc3.cipig.net:8655"
- ],
- "explorer_url": [
- "https://bscscan.com/"
- ],
- "type": "BEP-20",
- "active": false,
- "currently_enabled": false
- },
- "LINK-ERC20": {
- "coin": "LINK-ERC20",
- "name": "Chainlink",
- "coinpaprika_id": "link-chainlink",
- "coingecko_id": "chainlink",
- "nomics_id": "LINK",
- "nodes": [
- "http://eth1.cipig.net:8555",
- "http://eth2.cipig.net:8555",
- "http://eth3.cipig.net:8555"
- ],
- "explorer_url": [
- "https://etherscan.io/"
- ],
- "type": "ERC-20",
- "active": false,
- "currently_enabled": false
- },
- "LINK-FTM20": {
- "coin": "LINK-FTM20",
- "name": "Chainlink",
- "coinpaprika_id": "link-chainlink",
- "coingecko_id": "chainlink",
- "nomics_id": "LINK",
- "nodes": [
- "https://rpc.ftm.tools/"
- ],
- "explorer_url": [
- "https://ftmscan.com/"
- ],
- "type": "FTM-20",
- "active": false,
- "currently_enabled": false
- },
- "LINK-HCO20": {
- "coin": "LINK-HCO20",
- "name": "Chainlink",
- "coinpaprika_id": "link-chainlink",
- "coingecko_id": "chainlink",
- "nomics_id": "LINK",
- "nodes": [
- "https://http-mainnet.hecochain.com"
- ],
- "explorer_url": [
- "https://hecoinfo.com/"
- ],
- "type": "HecoChain",
- "active": false,
- "currently_enabled": false
- },
- "LINK-HRC20": {
- "coin": "LINK-HRC20",
- "name": "Chainlink",
- "coinpaprika_id": "link-chainlink",
- "coingecko_id": "chainlink",
- "nomics_id": "LINK",
- "nodes": [
- "https://api.harmony.one",
- "https://api.s0.t.hmny.io"
- ],
- "explorer_url": [
- "https://explorer.harmony.one/"
- ],
- "type": "HRC-20",
- "active": false,
- "currently_enabled": false
- },
- "LINK-KRC20": {
- "coin": "LINK-KRC20",
- "name": "Chainlink",
- "coinpaprika_id": "link-chainlink",
- "coingecko_id": "chainlink",
- "nomics_id": "LINK",
- "nodes": [
- "https://rpc-mainnet.kcc.network"
- ],
- "explorer_url": [
- "https://explorer.kcc.io/en/"
- ],
- "type": "KRC-20",
- "active": false,
- "currently_enabled": false
- },
- "LINK-PLG20": {
- "coin": "LINK-PLG20",
- "name": "Chainlink",
- "coinpaprika_id": "link-chainlink",
- "coingecko_id": "chainlink",
- "nomics_id": "LINK",
- "nodes": [
- "https://polygon-rpc.com",
- "https://poly-rpc.gateway.pokt.network",
- "https://matic-mainnet.chainstacklabs.com"
- ],
- "explorer_url": [
- "https://polygonscan.com/"
- ],
- "type": "Matic",
- "active": false,
- "currently_enabled": false
- },
- "MESH": {
- "coin": "MESH",
- "name": "SuperMESH",
- "coinpaprika_id": "test-coin",
- "coingecko_id": "test-coin",
- "electrum": [
- {
- "url": "electrum1.cipig.net:10016",
- "ws_url": "electrum1.cipig.net:30016"
- },
- {
- "url": "electrum2.cipig.net:10016",
- "ws_url": "electrum2.cipig.net:30016"
- },
- {
- "url": "electrum3.cipig.net:10016",
- "ws_url": "electrum3.cipig.net:30016"
- }
- ],
- "explorer_url": [
- "https://mesh.kmdexplorer.io/"
- ],
- "type": "Smart Chain",
- "active": false,
- "currently_enabled": false
- },
- "MINDS": {
- "coin": "MINDS",
- "name": "Minds",
- "coinpaprika_id": "minds-minds",
- "coingecko_id": "minds",
- "nomics_id": "MINDS",
- "nodes": [
- "http://eth1.cipig.net:8555",
- "http://eth2.cipig.net:8555",
- "http://eth3.cipig.net:8555"
- ],
- "explorer_url": [
- "https://etherscan.io/"
- ],
- "type": "ERC-20",
- "active": false,
- "currently_enabled": false
- },
- "MGW": {
- "coin": "MGW",
- "name": "MGW",
- "type": "Smart Chain",
- "coingecko_id": "test-coin",
- "coinpaprika_id": "test-coin",
- "electrum": [
- {
- "url": "electrum1.cipig.net:10015",
- "ws_url": "electrum1.cipig.net:30015"
- },
- {
- "url": "electrum2.cipig.net:10015",
- "ws_url": "electrum2.cipig.net:30015"
- },
- {
- "url": "electrum3.cipig.net:10015",
- "ws_url": "electrum3.cipig.net:30015"
- }
- ],
- "explorer_url": [
- "https://mgw.explorer.dexstats.info/"
- ],
- "active": false,
- "currently_enabled": false
- },
- "DEX": {
- "coin": "DEX",
- "name": "Dex",
- "type": "Smart Chain",
- "coingecko_id": "test-coin",
- "coinpaprika_id": "test-coin",
- "electrum": [
- {
- "url": "electrum1.cipig.net:10006",
- "ws_url": "electrum1.cipig.net:30006"
- },
- {
- "url": "electrum2.cipig.net:10006",
- "ws_url": "electrum2.cipig.net:30006"
- },
- {
- "url": "electrum3.cipig.net:10006",
- "ws_url": "electrum3.cipig.net:30006"
- }
- ],
- "explorer_url": [
- "https://dex.explorer.dexstats.info/"
- ],
- "active": false,
- "currently_enabled": false
- },
- "RICK": {
- "coin": "RICK",
- "asset": "RICK",
- "type": "Smart Chain",
- "name": "Rick (TESTCOIN)",
- "coingecko_id": "test-coin",
- "coinpaprika_id": "test-coin",
- "electrum": [
- {
- "url": "electrum3.cipig.net:10017",
- "ws_url": "electrum3.cipig.net:30017"
- },
- {
- "url": "electrum2.cipig.net:10017",
- "ws_url": "electrum2.cipig.net:30017"
- },
- {
- "url": "electrum1.cipig.net:10017",
- "ws_url": "electrum1.cipig.net:30017"
- }
- ],
- "explorer_url": [
- "https://rick.explorer.dexstats.info/"
- ],
- "active": false,
- "currently_enabled": false
- },
- "MORTY": {
- "coin": "MORTY",
- "asset": "MORTY",
- "type": "Smart Chain",
- "name": "Morty (TESTCOIN)",
- "coingecko_id": "test-coin",
- "coinpaprika_id": "test-coin",
- "electrum": [
- {
- "url": "electrum3.cipig.net:10018",
- "ws_url": "electrum3.cipig.net:30018"
- },
- {
- "url": "electrum2.cipig.net:10018",
- "ws_url": "electrum2.cipig.net:30018"
- },
- {
- "url": "electrum1.cipig.net:10018",
- "ws_url": "electrum1.cipig.net:30018"
- }
- ],
- "explorer_url": [
- "https://morty.explorer.dexstats.info/"
- ],
- "active": false,
- "currently_enabled": false
- },
- "NYAN": {
- "coin": "NYAN",
- "name": "Nyancoin",
- "coinpaprika_id": "nyan-nyancoin",
- "coingecko_id": "test-coin",
- "nomics_id": "NYAN",
- "electrum": [
- {
- "url": "txserver.live:50022",
- "protocol": "SSL"
- },
- {
- "url": "txserver.live:50020",
- "protocol": "TCP"
- },
- {
- "url": "electrumx.live:50022",
- "protocol": "SSL"
- },
- {
- "url": "electrumx.live:50020",
- "protocol": "TCP"
- }
- ],
- "explorer_url": [
- "https://www.nyanchain.com/"
- ],
- "explorer_tx_url": "tx.nyan?",
- "explorer_address_url": "ad.nyan?",
- "type": "UTXO",
- "active": false,
- "currently_enabled": false
- },
- "PANGEA": {
- "coin": "PANGEA",
- "name": "Pangea",
- "type": "Smart Chain",
- "coingecko_id": "test-coin",
- "coinpaprika_id": "test-coin",
- "electrum": [
- {
- "url": "electrum1.cipig.net:10010",
- "ws_url": "electrum1.cipig.net:30010"
- },
- {
- "url": "electrum2.cipig.net:10010",
- "ws_url": "electrum2.cipig.net:30010"
- },
- {
- "url": "electrum3.cipig.net:10010",
- "ws_url": "electrum3.cipig.net:30010"
- }
- ],
- "explorer_url": [
- "https://pangea.explorer.dexstats.info/"
- ],
- "active": false,
- "currently_enabled": false
- },
- "PGX-PLG20": {
- "coin": "PGX-PLG20",
- "name": "Pegaxy Stone",
- "coinpaprika_id": "test-coin",
- "coingecko_id": "pegaxy-stone",
- "nomics_id": "PGX",
- "nodes": [
- "https://polygon-rpc.com",
- "https://poly-rpc.gateway.pokt.network",
- "https://matic-mainnet.chainstacklabs.com"
- ],
- "explorer_url": [
- "https://polygonscan.com/"
- ],
- "type": "Matic",
- "active": false,
- "currently_enabled": false
- },
- "PIC": {
- "coin": "PIC",
- "name": "Picacoin",
- "coinpaprika_id": "pic-picacoin",
- "coingecko_id": "test-coin",
- "nomics_id": "PIC3",
- "electrum": [
- {
- "url": "143.198.143.180:50001"
- },
- {
- "url": "134.122.120.47:50001"
- }
- ],
- "explorer_url": [
- "http://explorer.picacoin.org/"
- ],
- "type": "UTXO",
- "active": false,
- "currently_enabled": false
- },
- "PND": {
- "coin": "PND",
- "name": "Pandacoin",
- "coinpaprika_id": "pnd-pandacoin",
- "coingecko_id": "pandacoin",
- "nomics_id": "PND",
- "electrum": [
- {
- "url": "electrum.thepandacoin.net:50002",
- "protocol": "SSL",
- "disable_cert_verification": false
- }
- ],
- "explorer_url": [
- "https://chainz.cryptoid.info/pnd/"
- ],
- "explorer_tx_url": "tx.dws?",
- "explorer_address_url": "address.dws?",
- "type": "UTXO",
- "active": false,
- "currently_enabled": false
- },
- "PPC": {
- "coin": "PPC",
- "name": "Peercoin",
- "coinpaprika_id": "ppc-peercoin",
- "coingecko_id": "peercoin",
- "nomics_id": "PPC",
- "electrum": [
- {
- "url": "electrum.peercoinexplorer.net:50002",
- "protocol": "SSL",
- "disable_cert_verification": false,
- "ws_url": "electrum.peercoinexplorer.net:50004"
- },
- {
- "url": "allingas.peercoinexplorer.net:50002",
- "protocol": "SSL",
- "disable_cert_verification": false,
- "ws_url": "allingas.peercoinexplorer.net:50004"
- }
- ],
- "explorer_url": [
- "https://chainz.cryptoid.info/ppc/"
- ],
- "explorer_tx_url": "tx.dws?",
- "explorer_address_url": "address.dws?",
- "type": "UTXO",
- "active": false,
- "currently_enabled": false
- },
- "PPC-ERC20": {
- "coin": "PPC-ERC20",
- "name": "Peercoin",
- "coinpaprika_id": "ppc-peercoin",
- "coingecko_id": "peercoin",
- "nomics_id": "PPC",
- "nodes": [
- "http://eth1.cipig.net:8555",
- "http://eth2.cipig.net:8555",
- "http://eth3.cipig.net:8555"
- ],
- "explorer_url": [
- "https://etherscan.io/"
- ],
- "type": "ERC-20",
- "active": false,
- "currently_enabled": false
- },
- "PPC-PLG20": {
- "coin": "PPC-PLG20",
- "name": "Peercoin",
- "coinpaprika_id": "ppc-peercoin",
- "coingecko_id": "peercoin",
- "nomics_id": "PPC",
- "nodes": [
- "https://polygon-rpc.com",
- "https://poly-rpc.gateway.pokt.network",
- "https://matic-mainnet.chainstacklabs.com"
- ],
- "explorer_url": [
- "https://polygonscan.com/"
- ],
- "type": "Matic",
- "active": false,
- "currently_enabled": false
- },
- "PRUX": {
- "coin": "PRUX",
- "name": "PRUX",
- "coinpaprika_id": "prux-prux-coin",
- "coingecko_id": "test-coin",
- "nomics_id": "PRUX",
- "electrum": [
- {
- "url": "txserver.live:50002",
- "protocol": "SSL"
- },
- {
- "url": "electrumx.live:50012",
- "protocol": "SSL"
- },
- {
- "url": "txserver.live:50001",
- "protocol": "TCP"
- },
- {
- "url": "electrumx.live:50010",
- "protocol": "TCP"
- }
- ],
- "explorer_url": [
- "https://explorer.prux.info/"
- ],
- "type": "UTXO",
- "active": false,
- "currently_enabled": false
- },
- "QIAIR": {
- "coin": "QIAIR",
- "name": "Qi Airdrop Token",
- "coingecko_id": "test-coin",
- "coinpaprika_id": "test-coin",
- "active": false,
- "currently_enabled": false,
- "explorer_url": [
- "https://explorer.qtum.org/"
- ],
- "type": "QRC-20"
- },
- "QI": {
- "coin": "QI",
- "name": "QiSwap",
- "coingecko_id": "qiswap",
- "coinpaprika_id": "qi-qiswap",
- "nomics_id": "QI",
- "active": false,
- "currently_enabled": false,
- "explorer_url": [
- "https://explorer.qtum.org/"
- ],
- "type": "QRC-20"
- },
- "QNT-ERC20": {
- "coin": "QNT-ERC20",
- "name": "Quant",
- "coinpaprika_id": "qnt-quant",
- "coingecko_id": "quant-network",
- "nomics_id": "QNT",
- "nodes": [
- "http://eth1.cipig.net:8555",
- "http://eth2.cipig.net:8555",
- "http://eth3.cipig.net:8555"
- ],
- "explorer_url": [
- "https://etherscan.io/"
- ],
- "type": "ERC-20",
- "active": false,
- "currently_enabled": false
- },
- "QNT-KRC20": {
- "coin": "QNT-KRC20",
- "name": "Quant",
- "coinpaprika_id": "qnt-quant",
- "coingecko_id": "quant-network",
- "nomics_id": "QNT",
- "nodes": [
- "https://rpc-mainnet.kcc.network"
- ],
- "explorer_url": [
- "https://explorer.kcc.io/en/"
- ],
- "type": "KRC-20",
- "active": false,
- "currently_enabled": false
- },
- "REVS": {
- "coin": "REVS",
- "name": "REVS",
- "type": "Smart Chain",
- "coingecko_id": "test-coin",
- "coinpaprika_id": "test-coin",
- "electrum": [
- {
- "url": "electrum1.cipig.net:10003",
- "ws_url": "electrum1.cipig.net:30003"
- },
- {
- "url": "electrum2.cipig.net:10003",
- "ws_url": "electrum2.cipig.net:30003"
- },
- {
- "url": "electrum3.cipig.net:10003",
- "ws_url": "electrum3.cipig.net:30003"
- }
- ],
- "explorer_url": [
- "https://revs.explorer.dexstats.info/"
- ],
- "active": false,
- "currently_enabled": false
- },
- "SBCH": {
- "coin": "SBCH",
- "name": "SmartBCH",
- "alias_ticker": "BCH",
- "coinpaprika_id": "bch-bitcoin-cash",
- "coingecko_id": "bitcoin-cash",
- "nomics_id": "BCH",
- "nodes": [
- "https://smartbch.fountainhead.cash/mainnet"
- ],
- "explorer_url": [
- "https://www.smartscan.cash/"
- ],
- "type": "SmartBCH",
- "active": false,
- "currently_enabled": false
- },
- "SIBM-BEP20": {
- "coin": "SIBM-BEP20",
- "name": "SibMining",
- "coinpaprika_id": "test-coin",
- "coingecko_id": "test-coin",
- "nodes": [
- "http://bsc1.cipig.net:8655",
- "http://bsc2.cipig.net:8655",
- "http://bsc3.cipig.net:8655"
- ],
- "explorer_url": [
- "https://bscscan.com/"
- ],
- "type": "BEP-20",
- "active": false,
- "currently_enabled": false
- },
- "SMTF-v2": {
- "coin": "SMTF-v2",
- "name": "SmartFi",
- "coinpaprika_id": "smtf-smartfi",
- "coingecko_id": "smartfi",
- "nomics_id": "SMTF",
- "nodes": [
- "http://bsc1.cipig.net:8655",
- "http://bsc2.cipig.net:8655",
- "http://bsc3.cipig.net:8655"
- ],
- "explorer_url": [
- "https://bscscan.com/"
- ],
- "type": "BEP-20",
- "active": false,
- "currently_enabled": false
- },
- "SOULJA": {
- "coin": "SOULJA",
- "name": "SouljaCoin",
- "coinpaprika_id": "test-coin",
- "coingecko_id": "test-coin",
- "electrum": [
- {
- "url": "electrum1.cipig.net:10035",
- "ws_url": "electrum1.cipig.net:30035"
- },
- {
- "url": "electrum2.cipig.net:10035",
- "ws_url": "electrum2.cipig.net:30035"
- },
- {
- "url": "electrum3.cipig.net:10035",
- "ws_url": "electrum3.cipig.net:30035"
- }
- ],
- "explorer_url": [
- "https://explorer.souljacoin.cash/"
- ],
- "type": "Smart Chain",
- "active": false,
- "currently_enabled": false
- },
- "SXP-BEP20": {
- "coin": "SXP-BEP20",
- "name": "Swipe",
- "coinpaprika_id": "sxp-swipe",
- "coingecko_id": "swipe",
- "nomics_id": "SXP",
- "nodes": [
- "http://bsc1.cipig.net:8655",
- "http://bsc2.cipig.net:8655",
- "http://bsc3.cipig.net:8655"
- ],
- "explorer_url": [
- "https://bscscan.com/"
- ],
- "type": "BEP-20",
- "active": false,
- "currently_enabled": false
- },
- "SXP-ERC20": {
- "coin": "SXP-ERC20",
- "name": "Swipe",
- "coinpaprika_id": "sxp-swipe",
- "coingecko_id": "swipe",
- "nomics_id": "SXP",
- "nodes": [
- "http://eth1.cipig.net:8555",
- "http://eth2.cipig.net:8555",
- "http://eth3.cipig.net:8555"
- ],
- "explorer_url": [
- "https://etherscan.io/"
- ],
- "type": "ERC-20",
- "active": false,
- "currently_enabled": false
- },
- "SYS": {
- "coin": "SYS",
- "name": "Syscoin",
- "coinpaprika_id": "sys-syscoin",
- "coingecko_id": "syscoin",
- "nomics_id": "SYS",
- "electrum": [
- {
- "url": "electrum1.cipig.net:10064",
- "ws_url": "electrum1.cipig.net:30064"
- },
- {
- "url": "electrum2.cipig.net:10064",
- "ws_url": "electrum2.cipig.net:30064"
- },
- {
- "url": "electrum3.cipig.net:10064",
- "ws_url": "electrum3.cipig.net:30064"
- }
- ],
- "explorer_url": [
- "https://chainz.cryptoid.info/sys/"
- ],
- "explorer_tx_url": "tx.dws?",
- "explorer_address_url": "address.dws?",
- "type": "UTXO",
- "active": false,
- "currently_enabled": false
- },
- "WSB": {
- "coin": "WSB",
- "name": "WallStreetBets",
- "coinpaprika_id": "test-coin",
- "coingecko_id": "test-coin",
- "electrum": [
- {
- "url": "electrum1.cipig.net:10033",
- "ws_url": "electrum1.cipig.net:30033"
- },
- {
- "url": "electrum2.cipig.net:10033",
- "ws_url": "electrum2.cipig.net:30033"
- },
- {
- "url": "electrum3.cipig.net:10033",
- "ws_url": "electrum3.cipig.net:30033"
- }
- ],
- "explorer_url": [
- "https://wsb.explorer.dexstats.info/"
- ],
- "type": "Smart Chain",
- "active": false,
- "currently_enabled": false
- },
- "CHIPS": {
- "coin": "CHIPS",
- "type": "UTXO",
- "name": "Chips",
- "coingecko_id": "test-coin",
- "coinpaprika_id": "chips-chips",
- "nomics_id": "CHIPS6",
- "electrum": [
- {
- "url": "electrum3.cipig.net:10053",
- "ws_url": "electrum3.cipig.net:30053"
- },
- {
- "url": "electrum2.cipig.net:10053",
- "ws_url": "electrum2.cipig.net:30053"
- },
- {
- "url": "electrum1.cipig.net:10053",
- "ws_url": "electrum1.cipig.net:30053"
- }
- ],
- "explorer_url": [
- "https://explorer.chips.cash/"
- ],
- "active": false,
- "currently_enabled": false
- },
- "SCA": {
- "coin": "SCA",
- "name": "Scalaris",
- "type": "UTXO",
- "coingecko_id": "test-coin",
- "coinpaprika_id": "sca-scalaris",
- "nomics_id": "SCA2",
- "electrum": [
- {
- "url": "electrum1.scalaris.info:10001"
- },
- {
- "url": "electrum2.scalaris.info:10001"
- },
- {
- "url": "electrum3.scalaris.info:10001"
- }
- ],
- "explorer_url": [
- "https://explorer.scalaris.info/"
- ],
- "active": false,
- "currently_enabled": false
- },
- "SUPERNET": {
- "coin": "SUPERNET",
- "name": "Supernet",
- "type": "Smart Chain",
- "coingecko_id": "test-coin",
- "coinpaprika_id": "unity-supernet",
- "nomics_id": "UNITY",
- "electrum": [
- {
- "url": "electrum1.cipig.net:10005",
- "ws_url": "electrum1.cipig.net:30005"
- },
- {
- "url": "electrum2.cipig.net:10005",
- "ws_url": "electrum2.cipig.net:30005"
- },
- {
- "url": "electrum3.cipig.net:10005",
- "ws_url": "electrum3.cipig.net:30005"
- }
- ],
- "explorer_url": [
- "https://supernet.explorer.dexstats.info/"
- ],
- "active": false,
- "currently_enabled": false
- },
- "SUSHI-AVX20": {
- "coin": "SUSHI-AVX20",
- "name": "Sushi",
- "coinpaprika_id": "sushi-sushi",
- "coingecko_id": "sushi",
- "nomics_id": "SUSHI",
- "nodes": [
- "https://api.avax.network/ext/bc/C/rpc"
- ],
- "explorer_url": [
- "https://snowtrace.io/"
- ],
- "type": "AVX-20",
- "active": false,
- "currently_enabled": false
- },
- "SUSHI-BEP20": {
- "coin": "SUSHI-BEP20",
- "name": "Sushi",
- "coinpaprika_id": "sushi-sushi",
- "coingecko_id": "sushi",
- "nomics_id": "SUSHI",
- "nodes": [
- "http://bsc1.cipig.net:8655",
- "http://bsc2.cipig.net:8655",
- "http://bsc3.cipig.net:8655"
- ],
- "explorer_url": [
- "https://bscscan.com/"
- ],
- "type": "BEP-20",
- "active": false,
- "currently_enabled": false
- },
- "SUSHI-ERC20": {
- "coin": "SUSHI-ERC20",
- "name": "Sushi",
- "coinpaprika_id": "sushi-sushi",
- "coingecko_id": "sushi",
- "nomics_id": "SUSHI",
- "nodes": [
- "http://eth1.cipig.net:8555",
- "http://eth2.cipig.net:8555",
- "http://eth3.cipig.net:8555"
- ],
- "explorer_url": [
- "https://etherscan.io/"
- ],
- "type": "ERC-20",
- "active": false,
- "currently_enabled": false
- },
- "SUSHI-FTM20": {
- "coin": "SUSHI-FTM20",
- "name": "Sushi",
- "coinpaprika_id": "sushi-sushi",
- "coingecko_id": "sushi",
- "nomics_id": "SUSHI",
- "nodes": [
- "https://rpc.ftm.tools/"
- ],
- "explorer_url": [
- "https://ftmscan.com/"
- ],
- "type": "FTM-20",
- "active": false,
- "currently_enabled": false
- },
- "SUSHI-HRC20": {
- "coin": "SUSHI-HRC20",
- "name": "Sushi",
- "coinpaprika_id": "sushi-sushi",
- "coingecko_id": "sushi",
- "nomics_id": "SUSHI",
- "nodes": [
- "https://api.harmony.one",
- "https://api.s0.t.hmny.io"
- ],
- "explorer_url": [
- "https://explorer.harmony.one/"
- ],
- "type": "HRC-20",
- "active": false,
- "currently_enabled": false
- },
- "SUSHI-KRC20": {
- "coin": "SUSHI-KRC20",
- "name": "Sushi",
- "coinpaprika_id": "sushi-sushi",
- "coingecko_id": "sushi",
- "nomics_id": "SUSHI",
- "nodes": [
- "https://rpc-mainnet.kcc.network"
- ],
- "explorer_url": [
- "https://explorer.kcc.io/en/"
- ],
- "type": "KRC-20",
- "active": false,
- "currently_enabled": false
- },
- "SUSHI-MVR20": {
- "coin": "SUSHI-MVR20",
- "name": "Sushi",
- "coinpaprika_id": "sushi-sushi",
- "coingecko_id": "sushi",
- "nomics_id": "SUSHI",
- "nodes": [
- "https://rpc.api.moonriver.moonbeam.network"
- ],
- "explorer_url": [
- "https://moonriver.moonscan.io/"
- ],
- "type": "Moonriver",
- "active": false,
- "currently_enabled": false
- },
- "SUSHI-PLG20": {
- "coin": "SUSHI-PLG20",
- "name": "Sushi",
- "coinpaprika_id": "sushi-sushi",
- "coingecko_id": "sushi",
- "nomics_id": "SUSHI",
- "nodes": [
- "https://polygon-rpc.com",
- "https://poly-rpc.gateway.pokt.network",
- "https://matic-mainnet.chainstacklabs.com"
- ],
- "explorer_url": [
- "https://polygonscan.com/"
- ],
- "type": "Matic",
- "active": false,
- "currently_enabled": false
- },
- "VITE-BEP20": {
- "coin": "VITE-BEP20",
- "name": "Vite",
- "coinpaprika_id": "vite-vite",
- "coingecko_id": "vite",
- "nomics_id": "VITE",
- "nodes": [
- "http://bsc1.cipig.net:8655",
- "http://bsc2.cipig.net:8655",
- "http://bsc3.cipig.net:8655"
- ],
- "explorer_url": [
- "https://bscscan.com/"
- ],
- "type": "BEP-20",
- "active": false,
- "currently_enabled": false
- },
- "VRSC": {
- "coin": "VRSC",
- "type": "Smart Chain",
- "name": "Verus Coin",
- "coingecko_id": "verus-coin",
- "coinpaprika_id": "vrsc-verus-coin",
- "nomics_id": "VRSC",
- "electrum": [
- {
- "url": "el0.verus.io:17486",
- "protocol": "SSL",
- "disable_cert_verification": false,
- "ws_url": "el0.verus.io:17488"
- },
- {
- "url": "el1.verus.io:17486",
- "protocol": "SSL",
- "disable_cert_verification": false,
- "ws_url": "el1.verus.io:17488"
- },
- {
- "url": "el2.verus.io:17486",
- "protocol": "SSL",
- "disable_cert_verification": false,
- "ws_url": "el2.verus.io:17488"
- }
- ],
- "explorer_url": [
- "https://explorer.verus.io/"
- ],
- "active": false,
- "currently_enabled": false
- },
- "IL8P": {
- "coin": "IL8P",
- "name": "InfiniLooP",
- "coinpaprika_id": "il8p-infiniloop",
- "coingecko_id": "test-coin",
- "nomics_id": "IL8P",
- "electrum": [
- {
- "url": "il8p.electrumx.transcenders.name:50002",
- "protocol": "SSL",
- "disable_cert_verification": true,
- "ws_url": "il8p.electrumx.transcenders.name:50003"
- },
- {
- "url": "il9p.electrumx.transcenders.name:50002",
- "protocol": "SSL",
- "disable_cert_verification": true,
- "ws_url": "il9p.electrumx.transcenders.name:50003"
- }
- ],
- "explorer_url": [
- "https://chainz.cryptoid.info/il8p/"
- ],
- "explorer_tx_url": "tx.dws?",
- "explorer_address_url": "address.dws?",
- "type": "UTXO",
- "active": false,
- "currently_enabled": false
- },
- "ILN": {
- "coin": "ILN",
- "type": "Smart Chain",
- "name": "ilien",
- "coingecko_id": "test-coin",
- "coinpaprika_id": "test-coin",
- "nomics_id": "ILNPOS",
- "electrum": [
- {
- "url": "electrum1.ilien.io:65011",
- "ws_url": "electrum1.ilien.io:30069"
- },
- {
- "url": "electrum2.ilien.io:65011",
- "ws_url": "electrum2.ilien.io:30069"
- }
- ],
- "explorer_url": [
- "https://iln.explorer.dexstats.info/"
- ],
- "active": false,
- "currently_enabled": false
- },
- "ILN-BEP20": {
- "coin": "ILN-BEP20",
- "name": "ilien",
- "coinpaprika_id": "test-coin",
- "coingecko_id": "test-coin",
- "nomics_id": "ILNPOS",
- "nodes": [
- "http://bsc1.cipig.net:8655",
- "http://bsc2.cipig.net:8655",
- "http://bsc3.cipig.net:8655"
- ],
- "explorer_url": [
- "https://bscscan.com/"
- ],
- "type": "BEP-20",
- "active": false,
- "currently_enabled": false
- },
- "ILN-PLG20": {
- "coin": "ILN-PLG20",
- "name": "ilien",
- "coinpaprika_id": "test-coin",
- "coingecko_id": "test-coin",
- "nomics_id": "ILNPOS",
- "nodes": [
- "https://polygon-rpc.com",
- "https://poly-rpc.gateway.pokt.network",
- "https://matic-mainnet.chainstacklabs.com"
- ],
- "explorer_url": [
- "https://polygonscan.com/"
- ],
- "type": "Matic",
- "active": false,
- "currently_enabled": false
- },
- "MKR-AVX20": {
- "coin": "MKR-AVX20",
- "name": "Maker",
- "coinpaprika_id": "mkr-maker",
- "coingecko_id": "maker",
- "nomics_id": "MKR",
- "nodes": [
- "https://api.avax.network/ext/bc/C/rpc"
- ],
- "explorer_url": [
- "https://snowtrace.io/"
- ],
- "type": "AVX-20",
- "active": false,
- "currently_enabled": false
- },
- "MKR-BEP20": {
- "coin": "MKR-BEP20",
- "name": "Maker",
- "coinpaprika_id": "mkr-maker",
- "coingecko_id": "maker",
- "nomics_id": "MKR",
- "nodes": [
- "http://bsc1.cipig.net:8655",
- "http://bsc2.cipig.net:8655",
- "http://bsc3.cipig.net:8655"
- ],
- "explorer_url": [
- "https://bscscan.com/"
- ],
- "type": "BEP-20",
- "active": false,
- "currently_enabled": false
- },
- "MKR-ERC20": {
- "coin": "MKR-ERC20",
- "name": "Maker",
- "coinpaprika_id": "mkr-maker",
- "coingecko_id": "maker",
- "nomics_id": "MKR",
- "nodes": [
- "http://eth1.cipig.net:8555",
- "http://eth2.cipig.net:8555",
- "http://eth3.cipig.net:8555"
- ],
- "explorer_url": [
- "https://etherscan.io/"
- ],
- "type": "ERC-20",
- "active": false,
- "currently_enabled": false
- },
- "MKR-KRC20": {
- "coin": "MKR-KRC20",
- "name": "Maker",
- "coinpaprika_id": "mkr-maker",
- "coingecko_id": "maker",
- "nomics_id": "MKR",
- "nodes": [
- "https://rpc-mainnet.kcc.network"
- ],
- "explorer_url": [
- "https://explorer.kcc.io/en/"
- ],
- "type": "KRC-20",
- "active": false,
- "currently_enabled": false
- },
- "MONA": {
- "coin": "MONA",
- "name": "MonaCoin",
- "coinpaprika_id": "mona-monacoin",
- "coingecko_id": "monacoin",
- "nomics_id": "MONA",
- "electrum": [
- {
- "url": "electrumx3.monacoin.nl:50001"
- },
- {
- "url": "103.125.218.246:50001"
- },
- {
- "url": "electrumx.tamami-foundation.org:50001"
- }
- ],
- "explorer_url": [
- "https://blockbook.electrum-mona.org/"
- ],
- "type": "UTXO",
- "active": false,
- "currently_enabled": false
- },
- "NAV": {
- "coin": "NAV",
- "name": "NavCoin",
- "coinpaprika_id": "nav-navcoin",
- "coingecko_id": "nav-coin",
- "nomics_id": "NAV",
- "electrum": [
- {
- "url": "electrum.nav.community:40002",
- "protocol": "SSL",
- "ws_url": "electrum.nav.community:40004"
- },
- {
- "url": "electrum2.nav.community:40002",
- "protocol": "SSL",
- "ws_url": "electrum2.nav.community:40004"
- },
- {
- "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_url": [
- "https://www.navexplorer.com/"
- ],
- "type": "UTXO",
- "active": false,
- "currently_enabled": false
- },
- "NAV-BEP20": {
- "coin": "NAV-BEP20",
- "name": "Navcoin",
- "coinpaprika_id": "nav-navcoin",
- "coingecko_id": "nav-coin",
- "nomics_id": "NAV",
- "nodes": [
- "http://bsc1.cipig.net:8655",
- "http://bsc2.cipig.net:8655",
- "http://bsc3.cipig.net:8655"
- ],
- "explorer_url": [
- "https://bscscan.com/"
- ],
- "type": "BEP-20",
- "active": false,
- "currently_enabled": false
- },
- "NEXO-ERC20": {
- "coin": "NEXO-ERC20",
- "name": "Nexo",
- "coinpaprika_id": "nexo-nexo",
- "coingecko_id": "nexo",
- "nomics_id": "NEXO",
- "nodes": [
- "http://eth1.cipig.net:8555",
- "http://eth2.cipig.net:8555",
- "http://eth3.cipig.net:8555"
- ],
- "explorer_url": [
- "https://etherscan.io/"
- ],
- "type": "ERC-20",
- "active": false,
- "currently_enabled": false
- },
- "NEXO-KRC20": {
- "coin": "NEXO-KRC20",
- "name": "Nexo",
- "coinpaprika_id": "nexo-nexo",
- "coingecko_id": "nexo",
- "nomics_id": "NEXO",
- "nodes": [
- "https://rpc-mainnet.kcc.network"
- ],
- "explorer_url": [
- "https://explorer.kcc.io/en/"
- ],
- "type": "KRC-20",
- "active": false,
- "currently_enabled": false
- },
- "NEXO-PLG20": {
- "coin": "NEXO-PLG20",
- "name": "Nexo",
- "coinpaprika_id": "nexo-nexo",
- "coingecko_id": "nexo",
- "nomics_id": "NEXO",
- "nodes": [
- "https://polygon-rpc.com",
- "https://poly-rpc.gateway.pokt.network",
- "https://matic-mainnet.chainstacklabs.com"
- ],
- "explorer_url": [
- "https://polygonscan.com/"
- ],
- "type": "Matic",
- "active": false,
- "currently_enabled": false
- },
- "NMC": {
- "coin": "NMC",
- "name": "Namecoin",
- "coinpaprika_id": "nmc-namecoin",
- "coingecko_id": "namecoin",
- "nomics_id": "NMC",
- "electrum": [
- {
- "url": "nmc.bitcoins.sk:50002",
- "protocol": "SSL",
- "disable_cert_verification": true
- },
- {
- "url": "nmc2.bitcoins.sk:57002",
- "protocol": "SSL",
- "disable_cert_verification": true
- },
- {
- "url": "46.229.238.187:57001"
- }
- ],
- "explorer_url": [
- "https://nmc.tokenview.com/en/"
- ],
- "type": "UTXO",
- "active": false,
- "currently_enabled": false
- },
- "NVC": {
- "coin": "NVC",
- "name": "Novacoin",
- "coinpaprika_id": "nvc-novacoin",
- "coingecko_id": "novacoin",
- "nomics_id": "NVC",
- "electrum": [
- {
- "url": "electrumx.nvc.ewmcx.org:50002",
- "protocol": "SSL",
- "disable_cert_verification": true
- },
- {
- "url": "failover.nvc.ewmcx.biz:50002",
- "protocol": "SSL",
- "disable_cert_verification": true
- }
- ],
- "explorer_url": [
- "https://explorer.novaco.in/"
- ],
- "type": "UTXO",
- "active": false,
- "currently_enabled": false,
- "wallet_only": true
- },
- "NVC-BEP20": {
- "coin": "NVC-BEP20",
- "name": "Novacoin",
- "coinpaprika_id": "nvc-novacoin",
- "coingecko_id": "novacoin",
- "nomics_id": "NVC",
- "nodes": [
- "http://bsc1.cipig.net:8655",
- "http://bsc2.cipig.net:8655",
- "http://bsc3.cipig.net:8655"
- ],
- "explorer_url": [
- "https://bscscan.com/"
- ],
- "type": "BEP-20",
- "active": false,
- "currently_enabled": false
- },
- "NVC-QRC20": {
- "coin": "NVC-QRC20",
- "name": "Novacoin",
- "coinpaprika_id": "nvc-novacoin",
- "coingecko_id": "novacoin",
- "nomics_id": "NVC",
- "explorer_url": [
- "https://explorer.qtum.org/"
- ],
- "type": "QRC-20",
- "active": false,
- "currently_enabled": false
- },
- "NZDS-ERC20": {
- "coin": "NZDS-ERC20",
- "name": "NZD Stablecoin",
- "forex_id": "NZD",
- "coinpaprika_id": "test-coin",
- "coingecko_id": "nzd-stablecoin",
- "nomics_id": "NZDS",
- "nodes": [
- "http://eth1.cipig.net:8555",
- "http://eth2.cipig.net:8555",
- "http://eth3.cipig.net:8555"
- ],
- "explorer_url": [
- "https://etherscan.io/"
- ],
- "type": "ERC-20",
- "active": false,
- "currently_enabled": false
- },
- "NZDS-PLG20": {
- "coin": "NZDS-PLG20",
- "name": "NZD Stablecoin",
- "forex_id": "NZD",
- "coinpaprika_id": "test-coin",
- "coingecko_id": "nzd-stablecoin",
- "nomics_id": "NZDS",
- "nodes": [
- "https://polygon-rpc.com",
- "https://poly-rpc.gateway.pokt.network",
- "https://matic-mainnet.chainstacklabs.com"
- ],
- "explorer_url": [
- "https://polygonscan.com/"
- ],
- "type": "Matic",
- "active": false,
- "currently_enabled": false
- },
- "OMG-ERC20": {
- "coin": "OMG-ERC20",
- "name": "OMG Network",
- "coinpaprika_id": "omg-omg-network",
- "coingecko_id": "omisego",
- "nomics_id": "OMG",
- "nodes": [
- "http://eth1.cipig.net:8555",
- "http://eth2.cipig.net:8555",
- "http://eth3.cipig.net:8555"
- ],
- "explorer_url": [
- "https://etherscan.io/"
- ],
- "type": "ERC-20",
- "active": false,
- "currently_enabled": false
- },
- "OMG-PLG20": {
- "coin": "OMG-PLG20",
- "name": "OMG Network",
- "coinpaprika_id": "omg-omg-network",
- "coingecko_id": "omisego",
- "nomics_id": "OMG",
- "nodes": [
- "https://polygon-rpc.com",
- "https://poly-rpc.gateway.pokt.network",
- "https://matic-mainnet.chainstacklabs.com"
- ],
- "explorer_url": [
- "https://polygonscan.com/"
- ],
- "type": "Matic",
- "active": false,
- "currently_enabled": false
- },
- "QKC-BEP20": {
- "coin": "QKC-BEP20",
- "name": "QuarkChain",
- "coinpaprika_id": "qkc-quarkchain",
- "coingecko_id": "quark-chain",
- "nomics_id": "QKC",
- "nodes": [
- "http://bsc1.cipig.net:8655",
- "http://bsc2.cipig.net:8655",
- "http://bsc3.cipig.net:8655"
- ],
- "explorer_url": [
- "https://bscscan.com/"
- ],
- "type": "BEP-20",
- "active": false,
- "currently_enabled": false
- },
- "QKC-ERC20": {
- "coin": "QKC-ERC20",
- "name": "QuarkChain",
- "coinpaprika_id": "qkc-quarkchain",
- "coingecko_id": "quark-chain",
- "nomics_id": "QKC",
- "nodes": [
- "http://eth1.cipig.net:8555",
- "http://eth2.cipig.net:8555",
- "http://eth3.cipig.net:8555"
- ],
- "explorer_url": [
- "https://etherscan.io/"
- ],
- "type": "ERC-20",
- "active": false,
- "currently_enabled": false
- },
- "QTUM": {
- "need_electrum": true,
- "coin": "QTUM",
- "name": "Qtum",
- "coinpaprika_id": "qtum-qtum",
- "coingecko_id": "qtum",
- "nomics_id": "QTUM",
- "electrum": [
- {
- "url": "electrum1.cipig.net:10050",
- "ws_url": "electrum1.cipig.net:30050"
- },
- {
- "url": "electrum2.cipig.net:10050",
- "ws_url": "electrum2.cipig.net:30050"
- },
- {
- "url": "electrum3.cipig.net:10050",
- "ws_url": "electrum3.cipig.net:30050"
- }
- ],
- "explorer_url": [
- "https://explorer.qtum.org/"
- ],
- "type": "QRC-20",
- "active": false,
- "currently_enabled": false
- },
- "QTUM-ERC20": {
- "coin": "QTUM-ERC20",
- "name": "Qtum",
- "coinpaprika_id": "qtum-qtum",
- "coingecko_id": "qtum",
- "nomics_id": "QTUM",
- "nodes": [
- "http://eth1.cipig.net:8555",
- "http://eth2.cipig.net:8555",
- "http://eth3.cipig.net:8555"
- ],
- "explorer_url": [
- "https://etherscan.io/"
- ],
- "type": "ERC-20",
- "active": false,
- "currently_enabled": false
- },
- "REN-ERC20": {
- "coin": "REN-ERC20",
- "name": "Ren",
- "coinpaprika_id": "ren-republic-protocol",
- "coingecko_id": "republic-protocol",
- "nomics_id": "REN",
- "nodes": [
- "http://eth1.cipig.net:8555",
- "http://eth2.cipig.net:8555",
- "http://eth3.cipig.net:8555"
- ],
- "explorer_url": [
- "https://etherscan.io/"
- ],
- "type": "ERC-20",
- "active": false,
- "currently_enabled": false
- },
- "REN-HRC20": {
- "coin": "REN-HRC20",
- "name": "Ren",
- "coinpaprika_id": "ren-republic-protocol",
- "coingecko_id": "republic-protocol",
- "nomics_id": "REN",
- "nodes": [
- "https://api.harmony.one",
- "https://api.s0.t.hmny.io"
- ],
- "explorer_url": [
- "https://explorer.harmony.one/"
- ],
- "type": "HRC-20",
- "active": false,
- "currently_enabled": false
- },
- "REN-HCO20": {
- "coin": "REN-HCO20",
- "name": "Ren",
- "coinpaprika_id": "ren-republic-protocol",
- "coingecko_id": "republic-protocol",
- "nomics_id": "REN",
- "nodes": [
- "https://http-mainnet.hecochain.com"
- ],
- "explorer_url": [
- "https://hecoinfo.com/"
- ],
- "type": "HecoChain",
- "active": false,
- "currently_enabled": false
- },
- "RSR-ERC20": {
- "coin": "RSR-ERC20",
- "name": "Reserve Rights",
- "coinpaprika_id": "rsr-reserve-rights",
- "coingecko_id": "reserve-rights-token",
- "nomics_id": "RSR",
- "nodes": [
- "http://eth1.cipig.net:8555",
- "http://eth2.cipig.net:8555",
- "http://eth3.cipig.net:8555"
- ],
- "explorer_url": [
- "https://etherscan.io/"
- ],
- "type": "ERC-20",
- "active": false,
- "currently_enabled": false
- },
- "RTM": {
- "coin": "RTM",
- "name": "Raptoreum",
- "coinpaprika_id": "rtm-raptoreum",
- "coingecko_id": "raptoreum",
- "nomics_id": "RTM",
- "electrum": [
- {
- "url": "209.151.151.21:50001",
- "protocol": "TCP"
- },
- {
- "url": "209.50.52.239:50001",
- "protocol": "TCP"
- }
- ],
- "explorer_url": [
- "https://explorer.raptoreum.com/"
- ],
- "type": "UTXO",
- "active": false,
- "currently_enabled": false
- },
- "RVN": {
- "coin": "RVN",
- "name": "Ravencoin",
- "coinpaprika_id": "rvn-ravencoin",
- "coingecko_id": "ravencoin",
- "nomics_id": "RVN",
- "electrum": [
- {
- "url": "electrum1.cipig.net:10051",
- "ws_url": "electrum1.cipig.net:30051"
- },
- {
- "url": "electrum2.cipig.net:10051",
- "ws_url": "electrum2.cipig.net:30051"
- },
- {
- "url": "electrum3.cipig.net:10051",
- "ws_url": "electrum3.cipig.net:30051"
- }
- ],
- "explorer_url": [
- "https://ravencoin.network/"
- ],
- "type": "UTXO",
- "active": false,
- "currently_enabled": false
- },
- "SAND-ERC20": {
- "coin": "SAND-ERC20",
- "name": "The Sandbox",
- "coinpaprika_id": "sand-the-sandbox",
- "coingecko_id": "the-sandbox",
- "nomics_id": "SAND2",
- "nodes": [
- "http://eth1.cipig.net:8555",
- "http://eth2.cipig.net:8555",
- "http://eth3.cipig.net:8555"
- ],
- "explorer_url": [
- "https://etherscan.io/"
- ],
- "type": "ERC-20",
- "active": false,
- "currently_enabled": false
- },
- "SAND-BEP20": {
- "coin": "SAND-BEP20",
- "name": "The Sandbox",
- "coinpaprika_id": "sand-the-sandbox",
- "coingecko_id": "the-sandbox",
- "nomics_id": "SAND2",
- "nodes": [
- "http://bsc1.cipig.net:8655",
- "http://bsc2.cipig.net:8655",
- "http://bsc3.cipig.net:8655"
- ],
- "explorer_url": [
- "https://bscscan.com/"
- ],
- "type": "BEP-20",
- "active": false,
- "currently_enabled": false
- },
- "SAND-PLG20": {
- "coin": "SAND-PLG20",
- "name": "The Sandbox",
- "coinpaprika_id": "sand-the-sandbox",
- "coingecko_id": "the-sandbox",
- "nomics_id": "SAND2",
- "nodes": [
- "https://polygon-rpc.com",
- "https://poly-rpc.gateway.pokt.network",
- "https://matic-mainnet.chainstacklabs.com"
- ],
- "explorer_url": [
- "https://polygonscan.com/"
- ],
- "type": "Matic",
- "active": false,
- "currently_enabled": false
- },
- "SNX-AVX20": {
- "coin": "SNX-AVX20",
- "name": "Synthetix",
- "coinpaprika_id": "snx-synthetix-network-token",
- "coingecko_id": "havven",
- "nomics_id": "SNX",
- "nodes": [
- "https://api.avax.network/ext/bc/C/rpc"
- ],
- "explorer_url": [
- "https://snowtrace.io/"
- ],
- "type": "AVX-20",
- "active": false,
- "currently_enabled": false
- },
- "SNX-BEP20": {
- "coin": "SNX-BEP20",
- "name": "Synthetix",
- "coinpaprika_id": "snx-synthetix-network-token",
- "coingecko_id": "havven",
- "nomics_id": "SNX",
- "nodes": [
- "http://bsc1.cipig.net:8655",
- "http://bsc2.cipig.net:8655",
- "http://bsc3.cipig.net:8655"
- ],
- "explorer_url": [
- "https://bscscan.com/"
- ],
- "type": "BEP-20",
- "active": false,
- "currently_enabled": false
- },
- "SNX-ERC20": {
- "coin": "SNX-ERC20",
- "name": "Synthetix",
- "coinpaprika_id": "snx-synthetix-network-token",
- "coingecko_id": "havven",
- "nomics_id": "SNX",
- "nodes": [
- "http://eth1.cipig.net:8555",
- "http://eth2.cipig.net:8555",
- "http://eth3.cipig.net:8555"
- ],
- "explorer_url": [
- "https://etherscan.io/"
- ],
- "type": "ERC-20",
- "active": false,
- "currently_enabled": false
- },
- "SNX-FTM20": {
- "coin": "SNX-FTM20",
- "name": "Synthetix",
- "coinpaprika_id": "snx-synthetix-network-token",
- "coingecko_id": "havven",
- "nomics_id": "SNX",
- "nodes": [
- "https://rpc.ftm.tools/"
- ],
- "explorer_url": [
- "https://ftmscan.com/"
- ],
- "type": "FTM-20",
- "active": false,
- "currently_enabled": false
- },
- "SNX-KRC20": {
- "coin": "SNX-KRC20",
- "name": "Synthetix",
- "coinpaprika_id": "snx-synthetix-network-token",
- "coingecko_id": "havven",
- "nomics_id": "SNX",
- "nodes": [
- "https://rpc-mainnet.kcc.network"
- ],
- "explorer_url": [
- "https://explorer.kcc.io/en/"
- ],
- "type": "KRC-20",
- "active": false,
- "currently_enabled": false
- },
- "SNX-PLG20": {
- "coin": "SNX-PLG20",
- "name": "Synthetix",
- "coinpaprika_id": "snx-synthetix-network-token",
- "coingecko_id": "havven",
- "nomics_id": "SNX",
- "nodes": [
- "https://polygon-rpc.com",
- "https://poly-rpc.gateway.pokt.network",
- "https://matic-mainnet.chainstacklabs.com"
- ],
- "explorer_url": [
- "https://polygonscan.com/"
- ],
- "type": "Matic",
- "active": false,
- "currently_enabled": false
- },
- "SOL-BEP20": {
- "coin": "SOL-BEP20",
- "name": "Solana",
- "coinpaprika_id": "sol-solana",
- "coingecko_id": "solana",
- "nomics_id": "SOL",
- "nodes": [
- "http://bsc1.cipig.net:8655",
- "http://bsc2.cipig.net:8655",
- "http://bsc3.cipig.net:8655"
- ],
- "explorer_url": [
- "https://bscscan.com/"
- ],
- "type": "BEP-20",
- "active": false,
- "currently_enabled": false
- },
- "SPACE": {
- "coin": "SPACE",
- "name": "Spacecoin",
- "coingecko_id": "test-coin",
- "coinpaprika_id": "space-spacecoin7367",
- "nomics_id": "SPACE7",
- "electrum": [
- {
- "url": "electrum3.cipig.net:10011",
- "ws_url": "electrum3.cipig.net:30011"
- },
- {
- "url": "electrum2.cipig.net:10011",
- "ws_url": "electrum2.cipig.net:30011"
- },
- {
- "url": "electrum1.cipig.net:10011",
- "ws_url": "electrum1.cipig.net:30011"
- }
- ],
- "explorer_url": [
- "https://explorer.spaceworks.co/"
- ],
- "type": "Smart Chain",
- "active": false,
- "currently_enabled": false
- },
- "TEL-ERC20": {
- "coin": "TEL-ERC20",
- "name": "Telcoin",
- "coinpaprika_id": "tel-telcoin",
- "coingecko_id": "telcoin",
- "nomics_id": "TEL",
- "nodes": [
- "http://eth1.cipig.net:8555",
- "http://eth2.cipig.net:8555",
- "http://eth3.cipig.net:8555"
- ],
- "explorer_url": [
- "https://etherscan.io/"
- ],
- "type": "ERC-20",
- "active": false,
- "currently_enabled": false
- },
- "TEL-PLG20": {
- "coin": "TEL-PLG20",
- "name": "Telcoin",
- "coinpaprika_id": "tel-telcoin",
- "coingecko_id": "telcoin",
- "nomics_id": "TEL",
- "nodes": [
- "https://polygon-rpc.com",
- "https://poly-rpc.gateway.pokt.network",
- "https://matic-mainnet.chainstacklabs.com"
- ],
- "explorer_url": [
- "https://polygonscan.com/"
- ],
- "type": "Matic",
- "active": false,
- "currently_enabled": false
- },
- "TEL-KRC20": {
- "coin": "TEL-KRC20",
- "name": "Telcoin",
- "coinpaprika_id": "tel-telcoin",
- "coingecko_id": "telcoin",
- "nomics_id": "TEL",
- "nodes": [
- "https://rpc-mainnet.kcc.network"
- ],
- "explorer_url": [
- "https://explorer.kcc.io/en/"
- ],
- "type": "KRC-20",
- "active": false,
- "currently_enabled": false
- },
- "TFT-BEP20": {
- "coin": "TFT-BEP20",
- "name": "ThreeFold",
- "coinpaprika_id": "tft-threefold-token",
- "coingecko_id": "threefold-token",
- "nomics_id": "THREEFOLDBEP20",
- "nodes": [
- "http://bsc1.cipig.net:8655",
- "http://bsc2.cipig.net:8655",
- "http://bsc3.cipig.net:8655"
- ],
- "explorer_url": [
- "https://bscscan.com/"
- ],
- "type": "BEP-20",
- "active": false,
- "currently_enabled": false
- },
- "THC": {
- "coin": "THC",
- "name": "HempCoin",
- "coinpaprika_id": "thc-hempcoin",
- "coingecko_id": "hempcoin-thc",
- "nomics_id": "THC",
- "electrum": [
- {
- "url": "1.eu.thc.electrum.dexstats.info:10020"
- },
- {
- "url": "2.eu.thc.electrum.dexstats.info:10020"
- }
- ],
- "explorer_url": [
- "https://thc.explorer.dexstats.info/"
- ],
- "type": "Smart Chain",
- "active": false,
- "currently_enabled": false
- },
- "THC-BEP20": {
- "coin": "THC-BEP20",
- "name": "HempCoin",
- "coinpaprika_id": "thc-hempcoin",
- "coingecko_id": "hempcoin-thc",
- "nomics_id": "THC",
- "nodes": [
- "http://bsc1.cipig.net:8655",
- "http://bsc2.cipig.net:8655",
- "http://bsc3.cipig.net:8655"
- ],
- "explorer_url": [
- "https://bscscan.com/"
- ],
- "type": "BEP-20",
- "active": false,
- "currently_enabled": false
- },
- "TKL": {
- "coin": "TKL",
- "name": "Tokel",
- "coinpaprika_id": "tkl-tokel",
- "coingecko_id": "tokel",
- "nomics_id": "TKL2",
- "electrum": [
- {
- "url": "1.eu.tokel.electrum.dexstats.info:10077",
- "ws_url": "1.eu.tokel.electrum.dexstats.info:9077"
- },
- {
- "url": "2.eu.tokel.electrum.dexstats.info:10077",
- "ws_url": "2.eu.tokel.electrum.dexstats.info:9077"
- }
- ],
- "explorer_url": [
- "https://tokel.explorer.dexstats.info/"
- ],
- "type": "Smart Chain",
- "active": false,
- "currently_enabled": false
- },
- "TRC": {
- "coin": "TRC",
- "name": "Terracoin",
- "coinpaprika_id": "trc-terracoin",
- "coingecko_id": "terracoin",
- "nomics_id": "TRC",
- "electrum": [
- {
- "url": "failover.trc-uis.ewmcx.biz:50006",
- "protocol": "SSL",
- "disable_cert_verification": true,
- "ws_url": "failover.trc-uis.ewmcx.biz:50007"
- },
- {
- "url": "electrum.terracoin.io:50001",
- "ws_url": "electrum.terracoin.io:50004"
- },
- {
- "url": "electrum.southofheaven.ca:50001",
- "ws_url": "electrum.southofheaven.ca:50004"
- }
- ],
- "explorer_url": [
- "https://chainz.cryptoid.info/trc/"
- ],
- "explorer_tx_url": "tx.dws?",
- "explorer_address_url": "address.dws?",
- "type": "UTXO",
- "active": false,
- "currently_enabled": false
- },
- "TRX-BEP20": {
- "coin": "TRX-BEP20",
- "name": "TRON",
- "coinpaprika_id": "trx-tron",
- "coingecko_id": "tron",
- "nomics_id": "TRX",
- "nodes": [
- "http://bsc1.cipig.net:8655",
- "http://bsc2.cipig.net:8655",
- "http://bsc3.cipig.net:8655"
- ],
- "explorer_url": [
- "https://bscscan.com/"
- ],
- "type": "BEP-20",
- "active": false,
- "currently_enabled": false
- },
- "TRYB-AVX20": {
- "coin": "TRYB-AVX20",
- "name": "BiLira",
- "forex_id": "TRY",
- "coinpaprika_id": "tryb-bilira",
- "coingecko_id": "bilira",
- "nomics_id": "TRYB",
- "nodes": [
- "https://api.avax.network/ext/bc/C/rpc"
- ],
- "explorer_url": [
- "https://snowtrace.io/"
- ],
- "type": "AVX-20",
- "active": false,
- "currently_enabled": false
- },
- "TRYB-BEP20": {
- "coin": "TRYB-BEP20",
- "name": "BiLira",
- "forex_id": "TRY",
- "coinpaprika_id": "tryb-bilira",
- "coingecko_id": "bilira",
- "nomics_id": "TRYB",
- "nodes": [
- "http://bsc1.cipig.net:8655",
- "http://bsc2.cipig.net:8655",
- "http://bsc3.cipig.net:8655"
- ],
- "explorer_url": [
- "https://bscscan.com/"
- ],
- "type": "BEP-20",
- "active": false,
- "currently_enabled": false
- },
- "TRYB-PLG20": {
- "coin": "TRYB-PLG20",
- "name": "BiLira",
- "forex_id": "TRY",
- "coinpaprika_id": "tryb-bilira",
- "coingecko_id": "bilira",
- "nomics_id": "TRYB",
- "nodes": [
- "https://polygon-rpc.com",
- "https://poly-rpc.gateway.pokt.network",
- "https://matic-mainnet.chainstacklabs.com"
- ],
- "explorer_url": [
- "https://polygonscan.com/"
- ],
- "type": "Matic",
- "active": false,
- "currently_enabled": false
- },
- "TRYB-ERC20": {
- "coin": "TRYB-ERC20",
- "name": "BiLira",
- "forex_id": "TRY",
- "coinpaprika_id": "tryb-bilira",
- "coingecko_id": "bilira",
- "nomics_id": "TRYB",
- "nodes": [
- "http://eth1.cipig.net:8555",
- "http://eth2.cipig.net:8555",
- "http://eth3.cipig.net:8555"
- ],
- "explorer_url": [
- "https://etherscan.io/"
- ],
- "type": "ERC-20",
- "active": false,
- "currently_enabled": false
- },
- "TUSD-BEP20": {
- "coin": "TUSD-BEP20",
- "name": "TrueUSD",
- "coinpaprika_id": "tusd-trueusd",
- "coingecko_id": "true-usd",
- "nomics_id": "TUSD",
- "nodes": [
- "http://bsc1.cipig.net:8655",
- "http://bsc2.cipig.net:8655",
- "http://bsc3.cipig.net:8655"
- ],
- "explorer_url": [
- "https://bscscan.com/"
- ],
- "type": "BEP-20",
- "active": false,
- "currently_enabled": false
- },
- "TUSD-ERC20": {
- "coin": "TUSD-ERC20",
- "name": "TrueUSD",
- "coinpaprika_id": "tusd-trueusd",
- "coingecko_id": "true-usd",
- "nomics_id": "TUSD",
- "nodes": [
- "http://eth1.cipig.net:8555",
- "http://eth2.cipig.net:8555",
- "http://eth3.cipig.net:8555"
- ],
- "explorer_url": [
- "https://etherscan.io/"
- ],
- "type": "ERC-20",
- "active": false,
- "currently_enabled": false
- },
- "TUSD-HCO20": {
- "coin": "TUSD-HCO20",
- "name": "TrueUSD",
- "coinpaprika_id": "tusd-trueusd",
- "coingecko_id": "true-usd",
- "nomics_id": "TUSD",
- "nodes": [
- "https://http-mainnet.hecochain.com"
- ],
- "explorer_url": [
- "https://hecoinfo.com/"
- ],
- "type": "HecoChain",
- "active": false,
- "currently_enabled": false
- },
- "TUSD-KRC20": {
- "coin": "TUSD-KRC20",
- "name": "TrueUSD",
- "coinpaprika_id": "tusd-trueusd",
- "coingecko_id": "true-usd",
- "nomics_id": "TUSD",
- "nodes": [
- "https://rpc-mainnet.kcc.network"
- ],
- "explorer_url": [
- "https://explorer.kcc.io/en/"
- ],
- "type": "KRC-20",
- "active": false,
- "currently_enabled": false
- },
- "TUSD-PLG20": {
- "coin": "TUSD-PLG20",
- "name": "TrueUSD",
- "coinpaprika_id": "tusd-trueusd",
- "coingecko_id": "true-usd",
- "nomics_id": "TUSD",
- "nodes": [
- "https://polygon-rpc.com",
- "https://poly-rpc.gateway.pokt.network",
- "https://matic-mainnet.chainstacklabs.com"
- ],
- "explorer_url": [
- "https://polygonscan.com/"
- ],
- "type": "Matic",
- "active": false,
- "currently_enabled": false
- },
- "UST-ERC20": {
- "coin": "UST-ERC20",
- "name": "TerraUSD",
- "coinpaprika_id": "ust-terrausd",
- "coingecko_id": "terrausd",
- "nodes": [
- "http://eth1.cipig.net:8555",
- "http://eth2.cipig.net:8555",
- "http://eth3.cipig.net:8555"
- ],
- "explorer_url": [
- "https://etherscan.io/"
- ],
- "type": "ERC-20",
- "active": false,
- "currently_enabled": false,
- "wallet_only": true
- },
- "UST-BEP20": {
- "coin": "UST-BEP20",
- "name": "TerraUSD",
- "coinpaprika_id": "ust-terrausd",
- "coingecko_id": "terrausd",
- "nodes": [
- "http://bsc1.cipig.net:8655",
- "http://bsc2.cipig.net:8655",
- "http://bsc3.cipig.net:8655"
- ],
- "explorer_url": [
- "https://bscscan.com/"
- ],
- "type": "BEP-20",
- "active": false,
- "currently_enabled": false,
- "wallet_only": true
- },
- "UST-HRC20": {
- "coin": "UST-HRC20",
- "name": "TerraUSD",
- "coinpaprika_id": "ust-terrausd",
- "coingecko_id": "terrausd",
- "nodes": [
- "https://api.harmony.one",
- "https://api.s0.t.hmny.io"
- ],
- "explorer_url": [
- "https://explorer.harmony.one/"
- ],
- "type": "HRC-20",
- "active": false,
- "currently_enabled": false,
- "wallet_only": true
- },
- "UST-PLG20": {
- "coin": "UST-PLG20",
- "name": "TerraUSD",
- "coinpaprika_id": "ust-terrausd",
- "coingecko_id": "terrausd",
- "nodes": [
- "https://polygon-rpc.com",
- "https://poly-rpc.gateway.pokt.network",
- "https://matic-mainnet.chainstacklabs.com"
- ],
- "explorer_url": [
- "https://polygonscan.com/"
- ],
- "type": "Matic",
- "active": false,
- "currently_enabled": false,
- "wallet_only": true
- },
- "VAL": {
- "coin": "VAL",
- "name": "Validity",
- "coinpaprika_id": "val-validity",
- "coingecko_id": "radium",
- "nomics_id": "RADS",
- "electrum": [
- {
- "url": "e1.validitytech.com:11002",
- "protocol": "SSL",
- "disable_cert_verification": true,
- "ws_url": "e1.validitytech.com:11004"
- },
- {
- "url": "e2.validitytech.com:11002",
- "protocol": "SSL",
- "disable_cert_verification": true,
- "ws_url": "e2.validitytech.com:11004"
- },
- {
- "url": "e3.validitytech.com:11002",
- "protocol": "SSL",
- "disable_cert_verification": true,
- "ws_url": "e3.validitytech.com:11004"
- }
- ],
- "explorer_url": [
- "https://chainz.cryptoid.info/val/"
- ],
- "explorer_tx_url": "tx.dws?",
- "explorer_address_url": "address.dws?",
- "type": "UTXO",
- "active": false,
- "currently_enabled": false
- },
- "VET-BEP20": {
- "coin": "VET-BEP20",
- "name": "VeChain",
- "coinpaprika_id": "vet-vechain",
- "coingecko_id": "vechain",
- "nomics_id": "VET",
- "nodes": [
- "http://bsc1.cipig.net:8655",
- "http://bsc2.cipig.net:8655",
- "http://bsc3.cipig.net:8655"
- ],
- "explorer_url": [
- "https://bscscan.com/"
- ],
- "type": "BEP-20",
- "active": false,
- "currently_enabled": false
- },
- "VRA": {
- "coin": "VRA",
- "name": "Verasity",
- "coingecko_id": "verasity",
- "coinpaprika_id": "vra-verasity",
- "nodes": [
- "http://eth1.cipig.net:8555",
- "http://eth2.cipig.net:8555",
- "http://eth3.cipig.net:8555"
- ],
- "explorer_url": [
- "https://etherscan.io/"
- ],
- "type": "ERC-20",
- "active": false,
- "currently_enabled": false
- },
- "VRM": {
- "coin": "VRM",
- "name": "Verium Reserve",
- "coingecko_id": "test-coin",
- "coinpaprika_id": "vrm-veriumreserve",
- "nomics_id": "VRM",
- "electrum": [
- {
- "url": "electrum01-vrm.vericonomy.com:50001"
- },
- {
- "url": "electrum02-vrm.vericonomy.com:50001"
- }
- ],
- "explorer_url": [
- "https://explorer-vrm.vericonomy.com/"
- ],
- "type": "UTXO",
- "active": false,
- "currently_enabled": false
- },
- "WAVES-BEP20": {
- "coin": "WAVES-BEP20",
- "name": "Waves",
- "coinpaprika_id": "waves-waves",
- "coingecko_id": "waves",
- "nomics_id": "WAVES",
- "nodes": [
- "http://bsc1.cipig.net:8655",
- "http://bsc2.cipig.net:8655",
- "http://bsc3.cipig.net:8655"
- ],
- "explorer_url": [
- "https://bscscan.com/"
- ],
- "type": "BEP-20",
- "active": false,
- "currently_enabled": false
- },
- "WBTC-ERC20": {
- "coin": "WBTC-ERC20",
- "name": "Wrapped Bitcoin",
- "coinpaprika_id": "wbtc-wrapped-bitcoin",
- "coingecko_id": "wrapped-bitcoin",
- "nomics_id": "WBTC",
- "nodes": [
- "http://eth1.cipig.net:8555",
- "http://eth2.cipig.net:8555",
- "http://eth3.cipig.net:8555"
- ],
- "explorer_url": [
- "https://etherscan.io/"
- ],
- "type": "ERC-20",
- "active": false,
- "currently_enabled": false
- },
- "WBTC-HRC20": {
- "coin": "WBTC-HRC20",
- "name": "Wrapped Bitcoin",
- "coinpaprika_id": "wbtc-wrapped-bitcoin",
- "coingecko_id": "wrapped-bitcoin",
- "nomics_id": "WBTC",
- "nodes": [
- "https://api.harmony.one",
- "https://api.s0.t.hmny.io"
- ],
- "explorer_url": [
- "https://explorer.harmony.one/"
- ],
- "type": "HRC-20",
- "active": false,
- "currently_enabled": false
- },
- "WCN": {
- "coin": "WCN",
- "name": "Widecoin",
- "coinpaprika_id": "wcn-widecoin",
- "coingecko_id": "widecoin",
- "nomics_id": "WCN2",
- "electrum": [
- {
- "url": "electrumx.widecoin.org:50001"
- },
- {
- "url": "electrumx2.widecoin.org:50001"
- }
- ],
- "explorer_url": [
- "https://explorer.widecoin.org/"
- ],
- "type": "UTXO",
- "active": false,
- "currently_enabled": false
- },
- "WWCN-ERC20": {
- "coin": "WWCN-ERC20",
- "name": "Wrapped Widecoin",
- "coinpaprika_id": "wwcn-wrapped-widecoin",
- "coingecko_id": "wrapped-widecoin",
- "nomics_id": "WWCN",
- "nodes": [
- "http://eth1.cipig.net:8555",
- "http://eth2.cipig.net:8555",
- "http://eth3.cipig.net:8555"
- ],
- "explorer_url": [
- "https://etherscan.io/"
- ],
- "type": "ERC-20",
- "active": false,
- "currently_enabled": false
- },
- "XEC": {
- "coin": "XEC",
- "name": "eCash",
- "coingecko_id": "ecash",
- "coinpaprika_id": "xec-ecash",
- "nomics_id": "XEC",
- "electrum": [
- {
- "url": "electrum.bitcoinabc.org:50002",
- "protocol": "SSL",
- "disable_cert_verification": true
- },
- {
- "url": "fulcrum.pepipierre.fr:50002",
- "protocol": "SSL",
- "disable_cert_verification": true
- }
- ],
- "explorer_url": [
- "https://blockchair.com/ecash/"
- ],
- "explorer_tx_url": "transaction/",
- "type": "UTXO",
- "active": false,
- "currently_enabled": false
- },
- "XEP-BEP20": {
- "coin": "XEP-BEP20",
- "name": "Electra Protocol",
- "coinpaprika_id": "xep-electra-protocol",
- "coingecko_id": "electra-protocol",
- "nomics_id": "XEP",
- "nodes": [
- "http://bsc1.cipig.net:8655",
- "http://bsc2.cipig.net:8655",
- "http://bsc3.cipig.net:8655"
- ],
- "explorer_url": [
- "https://bscscan.com/"
- ],
- "type": "BEP-20",
- "active": false,
- "currently_enabled": false
- },
- "XLM-BEP20": {
- "coin": "XLM-BEP20",
- "name": "Stellar",
- "coinpaprika_id": "xlm-stellar",
- "coingecko_id": "stellar",
- "nodes": [
- "http://bsc1.cipig.net:8655",
- "http://bsc2.cipig.net:8655",
- "http://bsc3.cipig.net:8655"
- ],
- "explorer_url": [
- "https://bscscan.com/"
- ],
- "type": "BEP-20",
- "active": false,
- "currently_enabled": false
- },
- "XMY": {
- "coin": "XMY",
- "name": "Myriad",
- "coinpaprika_id": "xmy-myriad",
- "coingecko_id": "myriadcoin",
- "nomics_id": "XMY",
- "electrum": [
- {
- "url": "lenoir.ecoincore.com:10891",
- "protocol": "TCP",
- "ws_url": "lenoir.ecoincore.com:10894"
- }
- ],
- "explorer_url": [
- "https://chainz.cryptoid.info/xmy/"
- ],
- "explorer_tx_url": "tx.dws?",
- "explorer_address_url": "address.dws?",
- "type": "UTXO",
- "active": false,
- "currently_enabled": false
- },
- "XPM": {
- "coin": "XPM",
- "name": "Primecoin",
- "coinpaprika_id": "xpm-primecoin",
- "coingecko_id": "primecoin",
- "nomics_id": "XPM",
- "electrum": [
- {
- "url": "electrumx.primecoin.org:50001",
- "protocol": "TCP"
- },
- {
- "url": "electrumx.mainnet.primecoin.org:50011",
- "protocol": "TCP"
- },
- {
- "url": "electrumx.gemmer.primecoin.org:50011",
- "protocol": "TCP"
- }
- ],
- "explorer_url": [
- "https://www.blockseek.io/xpm/"
- ],
- "type": "UTXO",
- "active": false,
- "currently_enabled": false,
- "wallet_only": true
- },
- "XRP-BEP20": {
- "coin": "XRP-BEP20",
- "name": "XRP",
- "coinpaprika_id": "xrp-xrp",
- "coingecko_id": "ripple",
- "nomics_id": "XRP",
- "nodes": [
- "http://bsc1.cipig.net:8655",
- "http://bsc2.cipig.net:8655",
- "http://bsc3.cipig.net:8655"
- ],
- "explorer_url": [
- "https://bscscan.com/"
- ],
- "type": "BEP-20",
- "active": false,
- "currently_enabled": false
- },
- "XRG": {
- "coin": "XRG",
- "active": false,
- "coinpaprika_id": "xrg-ergon",
- "coingecko_id": "test-coin",
- "nomics_id": "XRG",
- "currently_enabled": false,
- "electrum": [
- {
- "url": "fulcrum.ergon.network:52138",
- "protocol": "SSL",
- "disable_cert_verification": true
- },
- {
- "url": "blackie.c3-soft.com:52138",
- "protocol": "SSL"
- }
- ],
- "explorer_url": [
- "https://explorer.ergon.network/"
- ],
- "type": "UTXO",
- "name": "Ergon"
- },
- "XSGD-ERC20": {
- "coin": "XSGD-ERC20",
- "name": "StraitsX SGD",
- "forex_id": "SGD",
- "coinpaprika_id": "xsgd-xsgd",
- "coingecko_id": "xsgd",
- "nomics_id": "XSGD",
- "nodes": [
- "http://eth1.cipig.net:8555",
- "http://eth2.cipig.net:8555",
- "http://eth3.cipig.net:8555"
- ],
- "explorer_url": [
- "https://etherscan.io/"
- ],
- "type": "ERC-20",
- "active": false,
- "currently_enabled": false
- },
- "XSGD-PLG20": {
- "coin": "XSGD-PLG20",
- "name": "StraitsX SGD",
- "forex_id": "SGD",
- "coinpaprika_id": "xsgd-xsgd",
- "coingecko_id": "xsgd",
- "nomics_id": "XSGD",
- "nodes": [
- "https://polygon-rpc.com",
- "https://poly-rpc.gateway.pokt.network",
- "https://matic-mainnet.chainstacklabs.com"
- ],
- "explorer_url": [
- "https://polygonscan.com/"
- ],
- "type": "Matic",
- "active": false,
- "currently_enabled": false
- },
- "XTZ-BEP20": {
- "coin": "XTZ-BEP20",
- "name": "Tezos",
- "coinpaprika_id": "xtz-tezos",
- "coingecko_id": "tezos",
- "nomics_id": "XTZ",
- "nodes": [
- "http://bsc1.cipig.net:8655",
- "http://bsc2.cipig.net:8655",
- "http://bsc3.cipig.net:8655"
- ],
- "explorer_url": [
- "https://bscscan.com/"
- ],
- "type": "BEP-20",
- "active": false,
- "currently_enabled": false
- },
- "XVC-OLD": {
- "coin": "XVC-OLD",
- "name": "Vanillacash",
- "coinpaprika_id": "xvc-vcash",
- "coingecko_id": "vcash",
- "nomics_id": "XVC",
- "electrum": [
- {
- "url": "electrumx.xvc.ewmcx.org:50001",
- "protocol": "TCP"
- },
- {
- "url": "failover.xvc.ewmcx.biz:50001",
- "protocol": "TCP"
- }
- ],
- "explorer_url": [
- "https://xvc.freicoin.info/"
- ],
- "type": "UTXO",
- "active": false,
- "currently_enabled": false,
- "wallet_only": true
- },
- "XVC": {
- "coin": "XVC",
- "name": "Vanillacash",
- "coinpaprika_id": "xvc-vcash",
- "coingecko_id": "vcash",
- "nomics_id": "XVC",
- "electrum": [
- {
- "url": "electrumx1.vanillacash.info:50011",
- "ws_url": "electrumx1.vanillacash.info:50013"
- },
- {
- "url": "electrumx2.vanillacash.info:50011",
- "ws_url": "electrumx2.vanillacash.info:50013"
- }
- ],
- "explorer_url": [
- "https://chainz.cryptoid.info/xvc/"
- ],
- "explorer_tx_url": "tx.dws?",
- "explorer_address_url": "address.dws?",
- "type": "UTXO",
- "active": false,
- "currently_enabled": false
- },
- "XVC-BEP20": {
- "coin": "XVC-BEP20",
- "name": "Vanillacash",
- "coinpaprika_id": "xvc-vcash",
- "coingecko_id": "vcash",
- "nomics_id": "XVC",
- "nodes": [
- "http://bsc1.cipig.net:8655",
- "http://bsc2.cipig.net:8655",
- "http://bsc3.cipig.net:8655"
- ],
- "explorer_url": [
- "https://bscscan.com/"
- ],
- "type": "BEP-20",
- "active": false,
- "currently_enabled": false
- },
- "XVC-QRC20": {
- "coin": "XVC-QRC20",
- "name": "Vanillacash",
- "coinpaprika_id": "xvc-vcash",
- "coingecko_id": "vcash",
- "nomics_id": "XVC",
- "explorer_url": [
- "https://explorer.qtum.org/"
- ],
- "type": "QRC-20",
- "active": false,
- "currently_enabled": false
- },
- "XVS": {
- "coin": "XVS",
- "name": "Venus",
- "coinpaprika_id": "xvs-venus",
- "coingecko_id": "venus",
- "nomics_id": "XVS",
- "nodes": [
- "http://bsc1.cipig.net:8655",
- "http://bsc2.cipig.net:8655",
- "http://bsc3.cipig.net:8655"
- ],
- "explorer_url": [
- "https://bscscan.com/"
- ],
- "type": "BEP-20",
- "active": false,
- "currently_enabled": false
- },
- "YFI-AVX20": {
- "coin": "YFI-AVX20",
- "name": "yearn.finance",
- "coinpaprika_id": "yfi-yearnfinance",
- "coingecko_id": "yearn-finance",
- "nomics_id": "YFI",
- "nodes": [
- "https://api.avax.network/ext/bc/C/rpc"
- ],
- "explorer_url": [
- "https://snowtrace.io/"
- ],
- "type": "AVX-20",
- "active": false,
- "currently_enabled": false
- },
- "YFI-BEP20": {
- "coin": "YFI-BEP20",
- "name": "yearn.finance",
- "coinpaprika_id": "yfi-yearnfinance",
- "coingecko_id": "yearn-finance",
- "nomics_id": "YFI",
- "nodes": [
- "http://bsc1.cipig.net:8655",
- "http://bsc2.cipig.net:8655",
- "http://bsc3.cipig.net:8655"
- ],
- "explorer_url": [
- "https://bscscan.com/"
- ],
- "type": "BEP-20",
- "active": false,
- "currently_enabled": false
- },
- "YFI-ERC20": {
- "coin": "YFI-ERC20",
- "name": "yearn.finance",
- "coinpaprika_id": "yfi-yearnfinance",
- "coingecko_id": "yearn-finance",
- "nomics_id": "YFI",
- "nodes": [
- "http://eth1.cipig.net:8555",
- "http://eth2.cipig.net:8555",
- "http://eth3.cipig.net:8555"
- ],
- "explorer_url": [
- "https://etherscan.io/"
- ],
- "type": "ERC-20",
- "active": false,
- "currently_enabled": false
- },
- "YFI-FTM20": {
- "coin": "YFI-FTM20",
- "name": "yearn.finance",
- "coinpaprika_id": "yfi-yearnfinance",
- "coingecko_id": "yearn-finance",
- "nomics_id": "YFI",
- "nodes": [
- "https://rpc.ftm.tools/"
- ],
- "explorer_url": [
- "https://ftmscan.com/"
- ],
- "type": "FTM-20",
- "active": false,
- "currently_enabled": false
- },
- "YFI-KRC20": {
- "coin": "YFI-KRC20",
- "name": "yearn.finance",
- "coinpaprika_id": "yfi-yearnfinance",
- "coingecko_id": "yearn-finance",
- "nomics_id": "YFI",
- "nodes": [
- "https://rpc-mainnet.kcc.network"
- ],
- "explorer_url": [
- "https://explorer.kcc.io/en/"
- ],
- "type": "KRC-20",
- "active": false,
- "currently_enabled": false
- },
- "YFII-BEP20": {
- "coin": "YFII-BEP20",
- "name": "DFI.Money",
- "coinpaprika_id": "yfii-dfimoney",
- "coingecko_id": "yfii-finance",
- "nomics_id": "YFII",
- "nodes": [
- "http://bsc1.cipig.net:8655",
- "http://bsc2.cipig.net:8655",
- "http://bsc3.cipig.net:8655"
- ],
- "explorer_url": [
- "https://bscscan.com/"
- ],
- "type": "BEP-20",
- "active": false,
- "currently_enabled": false
- },
- "YFII-ERC20": {
- "coin": "YFII-ERC20",
- "name": "DFI.Money",
- "coinpaprika_id": "yfii-dfimoney",
- "coingecko_id": "yfii-finance",
- "nomics_id": "YFII",
- "nodes": [
- "http://eth1.cipig.net:8555",
- "http://eth2.cipig.net:8555",
- "http://eth3.cipig.net:8555"
- ],
- "explorer_url": [
- "https://etherscan.io/"
- ],
- "type": "ERC-20",
- "active": false,
- "currently_enabled": false
- },
- "ZEC": {
- "coin": "ZEC",
- "name": "Zcash",
- "coinpaprika_id": "zec-zcash",
- "coingecko_id": "zcash",
- "nomics_id": "ZEC",
- "electrum": [
- {
- "url": "electrum1.cipig.net:10058",
- "ws_url": "electrum1.cipig.net:30058"
- },
- {
- "url": "electrum2.cipig.net:10058",
- "ws_url": "electrum2.cipig.net:30058"
- },
- {
- "url": "electrum3.cipig.net:10058",
- "ws_url": "electrum3.cipig.net:30058"
- }
- ],
- "explorer_tx_url": "transactions/",
- "explorer_url": [
- "https://explorer.zcha.in/"
- ],
- "type": "UTXO",
- "active": false,
- "currently_enabled": false
- },
- "ZER": {
- "coin": "ZER",
- "name": "Zero",
- "coinpaprika_id": "zer-zero",
- "coingecko_id": "zero",
- "nomics_id": "ZER",
- "electrum": [
- {
- "url": "electrum1.cipig.net:10065",
- "ws_url": "electrum1.cipig.net:30065"
- },
- {
- "url": "electrum2.cipig.net:10065",
- "ws_url": "electrum2.cipig.net:30065"
- },
- {
- "url": "electrum3.cipig.net:10065",
- "ws_url": "electrum3.cipig.net:30065"
- }
- ],
- "explorer_url": [
- "https://insight.zerocurrency.io/insight/"
- ],
- "type": "UTXO",
- "active": false,
- "currently_enabled": false
- },
- "ZET-OLD": {
- "coin": "ZET-OLD",
- "name": "Zetacoin (OLD)",
- "coinpaprika_id": "zet-zetacoin",
- "coingecko_id": "zetacoin",
- "nomics_id": "ZET",
- "electrum": [
- {
- "url": "failover.zet.ewmci.xyz:50002",
- "protocol": "SSL",
- "disable_cert_verification": true
- },
- {
- "url": "electrumx.zet.ewmcx.info:50001",
- "protocol": "TCP"
- }
- ],
- "explorer_url": [
- "https://chainz.cryptoid.info/zet-old/"
- ],
- "explorer_tx_url": "tx.dws?",
- "explorer_address_url": "address.dws?",
- "type": "UTXO",
- "active": false,
- "currently_enabled": false
- },
- "ZET": {
- "coin": "ZET",
- "name": "Zetacoin",
- "coinpaprika_id": "zet-zetacoin",
- "coingecko_id": "zetacoin",
- "nomics_id": "ZET",
- "electrum": [
- {
- "url": "207.180.252.200:50011",
- "protocol": "TCP",
- "ws_url": "207.180.252.200:50013"
- },
- {
- "url": "zeta-seed-c.zetacoin.tech:50012",
- "protocol": "SSL",
- "disable_cert_verification": false
- }
- ],
- "explorer_url": [
- "https://chainz.cryptoid.info/zet/"
- ],
- "explorer_tx_url": "tx.dws?",
- "explorer_address_url": "address.dws?",
- "type": "UTXO",
- "active": false,
- "currently_enabled": false
- },
- "ZIL-BEP20": {
- "coin": "ZIL-BEP20",
- "name": "Zilliqa",
- "coinpaprika_id": "zil-zilliqa",
- "coingecko_id": "zilliqa",
- "nomics_id": "ZIL",
- "nodes": [
- "http://bsc1.cipig.net:8655",
- "http://bsc2.cipig.net:8655",
- "http://bsc3.cipig.net:8655"
- ],
- "explorer_url": [
- "https://bscscan.com/"
- ],
- "type": "BEP-20",
- "active": false,
- "currently_enabled": false
- },
- "ZILLA": {
- "coin": "ZILLA",
- "name": "ChainZilla",
- "coinpaprika_id": "zilla-chainzilla",
- "coingecko_id": "test-coin",
- "nomics_id": "ZILLA",
- "electrum": [
- {
- "url": "electrum1.cipig.net:10028",
- "ws_url": "electrum1.cipig.net:30028"
- },
- {
- "url": "electrum2.cipig.net:10028",
- "ws_url": "electrum2.cipig.net:30028"
- },
- {
- "url": "electrum3.cipig.net:10028",
- "ws_url": "electrum3.cipig.net:30028"
- }
- ],
- "explorer_url": [
- "https://zilla.explorer.dexstats.info/"
- ],
- "type": "Smart Chain",
- "active": false,
- "currently_enabled": false
- },
- "ZRX-AVX20": {
- "coin": "ZRX-AVX20",
- "name": "0x",
- "coinpaprika_id": "zrx-0x",
- "coingecko_id": "0x",
- "nomics_id": "ZRX",
- "nodes": [
- "https://api.avax.network/ext/bc/C/rpc"
- ],
- "explorer_url": [
- "https://snowtrace.io/"
- ],
- "type": "AVX-20",
- "active": false,
- "currently_enabled": false
- },
- "ZRX-ERC20": {
- "coin": "ZRX-ERC20",
- "name": "0x",
- "coinpaprika_id": "zrx-0x",
- "coingecko_id": "0x",
- "nomics_id": "ZRX",
- "nodes": [
- "http://eth1.cipig.net:8555",
- "http://eth2.cipig.net:8555",
- "http://eth3.cipig.net:8555"
- ],
- "explorer_url": [
- "https://etherscan.io/"
- ],
- "type": "ERC-20",
- "active": false,
- "currently_enabled": false
- },
- "ZRX-PLG20": {
- "coin": "ZRX-PLG20",
- "name": "0x",
- "coinpaprika_id": "zrx-0x",
- "coingecko_id": "0x",
- "nomics_id": "ZRX",
- "nodes": [
- "https://polygon-rpc.com",
- "https://poly-rpc.gateway.pokt.network",
- "https://matic-mainnet.chainstacklabs.com"
- ],
- "explorer_url": [
- "https://polygonscan.com/"
- ],
- "type": "Matic",
- "active": false,
- "currently_enabled": false
- },
- "tBTC-TEST": {
- "coin": "tBTC-TEST",
- "name": "tBTC (testnet)",
- "is_testnet": true,
- "coingecko_id": "test-coin",
- "coinpaprika_id": "test-coin",
- "electrum": [
- {
- "url": "testnet.aranguren.org:51001",
- "protocol": "TCP"
- },
- {
- "url": "electrum1.cipig.net:10068",
- "ws_url": "electrum1.cipig.net:30068"
- },
- {
- "url": "electrum2.cipig.net:10068",
- "ws_url": "electrum2.cipig.net:30068"
- },
- {
- "url": "electrum3.cipig.net:10068",
- "ws_url": "electrum3.cipig.net:30068"
- }
- ],
- "explorer_url": [
- "https://blockstream.info/testnet/"
- ],
- "type": "UTXO",
- "active": false,
- "currently_enabled": false
- },
- "QRC20": {
- "is_testnet": true,
- "active": false,
- "coin": "QRC20",
- "coingecko_id": "test-coin",
- "coinpaprika_id": "test-coin",
- "currently_enabled": false,
- "explorer_url": [
- "https://testnet.qtum.info/"
- ],
- "name": "QRC20 (testnet)",
- "type": "QRC-20"
- },
- "tQTUM": {
- "coin": "tQTUM",
- "name": "tQTUM (testnet)",
- "need_electrum": true,
- "is_testnet": true,
- "coingecko_id": "test-coin",
- "coinpaprika_id": "test-coin",
- "electrum": [
- {
- "url": "electrum1.cipig.net:10071",
- "ws_url": "electrum1.cipig.net:30071"
- },
- {
- "url": "electrum2.cipig.net:10071",
- "ws_url": "electrum2.cipig.net:30071"
- },
- {
- "url": "electrum3.cipig.net:10071",
- "ws_url": "electrum3.cipig.net:30071"
- }
- ],
- "explorer_url": [
- "https://testnet.qtum.info/"
- ],
- "type": "QRC-20",
- "active": false,
- "currently_enabled": false
- },
- "INK": {
- "coin": "INK",
- "name": "Ink",
- "coingecko_id": "ink",
- "coinpaprika_id": "ink-ink",
- "nomics_id": "INK",
- "active": false,
- "currently_enabled": false,
- "explorer_url": [
- "https://explorer.qtum.org/"
- ],
- "type": "QRC-20"
- },
- "SPC": {
- "coin": "SPC",
- "name": "SpaceChain",
- "coingecko_id": "spacechain-erc-20",
- "coinpaprika_id": "spc-spacechain",
- "nomics_id": "SPC",
- "active": false,
- "currently_enabled": false,
- "explorer_url": [
- "https://explorer.qtum.org/"
- ],
- "type": "QRC-20"
- },
- "HPY": {
- "coin": "HPY",
- "name": "Hyper Pay",
- "coingecko_id": "hyper-pay",
- "coinpaprika_id": "hpy-hyper-pay",
- "nomics_id": "HPY",
- "active": false,
- "currently_enabled": false,
- "explorer_url": [
- "https://explorer.qtum.org/"
- ],
- "type": "QRC-20"
- },
- "HLC": {
- "coin": "HLC",
- "name": "HalalChain",
- "coingecko_id": "halalchain",
- "coinpaprika_id": "hlc-halalchain",
- "nomics_id": "HLC",
- "active": false,
- "currently_enabled": false,
- "explorer_url": [
- "https://explorer.qtum.org/"
- ],
- "type": "QRC-20"
- },
- "LSTR": {
- "coin": "LSTR",
- "name": "Luna Stars",
- "coingecko_id": "meetluna",
- "coinpaprika_id": "lstr-luna-stars",
- "nomics_id": "LSTR",
- "active": false,
- "currently_enabled": false,
- "explorer_url": [
- "https://explorer.qtum.org/"
- ],
- "type": "QRC-20"
- },
- "QBT": {
- "coin": "QBT",
- "name": "Qbao",
- "coingecko_id": "qbao",
- "coinpaprika_id": "qbt-qbao",
- "nomics_id": "QBT",
- "active": false,
- "currently_enabled": false,
- "explorer_url": [
- "https://explorer.qtum.org/"
- ],
- "type": "QRC-20"
- },
- "OC": {
- "coin": "OC",
- "name": "OceanChain",
- "coingecko_id": "oceanchain",
- "coinpaprika_id": "oc-oceanchain",
- "nomics_id": "OC",
- "active": false,
- "currently_enabled": false,
- "explorer_url": [
- "https://explorer.qtum.org/"
- ],
- "type": "QRC-20"
- },
- "PUT": {
- "coin": "PUT",
- "name": "Profile Utility Token",
- "coingecko_id": "profile-utility-token",
- "coinpaprika_id": "put-profile-utility-token",
- "nomics_id": "PUT",
- "active": false,
- "currently_enabled": false,
- "explorer_url": [
- "https://explorer.qtum.org/"
- ],
- "type": "QRC-20"
- },
- "TSL": {
- "coin": "TSL",
- "name": "Energo",
- "coingecko_id": "energo",
- "coinpaprika_id": "tsl-energo",
- "nomics_id": "TSL",
- "active": false,
- "currently_enabled": false,
- "explorer_url": [
- "https://explorer.qtum.org/"
- ],
- "type": "QRC-20"
- },
- "QC": {
- "coin": "QC",
- "name": "Qcash",
- "forex_id": "CNY",
- "coingecko_id": "qcash",
- "coinpaprika_id": "qc-qcash",
- "nomics_id": "QC",
- "active": false,
- "currently_enabled": false,
- "explorer_url": [
- "https://explorer.qtum.org/"
- ],
- "type": "QRC-20"
- },
- "SFUSD": {
- "coin": "SFUSD",
- "name": "SmartUSD",
- "forex_id": "USD",
- "coinpaprika_id": "test-coin",
- "coingecko_id": "test-coin",
- "electrum": [
- {
- "url": "electrum1.cipig.net:10070",
- "ws_url": "electrum1.cipig.net:30070"
- },
- {
- "url": "electrum2.cipig.net:10070",
- "ws_url": "electrum2.cipig.net:30070"
- },
- {
- "url": "electrum3.cipig.net:10070",
- "ws_url": "electrum3.cipig.net:30070"
- }
- ],
- "explorer_url": [
- "https://explorer.sfusd.kmd.sh/"
- ],
- "type": "UTXO",
- "active": false,
- "currently_enabled": false
- },
- "ANT": {
- "coin": "ANT",
- "name": "Aragon",
- "coinpaprika_id": "ant-aragon",
- "coingecko_id": "aragon",
- "nodes": [
- "http://eth1.cipig.net:8555",
- "http://eth2.cipig.net:8555",
- "http://eth3.cipig.net:8555"
- ],
- "explorer_url": [
- "https://etherscan.io/"
- ],
- "type": "ERC-20",
- "active": false,
- "currently_enabled": false
- },
- "BEST": {
- "coin": "BEST",
- "name": "Bitpanda Ecosystem Token",
- "coinpaprika_id": "best-bitpanda-ecosystem-token",
- "coingecko_id": "bitpanda-ecosystem-token",
- "nodes": [
- "http://eth1.cipig.net:8555",
- "http://eth2.cipig.net:8555",
- "http://eth3.cipig.net:8555"
- ],
- "explorer_url": [
- "https://etherscan.io/"
- ],
- "type": "ERC-20",
- "active": false,
- "currently_enabled": false
- },
- "CEL-ERC20": {
- "coin": "CEL-ERC20",
- "name": "Celsius",
- "coinpaprika_id": "cel-celsius",
- "coingecko_id": "celsius-degree-token",
- "nomics_id": "CEL",
- "nodes": [
- "http://eth1.cipig.net:8555",
- "http://eth2.cipig.net:8555",
- "http://eth3.cipig.net:8555"
- ],
- "explorer_url": [
- "https://etherscan.io/"
- ],
- "type": "ERC-20",
- "active": false,
- "currently_enabled": false
- },
- "CEL-PLG20": {
- "coin": "CEL-PLG20",
- "name": "Celsius",
- "coinpaprika_id": "cel-celsius",
- "coingecko_id": "celsius-degree-token",
- "nomics_id": "CEL",
- "nodes": [
- "https://polygon-rpc.com",
- "https://poly-rpc.gateway.pokt.network",
- "https://matic-mainnet.chainstacklabs.com"
- ],
- "explorer_url": [
- "https://polygonscan.com/"
- ],
- "type": "Matic",
- "active": false,
- "currently_enabled": false
- },
- "CENNZ": {
- "coin": "CENNZ",
- "name": "Centrality Token",
- "coinpaprika_id": "cennz-centrality",
- "coingecko_id": "centrality",
- "nodes": [
- "http://eth1.cipig.net:8555",
- "http://eth2.cipig.net:8555",
- "http://eth3.cipig.net:8555"
- ],
- "explorer_url": [
- "https://etherscan.io/"
- ],
- "type": "ERC-20",
- "active": false,
- "currently_enabled": false
- },
- "CHSB-ERC20": {
- "coin": "CHSB-ERC20",
- "name": "SwissBorg",
- "coinpaprika_id": "chsb-swissborg",
- "coingecko_id": "swissborg",
- "nomics_id": "CHSB",
- "nodes": [
- "http://eth1.cipig.net:8555",
- "http://eth2.cipig.net:8555",
- "http://eth3.cipig.net:8555"
- ],
- "explorer_url": [
- "https://etherscan.io/"
- ],
- "type": "ERC-20",
- "active": false,
- "currently_enabled": false
- },
- "CHSB-PLG20": {
- "coin": "CHSB-PLG20",
- "name": "SwissBorg",
- "coinpaprika_id": "chsb-swissborg",
- "coingecko_id": "swissborg",
- "nomics_id": "CHSB",
- "nodes": [
- "https://polygon-rpc.com",
- "https://poly-rpc.gateway.pokt.network",
- "https://matic-mainnet.chainstacklabs.com"
- ],
- "explorer_url": [
- "https://polygonscan.com/"
- ],
- "type": "Matic",
- "active": false,
- "currently_enabled": false
- },
- "CHZ-ERC20": {
- "coin": "CHZ-ERC20",
- "name": "chiliZ",
- "coinpaprika_id": "chz-chiliz",
- "coingecko_id": "chiliz",
- "nomics_id": "CHZ",
- "nodes": [
- "http://eth1.cipig.net:8555",
- "http://eth2.cipig.net:8555",
- "http://eth3.cipig.net:8555"
- ],
- "explorer_url": [
- "https://etherscan.io/"
- ],
- "type": "ERC-20",
- "active": false,
- "currently_enabled": false
- },
- "CHZ-KRC20": {
- "coin": "CHZ-KRC20",
- "name": "chiliZ",
- "coinpaprika_id": "chz-chiliz",
- "coingecko_id": "chiliz",
- "nomics_id": "CHZ",
- "nodes": [
- "https://rpc-mainnet.kcc.network"
- ],
- "explorer_url": [
- "https://explorer.kcc.io/en/"
- ],
- "type": "KRC-20",
- "active": false,
- "currently_enabled": false
- },
- "CHZ-PLG20": {
- "coin": "CHZ-PLG20",
- "name": "chiliZ",
- "coinpaprika_id": "chz-chiliz",
- "coingecko_id": "chiliz",
- "nomics_id": "CHZ",
- "nodes": [
- "https://polygon-rpc.com",
- "https://poly-rpc.gateway.pokt.network",
- "https://matic-mainnet.chainstacklabs.com"
- ],
- "explorer_url": [
- "https://polygonscan.com/"
- ],
- "type": "Matic",
- "active": false,
- "currently_enabled": false
- },
- "CRO-ERC20": {
- "coin": "CRO-ERC20",
- "name": "Crypto.com",
- "coinpaprika_id": "cro-cryptocom-chain",
- "coingecko_id": "crypto-com-chain",
- "nomics_id": "CRO",
- "nodes": [
- "http://eth1.cipig.net:8555",
- "http://eth2.cipig.net:8555",
- "http://eth3.cipig.net:8555"
- ],
- "explorer_url": [
- "https://etherscan.io/"
- ],
- "type": "ERC-20",
- "active": false,
- "currently_enabled": false
- },
- "CRO-KRC20": {
- "coin": "CRO-KRC20",
- "name": "Crypto.com",
- "coinpaprika_id": "cro-cryptocom-chain",
- "coingecko_id": "crypto-com-chain",
- "nomics_id": "CRO",
- "nodes": [
- "https://rpc-mainnet.kcc.network"
- ],
- "explorer_url": [
- "https://explorer.kcc.io/en/"
- ],
- "type": "KRC-20",
- "active": false,
- "currently_enabled": false
- },
- "CRO-PLG20": {
- "coin": "CRO-PLG20",
- "name": "Crypto.com",
- "coinpaprika_id": "cro-cryptocom-chain",
- "coingecko_id": "crypto-com-chain",
- "nomics_id": "CRO",
- "nodes": [
- "https://polygon-rpc.com",
- "https://poly-rpc.gateway.pokt.network",
- "https://matic-mainnet.chainstacklabs.com"
- ],
- "explorer_url": [
- "https://polygonscan.com/"
- ],
- "type": "Matic",
- "active": false,
- "currently_enabled": false
- },
- "CRV-ERC20": {
- "coin": "CRV-ERC20",
- "name": "Curve DAO Token",
- "coinpaprika_id": "crv-curve-dao-token",
- "coingecko_id": "curve-dao-token",
- "nomics_id": "CRV",
- "nodes": [
- "http://eth1.cipig.net:8555",
- "http://eth2.cipig.net:8555",
- "http://eth3.cipig.net:8555"
- ],
- "explorer_url": [
- "https://etherscan.io/"
- ],
- "type": "ERC-20",
- "active": false,
- "currently_enabled": false
- },
- "CRV-AVX20": {
- "coin": "CRV-AVX20",
- "name": "Curve DAO Token",
- "coinpaprika_id": "crv-curve-dao-token",
- "coingecko_id": "curve-dao-token",
- "nomics_id": "CRV",
- "nodes": [
- "https://api.avax.network/ext/bc/C/rpc"
- ],
- "explorer_url": [
- "https://snowtrace.io/"
- ],
- "type": "AVX-20",
- "active": false,
- "currently_enabled": false
- },
- "CRV-FTM20": {
- "coin": "CRV-FTM20",
- "name": "Curve DAO Token",
- "coinpaprika_id": "crv-curve-dao-token",
- "coingecko_id": "curve-dao-token",
- "nomics_id": "CRV",
- "nodes": [
- "https://rpc.ftm.tools/"
- ],
- "explorer_url": [
- "https://ftmscan.com/"
- ],
- "type": "FTM-20",
- "active": false,
- "currently_enabled": false
- },
- "CRV-KRC20": {
- "coin": "CRV-KRC20",
- "name": "Curve DAO Token",
- "coinpaprika_id": "crv-curve-dao-token",
- "coingecko_id": "curve-dao-token",
- "nomics_id": "CRV",
- "nodes": [
- "https://rpc-mainnet.kcc.network"
- ],
- "explorer_url": [
- "https://explorer.kcc.io/en/"
- ],
- "type": "KRC-20",
- "active": false,
- "currently_enabled": false
- },
- "CRV-PLG20": {
- "coin": "CRV-PLG20",
- "name": "Curve DAO Token",
- "coinpaprika_id": "crv-curve-dao-token",
- "coingecko_id": "curve-dao-token",
- "nomics_id": "CRV",
- "nodes": [
- "https://polygon-rpc.com",
- "https://poly-rpc.gateway.pokt.network",
- "https://matic-mainnet.chainstacklabs.com"
- ],
- "explorer_url": [
- "https://polygonscan.com/"
- ],
- "type": "Matic",
- "active": false,
- "currently_enabled": false
- },
- "CVC": {
- "coin": "CVC",
- "name": "Civic",
- "coinpaprika_id": "cvc-civic",
- "coingecko_id": "civic",
- "nodes": [
- "http://eth1.cipig.net:8555",
- "http://eth2.cipig.net:8555",
- "http://eth3.cipig.net:8555"
- ],
- "explorer_url": [
- "https://etherscan.io/"
- ],
- "type": "ERC-20",
- "active": false,
- "currently_enabled": false
- },
- "CVT": {
- "coin": "CVT",
- "name": "CyberVeinToken",
- "coinpaprika_id": "cvt-cybervein",
- "coingecko_id": "cybervein",
- "nodes": [
- "http://eth1.cipig.net:8555",
- "http://eth2.cipig.net:8555",
- "http://eth3.cipig.net:8555"
- ],
- "explorer_url": [
- "https://etherscan.io/"
- ],
- "type": "ERC-20",
- "active": false,
- "currently_enabled": false
- },
- "DX": {
- "coin": "DX",
- "name": "DxChain Token",
- "coinpaprika_id": "dx-dxchain-token",
- "coingecko_id": "dxchain",
- "nodes": [
- "http://eth1.cipig.net:8555",
- "http://eth2.cipig.net:8555",
- "http://eth3.cipig.net:8555"
- ],
- "explorer_url": [
- "https://etherscan.io/"
- ],
- "type": "ERC-20",
- "active": false,
- "currently_enabled": false
- },
- "ENJ-ERC20": {
- "coin": "ENJ-ERC20",
- "name": "Enjin Coin",
- "coinpaprika_id": "enj-enjin-coin",
- "coingecko_id": "enjincoin",
- "nomics_id": "ENJ",
- "nodes": [
- "http://eth1.cipig.net:8555",
- "http://eth2.cipig.net:8555",
- "http://eth3.cipig.net:8555"
- ],
- "explorer_url": [
- "https://etherscan.io/"
- ],
- "type": "ERC-20",
- "active": false,
- "currently_enabled": false
- },
- "ENJ-KRC20": {
- "coin": "ENJ-KRC20",
- "name": "Enjin Coin",
- "coinpaprika_id": "enj-enjin-coin",
- "coingecko_id": "enjincoin",
- "nomics_id": "ENJ",
- "nodes": [
- "https://rpc-mainnet.kcc.network"
- ],
- "explorer_url": [
- "https://explorer.kcc.io/en/"
- ],
- "type": "KRC-20",
- "active": false,
- "currently_enabled": false
- },
- "ENJ-PLG20": {
- "coin": "ENJ-PLG20",
- "name": "Enjin Coin",
- "coinpaprika_id": "enj-enjin-coin",
- "coingecko_id": "enjincoin",
- "nomics_id": "ENJ",
- "nodes": [
- "https://polygon-rpc.com",
- "https://poly-rpc.gateway.pokt.network",
- "https://matic-mainnet.chainstacklabs.com"
- ],
- "explorer_url": [
- "https://polygonscan.com/"
- ],
- "type": "Matic",
- "active": false,
- "currently_enabled": false
- },
- "EURS-ERC20": {
- "coin": "EURS-ERC20",
- "name": "STASIS EURO",
- "forex_id": "EUR",
- "coinpaprika_id": "eurs-stasis-eurs",
- "coingecko_id": "stasis-eurs",
- "nomics_id": "EURS",
- "nodes": [
- "http://eth1.cipig.net:8555",
- "http://eth2.cipig.net:8555",
- "http://eth3.cipig.net:8555"
- ],
- "explorer_url": [
- "https://etherscan.io/"
- ],
- "type": "ERC-20",
- "active": false,
- "currently_enabled": false
- },
- "EURS-PLG20": {
- "coin": "EURS-PLG20",
- "name": "STASIS EURO",
- "forex_id": "EUR",
- "coinpaprika_id": "eurs-stasis-eurs",
- "coingecko_id": "stasis-eurs",
- "nomics_id": "EURS",
- "nodes": [
- "https://polygon-rpc.com",
- "https://poly-rpc.gateway.pokt.network",
- "https://matic-mainnet.chainstacklabs.com"
- ],
- "explorer_url": [
- "https://polygonscan.com/"
- ],
- "type": "Matic",
- "active": false,
- "currently_enabled": false
- },
- "GNO-ERC20": {
- "coin": "GNO-ERC20",
- "name": "Gnosis",
- "coinpaprika_id": "gno-gnosis",
- "coingecko_id": "gnosis",
- "nomics_id": "GNO",
- "nodes": [
- "http://eth1.cipig.net:8555",
- "http://eth2.cipig.net:8555",
- "http://eth3.cipig.net:8555"
- ],
- "explorer_url": [
- "https://etherscan.io/"
- ],
- "type": "ERC-20",
- "active": false,
- "currently_enabled": false
- },
- "GNO-PLG20": {
- "coin": "GNO-PLG20",
- "name": "Gnosis",
- "coinpaprika_id": "gno-gnosis",
- "coingecko_id": "gnosis",
- "nomics_id": "GNO",
- "nodes": [
- "https://polygon-rpc.com",
- "https://poly-rpc.gateway.pokt.network",
- "https://matic-mainnet.chainstacklabs.com"
- ],
- "explorer_url": [
- "https://polygonscan.com/"
- ],
- "type": "Matic",
- "active": false,
- "currently_enabled": false
- },
- "HEX-ERC20": {
- "coin": "HEX-ERC20",
- "name": "HEX",
- "coinpaprika_id": "hex-hex",
- "coingecko_id": "hex",
- "nomics_id": "HEX",
- "nodes": [
- "http://eth1.cipig.net:8555",
- "http://eth2.cipig.net:8555",
- "http://eth3.cipig.net:8555"
- ],
- "explorer_url": [
- "https://etherscan.io/"
- ],
- "type": "ERC-20",
- "active": false,
- "currently_enabled": false
- },
- "HEX-PLG20": {
- "coin": "HEX-PLG20",
- "name": "HEX",
- "coinpaprika_id": "hex-hex",
- "coingecko_id": "hex",
- "nomics_id": "HEX",
- "nodes": [
- "https://polygon-rpc.com",
- "https://poly-rpc.gateway.pokt.network",
- "https://matic-mainnet.chainstacklabs.com"
- ],
- "explorer_url": [
- "https://polygonscan.com/"
- ],
- "type": "Matic",
- "active": false,
- "currently_enabled": false
- },
- "HOT-ERC20": {
- "coin": "HOT-ERC20",
- "name": "Holo",
- "coinpaprika_id": "hot-holo",
- "coingecko_id": "holotoken",
- "nomics_id": "HOT",
- "nodes": [
- "http://eth1.cipig.net:8555",
- "http://eth2.cipig.net:8555",
- "http://eth3.cipig.net:8555"
- ],
- "explorer_url": [
- "https://etherscan.io/"
- ],
- "type": "ERC-20",
- "active": false,
- "currently_enabled": false
- },
- "HOT-PLG20": {
- "coin": "HOT-PLG20",
- "name": "Holo",
- "coinpaprika_id": "hot-holo",
- "coingecko_id": "holotoken",
- "nomics_id": "HOT",
- "nodes": [
- "https://polygon-rpc.com",
- "https://poly-rpc.gateway.pokt.network",
- "https://matic-mainnet.chainstacklabs.com"
- ],
- "explorer_url": [
- "https://polygonscan.com/"
- ],
- "type": "Matic",
- "active": false,
- "currently_enabled": false
- },
- "HT": {
- "active": false,
- "coin": "HT",
- "coingecko_id": "huobi-token",
- "coinpaprika_id": "ht-huobi-token",
- "nomics_id": "HT",
- "currently_enabled": false,
- "nodes": [
- "https://http-mainnet.hecochain.com"
- ],
- "explorer_url": [
- "https://hecoinfo.com/"
- ],
- "type": "HecoChain",
- "name": "Huobi Token"
- },
- "HT-ERC20": {
- "coin": "HT-ERC20",
- "name": "Huobi Token",
- "coinpaprika_id": "ht-huobi-token",
- "coingecko_id": "huobi-token",
- "nomics_id": "HT",
- "nodes": [
- "http://eth1.cipig.net:8555",
- "http://eth2.cipig.net:8555",
- "http://eth3.cipig.net:8555"
- ],
- "explorer_url": [
- "https://etherscan.io/"
- ],
- "type": "ERC-20",
- "active": false,
- "currently_enabled": false
- },
- "HUSD-ERC20": {
- "coin": "HUSD-ERC20",
- "name": "HUSD",
- "coinpaprika_id": "husd-husd",
- "coingecko_id": "husd",
- "nomics_id": "HUSD",
- "nodes": [
- "http://eth1.cipig.net:8555",
- "http://eth2.cipig.net:8555",
- "http://eth3.cipig.net:8555"
- ],
- "explorer_url": [
- "https://etherscan.io/"
- ],
- "type": "ERC-20",
- "active": false,
- "currently_enabled": false
- },
- "HUSD-HCO20": {
- "coin": "HUSD-HCO20",
- "name": "HUSD",
- "coinpaprika_id": "husd-husd",
- "coingecko_id": "husd",
- "nomics_id": "HUSD",
- "nodes": [
- "https://http-mainnet.hecochain.com"
- ],
- "explorer_url": [
- "https://hecoinfo.com/"
- ],
- "type": "HecoChain",
- "active": false,
- "currently_enabled": false
- },
- "HUSD-KRC20": {
- "coin": "HUSD-KRC20",
- "name": "HUSD",
- "coinpaprika_id": "husd-husd",
- "coingecko_id": "husd",
- "nomics_id": "HUSD",
- "nodes": [
- "https://rpc-mainnet.kcc.network"
- ],
- "explorer_url": [
- "https://explorer.kcc.io/en/"
- ],
- "type": "KRC-20",
- "active": false,
- "currently_enabled": false
- },
- "HUSD-PLG20": {
- "coin": "HUSD-PLG20",
- "name": "HUSD",
- "coinpaprika_id": "husd-husd",
- "coingecko_id": "husd",
- "nomics_id": "HUSD",
- "nodes": [
- "https://polygon-rpc.com",
- "https://poly-rpc.gateway.pokt.network",
- "https://matic-mainnet.chainstacklabs.com"
- ],
- "explorer_url": [
- "https://polygonscan.com/"
- ],
- "type": "Matic",
- "active": false,
- "currently_enabled": false
- },
- "LEASH-ERC20" : {
- "coin": "LEASH-ERC20",
- "name": "Doge Killer",
- "coinpaprika_id": "leash-doge-killer",
- "coingecko_id": "leash",
- "nomics_id": "LEASH",
- "nodes": [
- "http://eth1.cipig.net:8555",
- "http://eth2.cipig.net:8555",
- "http://eth3.cipig.net:8555"
- ],
- "explorer_url": [
- "https://etherscan.io/"
- ],
- "type": "ERC-20",
- "active": false,
- "currently_enabled": false
- },
- "LEO-ERC20": {
- "coin": "LEO-ERC20",
- "name": "LEO Token",
- "coinpaprika_id": "leo-leo-token",
- "coingecko_id": "leo-token",
- "nomics_id": "LEO",
- "nodes": [
- "http://eth1.cipig.net:8555",
- "http://eth2.cipig.net:8555",
- "http://eth3.cipig.net:8555"
- ],
- "explorer_url": [
- "https://etherscan.io/"
- ],
- "type": "ERC-20",
- "active": false,
- "currently_enabled": false
- },
- "LEO-PLG20": {
- "coin": "LEO-PLG20",
- "name": "LEO Token",
- "coinpaprika_id": "leo-leo-token",
- "coingecko_id": "leo-token",
- "nomics_id": "LEO",
- "nodes": [
- "https://polygon-rpc.com",
- "https://poly-rpc.gateway.pokt.network",
- "https://matic-mainnet.chainstacklabs.com"
- ],
- "explorer_url": [
- "https://polygonscan.com/"
- ],
- "type": "Matic",
- "active": false,
- "currently_enabled": false
- },
- "LRC-ERC20": {
- "coin": "LRC-ERC20",
- "name": "Loopring",
- "coinpaprika_id": "lrc-loopring",
- "coingecko_id": "loopring",
- "nomics_id": "LRC",
- "nodes": [
- "http://eth1.cipig.net:8555",
- "http://eth2.cipig.net:8555",
- "http://eth3.cipig.net:8555"
- ],
- "explorer_url": [
- "https://etherscan.io/"
- ],
- "type": "ERC-20",
- "active": false,
- "currently_enabled": false
- },
- "LRC-PLG20": {
- "coin": "LRC-PLG20",
- "name": "Loopring",
- "coinpaprika_id": "lrc-loopring",
- "coingecko_id": "loopring",
- "nomics_id": "LRC",
- "nodes": [
- "https://polygon-rpc.com",
- "https://poly-rpc.gateway.pokt.network",
- "https://matic-mainnet.chainstacklabs.com"
- ],
- "explorer_url": [
- "https://polygonscan.com/"
- ],
- "type": "Matic",
- "active": false,
- "currently_enabled": false
- },
- "MANA-ERC20": {
- "coin": "MANA-ERC20",
- "name": "Decentraland",
- "coinpaprika_id": "mana-decentraland",
- "coingecko_id": "decentraland",
- "nomics_id": "MANA",
- "nodes": [
- "http://eth1.cipig.net:8555",
- "http://eth2.cipig.net:8555",
- "http://eth3.cipig.net:8555"
- ],
- "explorer_url": [
- "https://etherscan.io/"
- ],
- "type": "ERC-20",
- "active": false,
- "currently_enabled": false
- },
- "MANA-BEP20": {
- "coin": "MANA-BEP20",
- "name": "Decentraland",
- "coinpaprika_id": "mana-decentraland",
- "coingecko_id": "decentraland",
- "nomics_id": "MANA",
- "nodes": [
- "http://bsc1.cipig.net:8655",
- "http://bsc2.cipig.net:8655",
- "http://bsc3.cipig.net:8655"
- ],
- "explorer_url": [
- "https://bscscan.com/"
- ],
- "type": "BEP-20",
- "active": false,
- "currently_enabled": false
- },
- "MANA-KRC20": {
- "coin": "MANA-KRC20",
- "name": "Decentraland",
- "coinpaprika_id": "mana-decentraland",
- "coingecko_id": "decentraland",
- "nomics_id": "MANA",
- "nodes": [
- "https://rpc-mainnet.kcc.network"
- ],
- "explorer_url": [
- "https://explorer.kcc.io/en/"
- ],
- "type": "KRC-20",
- "active": false,
- "currently_enabled": false
- },
- "MANA-PLG20": {
- "coin": "MANA-PLG20",
- "name": "Decentraland",
- "coinpaprika_id": "mana-decentraland",
- "coingecko_id": "decentraland",
- "nomics_id": "MANA",
- "nodes": [
- "https://polygon-rpc.com",
- "https://poly-rpc.gateway.pokt.network",
- "https://matic-mainnet.chainstacklabs.com"
- ],
- "explorer_url": [
- "https://polygonscan.com/"
- ],
- "type": "Matic",
- "active": false,
- "currently_enabled": false
- },
- "MLN": {
- "coin": "MLN",
- "name": "Melon Token",
- "coinpaprika_id": "mln-melon",
- "coingecko_id": "melon",
- "nodes": [
- "http://eth1.cipig.net:8555",
- "http://eth2.cipig.net:8555",
- "http://eth3.cipig.net:8555"
- ],
- "explorer_url": [
- "https://etherscan.io/"
- ],
- "type": "ERC-20",
- "active": false,
- "currently_enabled": false
- },
- "OKB": {
- "coin": "OKB",
- "name": "OKB",
- "coinpaprika_id": "okb-okb",
- "coingecko_id": "okb",
- "nodes": [
- "http://eth1.cipig.net:8555",
- "http://eth2.cipig.net:8555",
- "http://eth3.cipig.net:8555"
- ],
- "explorer_url": [
- "https://etherscan.io/"
- ],
- "type": "ERC-20",
- "active": false,
- "currently_enabled": false
- },
- "PNK": {
- "coin": "PNK",
- "name": "Pinakion",
- "coinpaprika_id": "pnk-kleros",
- "coingecko_id": "kleros",
- "nodes": [
- "http://eth1.cipig.net:8555",
- "http://eth2.cipig.net:8555",
- "http://eth3.cipig.net:8555"
- ],
- "explorer_url": [
- "https://etherscan.io/"
- ],
- "type": "ERC-20",
- "active": false,
- "currently_enabled": false
- },
- "POWR-ERC20": {
- "coin": "POWR-ERC20",
- "name": "Power Ledger",
- "coinpaprika_id": "powr-power-ledger",
- "coingecko_id": "power-ledger",
- "nomics_id": "POWR",
- "nodes": [
- "http://eth1.cipig.net:8555",
- "http://eth2.cipig.net:8555",
- "http://eth3.cipig.net:8555"
- ],
- "explorer_url": [
- "https://etherscan.io/"
- ],
- "type": "ERC-20",
- "active": false,
- "currently_enabled": false
- },
- "POWR-PLG20": {
- "coin": "POWR-PLG20",
- "name": "Power Ledger",
- "coinpaprika_id": "powr-power-ledger",
- "coingecko_id": "power-ledger",
- "nomics_id": "POWR",
- "nodes": [
- "https://polygon-rpc.com",
- "https://poly-rpc.gateway.pokt.network",
- "https://matic-mainnet.chainstacklabs.com"
- ],
- "explorer_url": [
- "https://polygonscan.com/"
- ],
- "type": "Matic",
- "active": false,
- "currently_enabled": false
- },
- "PRCY-BEP20": {
- "coin": "PRCY-BEP20",
- "name": "PRivaCY Coin",
- "coinpaprika_id": "prcy-privacy-coin",
- "coingecko_id": "privacy-coin",
- "nomics_id": "PRCY",
- "nodes": [
- "http://bsc1.cipig.net:8655",
- "http://bsc2.cipig.net:8655",
- "http://bsc3.cipig.net:8655"
- ],
- "explorer_url": [
- "https://bscscan.com/"
- ],
- "type": "BEP-20",
- "active": false,
- "currently_enabled": false
- },
- "PRCY-ERC20": {
- "coin": "PRCY-ERC20",
- "name": "PRivaCY Coin",
- "coinpaprika_id": "prcy-privacy-coin",
- "coingecko_id": "privacy-coin",
- "nomics_id": "PRCY",
- "nodes": [
- "http://eth1.cipig.net:8555",
- "http://eth2.cipig.net:8555",
- "http://eth3.cipig.net:8555"
- ],
- "explorer_url": [
- "https://etherscan.io/"
- ],
- "type": "ERC-20",
- "active": false,
- "currently_enabled": false
- },
- "PRCY-PLG20": {
- "coin": "PRCY-PLG20",
- "name": "PRivaCY Coin",
- "coinpaprika_id": "prcy-privacy-coin",
- "coingecko_id": "privacy-coin",
- "nomics_id": "PRCY",
- "nodes": [
- "https://polygon-rpc.com",
- "https://poly-rpc.gateway.pokt.network",
- "https://matic-mainnet.chainstacklabs.com"
- ],
- "explorer_url": [
- "https://polygonscan.com/"
- ],
- "type": "Matic",
- "active": false,
- "currently_enabled": false
- },
- "REP": {
- "coin": "REP",
- "name": "Reputation",
- "coinpaprika_id": "rep-augur",
- "coingecko_id": "augur",
- "nodes": [
- "http://eth1.cipig.net:8555",
- "http://eth2.cipig.net:8555",
- "http://eth3.cipig.net:8555"
- ],
- "explorer_url": [
- "https://etherscan.io/"
- ],
- "type": "ERC-20",
- "active": false,
- "currently_enabled": false
- },
- "REV": {
- "coin": "REV",
- "name": "Revain",
- "coinpaprika_id": "rev-revain",
- "coingecko_id": "revain",
- "nodes": [
- "http://eth1.cipig.net:8555",
- "http://eth2.cipig.net:8555",
- "http://eth3.cipig.net:8555"
- ],
- "explorer_url": [
- "https://etherscan.io/"
- ],
- "type": "ERC-20",
- "active": false,
- "currently_enabled": false
- },
- "RLC-ERC20": {
- "coin": "RLC-ERC20",
- "name": "iExec RLC",
- "coinpaprika_id": "rlc-iexec-rlc",
- "coingecko_id": "iexec-rlc",
- "nomics_id": "RLC",
- "nodes": [
- "http://eth1.cipig.net:8555",
- "http://eth2.cipig.net:8555",
- "http://eth3.cipig.net:8555"
- ],
- "explorer_url": [
- "https://etherscan.io/"
- ],
- "type": "ERC-20",
- "active": false,
- "currently_enabled": false
- },
- "RLC-PLG20": {
- "coin": "RLC-PLG20",
- "name": "iExec RLC",
- "coinpaprika_id": "rlc-iexec-rlc",
- "coingecko_id": "iexec-rlc",
- "nomics_id": "RLC",
- "nodes": [
- "https://polygon-rpc.com",
- "https://poly-rpc.gateway.pokt.network",
- "https://matic-mainnet.chainstacklabs.com"
- ],
- "explorer_url": [
- "https://polygonscan.com/"
- ],
- "type": "Matic",
- "active": false,
- "currently_enabled": false
- },
- "S4F": {
- "coin": "S4F",
- "name": "S4FE",
- "coinpaprika_id": "s4f-s4fe",
- "coingecko_id": "s4fe",
- "nodes": [
- "http://eth1.cipig.net:8555",
- "http://eth2.cipig.net:8555",
- "http://eth3.cipig.net:8555"
- ],
- "explorer_url": [
- "https://etherscan.io/"
- ],
- "type": "ERC-20",
- "active": false,
- "currently_enabled": false
- },
- "SHIB-BEP20": {
- "coin": "SHIB-BEP20",
- "name": "Shiba Inu",
- "coinpaprika_id": "shib-shiba-inu",
- "coingecko_id": "shiba-inu",
- "nomics_id": "SHIB",
- "nodes": [
- "http://bsc1.cipig.net:8655",
- "http://bsc2.cipig.net:8655",
- "http://bsc3.cipig.net:8655"
- ],
- "explorer_url": [
- "https://bscscan.com/"
- ],
- "type": "BEP-20",
- "active": false,
- "currently_enabled": false
- },
- "SHIB-ERC20": {
- "coin": "SHIB-ERC20",
- "name": "Shiba Inu",
- "coinpaprika_id": "shib-shiba-inu",
- "coingecko_id": "shiba-inu",
- "nomics_id": "SHIB",
- "nodes": [
- "http://eth1.cipig.net:8555",
- "http://eth2.cipig.net:8555",
- "http://eth3.cipig.net:8555"
- ],
- "explorer_url": [
- "https://etherscan.io/"
- ],
- "type": "ERC-20",
- "active": false,
- "currently_enabled": false
- },
- "SHR": {
- "coin": "SHR",
- "name": "ShareToken",
- "coinpaprika_id": "shr-sharetoken",
- "coingecko_id": "sharering",
- "nodes": [
- "http://eth1.cipig.net:8555",
- "http://eth2.cipig.net:8555",
- "http://eth3.cipig.net:8555"
- ],
- "explorer_url": [
- "https://etherscan.io/"
- ],
- "type": "ERC-20",
- "active": false,
- "currently_enabled": false
- },
- "SKL": {
- "coin": "SKL",
- "name": "SKALE",
- "coinpaprika_id": "skl-skale",
- "coingecko_id": "skale",
- "nodes": [
- "http://eth1.cipig.net:8555",
- "http://eth2.cipig.net:8555",
- "http://eth3.cipig.net:8555"
- ],
- "explorer_url": [
- "https://etherscan.io/"
- ],
- "type": "ERC-20",
- "active": false,
- "currently_enabled": false
- },
- "SNT": {
- "coin": "SNT",
- "name": "StatusNetwork",
- "coinpaprika_id": "snt-status",
- "coingecko_id": "status",
- "nodes": [
- "http://eth1.cipig.net:8555",
- "http://eth2.cipig.net:8555",
- "http://eth3.cipig.net:8555"
- ],
- "explorer_url": [
- "https://etherscan.io/"
- ],
- "type": "ERC-20",
- "active": false,
- "currently_enabled": false
- },
- "SRM-ERC20": {
- "coin": "SRM-ERC20",
- "name": "Serum",
- "coinpaprika_id": "srm-serum",
- "coingecko_id": "serum",
- "nomics_id": "SRM",
- "nodes": [
- "http://eth1.cipig.net:8555",
- "http://eth2.cipig.net:8555",
- "http://eth3.cipig.net:8555"
- ],
- "explorer_url": [
- "https://etherscan.io/"
- ],
- "type": "ERC-20",
- "active": false,
- "currently_enabled": false
- },
- "SRM-PLG20": {
- "coin": "SRM-PLG20",
- "name": "Serum",
- "coinpaprika_id": "srm-serum",
- "coingecko_id": "serum",
- "nomics_id": "SRM",
- "nodes": [
- "https://polygon-rpc.com",
- "https://poly-rpc.gateway.pokt.network",
- "https://matic-mainnet.chainstacklabs.com"
- ],
- "explorer_url": [
- "https://polygonscan.com/"
- ],
- "type": "Matic",
- "active": false,
- "currently_enabled": false
- },
- "STORJ": {
- "coin": "STORJ",
- "name": "Storj",
- "coinpaprika_id": "storj-storj",
- "coingecko_id": "storj",
- "nodes": [
- "http://eth1.cipig.net:8555",
- "http://eth2.cipig.net:8555",
- "http://eth3.cipig.net:8555"
- ],
- "explorer_url": [
- "https://etherscan.io/"
- ],
- "type": "ERC-20",
- "active": false,
- "currently_enabled": false
- },
- "TMTG": {
- "coin": "TMTG",
- "name": "The Midas Touch Gold",
- "coinpaprika_id": "tmtg-the-midas-touch-gold",
- "coingecko_id": "the-midas-touch-gold",
- "nodes": [
- "http://eth1.cipig.net:8555",
- "http://eth2.cipig.net:8555",
- "http://eth3.cipig.net:8555"
- ],
- "explorer_url": [
- "https://etherscan.io/"
- ],
- "type": "ERC-20",
- "active": false,
- "currently_enabled": false
- },
- "TRAC": {
- "coin": "TRAC",
- "name": "Trace",
- "coinpaprika_id": "trac-origintrail",
- "coingecko_id": "origintrail",
- "nodes": [
- "http://eth1.cipig.net:8555",
- "http://eth2.cipig.net:8555",
- "http://eth3.cipig.net:8555"
- ],
- "explorer_url": [
- "https://etherscan.io/"
- ],
- "type": "ERC-20",
- "active": false,
- "currently_enabled": false
- },
- "TTT": {
- "coin": "TTT",
- "name": "The Transfer Token",
- "coinpaprika_id": "ttt-the-transfer-token",
- "coingecko_id": "the-transfer-token",
- "nodes": [
- "http://eth1.cipig.net:8555",
- "http://eth2.cipig.net:8555",
- "http://eth3.cipig.net:8555"
- ],
- "explorer_url": [
- "https://etherscan.io/"
- ],
- "type": "ERC-20",
- "active": false,
- "currently_enabled": false
- },
- "UBQ": {
- "coin": "UBQ",
- "name": "Ubiq",
- "coinpaprika_id": "ubq-ubiq",
- "coingecko_id": "ubiq",
- "nomics_id": "UBQ",
- "nodes": [
- "https://rpc.octano.dev/"
- ],
- "explorer_url": [
- "https://ubiqscan.io/"
- ],
- "type": "Ubiq",
- "active": false,
- "currently_enabled": false
- },
- "UBT-ERC20": {
- "coin": "UBT-ERC20",
- "name": "Unibright",
- "coinpaprika_id": "ubt-unibright",
- "coingecko_id": "unibright",
- "nomics_id": "UBT",
- "nodes": [
- "http://eth1.cipig.net:8555",
- "http://eth2.cipig.net:8555",
- "http://eth3.cipig.net:8555"
- ],
- "explorer_url": [
- "https://etherscan.io/"
- ],
- "type": "ERC-20",
- "active": false,
- "currently_enabled": false
- },
- "UBT-PLG20": {
- "coin": "UBT-PLG20",
- "name": "Unibright",
- "coinpaprika_id": "ubt-unibright",
- "coingecko_id": "unibright",
- "nomics_id": "UBT",
- "nodes": [
- "https://polygon-rpc.com",
- "https://poly-rpc.gateway.pokt.network",
- "https://matic-mainnet.chainstacklabs.com"
- ],
- "explorer_url": [
- "https://polygonscan.com/"
- ],
- "type": "Matic",
- "active": false,
- "currently_enabled": false
- },
- "UMA-AVX20": {
- "coin": "UMA-AVX20",
- "name": "UMA",
- "coinpaprika_id": "uma-uma",
- "coingecko_id": "uma",
- "nomics_id": "UMA",
- "nodes": [
- "https://api.avax.network/ext/bc/C/rpc"
- ],
- "explorer_url": [
- "https://snowtrace.io/"
- ],
- "type": "AVX-20",
- "active": false,
- "currently_enabled": false
- },
- "UMA-ERC20": {
- "coin": "UMA-ERC20",
- "name": "UMA",
- "coinpaprika_id": "uma-uma",
- "coingecko_id": "uma",
- "nomics_id": "UMA",
- "nodes": [
- "http://eth1.cipig.net:8555",
- "http://eth2.cipig.net:8555",
- "http://eth3.cipig.net:8555"
- ],
- "explorer_url": [
- "https://etherscan.io/"
- ],
- "type": "ERC-20",
- "active": false,
- "currently_enabled": false
- },
- "UMA-PLG20": {
- "coin": "UMA-PLG20",
- "name": "UMA",
- "coinpaprika_id": "uma-uma",
- "coingecko_id": "uma",
- "nomics_id": "UMA",
- "nodes": [
- "https://polygon-rpc.com",
- "https://poly-rpc.gateway.pokt.network",
- "https://matic-mainnet.chainstacklabs.com"
- ],
- "explorer_url": [
- "https://polygonscan.com/"
- ],
- "type": "Matic",
- "active": false,
- "currently_enabled": false
- },
- "UNI-AVX20": {
- "coin": "UNI-AVX20",
- "name": "Uniswap",
- "coinpaprika_id": "uni-uniswap",
- "coingecko_id": "uniswap",
- "nomics_id": "UNI",
- "nodes": [
- "https://api.avax.network/ext/bc/C/rpc"
- ],
- "explorer_url": [
- "https://snowtrace.io/"
- ],
- "type": "AVX-20",
- "active": false,
- "currently_enabled": false
- },
- "UNI-BEP20": {
- "coin": "UNI-BEP20",
- "name": "Uniswap",
- "coinpaprika_id": "uni-uniswap",
- "coingecko_id": "uniswap",
- "nomics_id": "UNI",
- "nodes": [
- "http://bsc1.cipig.net:8655",
- "http://bsc2.cipig.net:8655",
- "http://bsc3.cipig.net:8655"
- ],
- "explorer_url": [
- "https://bscscan.com/"
- ],
- "type": "BEP-20",
- "active": false,
- "currently_enabled": false
- },
- "UNI-ERC20": {
- "coin": "UNI-ERC20",
- "name": "Uniswap",
- "coinpaprika_id": "uni-uniswap",
- "coingecko_id": "uniswap",
- "nomics_id": "UNI",
- "nodes": [
- "http://eth1.cipig.net:8555",
- "http://eth2.cipig.net:8555",
- "http://eth3.cipig.net:8555"
- ],
- "explorer_url": [
- "https://etherscan.io/"
- ],
- "type": "ERC-20",
- "active": false,
- "currently_enabled": false
- },
- "UNI-HCO20": {
- "coin": "UNI-HCO20",
- "name": "Uniswap",
- "coinpaprika_id": "uni-uniswap",
- "coingecko_id": "uniswap",
- "nomics_id": "UNI",
- "nodes": [
- "https://http-mainnet.hecochain.com"
- ],
- "explorer_url": [
- "https://hecoinfo.com/"
- ],
- "type": "HecoChain",
- "active": false,
- "currently_enabled": false
- },
- "UNI-KRC20": {
- "coin": "UNI-KRC20",
- "name": "Uniswap",
- "coinpaprika_id": "uni-uniswap",
- "coingecko_id": "uniswap",
- "nomics_id": "UNI",
- "nodes": [
- "https://rpc-mainnet.kcc.network"
- ],
- "explorer_url": [
- "https://explorer.kcc.io/en/"
- ],
- "type": "KRC-20",
- "active": false,
- "currently_enabled": false
- },
- "UNI-PLG20": {
- "coin": "UNI-PLG20",
- "name": "Uniswap",
- "coinpaprika_id": "uni-uniswap",
- "coingecko_id": "uniswap",
- "nomics_id": "UNI",
- "nodes": [
- "https://polygon-rpc.com",
- "https://poly-rpc.gateway.pokt.network",
- "https://matic-mainnet.chainstacklabs.com"
- ],
- "explorer_url": [
- "https://polygonscan.com/"
- ],
- "type": "Matic",
- "active": false,
- "currently_enabled": false
- },
- "UOS": {
- "coin": "UOS",
- "name": "Ultra Token",
- "coinpaprika_id": "uos-ultra",
- "coingecko_id": "ultra",
- "nodes": [
- "http://eth1.cipig.net:8555",
- "http://eth2.cipig.net:8555",
- "http://eth3.cipig.net:8555"
- ],
- "explorer_url": [
- "https://etherscan.io/"
- ],
- "type": "ERC-20",
- "active": false,
- "currently_enabled": false
- },
- "UQC": {
- "coin": "UQC",
- "name": "Uquid Coin",
- "coinpaprika_id": "uqc-uquid-coin",
- "coingecko_id": "uquid-coin",
- "nodes": [
- "http://eth1.cipig.net:8555",
- "http://eth2.cipig.net:8555",
- "http://eth3.cipig.net:8555"
- ],
- "explorer_url": [
- "https://etherscan.io/"
- ],
- "type": "ERC-20",
- "active": false,
- "currently_enabled": false
- },
- "USBL": {
- "coin": "USBL",
- "name": "Balanced Dollar",
- "coingecko_id": "test-coin",
- "coinpaprika_id": "test-coin",
- "nomics_id": "USBL",
- "electrum": [
- {
- "url": "swap.softbalanced.com:50001",
- "protocol": "TCP"
- },
- {
- "url": "swap.softbalanced.com:50002",
- "protocol": "SSL",
- "disable_cert_verification": true
- }
- ],
- "explorer_url": [
- "https://softbalanced.com:3001/insight/"
- ],
- "explorer_tx_url": "tx/",
- "type": "UTXO",
- "active": false,
- "currently_enabled": false
- },
- "UTK": {
- "coin": "UTK",
- "name": "UTRUST",
- "coinpaprika_id": "utk-utrust",
- "coingecko_id": "utrust",
- "nodes": [
- "http://eth1.cipig.net:8555",
- "http://eth2.cipig.net:8555",
- "http://eth3.cipig.net:8555"
- ],
- "explorer_url": [
- "https://etherscan.io/"
- ],
- "type": "ERC-20",
- "active": false,
- "currently_enabled": false
- },
- "VGX-ERC20": {
- "coin": "VGX-ERC20",
- "name": "Voyager",
- "coinpaprika_id": "ethos-ethos",
- "coingecko_id": "ethos",
- "nomics_id": "VGX",
- "nodes": [
- "http://eth1.cipig.net:8555",
- "http://eth2.cipig.net:8555",
- "http://eth3.cipig.net:8555"
- ],
- "explorer_url": [
- "https://etherscan.io/"
- ],
- "type": "ERC-20",
- "active": false,
- "currently_enabled": false
- },
- "VGX-PLG20": {
- "coin": "VGX-PLG20",
- "name": "Voyager",
- "coinpaprika_id": "ethos-ethos",
- "coingecko_id": "ethos",
- "nomics_id": "VGX",
- "nodes": [
- "https://polygon-rpc.com",
- "https://poly-rpc.gateway.pokt.network",
- "https://matic-mainnet.chainstacklabs.com"
- ],
- "explorer_url": [
- "https://polygonscan.com/"
- ],
- "type": "Matic",
- "active": false,
- "currently_enabled": false
- },
- "WHIVE": {
- "coin": "WHIVE",
- "name": "Whive",
- "coingecko_id": "whive",
- "coinpaprika_id": "whive-the-whive-protocol",
- "nomics_id": "WHIVE",
- "electrum": [
- {
- "url": "electrumx1.cointest.com:50002",
- "protocol": "SSL",
- "disable_cert_verification": true
- },
- {
- "url": "electrumx2.cointest.com:50002",
- "protocol": "SSL",
- "disable_cert_verification": true
- },
- {
- "url": "electrumx1.cointest.com:50001",
- "protocol": "TCP"
- },
- {
- "url": "electrumx2.cointest.com:50001",
- "protocol": "TCP"
- }
- ],
- "explorer_url": [
- "https://whiveexplorer.cointest.com/"
- ],
- "type": "UTXO",
- "active": false,
- "is_segwit_on": false,
- "currently_enabled": false
- },
- "XOR": {
- "coin": "XOR",
- "name": "Sora Token",
- "coinpaprika_id": "xor-sora",
- "coingecko_id": "sora",
- "nodes": [
- "http://eth1.cipig.net:8555",
- "http://eth2.cipig.net:8555",
- "http://eth3.cipig.net:8555"
- ],
- "explorer_url": [
- "https://etherscan.io/"
- ],
- "type": "ERC-20",
- "active": false,
- "currently_enabled": false
- },
- "CIPHS": {
- "coin": "CIPHS",
- "name": "Ciphscoin",
- "coingecko_id": "test-coin",
- "coinpaprika_id": "test-coin",
- "electrum": [
- {
- "url": "152.89.247.97:10001"
- },
- {
- "url": "212.114.52.2:10001"
- }
- ],
- "explorer_url": [
- "http://152.89.247.97:50604/"
- ],
- "type": "Smart Chain",
- "active": false,
- "currently_enabled": false
- },
- "VOTE2022": {
- "coin": "VOTE2022",
- "name": "Vote 2022",
- "coinpaprika_id": "test-coin",
- "coingecko_id": "test-coin",
- "electrum": [
- {
- "url": "electrum1.cipig.net:10002"
- },
- {
- "url": "electrum2.cipig.net:10002"
- },
- {
- "url": "electrum3.cipig.net:10002"
- }
- ],
- "explorer_url": [
- "https://vote.kmdexplorer.io/"
- ],
- "type": "Smart Chain",
- "active": false,
- "wallet_only": true,
- "currently_enabled": false
- },
- "ZINU-BEP20": {
- "coin": "ZINU-BEP20",
- "name": "Zombie Inu",
- "coinpaprika_id": "zombie-inu",
- "coingecko_id": "zinu-zombie-inu",
- "nomics_id": "ZINUBEP20",
- "nodes": [
- "http://bsc1.cipig.net:8655",
- "http://bsc2.cipig.net:8655",
- "http://bsc3.cipig.net:8655"
- ],
- "explorer_url": [
- "https://bscscan.com/"
- ],
- "type": "BEP-20",
- "active": false,
- "currently_enabled": false
- },
- "IC": {
- "coin": "IC",
- "name": "Ignition",
- "coingecko_id": "ignition",
- "coinpaprika_id": "ic-ignition",
- "nomics_id": "IC",
- "electrum": [
- {
- "url": "electrum1.ignitioncoin.org:10001",
- "protocol": "TCP"
- },
- {
- "url": "electrum2.ignitioncoin.org:10001",
- "protocol": "TCP"
- }
- ],
- "explorer_url": [
- "https://chainz.cryptoid.info/ic/"
- ],
- "explorer_tx_url": "tx.dws?",
- "explorer_address_url": "address.dws?",
- "type": "UTXO",
- "active": false,
- "currently_enabled": false
- },
- "RUNES": {
- "coin": "RUNES",
- "name": "Runebase",
- "coinpaprika_id": "runes-runebase",
- "coingecko_id": "runebase",
- "nomics_id": "RUNES",
- "electrum": [
- {
- "url": "electrum1.runebase.io:50002",
- "ws_url": "electrum1.runebase.io:50004",
- "protocol": "SSL"
- },
- {
- "url": "electrum2.runebase.io:50002",
- "ws_url": "electrum2.runebase.io:50004",
- "protocol": "SSL"
- },
- {
- "url": "electrum3.runebase.io:50002",
- "ws_url": "electrum3.runebase.io:50004",
- "protocol": "SSL"
- },
- {
- "url": "electrum4.runebase.io:50002",
- "ws_url": "electrum4.runebase.io:50004",
- "protocol": "SSL"
- },
- {
- "url": "electrum1.runebase.io:50001",
- "protocol": "TCP"
- },
- {
- "url": "electrum2.runebase.io:50001",
- "protocol": "TCP"
- },
- {
- "url": "electrum3.runebase.io:50001",
- "protocol": "TCP"
- },
- {
- "url": "electrum4.runebase.io:50001",
- "protocol": "TCP"
- }
- ],
- "explorer_url": [
- "https://explorer.runebase.io/"
- ],
- "explorer_tx_url": "tx/",
- "explorer_address_url": "address/",
- "type": "UTXO",
- "active": false,
- "is_segwit_on": false,
- "currently_enabled": false
- },
-"ACTN": {
- "coin": "ACTN",
- "name": "Action Coin",
- "type": "Smart Chain",
- "coinpaprika_id": "actn-action-coin",
- "coingecko_id": "action-coin",
- "nomics_id": "ACTN",
- "electrum": [
- {
- "url": "electrumx1.actioncoin.com:30001",
- "ws_url": "electrumx1.actioncoin.com:20001",
- "protocol": "SSL"
- },
- {
- "url": "electrumx2.actioncoin.com:30001",
- "ws_url": "electrumx2.actioncoin.com:20001",
- "protocol": "SSL"
- },
- {
- "url": "electrumx1.actioncoin.com:10001"
- },
- {
- "url": "electrumx2.actioncoin.com:10001"
- }
- ],
- "explorer_url": [
- "https://exp.actioncoin.com/"
- ],
- "active": false,
- "currently_enabled": false
- },
- "ACTN-BEP20": {
- "coin": "ACTN-BEP20",
- "name": "Action Coin",
- "type": "BEP-20",
- "nomics_id": "ACTNBEP20",
- "coinpaprika_id": "actn-action-coin",
- "coingecko_id": "action-coin",
- "nodes": [
- "http://bsc1.cipig.net:8655",
- "http://bsc2.cipig.net:8655",
- "http://bsc3.cipig.net:8655"
- ],
- "explorer_url": [
- "https://bscscan.com/"
- ],
- "active": false,
- "currently_enabled": false
- }
-}
diff --git a/assets/tools/.gitignore b/assets/tools/.gitignore
new file mode 100644
index 0000000000..b7e0b1c746
--- /dev/null
+++ b/assets/tools/.gitignore
@@ -0,0 +1,2 @@
+mm2
+coins
diff --git a/atomic_defi_design/Dex/Addressbook/AddAddressForm.qml b/atomic_defi_design/Dex/Addressbook/AddAddressForm.qml
index dc7357ecb4..7b73c27e05 100644
--- a/atomic_defi_design/Dex/Addressbook/AddAddressForm.qml
+++ b/atomic_defi_design/Dex/Addressbook/AddAddressForm.qml
@@ -21,7 +21,7 @@ Dex.Rectangle
property string addressKey
property string addressValue
- property var availableNetworkStandards: ["QRC-20", "ERC-20", "BEP-20", "Smart Chain"]
+ property var availableNetworkStandards: ["QRC-20", "ERC-20", "BEP-20", "Smart Chain", "SLP"]
// Return the asset type that will be used in the backend to validate the address
function getTypeForAddressChecker(addressType)
@@ -32,11 +32,11 @@ Dex.Rectangle
case "BEP-20": return "BNB"
case "ERC-20": return "ETH"
case "Smart Chain": return "KMD"
- case "SLP": return "BCH"
+ case "SLP": return "USDT-SLP"
}
let coinInfo = Dex.API.app.portfolio_pg.global_cfg_mdl.get_coin_info(addressType);
- if (coinInfo.has_parent_fees_ticker)
+ if (coinInfo.has_parent_fees_ticker && coinInfo.type !== "SLP")
return coinInfo.fees_ticker;
return addressType
}
@@ -46,11 +46,11 @@ Dex.Rectangle
{
switch (addressType)
{
- case "QRC-20": return true
- case "BEP-20": return true
- case "ERC-20": return true
- case "Smart Chain": return true
- case "SLP": return true
+ case "QRC-20": return true
+ case "BEP-20": return true
+ case "ERC-20": return true
+ case "Smart Chain": return true
+ case "SLP": return true
}
return false
}
@@ -156,10 +156,12 @@ Dex.Rectangle
Dex.Text
{
id: invalidAddressValueLabel
- Layout.fillWidth: true
+ Layout.preferredWidth: 458
+ Layout.preferredHeight: 60
visible: text !== ""
color: Dex.CurrentTheme.noColor
- wrapMode: Dex.Text.Wrap
+ wrapMode: Dex.Text.WordWrap
+ elide: Dex.Text.ElideRight
horizontalAlignment: Text.AlignHCenter
}
@@ -228,10 +230,12 @@ Dex.Rectangle
{
return
}
-
- if (!Dex.API.app.wallet_pg.validate_address_data.is_valid) // Entered address is invalid.
+
+ let validation_data = Dex.API.app.wallet_pg.validate_address_data
+ if (!validation_data.is_valid) // Entered address is invalid.
{
- invalidAddressValueLabel.text = Dex.API.app.wallet_pg.validate_address_data.reason
+ invalidAddressValueLabel.text = validation_data.reason
+
return
}
diff --git a/atomic_defi_design/Dex/Addressbook/EditContactModal.qml b/atomic_defi_design/Dex/Addressbook/EditContactModal.qml
index 1800e7d7fa..673c52936a 100644
--- a/atomic_defi_design/Dex/Addressbook/EditContactModal.qml
+++ b/atomic_defi_design/Dex/Addressbook/EditContactModal.qml
@@ -288,7 +288,7 @@ Dex.MultipageModal
Layout.preferredWidth: 199
Layout.preferredHeight: 48
radius: 18
- text: qsTr("Close")
+ text: qsTr("Cancel")
onClicked: root.close()
},
diff --git a/atomic_defi_design/Dex/Addressbook/Main.qml b/atomic_defi_design/Dex/Addressbook/Main.qml
index 2b40183e76..df7b1e4a2a 100644
--- a/atomic_defi_design/Dex/Addressbook/Main.qml
+++ b/atomic_defi_design/Dex/Addressbook/Main.qml
@@ -84,9 +84,8 @@ Item
Dex.GradientButton
{
- width: 213
- height: 48.51
- radius: 18
+ height: 40
+ radius: 15
text: qsTr("+ NEW CONTACT")
onClicked: newContactPopup.open()
@@ -226,15 +225,16 @@ Item
Row
{
spacing: 45
- width: 160
+ width: edit_contact.implicitWidth + delete_contact.implicitWidth + 65
anchors.verticalCenter: parent.verticalCenter
anchors.right: parent.right
- anchors.rightMargin: 2
+ anchors.rightMargin: 20
+
Dex.ClickableText
{
+ id: edit_contact
anchors.verticalCenter: parent.verticalCenter
- font.underline: true
- font.pixelSize: 15
+ font: Dex.DexTypo.underline14
text: qsTr("Edit")
onClicked:
{
@@ -242,11 +242,12 @@ Item
editContactLoader.open()
}
}
+
Dex.ClickableText
{
+ id: delete_contact
anchors.verticalCenter: parent.verticalCenter
- font.underline: true
- font.pixelSize: 15
+ font: Dex.DexTypo.underline14
text: qsTr("Delete")
onClicked: removeContactPopup.open()
diff --git a/atomic_defi_design/Dex/Addressbook/NewContactPopup.qml b/atomic_defi_design/Dex/Addressbook/NewContactPopup.qml
index c0fc890e02..4c61b27c64 100644
--- a/atomic_defi_design/Dex/Addressbook/NewContactPopup.qml
+++ b/atomic_defi_design/Dex/Addressbook/NewContactPopup.qml
@@ -3,28 +3,32 @@ import QtQuick 2.15
import QtQuick.Layouts 1.15
// Project Imports
+import "../Components"
import "../Constants"
import Dex.Components 1.0 as Dex
Dex.Popup
{
id: root
-
- width: 250
- height: 55
-
+ width: parent.width < 180 ? 180 : parent.width
+ height: 88
onOpened: nameField.forceActiveFocus()
onClosed: nameField.text = ""
- contentItem: Row
+ contentItem: Column
{
- spacing: 4
+ id: new_contact_input
+ anchors.centerIn: parent
+ anchors.fill: parent
+ anchors.margins: 8
+ spacing: 8
Dex.TextField
{
id: nameField
- width: parent.width * 0.6
- height: parent.height
+ height: 30
+ width: parent.width - 20
+ anchors.horizontalCenter: parent.horizontalCenter
placeholderText: qsTr("Contact name")
Dex.ToolTip
@@ -39,11 +43,13 @@ Dex.Popup
}
}
- Dex.Button
+ DefaultButton
{
- width: parent.width * 0.36
- height: parent.height
+ id: add_contact_btn
+ font: DexTypo.body2
text: qsTr("+ ADD")
+ height: 30
+ anchors.horizontalCenter: parent.horizontalCenter
onClicked:
{
if (nameField.text.length === 0)
diff --git a/atomic_defi_design/Dex/App.qml b/atomic_defi_design/Dex/App.qml
index 0aac79294a..b0137c1c15 100644
--- a/atomic_defi_design/Dex/App.qml
+++ b/atomic_defi_design/Dex/App.qml
@@ -30,6 +30,7 @@ DexRectangle
property string currentWalletName: API.app.wallet_mgr.wallet_default_name
property bool debug: debug_bar
property var notification_modal: notifications_modal
+ property var logout_confirm_modal: logout_modal
property var notifications_list: _currentPage === App.ScreenType.Dashboard ? loader.item.notifications_list : []
property bool segwit_on: false
@@ -37,11 +38,23 @@ DexRectangle
property var _availablePages: [_startup, dashboard]
property alias pageLoader: loader
+
property alias globalGradient: globalGradient
// Preload Chart
signal pairChanged(string base, string rel)
+
+ function return_to_login() {
+ app.notifications_list = []
+ userMenu.close()
+ app.currentWalletName = ""
+ API.app.disconnect()
+ app.onDisconnect()
+ window.logged = false
+ logout_modal.close()
+ }
+
function onDisconnect()
{
app.notifications_list = [];
@@ -133,6 +146,12 @@ DexRectangle
error_log_modal.item.field.text = content
}
+ ModalLoader
+ {
+ id: logout_modal
+ sourceComponent: LogoutModal {}
+ }
+
// Toast
ToastManager
{
diff --git a/atomic_defi_design/Dex/Components/CoinMenu.qml b/atomic_defi_design/Dex/Components/CoinMenu.qml
index a28b0fcaf6..73227c6835 100644
--- a/atomic_defi_design/Dex/Components/CoinMenu.qml
+++ b/atomic_defi_design/Dex/Components/CoinMenu.qml
@@ -9,6 +9,7 @@ Menu {
Universal.accent: Style.colorQtThemeAccent
Universal.foreground: Style.colorQtThemeForeground
Universal.background: Style.colorQtThemeBackground
+ property bool can_disable;
// Ugly but required hack for automatic menu width, otherwise long texts are being cut
width: {
@@ -28,7 +29,7 @@ Menu {
id: disable_action
text: qsTr("Disable %1", "TICKER").arg(ticker)
onTriggered: API.app.disable_coins([ticker])
- enabled: General.canDisable(ticker)
+ enabled: can_disable
}
MenuItem {
diff --git a/atomic_defi_design/Dex/Components/ComboBoxWithSearchBar.qml b/atomic_defi_design/Dex/Components/ComboBoxWithSearchBar.qml
index b2594dff5c..908c6a407f 100644
--- a/atomic_defi_design/Dex/Components/ComboBoxWithSearchBar.qml
+++ b/atomic_defi_design/Dex/Components/ComboBoxWithSearchBar.qml
@@ -21,7 +21,6 @@ ComboBox
property alias searchBar: _searchBar
property string searchBarPlaceholderText: qsTr("Search")
-
background: Rectangle
{
id: bg
diff --git a/atomic_defi_design/Dex/Components/DefaultCopyIcon.qml b/atomic_defi_design/Dex/Components/DefaultCopyIcon.qml
index 293ff4b09b..4c52187303 100644
--- a/atomic_defi_design/Dex/Components/DefaultCopyIcon.qml
+++ b/atomic_defi_design/Dex/Components/DefaultCopyIcon.qml
@@ -23,7 +23,7 @@ Qaterial.Icon
hoverEnabled: true
onClicked:
{
- Qaterial.Clipboard.text = control.text
+ Qaterial.Clipboard.text = copyText
app.notifyCopy(notifyTitle, notifyMsg)
}
}
diff --git a/atomic_defi_design/Dex/Components/CexInfoTrigger.qml b/atomic_defi_design/Dex/Components/DefaultInfoTrigger.qml
similarity index 57%
rename from atomic_defi_design/Dex/Components/CexInfoTrigger.qml
rename to atomic_defi_design/Dex/Components/DefaultInfoTrigger.qml
index 90e2feb801..0fd98f8e73 100644
--- a/atomic_defi_design/Dex/Components/CexInfoTrigger.qml
+++ b/atomic_defi_design/Dex/Components/DefaultInfoTrigger.qml
@@ -3,6 +3,7 @@ import QtQuick 2.15
DefaultMouseArea {
id: mouse_area
property bool no_default: true
+ property var triggerModal
anchors.fill: parent
- onClicked: no_default ? cex_rates_modal.open() : () => {}
+ onClicked: no_default ? triggerModal.open() : () => {}
}
diff --git a/atomic_defi_design/Dex/Components/DefaultProgressBar.qml b/atomic_defi_design/Dex/Components/DefaultProgressBar.qml
new file mode 100644
index 0000000000..ed56dd814b
--- /dev/null
+++ b/atomic_defi_design/Dex/Components/DefaultProgressBar.qml
@@ -0,0 +1,69 @@
+// Qt Imports
+import QtQuick 2.15
+import QtQuick.Layouts 1.15
+import QtQuick.Controls 2.15
+
+// Project Imports
+import "../Constants" as Dex
+import "../Components" as Dex
+import App 1.0
+
+RowLayout
+{
+ id: root
+ property double label_width: 175
+ property double bar_width_pct: 0
+ property color bar_color: Dex.DexTheme.greenColor
+ property alias label: _label
+ property alias pct_bar: _pct_bar
+ property alias pct_value: _pct_value
+ anchors.leftMargin: 10
+ anchors.rightMargin: 10
+ width: parent.width
+ height: 42
+ spacing: 10
+
+ Dex.DexLabel
+ {
+ id: _label
+ font.bold: true
+ Layout.preferredWidth: label_width
+ Layout.alignment: Qt.AlignVCenter
+ Component.onCompleted: font.weight = Font.Bold
+ }
+
+ // Progress bar
+ Item
+ {
+ Layout.alignment: Qt.AlignVCenter
+ Layout.fillWidth: true
+ height: 5
+
+ Rectangle
+ {
+ id: bg_bar
+ anchors.fill: parent
+ radius: 5
+ opacity: 0.1
+ color: DexTheme.foregroundColorLightColor5
+ }
+
+ Rectangle
+ {
+ id: _pct_bar
+ height: parent.height
+ radius: 5
+ width: bar_width_pct / 100 * parent.width
+ color: root.bar_color
+ }
+ }
+
+ Dex.DexLabel
+ {
+ id: _pct_value
+ Layout.preferredWidth: 60
+ text: "0.00 %"
+ Layout.alignment: Qt.AlignVCenter
+ Component.onCompleted: font.family = 'lato'
+ }
+}
diff --git a/atomic_defi_design/Dex/Components/DefaultSlider.qml b/atomic_defi_design/Dex/Components/DefaultSlider.qml
index e5a21c7154..be74bd2ce4 100644
--- a/atomic_defi_design/Dex/Components/DefaultSlider.qml
+++ b/atomic_defi_design/Dex/Components/DefaultSlider.qml
@@ -35,8 +35,8 @@ Slider
{
x: control.leftPadding + control.visualPosition * (control.availableWidth - width)
y: control.topPadding + control.availableHeight / 2 - height / 2
- implicitWidth: 26
- implicitHeight: 26
+ implicitWidth: 18
+ implicitHeight: 18
radius: 13
gradient: Gradient
{
diff --git a/atomic_defi_design/Dex/Components/DexAppButton.qml b/atomic_defi_design/Dex/Components/DexAppButton.qml
index 962bab8002..4414add9d2 100644
--- a/atomic_defi_design/Dex/Components/DexAppButton.qml
+++ b/atomic_defi_design/Dex/Components/DexAppButton.qml
@@ -47,7 +47,6 @@ DexRectangle
Dex.CurrentTheme.buttonColorDisabled
opacity: _controlMouseArea.containsMouse ? 1 : .8
-
Row
{
id: _contentRow
@@ -74,7 +73,7 @@ DexRectangle
{
id: _label
anchors.verticalCenter: parent.verticalCenter
- font: DexTypo.button
+ font: DexTypo.body2
text: control.text
color: enabled ? _controlMouseArea.containsMouse ? _controlMouseArea.containsPress ?
Dex.CurrentTheme.buttonTextPressedColor :
diff --git a/atomic_defi_design/Dex/Components/DexAppOutlineButton.qml b/atomic_defi_design/Dex/Components/DexAppOutlineButton.qml
index b754fb2e19..41c9bfdff5 100644
--- a/atomic_defi_design/Dex/Components/DexAppOutlineButton.qml
+++ b/atomic_defi_design/Dex/Components/DexAppOutlineButton.qml
@@ -61,8 +61,10 @@ DexRectangle {
color: DexTheme.buttonGradientEnabled2
}
}
+
color: outlinedColor
gradient: outlinedColor !== "" ? undefined : btnGradient
+
DexRectangle {
visible: !parent.containsMouse
radius: parent.radius - 2
@@ -75,16 +77,20 @@ DexRectangle {
height: _label.implicitHeight + (padding * verticalPadding)
width: _contentRow.implicitWidth + (padding * horizontalPadding)
- Row {
+ Row
+ {
id: _contentRow
- anchors {
+ anchors
+ {
horizontalCenter: parent.horizontalAlignment == Qt.AlignHCenter ? parent.horizontalCenter : undefined
verticalCenter: parent.verticalAlignment == Qt.AlignVCenter ? parent.verticalCenter : undefined
}
spacing: _icon.visible ? parent.spacing : 0
- Qaterial.ColorIcon {
+
+ Qaterial.ColorIcon
+ {
id: _icon
iconSize: _label.font.pixelSize + 2
visible: control.iconSource === "" ? false : true
@@ -93,14 +99,16 @@ DexRectangle {
anchors.verticalCenter: parent.verticalCenter
}
- DexLabel {
+ DexLabel
+ {
id: _label
anchors.verticalCenter: parent.verticalCenter
- font: DexTypo.body1
+ font: DexTypo.body2
text: control.text
color: control.foregroundColor
}
}
+
DexMouseArea {
id: _controlMouseArea
anchors.fill: parent
diff --git a/atomic_defi_design/Dex/Components/DexAppPasswordField.qml b/atomic_defi_design/Dex/Components/DexAppPasswordField.qml
index 65d6a4e7fd..a071c90e17 100644
--- a/atomic_defi_design/Dex/Components/DexAppPasswordField.qml
+++ b/atomic_defi_design/Dex/Components/DexAppPasswordField.qml
@@ -6,6 +6,7 @@ import Qaterial 1.0 as Qaterial
import App 1.0
import Dex.Themes 1.0 as Dex
+import "../Constants"
DexAppTextField
{
@@ -19,7 +20,7 @@ DexAppTextField
height: 50
width: 300
background.radius: 25
- max_length: 1000
+ max_length: General.max_std_pw_length
field.echoMode: TextField.Password
field.font: Qt.font(
{
diff --git a/atomic_defi_design/Dex/Components/DexComboBox.qml b/atomic_defi_design/Dex/Components/DexComboBox.qml
index b3d2171fea..38245425d2 100644
--- a/atomic_defi_design/Dex/Components/DexComboBox.qml
+++ b/atomic_defi_design/Dex/Components/DexComboBox.qml
@@ -103,7 +103,7 @@ ComboBox
// Each dropdown item
delegate: ItemDelegate
{
- id: delegate
+ id: combo_item
width: control.width
highlighted: control.highlightedIndex === index
@@ -118,8 +118,8 @@ ComboBox
background: Rectangle
{
- anchors.fill: delegate
- color: delegate.highlighted ? Dex.CurrentTheme.comboBoxDropdownItemHighlightedColor : Dex.CurrentTheme.comboBoxBackgroundColor
+ anchors.fill: combo_item
+ color: combo_item.highlighted ? Dex.CurrentTheme.comboBoxDropdownItemHighlightedColor : Dex.CurrentTheme.comboBoxBackgroundColor
}
}
diff --git a/atomic_defi_design/Dex/Components/DexDialogTextField.qml b/atomic_defi_design/Dex/Components/DexDialogTextField.qml
index e696f2fb99..cee884a867 100644
--- a/atomic_defi_design/Dex/Components/DexDialogTextField.qml
+++ b/atomic_defi_design/Dex/Components/DexDialogTextField.qml
@@ -17,7 +17,7 @@ Item {
property string rightText: ""
property string placeholderText: ""
property int leftWidth: -1
- readonly property int max_length: 40
+ property int max_length: 40
property bool error: false
onErrorChanged: {
if (error) {
diff --git a/atomic_defi_design/Dex/Components/DexGradientAppButton.qml b/atomic_defi_design/Dex/Components/DexGradientAppButton.qml
index f74b4ab822..5624512c13 100644
--- a/atomic_defi_design/Dex/Components/DexGradientAppButton.qml
+++ b/atomic_defi_design/Dex/Components/DexGradientAppButton.qml
@@ -93,7 +93,7 @@ DexRectangle
{
id: _label
anchors.verticalCenter: parent.verticalCenter
- font: DexTypo.button
+ font: DexTypo.body2
text: control.text
color: enabled ? _controlMouseArea.containsMouse ? _controlMouseArea.containsPress ?
Dex.CurrentTheme.gradientButtonTextPressedColor :
@@ -112,6 +112,7 @@ DexRectangle
anchors.verticalCenter: parent.verticalCenter
}
}
+
DexMouseArea
{
id: _controlMouseArea
diff --git a/atomic_defi_design/Dex/Components/DexKeyChecker.qml b/atomic_defi_design/Dex/Components/DexKeyChecker.qml
index 437caadbc9..fe8634f5e2 100644
--- a/atomic_defi_design/Dex/Components/DexKeyChecker.qml
+++ b/atomic_defi_design/Dex/Components/DexKeyChecker.qml
@@ -13,6 +13,7 @@ ColumnLayout {
property bool new_password: true
property bool double_validation: false
property string match_password
+ property int max_pw_len: General.max_std_pw_length
property bool high_security: true
function isValid() {
@@ -96,7 +97,7 @@ ColumnLayout {
font: DexTypo.body2
Layout.fillWidth: true
wrapMode: DexLabel.Wrap
- text_value: hintPrefix(hasEnoughCharacters()) + qsTr("At least %n character(s)", "", high_security ? 16 : 1)
+ text_value: hintPrefix(hasEnoughCharacters()) + qsTr("Between %1 and %2 character(s)").arg(high_security ? 16 : 1).arg(max_pw_len)
color: hintColor(hasEnoughCharacters())
}
DexLabel {
diff --git a/atomic_defi_design/Dex/Components/DexLanguage.qml b/atomic_defi_design/Dex/Components/DexLanguage.qml
index 7c85c5291e..1029bc7abb 100644
--- a/atomic_defi_design/Dex/Components/DexLanguage.qml
+++ b/atomic_defi_design/Dex/Components/DexLanguage.qml
@@ -14,44 +14,42 @@ DexComboBox
{
id: control
model: API.app.settings_pg.get_available_langs()
-
- property color highlightedBackgroundColor: Dex.CurrentTheme.comboBoxDropdownItemHighlightedColor
- property color mainBackgroundColor: Dex.CurrentTheme.floatingBackgroundColor
-
+ height: 50
displayText: API.app.settings_pg.lang
leftPadding: 5
+ // Each dropdown item
delegate: ItemDelegate
{
id: combo_item
width: control.width
- height: 30
+ height: 35
highlighted: control.highlightedIndex === index
contentItem: RowLayout
{
anchors.fill: parent
- spacing: -13
+ spacing: -25
DexImage
{
id: image
- Layout.preferredHeight: 14
+ Layout.preferredHeight: 25
source: General.image_path + "lang/" + modelData + ".png"
}
DexLabel
{
text: modelData
-
}
}
- // Dropdown Item background
- background: DexRectangle {
+ background: Rectangle
+ {
anchors.fill: combo_item
- color: combo_item.highlighted ? highlightedBackgroundColor : mainBackgroundColor
+ radius: 6
+ color: combo_item.highlighted ? Dex.CurrentTheme.comboBoxDropdownItemHighlightedColor : Dex.CurrentTheme.comboBoxBackgroundColor
}
onClicked:
@@ -63,28 +61,30 @@ DexComboBox
}
}
+ // Main, selected item
contentItem: Text
{
anchors.fill: parent
leftPadding: 0
rightPadding: control.indicator.width + control.spacing
-
- //text: control.displayText
- font: control.font
- color: control.pressed ? "#17a81a" : "#21be2b"
verticalAlignment: Text.AlignVCenter
- elide: Text.ElideRight
DexImage
{
id: image
- height: 12
- x: 8
+ height: 25
+ x: 12
anchors.verticalCenter: parent.verticalCenter
source: General.image_path + "lang/" + control.displayText + ".png"
}
}
+ background: FloatingBackground
+ {
+ radius: 20
+ color: Dex.CurrentTheme.comboBoxBackgroundColor
+ }
+
DexMouseArea
{
anchors.fill: parent
diff --git a/atomic_defi_design/Dex/Components/DexMacosHeaderControl.qml b/atomic_defi_design/Dex/Components/DexMacosHeaderControl.qml
index 8886236630..190d60301c 100644
--- a/atomic_defi_design/Dex/Components/DexMacosHeaderControl.qml
+++ b/atomic_defi_design/Dex/Components/DexMacosHeaderControl.qml
@@ -4,6 +4,9 @@ import QtQuick.Controls.Universal 2.15
import QtQuick.Layouts 1.12
import Qaterial 1.0 as Qaterial
+import ModelHelper 0.1
+
+import "../Constants"
Row
{
@@ -11,6 +14,7 @@ Row
property real size: 13
property bool hovered: minimizeButton.containsMouse || closeButton.containsMouse || extendButton.containsMouse
+ property var orders: API.app.orders_mdl.orders_proxy_mdl.ModelHelper
anchors.top: parent.top
width: 195
@@ -40,10 +44,9 @@ Row
id: closeButton
hoverEnabled: true
anchors.fill: parent
- onClicked:
- {
- Qt.quit()
- console.log("Window.visibility: " + window.visibility)
+ onClicked: {
+ if (orders.count === 0 || !API.app.wallet_mgr.log_status()) Qt.quit()
+ else app.logout_confirm_modal.open()
}
}
}
diff --git a/atomic_defi_design/Dex/Components/DexWindowHeaderControl.qml b/atomic_defi_design/Dex/Components/DexWindowHeaderControl.qml
index dca30634f5..f84d8c9013 100644
--- a/atomic_defi_design/Dex/Components/DexWindowHeaderControl.qml
+++ b/atomic_defi_design/Dex/Components/DexWindowHeaderControl.qml
@@ -2,13 +2,17 @@ import QtQuick 2.15
import QtQuick.Controls 2.15
import QtQuick.Controls.Universal 2.15
import QtQuick.Layouts 1.12
+import ModelHelper 0.1
import Qaterial 1.0 as Qaterial
+import "../Constants"
import Dex.Themes 1.0 as Dex
RowLayout
{
+ property var orders: API.app.orders_mdl.orders_proxy_mdl.ModelHelper
+
width: 120
anchors.right: parent.right
height: 30
@@ -68,6 +72,10 @@ RowLayout
foregroundColor: Dex.CurrentTheme.foregroundColor
icon.source: Qaterial.Icons.windowClose
- onClicked: Qt.quit()
+ onClicked:
+ {
+ if (orders.count === 0 || !API.app.wallet_mgr.log_status()) Qt.quit()
+ else app.logout_confirm_modal.open()
+ }
}
}
diff --git a/atomic_defi_design/Dex/Components/GasInfoModal.qml b/atomic_defi_design/Dex/Components/GasInfoModal.qml
new file mode 100644
index 0000000000..be86f0dd52
--- /dev/null
+++ b/atomic_defi_design/Dex/Components/GasInfoModal.qml
@@ -0,0 +1,42 @@
+// Qt Imports
+import QtQuick 2.15
+import QtQuick.Layouts 1.15
+
+// Project Imports
+import "../Constants"
+import App 1.0
+
+MultipageModal {
+ id: root
+
+ // Inside modal
+ MultipageModalContent {
+ titleText: General.cex_icon + " " + qsTr("How do I calculate gas?")
+
+ DefaultText {
+ Layout.fillWidth: true
+
+ text: qsTr('Gas is measured in gwei. Gwei is just a unit of Ether, and is equal to 0.000000001 ETH (or the equivalent platform coin such as AVAX or BNB). The gas price varies over time depending on network congestion.')
+ }
+ DefaultText {
+ Layout.fillWidth: true
+
+ text: qsTr('The gas limit is how many units of gas (maximum) you allocate to pay for a transaction. The gas required depending on the size of the transaction & data being transmitted.')
+ }
+ DefaultText {
+ Layout.fillWidth: true
+
+ text: qsTr('A standard transaction not involving contracts uses 21,000 gas units, with any of the limit remaining returned to the source address.')
+ }
+ DefaultText {
+ Layout.fillWidth: true
+
+ text: qsTr('Transactions involving contracts may result in the whole limit being consumed, so be careful not to set it too high.')
+ }
+ DefaultText {
+ Layout.fillWidth: true
+
+ text: qsTr('For more information, read the article at https://support.mycrypto.com/how-to/sending/how-to-know-what-gas-limit-to-use')
+ }
+ }
+}
diff --git a/atomic_defi_design/Dex/Components/LogoutModal.qml b/atomic_defi_design/Dex/Components/LogoutModal.qml
new file mode 100644
index 0000000000..f205e15293
--- /dev/null
+++ b/atomic_defi_design/Dex/Components/LogoutModal.qml
@@ -0,0 +1,72 @@
+import QtQuick 2.15
+import QtQuick.Layouts 1.15
+import ModelHelper 0.1
+
+import App 1.0
+import Dex.Themes 1.0 as Dex
+import "../Constants"
+import "../Components"
+
+MultipageModal {
+ id: root
+
+ property var orders: API.app.orders_mdl.orders_proxy_mdl.ModelHelper
+
+ MultipageModalContent {
+ id: modal_content
+ topMarginAfterTitle: 15
+ titleText: qsTr("Exit %1 or go to login menu?").arg(API.app_name)
+
+ // Swap in progress warning
+ DefaultText
+ {
+ visible: orders
+ font.pixelSize: 14
+ Layout.alignment: Qt.AlignHCenter
+ horizontalAlignment: Text.AlignHCenter
+ Layout.fillWidth: true
+ color: Dex.CurrentTheme.noColor
+ text_value:
+ {
+ for (let i = 0; i < orders.count; i++)
+ {
+ let status = orders.data(i).order_status
+ switch (status) {
+ case "matched":
+ case "ongoing":
+ return qsTr("Warning: You currently have a swap in progress.\nLogging out may result in a failed swap.")
+ case "successful":
+ case "refunding":
+ case "failed":
+ break
+ default:
+ return qsTr("Warning: You currently have open maker orders.\nThey will be removed from the orderbook until you log in again.")
+ }
+ }
+ return ""
+ }
+ }
+
+ // Buttons
+ footer: [
+ DefaultButton {
+ text: qsTr("Login menu")
+ Layout.fillWidth: true
+ onClicked:
+ {
+ return_to_login()
+ }
+ },
+ DefaultButton {
+ text: qsTr("Exit")
+ Layout.fillWidth: true
+ onClicked: Qt.quit()
+ },
+ DefaultButton {
+ text: qsTr("Cancel")
+ Layout.fillWidth: true
+ onClicked: root.close()
+ }
+ ]
+ }
+}
diff --git a/atomic_defi_design/Dex/Components/MultipageModalContent.qml b/atomic_defi_design/Dex/Components/MultipageModalContent.qml
index 31f4d6233d..fa900230ff 100644
--- a/atomic_defi_design/Dex/Components/MultipageModalContent.qml
+++ b/atomic_defi_design/Dex/Components/MultipageModalContent.qml
@@ -3,6 +3,7 @@ import QtQuick.Layouts 1.15
import "../Constants"
import App 1.0
+import Dex.Themes 1.0 as Dex
ColumnLayout
{
@@ -10,7 +11,10 @@ ColumnLayout
property alias title: _title
property alias titleText: _title.text
+ property alias subtitle: _subtitle
+ property alias subtitleText: _subtitle.text
property var titleAlignment: Qt.AlignLeft
+ property var subtitleAlignment: Qt.AlignLeft
property int titleTopMargin: 20
property int topMarginAfterTitle: 30
@@ -35,6 +39,16 @@ ColumnLayout
visible: text != ''
}
+ DefaultText
+ {
+ id: _subtitle
+ Layout.topMargin: 5
+ Layout.alignment: root.subtitleAlignment
+ color: Dex.CurrentTheme.foregroundColor2
+ font.pixelSize: 13
+ visible: text != ''
+ }
+
// Header
ColumnLayout
diff --git a/atomic_defi_design/Dex/Components/PairItemBadge.qml b/atomic_defi_design/Dex/Components/PairItemBadge.qml
index d109a7dd23..98da7d1197 100644
--- a/atomic_defi_design/Dex/Components/PairItemBadge.qml
+++ b/atomic_defi_design/Dex/Components/PairItemBadge.qml
@@ -1,13 +1,15 @@
import QtQuick 2.15
import QtQuick.Layouts 1.15
+import bignumberjs 1.0
+
DefaultRectangle
{
id: root
- property alias source: icon.source
- property alias ticker: ticker.text
- property alias fullname: fullname.text
- property alias amount: amount.text
+ property alias source: icon.source
+ property alias ticker: ticker.text
+ property alias fullname: fullname.text
+ property string amount
width: 260
height: 66
@@ -51,11 +53,15 @@ DefaultRectangle
DefaultText
{
- id: amount
Layout.fillWidth: true
font.pixelSize: 11
horizontalAlignment: Text.AlignLeft
wrapMode: Text.NoWrap
+ text:
+ {
+ BigNumber.config({ DECIMAL_PLACES: 6 })
+ return new BigNumber(root.amount).toString(10)
+ }
}
}
@@ -91,4 +97,4 @@ DefaultRectangle
Item { Layout.fillWidth: true }
}
-}
\ No newline at end of file
+}
diff --git a/atomic_defi_design/Dex/Components/PasswordField.qml b/atomic_defi_design/Dex/Components/PasswordField.qml
index a1cc503c18..163d44ac01 100644
--- a/atomic_defi_design/Dex/Components/PasswordField.qml
+++ b/atomic_defi_design/Dex/Components/PasswordField.qml
@@ -7,6 +7,7 @@ import App 1.0
ColumnLayout {
property alias title: pw.title
property alias field: pw.field
+ property int max_pw_len: General.max_std_pw_length
property bool hide_hint: false
property bool new_password: true
property string match_password
@@ -58,6 +59,7 @@ ColumnLayout {
title: qsTr("Password")
field.placeholderText: qsTr("Enter your wallet password")
field.validator: RegExpValidator { regExp: General.reg_pass_input }
+ max_length: max_pw_len
}
ColumnLayout {
@@ -92,7 +94,7 @@ ColumnLayout {
}
DefaultText {
font.pixelSize: Style.textSizeSmall3
- text_value: hintPrefix(hasEnoughCharacters()) + qsTr("At least %n character(s)", "", high_security ? 16 : 1)
+ text_value: hintPrefix(hasEnoughCharacters()) + qsTr("Between %1 and %2 character(s)").arg(high_security ? 16 : 1).arg(max_pw_len)
color: hintColor(hasEnoughCharacters())
}
DefaultText {
diff --git a/atomic_defi_design/Dex/Components/PopupManager.qml b/atomic_defi_design/Dex/Components/PopupManager.qml
index 314dbf1406..8d2a3d7f66 100644
--- a/atomic_defi_design/Dex/Components/PopupManager.qml
+++ b/atomic_defi_design/Dex/Components/PopupManager.qml
@@ -4,6 +4,7 @@ import Qaterial 1.0 as Qaterial
import QtQuick.Layouts 1.12
import App 1.0
import Dex.Themes 1.0 as Dex
+import "../Constants"
Popup
{
@@ -11,7 +12,7 @@ Popup
id: dialog
width: 420
- height: _insideColumn.height > dialog.height ? _insideColumn.height + 82 : dialog.height
+ height: _insideColumn.height > dialog.height ? _insideColumn.height + 82 : dialog.height
dim: true
modal: true
anchors.centerIn: Overlay.overlay
@@ -54,6 +55,7 @@ Popup
property int standardButtons: Dialog.NoButton
property string yesButtonText: ""
property string cancelButtonText: ""
+ property bool showCancelBtn: true
property bool getText: false
property bool isPassword: false
property bool centerAlign: false
@@ -160,6 +162,7 @@ Popup
placeholderText: dialog.placeholderText
field.placeholderText: ""
field.forceFocus: forceFocus
+ max_length: dialog.isPassword ? General.max_std_pw_length : 40
field.rightPadding: dialog.isPassword ? 55 : 20
field.leftPadding: dialog.isPassword ? 70 : 20
field.echoMode: dialog.isPassword ? TextField.Password : TextField.Normal
@@ -254,6 +257,7 @@ Popup
DexAppButton
{
id: cancelBtn
+ visible: showCancelBtn
text: dialog.cancelButtonText !== "" ? dialog.cancelButtonText : "Cancel"
height: 40
leftPadding: 20
@@ -273,7 +277,7 @@ Popup
{
text: dialog.yesButtonText !== "" ? dialog.yesButtonText : "Yes"
height: 40
- width: cancelBtn.width
+ width: showCancelBtn ? cancelBtn.width : 90
leftPadding: 20
rightPadding: 20
radius: 18
diff --git a/atomic_defi_design/Dex/Components/TextEditWithCopy.qml b/atomic_defi_design/Dex/Components/TextEditWithCopy.qml
new file mode 100644
index 0000000000..859be3bc4b
--- /dev/null
+++ b/atomic_defi_design/Dex/Components/TextEditWithCopy.qml
@@ -0,0 +1,84 @@
+import QtQuick 2.15
+import QtQuick.Layouts 1.15
+import "../Constants"
+import "../Components"
+import App 1.0
+import Dex.Themes 1.0 as Dex
+import Dex.Components 1.0 as Dex
+
+RowLayout
+{
+ id: control
+ property string text_value: ""
+ property int font_size: Style.textSize
+ property int text_box_width: 500
+ property bool privacy: false
+ property bool align_left: false
+ property string linkURL: ""
+ property string onCopyNotificationTitle: ""
+ property string onCopyNotificationMsg: qsTr("copied to clipboard")
+ Layout.fillWidth: true
+
+ Item { Layout.fillWidth: !align_left }
+
+ Dex.Rectangle
+ {
+ width: text_box_width
+ height: 30
+ color: Dex.CurrentTheme.buttonColorEnabled
+
+ RowLayout
+ {
+ spacing: 4
+ anchors.fill: parent
+ anchors.verticalCenter: parent.verticalCenter
+ anchors.horizontalCenter: !align_left ? parent.horizontalCenter : undefined
+
+ Item { width: 6 }
+
+ TextEdit
+ {
+ font.family: Style.font_family
+ font.pixelSize: font_size
+ text: privacy && General.privacy_mode ? General.privacy_text : text_value
+ wrapMode: Text.WordWrap
+ selectByMouse: true
+ readOnly: true
+
+ selectedTextColor: DexTheme.textSelectedColor
+ selectionColor: DexTheme.textSelectionColor
+ color: DexTheme.foregroundColor
+ }
+
+ Item { Layout.fillWidth: true }
+
+ DefaultCopyIcon
+ {
+ id: copy_icon
+ visible: control.onCopyNotificationTitle !== ""
+ copyText: control.text_value
+ notifyTitle: control.onCopyNotificationTitle
+ notifyMsg: control.onCopyNotificationMsg
+ iconSize: font_size
+ }
+
+ DefaultLinkIcon
+ {
+ visible: control.linkURL !== ""
+ linkURL: control.linkURL
+ iconSize: font_size
+ }
+
+ Item { width: 6 }
+ }
+
+ DefaultMouseArea
+ {
+ anchors.fill: parent
+ cursorShape: parent.hoveredLink ? Qt.PointingHandCursor : Qt.ArrowCursor
+ acceptedButtons: Qt.NoButton
+ }
+ }
+
+ Item { Layout.fillWidth: true }
+}
\ No newline at end of file
diff --git a/atomic_defi_design/Dex/Components/TextEditWithTitle.qml b/atomic_defi_design/Dex/Components/TextEditWithTitle.qml
index 463992a3b8..93a0eba3c6 100644
--- a/atomic_defi_design/Dex/Components/TextEditWithTitle.qml
+++ b/atomic_defi_design/Dex/Components/TextEditWithTitle.qml
@@ -36,7 +36,7 @@ ComponentWithTitle
opacity: show_content ? 1 : 0
wrapMode: Text.WordWrap
monospace: control.monospace
-
+ rightPadding: 5
Behavior on opacity { SmoothedAnimation { duration: expand_animation.duration; velocity: -1 } }
Behavior on Layout.preferredHeight { SmoothedAnimation { id: expand_animation; duration: Constants.Style.animationDuration * 2; velocity: -1 } }
}
@@ -48,7 +48,6 @@ ComponentWithTitle
copyText: control.text
notifyTitle: control.onCopyNotificationTitle
notifyMsg: control.onCopyNotificationMsg
- x: _text.width + 10
iconSize: 14
}
@@ -56,7 +55,7 @@ ComponentWithTitle
{
visible: control.linkURL !== ""
linkURL: control.linkURL
- x: copyIcon.visible ? _text.width + 10 : _text.width + 16
+ x: copyIcon.visible ? _text.width + 18 : _text.width + 28
iconSize: 14
}
diff --git a/atomic_defi_design/Dex/Components/TextFieldWithTitle.qml b/atomic_defi_design/Dex/Components/TextFieldWithTitle.qml
index 0ee1d04381..e0bd8aae3f 100644
--- a/atomic_defi_design/Dex/Components/TextFieldWithTitle.qml
+++ b/atomic_defi_design/Dex/Components/TextFieldWithTitle.qml
@@ -19,6 +19,8 @@ ColumnLayout
property alias title: title_text.text
property alias field: input_field
+ property alias max_length: input_field.maximumLength
+
property alias hide_button: hide_button
property alias hide_button_area: hide_button.mouseArea
diff --git a/atomic_defi_design/Dex/Components/Widget.qml b/atomic_defi_design/Dex/Components/Widget.qml
index 034855730c..6b6c01c908 100644
--- a/atomic_defi_design/Dex/Components/Widget.qml
+++ b/atomic_defi_design/Dex/Components/Widget.qml
@@ -14,7 +14,9 @@ Item
property string title: "Widget"
property bool collapsable: true
- property bool collapsedAtConstruction: false
+ property bool collapsed: false
+
+ property bool resizable: true
property alias header: headerLoader.sourceComponent
property alias background: backgroundLoader.sourceComponent
@@ -23,11 +25,16 @@ Item
property int spacing: 10
property int contentSpacing: 10
+ property int collapsedHeight: 70
+ property int minHeight: collapsedHeight
+ property int maxHeight: -1
+ property int _previousHeight
+
default property alias contentData: content.data
- property bool _collapsed: collapsable && collapsedAtConstruction
+ function isCollapsed() { return collapsed }
- function isCollapsed() { return _collapsed }
+ clip: true
// Background
Loader
@@ -37,8 +44,11 @@ Item
sourceComponent: defaultBackground
}
+ // Header + Content
Column
{
+ id: column
+
anchors.fill: parent
anchors.margins: root.margins
@@ -57,7 +67,7 @@ Item
{
id: content
- visible: !root._collapsed
+ visible: !root.collapsed
width: parent.width
height: parent.height - y
@@ -66,6 +76,37 @@ Item
}
}
+ // Resize area
+ MouseArea
+ {
+ enabled: resizable && !collapsed
+ visible: enabled
+
+ anchors.bottom: root.bottom
+ width: root.width
+ height: 5
+
+ cursorShape: Qt.SizeVerCursor
+
+ onMouseYChanged:
+ {
+ if (root.parent.objectName === "widgetContainer")
+ {
+ if (root.parent.availableHeight === 0 && mouseY > 0)
+ return
+ if (root.parent.availableHeight && root.parent.availableHeight < mouseY)
+ root.height += root.parent.availableHeight
+ else
+ root.height += mouseY
+ }
+
+ if (root.maxHeight >= 0 && root.height > root.maxHeight)
+ root.height = root.maxHeight
+ else if (root.minHeight >= 0 && root.height < root.minHeight)
+ root.height = root.minHeight
+ }
+ }
+
// Header Component
Component
{
@@ -81,14 +122,42 @@ Item
width: 20
height: 20
color: collapseButMouseArea.containsMouse ? Dex.CurrentTheme.foregroundColor2 : Dex.CurrentTheme.foregroundColor
- icon: root._collapsed ? Qaterial.Icons.chevronUp : Qaterial.Icons.chevronDown
+ icon: root.collapsed ? Qaterial.Icons.chevronUp : Qaterial.Icons.chevronDown
DefaultMouseArea
{
id: collapseButMouseArea
anchors.fill: parent
hoverEnabled: true
- onClicked: root._collapsed = !root._collapsed
+ onClicked:
+ {
+ let oldHeight = root.height
+ root.collapsed = !root.collapsed
+ if (root.collapsed)
+ {
+ root._previousHeight = root.height
+ root.height = root.collapsedHeight
+ }
+ else
+ {
+ if (root.parent.objectName === "widgetContainer" && root.parent.availableHeight < root._previousHeight)
+ {
+ if (root.height + root.parent.availableHeight < minHeight)
+ {
+ root.parent.resetSizes()
+ }
+ else
+ {
+ root.height += root.parent.availableHeight
+ }
+ }
+ else
+ {
+ root.height = root._previousHeight
+ }
+ root._previousHeight = root.collapsedHeight
+ }
+ }
}
}
}
diff --git a/atomic_defi_design/Dex/Components/WidgetContainer.qml b/atomic_defi_design/Dex/Components/WidgetContainer.qml
new file mode 100644
index 0000000000..98326b427f
--- /dev/null
+++ b/atomic_defi_design/Dex/Components/WidgetContainer.qml
@@ -0,0 +1,24 @@
+import QtQuick 2.12
+
+Column
+{
+ readonly property string componentName: "widgetContainer"
+ readonly property int availableHeight: height - (childrenRect.height + (children.length - 1) * spacing)
+
+ function getHeight(ratio)
+ {
+ return (height - (children.length - 1) * spacing) * ratio
+ }
+
+ function resetSizes()
+ {
+ for (let i = 0; i < children.length; i++)
+ {
+ let child = children[i]
+ child.height = child.minHeight
+ }
+ }
+
+ spacing: 4
+ objectName: componentName
+}
diff --git a/atomic_defi_design/Dex/Components/ZcashParamsModal.qml b/atomic_defi_design/Dex/Components/ZcashParamsModal.qml
new file mode 100644
index 0000000000..c32d414c4c
--- /dev/null
+++ b/atomic_defi_design/Dex/Components/ZcashParamsModal.qml
@@ -0,0 +1,125 @@
+// Qt Imports
+import QtQuick 2.15
+import QtQuick.Layouts 1.15
+import QtQuick.Controls 2.15
+
+// Project Imports
+import "../Constants" as Dex
+import "../Components" as Dex
+import App 1.0
+
+Dex.MultipageModal
+{
+ id: root
+ readonly property var coins: API.app.zcash_params.get_enable_after_download()
+ width: 750
+ closePolicy: Popup.NoAutoClose
+
+ // Inside modal
+ Dex.MultipageModalContent
+ {
+ titleText: qsTr("%1 Activation Failed!").arg(coins.join(' / '))
+
+ Dex.DefaultText
+ {
+ Layout.fillWidth: true
+ text: qsTr("To activate ZHTLC coins, you need to download the Zcash Params.\nThis might take a few minutes...")
+ }
+
+ HorizontalLine
+ {
+ Layout.topMargin: 8
+ Layout.bottomMargin: 8
+ Layout.fillWidth: true
+ }
+
+ ColumnLayout
+ {
+ Dex.DefaultProgressBar
+ {
+ id: sapling_output_params
+ label.text: "sapling-output.params"
+ bar_width_pct: 0
+ pct_value.text: "0.00 %"
+ }
+ Dex.DefaultProgressBar
+ {
+ id: sapling_spend_params
+ label.text: "sapling-spend.params"
+ bar_width_pct: 0
+ pct_value.text: "0.00 %"
+ }
+ }
+
+ HorizontalLine
+ {
+ Layout.topMargin: 8
+ Layout.bottomMargin: 8
+ Layout.fillWidth: true
+ }
+
+ footer:
+ [
+ Item { Layout.fillWidth: true },
+ Dex.DefaultButton
+ {
+ id: download_button
+ text: qsTr("Download params & enable coins")
+ enabled: !sapling_output_params.bar_width_pct > 0 || !sapling_spend_params.bar_width_pct > 0
+ onClicked: {
+ download_button.enabled = false
+ Dex.API.app.zcash_params.download_zcash_params()
+ }
+ },
+ Item { Layout.fillWidth: true },
+ Dex.DefaultButton
+ {
+ text: qsTr("More Info")
+ onClicked: Qt.openUrlExternally("https://www.coinbureau.com/education/zcash-ceremony/")
+ },
+ Item { Layout.fillWidth: true },
+ Dex.DefaultButton
+ {
+ text: qsTr("Close")
+ onClicked: close()
+ },
+ Item { Layout.fillWidth: true }
+ ]
+
+ Connections
+ {
+ target: Dex.API.app.zcash_params
+
+ // todo: can be improved.
+ // put it maybe in the backend ?
+ function onCombinedDownloadStatusChanged()
+ {
+ let combined_progress = 0
+ let data = JSON.parse(Dex.API.app.zcash_params.get_combined_download_progress())
+ for (let k in data)
+ {
+ let v = data[k];
+ let pct = Dex.General.formatDouble(v * 100, 2)
+ combined_progress += parseFloat(v)/Object.keys(data).length
+ switch(k)
+ {
+ case "sapling-output.params":
+ sapling_output_params.bar_width_pct = pct
+ sapling_output_params.pct_value.text = pct + "%"
+ break
+ case "sapling-spend.params":
+ sapling_spend_params.bar_width_pct = pct
+ sapling_spend_params.pct_value.text = pct + "%"
+ break
+ }
+ console.log(combined_progress)
+ if (combined_progress == 1)
+ {
+ console.log("closing")
+ root.close()
+ }
+ }
+ }
+ }
+ }
+}
diff --git a/atomic_defi_design/Dex/Constants/DexTypo.qml b/atomic_defi_design/Dex/Constants/DexTypo.qml
index b96093de35..55f4e4c55e 100644
--- a/atomic_defi_design/Dex/Constants/DexTypo.qml
+++ b/atomic_defi_design/Dex/Constants/DexTypo.qml
@@ -99,6 +99,25 @@ QtObject {
family: fontFamily,
weight: Font.Normal
})
+ property font body3: Qt.font({
+ pixelSize: 12 * fontDensity,
+ letterSpacing: 0.25,
+ family: fontFamily,
+ weight: Font.Normal
+ })
+ property font body4: Qt.font({
+ pixelSize: 11 * fontDensity,
+ letterSpacing: 0.2,
+ family: fontFamily,
+ weight: Font.Normal
+ })
+ property font underline14: Qt.font({
+ pixelSize: 14 * fontDensity,
+ letterSpacing: 0.25,
+ family: fontFamily,
+ weight: Font.Normal,
+ underline: true
+ })
property font button: Qt.font({
pixelSize: 16 * fontDensity,
letterSpacing: 1.25,
diff --git a/atomic_defi_design/Dex/Constants/General.qml b/atomic_defi_design/Dex/Constants/General.qml
index c75cc53bad..feabbc00bb 100644
--- a/atomic_defi_design/Dex/Constants/General.qml
+++ b/atomic_defi_design/Dex/Constants/General.qml
@@ -8,6 +8,9 @@ QtObject {
readonly property int height: 800
readonly property int minimumWidth: 1280
readonly property int minimumHeight: 800
+ readonly property int max_camo_pw_length: 256
+ readonly property int max_std_pw_length: 256
+ readonly property int max_pw_length: max_std_pw_length + max_camo_pw_length
readonly property double delta_time: 1000/60
readonly property string os_file_prefix: Qt.platform.os == "windows" ? "file:///" : "file://"
@@ -19,7 +22,7 @@ QtObject {
function coinIcon(ticker)
{
- if (ticker === "" || ticker === "All" || ticker===undefined )
+ if (ticker === "" || ticker === "All" || ticker===undefined)
{
return ""
}
@@ -43,6 +46,70 @@ QtObject {
}
}
+ function canSend(ticker, progress=100)
+ {
+ if (!API.app.wallet_pg.send_available) return false
+ if (isZhtlc(ticker) && progress < 100) return false
+ return true
+ }
+
+ function isWalletOnly(ticker)
+ {
+ return API.app.portfolio_pg.global_cfg_mdl.get_coin_info(ticker).is_wallet_only
+ }
+
+ function isZhtlc(ticker)
+ {
+ const coin_info = API.app.portfolio_pg.global_cfg_mdl.get_coin_info(ticker)
+ return coin_info.is_zhtlc_family
+ }
+
+ function isZhtlcReady(ticker, progress=100)
+ {
+ if (progress == 100) return true
+ const coin_info = API.app.portfolio_pg.global_cfg_mdl.get_coin_info(ticker)
+ if (!coin_info.is_zhtlc_family) return true
+ console.log("Progress: " + progress)
+ return false
+ }
+
+ function zhtlcActivationProgress(activation_status, coin='ARRR')
+ {
+ let progress = 100
+ if (!activation_status.hasOwnProperty("result")) return progress
+ let status = activation_status.result.status
+ let details = activation_status.result.details
+
+ let block_offset = 0
+ if (coin == 'ARRR') block_offset = 1900000
+
+ // use range from checkpoint block to present
+ if (status == "Ready")
+ {
+ if (details.hasOwnProperty("error"))
+ console.log("[zhtlcActivationProgress] Error enabling: " + JSON.stringify(details.error))
+ }
+ else if (status == "InProgress")
+ {
+ if (details.hasOwnProperty("UpdatingBlocksCache"))
+ {
+ let n = details.UpdatingBlocksCache.current_scanned_block - block_offset
+ let d = details.UpdatingBlocksCache.latest_block - block_offset
+ progress = 5 + parseInt(n/d*15)
+ }
+ else if (details.hasOwnProperty("BuildingWalletDb"))
+ {
+ let n = details.BuildingWalletDb.current_scanned_block - block_offset
+ let d = details.BuildingWalletDb.latest_block - block_offset
+ progress = 20 + parseInt(n/d*80)
+ }
+ else if (details.hasOwnProperty("RequestingBalance")) progress = 98
+ else progress = 5
+ }
+ else console.log("[zhtlcActivationProgress] Unexpected status: " + status)
+ return progress
+ }
+
function getNomicsId(ticker) {
if(ticker === "" || ticker === "All" || ticker===undefined) {
return ""
@@ -284,6 +351,19 @@ QtObject {
return obj
}
+ function getCustomFeeType(ticker_infos)
+ {
+ if (["SLP", "ZHTLC", "Moonbeam", "QRC-20"].includes(ticker_infos.type)) return ""
+ if (!General.isSpecialToken(ticker_infos) && !General.isParentCoin(ticker_infos.ticker) || ["KMD"].includes(ticker_infos.ticker))
+ {
+ return "UTXO"
+ }
+ else
+ {
+ return "Gas"
+ }
+ }
+
function getFeesDetail(fees) {
return [
{"label": qsTr("Taker tx fee: "), "fee": fees.base_transaction_fees, "ticker": fees.base_transaction_fees_ticker},
@@ -325,18 +405,28 @@ QtObject {
return JSON.stringify(j_obj, null, 4)
}
+ function addressTxUri(coin_info) {
+ if (coin_info.tx_uri == "") return "address/"
+ return coin_info.address_uri
+ }
+
+ function getTxUri(coin_info) {
+ if (coin_info.tx_uri == "") return "tx/"
+ return coin_info.tx_uri
+ }
+
function getTxExplorerURL(ticker, txid, add_0x=true) {
if(txid !== '') {
const coin_info = API.app.portfolio_pg.global_cfg_mdl.get_coin_info(ticker)
const txid_prefix = (add_0x && coin_info.is_erc_family) ? '0x' : ''
- return coin_info.explorer_url + coin_info.tx_uri + txid_prefix + txid
+ return coin_info.explorer_url + getTxUri(coin_info) + txid_prefix + txid
}
}
function getAddressExplorerURL(ticker, address) {
if(address !== '') {
const coin_info = API.app.portfolio_pg.global_cfg_mdl.get_coin_info(ticker)
- return coin_info.explorer_url + coin_info.address_uri + address
+ return coin_info.explorer_url + addressTxUri(coin_info) + address
}
return ""
}
@@ -505,32 +595,62 @@ QtObject {
return exists(v) && v !== ""
}
- function isParentCoinNeeded(ticker, type) {
- for(const c of API.app.portfolio_pg.get_all_enabled_coins())
- if(c.type === type && c.ticker !== ticker) return true
-
+ function isParentCoinNeeded(ticker, coin_type)
+ {
+ let enabled_coins = API.app.portfolio_pg.get_all_enabled_coins()
+ for (const coin of enabled_coins)
+ {
+ let c_info = API.app.portfolio_pg.global_cfg_mdl.get_coin_info(coin)
+ if(c_info.type === coin_type && c_info.ticker !== ticker) return true
+ }
return false
}
property Timer prevent_coin_disabling: Timer { interval: 5000 }
function canDisable(ticker) {
- if(prevent_coin_disabling.running)
- return false
-
- if(ticker === atomic_app_primary_coin || ticker === atomic_app_secondary_coin) return false
- else if(ticker === "ETH") return !General.isParentCoinNeeded("ETH", "ERC-20")
- else if(ticker === "QTUM") return !General.isParentCoinNeeded("QTUM", "QRC-20")
+ if (prevent_coin_disabling.running) return false
+ if (ticker === atomic_app_primary_coin || ticker === atomic_app_secondary_coin) return false
+ if (ticker === "ETH") return !General.isParentCoinNeeded("ETH", "ERC-20")
+ if (ticker === "MATIC") return !General.isParentCoinNeeded("MATIC", "Matic")
+ if (ticker === "FTM") return !General.isParentCoinNeeded("FTM", "FTM-20")
+ if (ticker === "AVAX") return !General.isParentCoinNeeded("AVAX", "AVX-20")
+ if (ticker === "BNB") return !General.isParentCoinNeeded("BNB", "BEP-20")
+ if (ticker === "ONE") return !General.isParentCoinNeeded("ONE", "HRC-20")
+ if (ticker === "QTUM") return !General.isParentCoinNeeded("QTUM", "QRC-20")
+ if (ticker === "KCS") return !General.isParentCoinNeeded("KCS", "KRC-20")
+ if (ticker === "HT") return !General.isParentCoinNeeded("HT", "HecoChain")
+ if (ticker === "BCH") return !General.isParentCoinNeeded("BCH", "SLP")
+ if (ticker === "UBQ") return !General.isParentCoinNeeded("UBQ", "Ubiq")
+ if (ticker === "MOVR") return !General.isParentCoinNeeded("MOVR", "Moonriver")
+ if (ticker === "GLMR") return !General.isParentCoinNeeded("GLMR", "Moonbeam")
+ if (General.isZhtlc(ticker))
+ {
+ let progress = General.zhtlcActivationProgress(API.app.wallet_pg.ticker_infos.activation_status, ticker)
+ if (progress != 100) return false
+ }
return true
}
- function tokenUnitName(type) {
+ function tokenUnitName(type)
+ {
return type === "QRC-20" ? "Satoshi" : "Gwei"
}
+ function isSpecialToken(current_ticker_infos)
+ {
+ if (current_ticker_infos.hasOwnProperty("has_parent_fees_ticker"))
+ return current_ticker_infos.has_parent_fees_ticker
+ return false
+ }
+
+ function isERC20(current_ticker_infos) {
+ return current_ticker_infos.type === "ERC-20" || current_ticker_infos.type === "BEP-20" || current_ticker_infos.type == "Matic"
+ }
+
function isParentCoin(ticker) {
- return ["KMD", "ETH", "MATIC", "AVAX", "FTM", "QTUM"].includes(ticker)
+ return ["KMD", "ETH", "MATIC", "AVAX", "FTM", "QTUM", "BNB", "ONE", "KCS"].includes(ticker)
}
function isTokenType(type) {
@@ -544,6 +664,9 @@ QtObject {
function getParentCoin(type) {
if(type === "ERC-20") return "ETH"
+ else if(type === "PLG-20") return "MATIC"
+ else if(type === "AVX-20") return "AVAX"
+ else if(type === "FTM-20") return "FTM"
else if(type === "QRC-20") return "QTUM"
else if(type === "Smart Chain") return "KMD"
return "?"
@@ -577,6 +700,15 @@ QtObject {
return tx_fee + "\n" + trading_fee +"
"+minimum_amount
}
+ function is_swap_safe(checkbox)
+ {
+ if (checkbox.checked == true || checkbox.visible == false)
+ {
+ return (!API.app.trading_pg.buy_sell_rpc_busy && API.app.trading_pg.last_trading_error == TradingError.None)
+ }
+ return false
+ }
+
function validateWallet(wallet_name) {
if (wallet_name.length >= 25) return "Wallet name must 25 chars or less"
return checkIfWalletExists(wallet_name)
@@ -643,7 +775,8 @@ QtObject {
+")")
}
- function checkIfWalletExists(name) {
+ function checkIfWalletExists(name)
+ {
if(API.app.wallet_mgr.get_wallets().indexOf(name) !== -1)
return qsTr("Wallet %1 already exists", "WALLETNAME").arg(name)
return ""
@@ -661,6 +794,10 @@ QtObject {
return qsTr("Please fill the price field")
case TradingError.VolumeFieldNotFilled:
return qsTr("Please fill the volume field")
+ case TradingError.LeftZhtlcChainNotEnabled:
+ return qsTr("Please wait for %1 to fully activate").arg(left_ticker)
+ case TradingError.RightZhtlcChainNotEnabled:
+ return qsTr("Please wait for %1 to fully activate").arg(right_ticker)
case TradingError.VolumeIsLowerThanTheMinimum:
return qsTr("%1 volume is lower than minimum trade amount").arg(API.app.trading_pg.market_pairs_mdl.left_selected_coin) + " : " + General.getMinTradeAmount()
case TradingError.ReceiveVolumeIsLowerThanTheMinimum:
@@ -678,6 +815,11 @@ QtObject {
}
}
+ readonly property var zcash_params_filesize: ({
+ "sapling-output.params": 3592860,
+ "sapling-spend.params": 47958396
+ })
+
readonly property var supported_pairs: ({
"1INCH/BTC": "BINANCE:1INCHBTC",
"1INCH/ETH": "HUOBI:1INCHETH",
diff --git a/atomic_defi_design/Dex/Constants/Style.qml b/atomic_defi_design/Dex/Constants/Style.qml
index a99678c496..993f701f67 100644
--- a/atomic_defi_design/Dex/Constants/Style.qml
+++ b/atomic_defi_design/Dex/Constants/Style.qml
@@ -185,6 +185,7 @@ QtObject {
switch (type)
{
case 'ERC-20': return getCoinColor("ETH")
+ case 'ZHTLC': return getCoinColor("ARRR")
case 'QRC-20': return getCoinColor("QTUM")
case 'Smart Chain': return getCoinColor("KMD")
case 'WALLET ONLY': return "#4D4D4D"
@@ -237,6 +238,7 @@ QtObject {
"AUR": "#0A6C5E",
"AVA": "#5B567F",
"AVAX": "#E84142",
+ "AVN": "#33E0CE",
"AXS": "#0055D5",
"BAL": "#4D4D4D",
"BNB": "#F9D987",
@@ -267,13 +269,17 @@ QtObject {
"GALA": "#011B36",
"GLEEC": "#8C41FF",
"GRMS": "#12B690",
+ "GLM": "#0050E6",
"GMS": "#0BFBE2",
"GMT": "#E9CB7B",
+ "GMX": "#07A9E6",
"GRS": "#377E96",
"GRT": "#6E54DB",
"GST": "#D7D7D7",
"IOTA": "#404040",
+ "ILNF": "#28873b",
"IC": "#72009D",
+ "JST": "#B41514",
"JSTR": "#627EEA",
"DOGE": "#C3A634",
"ETC": "#328432",
@@ -297,6 +303,8 @@ QtObject {
"FLUX": "#2B61D1",
"FIRO": "#BB2100",
"LBC": "#00775C",
+ "LDO": "#F69988",
+ "LOOM": "#48BEFF",
"LTC": "#BFBBBB",
"LUNA": "#FFD83D",
"LYNX": "#0071BA",
@@ -320,6 +328,7 @@ QtObject {
"CRYPTO": "#F58736",
"LABS": "#C1F6E1",
"LCC": "#068210",
+ "LNC": "#C3A635",
"MESH": "#0098DA",
"MGW": "#854F2F",
"MONA": "#DEC799",
@@ -329,7 +338,9 @@ QtObject {
"NZDS": "#1B3044",
"RFOX": "#D83331",
"BOTS": "#F69B57",
+ "MC": "#E16428",
"MCL": "#EA0000",
+ "ILNSW": "#28873B",
"MM": "#F5B700",
"CCL": "#FFE400",
"BET": "#F69B57",
@@ -379,6 +390,7 @@ QtObject {
"CEL": "#4055A6",
"CELR": "#595959",
"CENNZ": "#2E87F1",
+ "CHTA": "#C3A634",
"COMP": "#00DBA3",
"CRO": "#243565",
"CVC": "#3AB03E",
@@ -408,6 +420,7 @@ QtObject {
"MKR": "#1BAF9F",
"MINDS": "#687DE3",
"NEAR": "#595959",
+ "NENG": "#BFBBBB",
"NEXO": "#A3B3D6",
"NVC": "#FCF96D",
"NYAN": "#008CE7",
@@ -441,6 +454,7 @@ QtObject {
"SYS": "#0084C7",
"TEL": "#1BD8FF",
"TKL": "#536E93",
+ "TON": "#0088CC",
"TRC": "#096432",
"TRX": "#F30031",
"TSL": "#64B082",
@@ -451,10 +465,12 @@ QtObject {
"VET": "#18C6FF",
"VITE": "#007AFF",
"VRM": "#586A7A",
+ "VTC": "#049161",
"WSB": "#FEBB84",
"WAVES": "#016BFF",
"WBTC": "#CCCCCC",
"WHIVE": "#FFCC00",
+ "WOO": "#595959",
"XEC": "#273498",
"XEP": "#0277E5",
"XLM": "#737373",
@@ -468,6 +484,7 @@ QtObject {
"YFII": "#FF2A79",
"ZET": "#155169",
"ZIL": "#42BBB9",
+ "ZOMBIE": "#72B001",
"ZRX": "#302C2C",
"UNI": "#FF007A",
"VOTE2022": "#7490AA",
diff --git a/atomic_defi_design/Dex/Dashboard/NotificationsModal.qml b/atomic_defi_design/Dex/Dashboard/NotificationsModal.qml
index 0473fda9ed..014c27d9ad 100644
--- a/atomic_defi_design/Dex/Dashboard/NotificationsModal.qml
+++ b/atomic_defi_design/Dex/Dashboard/NotificationsModal.qml
@@ -3,6 +3,7 @@ import QtQuick.Layouts 1.15
import QtQuick.Controls 2.15
import Qt.labs.platform 1.0
import Qaterial 1.0 as Qaterial
+import ModelHelper 0.1
import Dex.Themes 1.0 as Dex
@@ -14,6 +15,7 @@ import "../Screens"
DexPopup
{
id: root
+ property var orders: API.app.orders_mdl.orders_proxy_mdl.ModelHelper
width: 406
height: 526
@@ -240,6 +242,8 @@ DexPopup
const change = General.formatFullCrypto("", amount, ticker, "", "", true)
if (!app.segwit_on)
{
+ if (amount != 0)
+ {
newNotification("onBalanceUpdateStatus",
{
am_i_sender,
@@ -253,6 +257,7 @@ DexPopup
qsTr("Your wallet balance changed"),
human_date,
"open_wallet_page")
+ }
}
else
{
@@ -260,6 +265,32 @@ DexPopup
}
}
+ function onEnablingZCoinStatus(coin, msg, human_date, timestamp)
+ {
+ // Ignore if coin already enabled (e.g. parent chain in batch)
+ if (msg.search("already initialized") > -1)
+ {
+ console.trace()
+ return
+ }
+
+ // Display the notification
+ const title = qsTr(" %1 Enable status", "TICKER").arg(coin)
+
+ newNotification("onEnablingZCoinStatus",
+ {
+ coin,
+ human_date,
+ timestamp
+ },
+ timestamp,
+ title,
+ msg,
+ human_date,
+ "open_log_modal",
+ msg)
+ }
+
readonly property string check_internet_connection_text: qsTr("Please check your internet connection (e.g. VPN service or firewall might block it).")
function onEnablingCoinFailedStatus(coin, error, human_date, timestamp)
{
@@ -302,6 +333,25 @@ DexPopup
toast.show(title, General.time_toast_important_error, error)
}
+ function onDisablingCoinFailedStatus(coin, error, human_date, timestamp)
+ {
+ const title = qsTr("Failed to disable %1", "TICKER").arg(coin)
+
+ newNotification("onDisablingCoinFailedStatus",
+ {
+ coin,
+ error,
+ human_date,
+ timestamp
+ },
+ timestamp,
+ title,
+ human_date,
+ "open_log_modal",
+ error)
+ toast.show(title, General.time_toast_important_error, error)
+ }
+
function onEndpointNonReacheableStatus(base_uri, human_date, timestamp)
{
const title = qsTr("Endpoint not reachable")
@@ -364,7 +414,9 @@ DexPopup
{
API.app.notification_mgr.updateSwapStatus.connect(onUpdateSwapStatus)
API.app.notification_mgr.balanceUpdateStatus.connect(onBalanceUpdateStatus)
+ API.app.notification_mgr.enablingZCoinStatus.connect(onEnablingZCoinStatus)
API.app.notification_mgr.enablingCoinFailedStatus.connect(onEnablingCoinFailedStatus)
+ API.app.notification_mgr.disablingCoinFailedStatus.connect(onDisablingCoinFailedStatus)
API.app.notification_mgr.endpointNonReacheableStatus.connect(onEndpointNonReacheableStatus)
API.app.notification_mgr.mismatchCustomCoinConfiguration.connect(onMismatchCustomCoinConfiguration)
API.app.notification_mgr.batchFailed.connect(onBatchFailed)
@@ -373,7 +425,9 @@ DexPopup
{
API.app.notification_mgr.updateSwapStatus.disconnect(onUpdateSwapStatus)
API.app.notification_mgr.balanceUpdateStatus.disconnect(onBalanceUpdateStatus)
+ API.app.notification_mgr.enablingZCoinStatus.disconnect(onEnablingZCoinStatus)
API.app.notification_mgr.enablingCoinFailedStatus.disconnect(onEnablingCoinFailedStatus)
+ API.app.notification_mgr.disablingCoinFailedStatus.disconnect(onDisablingCoinFailedStatus)
API.app.notification_mgr.endpointNonReacheableStatus.disconnect(onEndpointNonReacheableStatus)
API.app.notification_mgr.mismatchCustomCoinConfiguration.disconnect(onMismatchCustomCoinConfiguration)
API.app.notification_mgr.batchFailed.disconnect(onBatchFailed)
@@ -417,7 +471,11 @@ DexPopup
MenuItem
{
text: qsTr("Quit")
- onTriggered: Qt.quit()
+ onTriggered:
+ {
+ if (orders.count != 0) logout_modal.open()
+ else return_to_login()
+ }
}
}
}
@@ -437,7 +495,7 @@ DexPopup
pixelSize: 20
weight: Font.Normal
}
- text: "Notifications"
+ text: qsTr("Notifications")
}
Item
@@ -655,6 +713,7 @@ DexPopup
{
text: qsTr('Mark all as read')
height: 40
+ width: 260
Layout.alignment: Qt.AlignHCenter
onClicked: root.reset()
}
diff --git a/atomic_defi_design/Dex/Exchange/ProView/Chart.qml b/atomic_defi_design/Dex/Exchange/ProView/Chart.qml
index 890898328e..4dbc9dc49d 100644
--- a/atomic_defi_design/Dex/Exchange/ProView/Chart.qml
+++ b/atomic_defi_design/Dex/Exchange/ProView/Chart.qml
@@ -6,6 +6,7 @@ import QtWebEngine 1.8
import "../../Components"
import "../../Constants"
import Dex.Themes 1.0 as Dex
+import AtomicDEX.MarketMode 1.0
Item
{
@@ -182,9 +183,16 @@ Item
Connections
{
target: app
- function onPairChanged()
+ function onPairChanged(left, right)
{
- root.loadChart(left_ticker, right_ticker)
+ if (API.app.trading_pg.market_mode == MarketMode.Sell)
+ {
+ root.loadChart(left, right)
+ }
+ else
+ {
+ root.loadChart(right, left)
+ }
}
}
diff --git a/atomic_defi_design/Dex/Exchange/ProView/DexComboBoxLine.qml b/atomic_defi_design/Dex/Exchange/ProView/DexComboBoxLine.qml
index 0839d50ab2..368bce3c3c 100644
--- a/atomic_defi_design/Dex/Exchange/ProView/DexComboBoxLine.qml
+++ b/atomic_defi_design/Dex/Exchange/ProView/DexComboBoxLine.qml
@@ -4,9 +4,11 @@ import QtQuick.Controls 2.15
import QtGraphicalEffects 1.0
import QtQuick.Controls.Universal 2.15
+import "../../Constants" as Dex
import "../../Components"
import App 1.0
import Dex.Themes 1.0 as Dex
+import Dex.Components 1.0 as Dex
RowLayout
{
@@ -16,10 +18,11 @@ RowLayout
property var details
property color color: !details ? "white" : Style.getCoinColor(details.ticker)
property alias bottom_text: bottom_line.text_value
+ property int activation_progress: Dex.General.zhtlcActivationProgress(details.activation_status, details.ticker)
Behavior on color { ColorAnimation { duration: Style.animationDuration } }
- DexImage
+ Dex.Image
{
id: icon
source: General.coinIcon(details.ticker)
@@ -30,6 +33,30 @@ RowLayout
Layout.topMargin: Layout.leftMargin
Layout.bottomMargin: Layout.leftMargin
+ DexRectangle
+ {
+ anchors.centerIn: parent
+ anchors.fill: parent
+ radius: 15
+ enabled: Dex.General.isZhtlc(details.ticker) ? activation_progress != 100 : false
+ visible: enabled
+ opacity: .9
+ color: Dex.DexTheme.backgroundColor
+ }
+
+ DexLabel
+ {
+ anchors.centerIn: parent
+ anchors.fill: parent
+ enabled: Dex.General.isZhtlc(details.ticker) ? activation_progress != 100 : false
+ visible: enabled
+ horizontalAlignment: Text.AlignHCenter
+ verticalAlignment: Text.AlignVCenter
+ text: activation_progress + "%"
+ font: Dex.DexTypo.body2
+ color: Dex.DexTheme.greenColor
+ }
+
ColumnLayout
{
anchors.left: parent.right
@@ -37,7 +64,7 @@ RowLayout
anchors.verticalCenter: parent.verticalCenter
width: root.width - 40
- DexText
+ Dex.Text
{
Layout.preferredWidth: parent.width - 15
@@ -48,7 +75,7 @@ RowLayout
wrapMode: Text.NoWrap
}
- DexText
+ Dex.Text
{
id: bottom_line
@@ -58,7 +85,7 @@ RowLayout
text: real_value
Layout.fillWidth: true
elide: Text.ElideRight
- color: DexTheme.foregroundColor
+ color: Dex.CurrentTheme.foregroundColor
font: DexTypo.body2
wrapMode: Label.NoWrap
ToolTip.text: real_value
diff --git a/atomic_defi_design/Dex/Exchange/ProView/PlaceOrderForm/Main.qml b/atomic_defi_design/Dex/Exchange/ProView/PlaceOrderForm/Main.qml
index 37cd5249d1..cd2a8cff33 100644
--- a/atomic_defi_design/Dex/Exchange/ProView/PlaceOrderForm/Main.qml
+++ b/atomic_defi_design/Dex/Exchange/ProView/PlaceOrderForm/Main.qml
@@ -7,6 +7,7 @@ import Qaterial 1.0 as Qaterial
import "../../../Components"
import "../../../Constants"
import Dex.Themes 1.0 as Dex
+import Dex.Components 1.0 as Dex
import AtomicDEX.MarketMode 1.0
Widget
@@ -17,19 +18,95 @@ Widget
margins: 15
collapsable: false
+ // Market mode selector
+ RowLayout
+ {
+ Layout.topMargin: 5
+ Layout.bottomMargin: 2
+ Layout.alignment: Qt.AlignHCenter
+ Layout.preferredWidth: parent.width
+ height: 40
+
+ MarketModeSelector
+ {
+ Layout.alignment: Qt.AlignLeft
+ Layout.preferredWidth: (parent.width / 100) * 46
+ Layout.preferredHeight: 40
+ marketMode: MarketMode.Buy
+ ticker: atomic_qt_utilities.retrieve_main_ticker(left_ticker)
+ }
+
+ Item { Layout.fillWidth: true }
+
+ MarketModeSelector
+ {
+ Layout.alignment: Qt.AlignRight
+ Layout.preferredWidth: (parent.width / 100) * 46
+ Layout.preferredHeight: 40
+ ticker: atomic_qt_utilities.retrieve_main_ticker(left_ticker)
+ }
+ }
+
+ // Protocol text for platform tokens
+ Item
+ {
+ height: 40
+ Layout.alignment: Qt.AlignHCenter
+ Layout.preferredWidth: parent.width
+ visible: protocolIcon != ""
+
+ ColumnLayout
+ {
+ spacing: 2
+ anchors.fill: parent
+ anchors.centerIn: parent
+
+ Dex.Text
+ {
+ id: protocolTitle
+ Layout.preferredWidth: parent.width
+ text_value: "Protocol:"
+ font.pixelSize: Style.textSizeSmall1
+ horizontalAlignment: Text.AlignHCenter
+ color: Style.colorText2
+ }
+
+ RowLayout
+ {
+ id: protocol
+ Layout.alignment: Qt.AlignHCenter
+
+ DefaultImage
+ {
+ id: protocolImg
+ source: protocolIcon
+ Layout.preferredHeight: 16
+ Layout.preferredWidth: Layout.preferredHeight
+ }
+
+ DexLabel
+ {
+ id: protocolText
+ text_value: General.getProtocolText(left_ticker)
+ wrapMode: DexLabel.NoWrap
+ font.pixelSize: Style.textSizeSmall1
+ color: Style.colorText2
+ }
+ }
+ }
+ }
// Order selected indicator
Item
{
- Layout.topMargin: 5
Layout.alignment: Qt.AlignHCenter
Layout.preferredWidth: parent.width
- Layout.preferredHeight: 40
- visible: API.app.trading_pg.preffered_order.price !== undefined
+ height: 40
RowLayout
{
id: orderSelection
+ visible: API.app.trading_pg.preffered_order.price !== undefined
anchors.fill: parent
anchors.verticalCenter: parent.verticalCenter
@@ -62,6 +139,7 @@ Widget
Rectangle
{
+ visible: API.app.trading_pg.preffered_order.price !== undefined
anchors.fill: parent
radius: 8
color: 'transparent'
@@ -69,104 +147,51 @@ Widget
}
}
- // Market mode selector
- RowLayout
+ OrderForm
{
- Layout.topMargin: 5
+ id: formBase
+ width: parent.width
+ height: 340
Layout.alignment: Qt.AlignHCenter
- Layout.preferredWidth: parent.width
- Layout.fillHeight: true
-
- MarketModeSelector
- {
- Layout.alignment: Qt.AlignLeft
- Layout.preferredWidth: (parent.width / 100) * 46
- Layout.preferredHeight: 50
- marketMode: MarketMode.Buy
- ticker: atomic_qt_utilities.retrieve_main_ticker(left_ticker)
- }
-
- Item { Layout.fillWidth: true }
-
- MarketModeSelector
- {
- Layout.alignment: Qt.AlignRight
- Layout.preferredWidth: (parent.width / 100) * 46
- Layout.preferredHeight: 50
- ticker: atomic_qt_utilities.retrieve_main_ticker(left_ticker)
- }
}
- HorizontalLine
- {
- Layout.alignment: Qt.AlignHCenter
- Layout.preferredWidth: parent.width
- visible: protocolIcon != ""
- color: Dex.CurrentTheme.backgroundColorDeep
- }
+ Item { Layout.fillHeight: true }
- ColumnLayout
+ // Error messages
+ Item
{
- spacing: 3
- Layout.alignment: Qt.AlignHCenter
+ height: 60
Layout.preferredWidth: parent.width
- visible: protocolIcon != ""
- DexLabel
+ // Show errors
+ Dex.Text
{
- id: protocolTitle
- Layout.preferredWidth: parent.width
- text_value: "Protocol:"
- font.pixelSize: Style.textSizeSmall1
+ id: errors
+ visible: errors.text_value !== ""
+ anchors.fill: parent
+ anchors.centerIn: parent
horizontalAlignment: Text.AlignHCenter
- color: Style.colorText2
- }
-
- RowLayout
- {
- id: protocol
- Layout.alignment: Qt.AlignHCenter
- Layout.preferredWidth: parent.width
-
- Item { Layout.fillWidth: true }
-
- DefaultImage
- {
- id: protocolImg
- source: protocolIcon
- Layout.preferredHeight: 16
- Layout.preferredWidth: Layout.preferredHeight
- }
-
- DexLabel
- {
- id: protocolText
- text_value: General.getProtocolText(left_ticker)
- wrapMode: DexLabel.NoWrap
- font.pixelSize: Style.textSizeSmall1
- color: Style.colorText2
- }
-
- Item { Layout.fillWidth: true }
+ font.pixelSize: Style.textSizeSmall4
+ color: Dex.CurrentTheme.noColor
+ text_value: General.getTradingError(
+ last_trading_error,
+ curr_fee_info,
+ base_ticker,
+ rel_ticker, left_ticker, right_ticker)
+ elide: Text.ElideRight
}
}
- OrderForm
- {
- id: formBase
- Layout.preferredWidth: parent.width
- Layout.alignment: Qt.AlignHCenter
- }
-
TotalView
{
+ height: 80
Layout.preferredWidth: parent.width
Layout.alignment: Qt.AlignHCenter
}
DexGradientAppButton
{
- Layout.preferredHeight: 40
+ height: 40
Layout.preferredWidth: parent.width - 20
Layout.alignment: Qt.AlignHCenter
@@ -176,34 +201,4 @@ Widget
enabled: formBase.can_submit_trade
onClicked: confirm_trade_modal.open()
}
-
- ColumnLayout
- {
- spacing: parent.spacing
- visible: errors.text_value !== ""
- Layout.preferredWidth: parent.width
-
- HorizontalLine
- {
- Layout.alignment: Qt.AlignHCenter
- Layout.preferredWidth: parent.width
- }
-
- // Show errors
- DefaultText
- {
- id: errors
- Layout.alignment: Qt.AlignHCenter
- Layout.preferredWidth: parent.width
- horizontalAlignment: Text.AlignHCenter
- font.pixelSize: Style.textSizeSmall4
- color: Dex.CurrentTheme.noColor
- text_value: General.getTradingError(
- last_trading_error,
- curr_fee_info,
- base_ticker,
- rel_ticker, left_ticker, right_ticker)
- elide: Text.ElideRight
- }
- }
}
diff --git a/atomic_defi_design/Dex/Exchange/ProView/PlaceOrderForm/MarketModeSelector.qml b/atomic_defi_design/Dex/Exchange/ProView/PlaceOrderForm/MarketModeSelector.qml
index bae4940e62..6eb535000b 100644
--- a/atomic_defi_design/Dex/Exchange/ProView/PlaceOrderForm/MarketModeSelector.qml
+++ b/atomic_defi_design/Dex/Exchange/ProView/PlaceOrderForm/MarketModeSelector.qml
@@ -58,7 +58,11 @@ Rectangle
{
anchors.centerIn: parent
color: API.app.trading_pg.market_mode == marketMode ? Dex.CurrentTheme.gradientButtonTextEnabledColor : Dex.CurrentTheme.foregroundColor
- text: (marketMode == Dex.MarketMode.Sell ? qsTr("Sell") : qsTr("Buy")) + ` ${ticker}`
+ text:
+ {
+ if (marketMode == Dex.MarketMode.Sell) qsTr("Sell %1", "TICKER").arg(ticker)
+ else qsTr("Buy %1", "TICKER").arg(ticker)
+ }
}
DefaultMouseArea
diff --git a/atomic_defi_design/Dex/Exchange/ProView/PlaceOrderForm/OrderForm.qml b/atomic_defi_design/Dex/Exchange/ProView/PlaceOrderForm/OrderForm.qml
index 6f6f6fcd4a..bf74c7183d 100644
--- a/atomic_defi_design/Dex/Exchange/ProView/PlaceOrderForm/OrderForm.qml
+++ b/atomic_defi_design/Dex/Exchange/ProView/PlaceOrderForm/OrderForm.qml
@@ -12,6 +12,7 @@ import Dex.Themes 1.0 as Dex
ColumnLayout
{
id: root
+ spacing: 8
function focusVolumeField()
{
@@ -19,6 +20,8 @@ ColumnLayout
}
readonly property string total_amount: API.app.trading_pg.total_amount
+ readonly property int input_height: 70
+ readonly property int subfield_margin: 5
readonly property bool can_submit_trade: last_trading_error === TradingError.None
@@ -56,7 +59,7 @@ ColumnLayout
Item
{
Layout.preferredWidth: parent.width
- Layout.preferredHeight: input_price.height + price_usd_value.height + price_usd_value.anchors.topMargin
+ Layout.preferredHeight: input_height
AmountField
{
@@ -65,35 +68,54 @@ ColumnLayout
left_text: qsTr("Price")
right_text: right_ticker
enabled: !(API.app.trading_pg.preffered_order.price !== undefined)
- text: backend_price
+ color: enabled ? Dex.CurrentTheme.foregroundColor : Dex.CurrentTheme.foregroundColor2
+ text: backend_price ? backend_price : General.formatDouble(API.app.trading_pg.cex_price)
width: parent.width
height: 41
radius: 18
onTextChanged: setPrice(text)
+ Component.onCompleted: text = General.formatDouble(API.app.trading_pg.cex_price) ? General.formatDouble(API.app.trading_pg.cex_price) : 1
}
- DefaultText
+ OrderFormSubfield
{
id: price_usd_value
- anchors.right: input_price.right
anchors.top: input_price.bottom
- anchors.topMargin: 7
-
- text_value: General.getFiatText(non_null_price, right_ticker)
- font.pixelSize: input_price.font.pixelSize
- color: Dex.CurrentTheme.foregroundColor2
-
- CexInfoTrigger {}
+ anchors.left: input_price.left
+ anchors.topMargin: subfield_margin
+ visible: !API.app.trading_pg.invalid_cex_price
+ left_btn.onClicked:
+ {
+ let price = General.formatDouble(parseFloat(input_price.text) - (General.formatDouble(API.app.trading_pg.cex_price)*0.01))
+ if (price < 0) price = 0
+ setPrice(String(price))
+ }
+ right_btn.onClicked:
+ {
+ let price = General.formatDouble(parseFloat(input_price.text) + (General.formatDouble(API.app.trading_pg.cex_price)*0.01))
+ setPrice(String(price))
+ }
+ middle_btn.onClicked:
+ {
+ if (input_price.text == "0") setPrice("1")
+ let price = General.formatDouble(API.app.trading_pg.cex_price)
+ setPrice(String(price))
+ }
+ fiat_value: General.getFiatText(non_null_price, right_ticker)
+ left_label: "-1%"
+ middle_label: "0%"
+ right_label: "+1%"
+ left_tooltip_text: qsTr("Reduce 1% relative to CEX market price.")
+ middle_tooltip_text: qsTr("Use CEX market price.")
+ right_tooltip_text: qsTr("Increase 1% relative to CEX market price.")
}
}
-
Item
{
Layout.preferredWidth: parent.width
- Layout.topMargin: 10
- Layout.preferredHeight: input_volume.height + inputVolumePrice.height + inputVolumePrice.anchors.topMargin
+ Layout.preferredHeight: input_height
AmountField
{
@@ -108,93 +130,108 @@ ColumnLayout
onTextChanged: setVolume(text)
}
- DefaultText
+ OrderFormSubfield
{
- id: inputVolumePrice
- anchors.right: input_volume.right
+ id: volume_usd_value
anchors.top: input_volume.bottom
- anchors.topMargin: price_usd_value.anchors.topMargin
-
- text_value: General.getFiatText(non_null_volume, left_ticker)
- font.pixelSize: input_volume.font.pixelSize
- color: Dex.CurrentTheme.foregroundColor2
-
- CexInfoTrigger {}
+ anchors.left: input_volume.left
+ anchors.topMargin: subfield_margin
+ left_btn.onClicked:
+ {
+ let volume = General.formatDouble(API.app.trading_pg.max_volume * 0.25)
+ setVolume(String(volume))
+ }
+ middle_btn.onClicked:
+ {
+ let volume = General.formatDouble(API.app.trading_pg.max_volume * 0.5)
+ setVolume(String(volume))
+ }
+ right_btn.onClicked:
+ {
+ let volume = General.formatDouble(API.app.trading_pg.max_volume)
+ setVolume(String(volume))
+ }
+ fiat_value: General.getFiatText(non_null_volume, left_ticker)
+ left_label: "25%"
+ middle_label: "50%"
+ right_label: qsTr("Max")
+ left_tooltip_text: qsTr("Swap 25% of your tradable balance.")
+ middle_tooltip_text: qsTr("Swap 50% of your tradable balance.")
+ right_tooltip_text: qsTr("Swap 100% of your tradable balance.")
}
}
Item
{
+ visible: _useCustomMinTradeAmountCheckbox.checked
Layout.preferredWidth: parent.width
- Layout.preferredHeight: minVolLabel.height
- Layout.topMargin: 6
+ Layout.preferredHeight: input_height
- DefaultText
+ AmountField
{
- id: minVolLabel
- anchors.horizontalCenter: parent.horizontalCenter
- font.pixelSize: 13
- text: qsTr("Min volume: ") + API.app.trading_pg.min_trade_vol
+ id: input_minvolume
+ width: parent.width
+ height: 41
+ radius: 18
+ left_text: qsTr("Min Volume")
+ right_text: left_ticker
+ placeholderText: sell_mode ? qsTr("Min amount to sell") : qsTr("Min amount to receive")
+ text: API.app.trading_pg.min_trade_vol
+ onTextChanged: if (API.app.trading_pg.min_trade_vol != text) setMinimumAmount(text)
}
- DefaultText
+ OrderFormSubfield
{
- anchors.left: minVolLabel.right
- anchors.leftMargin: 8
- anchors.verticalCenter: minVolLabel.verticalCenter
-
- text: General.cex_icon
- color: Dex.CurrentTheme.foregroundColor3
-
- DefaultMouseArea
+ id: minvolume_usd_value
+ anchors.top: input_minvolume.bottom
+ anchors.left: input_minvolume.left
+ anchors.topMargin: subfield_margin
+ left_btn.onClicked:
{
- anchors.fill: parent
- onClicked: _sliderHelpModal.open()
+ let volume = input_volume.text * 0.10
+ setMinimumAmount(General.formatDouble(volume))
}
-
- ModalLoader
+ middle_btn.onClicked:
{
- id: _sliderHelpModal
- sourceComponent: HelpModal
- {
- title: qsTr("How to use the pro-view slider ?")
- helpSentence: qsTr("This slider is used to setup the order requirements you need.\nLeft slider: Sets the minimum amount required to process a trade.\nRight slider: Sets the volume you want to trade.")
- }
+ let volume = input_volume.text * 0.25
+ setMinimumAmount(General.formatDouble(volume))
}
+ right_btn.onClicked:
+ {
+ let volume = input_volume.text * 0.50
+ setMinimumAmount(General.formatDouble(volume))
+ }
+ fiat_value: General.getFiatText(API.app.trading_pg.min_trade_vol, left_ticker)
+ left_label: "10%"
+ middle_label: "25%"
+ right_label: "50%"
+ left_tooltip_text: qsTr("Minimum accepted trade equals 10% of order volume.")
+ middle_tooltip_text: qsTr("Minimum accepted trade equals 25% of order volume.")
+ right_tooltip_text: qsTr("Minimum accepted trade equals 50% of order volume.")
}
}
- DefaultRangeSlider
+ Item
{
- id: _volumeRange
-
- function getRealValue() { return first.position * (first.to - first.from); }
- function getRealValue2() { return second.position * (second.to - second.from); }
-
- enabled: input_volume.enabled && !(!sell_mode && General.isZero(non_null_price)) && to > 0
-
- Layout.alignment: Qt.AlignHCenter
Layout.preferredWidth: parent.width
+ Layout.preferredHeight: 30
+ visible: !_useCustomMinTradeAmountCheckbox.checked
- from: API.app.trading_pg.orderbook.current_min_taker_vol
- to: Math.max(0, parseFloat(max_volume))
-
- first.value: parseFloat(API.app.trading_pg.min_trade_vol)
-
- firstDisabled: !_useCustomMinTradeAmountCheckbox.checked
-
- second.value: parseFloat(non_null_volume)
-
- first.onValueChanged: if (first.pressed) setMinimumAmount(General.formatDouble(first.value))
- second.onValueChanged: if (second.pressed) setVolume(General.formatDouble(second.value))
+ DefaultText
+ {
+ id: minVolLabel
+ anchors.horizontalCenter: parent.horizontalCenter
+ font.pixelSize: 13
+ text: qsTr("Min volume: ") + API.app.trading_pg.min_trade_vol
+ }
}
RowLayout
{
- Layout.topMargin: 15
Layout.rightMargin: 2
Layout.leftMargin: 2
- Layout.fillWidth: true
+ Layout.preferredWidth: parent.width
+ Layout.preferredHeight: 30
spacing: 5
DefaultCheckBox
@@ -203,9 +240,11 @@ ColumnLayout
boxWidth: 20
boxHeight: 20
labelWidth: 0
+ onToggled: setMinimumAmount(0)
}
- DefaultText {
+ DefaultText
+ {
Layout.fillWidth: true
height: _useCustomMinTradeAmountCheckbox.height
horizontalAlignment: Text.AlignLeft
@@ -216,4 +255,4 @@ ColumnLayout
font.pixelSize: 13
}
}
-}
+}
\ No newline at end of file
diff --git a/atomic_defi_design/Dex/Exchange/ProView/PlaceOrderForm/OrderFormSubfield.qml b/atomic_defi_design/Dex/Exchange/ProView/PlaceOrderForm/OrderFormSubfield.qml
new file mode 100644
index 0000000000..1370518b6a
--- /dev/null
+++ b/atomic_defi_design/Dex/Exchange/ProView/PlaceOrderForm/OrderFormSubfield.qml
@@ -0,0 +1,224 @@
+import QtQuick 2.15
+import QtQuick.Layouts 1.15
+import QtQuick.Controls 2.15
+import QtGraphicalEffects 1.0
+
+import "../../../Constants" as Dex
+import "../../../Components"
+import App 1.0
+import Dex.Themes 1.0 as Dex
+
+// todo: coding style is wrong, use camelCase.
+RowLayout
+{
+ id: control
+ property alias fiat_value: _fiat_label.text_value
+ property alias left_label: _left_label.text
+ property alias middle_label: _middle_label.text
+ property alias right_label: _right_label.text
+ property string left_tooltip_text: ""
+ property string middle_tooltip_text: ""
+ property string right_tooltip_text: ""
+ property alias left_btn: _left_btn
+ property alias middle_btn: _middle_btn
+ property alias right_btn: _right_btn
+ property int pixel_size: 12
+ property int btn_width: 33
+ spacing: 2
+ height: 20
+ width: parent.width
+
+ Item
+ {
+ width: btn_width
+ height: parent.height
+
+ // Background when market mode is different
+ DefaultRectangle
+ {
+ anchors.centerIn: parent
+ width: parent.width
+ height: parent.height
+ color: Dex.CurrentTheme.tradeMarketModeSelectorNotSelectedBackgroundColor
+ }
+
+ DefaultText
+ {
+ id: _left_label
+ anchors.centerIn: parent
+ font.pixelSize: pixel_size
+ color: Dex.CurrentTheme.foregroundColor2
+ text: "-1%"
+ }
+
+ DexTooltip
+ {
+ id: _left_tooltip
+ visible: _left_btn.containsMouse && left_tooltip_text != ""
+
+ contentItem: FloatingBackground
+ {
+ anchors.top: parent.bottom
+ anchors.topMargin: 30
+ color: Dex.CurrentTheme.accentColor
+
+ DefaultText
+ {
+ text: left_tooltip_text
+ font: Dex.DexTypo.caption
+ leftPadding: 10
+ rightPadding: 10
+ topPadding: 6
+ bottomPadding: 6
+ }
+ }
+
+ background: Rectangle {
+ width: 0
+ height: 0
+ color: "transparent"
+ }
+ }
+
+ DefaultMouseArea
+ {
+ id: _left_btn
+ anchors.fill: parent
+ hoverEnabled: true
+ }
+ }
+
+ Item
+ {
+
+ width: btn_width
+ height: parent.height
+
+ // Background when market mode is different
+ DefaultRectangle
+ {
+ anchors.centerIn: parent
+ width: parent.width
+ height: parent.height
+ color: Dex.CurrentTheme.tradeMarketModeSelectorNotSelectedBackgroundColor
+
+ DefaultMouseArea
+ {
+ id: _middle_btn
+ anchors.fill: parent
+ hoverEnabled: true
+ }
+
+ DefaultText
+ {
+ id: _middle_label
+ anchors.centerIn: parent
+ font.pixelSize: pixel_size
+ color: Dex.CurrentTheme.foregroundColor2
+ text: "0%"
+ }
+
+ DexTooltip
+ {
+ id: _middle_tooltip
+ visible: _middle_btn.containsMouse && middle_tooltip_text != ""
+
+ contentItem: FloatingBackground
+ {
+ anchors.top: parent.bottom
+ anchors.topMargin: 30
+ color: Dex.CurrentTheme.accentColor
+
+ DefaultText
+ {
+ text: middle_tooltip_text
+ font: Dex.DexTypo.caption
+ leftPadding: 10
+ rightPadding: 10
+ topPadding: 6
+ bottomPadding: 6
+ }
+ }
+
+ background: Rectangle {
+ width: 0
+ height: 0
+ color: "transparent"
+ }
+ }
+ }
+ }
+
+ Item
+ {
+
+ width: btn_width
+ height: parent.height
+
+ // Background when market mode is different
+ DefaultRectangle
+ {
+ id: right_rect
+ anchors.centerIn: parent
+ width: parent.width
+ height: parent.height
+ color: Dex.CurrentTheme.tradeMarketModeSelectorNotSelectedBackgroundColor
+ }
+
+ DefaultText
+ {
+ id: _right_label
+ anchors.centerIn: parent
+ font.pixelSize: pixel_size
+ color: Dex.CurrentTheme.foregroundColor2
+ text: "+1%"
+ }
+
+ DexTooltip
+ {
+ id: _right_tooltip
+ visible: _right_btn.containsMouse && right_tooltip_text != ""
+
+
+ contentItem: FloatingBackground
+ {
+ anchors.top: parent.bottom
+ anchors.topMargin: 30
+ color: Dex.CurrentTheme.accentColor
+
+ DefaultText
+ {
+ text: right_tooltip_text
+ font: Dex.DexTypo.caption
+ leftPadding: 10
+ rightPadding: 10
+ topPadding: 6
+ bottomPadding: 6
+ }
+ }
+
+ background: Rectangle {
+ width: 0
+ height: 0
+ color: "transparent"
+ }
+ }
+
+ DefaultMouseArea
+ {
+ id: _right_btn
+ anchors.fill: parent
+ hoverEnabled: true
+ }
+ }
+
+ Item { Layout.fillWidth: true }
+
+ DefaultText
+ {
+ id: _fiat_label
+ font.pixelSize: pixel_size
+ color: Dex.CurrentTheme.foregroundColor2
+ DefaultInfoTrigger { triggerModal: cex_info_modal }
+ }
+}
\ No newline at end of file
diff --git a/atomic_defi_design/Dex/Exchange/ProView/PlaceOrderForm/TotalView.qml b/atomic_defi_design/Dex/Exchange/ProView/PlaceOrderForm/TotalView.qml
index 5c03c8df73..588c1a054b 100644
--- a/atomic_defi_design/Dex/Exchange/ProView/PlaceOrderForm/TotalView.qml
+++ b/atomic_defi_design/Dex/Exchange/ProView/PlaceOrderForm/TotalView.qml
@@ -12,7 +12,7 @@ import Dex.Themes 1.0 as Dex
ColumnLayout
{
- spacing: 5
+ spacing: 3
RowLayout
{
@@ -28,7 +28,7 @@ ColumnLayout
font.pixelSize: 14
font.weight: Font.Normal
opacity: .6
- CexInfoTrigger {}
+ DefaultInfoTrigger { triggerModal: cex_info_modal }
}
DefaultText
diff --git a/atomic_defi_design/Dex/Exchange/ProView/SearchableTickerSelector.qml b/atomic_defi_design/Dex/Exchange/ProView/SearchableTickerSelector.qml
index 0ce9b4ec88..de90ed3f2d 100644
--- a/atomic_defi_design/Dex/Exchange/ProView/SearchableTickerSelector.qml
+++ b/atomic_defi_design/Dex/Exchange/ProView/SearchableTickerSelector.qml
@@ -12,16 +12,15 @@ import "../../Constants" as Dex
Dex.ComboBoxWithSearchBar
{
id: control
+
property var currentItem: model.index(currentIndex, 0)
property bool left_side: false
- property var ticker_list
property string ticker
- property bool index_changed: false
+ property bool index_changed: false
height: 60
enabled: !block_everything
- model: control.ticker_list
textRole: "ticker"
valueRole: "ticker"
@@ -29,13 +28,11 @@ Dex.ComboBoxWithSearchBar
popupForceMaxHeight: true
searchBar.visible: true
- searchBar.searchModel: control.ticker_list
+ searchBar.searchModel: model
delegate: ItemDelegate
{
id: _delegate
- z: 5
- visible: model.ticker !== "All"
width: control.width
height: visible ? 60 : 0
highlighted: control.highlightedIndex === index
@@ -66,14 +63,15 @@ Dex.ComboBoxWithSearchBar
details:
{
const idx = currentIndex
- if(idx === -1) return prev_details
+ if (idx === -1) return prev_details
const new_details = {
update_count: _contentRow.update_count,
ticker: model.data(model.index(idx, 0), 257),
name: model.data(model.index(idx, 0), 259),
balance: model.data(model.index(idx, 0), 260),
- main_currency_balance: model.data(model.index(idx, 0), 261)
+ main_currency_balance: model.data(model.index(idx, 0), 261),
+ activation_status: model.data(model.index(idx, 0), 266)
}
prev_details = new_details
@@ -83,26 +81,25 @@ Dex.ComboBoxWithSearchBar
Component.onDestruction: portfolio_mdl.portfolioItemDataChanged.disconnect(forceUpdateDetails)
}
- onCurrentIndexChanged: {
- control.index_changed = true
- }
+ onCurrentIndexChanged: control.index_changed = true
onCurrentValueChanged:
{
- if(control.index_changed) {
+ if (control.index_changed)
+ {
control.index_changed = false
- if(currentValue !== undefined)
+ if (currentValue !== undefined)
setPair(left_side, currentValue)
}
- else {
- if(currentText.indexOf(ticker) === -1) {
+ else
+ {
+ if (currentText.indexOf(ticker) === -1)
+ {
const target_index = indexOfValue(ticker)
- if(currentIndex !== target_index)
+ if (currentIndex !== target_index)
currentIndex = target_index
}
}
}
- searchBar.onVisibleChanged: if (!visible) { searchBar.textField.text = ""; }
- searchBar.textField.onTextChanged: {
- control.ticker_list.setFilterFixedString(searchBar.textField.text)
- }
+ searchBar.onVisibleChanged: if (!visible) { searchBar.textField.text = "" }
+ searchBar.textField.onTextChanged: control.model.setFilterFixedString(searchBar.textField.text)
}
diff --git a/atomic_defi_design/Dex/Exchange/ProView/SweetDexComboBox.qml b/atomic_defi_design/Dex/Exchange/ProView/SweetDexComboBox.qml
deleted file mode 100644
index 4ee25501e9..0000000000
--- a/atomic_defi_design/Dex/Exchange/ProView/SweetDexComboBox.qml
+++ /dev/null
@@ -1,217 +0,0 @@
-import QtQuick 2.15
-import QtQuick.Layouts 1.15
-import QtQuick.Controls 2.15
-import QtQuick.Controls.impl 2.15
-
-import Qaterial 1.0 as Qaterial
-
-import "../../Components"
-import App 1.0
-import Dex.Themes 1.0 as Dex
-
-ComboBox
-{
- id: control
-
- property alias radius: bg_rect.radius
- property color comboBoxBackgroundColor: Dex.CurrentTheme.comboBoxBackgroundColor
- property color popupBackgroundColor: Dex.CurrentTheme.floatingBackgroundColor
- property color highlightedBackgroundColor: Dex.CurrentTheme.comboBoxDropdownItemHighlightedColor
- property color mainBackgroundColor: Dex.CurrentTheme.floatingBackgroundColor
-
- height: 80
-
-
- // Combobox Dropdown Button Background
- background: DexRectangle
- {
- id: bg_rect
- color: comboBoxBackgroundColor
- radius: 20
- }
-
- contentItem: DexComboBoxLine
- {
- id: line
-
- property int update_count: 0
- property var prev_details
-
- padding: 10
-
- function forceUpdateDetails()
- {
- console.log("Portfolio item data changed, force-updating the selected ticker details!")
- ++update_count
- }
-
- details:
- {
- const idx = combo.currentIndex
-
- if(idx === -1) return prev_details
-
- // Update count triggers the change for auto-update
- const new_details =
- {
- update_count: line.update_count,
- ticker: model.data(model.index(idx, 0), 257),
- name: model.data(model.index(idx, 0), 259),
- balance: model.data(model.index(idx, 0), 260),
- main_currency_balance: model.data(model.index(idx, 0), 261)
- }
-
- prev_details = new_details
-
- return new_details
- }
-
- Component.onCompleted: portfolio_mdl.portfolioItemDataChanged.connect(forceUpdateDetails)
- Component.onDestruction: portfolio_mdl.portfolioItemDataChanged.disconnect(forceUpdateDetails)
- }
-
- // Each dropdown item
- delegate: ItemDelegate
- {
- id: combo_item
- width: control.width
- highlighted: control.highlightedIndex === index
-
- contentItem: DexComboBoxLine { details: model }
- z: 5
-
- // Dropdown Item background
- background: DexRectangle {
- anchors.fill: combo_item
- color: combo_item.highlighted ? highlightedBackgroundColor : mainBackgroundColor
- }
- }
-
- indicator: Column
- {
- anchors.verticalCenter: parent.verticalCenter
- anchors.right: parent.right
- anchors.rightMargin: 8
- spacing: -12
-
- Qaterial.Icon
- {
- width: 30
- height: 30
- color: Dex.CurrentTheme.comboBoxArrowsColor
- icon: Qaterial.Icons.chevronDown
- }
- }
-
- // Dropdown itself
- popup: Popup
- {
- id: combo_popup
- readonly property double max_height: 450
-
- width: control.width
- height: Math.min(contentItem.implicitHeight, max_height) + 20
-
- z: 4
- y: control.height - 1
- topMargin: 40
- bottomMargin: 10
- rightMargin: 5
- padding: 1
-
- contentItem: ColumnLayout
- {
- anchors.rightMargin: 5
-
- // Search input
- DexTextField
- {
- id: input_coin_filter
- placeholderText: qsTr("Search")
-
- font.pixelSize: 16
- Layout.fillWidth: true
- Layout.leftMargin: 5
- Layout.rightMargin: 5
- Layout.preferredHeight: 40
- Layout.topMargin: Layout.leftMargin
-
- // Search Field Background
- background: DexRectangle
- {
- color: control.comboBoxBackgroundColor
- anchors.fill: parent
- radius: control.radius
- }
-
- onTextChanged:
- {
- ticker_list.setFilterFixedString(text)
- renewIndex()
- }
-
- function reset()
- {
- text = ""
- renewIndex()
- }
-
- Keys.onDownPressed: control.incrementCurrentIndex()
- Keys.onUpPressed: control.decrementCurrentIndex()
- Keys.onPressed:
- {
- if (event.key === Qt.Key_Return)
- {
- if (control.count > 0) control.currentIndex = 0;
- popup.close();
- event.accepted = true;
- }
- }
-
- Connections
- {
- target: popup
- function onOpened()
- {
- input_coin_filter.reset();
- input_coin_filter.forceActiveFocus();
- }
- function onClosed() { input_coin_filter.reset() }
- }
- }
-
- Item
- {
- Layout.maximumHeight: popup.max_height - 100
- Layout.fillWidth: true
- implicitHeight: popup_list_view.contentHeight + 5
-
- DexListView
- {
- id: popup_list_view
- // Scrollbar appears if this extra space is not added
- model: control.popup.visible ? control.delegateModel : null
- currentIndex: control.highlightedIndex
- anchors.fill: parent
-
- DexMouseArea
- {
- anchors.fill: parent
- acceptedButtons: Qt.NoButton
- }
- }
- }
- }
-
- // Popup Background
- background: DexRectangle
- {
- width: parent.width
- height: parent.height
- radius: control.radius
- color: control.popupBackgroundColor
- colorAnimation: false
- border.width: 1
- }
- }
-}
diff --git a/atomic_defi_design/Dex/Exchange/ProView/TickerSelector.qml b/atomic_defi_design/Dex/Exchange/ProView/TickerSelector.qml
deleted file mode 100644
index 4978fa75ee..0000000000
--- a/atomic_defi_design/Dex/Exchange/ProView/TickerSelector.qml
+++ /dev/null
@@ -1,53 +0,0 @@
-import QtQuick 2.15
-import QtQuick.Layouts 1.15
-import QtQuick.Controls 2.15
-import QtGraphicalEffects 1.0
-
-import "../../Components"
-import "../../Constants"
-
-SweetDexComboBox
-{
- id: combo
-
- function renewIndex()
- {
- combo.currentIndex = combo.indexOfValue(ticker)
- }
-
- property bool left_side: false
- property var ticker_list
- property string ticker
-
- // Indicates user input, when list changes, index stays the same so we know it's not user input
- property bool index_changed: false
-
- enabled: !block_everything
-
- model: ticker_list
- valueRole: "ticker"
-
- onTickerChanged: renewIndex()
- Component.onCompleted: renewIndex()
-
- onCurrentIndexChanged: combo.index_changed = true
- onCurrentValueChanged:
- {
- // User input
- if(combo.index_changed) {
- combo.index_changed = false
- // Set the ticker
- if(currentValue !== undefined)
- setPair(left_side, currentValue)
- }
- // List change
- else {
- // Correct the index
- if(currentText.indexOf(ticker) === -1) {
- const target_index = indexOfValue(ticker)
- if(currentIndex !== target_index)
- currentIndex = target_index
- }
- }
- }
-}
diff --git a/atomic_defi_design/Dex/Exchange/ProView/TickerSelectors.qml b/atomic_defi_design/Dex/Exchange/ProView/TickerSelectors.qml
index 765730f839..86df283110 100644
--- a/atomic_defi_design/Dex/Exchange/ProView/TickerSelectors.qml
+++ b/atomic_defi_design/Dex/Exchange/ProView/TickerSelectors.qml
@@ -14,8 +14,8 @@ Row
{
selectorLeft.currentIndex = selectorLeft.indexOfValue(selectorLeft.ticker)
selectorRight.currentIndex = selectorRight.indexOfValue(selectorRight.ticker)
- selectorLeft.searchBar.textField.text = "";
- selectorRight.searchBar.textField.text = "";
+ selectorLeft.searchBar.textField.text = ""
+ selectorRight.searchBar.textField.text = ""
}
SearchableTickerSelector
@@ -26,11 +26,16 @@ Row
height: parent.height
left_side: true
- ticker_list: API.app.trading_pg.market_pairs_mdl.left_selection_box
+ model: API.app.trading_pg.market_pairs_mdl.left_selection_box
ticker: left_ticker
onTickerChanged: renewIndex()
Component.onCompleted: renewIndex()
- Component.onDestruction: searchBar.textField.text = "";
+ Component.onDestruction: searchBar.textField.text = ""
+ onVisibleChanged:
+ {
+ renewIndex()
+ model.with_balance = false
+ }
}
SwapIcon
@@ -62,10 +67,15 @@ Row
height: parent.height
left_side: false
- ticker_list: API.app.trading_pg.market_pairs_mdl.right_selection_box
+ model: API.app.trading_pg.market_pairs_mdl.right_selection_box
ticker: right_ticker
onTickerChanged: renewIndex()
Component.onCompleted: renewIndex()
- Component.onDestruction: searchBar.textField.text = "";
+ Component.onDestruction: searchBar.textField.text = ""
+ onVisibleChanged:
+ {
+ renewIndex()
+ model.with_balance = false
+ }
}
}
diff --git a/atomic_defi_design/Dex/Exchange/ProView/TradingInfo/OrderLine.qml b/atomic_defi_design/Dex/Exchange/ProView/TradingInfo/OrderLine.qml
index 4dadd1fe8d..fc880aa0ea 100644
--- a/atomic_defi_design/Dex/Exchange/ProView/TradingInfo/OrderLine.qml
+++ b/atomic_defi_design/Dex/Exchange/ProView/TradingInfo/OrderLine.qml
@@ -5,6 +5,8 @@ import Qaterial 1.0 as Qaterial
import QtGraphicalEffects 1.0
+import bignumberjs 1.0
+
import App 1.0
import "../../../Components"
@@ -52,7 +54,7 @@ FloatingBackground
id: statusText
anchors.centerIn: parent
- visible: clickable ? ! details ? false : (details.is_swap || !details.is_maker) : false
+ visible: clickable ? !details ? false : (details.is_swap || !details.is_maker) : false
font.pixelSize: getStatusFontSize(details.order_status)
color: !details ? Dex.CurrentTheme.foregroundColor : getStatusColor(details.order_status)
text_value: !details ? "" : visible ? getStatusStep(details.order_status) : ''
@@ -91,7 +93,13 @@ FloatingBackground
anchors.verticalCenter: parent.verticalCenter
font.pixelSize: 12
- text: !details ? "" : details.base_amount
+ text:
+ {
+ if (!details) return
+
+ BigNumber.config({ DECIMAL_PLACES: 6 })
+ return new BigNumber(details.base_amount).toString(10)
+ }
privacy: is_placed_order
elide: Text.ElideRight
maximumLineCount: 1
@@ -127,7 +135,14 @@ FloatingBackground
anchors.verticalCenter: parent.verticalCenter
font.pixelSize: 12
- text: !details ? "" : details.rel_amount
+ text:
+ {
+ if (!details) return
+
+ BigNumber.config({ DECIMAL_PLACES: 6 })
+ return new BigNumber(details.rel_amount).toString(10)
+ }
+
privacy: is_placed_order
elide: Text.ElideRight
maximumLineCount: 1
diff --git a/atomic_defi_design/Dex/Exchange/ProView/TradingInfo/OrdersPage.qml b/atomic_defi_design/Dex/Exchange/ProView/TradingInfo/OrdersPage.qml
index da30d26932..5ff799eda8 100644
--- a/atomic_defi_design/Dex/Exchange/ProView/TradingInfo/OrdersPage.qml
+++ b/atomic_defi_design/Dex/Exchange/ProView/TradingInfo/OrdersPage.qml
@@ -7,6 +7,7 @@ import Qaterial 1.0 as Qaterial
import App 1.0
import "../../../Components"
+import "../../../Constants"
import "../../.."
import Dex.Themes 1.0 as Dex
@@ -92,10 +93,9 @@ Item {
spacing: 10
DefaultButton
{
- Layout.preferredWidth: 86
Layout.preferredHeight: 29
radius: 7
- label.font.pixelSize: 14
+ label.font: DexTypo.body2
text: qsTr("Filter")
iconSource: Qaterial.Icons.filter
onClicked: settings.visible = !settings.visible
@@ -104,10 +104,9 @@ Item {
DefaultButton
{
visible: root.is_history
- Layout.preferredWidth: 86
Layout.preferredHeight: 29
radius: 7
- label.font.pixelSize: 14
+ label.font: DexTypo.body2
text: qsTr("Export CSV")
onClicked:
{
@@ -119,6 +118,7 @@ Item {
DefaultText
{
color: Dex.CurrentTheme.foregroundColor2
+ font: DexTypo.caption
visible: !settings.visible
text: qsTr("Filter") + ": %1 / %2
%3: %4 - %5".arg(combo_base.currentTicker).arg(combo_rel.currentTicker).arg(qsTr("Date")).arg(min_date.selectedDate.toLocaleDateString(Locale.ShortFormat, "yyyy-MM-dd")).arg(max_date.selectedDate.toLocaleDateString(Locale.ShortFormat, "yyyy-MM-dd"))
}
@@ -137,10 +137,9 @@ Item {
{
visible: root.is_history
enabled: list_model_proxy.can_i_apply_filtering
- Layout.preferredWidth: 86
Layout.preferredHeight: 29
radius: 7
- label.font.pixelSize: 14
+ label.font: DexTypo.body2
text: qsTr("Apply Filter")
onClicked: list_model_proxy.apply_all_filtering()
}
@@ -149,10 +148,9 @@ Item {
{
visible: !root.is_history
enabled: API.app.orders_mdl.length > 0
- Layout.preferredWidth: 86
Layout.preferredHeight: 29
radius: 7
- label.font.pixelSize: 14
+ label.font: DexTypo.body2
text: qsTr("Cancel All")
iconSource: Qaterial.Icons.close
onClicked: API.app.trading_pg.orders.cancel_order(list_model_proxy.get_filtered_ids())
diff --git a/atomic_defi_design/Dex/Exchange/ProView/TradingInfo/PriceLine.qml b/atomic_defi_design/Dex/Exchange/ProView/TradingInfo/PriceLine.qml
index 9ebe7892b8..63cbdaf723 100644
--- a/atomic_defi_design/Dex/Exchange/ProView/TradingInfo/PriceLine.qml
+++ b/atomic_defi_design/Dex/Exchange/ProView/TradingInfo/PriceLine.qml
@@ -121,8 +121,7 @@ ColumnLayout
Layout.alignment: Qt.AlignHCenter
text_value: General.cex_icon + " " + qsTr("CEXchange rate")
font.pixelSize: fontSize
-
- CexInfoTrigger {}
+ DefaultInfoTrigger { triggerModal: cex_info_modal }
}
// Price reversed
diff --git a/atomic_defi_design/Dex/Exchange/ProView/TradingInfo/SwapProgress.qml b/atomic_defi_design/Dex/Exchange/ProView/TradingInfo/SwapProgress.qml
index 68b534cf99..ad019be3da 100644
--- a/atomic_defi_design/Dex/Exchange/ProView/TradingInfo/SwapProgress.qml
+++ b/atomic_defi_design/Dex/Exchange/ProView/TradingInfo/SwapProgress.qml
@@ -6,6 +6,7 @@ import Dex.Themes 1.0 as Dex
import App 1.0
import "../../../Components"
+import "../../../Constants"
// Content
ColumnLayout
@@ -15,8 +16,9 @@ ColumnLayout
property var details
property var lastEvent
- readonly property
- var all_events: !details ? [] : has_error_event ? details.events.map(e => e.state) : details.success_events
+ readonly property var all_events: !details
+ ? [] : has_error_event
+ ? details.events.map(e => e.state) : details.success_events
// Is there error in swap json?
readonly property bool has_error_event:
diff --git a/atomic_defi_design/Dex/Exchange/Trade/BestOrder/List.qml b/atomic_defi_design/Dex/Exchange/Trade/BestOrder/List.qml
index f6870c6335..695385521e 100644
--- a/atomic_defi_design/Dex/Exchange/Trade/BestOrder/List.qml
+++ b/atomic_defi_design/Dex/Exchange/Trade/BestOrder/List.qml
@@ -18,13 +18,36 @@ Widget
margins: 20
spacing: 20
- Header {}
+ Header
+ {
+ visible: !warning_text.visible
+ }
+
+ Item
+ {
+ id: warning_text
+ visible: API.app.trading_pg.volume == 0
+ Layout.preferredWidth: parent.width
+ Layout.preferredHeight: parent.height
+
+ DefaultText
+ {
+ text_value: qsTr("Enter volume to see best orders.")
+ anchors.fill: parent
+ anchors.centerIn: parent
+ horizontalAlignment: Text.AlignHCenter
+ verticalAlignment: Text.AlignVCenter
+ font.pixelSize: Style.textSizeSmall4
+ color: Dex.CurrentTheme.foregroundColor2
+ }
+ }
Dex.ListView
{
id: _listView
Layout.fillWidth: true
Layout.fillHeight: true
+ visible: !warning_text.visible
spacing: 6
model: API.app.trading_pg.orderbook.best_orders.proxy_mdl
diff --git a/atomic_defi_design/Dex/Exchange/Trade/BestOrder/ListDelegate.qml b/atomic_defi_design/Dex/Exchange/Trade/BestOrder/ListDelegate.qml
index 5834c977af..08cccfba5a 100644
--- a/atomic_defi_design/Dex/Exchange/Trade/BestOrder/ListDelegate.qml
+++ b/atomic_defi_design/Dex/Exchange/Trade/BestOrder/ListDelegate.qml
@@ -170,7 +170,7 @@ Item
placeOrderForm.visible = General.flipFalse(placeOrderForm.visible)
if (API.app.trading_pg.market_mode == MarketMode.Buy)
{
- app.pairChanged(rel_ticker, coin)
+ app.pairChanged(coin, rel_ticker)
}
else
{
diff --git a/atomic_defi_design/Dex/Exchange/Trade/ConfirmTradeModal.qml b/atomic_defi_design/Dex/Exchange/Trade/ConfirmTradeModal.qml
index 937940c3ee..1bc9e6e007 100644
--- a/atomic_defi_design/Dex/Exchange/Trade/ConfirmTradeModal.qml
+++ b/atomic_defi_design/Dex/Exchange/Trade/ConfirmTradeModal.qml
@@ -11,22 +11,23 @@ import "Orders/"
import App 1.0
import Dex.Themes 1.0 as Dex
+
MultipageModal
{
id: root
readonly property var fees: API.app.trading_pg.fees
-
+ width: 720
horizontalPadding: 30
- verticalPadding: 40
+ verticalPadding: 30
MultipageModalContent
{
titleText: qsTr("Confirm Exchange Details")
title.font.pixelSize: Style.textSize2
titleAlignment: Qt.AlignHCenter
- titleTopMargin: 10
- topMarginAfterTitle: 0
- flickMax: window.height - 450
+ titleTopMargin: 0
+ topMarginAfterTitle: 10
+ flickMax: window.height - 480
header: [
RowLayout
@@ -71,6 +72,39 @@ MultipageModal
Layout.fillWidth: true
Layout.alignment: Qt.AlignHCenter
+ // Large margin Warning
+ FloatingBackground
+ {
+ Layout.alignment: Qt.AlignCenter
+ width: 425
+ height: 30
+ color: Style.colorRed2
+ visible: Math.abs(parseFloat(API.app.trading_pg.cex_price_diff)) >= 50
+
+ RowLayout
+ {
+ Layout.fillWidth: true
+
+ Item { width: 3 }
+
+ DefaultCheckBox
+ {
+ id: allow_bad_trade
+ Layout.alignment: Qt.AlignCenter
+ textColor: Style.colorWhite0
+ visible: Math.abs(parseFloat(API.app.trading_pg.cex_price_diff)) >= 50
+ spacing: 2
+ boxWidth: 20
+ boxHeight: 20
+ labelWidth: 400
+ label.wrapMode: Label.NoWrap
+ text: qsTr("Trade price is more than 50% different to CEX! Confirm?")
+ }
+
+ Item { width: 3 }
+ }
+ }
+
DefaultText
{
Layout.alignment: Qt.AlignHCenter
@@ -247,7 +281,7 @@ MultipageModal
text_value: "✅ " + (
config_section.is_dpow_configurable
? ''
- + qsTr("dPoW protected") + General.cex_icon + ''
+ + qsTr("dPoW protected ") + General.cex_icon + ''
: qsTr("%1 confirmations for incoming %2 transactions")
.arg(config_section.default_config.required_confirmations || 1).arg(rel_ticker)
)
@@ -291,7 +325,7 @@ MultipageModal
DefaultSlider
{
id: required_confirmation_count
- height: 30
+ height: 24
Layout.alignment: Qt.AlignCenter
@@ -310,8 +344,8 @@ MultipageModal
FloatingBackground
{
Layout.alignment: Qt.AlignCenter
- width: 360
- height: 30
+ width: dpow_off_warning.implicitWidth + 30
+ height: dpow_off_warning.implicitHeight + 10
color: Style.colorRed2
visible: {
enable_custom_config.checked && (config_section.is_dpow_configurable && !enable_dpow_confs.checked)
@@ -321,6 +355,7 @@ MultipageModal
{
id: dpow_off_warning
anchors.fill: parent
+ font: DexTypo.body2
color: Style.colorWhite0
horizontalAlignment: Qt.AlignHCenter
verticalAlignment: Qt.AlignVCenter
@@ -368,7 +403,7 @@ MultipageModal
leftPadding: 45
rightPadding: 45
radius: 10
- enabled: !buy_sell_rpc_busy && last_trading_error === TradingError.None
+ enabled: General.is_swap_safe(allow_bad_trade)
onClicked:
{
trade({ enable_custom_config: enable_custom_config.checked,
diff --git a/atomic_defi_design/Dex/Exchange/Trade/OrderBook/Vertical.qml b/atomic_defi_design/Dex/Exchange/Trade/OrderBook/Vertical.qml
index 2ccc364e2a..9c5e4c9d74 100644
--- a/atomic_defi_design/Dex/Exchange/Trade/OrderBook/Vertical.qml
+++ b/atomic_defi_design/Dex/Exchange/Trade/OrderBook/Vertical.qml
@@ -49,4 +49,4 @@ Widget
Layout.fillHeight: true
Layout.fillWidth: true
}
-}
\ No newline at end of file
+}
diff --git a/atomic_defi_design/Dex/Exchange/Trade/PriceLineSimplified.qml b/atomic_defi_design/Dex/Exchange/Trade/PriceLineSimplified.qml
index 978ffe7533..a9c257204d 100644
--- a/atomic_defi_design/Dex/Exchange/Trade/PriceLineSimplified.qml
+++ b/atomic_defi_design/Dex/Exchange/Trade/PriceLineSimplified.qml
@@ -72,8 +72,7 @@ ColumnLayout
horizontalAlignment: Text.AlignRight
text_value: General.cex_icon + " " + qsTr("CEXchange rate")
font.pixelSize: fontSize
-
- CexInfoTrigger {}
+ DefaultInfoTrigger { triggerModal: cex_info_modal }
}
// Price reversed
diff --git a/atomic_defi_design/Dex/Exchange/Trade/ProView.qml b/atomic_defi_design/Dex/Exchange/Trade/ProView.qml
index 0d61f90c02..82261e5005 100644
--- a/atomic_defi_design/Dex/Exchange/Trade/ProView.qml
+++ b/atomic_defi_design/Dex/Exchange/Trade/ProView.qml
@@ -132,27 +132,35 @@ RowLayout
id: tradingInfo
Layout.fillWidth: true
- Layout.minimumHeight: isCollapsed() ? 60 : 610
- Layout.fillHeight: !isCollapsed()
+ Layout.fillHeight: true
+
+ resizable: false
}
}
- ColumnLayout
+ WidgetContainer
{
+ property real _orderBookHeightRatio: 0.65
+ property real _bestOrdersHeightRatio: 0.35
+
Layout.minimumWidth: orderBook.visible || bestOrders.visible ? 353 : -1
Layout.fillWidth: true
Layout.fillHeight: true
Layout.alignment: Qt.AlignTop
+ spacing: 4
+
+ onHeightChanged:
+ {
+ orderBook.height = getHeight(_orderBookHeightRatio);
+ bestOrders.height = getHeight(_bestOrdersHeightRatio);
+ }
OrderBook.Vertical
{
id: orderBook
- Layout.fillWidth: true
-
- Layout.minimumHeight: isCollapsed() ? 70 : 365
- Layout.maximumHeight: bestOrders.visible && !bestOrders.isCollapsed() ? 536 : -1
- Layout.fillHeight: !isCollapsed()
+ width: parent.width
+ minHeight: 320
}
// Best Orders
@@ -160,10 +168,8 @@ RowLayout
{
id: bestOrders
- Layout.fillWidth: true
-
- Layout.minimumHeight: isCollapsed() ? 70 : 196
- Layout.fillHeight: !isCollapsed()
+ width: parent.width
+ minHeight: 140
}
}
@@ -175,9 +181,9 @@ RowLayout
Layout.minimumWidth: visible ? 302 : -1
Layout.maximumWidth: 350
Layout.fillWidth: true
-
- Layout.minimumHeight: 571
Layout.fillHeight: true
+
+ resizable: false
}
ModalLoader
diff --git a/atomic_defi_design/Dex/Exchange/Trade/Trading/Items/FeeInfo.qml b/atomic_defi_design/Dex/Exchange/Trade/Trading/Items/FeeInfo.qml
index 0f34b35cfb..f8ce4d8bc7 100644
--- a/atomic_defi_design/Dex/Exchange/Trade/Trading/Items/FeeInfo.qml
+++ b/atomic_defi_design/Dex/Exchange/Trade/Trading/Items/FeeInfo.qml
@@ -40,7 +40,7 @@ Column
font.pixelSize: Style.textSizeSmall1
width: parent.width
wrapMode: Text.Wrap
- CexInfoTrigger {}
+ DefaultInfoTrigger { triggerModal: cex_info_modal }
}
}
diff --git a/atomic_defi_design/Dex/NewUpdateModal.qml b/atomic_defi_design/Dex/NewUpdateModal.qml
index c479b78ed1..4f9d7e3907 100644
--- a/atomic_defi_design/Dex/NewUpdateModal.qml
+++ b/atomic_defi_design/Dex/NewUpdateModal.qml
@@ -69,7 +69,7 @@ Dex.MultipageModal
Dex.DefaultText
{
- text: qsTr("Could not check new updates because of the following reason: \n%1").arg(Dex.API.app.updateCheckerService.updateInfo.status)
+ text: qsTr("Could not check new updates for the following reason: \n%1").arg(Dex.API.app.updateCheckerService.updateInfo.status)
}
footer:
@@ -157,7 +157,7 @@ Dex.MultipageModal
}
else
{
- console.error(Dex.API.app.updateCheckerService.udpateInfo.status)
+ console.error(Dex.API.app.updateCheckerService.updateInfo.status)
}
}
}
diff --git a/atomic_defi_design/Dex/Portfolio/AssetsList.qml b/atomic_defi_design/Dex/Portfolio/AssetsList.qml
index 7617e18cac..ded8fd3eda 100644
--- a/atomic_defi_design/Dex/Portfolio/AssetsList.qml
+++ b/atomic_defi_design/Dex/Portfolio/AssetsList.qml
@@ -97,6 +97,7 @@ Dex.DexListView
delegate: Rectangle
{
property color _idleColor: index % 2 === 1 ? Dex.CurrentTheme.backgroundColor : Dex.CurrentTheme.innerBackgroundColor
+ property int activation_progress: Dex.General.zhtlcActivationProgress(activation_status, ticker)
width: list.width
height: _assetRowHeight
@@ -119,6 +120,30 @@ Dex.DexListView
source: Dex.General.coinIcon(ticker)
width: 30
height: 30
+
+ Dex.DexRectangle
+ {
+ anchors.centerIn: parent
+ anchors.fill: parent
+ radius: 15
+ enabled: Dex.General.isZhtlc(ticker) ? activation_progress != 100 : false
+ visible: enabled
+ opacity: .9
+ color: Dex.DexTheme.backgroundColor
+ }
+
+ Dex.DexLabel
+ {
+ anchors.centerIn: parent
+ anchors.fill: parent
+ enabled: Dex.General.isZhtlc(ticker) ? activation_progress != 100 : false
+ visible: enabled
+ horizontalAlignment: Text.AlignHCenter
+ verticalAlignment: Text.AlignVCenter
+ text: activation_progress + "%"
+ font: Dex.DexTypo.head8
+ color: Dex.DexTheme.greenColor
+ }
}
Dex.DexLabel
@@ -155,7 +180,6 @@ Dex.DexListView
color: Dex.DexTheme.redColor
}
}
-
}
Dex.DexLabel // Balance Column.
@@ -167,9 +191,19 @@ Dex.DexListView
verticalAlignment: Text.AlignVCenter
font: Dex.DexTypo.body2
- text_value: parseFloat(balance).toFixed(8)
+ text_value:
+ {
+ if (Dex.General.isZhtlc(ticker))
+ {
+ if (activation_progress != 100)
+ {
+ return qsTr("Activating: ") + activation_progress + "%"
+ }
+ }
+ return parseFloat(balance).toFixed(8)
+ }
- color: Qt.darker(Dex.DexTheme.foregroundColor, 0.8)
+ color: text_value == parseFloat(balance).toFixed(8) ? Qt.darker(Dex.DexTheme.foregroundColor, 0.8) : Dex.DexTheme.redColor
privacy: true
}
@@ -270,7 +304,10 @@ Dex.DexListView
if (!can_change_ticker)
return
if (mouse.button === Qt.RightButton)
+ {
+ contextMenu.can_disable = Dex.General.canDisable(ticker)
contextMenu.popup()
+ }
else
{
api_wallet_page.ticker = ticker
@@ -280,10 +317,10 @@ Dex.DexListView
onPressAndHold:
{
- if (!can_change_ticker)
- return
+ if (!can_change_ticker) return
if (mouse.source === Qt.MouseEventNotSynthesized)
+ contextMenu.can_disable = Dex.General.canDisable(ticker)
contextMenu.popup()
}
}
diff --git a/atomic_defi_design/Dex/Portfolio/Portfolio.qml b/atomic_defi_design/Dex/Portfolio/Portfolio.qml
index f947d84570..de0ea3394b 100644
--- a/atomic_defi_design/Dex/Portfolio/Portfolio.qml
+++ b/atomic_defi_design/Dex/Portfolio/Portfolio.qml
@@ -143,11 +143,11 @@ Item {
DexGradientAppButton
{
- width: 150
height: 40
iconSource: Qaterial.Icons.plus
radius: 15
- padding: 5
+ padding: 25
+ font: DexTypo.body2
text: qsTr("ADD ASSET")
onClicked: enable_coin_modal.open()
}
diff --git a/atomic_defi_design/Dex/Screens/Dashboard.qml b/atomic_defi_design/Dex/Screens/Dashboard.qml
index f19241b433..bc64287689 100644
--- a/atomic_defi_design/Dex/Screens/Dashboard.qml
+++ b/atomic_defi_design/Dex/Screens/Dashboard.qml
@@ -148,16 +148,6 @@ Item
Addressbook.Main { }
}
- Component
- {
- id: settings
-
- Settings
- {
- Layout.alignment: Qt.AlignCenter
- }
- }
-
WebEngineView
{
id: webEngineView
@@ -187,6 +177,78 @@ Item
running: !loader.visible
}
}
+
+ // Status bar
+ DefaultRectangle
+ {
+ id: status_bar
+ visible: API.app.zcash_params.is_downloading()
+ width: parent.width
+ height: 24
+ anchors.bottom: parent.bottom
+ color: 'transparent'
+
+ DefaultRectangle
+ {
+ color: Dex.CurrentTheme.accentColor
+ width: 380
+ height: parent.height
+ anchors.right: parent.right
+ radius: 0
+
+ DefaultProgressBar
+ {
+ id: download_progress
+ anchors.fill: parent
+ anchors.centerIn: parent
+ width: parent.width - 10
+ height: parent.height
+ bar_width_pct: 0
+ label.text: "Zcash params downloading:"
+ label.font.family: 'Montserrat'
+ label.font.pixelSize: 11
+ label_width: 180
+ pct_value.text: "0.00 %"
+ pct_value.font.family: 'lato'
+ pct_value.font.pixelSize: 11
+ }
+
+ DexMouseArea
+ {
+ id: download_mouse_area
+ anchors.fill: parent
+ hoverEnabled: true
+ onClicked: zcash_params_modal.open()
+ }
+ }
+ Connections
+ {
+ target: API.app.zcash_params
+ function onCombinedDownloadStatusChanged()
+ {
+ const filesizes = General.zcash_params_filesize
+ let combined_sum = Object.values(filesizes).reduce((total, v) => total + v, 0);
+
+ let donwloaded_sum = 0
+ let data = JSON.parse(API.app.zcash_params.get_combined_download_progress())
+ for (let k in data) {
+ let v = data[k];
+ donwloaded_sum += v * filesizes[k]
+ }
+
+ let pct = General.formatDouble(donwloaded_sum / combined_sum * 100, 2)
+ if (pct == 100)
+ {
+ API.app.enable_coins(API.app.zcash_params.get_enable_after_download())
+ status_bar.visible = false
+ API.app.zcash_params.clear_enable_after_download()
+ }
+ else status_bar.visible = true
+ download_progress.bar_width_pct = pct
+ download_progress.pct_value.text = pct + "%"
+ }
+ }
+ }
}
// Sidebar, left side
@@ -210,9 +272,16 @@ Item
// CEX Rates info
ModalLoader
{
- id: cex_rates_modal
+ id: cex_info_modal
sourceComponent: CexInfoModal {}
}
+
+ ModalLoader
+ {
+ id: gas_info_modal
+ sourceComponent: GasInfoModal {}
+ }
+
ModalLoader
{
id: min_trade_modal
@@ -225,35 +294,66 @@ Item
sourceComponent: RestartModal {}
}
- function getStatusColor(status)
+ // Download Zcash Params
+ property alias zcash_params: zcash_params_modal.item
+ ModalLoader
+ {
+ id: zcash_params_modal
+ sourceComponent: ZcashParamsModal
+ {
+ }
+ }
+
+ function onEnablingZCoinStatus(coin, msg, human_date, timestamp)
+ {
+ // Ignore if coin already enabled (e.g. parent chain in batch)
+ console.log(msg)
+ if (msg.search("ZCashParamsNotFound") > -1)
+ {
+ console.log(coin)
+ API.app.zcash_params.enable_after_download(coin)
+ zcash_params_modal.open()
+ }
+ }
+
+ Component.onCompleted:
+ {
+ API.app.notification_mgr.enablingZCoinStatus.connect(onEnablingZCoinStatus)
+ }
+ Component.onDestruction:
+ {
+ API.app.notification_mgr.enablingZCoinStatus.disconnect(onEnablingZCoinStatus)
+ }
+
+ function isSwapDone(status)
{
switch (status) {
case "matching":
- return Style.colorYellow
case "matched":
case "ongoing":
- case "refunding":
- return Style.colorOrange
+ return false
case "successful":
- return Dex.CurrentTheme.sidebarLineTextHovered
+ case "refunding":
case "failed":
default:
- return DexTheme.redColor
+ return true
}
}
- function isSwapDone(status)
+ function getStatusColor(status)
{
switch (status) {
case "matching":
+ return Style.colorYellow
case "matched":
case "ongoing":
- return false
- case "successful":
case "refunding":
+ return Style.colorOrange
+ case "successful":
+ return Dex.CurrentTheme.sidebarLineTextHovered
case "failed":
default:
- return true
+ return DexTheme.redColor
}
}
@@ -280,18 +380,15 @@ Item
function getStatusFontSize(status)
{
switch (status) {
- case "matching":
- return 9
- case "matched":
- return 9
- case "ongoing":
- return 9
case "successful":
return 16
case "refunding":
return 16
case "failed":
return 12
+ case "matching":
+ case "matched":
+ case "ongoing":
default:
return 9
}
diff --git a/atomic_defi_design/Dex/Screens/Startup/ImportWallet.qml b/atomic_defi_design/Dex/Screens/Startup/ImportWallet.qml
index c30161277b..acb83d2be4 100644
--- a/atomic_defi_design/Dex/Screens/Startup/ImportWallet.qml
+++ b/atomic_defi_design/Dex/Screens/Startup/ImportWallet.qml
@@ -182,6 +182,7 @@ SetupPage
{
id: _seedField
Layout.fillWidth: true
+ max_length: General.max_pw_length
Layout.preferredHeight: 50
leftIcon: Qaterial.Icons.fileKey
field.font: DexTypo.body2
@@ -236,7 +237,7 @@ SetupPage
standardButtons: Dialog.Yes | Dialog.Cancel,
validator: (text) =>
{
- if (text.toLowerCase() === qsTr("i understand"))
+ if ([qsTr("i understand"), qsTr("я согласен"), qsTr("je comprends"), qsTr("entiendo"), qsTr("anladım"), qsTr("ich verstehe"), ].includes(text.toLowerCase()))
{
allow_custom_seed.checked = true;
}
@@ -244,7 +245,7 @@ SetupPage
{
allow_custom_seed.checked = false;
}
- return text.toLowerCase() === qsTr("i understand")
+ return [qsTr("i understand"), qsTr("я согласен"), qsTr("je comprends"), qsTr("entiendo"), qsTr("anladım"), qsTr("ich verstehe"), ].includes(text.toLowerCase())
},
yesButtonText: qsTr("Ok")
})
diff --git a/atomic_defi_design/Dex/Screens/Startup/Login.qml b/atomic_defi_design/Dex/Screens/Startup/Login.qml
index 1f716a1c7d..299c505ea2 100644
--- a/atomic_defi_design/Dex/Screens/Startup/Login.qml
+++ b/atomic_defi_design/Dex/Screens/Startup/Login.qml
@@ -64,6 +64,7 @@ SetupPage
{
id: _inputPassword
Layout.alignment: Qt.AlignHCenter
+ max_length: General.max_pw_length
height: 50
width: 300
background.color: Dex.CurrentTheme.floatingBackgroundColor
@@ -113,6 +114,7 @@ SetupPage
{
Layout.alignment: Qt.AlignHCenter
id: _keyChecker
+ max_pw_len: General.max_pw_length
field: _inputPassword.field
visible: false
}
diff --git a/atomic_defi_design/Dex/Screens/Startup/NewWallet.qml b/atomic_defi_design/Dex/Screens/Startup/NewWallet.qml
index dbc85f892d..2a2f30e59a 100644
--- a/atomic_defi_design/Dex/Screens/Startup/NewWallet.qml
+++ b/atomic_defi_design/Dex/Screens/Startup/NewWallet.qml
@@ -8,6 +8,7 @@ import "../../Components"
import "../../Constants"
import App 1.0
import Dex.Themes 1.0 as Dex
+import Dex.Components 1.0 as Dex
SetupPage
{
@@ -158,7 +159,7 @@ SetupPage
image_scale: 0.7
- content: DexRectangle
+ content: Dex.Rectangle
{
color: Dex.CurrentTheme.floatingBackgroundColor
width: column_layout.width + 50
@@ -210,6 +211,7 @@ SetupPage
}
mmo.model = getRandomWords(4)
}
+
ColumnLayout
{
id: column_layout
@@ -249,7 +251,7 @@ SetupPage
}
}
- DexLabel
+ Dex.Text
{
font: DexTypo.head6
text_value: if (currentStep === 0)
@@ -274,8 +276,6 @@ SetupPage
Layout.fillWidth: true
}
-
-
ModalLoader
{
id: eula_modal
@@ -293,6 +293,7 @@ SetupPage
ColumnLayout
{
visible: currentStep === 0
+ enabled: visible
Layout.preferredWidth: 450
spacing: Style.rowSpacing
@@ -311,7 +312,7 @@ SetupPage
field.onTextChanged: text_error = General.validateWallet(input_wallet_name.field.text)
field.forceFocus: true
- DexRectangle
+ Dex.Rectangle
{
x: 5
height: 40
@@ -367,6 +368,7 @@ SetupPage
}
}
}
+
TextField
{
id: input_generated_seed
@@ -497,11 +499,11 @@ SetupPage
}
}
-
// Second page, write the seed word
ColumnLayout
{
visible: currentStep === 1
+ enabled: visible
DefaultRectangle
{
@@ -673,6 +675,8 @@ SetupPage
ColumnLayout
{
visible: currentStep === 2
+ enabled: visible
+
Layout.preferredWidth: 450
spacing: Style.rowSpacing
diff --git a/atomic_defi_design/Dex/Screens/Startup/WalletsView.qml b/atomic_defi_design/Dex/Screens/Startup/WalletsView.qml
index 2663b405ca..6d21be4af2 100644
--- a/atomic_defi_design/Dex/Screens/Startup/WalletsView.qml
+++ b/atomic_defi_design/Dex/Screens/Startup/WalletsView.qml
@@ -257,6 +257,7 @@ SetupPage
title: qsTr("Wallet status"),
text: "%1 ".arg(wallet_name) + qsTr("wallet deleted successfully"),
yesButtonText: qsTr("Ok"), titleBold: true,
+ showCancelBtn: false,
standardButtons: Dialog.Ok
})
wallets = API.app.wallet_mgr.get_wallets()
@@ -269,6 +270,7 @@ SetupPage
text: "%1 ".arg(wallet_name) + qsTr("wallet password is incorrect"),
warning: true,
standardButtons: Dialog.Ok, titleBold: true,
+ showCancelBtn: false,
yesButtonText: qsTr("Ok"),
})
}
diff --git a/atomic_defi_design/Dex/Settings/Languages.qml b/atomic_defi_design/Dex/Settings/Languages.qml
index 99ccfac6e3..d90a521f49 100644
--- a/atomic_defi_design/Dex/Settings/Languages.qml
+++ b/atomic_defi_design/Dex/Settings/Languages.qml
@@ -5,6 +5,7 @@ import QtQuick.Controls 2.15
import QtGraphicalEffects 1.0
import "../Components"
import "../Constants"
+import "../Screens"
import App 1.0
@@ -49,6 +50,9 @@ Grid
{
API.app.settings_pg.lang = model.modelData;
console.info("Switched language to %1".arg(API.app.settings_pg.lang));
+ menu_list.update()
+ app.update()
+ app.pageLoader.item.switchPage(Dashboard.PageType.Portfolio)
}
}
}
diff --git a/atomic_defi_design/Dex/Settings/RecoverSeedModal.qml b/atomic_defi_design/Dex/Settings/RecoverSeedModal.qml
index 288de4af12..dfa997fa03 100644
--- a/atomic_defi_design/Dex/Settings/RecoverSeedModal.qml
+++ b/atomic_defi_design/Dex/Settings/RecoverSeedModal.qml
@@ -16,34 +16,36 @@ MultipageModal
property var portfolio_model: API.app.portfolio_pg.portfolio_mdl
property var settings_page: API.app.settings_pg
- property bool wrongPassword: false
+ property bool _isPasswordWrong: false
function tryViewKeysAndSeed()
{
if (!submitButton.enabled) return
- const result = API.app.settings_pg.retrieve_seed(API.app.wallet_mgr.wallet_default_name, inputPassword.field.text)
+ const result = API.app.settings_pg.retrieve_seed(API.app.wallet_mgr.wallet_default_name, _inputPassword.field.text)
if (result.length === 2)
{
seedLabel.text = result[0]
rpcPwLabel.text = result[1]
- wrongPassword = false
+ _isPasswordWrong = false
root.nextPage()
loading.running = true
}
else
{
- wrongPassword = true
+ _inputPassword.error = true;
+ _isPasswordWrong = true;
+ return false;
}
}
- width: 820
+ width: 900
onClosed:
{
- wrongPassword = false
- inputPassword.reset()
+ _isPasswordWrong = false
+ _inputPassword.reset()
seedLabel.text = ""
rpcPwLabel.text = ""
portfolio_model.clean_priv_keys()
@@ -61,15 +63,26 @@ MultipageModal
DexAppPasswordField
{
- id: inputPassword
- Layout.fillWidth: true
+ id: _inputPassword
forceFocus: true
+ Layout.fillWidth: true
+ Layout.margins: 20
+ Layout.alignment: Qt.AlignHCenter
field.onAccepted: tryViewKeysAndSeed()
- background.color: Dex.CurrentTheme.floatingBackgroundColor
leftIconColor: Dex.CurrentTheme.foregroundColor
+ field.onTextChanged: { _isPasswordWrong = false }
+ background.color: Dex.CurrentTheme.accentColor
hideFieldButton.icon.color: Dex.CurrentTheme.foregroundColor
}
+ DexLabel
+ {
+ Layout.alignment: Qt.AlignHCenter
+ height: 14
+ text: _isPasswordWrong ? qsTr("Incorrect Password") : ""
+ color: Dex.CurrentTheme.noColor
+ }
+
// Footer
RowLayout
{
@@ -86,7 +99,7 @@ MultipageModal
{
id: submitButton
Layout.preferredWidth: parent.width / 100 * 48
- enabled: inputPassword.field.length > 0
+ enabled: _inputPassword.field.length > 0
text: qsTr("View")
onClicked: tryViewKeysAndSeed()
}
@@ -96,6 +109,8 @@ MultipageModal
MultipageModalContent
{
titleText: qsTr("View seed and private keys")
+ titleTopMargin: 15
+ topMarginAfterTitle: 15
Timer
{
@@ -124,23 +139,22 @@ MultipageModal
id: seedContainer
visible: false
enabled: false
- spacing: 10
+ spacing: 5
+ width: parent.width
+ height: 150
// Logo
- ColumnLayout
+ DefaultImage
{
- DefaultImage
- {
- source: Dex.CurrentTheme.bigLogoPath
- Layout.alignment: Qt.AlignHCenter
- Layout.preferredWidth: 144
- Layout.preferredHeight: 144
- }
+ source: Dex.CurrentTheme.bigLogoPath
+ Layout.alignment: Qt.AlignHCenter
+ Layout.preferredWidth: 144
+ Layout.preferredHeight: 144
}
ColumnLayout
{
- spacing: 10
+ spacing: 5
// Seed
RowLayout
@@ -149,11 +163,11 @@ MultipageModal
Qaterial.RawMaterialButton
{
- backgroundImplicitWidth: 40
+ backgroundImplicitWidth: 30
backgroundImplicitHeight: 30
backgroundColor: "transparent"
icon.source: Qaterial.Icons.qrcodeScan
- icon.color: Dex.CurrentTheme.foregroundColor
+ icon.color: Dex.CurrentTheme.foregroundColor2
onClicked:
{
qrcodeModal.qrcodeSvg = API.qt_utilities.get_qrcode_svg_from_string(seedLabel.text)
@@ -163,11 +177,11 @@ MultipageModal
Qaterial.RawMaterialButton
{
- backgroundImplicitWidth: 40
+ backgroundImplicitWidth: 30
backgroundImplicitHeight: 30
backgroundColor: "transparent"
icon.source: Qaterial.Icons.contentCopy
- icon.color: Dex.CurrentTheme.foregroundColor
+ icon.color: Dex.CurrentTheme.foregroundColor2
onClicked:
{
API.qt_utilities.copy_text_to_clipboard(seedLabel.text)
@@ -177,8 +191,21 @@ MultipageModal
ColumnLayout
{
- DefaultText { text: qsTr("Backup Seed"); font.pixelSize: Style.textSizeSmall2 }
- DefaultText { id: seedLabel; Layout.fillWidth: true; font.pixelSize: Style.textSizeSmall1; maximumLineCount: 4; wrapMode: Text.Wrap }
+ DefaultText
+ {
+ text: qsTr("Backup Seed")
+ font.pixelSize: Style.textSizeSmall2
+ color: Dex.CurrentTheme.foregroundColor2
+ }
+
+ DefaultText
+ {
+ id: seedLabel
+ Layout.fillWidth: true
+ font.pixelSize: Style.textSizeSmall2
+ maximumLineCount: 4
+ wrapMode: Text.Wrap
+ }
}
}
@@ -189,11 +216,11 @@ MultipageModal
Qaterial.RawMaterialButton
{
- backgroundImplicitWidth: 40
+ backgroundImplicitWidth: 30
backgroundImplicitHeight: 30
backgroundColor: "transparent"
icon.source: Qaterial.Icons.qrcodeScan
- icon.color: Dex.CurrentTheme.foregroundColor
+ icon.color: Dex.CurrentTheme.foregroundColor2
onClicked:
{
qrcodeModal.qrcodeSvg = API.qt_utilities.get_qrcode_svg_from_string(rpcPwLabel.text)
@@ -203,11 +230,11 @@ MultipageModal
Qaterial.RawMaterialButton
{
- backgroundImplicitWidth: 40
+ backgroundImplicitWidth: 30
backgroundImplicitHeight: 30
backgroundColor: "transparent"
icon.source: Qaterial.Icons.contentCopy
- icon.color: Dex.CurrentTheme.foregroundColor
+ icon.color: Dex.CurrentTheme.foregroundColor2
onClicked:
{
API.qt_utilities.copy_text_to_clipboard(rpcPwLabel.text)
@@ -217,20 +244,33 @@ MultipageModal
ColumnLayout
{
- DefaultText { text: qsTr("RPC Password"); font.pixelSize: Style.textSizeSmall2 }
- DefaultText { id: rpcPwLabel; Layout.fillWidth: true; font.pixelSize: Style.textSizeSmall1; maximumLineCount: 4; wrapMode: Text.WrapAnywhere }
+ DefaultText
+ {
+ text: qsTr("RPC Password")
+ font.pixelSize: Style.textSizeSmall2
+ color: Dex.CurrentTheme.foregroundColor2
+ }
+ DefaultText
+ {
+ id: rpcPwLabel
+ Layout.fillWidth: true
+ font.pixelSize: Style.textSizeSmall2
+ maximumLineCount: 4
+ wrapMode: Text.WrapAnywhere
+ }
}
}
}
}
- HorizontalLine { Layout.topMargin: 10; Layout.fillWidth: true }
+ HorizontalLine { Layout.fillWidth: true }
DefaultTextField
{
visible: coinsList.visible
enabled: coinsList.enabled
- Layout.topMargin: 10
+ Layout.topMargin: 5
+ Layout.bottomMargin: 5
Layout.preferredWidth: parent.width / 3
placeholderText: qsTr("Search a coin.")
onTextChanged: portfolio_model.portfolio_proxy_mdl.setFilterFixedString(text)
@@ -242,7 +282,6 @@ MultipageModal
id: coinsList
visible: false
enabled: false
- Layout.topMargin: 10
Layout.preferredWidth: parent.width
Layout.preferredHeight: 300
Layout.alignment: Qt.AlignHCenter
@@ -261,32 +300,36 @@ MultipageModal
RowLayout
{
+ spacing: 5
Layout.fillWidth: true
Layout.leftMargin: 5
ColumnLayout
{
+ spacing: 5
Layout.fillWidth: true
DefaultImage
{
source: General.coinIcon(model.ticker)
- Layout.preferredWidth: 30
- Layout.preferredHeight: 30
+ Layout.preferredWidth: 40
+ Layout.preferredHeight: 40
Layout.alignment: Qt.AlignCenter
}
DefaultText
{
text: model.name
- font.pixelSize: Style.textSizeSmall5
+ font.pixelSize: Style.textSizeSmall4
+ color: Dex.CurrentTheme.foregroundColor2
horizontalAlignment: Text.AlignHCenter
- Layout.preferredWidth: 100
+ Layout.preferredWidth: 90
}
}
ColumnLayout
{
+ spacing: 5
// Public Address
RowLayout
{
@@ -296,7 +339,7 @@ MultipageModal
backgroundImplicitHeight: 30
backgroundColor: "transparent"
icon.source: Qaterial.Icons.qrcodeScan
- icon.color: Dex.CurrentTheme.foregroundColor
+ icon.color: Dex.CurrentTheme.foregroundColor2
onClicked:
{
qrcodeModal.qrcodeSvg = API.qt_utilities.get_qrcode_svg_from_string(publicAddress.text)
@@ -310,7 +353,7 @@ MultipageModal
backgroundImplicitHeight: 30
backgroundColor: "transparent"
icon.source: Qaterial.Icons.contentCopy
- icon.color: Dex.CurrentTheme.foregroundColor
+ icon.color: Dex.CurrentTheme.foregroundColor2
onClicked:
{
API.qt_utilities.copy_text_to_clipboard(publicAddress.text)
@@ -320,20 +363,20 @@ MultipageModal
ColumnLayout
{
+ spacing: 5
Layout.fillWidth: true
-
DefaultText
{
text: qsTr("Public Address")
font.pixelSize: Style.textSizeSmall2
+ color: Dex.CurrentTheme.foregroundColor2
}
DefaultText
{
id: publicAddress
text: model.public_address
- font.pixelSize: Style.textSizeSmall1
- maximumLineCount: 4; wrapMode: Text.WrapAnywhere
+ font: model.public_address.length > 70 ? DexTypo.body4 : DexTypo.body3
}
}
}
@@ -341,13 +384,14 @@ MultipageModal
// Private Key
RowLayout
{
+ spacing: 5
Qaterial.RawMaterialButton
{
backgroundImplicitWidth: 40
backgroundImplicitHeight: 30
backgroundColor: "transparent"
icon.source: Qaterial.Icons.qrcodeScan
- icon.color: Dex.CurrentTheme.foregroundColor
+ icon.color: Dex.CurrentTheme.foregroundColor2
onClicked:
{
qrcodeModal.qrcodeSvg = API.qt_utilities.get_qrcode_svg_from_string(privateKey.text)
@@ -361,30 +405,38 @@ MultipageModal
backgroundImplicitHeight: 30
backgroundColor: "transparent"
icon.source: Qaterial.Icons.contentCopy
- icon.color: Dex.CurrentTheme.foregroundColor
+ icon.color: Dex.CurrentTheme.foregroundColor2
onClicked:
{
- API.qt_utilities.copy_text_to_clipboard(privateKey.text)
+ API.qt_utilities.copy_text_to_clipboard(model.priv_key)
app.notifyCopy(model.name, qsTr("Private Key copied to clipboard"))
}
}
ColumnLayout
{
+ spacing: 5
Layout.fillWidth: true
DefaultText
{
text: qsTr("Private Key")
font.pixelSize: Style.textSizeSmall2
+ color: Dex.CurrentTheme.foregroundColor2
}
DefaultText
{
id: privateKey
+ font: DexTypo.body3
+ text: textMetrics.elidedText
+ }
+ TextMetrics {
+ id: textMetrics
+ elide: Text.ElideMiddle
+ font.family: DexTypo.fontFamily
+ elideWidth: 560
text: model.priv_key
- font.pixelSize: Style.textSizeSmall1
- maximumLineCount: 4; wrapMode: Text.WrapAnywhere
}
}
}
diff --git a/atomic_defi_design/Dex/Settings/SettingModal.qml b/atomic_defi_design/Dex/Settings/SettingModal.qml
index dad8a8ce29..b278a3ff74 100644
--- a/atomic_defi_design/Dex/Settings/SettingModal.qml
+++ b/atomic_defi_design/Dex/Settings/SettingModal.qml
@@ -8,6 +8,7 @@ import QtQuick.Window 2.12
import QtQuick.Controls.Universal 2.12
import Qaterial 1.0 as Qaterial
+import ModelHelper 0.1
import "../Components"
import "../Constants"
@@ -23,6 +24,7 @@ Qaterial.Dialog
property var recommended_fiats: API.app.settings_pg.get_recommended_fiats()
property var fiats: API.app.settings_pg.get_available_fiats()
property var enableable_coins_count: enableable_coins_count_combo_box.currentValue
+ property var orders: API.app.orders_mdl.orders_proxy_mdl.ModelHelper
width: 950
height: 650
@@ -35,30 +37,6 @@ Qaterial.Dialog
modal: true
title: "Settings"
- function disconnect()
- {
- let dialog = app.showDialog(
- {
- "title": qsTr("Confirm Logout"),
- text: qsTr("Are you sure you want to log out?"),
- standardButtons: Dialog.Yes | Dialog.Cancel,
- warning: true,
- yesButtonText: qsTr("Yes"),
- cancelButtonText: qsTr("Cancel"),
- onAccepted: function(text)
- {
- app.notifications_list = []
- app.currentWalletName = ""
- API.app.disconnect()
- onDisconnect()
- window.logged = false
- dialog.close()
- dialog.destroy()
- }
- })
-
- }
-
header: Item
{}
@@ -302,7 +280,7 @@ Qaterial.Dialog
onClicked:
{
- dialog = app.showDialog(
+ reset_dialog = app.showDialog(
{
title: qsTr("Reset wallet configuration"),
text: qsTr("This will restart your wallet with default settings"),
@@ -318,7 +296,7 @@ Qaterial.Dialog
}
}
})
- dialog.close()
+ reset_dialog.close()
}
}
}
@@ -503,6 +481,7 @@ Qaterial.Dialog
text: qsTr("2FA disabled successfully"),
yesButtonText: qsTr("Ok"),
titleBold: true,
+ showCancelBtn: false,
standardButtons: Dialog.Ok
})
atomic_settings2.setValue("2FA", 0)
@@ -517,6 +496,7 @@ Qaterial.Dialog
warning: true,
standardButtons: Dialog.Ok,
titleBold: true,
+ showCancelBtn: false,
yesButtonText: qsTr("Ok"),
})
checked = true
@@ -692,8 +672,9 @@ Qaterial.Dialog
iconSource: Qaterial.Icons.logout
onClicked:
{
- disconnect()
setting_modal.close()
+ if (orders.count != 0) logout_modal.open()
+ else return_to_login()
}
}
}
diff --git a/atomic_defi_design/Dex/Settings/Settings.qml b/atomic_defi_design/Dex/Settings/Settings.qml
deleted file mode 100644
index 297ff957e9..0000000000
--- a/atomic_defi_design/Dex/Settings/Settings.qml
+++ /dev/null
@@ -1,265 +0,0 @@
-// Qt Imports
-import QtQuick 2.15
-import QtQuick.Layouts 1.15
-import QtQuick.Controls 2.15
-import QtGraphicalEffects 1.0
-import Qt.labs.settings 1.0
-
-
-// Project Imports
-import "../Components"
-import "../Constants"
-import App 1.0
-
-// TODO: confirm deprecated; delete.
-
-Item {
- id: root
- function disconnect() {
- API.app.disconnect()
- onDisconnect()
- }
-
- readonly property string mm2_version: API.app.settings_pg.get_mm2_version()
- property var recommended_fiats: API.app.settings_pg.get_recommended_fiats()
- property var fiats: API.app.settings_pg.get_available_fiats()
-
-
-
- InnerBackground {
- id: layout_background
- anchors.centerIn: parent
- Layout.alignment: Qt.AlignHCenter
-
- width: 650
- height: 750
-
- content: ColumnLayout {
- width: layout_background.width
- height: layout_background.height
-
- ComboBoxWithTitle
- {
- id: combo_fiat
-
- property bool initialized: false
-
- title: qsTr("Fiat")
- Layout.fillWidth: true
- Layout.leftMargin: 30
- Layout.rightMargin: Layout.leftMargin
-
- model: fiats
-
- onCurrentIndexChanged:
- {
- if (initialized)
- {
- const new_fiat = fiats[currentIndex]
- API.app.settings_pg.current_fiat = new_fiat
- API.app.settings_pg.current_currency = new_fiat
- }
- }
- Component.onCompleted:
- {
- currentIndex = model.indexOf(API.app.settings_pg.current_fiat)
- initialized = true
- }
-
- RowLayout {
- Layout.topMargin: 5
- Layout.fillWidth: true
- Layout.leftMargin: 2
- Layout.rightMargin: Layout.leftMargin
-
- DefaultText {
- text: qsTr("Recommended: ")
- font.pixelSize: Style.textSizeSmall4
- }
-
- Grid {
- Layout.leftMargin: 30
- Layout.alignment: Qt.AlignVCenter
-
- clip: true
-
- columns: 6
- spacing: 25
-
- layoutDirection: Qt.LeftToRight
-
- Repeater {
- model: recommended_fiats
-
- delegate: DefaultText {
- text: modelData
- color: fiats_mouse_area.containsMouse ? Style.colorText : Style.colorText2
-
- DefaultMouseArea {
- id: fiats_mouse_area
- anchors.fill: parent
- hoverEnabled: true
- onClicked: {
- API.app.settings_pg.current_fiat = modelData
- API.app.settings_pg.current_currency = modelData
- combo_fiat.currentIndex = combo_fiat.model.indexOf(API.app.settings_pg.current_fiat)
- }
- }
- }
- }
- }
- }
- }
-
- HorizontalLine {
- Layout.fillWidth: true
- Layout.leftMargin: combo_fiat.Layout.leftMargin
- Layout.rightMargin: Layout.leftMargin
- Layout.topMargin: 10
- }
-
- Languages {
- Layout.alignment: Qt.AlignHCenter
- Layout.leftMargin: combo_fiat.Layout.leftMargin
- Layout.rightMargin: Layout.leftMargin
- }
-
- HorizontalLine {
- Layout.fillWidth: true
- Layout.leftMargin: combo_fiat.Layout.leftMargin
- Layout.rightMargin: Layout.leftMargin
- Layout.topMargin: 10
- }
-
- DefaultSwitch {
- Layout.alignment: Qt.AlignHCenter
- Layout.leftMargin: combo_fiat.Layout.leftMargin
- Layout.rightMargin: Layout.leftMargin
- text: qsTr("Enable Desktop Notifications")
- Component.onCompleted: checked = API.app.settings_pg.notification_enabled
- onCheckedChanged: API.app.settings_pg.notification_enabled = checked
- }
- DefaultSwitch {
- property bool firstTime: true
- Layout.alignment: Qt.AlignHCenter
- Layout.leftMargin: combo_fiat.Layout.leftMargin
- Layout.rightMargin: Layout.leftMargin
- checked: parseInt(atomic_settings2.value("FontMode")) === 1
- text: qsTr("Use QtTextRendering Or NativeTextRendering")
- onCheckedChanged: {
- if(checked){
- atomic_settings2.setValue("FontMode", 1)
- }else {
- atomic_settings2.setValue("FontMode", 0)
- }
- if(firstTime) {
- firstTime = false
- }else {
- restart_modal.open()
- }
-
- }
- }
-
- DefaultButton {
- Layout.fillWidth: true
- Layout.leftMargin: combo_fiat.Layout.leftMargin
- Layout.rightMargin: Layout.leftMargin
- text: qsTr("Open Logs Folder")
- onClicked: openLogsFolder()
- }
-
- DefaultButton {
- Layout.fillWidth: true
- Layout.leftMargin: combo_fiat.Layout.leftMargin
- Layout.rightMargin: Layout.leftMargin
- text: qsTr("View seed and private keys")
- onClicked: view_seed_modal.open()
- }
-
-
-
- HorizontalLine {
- Layout.fillWidth: true
- Layout.leftMargin: combo_fiat.Layout.leftMargin
- Layout.rightMargin: Layout.leftMargin
- }
-
- DefaultButton {
- Layout.fillWidth: true
- Layout.leftMargin: combo_fiat.Layout.leftMargin
- Layout.rightMargin: Layout.leftMargin
- text: qsTr("Disclaimer and ToS")
- onClicked: eula_modal.open()
- }
-
- ModalLoader {
- id: eula_modal
- sourceComponent: EulaModal {
- close_only: true
- }
- }
-
- HorizontalLine {
- Layout.fillWidth: true
- Layout.leftMargin: combo_fiat.Layout.leftMargin
- Layout.rightMargin: Layout.leftMargin
- }
-
- DefaultButton {
- visible: !API.app.is_pin_cfg_enabled()
- text: qsTr("Setup Camouflage Password")
- Layout.fillWidth: true
- Layout.leftMargin: combo_fiat.Layout.leftMargin
- Layout.rightMargin: Layout.leftMargin
- onClicked: camouflage_password_modal.open()
- }
-
- ModalLoader {
- id: camouflage_password_modal
- sourceComponent: CamouflagePasswordModal {}
- }
-
- DangerButton {
- Layout.fillWidth: true
- Layout.leftMargin: combo_fiat.Layout.leftMargin
- Layout.rightMargin: Layout.leftMargin
- text: qsTr("Reset wallet configuration")
- onClicked: {
- restart_modal.open()
- restart_modal.item.onTimerEnded = () => { API.app.settings_pg.reset_coin_cfg() }
- }
- }
-
- DangerButton {
- text: qsTr("Delete Wallet")
- Layout.fillWidth: true
- Layout.leftMargin: combo_fiat.Layout.leftMargin
- Layout.rightMargin: Layout.leftMargin
- onClicked: delete_wallet_modal.open()
- }
-
- ModalLoader {
- id: delete_wallet_modal
- sourceComponent: DeleteWalletModal {}
- }
-
- DefaultButton {
- Layout.fillWidth: true
- Layout.leftMargin: combo_fiat.Layout.leftMargin
- Layout.rightMargin: Layout.leftMargin
- text: qsTr("Log out")
- onClicked: disconnect()
- }
- }
- }
-
- DefaultText {
- anchors.right: parent.right
- anchors.bottom: parent.bottom
- anchors.bottomMargin: 10
- anchors.rightMargin: anchors.bottomMargin
- text_value: qsTr("mm2 version") + ": " + mm2_version
- font.pixelSize: Style.textSizeSmall
- }
-}
diff --git a/atomic_defi_design/Dex/Settings/SettingsButton.qml b/atomic_defi_design/Dex/Settings/SettingsButton.qml
index fda2caea48..8e53b8cb1d 100644
--- a/atomic_defi_design/Dex/Settings/SettingsButton.qml
+++ b/atomic_defi_design/Dex/Settings/SettingsButton.qml
@@ -20,38 +20,46 @@ RowLayout
{
Layout.alignment: Qt.AlignVCenter
font: DexTypo.subtitle1
- text: control.title // qsTr("Logs")
+ text: control.title
}
Item { Layout.fillWidth: true }
- DexAppButton
- {
- visible: control.noBackground
- Layout.alignment: Qt.AlignVCenter
- text: control.buttonText
- color: containsMouse ? DexTheme.buttonColorHovered : 'transparent'
- height: 48
- radius: 20
- font: Qt.font({
- pixelSize: 19 ,
- letterSpacing: 0.15,
- family: DexTypo.fontFamily,
- underline: true,
- weight: Font.Normal
- })
- iconSource: Qaterial.Icons.logout
- onClicked: control.clicked()
- }
- DexAppOutlineButton
+ Item
{
+ width: 120
Layout.alignment: Qt.AlignVCenter
- leftPadding: 20
- rightPadding: 20
- radius: 20
- visible: !control.noBackground
- text: control.buttonText //qsTr("Open Folder")
- onClicked: control.clicked()
+ Layout.preferredWidth: 200
+
+ Row
+ {
+ anchors.verticalCenter: parent.verticalCenter
+ anchors.right: parent.right
+
+ DexAppButton
+ {
+ visible: control.noBackground
+ text: control.buttonText
+ color: containsMouse ? DexTheme.buttonColorHovered : 'transparent'
+ height: 40
+ radius: 20
+ padding: 20
+ font: DexTypo.body1
+ iconSource: Qaterial.Icons.logout
+ onClicked: control.clicked()
+ }
+
+ DexAppOutlineButton
+ {
+ height: 40
+ padding: 20
+ radius: 20
+ font: DexTypo.body1
+ visible: !control.noBackground
+ text: control.buttonText
+ onClicked: control.clicked()
+ }
+ }
}
}
diff --git a/atomic_defi_design/Dex/Sidebar/Bottom.qml b/atomic_defi_design/Dex/Sidebar/Bottom.qml
index a20c1d6bbb..18067aba60 100644
--- a/atomic_defi_design/Dex/Sidebar/Bottom.qml
+++ b/atomic_defi_design/Dex/Sidebar/Bottom.qml
@@ -116,6 +116,7 @@ MouseArea
title: qsTr("Privacy status"),
text: qsTr("Privacy mode disabled successfully"),
yesButtonText: qsTr("Ok"), titleBold: true,
+ showCancelBtn: false,
standardButtons: Dialog.Ok
})
}
@@ -126,6 +127,7 @@ MouseArea
title: qsTr("Wrong password!"),
text: "%1 ".arg(wallet_name) + qsTr("wallet password is incorrect"),
warning: true,
+ showCancelBtn: false,
standardButtons: Dialog.Ok, titleBold: true,
yesButtonText: qsTr("Ok"),
})
diff --git a/atomic_defi_design/Dex/Support/SupportModal.qml b/atomic_defi_design/Dex/Support/SupportModal.qml
index de230590af..3c197c9b4f 100644
--- a/atomic_defi_design/Dex/Support/SupportModal.qml
+++ b/atomic_defi_design/Dex/Support/SupportModal.qml
@@ -241,6 +241,7 @@ Network fees can vary greatly depending on your selected trading pair.").arg(API
DexAppButton
{
id: logs_btn
+ width: 200
text: qsTr("Open Logs Folder")
onClicked: openLogsFolder()
}
diff --git a/atomic_defi_design/Dex/Wallet/AddressList.qml b/atomic_defi_design/Dex/Wallet/AddressList.qml
index c8aa9f6692..d272ba604e 100644
--- a/atomic_defi_design/Dex/Wallet/AddressList.qml
+++ b/atomic_defi_design/Dex/Wallet/AddressList.qml
@@ -31,12 +31,14 @@ ColumnLayout
clip: true
- delegate: DefaultTextEdit
+ delegate: TextEditWithCopy
{
id: address_text
text_value: model.modelData
privacy: true
- font.pixelSize: root.addressFontSize
+ font_size: 13
+ align_left: true
+ text_box_width: 600
linkURL: root.linkURL
onCopyNotificationTitle: root.onCopyNotificationTitle
}
diff --git a/atomic_defi_design/Dex/Wallet/ClaimFaucetResultModal.qml b/atomic_defi_design/Dex/Wallet/ClaimFaucetResultModal.qml
index fd01e04aaf..7e74f78fd2 100644
--- a/atomic_defi_design/Dex/Wallet/ClaimFaucetResultModal.qml
+++ b/atomic_defi_design/Dex/Wallet/ClaimFaucetResultModal.qml
@@ -20,7 +20,7 @@ MultipageModal {
DefaultText {
id: message
-
+ width: parent.width
text_value: claiming_faucet_rpc_result && claiming_faucet_rpc_result.message ?
claiming_faucet_rpc_result.message : ""
}
diff --git a/atomic_defi_design/Dex/Wallet/ClaimRewardsModal.qml b/atomic_defi_design/Dex/Wallet/ClaimRewardsModal.qml
index 6a61033487..4222e0189f 100644
--- a/atomic_defi_design/Dex/Wallet/ClaimRewardsModal.qml
+++ b/atomic_defi_design/Dex/Wallet/ClaimRewardsModal.qml
@@ -86,9 +86,12 @@ MultipageModal
if(root.visible && broadcast_result !== "") {
root.currentIndex = 1
postClaim()
+ root.width = 750
}
}
+ Behavior on width { NumberAnimation { duration: 300 } }
+
function prepareClaimRewards() {
if(!can_claim) return
@@ -441,9 +444,9 @@ MultipageModal
// Result Page
SendResult
{
+ address: current_ticker_infos.address
result: prepare_claim_rewards_result
tx_hash: broadcast_result
-
function onClose() { root.close() }
}
}
diff --git a/atomic_defi_design/Dex/Wallet/EnableCoinModal.qml b/atomic_defi_design/Dex/Wallet/EnableCoinModal.qml
index 55753e5d8c..332f7049b0 100644
--- a/atomic_defi_design/Dex/Wallet/EnableCoinModal.qml
+++ b/atomic_defi_design/Dex/Wallet/EnableCoinModal.qml
@@ -266,7 +266,7 @@ MultipageModal
DefaultButton
{
Layout.preferredWidth: 199
- text: qsTr("Close")
+ text: qsTr("Cancel")
radius: 20
onClicked: root.close()
},
diff --git a/atomic_defi_design/Dex/Wallet/Main.qml b/atomic_defi_design/Dex/Wallet/Main.qml
index 21d8c7bce4..eb6bba59cd 100644
--- a/atomic_defi_design/Dex/Wallet/Main.qml
+++ b/atomic_defi_design/Dex/Wallet/Main.qml
@@ -20,20 +20,24 @@ Item
{
id: root
property alias send_modal: send_modal
- readonly property int layout_margin: 20
- readonly property string headerTitleColor: Style.colorText2
- readonly property string headerTitleFont: Style.textSizeMid1
- readonly property string headerTextColor: Dex.CurrentTheme.foregroundColor
- readonly property string headerTextFont: Style.textSize
- readonly property string headerSmallTitleFont: Style.textSizeSmall4
- readonly property string headerSmallFont: Style.textSizeSmall2
- readonly property string addressURL: General.getAddressExplorerURL(api_wallet_page.ticker, current_ticker_infos.address)
-
- function loadingPercentage(remaining) {
+
+ readonly property int layout_margin: 20
+ readonly property string headerTitleColor: Style.colorText2
+ readonly property string headerTitleFont: Style.textSizeMid1
+ readonly property string headerTextColor: Dex.CurrentTheme.foregroundColor
+ readonly property string headerTextFont: Style.textSize
+ readonly property string headerSmallTitleFont: Style.textSizeSmall4
+ readonly property string headerSmallFont: Style.textSizeSmall2
+ readonly property string addressURL: General.getAddressExplorerURL(api_wallet_page.ticker, current_ticker_infos.address)
+
+ function loadingPercentage(remaining)
+ {
return General.formatPercent((100 * (1 - parseFloat(remaining)/parseFloat(current_ticker_infos.current_block))).toFixed(3), false)
}
readonly property var transactions_mdl: api_wallet_page.transactions_mdl
+ readonly property var activation_status: current_ticker_infos.activation_status
+ readonly property var activation_progress: General.isZhtlc(api_wallet_page.ticker) ? General.zhtlcActivationProgress(current_ticker_infos.activation_status, api_wallet_page.ticker) : 100
Layout.fillHeight: true
Layout.fillWidth: true
@@ -86,6 +90,30 @@ Item
Layout.preferredHeight: 60
Layout.preferredWidth: Layout.preferredHeight
Layout.alignment: Qt.AlignHCenter | Qt.AlignVCenter
+
+ DexRectangle
+ {
+ anchors.centerIn: parent
+ anchors.fill: parent
+ radius: 30
+ enabled: activation_progress != 100
+ visible: enabled
+ opacity: .9
+ color: DexTheme.backgroundColor
+ }
+
+ DexLabel
+ {
+ anchors.centerIn: parent
+ anchors.fill: parent
+ enabled: activation_progress != 100
+ visible: enabled
+ horizontalAlignment: Text.AlignHCenter
+ verticalAlignment: Text.AlignVCenter
+ text: activation_progress + "%"
+ font: DexTypo.head8
+ color: DexTheme.greenColor
+ }
}
DefaultText
@@ -401,8 +429,7 @@ Item
// Send Button
DefaultButton
{
- enabled: API.app.wallet_pg.send_available
-
+ enabled: General.canSend(api_wallet_page.ticker, activation_progress)
anchors.fill: parent
radius: 18
@@ -430,8 +457,10 @@ Item
// Send button error icon
DefaultAlertIcon
{
- visible: API.app.wallet_pg.send_availability_state !== ""
- tooltipText: API.app.wallet_pg.send_availability_state
+ visible: activation_progress != 100 || api_wallet_page.send_availability_state !== ""
+ tooltipText: General.isZhtlc(api_wallet_page.ticker) && activation_progress != 100
+ ? api_wallet_page.ticker + qsTr(" Activation: " + activation_progress + "%")
+ : api_wallet_page.send_availability_state
}
}
@@ -495,26 +524,40 @@ Item
sourceComponent: CannotEnableCoinModal { coin_to_enable_ticker: API.app.wallet_pg.ticker_infos.fee_ticker }
}
- // Receive Button
- DefaultButton
+ Item
{
Layout.preferredWidth: 180
Layout.preferredHeight: 48
- radius: 18
- label.text: qsTr("Receive")
- label.font.pixelSize: 16
- content.anchors.left: content.parent.left
- content.anchors.leftMargin: 23
+ // Receive Button
+ DefaultButton
+ {
+ // Address wont display until activated
+ enabled: General.isZhtlcReady(api_wallet_page.ticker, activation_progress)
+ anchors.fill: parent
+ radius: 18
+
+ label.text: qsTr("Receive")
+ label.font.pixelSize: 16
+ content.anchors.left: content.parent.left
+ content.anchors.leftMargin: enabled ? 23 : 48
- onClicked: receive_modal.open()
+ onClicked: receive_modal.open()
- TransactionArrow
+ TransactionArrow
+ {
+ anchors.verticalCenter: parent.verticalCenter
+ anchors.right: parent.right
+ anchors.rightMargin: 19
+ amISender: false
+ }
+ }
+
+ // Receive button error icon
+ DefaultAlertIcon
{
- anchors.verticalCenter: parent.verticalCenter
- anchors.right: parent.right
- anchors.rightMargin: arrow_send.anchors.rightMargin
- amISender: false
+ visible: !General.isZhtlcReady(api_wallet_page.ticker, activation_progress)
+ tooltipText: api_wallet_page.ticker + qsTr(" Activation: " + activation_progress + "%")
}
}
@@ -533,7 +576,7 @@ Item
DefaultButton
{
- enabled: !API.app.portfolio_pg.global_cfg_mdl.get_coin_info(api_wallet_page.ticker).is_wallet_only
+ enabled: !General.isWalletOnly(api_wallet_page.ticker) && activation_progress == 100
anchors.fill: parent
radius: 18
@@ -569,8 +612,10 @@ Item
// Swap button error icon
DefaultAlertIcon
{
- visible: API.app.portfolio_pg.global_cfg_mdl.get_coin_info(api_wallet_page.ticker).is_wallet_only
- tooltipText: api_wallet_page.ticker + qsTr(" is wallet only")
+ visible: General.isWalletOnly(api_wallet_page.ticker) || activation_progress != 100
+ tooltipText: General.isWalletOnly(api_wallet_page.ticker)
+ ? api_wallet_page.ticker + qsTr(" is wallet only")
+ : api_wallet_page.ticker + qsTr(" Activation: " + activation_progress + "%")
}
}
@@ -611,15 +656,51 @@ Item
{
Layout.preferredWidth: 180
Layout.preferredHeight: 48
- visible: enabled && current_ticker_infos.is_smartchain_test_coin
+ visible: current_ticker_infos.is_smartchain_test_coin
DefaultButton
{
- text: qsTr("Faucet")
- radius: 18
- font.pixelSize: 16
+ enabled: activation_progress == 100
anchors.fill: parent
+ radius: 18
+ label.text: qsTr("Faucet")
+ label.font.pixelSize: 16
+ content.anchors.left: content.parent.left
+ content.anchors.leftMargin: enabled ? 23 : 48
+ content.anchors.rightMargin: 23
+
onClicked: api_wallet_page.claim_faucet()
+
+ Row
+ {
+ anchors.verticalCenter: parent.verticalCenter
+ anchors.right: parent.right
+ anchors.rightMargin: arrow_send.anchors.rightMargin
+
+ Qaterial.Icon
+ {
+ icon: Qaterial.Icons.water
+ size: 24
+ anchors.right: parent.right
+ anchors.leftMargin: iconSize / 2
+ anchors.rightMargin: iconSize / 2
+ anchors.verticalCenter: parent.verticalCenter
+ color: "cyan"
+
+ DefaultTooltip
+ {
+ visible: alertArea.containsMouse && tooltipText != ""
+ text: ""
+ }
+ }
+ }
+ }
+
+ // Faucet button error icon
+ DefaultAlertIcon
+ {
+ visible: activation_progress != 100
+ tooltipText: api_wallet_page.ticker + qsTr(" Activation: " + activation_progress + "%")
}
}
@@ -894,12 +975,10 @@ Item
{
width: parent.width
height: parent.height
- model: transactions_mdl.proxy_mdl
}
ColumnLayout
{
-
visible: current_ticker_infos.tx_state !== "InProgress" && transactions_mdl.length === 0
anchors.fill: parent
anchors.centerIn: parent
@@ -910,8 +989,16 @@ Item
id: fetching_text_row
Layout.topMargin: 24
Layout.alignment: Qt.AlignHCenter
- text_value: api_wallet_page.tx_fetching_busy ? qsTr("Fetching transactions...") : qsTr('No transactions available')
font.pixelSize: Style.textSize
+ text_value:
+ {
+ if (api_wallet_page.tx_fetching_busy) return qsTr("Fetching transactions...")
+ if (General.isZhtlc(api_wallet_page.ticker))
+ {
+ if (activation_progress != 100) return qsTr("Please wait, %1 is %2").arg(api_wallet_page.ticker).arg(activation_progress) + qsTr("% activated...")
+ }
+ return qsTr('No transactions available')
+ }
}
DefaultBusyIndicator
@@ -931,7 +1018,7 @@ Item
Layout.alignment: Qt.AlignHCenter
visible:
{
- if (addressURL) console.log("addressURL: " + addressURL)
+ if (activation_progress != 100) return false
return api_wallet_page.tx_fetching_busy ? false : addressURL == "" ? false : api_wallet_page.tx_fetching_failed
}
text_value: qsTr("Click to view your address on %1 (%2) block explorer").arg(current_ticker_infos.name).arg(api_wallet_page.ticker)
@@ -944,10 +1031,7 @@ Item
cursorShape: Qt.PointingHandCursor
anchors.fill: parent
hoverEnabled: true
- onClicked: {
- console.log(addressURL)
- Qt.openUrlExternally(addressURL)
- }
+ onClicked: Qt.openUrlExternally(addressURL)
}
}
diff --git a/atomic_defi_design/Dex/Wallet/ReceiveModal.qml b/atomic_defi_design/Dex/Wallet/ReceiveModal.qml
index 71a1fb38a0..cb91aded2d 100644
--- a/atomic_defi_design/Dex/Wallet/ReceiveModal.qml
+++ b/atomic_defi_design/Dex/Wallet/ReceiveModal.qml
@@ -12,32 +12,43 @@ MultipageModal
function reset() { }
- width: 600
+ width: 800
MultipageModalContent
{
- titleText: qsTr("Receive")
+ titleText: qsTr("Receive %1", "TICKER").arg(api_wallet_page.ticker)
+ subtitleText: qsTr("Only send %1 to this address", "TICKER").arg(api_wallet_page.ticker)
+ titleAlignment: Qt.AlignHCenter
+ subtitleAlignment: Qt.AlignHCenter
+ topMarginAfterTitle: 15
- TextEditWithTitle
+ TextEditWithCopy
{
- title: qsTr("Only send %1 to this address:", "TICKER").arg(api_wallet_page.ticker)
- text: current_ticker_infos.address
- label.font.pixelSize: 13
- copy: true
- privacy: true
- onCopyNotificationTitle: qsTr("%1 address".arg(api_wallet_page.ticker))
+ text_value: current_ticker_infos.address
+ font_size: 13
+ text_box_width:
+ {
+ let char_len = current_ticker_infos.address.length
+ if (char_len > 70) return 560
+ if (char_len > 50) return 450
+ if (char_len > 40) return 400
+ return 300
+ }
+ onCopyNotificationTitle: qsTr("%1 address", "TICKER").arg(api_wallet_page.ticker)
onCopyNotificationMsg: qsTr("copied to clipboard.")
+ privacy: true
}
DefaultImage
{
- Layout.topMargin: 20
+ Layout.topMargin: 15
+ Layout.bottomMargin: 15
Layout.alignment: Qt.AlignHCenter
source: current_ticker_infos.qrcode_address
- sourceSize.width: 300
- sourceSize.height: 300
+ sourceSize.width: 350
+ sourceSize.height: 350
}
// Buttons
diff --git a/atomic_defi_design/Dex/Wallet/SendModal.qml b/atomic_defi_design/Dex/Wallet/SendModal.qml
index 718c59f857..e48aefb716 100644
--- a/atomic_defi_design/Dex/Wallet/SendModal.qml
+++ b/atomic_defi_design/Dex/Wallet/SendModal.qml
@@ -35,6 +35,7 @@ MultipageModal
readonly property bool is_validate_address_busy: api_wallet_page.validate_address_busy
readonly property bool is_convert_address_busy: api_wallet_page.convert_address_busy
readonly property string address: api_wallet_page.converted_address
+ readonly property string withdraw_status: api_wallet_page.withdraw_status
readonly property bool auth_succeeded: api_wallet_page.auth_succeeded
@@ -68,18 +69,9 @@ MultipageModal
api_wallet_page.broadcast(send_result.withdraw_answer.tx_hex, false, send_result.withdraw_answer.max, input_amount.text)
}
- function isSpecialToken() {
- if (current_ticker_infos.hasOwnProperty("has_parent_fees_ticker"))
- return current_ticker_infos.has_parent_fees_ticker
- return false
- }
-
- function isERC20() {
- return current_ticker_infos.type === "ERC-20" || current_ticker_infos.type === "BEP-20" || current_ticker_infos.type == "Matic"
- }
function hasErc20CaseIssue(addr) {
- if(!isERC20()) return false
+ if(!General.isERC20(current_ticker_infos)) return false
if(addr.length <= 2) return false
addr = addr.substring(2) // Remove 0x
@@ -99,11 +91,13 @@ MultipageModal
function feeIsHigherThanAmount() {
- if(!custom_fees_switch.checked) return false
+ if (!custom_fees_switch.checked) return false
+
+ if (input_amount.text === "") return false
const amount = parseFloat(getCryptoAmount())
- if(isSpecialToken()) {
+ if (General.isSpecialToken(current_ticker_infos)) {
const parent_ticker = General.getFeesTicker(current_ticker_infos)
const gas_limit = parseFloat(input_custom_fees_gas.text)
const gas_price = parseFloat(input_custom_fees_gas_price.text)
@@ -137,8 +131,8 @@ MultipageModal
function feesAreFilled() {
return (!custom_fees_switch.checked || (
- (!isSpecialToken() && input_custom_fees.acceptableInput) ||
- (isSpecialToken() && input_custom_fees_gas.acceptableInput && input_custom_fees_gas_price.acceptableInput &&
+ (!General.isSpecialToken(current_ticker_infos) && input_custom_fees.acceptableInput) ||
+ (General.isSpecialToken(current_ticker_infos) && input_custom_fees_gas.acceptableInput && input_custom_fees_gas_price.acceptableInput &&
parseFloat(input_custom_fees_gas.text) > 0 && parseFloat(input_custom_fees_gas_price.text) > 0)
)
)
@@ -154,7 +148,7 @@ MultipageModal
input_amount.text = current_ticker_infos.balance
}
- width: 650
+ width: 750
closePolicy: Popup.NoAutoClose
@@ -211,7 +205,7 @@ MultipageModal
if(root.visible && broadcast_result !== "") {
if(broadcast_result.indexOf("error") !== -1) {
reset()
- showError(qsTr("Failed to Send"), General.prettifyJSON(broadcast_result))
+ showError(qsTr("Failed to Broadcast"), General.prettifyJSON(broadcast_result))
}
else {
root.currentIndex = 2
@@ -268,7 +262,7 @@ MultipageModal
{
enabled: !root.segwit && !root.is_send_busy
- Layout.preferredWidth: 420
+ Layout.preferredWidth: 500
Layout.preferredHeight: 44
Layout.alignment: Qt.AlignHCenter
@@ -279,11 +273,16 @@ MultipageModal
{
id: input_address
- width: 390
+ width: 470
height: 44
placeholderText: qsTr("Address of the recipient")
forceFocus: true
- onTextChanged: api_wallet_page.validate_address(text)
+ font: General.isZhtlc(api_wallet_page.ticker) ? DexTypo.body3 : DexTypo.body2
+ onTextChanged:
+ {
+ text = text.replace(/(\r\n|\n|\r)/gm,"").replace(" ", "")
+ api_wallet_page.validate_address(text)
+ }
}
Rectangle
@@ -370,7 +369,7 @@ MultipageModal
enabled: !root.is_send_busy
Layout.alignment: Qt.AlignHCenter
- Layout.preferredWidth: 420
+ Layout.preferredWidth: 500
Layout.preferredHeight: 44
Layout.topMargin: 32
@@ -563,6 +562,7 @@ MultipageModal
ColumnLayout
{
+ visible: General.getCustomFeeType(current_ticker_infos)
Layout.preferredWidth: 380
Layout.alignment: Qt.AlignHCenter
Layout.topMargin: 32
@@ -571,6 +571,7 @@ MultipageModal
DefaultSwitch
{
id: custom_fees_switch
+ visible: !General.isZhtlc(api_wallet_page.ticker)
enabled: !root.is_send_busy
Layout.preferredWidth: 260
onCheckedChanged: input_custom_fees.text = ""
@@ -579,15 +580,38 @@ MultipageModal
label.wrapMode: Label.NoWrap
}
- // Custom fees warning
- DefaultText
+ RowLayout
{
visible: custom_fees_switch.checked
- font.pixelSize: 14
- Layout.alignment: Qt.AlignHCenter
- horizontalAlignment: DefaultText.AlignHCenter
- color: Dex.CurrentTheme.noColor
- text_value: qsTr("Only use custom fees if you know what you are doing!")
+ // Custom fees warning
+ DefaultText
+ {
+ font.pixelSize: 14
+ Layout.alignment: Qt.AlignHCenter
+ horizontalAlignment: DefaultText.AlignHCenter
+ color: Dex.CurrentTheme.noColor
+ }
+
+ DefaultText
+ {
+ visible: input_custom_fees.visible
+ font.pixelSize: 14
+ Layout.alignment: Qt.AlignHCenter
+ horizontalAlignment: DefaultText.AlignHCenter
+ color: Dex.CurrentTheme.noColor
+ text_value: qsTr("Only use custom fees if you know what you are doing! ")
+ }
+
+ DefaultText
+ {
+ visible: input_custom_fees_gas.visible
+ font.pixelSize: 14
+ Layout.alignment: Qt.AlignHCenter
+ horizontalAlignment: DefaultText.AlignHCenter
+ color: Dex.CurrentTheme.noColor
+ text_value: qsTr("Only use custom fees if you know what you are doing! ") + General.cex_icon
+ DefaultInfoTrigger { triggerModal: gas_info_modal }
+ }
}
}
@@ -603,7 +627,7 @@ MultipageModal
// Normal coins, Custom fees input
AmountField
{
- visible: !isSpecialToken() && !isParentCoin(api_wallet_page.ticker)
+ visible: General.getCustomFeeType(current_ticker_infos) == "UTXO"
id: input_custom_fees
@@ -619,7 +643,8 @@ MultipageModal
// Token coins
ColumnLayout
{
- visible: isSpecialToken()
+ visible: General.getCustomFeeType(current_ticker_infos) == "Gas"
+
Layout.alignment: Qt.AlignHCenter
// Gas input
@@ -632,7 +657,7 @@ MultipageModal
Layout.preferredWidth: 380
Layout.preferredHeight: 38
- placeholderText: qsTr("Gas Limit") + " [" + General.tokenUnitName(current_ticker_infos.type) + "]"
+ placeholderText: qsTr("Gas Limit")
}
// Gas price input
@@ -689,6 +714,18 @@ MultipageModal
visible: root.is_send_busy
}
+ // Withdraw status
+ DefaultText
+ {
+ Layout.topMargin: 16
+ Layout.alignment: Qt.AlignHCenter
+ horizontalAlignment: DefaultText.AlignHCenter
+ wrapMode: Label.Wrap
+ visible: General.isZhtlc(api_wallet_page.ticker) && withdraw_status != "Complete"
+ color: Dex.CurrentTheme.foregroundColor
+ text_value: withdraw_status
+ }
+
// Footer
RowLayout
@@ -698,7 +735,7 @@ MultipageModal
DefaultButton
{
- text: qsTr("Close")
+ text: qsTr("Cancel")
Layout.alignment: Qt.AlignLeft
Layout.preferredWidth: parent.width / 100 * 48
@@ -722,7 +759,7 @@ MultipageModal
text: qsTr("Prepare")
onClicked: prepareSendCoin(input_address.text, getCryptoAmount(), custom_fees_switch.checked, input_custom_fees.text,
- isSpecialToken(), input_custom_fees_gas.text, input_custom_fees_gas_price.text)
+ General.isSpecialToken(current_ticker_infos), input_custom_fees_gas.text, input_custom_fees_gas_price.text)
}
}
@@ -747,12 +784,32 @@ MultipageModal
MultipageModalContent
{
titleText: qsTr("Send")
+ titleAlignment: Qt.AlignHCenter
// Address
- TextEditWithTitle
+ TitleText
{
- title: qsTr("Recipient's address")
- text: input_address.text
+ text: qsTr("Recipient's address")
+ Layout.fillWidth: true
+ color: Dex.CurrentTheme.foregroundColor2
+ }
+
+ TextEditWithCopy
+ {
+ text_value: input_address.text
+ font_size: 13
+ align_left: true
+ text_box_width:
+ {
+ let char_len = current_ticker_infos.address.length
+ if (char_len > 70) return 560
+ if (char_len > 50) return 450
+ if (char_len > 40) return 400
+ return 300
+ }
+ onCopyNotificationTitle: qsTr("%1 address", "TICKER").arg(api_wallet_page.ticker)
+ onCopyNotificationMsg: qsTr("copied to clipboard.")
+ privacy: true
}
// Amount
diff --git a/atomic_defi_design/Dex/Wallet/SendResult.qml b/atomic_defi_design/Dex/Wallet/SendResult.qml
index 0c7e070d10..41b06be0cb 100644
--- a/atomic_defi_design/Dex/Wallet/SendResult.qml
+++ b/atomic_defi_design/Dex/Wallet/SendResult.qml
@@ -5,24 +5,57 @@ import QtQuick.Controls 2.15
import "../Components"
import "../Constants"
import App 1.0
+import Dex.Themes 1.0 as Dex
MultipageModalContent
{
id: root
property var result
- property alias address: address.text
+ property alias address: address.text_value
property string custom_amount
- property alias tx_hash: tx_hash.text
+ property alias tx_hash: tx_hash.text_value
titleText: qsTr("Transaction Complete!")
+ // Transaction Hash
+ TitleText
+ {
+ text: qsTr("Transaction Hash")
+ Layout.fillWidth: true
+ visible: text !== ""
+ color: Dex.CurrentTheme.foregroundColor2
+ }
+
+ TextEditWithCopy
+ {
+ id: tx_hash
+ font_size: 13
+ align_left: true
+ text_box_width: 560
+ onCopyNotificationTitle: qsTr("%1 txid", "TICKER").arg(api_wallet_page.ticker)
+ onCopyNotificationMsg: qsTr("copied to clipboard.")
+ privacy: true
+ }
+
// Address
- TextEditWithTitle
+ TitleText
{
- id: address
- title: qsTr("Recipient's address")
+ text: qsTr("Recipient's address")
+ Layout.fillWidth: true
visible: text !== ""
+ color: Dex.CurrentTheme.foregroundColor2
+ }
+
+ TextEditWithCopy
+ {
+ id: address
+ font_size: 13
+ align_left: true
+ text_box_width: 560
+ onCopyNotificationTitle: qsTr("%1 address", "TICKER").arg(api_wallet_page.ticker)
+ onCopyNotificationMsg: qsTr("copied to clipboard.")
+ privacy: true
}
// Amount
@@ -68,13 +101,6 @@ MultipageModalContent
text: result.withdraw_answer.date
}
- // Transaction Hash
- TextEditWithTitle
- {
- id: tx_hash
- Layout.fillWidth: true
- title: qsTr("Transaction Hash")
- }
// Buttons
footer:
@@ -91,7 +117,7 @@ MultipageModalContent
Layout.fillWidth: true
text: qsTr("View on Explorer")
radius: 18
- onClicked: General.viewTxAtExplorer(api_wallet_page.ticker, tx_hash.text)
+ onClicked: General.viewTxAtExplorer(api_wallet_page.ticker, tx_hash.text_value)
}
]
}
diff --git a/atomic_defi_design/Dex/Wallet/Sidebar.qml b/atomic_defi_design/Dex/Wallet/Sidebar.qml
index 4b54ce976d..aca26235ad 100644
--- a/atomic_defi_design/Dex/Wallet/Sidebar.qml
+++ b/atomic_defi_design/Dex/Wallet/Sidebar.qml
@@ -9,6 +9,7 @@ import "../Components"
import "../Constants" as Constants
import App 1.0
import Dex.Themes 1.0 as Dex
+import Dex.Components 1.0 as Dex
// Coins bar at left side
Item
@@ -59,7 +60,7 @@ Item
Layout.preferredHeight: 38
textField.placeholderText: qsTr("Search")
- forceFocus: true
+ //forceFocus: true
searchModel: portfolio_coins
}
@@ -71,14 +72,21 @@ Item
Layout.fillHeight: true
Layout.alignment: Qt.AlignHCenter
color: 'transparent'
- content: DexListView {
+ content: Dex.ListView
+ {
id: list
height: list_bg.height
model: portfolio_coins
topMargin: 5
bottomMargin: 5
scrollbar_visible: false
- DexRectangle {
+
+ reuseItems: true
+
+ delegate: SidebarItemDelegate { }
+
+ Dex.Rectangle
+ {
anchors.bottom: parent.bottom
anchors.horizontalCenter: parent.horizontalCenter
width: parent.width + 4
@@ -94,23 +102,21 @@ Item
}
}
- DexRectangle {
+ Dex.Rectangle
+ {
anchors.horizontalCenter: parent.horizontalCenter
width: parent.width + 4
height: 30
radius: 8
opacity: .5
visible: list.position > 0 ? true : false
- Qaterial.Icon {
+ Qaterial.Icon
+ {
anchors.centerIn: parent
- color: DexTheme.foregroundColor
+ color: Dex.CurrentTheme.foregroundColor
icon: Qaterial.Icons.arrowUpCircleOutline
}
}
-
- reuseItems: true
-
- delegate: SidebarItemDelegate { }
}
}
diff --git a/atomic_defi_design/Dex/Wallet/SidebarItemDelegate.qml b/atomic_defi_design/Dex/Wallet/SidebarItemDelegate.qml
index 408a48545d..8d3a1ad757 100644
--- a/atomic_defi_design/Dex/Wallet/SidebarItemDelegate.qml
+++ b/atomic_defi_design/Dex/Wallet/SidebarItemDelegate.qml
@@ -6,15 +6,18 @@ import Qaterial 1.0 as Qaterial
import QtGraphicalEffects 1.0
import "../Components"
-import "../Constants" as Constants
+import "../Constants" as Dex
import App 1.0
-GradientRectangle {
+GradientRectangle
+{
+ property int activation_progress: Dex.General.zhtlcActivationProgress(activation_status, ticker)
+
width: list_bg.width - list_bg.border.width*2 - 6
height: 44
- radius: Constants.Style.rectangleCornerRadius + 4
+ radius: Dex.Style.rectangleCornerRadius + 4
- start_color: api_wallet_page.ticker === ticker ? DexTheme.buttonColorEnabled : mouse_area.containsMouse ? DexTheme.buttonColorHovered : 'transparent'
+ start_color: api_wallet_page.ticker === ticker ? Dex.DexTheme.buttonColorEnabled : mouse_area.containsMouse ? Dex.DexTheme.buttonColorHovered : 'transparent'
end_color: 'transparent'
// Click area
@@ -24,23 +27,23 @@ GradientRectangle {
hoverEnabled: true
acceptedButtons: Qt.LeftButton | Qt.RightButton
- onClicked: {
- if(!can_change_ticker) return
-
- if (mouse.button === Qt.RightButton) context_menu.popup()
- else api_wallet_page.ticker = ticker
- }
- onPressAndHold: {
- if(!can_change_ticker) return
-
- if (mouse.source === Qt.MouseEventNotSynthesized) context_menu.popup()
+ onClicked:
+ {
+ if (mouse.button === Qt.RightButton)
+ {
+ context_menu.can_disable = General.canDisable(ticker)
+ context_menu.popup()
+ }
+ else
+ {
+ api_wallet_page.ticker = ticker
+ }
}
+ onPressAndHold: if (mouse.source === Qt.MouseEventNotSynthesized) context_menu.popup()
}
// Right click menu
- CoinMenu {
- id: context_menu
- }
+ CoinMenu { id: context_menu }
readonly property double side_margin: 16
@@ -50,9 +53,33 @@ GradientRectangle {
anchors.left: parent.left
anchors.leftMargin: side_margin - scrollbar_margin
- source: Constants.General.coinIcon(ticker)
- width: Constants.Style.textSizeSmall4*2
+ source: Dex.General.coinIcon(ticker)
+ width: Dex.Style.textSizeSmall4*2
anchors.verticalCenter: parent.verticalCenter
+
+ DexRectangle
+ {
+ anchors.centerIn: parent
+ anchors.fill: parent
+ radius: 15
+ enabled: Dex.General.isZhtlc(ticker) ? activation_progress != 100 : false
+ visible: enabled
+ opacity: .9
+ color: Dex.DexTheme.backgroundColor
+ }
+
+ DexLabel
+ {
+ anchors.centerIn: parent
+ anchors.fill: parent
+ enabled: Dex.General.isZhtlc(ticker) ? activation_progress != 100 : false
+ visible: enabled
+ horizontalAlignment: Text.AlignHCenter
+ verticalAlignment: Text.AlignVCenter
+ text: activation_progress + "%"
+ font: Dex.DexTypo.head8
+ color: Dex.DexTheme.greenColor
+ }
}
ColumnLayout {
@@ -64,10 +91,10 @@ GradientRectangle {
DexLabel {
Layout.alignment: Qt.AlignLeft
Layout.preferredWidth: 80
- font: DexTypo.caption
- wrapMode: DexLabel.WordWrap
+ font: Dex.DexTypo.caption
+ wrapMode: Text.WordWrap
text_value: mouse_area.containsMouse ? name.replace(" (TESTCOIN)", "") : ticker
- color: DexTheme.foregroundColor
+ color: Dex.DexTheme.foregroundColor
}
}
}
diff --git a/atomic_defi_design/Dex/Wallet/TransactionDetailsModal.qml b/atomic_defi_design/Dex/Wallet/TransactionDetailsModal.qml
index 92bb7866b3..25380f302a 100644
--- a/atomic_defi_design/Dex/Wallet/TransactionDetailsModal.qml
+++ b/atomic_defi_design/Dex/Wallet/TransactionDetailsModal.qml
@@ -13,6 +13,7 @@ import Dex.Themes 1.0 as Dex
MultipageModal
{
id: root
+ width: 780
function reset() { }
@@ -28,6 +29,28 @@ MultipageModal
{
titleText: qsTr("Transaction Details")
+ // Transaction Hash
+ TitleText
+ {
+ text: qsTr("Transaction Hash")
+ Layout.fillWidth: true
+ visible: text !== ""
+ color: Dex.CurrentTheme.foregroundColor2
+ }
+
+ TextEditWithCopy
+ {
+ id: tx_hash
+ font_size: 13
+ align_left: true
+ text_box_width: 600
+ text_value: !details ? "" : details.tx_hash
+ linkURL: !details ? "" :General.getTxExplorerURL(api_wallet_page.ticker, details.tx_hash, false)
+ onCopyNotificationTitle: qsTr("%1 txid", "TICKER").arg(api_wallet_page.ticker)
+ onCopyNotificationMsg: qsTr("copied to clipboard.")
+ privacy: true
+ }
+
// Amount
TextEditWithTitle
{
@@ -48,6 +71,30 @@ MultipageModal
label.font.pixelSize: 13
}
+ AddressList
+ {
+ width: parent.width
+ title: qsTr("From")
+ model: !details ? [] :
+ details.from
+ linkURL: !details ? "" :General.getAddressExplorerURL(api_wallet_page.ticker, details.from)
+ onCopyNotificationTitle: qsTr("From address")
+ }
+
+ AddressList
+ {
+ width: parent.width
+ title: qsTr("To")
+ model: !details ?
+ [] : details.to.length > 1 ?
+ General.arrayExclude(details.to, details.from[0]) : details.to
+ linkURL: !details ? ""
+ : details.to.length > 1
+ ? General.getAddressExplorerURL(api_wallet_page.ticker, General.arrayExclude(details.to, details.from[0]))
+ : General.getAddressExplorerURL(api_wallet_page.ticker, details.to)
+ onCopyNotificationTitle: qsTr("To address")
+ }
+
// Date
TextEditWithTitle
{
@@ -56,20 +103,6 @@ MultipageModal
label.font.pixelSize: 13
}
- // Transaction Hash
- TextEditWithTitle
- {
- id: txHash
- title: qsTr("Transaction Hash")
- text: !details ? "" : details.tx_hash
- label.font.pixelSize: 11
- privacy: true
- linkURL: !details ? "" :General.getTxExplorerURL(api_wallet_page.ticker, details.tx_hash, false)
- copy: true
-
- onCopyNotificationTitle: qsTr("Transactions")
- onCopyNotificationMsg: qsTr("txid copied to clipboard")
- }
// Confirmations
TextEditWithTitle
@@ -87,39 +120,6 @@ MultipageModal
label.font.pixelSize: 13
}
- DefaultRectangle {
- Layout.fillWidth: true
- Layout.preferredHeight: addressColumn.height + 10
- color: DexTheme.contentColorTop
-
- Column {
- id: addressColumn
- width: parent.width - 10
- anchors.centerIn: parent
-
- AddressList {
- width: parent.width
- title: qsTr("From")
- model: !details ? [] :
- details.from
- linkURL: !details ? "" :General.getAddressExplorerURL(api_wallet_page.ticker, details.from)
- onCopyNotificationTitle: qsTr("From address")
- }
-
- AddressList {
- width: parent.width
- title: qsTr("To")
- model: !details ?
- [] : details.to.length > 1 ?
- General.arrayExclude(details.to, details.from[0]) : details.to
- linkURL: !details ? ""
- : details.to.length > 1
- ? General.getAddressExplorerURL(api_wallet_page.ticker, General.arrayExclude(details.to, details.from[0]))
- : General.getAddressExplorerURL(api_wallet_page.ticker, details.to)
- onCopyNotificationTitle: qsTr("To address")
- }
- }
- }
// Notes
TextAreaWithTitle
@@ -132,6 +132,7 @@ MultipageModal
titleColor: Dex.CurrentTheme.foregroundColor2
remove_newline: false
field.text: !details ? "" : details.transaction_note
+ field.rightPadding: 0
saveable: true
field.onTextChanged:
diff --git a/atomic_defi_design/Dex/Wallet/Transactions.qml b/atomic_defi_design/Dex/Wallet/Transactions.qml
index a195fc610b..30e94fa2b8 100644
--- a/atomic_defi_design/Dex/Wallet/Transactions.qml
+++ b/atomic_defi_design/Dex/Wallet/Transactions.qml
@@ -5,8 +5,9 @@ import QtQuick.Controls 2.15
import "../Components"
import "../Constants"
import Dex.Themes 1.0 as Dex
+import Dex.Components 1.0 as Dex
-DefaultListView
+Dex.ListView
{
id: list
@@ -18,14 +19,10 @@ DefaultListView
property real _feeColumnWidth: 225
property real _dateColumnWidth: 170
- ModalLoader
- {
- id: tx_details_modal
- sourceComponent: TransactionDetailsModal {}
- }
+ model: transactions_mdl.proxy_mdl
// Row
- delegate: DexRectangle
+ delegate: Dex.Rectangle
{
id: rectangle
width: list.width
@@ -35,7 +32,7 @@ DefaultListView
colorAnimation: false
color: mouse_area.containsMouse ? Dex.CurrentTheme.buttonColorHovered : 'transparent'
- DexMouseArea
+ Dex.MouseArea
{
id: mouse_area
anchors.fill: parent
@@ -47,14 +44,17 @@ DefaultListView
}
}
- RowLayout {
+ RowLayout
+ {
id: tx_row
anchors.fill: parent
anchors.margins: 15
- RowLayout {
+ RowLayout
+ {
spacing: 3
Layout.preferredWidth: _categoryColumnWidth
+
Circle
{
id: note_tag
@@ -70,7 +70,7 @@ DefaultListView
}
// Description
- DexLabel
+ Dex.Text
{
id: description
horizontalAlignment: Qt.AlignLeft
@@ -80,7 +80,7 @@ DefaultListView
}
// Crypto
- DexLabel
+ Dex.Text
{
id: crypto_amount
Layout.preferredWidth: _cryptoColumnWidth
@@ -98,7 +98,7 @@ DefaultListView
}
// Fiat
- DexLabel
+ Dex.Text
{
Layout.preferredWidth: _fiatColumnWidth
horizontalAlignment: Text.AlignRight
@@ -109,7 +109,7 @@ DefaultListView
}
// Fee
- DexLabel
+ Dex.Text
{
Layout.preferredWidth: _feeColumnWidth
horizontalAlignment: Text.AlignRight
@@ -120,7 +120,7 @@ DefaultListView
}
// Date
- DexLabel
+ Dex.Text
{
Layout.preferredWidth: _dateColumnWidth
horizontalAlignment: Text.AlignRight
@@ -130,4 +130,10 @@ DefaultListView
}
}
}
+
+ ModalLoader
+ {
+ id: tx_details_modal
+ sourceComponent: TransactionDetailsModal {}
+ }
}
diff --git a/atomic_defi_design/Dex/main.qml b/atomic_defi_design/Dex/main.qml
index e5da681944..546f406a79 100644
--- a/atomic_defi_design/Dex/main.qml
+++ b/atomic_defi_design/Dex/main.qml
@@ -1,14 +1,12 @@
-//! Qt Imports
import QtQuick 2.15
import QtQuick.Controls 2.15
import QtQuick.Controls.Universal 2.15
import QtQuick.Layouts 1.12
import Qt.labs.settings 1.0
+import ModelHelper 0.1
-//! 3rdParty Imports
import Qaterial 1.0 as Qaterial
-//! Project Imports
import App 1.0
import "Components"
import Dex.Themes 1.0 as Dex
@@ -17,11 +15,12 @@ DexWindow
{
id: window
- property int previousX: 0
- property int previousY: 0
- property int real_visibility
+ property int previousX: 0
+ property int previousY: 0
+ property int real_visibility
property bool isOsx: Qt.platform.os == "osx"
property bool logged: false
+ property var orders: API.app.orders_mdl.orders_proxy_mdl.ModelHelper
title: API.app_name
visible: true
@@ -108,32 +107,8 @@ DexWindow
anchors.fill: parent
onClicked:
{
- let dialog = app.showDialog(
- {
- "title": qsTr("Confirm Logout"),
- text: qsTr("Are you sure you want to log out?"),
- standardButtons: Dialog.Yes | Dialog.Cancel,
- warning: true,
- height: 230,
- centerAlign: true,
- yesButtonText: qsTr("Yes"),
- cancelButtonText: qsTr("Cancel"),
- onAccepted: function(text)
- {
- app.notifications_list = []
- userMenu.close()
- app.currentWalletName = ""
- API.app.disconnect()
- app.onDisconnect()
- window.logged = false
- dialog.close()
- dialog.destroy()
- },
- onRejected: function()
- {
- userMenu.close()
- }
- })
+ if (orders.count != 0) app.logout_confirm_modal.open()
+ else app.return_to_login()
}
}
}
@@ -199,11 +174,14 @@ DexWindow
anchors.verticalCenter: parent.verticalCenter
layoutDirection: Qt.RightToLeft
spacing: 6
+
Item
{
width: 15
height: 1
}
+
+ // User / logout
Rectangle
{
width: __row.width + 10
@@ -211,6 +189,7 @@ DexWindow
anchors.verticalCenter: parent.verticalCenter
radius: 3
color: _area.containsMouse ? Dex.CurrentTheme.floatingBackgroundColor : "transparent"
+
Row
{
id: __row
@@ -247,6 +226,7 @@ DexWindow
anchors.verticalCenter: parent.verticalCenter
}
}
+
DexMouseArea
{
id: _area
@@ -264,11 +244,14 @@ DexWindow
}
}
}
+
Item
{
width: 10
height: 1
}
+
+ // Wallet Balance
Row
{
anchors.verticalCenter: parent.verticalCenter
@@ -283,6 +266,7 @@ DexWindow
visible: _label.visible
anchors.verticalCenter: parent.verticalCenter
}
+
DexLabel
{
text_value: General.formatFiat("", API.app.portfolio_pg.balance_fiat_all, API.app.settings_pg.current_currency)
@@ -315,6 +299,7 @@ DexWindow
height: 1
}
+ // Notifications
DexIconButton
{
color: containsMouse ? Dex.CurrentTheme.gradientButtonPressedStartColor : Dex.CurrentTheme.foregroundColor
@@ -357,6 +342,7 @@ DexWindow
fileName: atomic_cfg_file
}
+ // Theme toggle
DexIconButton
{
id: themeSwitchBut
diff --git a/atomic_defi_design/assets/images/coins/1inch.png b/atomic_defi_design/assets/images/coins/1inch.png
index 53aada0629..c2b9d20a1a 100644
Binary files a/atomic_defi_design/assets/images/coins/1inch.png and b/atomic_defi_design/assets/images/coins/1inch.png differ
diff --git a/atomic_defi_design/assets/images/coins/actn.png b/atomic_defi_design/assets/images/coins/actn.png
index 2160891678..740e6b6d85 100644
Binary files a/atomic_defi_design/assets/images/coins/actn.png and b/atomic_defi_design/assets/images/coins/actn.png differ
diff --git a/atomic_defi_design/assets/images/coins/ape.png b/atomic_defi_design/assets/images/coins/ape.png
index 81e7165e46..70eea410b6 100644
Binary files a/atomic_defi_design/assets/images/coins/ape.png and b/atomic_defi_design/assets/images/coins/ape.png differ
diff --git a/atomic_defi_design/assets/images/coins/aslp.png b/atomic_defi_design/assets/images/coins/aslp.png
new file mode 100644
index 0000000000..4514883847
Binary files /dev/null and b/atomic_defi_design/assets/images/coins/aslp.png differ
diff --git a/atomic_defi_design/assets/images/coins/avax.png b/atomic_defi_design/assets/images/coins/avax.png
index ab5ed4d8db..d32406c5cd 100644
Binary files a/atomic_defi_design/assets/images/coins/avax.png and b/atomic_defi_design/assets/images/coins/avax.png differ
diff --git a/atomic_defi_design/assets/images/coins/avn.png b/atomic_defi_design/assets/images/coins/avn.png
new file mode 100644
index 0000000000..a22e149551
Binary files /dev/null and b/atomic_defi_design/assets/images/coins/avn.png differ
diff --git a/atomic_defi_design/assets/images/coins/aya.png b/atomic_defi_design/assets/images/coins/aya.png
new file mode 100644
index 0000000000..819e34c0ed
Binary files /dev/null and b/atomic_defi_design/assets/images/coins/aya.png differ
diff --git a/atomic_defi_design/assets/images/coins/chta.png b/atomic_defi_design/assets/images/coins/chta.png
new file mode 100755
index 0000000000..250081362e
Binary files /dev/null and b/atomic_defi_design/assets/images/coins/chta.png differ
diff --git a/atomic_defi_design/assets/images/coins/chz.png b/atomic_defi_design/assets/images/coins/chz.png
index 400df28631..fde9fa6c9c 100644
Binary files a/atomic_defi_design/assets/images/coins/chz.png and b/atomic_defi_design/assets/images/coins/chz.png differ
diff --git a/atomic_defi_design/assets/images/coins/ddd.png b/atomic_defi_design/assets/images/coins/ddd.png
new file mode 100644
index 0000000000..ea14603798
Binary files /dev/null and b/atomic_defi_design/assets/images/coins/ddd.png differ
diff --git a/atomic_defi_design/assets/images/coins/dent.png b/atomic_defi_design/assets/images/coins/dent.png
new file mode 100644
index 0000000000..575c580646
Binary files /dev/null and b/atomic_defi_design/assets/images/coins/dent.png differ
diff --git a/atomic_defi_design/assets/images/coins/flexusd.png b/atomic_defi_design/assets/images/coins/flexusd.png
new file mode 100644
index 0000000000..09467ef0af
Binary files /dev/null and b/atomic_defi_design/assets/images/coins/flexusd.png differ
diff --git a/atomic_defi_design/assets/images/coins/glm.png b/atomic_defi_design/assets/images/coins/glm.png
new file mode 100644
index 0000000000..2596892e04
Binary files /dev/null and b/atomic_defi_design/assets/images/coins/glm.png differ
diff --git a/atomic_defi_design/assets/images/coins/gmt.png b/atomic_defi_design/assets/images/coins/gmt.png
index 1f5027659f..36c961c52f 100644
Binary files a/atomic_defi_design/assets/images/coins/gmt.png and b/atomic_defi_design/assets/images/coins/gmt.png differ
diff --git a/atomic_defi_design/assets/images/coins/gmx.png b/atomic_defi_design/assets/images/coins/gmx.png
new file mode 100644
index 0000000000..b84f2f58c3
Binary files /dev/null and b/atomic_defi_design/assets/images/coins/gmx.png differ
diff --git a/atomic_defi_design/assets/images/coins/gtu.png b/atomic_defi_design/assets/images/coins/gtu.png
new file mode 100644
index 0000000000..3ef5e1c590
Binary files /dev/null and b/atomic_defi_design/assets/images/coins/gtu.png differ
diff --git a/atomic_defi_design/assets/images/coins/honk.png b/atomic_defi_design/assets/images/coins/honk.png
new file mode 100644
index 0000000000..dbd5c3114f
Binary files /dev/null and b/atomic_defi_design/assets/images/coins/honk.png differ
diff --git a/atomic_defi_design/assets/images/coins/ilnf.png b/atomic_defi_design/assets/images/coins/ilnf.png
new file mode 100644
index 0000000000..7205de78b6
Binary files /dev/null and b/atomic_defi_design/assets/images/coins/ilnf.png differ
diff --git a/atomic_defi_design/assets/images/coins/ilnsw.png b/atomic_defi_design/assets/images/coins/ilnsw.png
new file mode 100644
index 0000000000..3e93caf84c
Binary files /dev/null and b/atomic_defi_design/assets/images/coins/ilnsw.png differ
diff --git a/atomic_defi_design/assets/images/coins/jdb.png b/atomic_defi_design/assets/images/coins/jdb.png
new file mode 100644
index 0000000000..e05f13b2e6
Binary files /dev/null and b/atomic_defi_design/assets/images/coins/jdb.png differ
diff --git a/atomic_defi_design/assets/images/coins/joy.png b/atomic_defi_design/assets/images/coins/joy.png
new file mode 100644
index 0000000000..efd41707a5
Binary files /dev/null and b/atomic_defi_design/assets/images/coins/joy.png differ
diff --git a/atomic_defi_design/assets/images/coins/jst.png b/atomic_defi_design/assets/images/coins/jst.png
new file mode 100644
index 0000000000..10361f179c
Binary files /dev/null and b/atomic_defi_design/assets/images/coins/jst.png differ
diff --git a/atomic_defi_design/assets/images/coins/ldo.png b/atomic_defi_design/assets/images/coins/ldo.png
new file mode 100644
index 0000000000..f608e53381
Binary files /dev/null and b/atomic_defi_design/assets/images/coins/ldo.png differ
diff --git a/atomic_defi_design/assets/images/coins/lnc.png b/atomic_defi_design/assets/images/coins/lnc.png
new file mode 100644
index 0000000000..c71ff557db
Binary files /dev/null and b/atomic_defi_design/assets/images/coins/lnc.png differ
diff --git a/atomic_defi_design/assets/images/coins/loom.png b/atomic_defi_design/assets/images/coins/loom.png
new file mode 100644
index 0000000000..defb6fac46
Binary files /dev/null and b/atomic_defi_design/assets/images/coins/loom.png differ
diff --git a/atomic_defi_design/assets/images/coins/loop.png b/atomic_defi_design/assets/images/coins/loop.png
new file mode 100644
index 0000000000..f637259f01
Binary files /dev/null and b/atomic_defi_design/assets/images/coins/loop.png differ
diff --git a/atomic_defi_design/assets/images/coins/lrc.png b/atomic_defi_design/assets/images/coins/lrc.png
index 02c8686e55..c982e9b616 100644
Binary files a/atomic_defi_design/assets/images/coins/lrc.png and b/atomic_defi_design/assets/images/coins/lrc.png differ
diff --git a/atomic_defi_design/assets/images/coins/maze.png b/atomic_defi_design/assets/images/coins/maze.png
new file mode 100644
index 0000000000..f3e98bf0da
Binary files /dev/null and b/atomic_defi_design/assets/images/coins/maze.png differ
diff --git a/atomic_defi_design/assets/images/coins/mc.png b/atomic_defi_design/assets/images/coins/mc.png
new file mode 100644
index 0000000000..ee0a7dabd3
Binary files /dev/null and b/atomic_defi_design/assets/images/coins/mc.png differ
diff --git a/atomic_defi_design/assets/images/coins/med.png b/atomic_defi_design/assets/images/coins/med.png
new file mode 100644
index 0000000000..5f06199fc9
Binary files /dev/null and b/atomic_defi_design/assets/images/coins/med.png differ
diff --git a/atomic_defi_design/assets/images/coins/nav.png b/atomic_defi_design/assets/images/coins/nav.png
index 088c43607e..3837c3257a 100644
Binary files a/atomic_defi_design/assets/images/coins/nav.png and b/atomic_defi_design/assets/images/coins/nav.png differ
diff --git a/atomic_defi_design/assets/images/coins/neng.png b/atomic_defi_design/assets/images/coins/neng.png
new file mode 100755
index 0000000000..d21debfa2e
Binary files /dev/null and b/atomic_defi_design/assets/images/coins/neng.png differ
diff --git a/atomic_defi_design/assets/images/coins/ninja.png b/atomic_defi_design/assets/images/coins/ninja.png
new file mode 100644
index 0000000000..9d0c512155
Binary files /dev/null and b/atomic_defi_design/assets/images/coins/ninja.png differ
diff --git a/atomic_defi_design/assets/images/coins/psf.png b/atomic_defi_design/assets/images/coins/psf.png
new file mode 100644
index 0000000000..8a16d160b7
Binary files /dev/null and b/atomic_defi_design/assets/images/coins/psf.png differ
diff --git a/atomic_defi_design/assets/images/coins/qnt.png b/atomic_defi_design/assets/images/coins/qnt.png
index e795e58f96..dd84529e5d 100644
Binary files a/atomic_defi_design/assets/images/coins/qnt.png and b/atomic_defi_design/assets/images/coins/qnt.png differ
diff --git a/atomic_defi_design/assets/images/coins/rbtc.png b/atomic_defi_design/assets/images/coins/rbtc.png
index 01ce3898f8..cfea17b093 100644
Binary files a/atomic_defi_design/assets/images/coins/rbtc.png and b/atomic_defi_design/assets/images/coins/rbtc.png differ
diff --git a/atomic_defi_design/assets/images/coins/scrt.png b/atomic_defi_design/assets/images/coins/scrt.png
new file mode 100644
index 0000000000..03f3b5cf63
Binary files /dev/null and b/atomic_defi_design/assets/images/coins/scrt.png differ
diff --git a/atomic_defi_design/assets/images/coins/seele.png b/atomic_defi_design/assets/images/coins/seele.png
new file mode 100644
index 0000000000..82b69a10e2
Binary files /dev/null and b/atomic_defi_design/assets/images/coins/seele.png differ
diff --git a/atomic_defi_design/assets/images/coins/slp.png b/atomic_defi_design/assets/images/coins/slp.png
new file mode 100644
index 0000000000..4514883847
Binary files /dev/null and b/atomic_defi_design/assets/images/coins/slp.png differ
diff --git a/atomic_defi_design/assets/images/coins/solve.png b/atomic_defi_design/assets/images/coins/solve.png
new file mode 100644
index 0000000000..e255a2cec3
Binary files /dev/null and b/atomic_defi_design/assets/images/coins/solve.png differ
diff --git a/atomic_defi_design/assets/images/coins/sour.png b/atomic_defi_design/assets/images/coins/sour.png
new file mode 100644
index 0000000000..3f8d943baf
Binary files /dev/null and b/atomic_defi_design/assets/images/coins/sour.png differ
diff --git a/atomic_defi_design/assets/images/coins/spice.png b/atomic_defi_design/assets/images/coins/spice.png
new file mode 100644
index 0000000000..3c0ca974ca
Binary files /dev/null and b/atomic_defi_design/assets/images/coins/spice.png differ
diff --git a/atomic_defi_design/assets/images/coins/stst.png b/atomic_defi_design/assets/images/coins/stst.png
new file mode 100644
index 0000000000..4514883847
Binary files /dev/null and b/atomic_defi_design/assets/images/coins/stst.png differ
diff --git a/atomic_defi_design/assets/images/coins/swap.png b/atomic_defi_design/assets/images/coins/swap.png
new file mode 100644
index 0000000000..8b9322d98d
Binary files /dev/null and b/atomic_defi_design/assets/images/coins/swap.png differ
diff --git a/atomic_defi_design/assets/images/coins/tama.png b/atomic_defi_design/assets/images/coins/tama.png
new file mode 100644
index 0000000000..25d9e1a766
Binary files /dev/null and b/atomic_defi_design/assets/images/coins/tama.png differ
diff --git a/atomic_defi_design/assets/images/coins/tbch.png b/atomic_defi_design/assets/images/coins/tbch.png
new file mode 100644
index 0000000000..c0e65ffd61
Binary files /dev/null and b/atomic_defi_design/assets/images/coins/tbch.png differ
diff --git a/atomic_defi_design/assets/images/coins/ton.png b/atomic_defi_design/assets/images/coins/ton.png
new file mode 100644
index 0000000000..e51df480b5
Binary files /dev/null and b/atomic_defi_design/assets/images/coins/ton.png differ
diff --git a/atomic_defi_design/assets/images/coins/ttt.png b/atomic_defi_design/assets/images/coins/ttt.png
index 3bddf690ce..e9077a4b28 100644
Binary files a/atomic_defi_design/assets/images/coins/ttt.png and b/atomic_defi_design/assets/images/coins/ttt.png differ
diff --git a/atomic_defi_design/assets/images/coins/usdf.png b/atomic_defi_design/assets/images/coins/usdf.png
new file mode 100644
index 0000000000..4514883847
Binary files /dev/null and b/atomic_defi_design/assets/images/coins/usdf.png differ
diff --git a/atomic_defi_design/assets/images/coins/vtc.png b/atomic_defi_design/assets/images/coins/vtc.png
new file mode 100644
index 0000000000..7255699eb6
Binary files /dev/null and b/atomic_defi_design/assets/images/coins/vtc.png differ
diff --git a/atomic_defi_design/assets/images/coins/woo.png b/atomic_defi_design/assets/images/coins/woo.png
new file mode 100644
index 0000000000..2a00e447cc
Binary files /dev/null and b/atomic_defi_design/assets/images/coins/woo.png differ
diff --git a/atomic_defi_design/assets/images/coins/zapt.png b/atomic_defi_design/assets/images/coins/zapt.png
new file mode 100644
index 0000000000..fe593de5f9
Binary files /dev/null and b/atomic_defi_design/assets/images/coins/zapt.png differ
diff --git a/atomic_defi_design/assets/images/coins/zombie.png b/atomic_defi_design/assets/images/coins/zombie.png
new file mode 100644
index 0000000000..6a1bbc8df9
Binary files /dev/null and b/atomic_defi_design/assets/images/coins/zombie.png differ
diff --git a/atomic_defi_design/assets/images/lang/de.png b/atomic_defi_design/assets/images/lang/de.png
new file mode 100644
index 0000000000..c4b7c4335b
Binary files /dev/null and b/atomic_defi_design/assets/images/lang/de.png differ
diff --git a/atomic_defi_design/assets/images/lang/es.png b/atomic_defi_design/assets/images/lang/es.png
new file mode 100755
index 0000000000..5fdf39bb75
Binary files /dev/null and b/atomic_defi_design/assets/images/lang/es.png differ
diff --git a/atomic_defi_design/assets/languages/atomic_defi_de.ts b/atomic_defi_design/assets/languages/atomic_defi_de.ts
new file mode 100644
index 0000000000..8ee90d8381
--- /dev/null
+++ b/atomic_defi_design/assets/languages/atomic_defi_de.ts
@@ -0,0 +1,4573 @@
+
+
+
+
+ AddAddressForm
+
+
+
+ Standard-Netzwerkadresse verwenden
+
+
+
+
+ Bezeichnung
+
+
+
+
+ Dieser Schlüssel existiert bereits.
+
+
+
+
+ Adresse
+
+
+
+
+
+ Abbrechen
+
+
+
+
+ Umwandeln
+
+
+
+
+ Bearbeiten
+
+
+
+
+ Hinzufügen
+
+
+
+
+ Sie müssen %1 aktivieren, bevor Sie diese Art von Adresse hinzufügen.
+
+
+
+
+ Aktivieren
+
+
+
+ AddCustomCoinModal
+
+
+
+ Erhalten Sie die Vertragsadresse von
+
+
+
+
+ Wählen Sie den Asset-Typ aus
+
+
+
+
+ Abbrechen
+
+
+
+
+
+
+ Weiter
+
+
+
+
+ Vertragsadresse
+
+
+
+
+ Geben Sie die Vertragsadresse ein
+
+
+
+
+ Wählen Sie den Asset-Ticker
+
+
+
+
+ Ticker
+
+
+
+
+ Geben Sie den Ticker ein
+
+
+
+
+ Erhalten Sie die Vertragsadresse von
+
+
+
+
+
+
+
+ Vorherige
+
+
+
+
+ Wählen Sie ein Logo für das Asset aus
+
+
+
+
+ Durchsuchen
+
+
+
+
+ Bitte wählen Sie für das Asset ein Logo aus
+
+
+
+
+ Konfiguration
+
+
+
+
+ Alle Konfigurationsfelder werden mit der von Ihnen angegebenen Vertragsadresse abgerufen.
+
+
+
+
+ Name
+
+
+
+
+ Geben Sie den Namen ein
+
+
+
+
+ Coingecko ID
+
+
+
+
+ Geben Sie die Coingecko-ID ein
+
+
+
+
+ Coingecko-ID erhalten
+
+
+
+
+ Aktiv
+
+
+
+
+
+ Vorschau
+
+
+
+
+ WARNUNG: Die Anwendung wird sofort neu gestartet, um die Änderungen zu übernehmen!
+
+
+
+
+ Asset nicht gefunden, bitte gehen Sie zurück und stellen Sie sicher, dass die Vertragsadresse korrekt ist
+
+
+
+
+ Konfigurationsfelder
+
+
+
+
+ Abgerufene Daten
+
+
+
+
+ Bestätigen und Neu starten
+
+
+
+ AddTagPopup
+
+
+
+ Schlagwort
+
+
+
+
+ Der Kontakt hat bereits dieses Schlagwort.
+
+
+
+
+ + HINZUFÜGEN
+
+
+
+ AmountChart
+
+
+
+ In Arbeit
+
+
+
+ App
+
+
+
+ Ergebnis der Rückerstattung der Geldmittel
+
+
+
+ AssetFromStandardSelector
+
+
+
+ Wählen Sie eine gültige
+
+
+
+
+ Asset
+
+
+
+
+ Asset suchen
+
+
+
+
+ Deaktiviert
+
+
+
+ AssetPieChart
+
+
+
+ Assets
+
+
+
+ AssetsList
+
+
+
+ Asset
+
+
+
+
+ Balance
+
+
+
+
+ Fiat Balance
+
+
+
+
+ 24h Veränderung
+
+
+
+
+ Preis
+
+
+
+
+ Quelle
+
+
+
+
+
+
+
+
+
+ Preisanbieter ist: %1
+
+
+
+ Bottom
+
+
+
+ Einstellungen
+
+
+
+
+ Support
+
+
+
+
+ Datenschutz
+
+
+
+
+ Datenschutz deaktivieren?
+
+
+
+
+ Geben Sie zur Bestätigung das Kennwort der Brieftasche ein
+
+
+
+
+ Kennwort eingeben
+
+
+
+
+ Bestätigen
+
+
+
+
+ Abbrechen
+
+
+
+
+ Status Datenschutz
+
+
+
+
+ Der Datenschutzmodus wurde erfolgreich deaktiviert
+
+
+
+
+
+ Ok
+
+
+
+
+ Falsches Kennwort!
+
+
+
+
+ Kennwort der Brieftasche ist falsch
+
+
+
+ CamouflagePasswordModal
+
+
+
+ Tarnkennwort einrichten
+
+
+
+
+ Das Tarnkennwort (Camouflage Password) ist ein geheimes Passwort für Notsituationen.
+
+
+
+
+ Wenn Sie sich damit anmelden, wird Ihr Guthaben niedriger angezeigt, als es tatsächlich ist.
+
+
+
+
+ Hier geben Sie den Zusatz ein und beim Einloggen benötigen Sie {echtes Kennwort}{suffix}
+Beispiel: Kennwort = 1234 Suffix=56 Eingabe beim Login=123456
+
+
+
+
+ Kennwort-Zusatz
+
+
+
+
+ Kennwort-Zusatz bestätigen
+
+
+
+
+ Geben Sie einen Kennwort-Zusatz ein
+
+
+
+
+ Geben Sie zur Bestätigung denselben Kennwort-Zusatz ein
+
+
+
+
+ Abbrechen
+
+
+
+
+ Speichern
+
+
+
+ CannotEnableCoinModal
+
+
+
+ Aktivierung von %1 fehlgeschlagen
+
+
+
+
+ Das Aktivieren von %1 war nicht erfolgreich. Das Limit der aktivierten Coins wurde möglicherweise erreicht.
+
+
+
+
+ Limit in den Einstellungen ändern
+
+
+
+
+ Abbrechen
+
+
+
+ Center
+
+
+
+ Portfolio
+
+
+
+
+ Brieftasche
+
+
+
+
+ DEX
+
+
+
+
+ Adressbuch
+
+
+
+
+ Fiat
+
+
+
+ CexInfoModal
+
+
+
+ Marktdaten
+
+
+
+
+ Mit dem Symbol ⓘ gekennzeichnete Marktdaten (Kurse, Charts etc.) stammen aus Drittquellen.<br><br>Die Daten stammen von <a href="https://bandprotocol.com/">Band Decentralized Oracle</a> und <a href="https://coingecko.com">CoinGecko</a>.<br><br><b>Oracle unterstützte Paare:</b><br>%1<br><br><b>Letzte Referenz (Band Oracle):</b><br><a href="%2">%2</a>
+
+
+
+ Chart
+
+
+
+ Laden von Marktdaten
+
+
+
+
+ Für dieses Paar liegen noch keine Chartdaten vor
+
+
+
+ ClaimRewardsModal
+
+
+
+ Vorbereitung zum Einfordern von Belohnungen fehlgeschlagen
+
+
+
+
+ TICKER
+ %1 Belohnung beantragen?
+
+
+
+
+ Keine beanspruchungsberechtigten UTXOs vorhanden
+
+
+
+
+ Die Transaktionsgebühr ist höher als die Belohnung!
+
+
+
+
+ Sie erhalten
+
+
+
+
+ Aktualisieren
+
+
+
+
+ Lesen Sie mehr über die Belohnungen für aktive KMD-Benutzer
+
+
+
+
+ UTXO
+
+
+
+
+ Menge
+
+
+
+
+ Belohnung
+
+
+
+
+ Anfallender Start
+
+
+
+
+ Anfallender Stopp
+
+
+
+
+ Verbleibende Zeit
+
+
+
+
+ Fehler
+
+
+
+
+ Die Sperrzeit ist nicht eingestellt
+
+
+
+
+ Die Sperrzeit liegt unter dem Schwellenwert
+
+
+
+
+ UTXO-Höhe ist größer als Ende der Ära
+
+
+
+
+ UTXO-Menge ist kleiner als 10
+
+
+
+
+ Eine Stunde ist noch nicht vergangen
+
+
+
+
+ Die Transaktion befindet sich in Mempool
+
+
+
+
+ Unbekanntes Problem
+
+
+
+
+ Abbrechen
+
+
+
+
+ Bestätigen
+
+
+
+ CoinMenu
+
+
+
+ TICKER
+ %1 deaktivieren
+
+
+
+
+ TICKER
+ %1 deaktivieren und löschen
+
+
+
+
+ Alle %1 Assets deaktivieren
+
+
+
+
+ Alle Assets deaktivieren
+
+
+
+
+ Alle Assets mit der Balance 0 deaktivieren
+
+
+
+ ComboBoxWithSearchBar
+
+
+
+ Suchen
+
+
+
+ Combo_fiat
+
+
+
+ Sprache
+
+
+
+
+ Fiat
+
+
+
+
+ Empfohlen:
+
+
+
+ ConfirmMultiOrderTradeModal
+
+
+
+ Bestätigen Sie die Details des Mehrfachauftrags
+
+
+
+
+ Diese Tauschanfragen können nicht rückgängig gemacht werden und dies ist das endgültige Ereignis!
+
+
+
+
+ Diese Transaktionen können bis zu 60 Minuten dauern - schließen Sie diese Anwendung NICHT!
+
+
+
+
+ Die gleichen Geldmittel werden verwendet, bis eine Bestellung übereinstimmt.
+
+
+
+
+ Beachten Sie, dass, wenn eine Bestellung ausgeführt wird, andere nicht storniert werden.
+
+
+
+
+ Abbrechen
+
+
+
+
+ Bestätigen
+
+
+
+
+ Mehrere Aufrtäge aufgegeben
+
+
+
+ ConfirmTradeModal
+
+
+
+ Bestätigen Sie die Austausch-Details
+
+
+
+
+
+
+
+
+
+ Diese Tauschanfrage kann nicht rückgängig gemacht werden und ist ein endgültiges Ereignis!
+
+
+
+
+ Diese Transaktion kann bis zu 60 Minuten dauern - schließen Sie diese Anwendung NICHT!
+
+
+
+
+ Lade Gebühren...
+
+
+
+
+ <b>Gesamt %1 Gebühren:</b>
+
+
+
+
+ Sicherheitskonfiguration
+
+
+
+
+ %1 Bestätigungen für eingehende %2 Transaktionen
+
+
+
+
+ Lesen Sie mehr über dPoW
+
+
+
+
+ TICKER
+ Benutzerdefinierte Schutzeinstellungen für eingehende %1 Transaktionen verwenden
+
+
+
+
+ Komodo dPoW-Sicherheit aktivieren
+
+
+
+
+
+
+
+
+
+ Erforderliche Bestätigungen
+
+
+
+
+ Achtung, dieser Atomic Swap ist nicht dPoW-geschützt!
+
+
+
+
+ Abbrechen
+
+
+
+
+ Bestätigen
+
+
+
+ CopyFieldButton
+
+
+
+ In die Zwischenablage kopiert
+
+
+
+ Dashboard
+
+
+
+ Die aktuelle Anzahl aktivierter Coins stimmt nicht mit Ihrer Konfigurationsvorgabe überein. Die Konfiguration der Assets wird zurückgesetzt.
+
+
+
+
+ Zusammenführung
+
+
+
+
+ Auftrag wird zusammengeführt
+
+
+
+
+ Zusammengeführt
+
+
+
+
+ Auftrag wurde zusammengeführt
+
+
+
+
+ Laufend
+
+
+
+
+ Austausch läuft
+
+
+
+
+ Erfolgreich
+
+
+
+
+ Tausch erfolgreich
+
+
+
+
+ Rückzahlung
+
+
+
+
+ Fehlgeschlagen
+
+
+
+
+ Tausch fehlgeschlagen
+
+
+
+
+ Unbekannt
+
+
+
+
+ Unbekannter Status
+
+
+
+
+ Gestartet
+
+
+
+
+ Ausgehandelt
+
+
+
+
+ Taker-Gebühr gesendet
+
+
+
+
+ Maker-Zahlung erhalten
+
+
+
+
+ Warten auf die Zahlungsbestätigung des Makers gestartet
+
+
+
+
+ Maker-Zahlung validiert und bestätigt
+
+
+
+
+ Taker-Zahlung gesendet
+
+
+
+
+ Taker-Zahlung ausgegeben
+
+
+
+
+ Maker-Zahlung ausgegeben
+
+
+
+
+ Fertig
+
+
+
+
+ Start fehlgeschlagen
+
+
+
+
+ Verhandeln fehlgeschlagen
+
+
+
+
+ Validierung der Abnehmergebühr fehlgeschlagen
+
+
+
+
+ Maker-Zahlungstransaktion fehlgeschlagen
+
+
+
+
+ Fehler beim Senden der Maker-Zahlungsdaten
+
+
+
+
+ Warten auf die Zahlungsbestätigung des Makers fehlgeschlagen
+
+
+
+
+ Validierung der Taker-Zahlung fehlgeschlagen
+
+
+
+
+ Warten auf die Zahlungsbestätigung des Takers fehlgeschlagen
+
+
+
+
+ Zahlungsausgabe des Takers fehlgeschlagen
+
+
+
+
+ Countdown für die Rückerstattung der Maker-Zahlung hat begonnen
+
+
+
+
+ Maker-Zahlung zurückerstattet
+
+
+
+
+ Rückerstattung der Maker-Zahlung fehlgeschlagen
+
+
+
+ DatePicker
+
+
+
+ Datum
+
+
+
+ DefaultCopyIcon
+
+
+
+ In die Zwischenablage kopiert
+
+
+
+ DefaultRangeSlider
+
+
+
+ Min
+
+
+
+
+ Max
+
+
+
+ DefaultTextEdit
+
+
+
+ In die Zwischenablage kopiert
+
+
+
+ DeleteWalletModal
+
+
+
+ Brieftasche löschen
+
+
+
+
+ WALLET_NAME
+ Sind Sie sicher, dass Sie die %1 Brieftasche löschen möchten?
+
+
+
+
+ Wenn ja, stellen Sie sicher, dass Sie Ihre Seed-Phrase notieren, um Ihre Brieftasche in Zukunft wiederherzustellen.
+
+
+
+
+ Geben Sie das Kennwort für ihre Brieftasche ein
+
+
+
+
+ Falsches Kennwort
+
+
+
+
+ Abbrechen
+
+
+
+
+ Löschen
+
+
+
+ DexAppPasswordField
+
+
+
+ Kennwort eingeben
+
+
+
+ DexKeyChecker
+
+
+
+ Mindestens 1 Kleinbuchstabe
+
+
+
+
+ Mindestens 1 Großbuchstabe
+
+
+
+
+ Mindestens 1 Ziffer
+
+
+
+
+ Mindestens 1 Sonderzeichen (z. B. ! @ # $ %)
+
+
+
+
+
+
+
+
+
+ Kennwort und Kennwortbestätigung müssen identisch sein
+
+
+
+ DexPaginator
+
+
+
+ Elemente pro Seite
+
+
+
+ DexRangeSlider
+
+
+
+ Min
+
+
+
+
+ Halb
+
+
+
+
+ Max
+
+
+
+ DexSweetComboBox
+
+
+
+ Suchen
+
+
+
+ EditContactModal
+
+
+
+ Kontakt bearbeiten
+
+
+
+
+ Kontaktname
+
+
+
+
+ Geben Sie einen Kontaktnamen ein
+
+
+
+
+ Adressliste
+
+
+
+
+ Adressbuch
+
+
+
+
+ Adresse in die Zwischenablage kopiert
+
+
+
+
+ Bearbeiten
+
+
+
+
+ + Hinzufügen
+
+
+
+
+ Schlagworte
+
+
+
+
+ Schlagwort hinzufügen
+
+
+
+
+ Abbrechen
+
+
+
+
+ Bestätigen
+
+
+
+ EnableAssetModal
+
+
+
+ Die ausgewählte Adresse gehört zu einem deaktivierten Asset, Sie müssen es vor dem Senden aktivieren.
+
+
+
+
+ Aktivieren
+
+
+
+
+ Abbrechen
+
+
+
+ EnableCoinModal
+
+
+
+ Assets aktivieren
+
+
+
+
+ Alle Assets auswählen
+
+
+
+
+ Alle Assets sind bereits aktiviert!
+
+
+
+
+ Sie können weiterhin %1 Assets aktivieren. Ausgewählt: %2.
+
+
+
+
+ Asset suchen
+
+
+
+
+ Asset-Limit ändern
+
+
+
+
+ Benutzerdefiniertes Asset hinzufügen
+
+
+
+
+ Schließen
+
+
+
+
+ Aktivieren
+
+
+
+ EulaModal
+
+
+
+ Haftungsausschluss & Nutzungsbedingungen
+
+
+
+
+ EULA akzeptieren
+
+
+
+
+ Allgemeine Geschäftsbedingungen akzeptieren
+
+
+
+
+ Schließen
+
+
+
+
+ Abbrechen
+
+
+
+
+ Bestätigen
+
+
+
+ FatalErrorModal
+
+
+
+ Schwerwiegender Fehler
+
+
+
+
+ Die Verbindung wurde unterbrochen. Ihre Verbindung wurde getrennt.
+
+
+
+
+ Schließen
+
+
+
+ FeeInfo
+
+
+
+ Mindestgebühr
+
+
+
+
+ Gebühren werden berechnet
+
+
+
+ GasInfoModal
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ General
+
+
+
+
+ %n Tag
+ %n Tage
+
+
+
+
+
+ day
+
+
+
+
+
+
+
+
+ hours
+
+
+
+
+
+
+
+
+ minutes
+
+
+
+
+
+
+
+
+ seconds
+
+
+
+
+
+
+
+
+ milliseconds
+
+
+
+
+
+
+
+
+ -
+
+
+
+
+ <b>Taker tx Gebühren:</b>
+
+
+
+
+ <b>Dex tx Gebühren:</b>
+
+
+
+
+ <b>Dex Gebühren:</b>
+
+
+
+
+ <b>Maker tx Gebühren:</b>
+
+
+
+
+ %1 %2 %3 (%4)
+
+
+
+
+ Handelsgebühr
+
+
+
+
+ Mindesthandelsbetrag
+
+
+
+
+ WALLETNAME
+ Brieftasche %1 existiert bereits
+
+
+
+
+ Das %1 Guthaben ist niedriger als der Gebührenbetrag: %2 %3
+
+
+
+
+ Handelbares %1 Guthaben (nach Gebühren) ist niedriger als der Mindesthandelsbetrag
+
+
+
+
+ Bitte füllen Sie das Preisfeld aus
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ %1 Volumen ist niedriger als der minimale Handelsbetrag
+
+
+
+
+
+ %1 muss aktiviert werden, um %2 verwenden zu können
+
+
+
+
+
+ Das %1 Guthaben muss finanziert werden, ein Guthaben größer Null ist erforderlich, um das Benzin von %2 Transaktionen zu bezahlen
+
+
+
+
+ Unbekannter Fehler
+
+
+
+ Header
+
+
+
+ Du erhältst
+
+
+
+
+ Sie senden
+
+
+
+
+ Fiat Preis
+
+
+
+
+ CEX-Kurs
+
+
+
+
+ Preis
+
+
+
+
+ Menge
+
+
+
+
+ Gesamt
+
+
+
+ ImportWallet
+
+
+
+ Fehler beim Importieren der Brieftasche
+
+
+
+
+ Brieftasche importieren - Einrichtung
+
+
+
+
+ Brieftasche importieren - Kennwort wählen
+
+
+
+
+ Name der Brieftasche
+
+
+
+
+ Geben Sie den Seed ein
+
+
+
+
+ Ihr Seed ist nicht BIP39-konform. Versuchen Sie es erneut oder wählen Sie "benutzerdefinierten Seed erlauben" um fortzufahren
+
+
+
+
+
+ Ich verstehe
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Ok
+
+
+
+
+ Benutzerdefinierten Seed zulassen
+
+
+
+
+ <strong>Benutzerdefinierten Seed zulassen</strong>
+
+
+
+
+ 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).<br><br>Um zu bestätigen, dass Sie das Risiko verstehen und wissen, was Sie tun, geben Sie bitte <strong>'Ich verstehe'</strong> in das Feld unten ein.
+
+
+
+
+ Ich verstehe
+
+
+
+
+ Weiter
+
+
+
+
+ Geben Sie zur Bestätigung dasselbe Kennwort ein
+
+
+
+
+ Fortsetzen
+
+
+
+ LinksRow
+
+
+
+ Tritt unserem Discord-Server bei
+
+
+
+
+ Folge uns auf Twitter
+
+
+
+
+ Zu den Support-Leitfäden
+
+
+
+ List
+
+
+
+ Geldmittel sind erstattungsfähig
+
+
+
+
+ Die günstigsten Aufträge
+
+
+
+
+
+
+
+
+ ListDelegate
+
+
+
+ %1 ist nicht aktiviert - Möchten Sie es aktivieren, um die günstigsten Aufträge von %2 auswählen zu können? <br><a href='#'>Ja</a> - <a href='#no'>Nein</a>
+
+
+
+
+ Für diesen Auftrag ist ein Mindestbetrag von %1 %2 erforderlich. <br>Ihr Guthaben reicht nicht aus.<br> %3
+
+
+
+ LogModal
+
+
+
+ Schließen
+
+
+
+ Logging
+
+
+
+ Lädt, bitte warten
+
+
+
+
+ MM2 initialisieren
+
+
+
+
+ Assets ermöglichen
+
+
+
+
+ Fertig werden
+
+
+
+ Login
+
+
+
+ Falsches Kennwort
+
+
+
+
+ Anmelden
+
+
+
+
+ Abbrechen
+
+
+
+ LogoutModal
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Abbrechen
+
+
+
+ Main
+
+
+
+ Segwit
+
+
+
+
+ Bestätigung
+
+
+
+
+ Möchten Sie Ihr %1-Guthaben zuerst an die %2-Brieftasche senden?
+
+
+
+
+ Erfolg
+
+
+
+
+ Ihre Transaktion wird gesendet, es kann einige Zeit dauern, bis sie ankommt
+
+
+
+
+ Preis
+
+
+
+
+ 24h Veränderung
+
+
+
+
+ Portfolio
+
+
+
+
+ Vertragsadresse
+
+
+
+
+ Senden
+
+
+
+
+ %1 aktivieren?
+
+
+
+
+ Ja
+
+
+
+
+ Nein
+
+
+
+
+ Empfangen
+
+
+
+
+ Tausch
+
+
+
+
+ nur Brieftasche (kein DEX möglich)
+
+
+
+
+ Belohnungen
+
+
+
+
+ Faucet
+
+
+
+
+
+
+ Öffentlicher Schlüssel
+
+
+
+
+ In die Zwischenablage kopiert
+
+
+
+
+ Laden von Marktdaten
+
+
+
+
+ Für diesen Ticker liegen noch keine Chartdaten vor
+
+
+
+
+ Transaktionen werden abgerufen...
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Keine Transaktionen verfügbar
+
+
+
+
+ Klicken Sie hier, um Ihre Adresse im %1 (%2) Block-Explorer anzuzeigen
+
+
+
+
+ Handeln
+
+
+
+
+ Handelsinformationen
+
+
+
+
+ Chart
+
+
+
+
+
+ Auftrag
+
+
+
+
+
+ Historie
+
+
+
+
+ Auftrag platzieren
+
+
+
+
+ Auftrag ausgewählt
+
+
+
+
+ TAUSCH STARTEN
+
+
+
+
+
+ Adressbuch
+
+
+
+
+ Kontakt suchen
+
+
+
+
+ + Neuer Kontakt
+
+
+
+
+ Name
+
+
+
+
+ Schlagworte
+
+
+
+
+ Bearbeiten
+
+
+
+
+ Löschen
+
+
+
+
+ Adresse in die Zwischenablage kopiert
+
+
+
+
+ Dieser Kontakt hat keine registrierte Adresse.
+
+
+
+ MarketModeSelector
+
+
+
+ TICKER
+ %1 Verkaufen
+
+
+
+
+ TICKER
+ %1 Kaufen
+
+
+
+ MinTradeModal
+
+
+
+ Mindesthandelsbetrag
+
+
+
+
+ die Mindestmenge von %1 Coin, die für die Bestellung verfügbar ist; das min_volume muss größer oder gleich %2 sein; es muss auch kleiner oder gleich als volume param sein; Standard ist %3
+
+
+
+ MultiOrder
+
+
+
+ TICKER
+ %1 Preis ist null!
+
+
+
+
+ TICKER
+ %1 Empfangsvolumen ist niedriger als der Mindesthandelsbetrag
+
+
+
+
+ Fehler:
+
+
+
+
+ AMOUNT TICKER
+ Sie erhalten %1
+
+
+
+
+ Preis
+
+
+
+ NewContactPopup
+
+
+
+ Kontaktname
+
+
+
+
+ Dieser Kontaktname existiert bereits.
+
+
+
+
+ + HINZUFÜGEN
+
+
+
+ NewUpdateModal
+
+
+
+
+
+ Suche nach neuen Updates
+
+
+
+
+ Abrufen…
+
+
+
+
+
+
+
+ Schließen
+
+
+
+
+ Neue Updates konnten aus folgendem Grund nicht überprüft werden: %1
+
+
+
+
+ Neue Version gefunden
+
+
+
+
+ Zwingend notwendige Version gefunden
+
+
+
+
+ %1 %2 ist verfügbar !
+
+
+
+
+ Dieses Update ist zwingend erforderlich, um die Anwendung weiterhin verwenden zu können
+
+
+
+
+ Dex schließen
+
+
+
+
+ Ihre Anwendung ist auf dem neuesten Stand.
+
+
+
+
+ Herunterladen
+
+
+
+ NewWallet
+
+
+
+ Falsches Wort, bitte überprüfen Sie es erneut
+
+
+
+
+ .
+
+
+
+
+ .
+
+
+
+
+ .
+
+
+
+
+ .
+
+
+
+
+ Anlegen einer Brieftasche ist fehlgeschlagen
+
+
+
+
+ Neue Brieftasche
+
+
+
+
+ Seed bestätigen
+
+
+
+
+ Wählen sie ein Kennwort
+
+
+
+
+ Wichtig: Sichern Sie Ihre Seed-Phrase, bevor Sie fortfahren!
+
+
+
+
+ Wir empfehlen, sie offline zu speichern.
+
+
+
+
+ Generierter Seed
+
+
+
+
+ Seed Phrase
+
+
+
+
+ In die Zwischenablage kopiert
+
+
+
+
+ Weiter
+
+
+
+
+ Lassen Sie uns Ihre Seed-Phrase noch einmal überprüfen
+
+
+
+
+ Ihre Seed-Phrase ist wichtig – deshalb stellen wir gerne sicher, dass sie korrekt ist. Wir stellen Ihnen drei verschiedene Fragen zu Ihrer Seed-Phrase, um sicherzustellen, dass Sie Ihre Wallet jederzeit problemlos wiederherstellen können.
+
+
+
+
+ Geben Sie das
+
+
+
+
+ Wort ein
+
+
+
+
+ Prüfen
+
+
+
+
+ Geben Sie zur Bestätigung dasselbe Kennwort ein
+
+
+
+
+ Fortsetzen
+
+
+
+ NoConnection
+
+
+
+ Keine Verbindung
+
+
+
+
+ Bitte stellen Sie sicher, dass Sie mit dem Internet verbunden sind
+
+
+
+
+ Wird in %1 Sekunde(n) automatisch erneut versucht
+
+
+
+
+ Wiederholen
+
+
+
+ NotificationsModal
+
+
+
+ Zusammenführung
+
+
+
+
+ Auftrag wird abgeglichen
+
+
+
+
+ Abgestimmt
+
+
+
+
+ Auftrag wurde abgestimmt
+
+
+
+
+ Läuft
+
+
+
+
+ Austausch läuft
+
+
+
+
+ Erfolgreich
+
+
+
+
+ Tausch erfolgreich
+
+
+
+
+ Rückzahlung
+
+
+
+
+ Fehlgeschlagen
+
+
+
+
+ Tausch fehlgeschlagen
+
+
+
+
+ Unbekannt
+
+
+
+
+ Unbekannter Status
+
+
+
+
+ Austausch-Status aktualisiert
+
+
+
+
+ Sie %1 haben gesendet
+
+
+
+
+ Sie %1 haben erhalten
+
+
+
+
+ Ihr Guthaben hat sich geändert
+
+
+
+
+ TICKER
+
+
+
+
+
+ Bitte überprüfen Sie Ihre Internetverbindung (z. B. könnte VPN-Dienst oder Firewall sie blockieren).
+
+
+
+
+ TICKER
+ Aktivierung von %1 fehlgeschlagen
+
+
+
+
+ TICKER
+
+
+
+
+
+ Endpunkt nicht erreichbar
+
+
+
+
+ Endpunkt konnte nicht erreicht werden
+
+
+
+
+ TICKER
+ Nichtübereinstimmung bei benutzerdefinierter Konfiguration des %1 Asset
+
+
+
+
+ TICKER
+ Die Anwendung muss für benutzerdefiniertes Asset %1 neu gestartet werden.
+
+
+
+
+ Batch %1 fehlgeschlagen. Grund: %2
+
+
+
+
+ Zeigen
+
+
+
+
+ Neustart
+
+
+
+
+ Beenden
+
+
+
+
+ Benachrichtigungen
+
+
+
+
+ Es gibt keine Benachrichtigungen
+
+
+
+
+ Alle als gelesen makieren
+
+
+
+ OrderForm
+
+
+
+ Preis
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Volumen
+
+
+
+
+ Zu verkaufender Betrag
+
+
+
+
+ Zu erhaltender Betrag
+
+
+
+
+ Max
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Mindestvolumen:
+
+
+
+
+ Benutzerdefinierten Mindesthandelsbetrag verwenden
+
+
+
+ OrderLine
+
+
+
+ Geldmittel sind erstattungsfähig
+
+
+
+ OrderList
+
+
+
+ Keine Ergebnisse gefunden
+
+
+
+ OrderModal
+
+
+
+ Tauschdetails
+
+
+
+
+ Auftragsdetails
+
+
+
+
+ Auftragsart
+
+
+
+
+ Maker-Auftrag
+
+
+
+
+ Taker-Auftrag
+
+
+
+
+ Rückerstattungsstatus
+
+
+
+
+ Ihr Umtausch ist fehlgeschlagen, aber der automatische Rückerstattungsprozess für Ihre Zahlung hat bereits begonnen. Bitte warten Sie und lassen Sie die Anwendung geöffnet, bis Sie Ihre Zahlung zurückerhalten
+
+
+
+
+ Datum
+
+
+
+
+ Fehler-ID
+
+
+
+
+
+ Fehlerprotokoll
+
+
+
+
+ Schließen
+
+
+
+
+ Auftrag Abbrechen
+
+
+
+
+
+ Swap ID
+
+
+
+
+ Maker-Zahlung gesendet: Transaktions-ID
+
+
+
+
+ Maker-Zahlung ausgegeben: Transaktions-ID
+
+
+
+
+ Maker-Zahlung: TXID
+
+
+
+
+ Taker-Zahlung ausgegeben: Transaktions-ID
+
+
+
+
+ Taker-Zahlung gesendet: Transaktions-ID
+
+
+
+
+ Taker-Zahlung: TXID
+
+
+
+
+ Rückerstattung der Geldmittel
+
+
+
+
+ Rückzahlung…
+
+
+
+
+ Ansicht im Explorer
+
+
+
+ OrderRemovedModal
+
+
+
+ Ausgewählten Auftrag entfernt
+
+
+
+
+ Der ausgewählte Auftrag existiert nicht mehr! Er wurde möglicherweise zugeordnet oder storniert und es ist kein Auftrag mit einem besseren Preis verfügbar.
+Bitte wählen Sie einen neuen Auftrag aus.
+
+
+
+
+ OK
+
+
+
+ OrdersPage
+
+
+
+
+ Filter
+
+
+
+
+ Datum
+
+
+
+
+ CSV exportieren
+
+
+
+
+ Filter anwenden
+
+
+
+
+ Alles stornieren
+
+
+
+
+ Von
+
+
+
+
+ Bis
+
+
+
+
+ Bitte wählen Sie den CSV-Exportnamen und den Speicherort aus
+
+
+
+ Pagination
+
+
+
+ Elemente pro Seite
+
+
+
+ PasswordField
+
+
+
+ Kennwort
+
+
+
+
+ Geben Sie das Kennwort für ihre Brieftasche ein
+
+
+
+
+ Mindestens 1 Kleinbuchstabe
+
+
+
+
+ Mindestens 1 Großbuchstabe
+
+
+
+
+ Mindestens 1 Ziffer
+
+
+
+
+ Mindestens 1 Sonderzeichen (z. B. ! @ # $ %)
+
+
+
+
+
+
+
+
+ PasswordForm
+
+
+
+ Kennwort
+
+
+
+
+ Kennwort bestätigen
+
+
+
+
+ Geben Sie zur Bestätigung dasselbe Kennwort ein
+
+
+
+ Portfolio
+
+
+
+ ASSET HINZUFÜGEN
+
+
+
+
+ Asset suchen
+
+
+
+
+ Nur Coins mit Guthaben anzeigen
+
+
+
+
+ (%1/%2)
+
+
+
+
+ Portfolio
+
+
+
+ PriceLine
+
+
+
+ Legen Sie den Tausch-Preis für die Bewertung fest
+
+
+
+
+ Wechselkurs
+
+
+
+
+ Ausgewählt
+
+
+
+
+ Teuer
+
+
+
+
+ Sinnvoll
+
+
+
+
+ PRICE_DIFF%
+ %1 im Vergleich zu CEX
+
+
+
+
+ CEX-Wechselkurs
+
+
+
+ PriceLineSimplified
+
+
+
+ Wechselkurs
+
+
+
+
+ Ausgewählt
+
+
+
+
+ CEX-Wechselkurs
+
+
+
+
+ Teuer
+
+
+
+
+ Sinnvoll
+
+
+
+
+ PRICE_DIFF%
+ %1 im Vergleich zu CEX
+
+
+
+ ProView
+
+
+
+ Der Auftrag konnte nicht platziert werden
+
+
+
+
+ Auftrag platziert
+
+
+
+ QObject
+
+
+
+ Der Endpunkt kann nicht erreicht werden:
+
+
+
+ ReceiveModal
+
+
+
+ TICKER
+
+
+
+
+
+ TICKER
+
+
+
+
+
+ TICKER
+
+
+
+
+
+ In die Zwischenablage kopiert
+
+
+
+
+ Schließen
+
+
+
+ RecoverSeedModal
+
+
+
+
+ Seed- und privaten Schlüsseln anzeigen
+
+
+
+
+ Bitte geben Sie Ihr Kennwort ein, um den Seed anzuzeigen.
+
+
+
+
+ Seed
+
+
+
+
+ Seed Sicherung
+
+
+
+
+ Öffentliche Adresse in die Zwischenablage kopiert
+
+
+
+
+ Abbrechen
+
+
+
+
+ Falsches Kennwort
+
+
+
+
+ Ansehen
+
+
+
+
+
+ In die Zwischenablage kopiert
+
+
+
+
+
+ RPC Kennwort
+
+
+
+
+ Coin suchen.
+
+
+
+
+ Öffentliche Adresse
+
+
+
+
+ Privater Schlüssel in die Zwischenablage kopiert
+
+
+
+
+ Privater Schlüssel
+
+
+
+ RemoveContactPopup
+
+
+
+ Möchten Sie diesen Kontakt entfernen?
+
+
+
+
+ Ja
+
+
+
+
+ Nein
+
+
+
+ RestartModal
+
+
+
+ Übernehmen der Änderungen...
+
+
+
+
+ Neustart der Anwendung. %1
+
+
+
+
+ Neustart der Anwendung...
+
+
+
+ RightClickMenu
+
+
+
+ Ausschneiden
+
+
+
+
+ Kopieren
+
+
+
+
+ Einfügen
+
+
+
+ SearchField
+
+
+
+ Suchen
+
+
+
+ SendModal
+
+
+
+ Fehler beim Senden
+
+
+
+
+ Versandvorbereitung von
+
+
+
+
+ Adresse des Empfängers
+
+
+
+
+ Zu sendender Betrag
+
+
+
+
+ Gas Preis
+
+
+
+
+ Empfängeradresse
+
+
+
+
+ Die Adresse muss Groß-/Kleinschreibung sein.
+
+
+
+
+
+
+
+
+
+ Korrigieren
+
+
+
+
+ MAX
+
+
+
+
+ Fiat-Betrag: Nicht verfügbar
+
+
+
+
+ Fiat-Betrag: %1
+
+
+
+
+ %1 Betrag: %2
+
+
+
+
+ In Fiat angeben
+
+
+
+
+ In Krypto angeben
+
+
+
+
+ Benutzerdefinierte Gebühren
+
+
+
+
+ Geben Sie die benutzerdefinierte Gebühr ein
+
+
+
+
+ Gas Limit
+
+
+
+
+ Die benutzerdefinierten Gebühren dürfen nicht höher sein als der Betrag
+
+
+
+
+ Nicht genug Geldmittel.
+
+
+
+
+
+ AMT TICKER
+ Sie haben %1
+
+
+
+
+
+
+
+
+
+
+ Schließen
+
+
+
+
+ Vorbereiten
+
+
+
+
+
+ Senden
+
+
+
+
+ TICKER
+
+
+
+
+
+ In die Zwischenablage kopiert
+
+
+
+
+ Menge
+
+
+
+
+ Gebühren
+
+
+
+
+ Datum
+
+
+
+
+ Zurück
+
+
+
+ SendModalContactList
+
+
+
+ Wählen Sie einen Kontakt mit einer %1-Adresse aus
+
+
+
+
+ Kontakte suchen...
+
+
+
+
+ %1 Adressen
+
+
+
+
+ 1 Adresse
+
+
+
+
+
+ Zurück
+
+
+
+
+ Wählen Sie eine %1-Adresse von %2
+
+
+
+
+ Name
+
+
+
+
+ Adresse
+
+
+
+ SendResult
+
+
+
+ Transaktion abgeschlossen!
+
+
+
+
+ TICKER
+
+
+
+
+
+
+ In die Zwischenablage kopiert
+
+
+
+
+ Empfängeradresse
+
+
+
+
+ TICKER
+
+
+
+
+
+ Menge
+
+
+
+
+ Gebühren
+
+
+
+
+ Datum
+
+
+
+
+ Transaktions-Hash
+
+
+
+
+ Schließen
+
+
+
+
+ Ansicht im Explorer
+
+
+
+ SettingModal
+
+
+
+
+ Abbrechen
+
+
+
+
+ Einstellungen
+
+
+
+
+ Allgemein
+
+
+
+
+ Sprache
+
+
+
+
+ Benutzeroberfläche
+
+
+
+
+ Sicherheit
+
+
+
+
+ Desktop-Benachrichtigungen aktivieren
+
+
+
+
+ Maximale Anzahl aktivierter Coins
+
+
+
+
+ Protokolle
+
+
+
+
+ Ordner öffnen
+
+
+
+
+ Zurücksetzen
+
+
+
+
+ Aktuelle Schriftart
+
+
+
+
+ Aktuelle Schriftart in %1 geändert.
+
+
+
+
+ Thema
+
+
+
+
+ Design zu %1 geändert
+
+
+
+
+ 2FA deaktivieren?
+
+
+
+
+ Geben Sie zur Bestätigung das Kennwort ihrer Brieftasche ein
+
+
+
+
+ Kennwort eingeben
+
+
+
+
+ 2FA Status
+
+
+
+
+ 2FA erfolgreich deaktiviert
+
+
+
+
+
+ Ok
+
+
+
+
+ Falsches Kennwort!
+
+
+
+
+ Kennwort der Brieftasche ist falsch
+
+
+
+
+ Anwendungsversion
+
+
+
+
+ In die Zwischenablage kopiert
+
+
+
+
+ Über & Version
+
+
+
+
+
+ Konfiguration der Brieftasche zurücksetzen
+
+
+
+
+ Dadurch wird Ihre Brieftasche mit den Standardeinstellungen neu gestartet
+
+
+
+
+
+ Bestätigen
+
+
+
+
+ Vor dem Senden von Coins nach dem Kennwort des Systems fragen? (2FA)
+
+
+
+
+ Seed- und privaten Schlüsseln anzeigen
+
+
+
+
+
+ Zeigen
+
+
+
+
+ Tarnkennwort einrichten
+
+
+
+
+ Öffnen
+
+
+
+
+ Haftungsausschluss und Nutzungsbedingungen
+
+
+
+
+ Anwendungsversion
+
+
+
+
+ MM2 Version
+
+
+
+
+ MM2 Version
+
+
+
+
+ MM2 Version in die Zwischenablage kopiert.
+
+
+
+
+ Qt Version
+
+
+
+
+ Qt Version
+
+
+
+
+ Qt Version in die Zwischenablage kopiert.
+
+
+
+
+ Update suchen
+
+
+
+
+ Abmelden
+
+
+
+ Sidebar
+
+
+
+ Suchen
+
+
+
+
+ Asset hinzufügen
+
+
+
+ SmartChartView
+
+
+
+ Laden von Marktdaten
+
+
+
+
+ Für diesen Ticker liegen noch keine Chartdaten vor
+
+
+
+ SubBestOrder
+
+
+
+ Token
+
+
+
+
+ Verfügbare Menge
+
+
+
+
+ Verfügbare Menge (in %1)
+
+
+
+
+ Fiat Volumen
+
+
+
+
+ CEX-Kurs
+
+
+
+
+ %1 ist nicht aktiviert - Möchten Sie es aktivieren, um die günstigsten Aufträge von %2 auswählen zu können? <br><a href='#'>Ja</a> - <a href='#no'>Nein</a>
+
+
+
+ SubCoinSelector
+
+
+
+ Token
+
+
+
+
+ Balance
+
+
+
+
+ Fiat Balance
+
+
+
+
+ Kein wählbarer Coin.
+
+
+
+ SubHistory
+
+
+
+ Historie
+
+
+
+
+ Filter
+
+
+
+
+ Datum
+
+
+
+
+ Filteroptionen schließen.
+
+
+
+
+ Filteroptionen öffnen.
+
+
+
+
+ Filtereinstellungen
+
+
+
+
+ Von
+
+
+
+
+ Bis
+
+
+
+
+ Abbrechen
+
+
+
+
+ Filter anwenden
+
+
+
+
+ Exportieren
+
+
+
+
+ Bitte wählen Sie den CSV-Exportnamen und den Speicherort aus
+
+
+
+
+ Keine Ergebnisse gefunden
+
+
+
+ SubOrders
+
+
+
+
+ Auftrag
+
+
+
+
+ Filteroptionen schließen.
+
+
+
+
+ Filter
+
+
+
+
+ Datum
+
+
+
+
+ Filteroptionen öffnen.
+
+
+
+
+ Filtereinstellungen
+
+
+
+
+ Von
+
+
+
+
+ Bis
+
+
+
+
+ Abbrechen
+
+
+
+
+ Filter anwenden
+
+
+
+
+ Keine Ergebnisse gefunden
+
+
+
+ SupportModal
+
+
+
+ Häufig gestellte Fragen
+
+
+
+
+ Speichern Sie meine privaten Schlüssel?
+
+
+
+
+ Nein! %1 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.
+
+
+
+
+ Wie unterscheidet sich der Handel auf %1 vom Handel auf anderen DEXs?
+
+
+
+
+ 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.
+
+%1 ermöglicht Ihnen den nativen Handel über zwei verschiedene Blockchain-Netzwerke ohne Proxy-Token. Sie können auch mehrere Aufträge mit demselben Guthaben aufgeben. Sie können beispielsweise 0,1 BTC für KMD, QTUM oder VRSC verkaufen – die erste Order, die automatisch ausgeführt wird, storniert alle anderen Orders.
+
+
+
+
+ Wie lange dauert ein Atomic Swap?
+
+
+
+
+ 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 %1 bitten, eine KMD-Transaktion nach nur 3 Bestätigungen als endgültig zu betrachten, wodurch die Tauschzeit kürzer wird als beim Warten auf eine <a href="https://komodoplatform.com/security-delayed-proof-of-work-dpow/">Beglaubigung </a>).
+
+
+
+
+ Muss ich für die Dauer des Austauschs online sein?
+
+
+
+
+ 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.
+
+Das Atomic-Swap-Protokoll erfordert, dass beide Teilnehmer online bleiben und die beteiligten Blockchains überwachen, damit der Prozess atomar bleibt.
+
+Wenn Sie offline gehen, werden Ihre offenen und laufenden Aufträge fehlschlagen, was zu einem potenziellen Verlust von Handels-/Transaktionsgebühren und einem Warten auf das Timeout des Swaps und die Ausstellung einer Rückerstattung führen kann. Es kann sich auch negativ auf den Reputationswert Ihrer Brieftasche für zukünftige Handelsabgleiche auswirken.
+
+Wenn Sie wieder online gehen, werden Ihre Aufträge wieder zu dem Preis übertragen, den Sie festgelegt haben, bevor Sie offline gegangen sind. Wenn es in der Zwischenzeit zu erheblichen Preisbewegungen gekommen ist, könnten Sie jemandem unbeabsichtigt ein Schnäppchen anbieten!
+
+Aus diesem Grund empfehlen wir,Aufträge vor dem Schließen von %1 zu stornieren oder Ihre Preise zu überprüfen und zu überarbeiten, wenn Sie %1 neu starten.
+
+
+
+
+ Wie werden die Gebühren für %1 berechnet?
+
+
+
+
+ Beim Handel von %1 sind zwei Gebührenkategorien zu berücksichtigen.
+
+1. %1 berechnet ungefähr 0,13 % (1/777 des Handelsvolumens, aber nicht weniger als 0,0001) als Handelsgebühr für Taker-Orders, Maker-Orders haben keine Gebühren.
+
+2. Sowohl Maker als auch Taker müssen normale Netzwerkgebühren an die beteiligten Blockchains zahlen, wenn sie Atomic-Swap-Transaktionen durchführen.
+
+Die Netzwerkgebühren können je nach ausgewähltem Handelspaar stark variieren.
+
+
+
+
+ Bieten Sie Benutzerunterstützung an?
+
+
+
+
+ Ja! %1 bietet Support über den <a href="%2">%1 Discord server</a>. Das Team und die Community helfen Euch gerne weiter!
+
+
+
+
+ Wer steckt hinter %1?
+
+
+
+
+ %1 wird vom Komodo-Team entwickelt. Komodo 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.
+
+
+
+
+ Ist es möglich, meine eigene White-Label-Börse auf %1 zu entwickeln?
+
+
+
+
+ Auf jeden Fall! Sie können unsere Entwicklerdokumentation für weitere Details lesen oder uns mit Ihren Partnerschaftsanfragen kontaktieren. Haben Sie eine spezielle technische Frage? Die %1-Entwicklercommunity ist immer bereit zu helfen!
+
+
+
+
+ Auf welchen Geräten kann ich %1 verwenden?
+
+
+
+
+ %1 ist auf Mobilgeräte für <a href="%2">Android und iPhone sowie auf dem Desktop für Windows, Mac und Linux</a> Betriebssystemen erhältlich.
+
+
+
+
+ Compliance-Informationen
+
+
+
+
+ Aufgrund regulatorischer und rechtlicher Umstände sind die Bürger bestimmter Gerichtsbarkeiten, einschließlich, aber nicht beschränkt auf, der Vereinigten Staaten von Amerika, Kanada, Hongkong, Israel, Singapur, Sudan, Österreich, Iran und alle anderen Staaten, Länder oder anderen Gerichtsbarkeiten, die mit einem Embargo von den Vereinigten Staaten von Amerika oder der Europäischen Union belegt sind, dürfen diese Anwendung nicht verwenden.
+
+
+
+
+ Änderungsprotokoll
+
+
+
+
+ Protokollordner öffnen
+
+
+
+ SwapProgress
+
+
+
+ SHORT FOR ACTUAL TIME
+ tatsächlich
+
+
+
+
+ SHORT FOR ESTIMATED
+ geschätzt
+
+
+
+
+ Fortschrittsdetails
+
+
+
+ TextAreaWithTitle
+
+
+
+ Speichern
+
+
+
+
+ Bearbeiten
+
+
+
+ TextEditWithCopy
+
+
+
+ In die Zwischenablage kopiert
+
+
+
+ TextEditWithTitle
+
+
+
+ In die Zwischenablage kopiert
+
+
+
+ TextFieldWithTitle
+
+
+
+ Erforderlich
+
+
+
+ Toast
+
+
+
+ Klicken Sie hier, um die Details anzuzeigen
+
+
+
+ Trade
+
+
+
+ Tauschen
+
+
+
+
+ Sofortiger Handel mit den besten Aufträgen
+
+
+
+
+ Formular zurücksetzen
+
+
+
+
+ Keine handelbaren Assets vorhanden
+
+
+
+
+ Von
+
+
+
+
+ Betrag eingeben
+
+
+
+
+ MAX
+
+
+
+
+ Nach
+
+
+
+
+ Auftrag auswählen
+
+
+
+
+ Preis
+
+
+
+
+ Besseren Preis gefunden: %1. Formulare aktualisieren.
+
+
+
+
+ Besseren Preis (%1) gefunden, aber erhaltene Menge (%2) ist niedriger als Ihre aktuelle (%3). Klicken Sie hier, um den ausgewählten Auftrag zu aktualisieren.
+
+
+
+
+ %1
+
+
+
+
+ Handelbar:
+
+
+
+
+ Minimum: %1
+
+
+
+
+ Wählen Sie einen Coin
+
+
+
+
+ JETZT TAUSCHEN
+
+
+
+
+ Der Auftrag konnte nicht platziert werden
+
+
+
+
+ Auftrag platziert
+
+
+
+
+ Der eingegebene Betrag muss größer als 0 sein.
+
+
+
+
+ Sie müssen einen Auftrag auswählen.
+
+
+
+
+ Der eingegebene Betrag liegt unter dem für diesen Auftrag erforderlichen Mindestbetrag: %1
+
+
+
+
+
+ %1 muss aktiviert werden, um %2 verwenden zu können
+
+
+
+
+
+ Das %1 Guthaben muss finanziert werden, ein Guthaben größer Null ist erforderlich, um das Benzin von %2 Transaktionen zu bezahlen
+
+
+
+
+ Das Guthaben von %1 reicht nicht aus, um das Gas von %2 Transaktionen zu bezahlen
+
+
+
+
+ Keine Kaufaufträge für %1 gefunden.
+
+
+
+
+ Sie können später nachsehen oder versuchen, einen anderen Coin zu verkaufen.
+
+
+
+
+ Geschätzten Gebühren werden berechnet...
+
+
+
+
+ %1 Gesamtgebühren:
+
+
+
+
+ %2 (%3)
+
+
+
+ TradeViewHeader
+
+
+
+ Pro-Ansicht Einstellungen
+
+
+
+
+ Bildschirmeinstellungen
+
+
+
+
+ Ticker Selektoren
+
+
+
+
+ Handelsinformationen
+
+
+
+
+ Auftragsbuch
+
+
+
+
+ Besten Aufträge
+
+
+
+
+ Auftrag platzieren
+
+
+
+ TransactionDetailsModal
+
+
+
+ Transaktionsdetails
+
+
+
+
+ Menge
+
+
+
+
+ Gebühren
+
+
+
+
+ Datum
+
+
+
+
+ Unbestätigt
+
+
+
+
+ Transaktions-Hash
+
+
+
+
+ Bestätigungen
+
+
+
+
+ Blockhöhe
+
+
+
+
+ Von
+
+
+
+
+ TICKER
+
+
+
+
+
+ In die Zwischenablage kopiert
+
+
+
+
+ Von Adresse
+
+
+
+
+ Nach
+
+
+
+
+ Nach Adresse
+
+
+
+
+ Anmerkungen
+
+
+
+
+ Schließen
+
+
+
+
+ Ansicht im Explorer
+
+
+
+ Transactions
+
+
+
+ Gesendet
+
+
+
+
+ Erhalten
+
+
+
+
+ Gebühren
+
+
+
+
+ Unbestätigt
+
+
+
+ UpdateInvalidChecksum
+
+
+
+ Das heruntergeladene Update-Archiv ist beschädigt!
+
+
+
+ Vertical
+
+
+
+ Auftragsbuch
+
+
+
+ WalletsView
+
+
+
+ Herzlich Willkommen
+
+
+
+
+ Neue Brieftasche
+
+
+
+
+ Brieftasche importieren
+
+
+
+
+ Brieftaschen durchsuchen ...
+
+
+
+
+ Meine Brieftaschen
+
+
+
+
+ Keine Brieftaschen gefunden!
+
+
+
+
+
+ Löschen
+
+
+
+
+ Geben Sie das Kennwort ein, um das Löschen zu bestätigen
+
+
+
+
+ Brieftasche
+
+
+
+
+ Kennwort eingeben
+
+
+
+
+ Abbrechen
+
+
+
+
+
+ Status der Brieftasche
+
+
+
+
+ Brieftasche erfolgreich gelöscht
+
+
+
+
+
+ Ok
+
+
+
+
+ Kennwort der Brieftasche ist falsch
+
+
+
+ ZcashParamsModal
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Schließen
+
+
+
+ atomic_dex::settings_page
+
+
+
+
+
+
+
+ atomic_dex::wallet_page
+
+
+
+ Sie haben nicht genügend Kapital.
+
+
+
+
+ %1 ist nicht aktiviert: Klicken Sie auf die Schaltfläche, um es zu aktivieren, oder aktivieren Sie es manuell
+
+
+
+
+ Sie benötigen %1, um das Benzin für %2 Transaktionen zu bezahlen.
+
+
+
+
+ Überprüfung der Prüfsumme für %1 fehlgeschlagen.
+
+
+
+
+ Ungültige Prüfsumme für %1. Klicken Sie auf die Schaltfläche, um die Adresse in Groß-/Kleinschreibung umzuwandeln.
+
+
+
+
+ Legacy-Adresse für %1 verwendet. Klicken Sie auf die Schaltfläche, um sie in eine Cashadresse umzuwandeln.
+
+
+
+
+ %1 Adresse muss 0x vorangestellt werden
+
+
+
+
+ Länge der %1 Adresse ist ungültig, bitte verwenden Sie eine gültige Adresse.
+
+
+
+
+ %1 Adresse ist ungültig.
+
+
+
+
+ Ungültige Prüfsumme.
+
+
+
+
+ %1 Adresse hat ungültige Vorsilben.
+
+
+
+
+ Backend Fehler: %1
+
+
+
+ main
+
+
+
+ Abmelden
+
+
+
+
+ Balance
+
+
+
diff --git a/atomic_defi_design/assets/languages/atomic_defi_en.ts b/atomic_defi_design/assets/languages/atomic_defi_en.ts
index 57724f7f93..980e1d8be6 100644
--- a/atomic_defi_design/assets/languages/atomic_defi_en.ts
+++ b/atomic_defi_design/assets/languages/atomic_defi_en.ts
@@ -1,6 +1,60 @@
+
+ AddAddressForm
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Cancel
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
AddCustomCoinModal
@@ -9,539 +63,321 @@
-
+
-
+
Cancel
-
-
-
+
+
+
-
+
-
+
-
+
-
+
-
+
-
+
-
-
-
-
+
+
+
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
-
+
+
-
+
-
+
-
+
-
+
-
+
- AddressBook
+ AddTagPopup
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
-
-
+
+
-
-
-
-
-
-
-
- Yes
-
-
-
-
+
+
- AddressBookAddContactAddressModal
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Cancel
-
+ AmountChart
-
-
+
+
- AddressBookEditContactModal
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Cancel
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Yes
-
+ App
-
-
+
+
- AddressBookNewContactCategoryModal
+ AssetFromStandardSelector
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
-
- Cancel
-
- AddressBookNewContactModal
+ AssetPieChart
-
-
+
+
+
+
+ AssetsList
-
-
+
+
-
-
+
+
-
-
+
+
-
-
- Cancel
-
-
-
- AddressBookSendWalletSelector
-
-
-
+
+
-
-
+
+
-
-
- AddressBookWalletTypeList
-
-
+
+
-
-
- AddressBookWalletTypeListModal
-
-
+
+
-
-
+
+
- AmountChart
+ Bottom
-
-
+
+
-
-
- App
-
-
+
+
-
-
- AssetPieChart
-
-
+
+
-
-
- AssetsList
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
-
+
+
+ Cancel
-
-
+
+
-
-
+
+
-
-
- Bottom
-
-
+
+
+
-
-
+
+
-
-
+
+
@@ -553,47 +389,47 @@
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
Cancel
-
+
@@ -665,17 +501,12 @@
Chart
-
-
-
-
-
-
+
-
+
@@ -683,118 +514,118 @@
ClaimRewardsModal
-
+
-
+
TICKER
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
Cancel
-
+
@@ -802,33 +633,41 @@
CoinMenu
-
+
TICKER
-
+
TICKER
-
+
-
+
-
+
+
+ ComboBoxWithSearchBar
+
+
+
+
+
+
Combo_fiat
@@ -893,74 +732,83 @@
ConfirmTradeModal
-
+
-
+
+
+
+
+
+
-
+
-
-
+
+
-
-
+
+
-
-
+
+
-
+
-
-
+
-
+
TICKER
-
+
-
+
+
+
+
+
+
-
+
-
+
Cancel
-
+
@@ -976,186 +824,202 @@
Dashboard
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
+
+ DatePicker
+
+
+
+
+
+
+
+ DefaultCopyIcon
+
+
+
+
+
+
DefaultRangeSlider
@@ -1169,6 +1033,14 @@
+
+ DefaultTextEdit
+
+
+
+
+
+
DeleteWalletModal
@@ -1211,125 +1083,203 @@
DexAppPasswordField
-
+
-
-
- DexKeyChecker
+
+
+ DexKeyChecker
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ DexPaginator
+
+
+
+
+
+
+
+ DexRangeSlider
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ DexSweetComboBox
+
+
+
+
+
+
+
+ EditContactModal
+
+
+
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
-
-
-
-
-
+
+
+
+
-
-
+
+
-
-
- DexPaginator
-
-
+
+
-
-
- DexRangeSlider
-
-
+
+
-
-
+
+
-
-
+
+
+ Cancel
+
+
+
+
- DexSweetComboBox
+ EnableAssetModal
-
-
+
+
+
+
+
+
+
+
+
+
+ Cancel
+
EnableCoinModal
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
@@ -1342,27 +1292,27 @@
-
+
-
+
-
+
-
+
Cancel
-
+
@@ -1398,10 +1348,43 @@
+
+ GasInfoModal
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
General
-
+
@@ -1409,7 +1392,7 @@
-
+
day
@@ -1418,7 +1401,7 @@
-
+
hours
@@ -1427,7 +1410,7 @@
-
+
minutes
@@ -1436,7 +1419,7 @@
-
+
seconds
@@ -1445,7 +1428,7 @@
-
+
milliseconds
@@ -1454,91 +1437,97 @@
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
WALLETNAME
-
+
-
+
-
+
-
+
-
-
+
+
+
+
+
+
+
+
-
-
+
+
-
-
+
+
-
+
@@ -1566,17 +1555,17 @@
-
+
-
+
-
+
@@ -1584,17 +1573,17 @@
ImportWallet
-
+
-
+
-
+
@@ -1604,59 +1593,89 @@
-
+
-
+
-
-
+
+
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
@@ -1691,16 +1710,21 @@ Try again or select 'Allow custom seed' to continue.
+
+
+
+
+
ListDelegate
-
+
-
+
@@ -1739,17 +1763,52 @@ Try again or select 'Allow custom seed' to continue.
Login
-
+
-
+
-
+
+
+ Cancel
+
+
+
+ LogoutModal
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
Cancel
@@ -1757,130 +1816,140 @@ Try again or select 'Allow custom seed' to continue.
Main
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
Yes
-
+
-
+
-
+
-
+
-
+
-
+
-
-
-
+
+
+
-
+
-
+
-
+
-
-
+
+
+
+
+
+
+
+
+
+
+
+
-
-
+
+
-
-
+
+
@@ -1889,53 +1958,101 @@ Try again or select 'Allow custom seed' to continue.
-
+
-
-
+
+
-
+
-
+
-
+
-
+
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
MarketModeSelector
-
-
+
+
+ TICKER
-
-
+
+
+ TICKER
@@ -1983,51 +2100,84 @@ Try again or select 'Allow custom seed' to continue.
+
+ NewContactPopup
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
NewUpdateModal
-
-
-
+
+
+
-
+
-
-
-
+
+
+
-
-
-
+
New version found
-
+
+ Mandatory version found
+
+
+
+
%1 %2 is available !
-
+
+ This update is mandatory to continue using the application
+
+
+
+
+ Close Dex
+
+
+
+
Your application is updated.
-
+
Download
@@ -2035,112 +2185,112 @@ Try again or select 'Allow custom seed' to continue.
NewWallet
-
+
Wrong word, please check again
-
+
st
-
+
nd
-
+
rd
-
+
th
-
+
Failed to create a wallet
-
+
New Wallet
-
+
Confirm Seed
-
+
Choose Password
-
+
Important: Back up your seed phrase before proceeding!
-
+
We recommend storing it offline.
-
+
Generated Seed
-
+
Seed phrase
-
+
copied to clipboard
-
+
Next
-
+
Let's double check your seed phrase
-
+
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.
-
+
Enter the
-
+
word
-
+
Check
-
+
Enter the same password to confirm
-
+
Continue
@@ -2171,150 +2321,167 @@ Try again or select 'Allow custom seed' to continue.
NotificationsModal
-
+
Matching
-
+
Order Matching
-
+
Matched
-
+
Order Matched
-
+
Ongoing
-
+
Swap Ongoing
-
+
Successful
-
+
Swap Successful
-
+
Refunding
-
+
Failed
-
+
Swap Failed
-
+
Unknown
-
+
Unknown State
-
+
Swap status updated
-
+
You sent %1
-
+
You received %1
-
+
Your wallet balance changed
-
+
+ %1 Enable status
+ TICKER
+
+
+
+
Please check your internet connection (e.g. VPN service or firewall might block it).
-
+
Failed to enable %1
TICKER
-
+
+ Failed to disable %1
+ TICKER
+
+
+
+
Endpoint not reachable
-
+
Could not reach to endpoint
-
+
Mismatch at %1 custom asset configuration
TICKER
-
+
Application needs to be restarted for %1 custom asset.
TICKER
-
+
Batch %1 failed. Reason: %2
-
+
Show
-
+
Restart
-
+
Quit
-
- There isn't any notification
+
+ Notifications
+
+
+
+
+ There aren't any notifications
-
+
Mark all as read
@@ -2322,44 +2489,97 @@ Try again or select 'Allow custom seed' to continue.
OrderForm
-
+
Price
-
+
+ Reduce 1% relative to CEX market price.
+
+
+
+
+ Use CEX market price.
+
+
+
+
+ Increase 1% relative to CEX market price.
+
+
+
+
Volume
-
+
Amount to sell
-
+
Amount to receive
-
- Min volume:
+
+ Max
+
+
+
+
+ Swap 25% of your tradable balance.
+
+
+
+
+ Swap 50% of your tradable balance.
- How to use the pro-view slider ?
+ Swap 100% of your tradable balance.
+
+
+
+
+ Min Volume
+
+
+
+
+ Min amount to sell
+
+
+
+
+ Min amount to receive
+
+
+
+
+ Minimum accepted trade equals 10% of order volume.
+
+
+
+
+ Minimum accepted trade equals 25% of order volume.
+
+
+
+
+ Minimum accepted trade equals 50% of order volume.
-
- This slider is used to setup the order requirements you need.
-Left slider: Sets the minimum amount required to process a trade.
-Right slider: Sets the volume you want to trade.
+
+ Min volume:
-
+
Use custom minimum trade amount
@@ -2367,7 +2587,7 @@ Right slider: Sets the volume you want to trade.
OrderLine
-
+
Funds are recoverable
@@ -2383,103 +2603,114 @@ Right slider: Sets the volume you want to trade.
OrderModal
-
+
Swap Details
-
+
Order Details
-
+
Order Type
-
+
Maker Order
-
+
Taker Order
-
+
Refund State
-
+
Your swap failed but the auto-refund process for your payment started already. Please wait and keep application opened until you receive your payment back
-
+
Date
-
- ID
+
+ Error ID
-
- Maker Payment Sent ID
+
+
+ Error Log
-
- Maker Payment Spent ID
+
+ Close
-
- Taker Payment Spent ID
+
+ Cancel Order
-
- Taker Payment Sent ID
+
+
+ Swap ID
-
- Error ID
+
+ Maker Payment Sent Transaction ID
-
-
- Error Log
+
+ Maker Payment Spent Transaction ID
-
- Close
+
+ Maker Payment TXID
-
- Cancel Order
+
+ Taker Payment Spent Transaction ID
+
+
+
+
+ Taker Payment Sent Transaction ID
-
+
+ Taker Payment TXID
+
+
+
+
Recover Funds
-
+
Refunding...
-
+
View on Explorer
@@ -2517,32 +2748,32 @@ Please select a new order.
-
+
Export CSV
-
+
Apply Filter
-
+
Cancel All
-
+
From
-
+
To
-
+
Please choose the CSV export name and location
@@ -2558,42 +2789,39 @@ Please select a new order.
PasswordField
-
+
Password
-
+
Enter your wallet password
-
+
At least 1 lowercase alphabetical character
-
+
At least 1 uppercase alphabetical character
-
+
At least 1 numeric character
-
+
At least 1 special character (eg. !@#$%)
-
-
- At least %n character(s)
-
-
-
-
+
+
+ Between %1 and %2 character(s)
+
@@ -2627,12 +2855,12 @@ Please select a new order.
-
+
Show only coins with balance
-
+
(%1/%2)
@@ -2645,38 +2873,38 @@ Please select a new order.
PriceLine
-
+
Set swap price for evaluation
-
+
Exchange rate
-
+
Selected
-
+
Expensive
-
+
Expedient
-
+
%1 compared to CEX
PRICE_DIFF%
-
+
CEXchange rate
@@ -2685,36 +2913,31 @@ Please select a new order.
PriceLineSimplified
- Set swap price for evaluation
-
-
-
-
Exchange rate
-
+
Selected
-
+
CEXchange rate
-
+
Expensive
-
+
Expedient
-
+
%1 compared to CEX
PRICE_DIFF%
@@ -2723,12 +2946,12 @@ Please select a new order.
ProView
-
+
Failed to place the order
-
+
Placed the order
@@ -2745,22 +2968,29 @@ Please select a new order.
ReceiveModal
- Receive
+ Receive %1
+ TICKER
+
+
+
+
+ Only send %1 to this address
+ TICKER
-
- Only send %1 to this address:
+
+ %1 address
TICKER
-
+
copied to clipboard.
-
+
Close
@@ -2768,74 +2998,97 @@ Please select a new order.
RecoverSeedModal
-
-
+
+
View seed and private keys
-
+
Please enter your password to view the seed.
-
+
Seed
-
+
Backup Seed
-
+
Public Address copied to clipboard
-
+
Cancel
Cancel
-
+
+ Incorrect Password
+
+
+
+
View
-
-
+
+
copied to clipboard
-
-
+
+
RPC Password
-
+
Search a coin.
-
+
Public Address
-
+
Private Key copied to clipboard
-
+
Private Key
+
+ RemoveContactPopup
+
+
+ Do you want to remove this contact ?
+
+
+
+
+ Yes
+ Yes
+
+
+
+ No
+
+
+
RestartModal
@@ -2875,7 +3128,7 @@ Please select a new order.
SearchField
-
+
Search
@@ -2883,149 +3136,162 @@ Please select a new order.
SendModal
-
+
Failed to send
-
- Failed to Send
-
-
-
-
+
Prepare to send
-
+
Address of the recipient
-
+
Amount to send
-
+
Gas price
-
+
Recipient's address
-
+
The address has to be mixed case.
-
+
+ Failed to Broadcast
+
+
+
+
Fix
-
+
MAX
-
+
Fiat amount: Unavailable
-
+
Fiat amount: %1
-
+
%1 amount: %2
-
+
Specify in Fiat
-
+
Specify in Crypto
-
+
Enable Custom Fees
-
- Only use custom fees if you know what you are doing!
-
-
-
-
+
Enter the custom fee
-
+
Gas Limit
-
+
Custom Fee can't be higher than the amount
-
+
Not enough funds.
-
+
+
You have %1
AMT TICKER
-
+
+
+ Only use custom fees if you know what you are doing!
+
+
+
+
Close
-
+
Prepare
-
-
+
+
Send
-
+
+ %1 address
+ TICKER
+
+
+
+
+ copied to clipboard.
+
+
+
+
Amount
-
+
Fees
-
+
Date
-
+
Back
@@ -3033,22 +3299,22 @@ Please select a new order.
SendModalContactList
-
+
Select a contact with an %1 address
-
+
Search for contacts...
-
+
%1 addresses
-
+
1 address
@@ -3077,42 +3343,60 @@ Please select a new order.
SendResult
-
+
Transaction Complete!
-
+
+ %1 txid
+ TICKER
+
+
+
+
+
+ copied to clipboard.
+
+
+
+
Recipient's address
-
+
+ %1 address
+ TICKER
+
+
+
+
Amount
-
+
Fees
-
+
Date
-
+
Transaction Hash
-
+
Close
-
+
View on Explorer
@@ -3120,281 +3404,240 @@ Please select a new order.
SettingModal
-
- Confirm Logout
-
-
-
-
- Are you sure you want to log out?
-
-
-
-
- Yes
- Yes
-
-
-
-
+
+
Cancel
Cancel
-
+
Settings
-
+
General
-
+
Language
-
+
User Interface
-
+
Security
-
+
Enable Desktop Notifications
-
+
Maximum number of enabled coins
-
+
Logs
-
+
Open Folder
-
+
Reset
-
+
Current Font
-
+
Current font changed to %1.
-
+
Theme
-
+
Changing theme to %1
-
+
Application Version
-
+
copied to clipboard
-
-
-
-
-
-
+
About & Version
-
-
+
+
Reset wallet configuration
-
+
This will restart your wallet with default settings
-
+
+
Confirm
-
+
Ask system's password before sending coins ? (2FA)
-
- View seed and private keys
-
-
-
-
-
- Show
-
-
-
-
- Setup Camouflage Password
-
-
-
-
- Open
-
-
-
-
- Disclaimer and ToS
+
+ Disable 2FA?
-
- Application version
+
+ Enter your wallet password to confirm
-
- MM2 version
+
+ Type password
-
- MM2 Version
+
+ 2FA status
-
- MM2 Version copied to clipboard.
+
+ 2FA disabled successfully
-
- Qt version
+
+
+ Ok
-
- Qt Version
+
+ Wrong password!
-
- Qt Version copied to clipboard.
+
+ Wallet password is incorrect
-
- Search Update
+
+ View seed and private keys
-
- Logout
+
+
+ Show
-
-
- Settings
-
- Fiat
+
+ Setup Camouflage Password
-
- Recommended:
+
+ Open
-
- Enable Desktop Notifications
+
+ Disclaimer and ToS
-
- Use QtTextRendering Or NativeTextRendering
+
+ Application version
-
- Open Logs Folder
+
+ MM2 version
-
- View seed and private keys
+
+ MM2 Version
-
- Disclaimer and ToS
+
+ MM2 Version copied to clipboard.
-
- Setup Camouflage Password
+
+ Qt version
-
- Reset wallet configuration
+
+ Qt Version
-
- Delete Wallet
+
+ Qt Version copied to clipboard.
-
- Log out
+
+ Search Update
-
- mm2 version
+
+ Logout
Sidebar
-
- Search coin
+
+ Search
-
+
Add asset
@@ -3506,32 +3749,32 @@ Please select a new order.
-
+
To
-
+
Cancel
Cancel
-
+
Apply filter
-
+
Export
-
+
Please choose the CSV export name and location
-
+
No results found
@@ -3540,57 +3783,57 @@ Please select a new order.
SubOrders
-
+
Orders
-
+
Close filtering options.
-
+
Filter
-
+
Date
-
+
Open filtering options.
-
+
Filter settings
-
+
From
-
+
To
-
+
Cancel
Cancel
-
+
Apply filter
-
+
No results found
@@ -3724,7 +3967,7 @@ Network fees can vary greatly depending on your selected trading pair.
-
+
Open Logs Folder
@@ -3732,31 +3975,23 @@ Network fees can vary greatly depending on your selected trading pair.
SwapProgress
-
+
act
SHORT FOR ACTUAL TIME
-
+
est
SHORT FOR ESTIMATED
-
+
Progress details
-
- SweetDexComboBox
-
-
- Search
-
-
-
TextAreaWithTitle
@@ -3771,14 +4006,17 @@ Network fees can vary greatly depending on your selected trading pair.
- TextEditWithTitle
+ TextEditWithCopy
-
- Swap ID
+
+ copied to clipboard
+
+
+ TextEditWithTitle
-
+
copied to clipboard
@@ -3786,7 +4024,7 @@ Network fees can vary greatly depending on your selected trading pair.
TextFieldWithTitle
-
+
Required
@@ -3802,22 +4040,32 @@ Network fees can vary greatly depending on your selected trading pair.
Trade
-
+
Swap
-
+
Instant trading with best orders
-
+
+ Reset form
+
+
+
+
+ You have no tradable assets
+
+
+
+
From
-
+
Enter an amount
@@ -3837,119 +4085,109 @@ Network fees can vary greatly depending on your selected trading pair.
-
+
Price
-
+
Better price found: %1. Updating forms.
-
+
Better price (%1) found but received quantity (%2) is lower than your current one (%3). Click here to update the selected order.
-
- Reset form.
-
-
-
-
- You have no tradable assets.
-
-
-
-
+
%1
-
+
Tradable:
-
+
Min: %1
-
+
Pick a coin
-
+
SWAP NOW
-
+
Failed to place the order
-
+
Placed the order
-
+
Entered amount must be superior than 0.
-
+
You must select an order.
-
+
Entered amount is below the minimum required by this order: %1
-
-
+
+
%1 needs to be enabled in order to use %2
-
-
+
+
%1 balance needs to be funded, a non-zero balance is required to pay the gas of %2 transactions
-
+
%1 balance does not have enough funds to pay the gas of %2 transactions
-
+
No buy orders found for %1.
-
+
You can check later or try to sell a different coin.
-
+
Calculating fee estimate...
-
+
Total %1 fees:
-
+
%2 (%3)
@@ -3968,31 +4206,26 @@ Network fees can vary greatly depending on your selected trading pair.
- Chart
-
-
-
-
Ticker Selectors
-
+
Trading Information
-
+
Order Book
-
+
Best Orders
-
+
Place Order
@@ -4000,77 +4233,88 @@ Network fees can vary greatly depending on your selected trading pair.
TransactionDetailsModal
-
+
Transaction Details
-
+
+ %1 txid
+ TICKER
+
+
+
+
+ copied to clipboard.
+
+
+
+
Amount
-
+
Fees
-
- Date
+
+ From address
-
- Unconfirmed
+
+ To address
-
- Transaction Hash
+
+ Date
-
- Transactions
+
+ Unconfirmed
-
- txid copied to clipboard
+
+ Transaction Hash
-
+
Confirmations
-
+
Block Height
-
+
From
-
+
To
-
+
Notes
-
+
Close
-
+
View on Explorer
@@ -4078,22 +4322,22 @@ Network fees can vary greatly depending on your selected trading pair.
Transactions
-
+
Sent
-
+
Received
-
+
fees
-
+
Unconfirmed
@@ -4114,19 +4358,6 @@ Network fees can vary greatly depending on your selected trading pair.
-
- WalletNameField
-
-
- Wallet Name
-
-
-
-
- Enter the name of your wallet here
-
-
-
WalletsView
@@ -4150,123 +4381,160 @@ Network fees can vary greatly depending on your selected trading pair.
-
+
My Wallets
-
+
No wallets found!
-
-
+
+
Delete
-
+
Enter password to confirm deletion of
-
+
wallet
-
+
Type password
-
+
Cancel
Cancel
-
-
+
+
Wallet status
-
+
wallet deleted successfully
-
-
+
+
Ok
-
+
wallet password is incorrect
+
+ ZcashParamsModal
+
+
+ %1 Activation Failed!
+
+
+
+
+ To activate ZHTLC coins, you need to download the Zcash Params.
+This might take a few minutes...
+
+
+
+
+ Download params & enable coins
+
+
+
+
+ More Info
+
+
+
+
+ Close
+
+
+
+
+ atomic_dex::settings_page
+
+
+ An error has occurred.
+
+
+
atomic_dex::wallet_page
-
+
You do not have enough funds.
-
+
%1 is not activated: click on the button to enable it or enable it manually
-
+
You need to have %1 to pay the gas for %2 transactions.
-
+
Checksum verification failed for %1.
-
+
Invalid checksum for %1. Click the button to convert to mixed case address.
-
+
Legacy address used for %1. Click the button to convert to a Cashaddress.
-
+
%1 address must be prefixed with 0x
-
+
%1 address length is invalid, please use a valid address.
-
+
%1 address is invalid.
-
+
Invalid checksum.
-
+
%1 address has invalid prefixes.
-
+
Backend error: %1
@@ -4274,32 +4542,12 @@ Network fees can vary greatly depending on your selected trading pair.
main
-
+
Logout
-
- Confirm Logout
-
-
-
-
- Are you sure you want to log out?
-
-
-
-
- Yes
- Yes
-
-
-
- Cancel
- Cancel
-
-
-
+
Balance
diff --git a/atomic_defi_design/assets/languages/atomic_defi_es.ts b/atomic_defi_design/assets/languages/atomic_defi_es.ts
new file mode 100644
index 0000000000..c5ef6a286e
--- /dev/null
+++ b/atomic_defi_design/assets/languages/atomic_defi_es.ts
@@ -0,0 +1,4576 @@
+
+
+
+
+ AddAddressForm
+
+
+ Use standard network address
+ Utilice la dirección de red
+
+
+
+ Label
+ Etiqueta
+
+
+
+ This key already exists.
+ Esta clave ya existe.
+
+
+
+ Address
+ Dirección
+
+
+
+
+ Cancel
+ Cancelar
+
+
+
+ Convert
+ Convertir
+
+
+
+ Edit
+ Editar
+
+
+
+ Add
+ Agregar
+
+
+
+ You need to enable %1 before adding this kind of address.
+ Debe habilitar %1 antes de agregar este tipo de dirección.
+
+
+
+ Enable
+ Habilitar
+
+
+
+ AddCustomCoinModal
+
+
+ Get the contract address from
+ Obtener la dirección del contrato de
+
+
+
+ Choose the asset type
+ Elija el tipo de activo
+
+
+
+ Cancel
+ Cancelar
+
+
+
+
+
+ Next
+ Siguiente
+
+
+
+ Contract address
+ Dirección del contrato
+
+
+
+ Enter the contract address
+ Ingrese la dirección del contrato
+
+
+
+ Choose the asset ticker
+ Elija el ticker del activo
+
+
+
+ Ticker
+ Ticker
+
+
+
+ Enter the ticker
+ Ingrese el ticker
+
+
+
+ Get the contract address from
+ Obtener la dirección del contrato de
+
+
+
+
+
+
+ Previous
+ Anterior
+
+
+
+ Choose the asset logo
+ Elija el logotipo del activo
+
+
+
+ Browse
+ Navegar
+
+
+
+ Please choose the asset logo
+ Elija el logotipo del activo
+
+
+
+ Configuration
+ Configuración
+
+
+
+ All configuration fields will be fetched using the contract address you provided.
+ Todos los campos de configuración se obtendrán usando la dirección del contrato que proporcionó.
+
+
+
+ Name
+ Nombre
+
+
+
+ Enter the name
+ Ingrese el nombre
+
+
+
+ Coingecko ID
+ Coingecko ID
+
+
+
+ Enter the Coingecko ID
+ Ingrese el Coingecko ID
+
+
+
+ Get the Coingecko ID
+ Obtener el Coingecko ID
+
+
+
+ Active
+ Activo
+
+
+
+
+ Preview
+ Vista previa
+
+
+
+ WARNING: Application will restart immidiately to apply the changes!
+ ADVERTENCIA: ¡La aplicación se reiniciará inmediatamente para aplicar los cambios!
+
+
+
+ Asset not found, please go back and make sure Contract Address is correct
+ Activo no encontrado, regrese y asegúrese de que la dirección del contrato sea correcta
+
+
+
+ Config Fields
+ Campos de configuracion
+
+
+
+ Fetched Data
+ Datos obtenidos
+
+
+
+ Submit & Restart
+ Enviar & Reiniciar
+
+
+
+ AddTagPopup
+
+
+ Tag name
+ Nombre de la etiqueta
+
+
+
+ Contact already has this tag.
+ El contacto ya tiene esta etiqueta.
+
+
+
+ + ADD
+ + Añadir
+
+
+
+ AmountChart
+
+
+ Work in progress
+ Trabajo en proceso
+
+
+
+ App
+
+
+ Recover Funds Result
+ Resultados de Recuperar Fondos
+
+
+
+ AssetFromStandardSelector
+
+
+ Choose a valid
+ Elija un
+
+
+
+ asset
+ activo
+
+
+
+ Search an asset
+ Buscar un activo
+
+
+
+ Disabled
+ deshabilitados
+
+
+
+ AssetPieChart
+
+
+ Assets
+ Activos
+
+
+
+ AssetsList
+
+
+ Asset
+ Activo
+
+
+
+ Balance
+ Saldo
+
+
+
+ Fiat Balance
+ Saldo Fiat
+
+
+
+ Change 24h
+ Cambio en 24h
+
+
+
+ Price
+ Precio
+
+
+
+ Source
+ Fuente
+
+
+
+ Activating:
+ Activando:
+
+
+
+ Price provider is: %1
+ El proveedor de precios es: %1
+
+
+
+ Bottom
+
+
+ Settings
+ Configuración
+
+
+
+ Support
+ Soporte
+
+
+
+ Privacy
+ Privacidad
+
+
+
+ Disable Privacy?
+ ¿Deshabilitar privacidad?
+
+
+
+ Enter wallet password to confirm
+ Ingrese la contraseña de la billetera para confirmar
+
+
+
+ Type password
+ Escriba la contraseña
+
+
+
+ Confirm
+ Confirmar
+
+
+
+ Cancel
+ Cancelar
+
+
+
+ Privacy status
+ Estado de privacidad
+
+
+
+ Privacy mode disabled successfully
+ Modo de privacidad deshabilitado correctamente
+
+
+
+
+ Ok
+ Ok
+
+
+
+ Wrong password!
+ ¡Contraseña incorrecta!
+
+
+
+ wallet password is incorrect
+ la contraseña de la billetera es incorrecta
+
+
+
+ CamouflagePasswordModal
+
+
+ Setup Camouflage Password
+ Configuración de Contraseña Camuflaje
+
+
+
+ Camouflage Password is a secret password for emergency situations.
+ Contraseña Camuflaje es una contraseña secreta para situaciones de emergencia.
+
+
+
+ Using it to login will display your balance lower than it actually is.
+ Usarlo para iniciar sesión mostrará su saldo más bajo de lo que realmente es.
+
+
+
+ Here you enter the suffix and at login you need to enter {real_password}{suffix}
+ Aquí ingresa el sufijo y al iniciar sesión debe ingresar {real_password}{suffix}
+
+
+
+ Password suffix
+ Sufijo de contraseña
+
+
+
+ Confirm pasword suffix
+ Confirmar sufijo
+
+
+
+ Enter a password suffix
+ Ingrese un sufijo de contraseña
+
+
+
+ Enter the same password suffix to confirm
+ Ingrese el mismo sufijo de contraseña para confirmar
+
+
+
+ Cancel
+ Cancelar
+
+
+
+ Save
+ Guardar
+
+
+
+ CannotEnableCoinModal
+
+
+ Failed to enable %1
+ No se pudo habilitar %1
+
+
+
+ Enabling %1 did not succeed. Limit of enabled coins might have been reached.
+ No se pudo habilitar %1. Es posible que se haya alcanzado el límite de monedas habilitadas.
+
+
+
+ Change limit in settings
+ Cambiar el límite en la configuración
+
+
+
+ Cancel
+ Cancelar
+
+
+
+ Center
+
+
+ Portfolio
+ Cartera
+
+
+
+ Wallet
+ Monedero
+
+
+
+ DEX
+ DEX
+
+
+
+ Address Book
+ Directorio
+
+
+
+ Fiat
+ Fiat
+
+
+
+ CexInfoModal
+
+
+ Market Data
+ Data de Mercado
+
+
+
+ Market data (prices, charts, etc.) marked with the ⓘ icon originates from third-party sources.<br><br>Data is sourced via <a href="https://bandprotocol.com/">Band Decentralized Oracle</a> and <a href="https://coingecko.com">CoinGecko</a>.<br><br><b>Oracle Supported Pairs:</b><br>%1<br><br><b>Last reference (Band Oracle):</b><br><a href="%2">%2</a>
+ Datos de mercado (precios, estadisticas, etc.) marcados con ⓘ se obtienen a través de fuentes terceras.<br><br>Data is sourced via <a href="https://bandprotocol.com/">Band Decentralized Oracle</a> and <a href="https://coingecko.com">CoinGecko</a>.<br><br><b>Oracle Supported Pairs:</b><br>%1<br><br><b>Last reference (Band Oracle):</b><br><a href="%2">%2</a>
+
+
+
+ Chart
+
+
+ Loading market data
+ Cargando datos de mercado
+
+
+
+ There is no chart data for this pair yet
+ Todavía no hay datos de gráficos para este par
+
+
+
+ ClaimRewardsModal
+
+
+ Failed to prepare to claim rewards
+ No se pudo preparar para reclamar recompensas
+
+
+
+ Claim your %1 reward?
+ TICKER
+ ¿Reclamar su %1 de recompensa?
+
+
+
+ No UTXOs eligible for claiming
+ Ningún UTXO elegible para reclamar
+
+
+
+ Transaction fee is higher than the reward!
+ ¡La tarifa de transacción es más alta que la recompensa!
+
+
+
+ You will receive
+ Recibirá
+
+
+
+ Refresh
+ Actualizar
+
+
+
+ Read more about KMD active users rewards
+ Lea más sobre las recompensas de los usuarios activos de KMD
+
+
+
+ UTXO
+ UTXO
+
+
+
+ Amount
+ Cantidad
+
+
+
+ Reward
+ Recompensa
+
+
+
+ Accruing Start
+ Inicio de Acumulación
+
+
+
+ Accruing Stop
+ Detener Acumulación
+
+
+
+ Time Left
+ Tiempo Restante
+
+
+
+ Error
+ Error
+
+
+
+ Locktime is not set
+ Locktime no está configurado
+
+
+
+ Locktime is less than the threshold
+ Locktime es inferior al umbral
+
+
+
+ UTXO height is greater than end of the era
+ La altura de UTXO es mayor que el final de la era
+
+
+
+ UTXO amount is less than 10
+ La cantidad de UTXO es inferior a 10
+
+
+
+ One hour did not pass yet
+ Una hora no pasa aún
+
+
+
+ Transaction is in mempool
+ La transacción está en el mempool
+
+
+
+ Unknown problem
+ Problema desconocido
+
+
+
+ Cancel
+ Cancelar
+
+
+
+ Confirm
+ Confirmar
+
+
+
+ CoinMenu
+
+
+ Disable %1
+ TICKER
+ Deshabilitar %1
+
+
+
+ Disable and Delete %1
+ TICKER
+ Deshabilitar y eliminar %1
+
+
+
+ Disable all %1 assets
+ Deshabilitar todos los activos de %1
+
+
+
+ Disable all assets
+ Deshabilitar todos los activos
+
+
+
+ Disable 0 balance assets
+ Deshabilitar 0 balancear activos
+
+
+
+ ComboBoxWithSearchBar
+
+
+ Search
+ Buscar
+
+
+
+ Combo_fiat
+
+
+ Language
+ Idioma
+
+
+
+ Fiat
+ Fiat
+
+
+
+ Recommended:
+ Recomendado:
+
+
+
+ ConfirmMultiOrderTradeModal
+
+
+ Confirm Multi Order Details
+ Confirmar detalles de Multi Order
+
+
+
+ These swaps requests can not be undone and this is the final event!
+ Estas solicitudes de intercambio no se pueden deshacer y este es el evento final!
+
+
+
+ These transactions can take up to 60 mins - DO NOT close this application!
+ Estas transacciones pueden demorar hasta 60 minutos. ¡NO cierre esta aplicación!
+
+
+
+ Same funds will be used until an order matches.
+ Se utilizarán los mismos fondos hasta que coincida un pedido.
+
+
+
+ Note that if one order is filled other will not be cancelled.
+ Tenga en cuenta que si se completa un pedido, el otro no se cancelará.
+
+
+
+ Cancel
+ Cancelar
+
+
+
+ Confirm
+ Confirmar
+
+
+
+ Placed multiple orders
+ Pedidos múltiples realizados
+
+
+
+ ConfirmTradeModal
+
+
+ Confirm Exchange Details
+ Confirmar Detalles de Intercambio
+
+
+
+ Trade price is more than 50% different to CEX! Confirm?
+ ¡El precio comercial es más del 50% diferente al de CEX! ¿Confirmar?
+
+
+
+ This swap request can not be undone and is a final event!
+ ¡Esta solicitud de intercambio no se puede deshacer y es un evento final!
+
+
+
+ This transaction can take up to 60 mins - DO NOT close this application!
+ Esta transacción puede demorar hasta 60 minutos. ¡NO cierre esta aplicación!
+
+
+
+ Loading fees...
+ Cargando tarifas...
+
+
+
+ <b>Total %1 fees:</b>
+ <b>Total de %1 fees:</b>
+
+
+
+ Security configuration
+ Configuración de seguridad
+
+
+
+ %1 confirmations for incoming %2 transactions
+ %1 confirmaciones para %2 transacciones entrantes
+
+
+
+ Read more about dPoW
+ Obtenga más información sobre dPoW
+
+
+
+ Use custom protection settings for incoming %1 transactions
+ TICKER
+ Utilice configuraciones de protección personalizadas para %1 transacciones entrantes
+
+
+
+ Enable Komodo dPoW security
+ Habilite la seguridad dPoW de Komodo
+
+
+
+ dPoW protected
+ dPoW protegida
+
+
+
+ Required Confirmations
+ Confirmaciones Requeridas
+
+
+
+ Warning, this atomic swap is not dPoW protected!
+ Advertencia, este intercambio atómico no está protegido por dPoW!
+
+
+
+ Cancel
+ Cancelar
+
+
+
+ Confirm
+ Confirmar
+
+
+
+ CopyFieldButton
+
+
+ Copied to Clipboard
+ Copiada en el Portapapeles
+
+
+
+ Dashboard
+
+
+ The current number of enabled coins does not match your configuration specification. Your assets configuration will be reset.
+ El número actual de monedas habilitadas no coincide con su especificación de configuración. Se restablecerá la configuración de sus activos.
+
+
+
+ Matching
+ Emparejando
+
+
+
+ Order Matching
+ Emparejando Orden
+
+
+
+ Matched
+ Emparejado
+
+
+
+ Order Matched
+ Orden Emparejada
+
+
+
+ Ongoing
+ En Curso
+
+
+
+ Swap Ongoing
+ Intercambio En Curso
+
+
+
+ Successful
+ Exitoso
+
+
+
+ Swap Successful
+ Intercambio exitoso
+
+
+
+ Refunding
+ Reembolso
+
+
+
+ Failed
+ Fallo
+
+
+
+ Swap Failed
+ Intercambio fallido
+
+
+
+ Unknown
+ Desconocido
+
+
+
+ Unknown State
+ Estado Desconocido
+
+
+
+ Started
+ Iniciado
+
+
+
+ Negotiated
+ Negociado
+
+
+
+ Taker fee sent
+ Tarifa taker enviada
+
+
+
+ Maker payment received
+ Pago de maker recibido
+
+
+
+ Maker payment wait confirm started
+ Inicio de espera de confirmacion de pago de maker
+
+
+
+ Maker payment validated and confirmed
+ Validacion y confirmacion de pago de maker
+
+
+
+ Taker payment sent
+ Pago de taker enviado
+
+
+
+ Taker payment spent
+ Pago del taker gastado
+
+
+
+ Maker payment spent
+ Pago del maker gastado
+
+
+
+ Finished
+ Terminado
+
+
+
+ Start failed
+ Inicio fallido
+
+
+
+ Negotiate failed
+ Negociacion fallida
+
+
+
+ Taker fee validate failed
+ Validación de tarifa del taker fallida
+
+
+
+ Maker payment transaction failed
+ Transacción de pago de maker fallo
+
+
+
+ Maker payment Data send failed
+ Envio de data de pago de maker fallo
+
+
+
+ Maker payment wait confirm failed
+ Espera de confirmacion de pago de maker fallo
+
+
+
+ Taker payment validate failed
+ Validacion de pago de taker fallo
+
+
+
+ Taker payment wait confirm failed
+ Espera de confirmacion de pago de taker fallo
+
+
+
+ Taker payment spend failed
+ Gasto de pago de taker fallo
+
+
+
+ Maker payment wait refund started
+ Reembolso de espera de pago de maker iniciado
+
+
+
+ Maker payment refunded
+ Pago de maker reembolsado
+
+
+
+ Maker payment refund failed
+ Reembolso del pago de maker fallo
+
+
+
+ DatePicker
+
+
+ Date
+ Fecha
+
+
+
+ DefaultCopyIcon
+
+
+ copied to clipboard
+ copiado al portapapeles
+
+
+
+ DefaultRangeSlider
+
+
+ Min
+ Min
+
+
+
+ Max
+ Max
+
+
+
+ DefaultTextEdit
+
+
+ copied to clipboard
+ copiado al portapapeles
+
+
+
+ DeleteWalletModal
+
+
+ Delete Wallet
+ Eliminar billetera
+
+
+
+ Are you sure you want to delete %1 wallet?
+ WALLET_NAME
+ ¿Está seguro de que desea eliminar %1 billetera?
+
+
+
+ If so, make sure you record your seed phrase in order to restore your wallet in the future.
+ Si es así, asegúrese de registrar su frase inicial para restaurar su billetera en el futuro.
+
+
+
+ Enter your wallet password
+ Ingrese la contraseña de su billetera
+
+
+
+ Wrong Password
+ Contraseña incorrecta
+
+
+
+ Cancel
+ Cancelar
+
+
+
+ Delete
+ Eliminar
+
+
+
+ DexAppPasswordField
+
+
+ Type password
+ Escriba la contraseña
+
+
+
+ DexKeyChecker
+
+
+ At least 1 lowercase alphabetical character
+ Al menos 1 carácter alfabético en minúsculas
+
+
+
+ At least 1 uppercase alphabetical character
+ Al menos 1 carácter alfabético en mayúsculas
+
+
+
+ At least 1 numeric character
+ Al menos 1 carácter numérico
+
+
+
+ At least 1 special character (eg. !@#$%)
+ Al menos 1 carácter especial ( ej., !@#$%)
+
+
+
+ Between %1 and %2 character(s)
+ Entre %1 y %2 carácter(es)
+
+
+
+ Password and Confirm Password have to be same
+ Contraseña y Confirmar Contraseña tienen que ser los mismos
+
+
+
+ DexPaginator
+
+
+ items per page
+ elementos por página
+
+
+
+ DexRangeSlider
+
+
+ Min
+ Min
+
+
+
+ Half
+ Mitad
+
+
+
+ Max
+ Max
+
+
+
+ DexSweetComboBox
+
+
+ Search
+ Buscar
+
+
+
+ EditContactModal
+
+
+ Edit contact
+ Editar contacto
+
+
+
+ Contact name
+ Nombre
+
+
+
+ Enter a contact name
+ Ingresar un nombre de contacto
+
+
+
+ Address list
+ Lista de direcciónes
+
+
+
+ Address Book
+ Libreta de direcciones
+
+
+
+ address copied to clipboard
+ dirección copiada al portapapeles
+
+
+
+ Edit
+ Editar
+
+
+
+ + Add
+ + Añadir
+
+
+
+ Tags
+ Etiquetas
+
+
+
+ Add tag
+ Agregar etiqueta
+
+
+
+ Cancel
+ Cancelar
+
+
+
+ Confirm
+ Confirmar
+
+
+
+ EnableAssetModal
+
+
+ The selected address belongs to a disabled asset, you need to enabled it before sending.
+ La dirección seleccionada pertenece a un activo deshabilitado, debe habilitó antes de enviar.
+
+
+
+ Enable
+ Habilitar
+
+
+
+ Cancel
+ Cancelar
+
+
+
+ EnableCoinModal
+
+
+ Enable assets
+ Habilitar activos
+
+
+
+ Select all assets
+ Seleccionar todos los activos
+
+
+
+ All assets are already enabled!
+ ¡Todos los activos ya están habilitados!
+
+
+
+ You can still enable %1 assets. Selected: %2.
+ Todavía puede habilitar activos %1. Seleccionado: %2.
+
+
+
+ Search asset
+ Buscar activo
+
+
+
+ Change assets limit
+ Cambiar el límite de activos
+
+
+
+ Add a custom asset
+ Agregar un activo personalizado
+
+
+
+ Close
+ Cerrar
+
+
+
+ Enable
+ Habilitar
+
+
+
+ EulaModal
+
+
+ Disclaimer & Terms of Service
+ Descargo de Responsabilidad & Términos de servicio
+
+
+
+ Accept EULA
+ Aceptar EULA
+
+
+
+ Accept Terms and Conditions
+ Aceptar términos y condiciones
+
+
+
+ Close
+ Cerrar
+
+
+
+ Cancel
+ Cancelar
+
+
+
+ Confirm
+ Confirmar
+
+
+
+ FatalErrorModal
+
+
+ Fatal Error
+ Error Fatal
+
+
+
+ Connection has been lost. You have been disconnected.
+ Ha perdido la conexión. Has sido desconectado.
+
+
+
+ Close
+ Cerrar
+
+
+
+ FeeInfo
+
+
+ Minimum fee
+ Tarifa mínima
+
+
+
+ Fees will be calculated
+ Las tarifas se calcularán
+
+
+
+ GasInfoModal
+
+
+ How do I calculate gas?
+ ¿Cómo calculo la gasolina?
+
+
+
+ Gas is measured in gwei. Gwei is just a unit of Ether, and is equal to 0.000000001 ETH (or the equivalent platform coin such as AVAX or BNB). The gas price varies over time depending on network congestion.
+ El gas se mide en gwei. Gwei es solo una unidad de Ether y es igual a 0.000000001 ETH (o la moneda de plataforma equivalente como AVAX o BNB). El precio del gas varía con el tiempo dependiendo de la congestión de la red.
+
+
+
+ The gas limit is how many units of gas (maximum) you allocate to pay for a transaction. The gas required depending on the size of the transaction & data being transmitted.
+
+
+
+
+ A standard transaction not involving contracts uses 21,000 gas units, with any of the limit remaining returned to the source address.
+ Una transacción estándar que no implica contratos utiliza 21.000 unidades de gas, y el límite restante se devuelve a la dirección de origen.
+
+
+
+ Transactions involving contracts may result in the whole limit being consumed, so be careful not to set it too high.
+ Las transacciones que involucran contratos pueden resultar en que se consuma todo el límite, así que tenga cuidado de no establecerlo demasiado alto.
+
+
+
+ For more information, read the article at <a href="https://support.mycrypto.com/how-to/sending/how-to-know-what-gas-limit-to-use">https://support.mycrypto.com/how-to/sending/how-to-know-what-gas-limit-to-use</a>
+ Para obtener más información, lea el artículo en <a href="https://support.mycrypto.com/how-to/sending/how-to-know-what-gas-limit-to-use">https://support.mycrypto.com/how-to/sending/how-to-know-what-gas-limit-to-use</a>
+
+
+
+ General
+
+
+ %n day(s)
+
+ %n día
+ %n días
+
+
+
+
+ %nd
+ day
+
+
+
+
+
+
+
+ %nh
+ hours
+
+
+
+
+
+
+
+ %nm
+ minutes
+
+
+
+
+
+
+
+ %ns
+ seconds
+
+
+
+
+
+
+
+ %nms
+ milliseconds
+
+
+
+
+
+
+
+ -
+ -
+
+
+
+ <b>Taker tx fee:</b>
+ <b>Taker tx fee:</b>
+
+
+
+ <b>Dex tx fee:</b>
+ <b>Dex tx fee:</b>
+
+
+
+ <b>Dex fee:</b>
+ <b>Dex fee:</b>
+
+
+
+ <b>Maker tx fee:</b>
+ <b>Maker tx fee:</b>
+
+
+
+ %1 %2 %3 (%4)
+ %1 %2 %3 (%4)
+
+
+
+ Trading Fee
+ Tarifa de Intercambio
+
+
+
+ Minimum Trading Amount
+ Cantidad Mínima de Intercambio
+
+
+
+ Wallet %1 already exists
+ WALLETNAME
+ Monedero %1 ya existe
+
+
+
+ %1 balance is lower than the fees amount: %2 %3
+ El saldo de %1 es inferior al monto de las tarifas: %2 %3
+
+
+
+ Tradable (after fees) %1 balance is lower than minimum trade amount
+ El saldo de %1 (después de las tarifas) es inferior al monto mínimo de intercambio
+
+
+
+ Please fill the price field
+ Por favor complete el campo de precio
+
+
+
+ Please fill the volume field
+ Complete el campo de volumen
+
+
+
+
+ Please wait for %1 to fully activate
+ Espere a que %1 se active por completo
+
+
+
+
+ %1 volume is lower than minimum trade amount
+ El volumen de %1 es inferior al monto mínimo de intercambio
+
+
+
+
+ %1 needs to be enabled in order to use %2
+ %1 debe habilitarse para usar %2
+
+
+
+
+ %1 balance needs to be funded, a non-zero balance is required to pay the gas of %2 transactions
+ se debe rellenar el saldo de %1, se requiere un saldo distinto de cero para pagar el gas de %2 transacciones
+
+
+
+ Unknown Error
+ Error Desconocido
+
+
+
+ Header
+
+
+ You get
+ Obtienes
+
+
+
+ You send
+ Envía
+
+
+
+ Fiat Price
+ Precio Fiat
+
+
+
+ CEX rate
+ Tasa CEX
+
+
+
+ Price
+ Precio
+
+
+
+ Quantity
+ Cantidad
+
+
+
+ Total
+ Total
+
+
+
+ ImportWallet
+
+
+ Failed to Import the wallet
+ No se pudo importar la billetera
+
+
+
+ Import wallet - Setup
+ Importar billetera - Configurar
+
+
+
+ Import wallet - Choose password
+ Importar billetera - Elegir contraseña
+
+
+
+ Wallet Name
+ Nombre de billetera
+
+
+
+ Enter seed
+ Ingresar semilla
+
+
+
+ Your seed is not BIP39 compliant.
+Try again or select 'Allow custom seed' to continue.
+ Su semilla no cumple con BIP39.
+Vuelva a intentarlo o seleccione 'Permitir semilla personalizada' personalizada continúe.
+
+
+
+
+ i understand
+ entiendo
+
+
+
+
+ я согласен
+
+
+
+
+
+ je comprends
+
+
+
+
+
+ entiendo
+
+
+
+
+
+ anladım
+
+
+
+
+
+ ich verstehe
+
+
+
+
+ Ok
+ Ok
+
+
+
+ Allow custom seed
+ Permitir semilla personalizada
+
+
+
+ <strong>Allow custom seed</strong>
+ <strong>Permitir semilla personalizada</strong>
+
+
+
+ Custom seed phrases might be less secure and easier to crack than a generated BIP39 compliant seed phrase or private key (WIF).<br><br>To confirm you understand the risk and know what you are doing, type <strong>'I understand'</strong> in the box below.
+ 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.<br><br>Para confirmar que comprende el riesgo y sabe lo que está haciendo, escriba <strong> 'Entiendo'</strong> en el cuadro de abajo.
+
+
+
+ I understand
+ Entiendo
+
+
+
+ Next
+ Siguiente
+
+
+
+ Enter the same password to confirm
+ Ingrese la misma contraseña para confirmar
+
+
+
+ Continue
+ Continuar
+
+
+
+ LinksRow
+
+
+ Join our Discord server
+ Únase a nuestro servidor de Discord
+
+
+
+ Follow us on Twitter
+ Síganos en Twitter
+
+
+
+ Go to Support Guides
+ Ir a Guías de soporte
+
+
+
+ List
+
+
+ Funds are recoverable
+ Los fondos son recuperables
+
+
+
+ Best Orders
+ Mejores Ordenes
+
+
+
+ Enter volume to see best orders.
+ Introduce el volumen para ver los mejores ordenes
+
+
+
+ ListDelegate
+
+
+ %1 is not enabled - Do you want to enable it to be able to select %2 best orders ?<br><a href='#'>Yes</a> - <a href='#no'>No</a>
+ %1 no está habilitado. ¿Desea habilitarlo para poder seleccionar %2 mejores ordenes?<br><a href='#'>Sí</a> - <a href='#no'>No</a>
+
+
+
+ This order requires a minimum amount of %1 %2 <br>You don't have enough funds.<br> %3
+ Este pedido requiere una cantidad mínima de %1 %2 <br>No tiene fondos suficientes.<br> %3
+
+
+
+ LogModal
+
+
+ Close
+ Cerrar
+
+
+
+ Logging
+
+
+ Loading, please wait
+ Cargando, por favor espere
+
+
+
+ Initializing MM2
+ Inicializando MM2
+
+
+
+ Enabling assets
+ Habilitando activos
+
+
+
+ Getting ready
+ Preparándose
+
+
+
+ Login
+
+
+ Incorrect Password
+ Contraseña incorrecta
+
+
+
+ Log In
+ Iniciar sesión
+
+
+
+ Cancel
+ Cancelar
+
+
+
+ LogoutModal
+
+
+ Exit %1 or go to login menu?
+ Salga de %1 o vaya al menú de inicio de sesión
+
+
+
+ Warning: You currently have a swap in progress.
+Logging out may result in a failed swap.
+ Advertencia: actualmente tiene una operación en curso.
+Cerrar sesión puede resultar en una transacción fallida.
+
+
+
+ Warning: You currently have open maker orders.
+They will be removed from the orderbook until you log in again.
+ Advertencia: actualmente tiene órdenes abiertas.
+Se eliminarán del libro de pedidos hasta que vuelva a iniciar sesión.
+
+
+
+ Login menu
+ Menú de inicio de sesión
+
+
+
+ Exit
+ Dejar
+
+
+
+ Cancel
+ Cancelar
+
+
+
+ Main
+
+
+ Segwit
+ Segwit
+
+
+
+ Confirmation
+ Confirmación
+
+
+
+ Do you want to send your %1 funds to %2 wallet first?
+ ¿Desea enviar sus fondos de %1 a la billetera %2 primero?
+
+
+
+ Success
+ Éxito
+
+
+
+ Your transaction is send, may take some time to arrive
+ Su transacción se envió, puede demorar algún tiempo en llegar
+
+
+
+ Price
+ Precio
+
+
+
+ Change 24hr
+ Cambio
+
+
+
+ Porfolio
+ Cartera
+
+
+
+ Contract Address
+ Dirección del Contrato
+
+
+
+ Send
+ Enviar
+
+
+
+ Enable %1 ?
+ ¿Habilitar %1?
+
+
+
+ Yes
+ Sí
+
+
+
+ No
+ No
+
+
+
+ Receive
+ Recibir
+
+
+
+ Swap
+ Intercambiar
+
+
+
+ is wallet only
+ es solo billetera
+
+
+
+ Rewards
+ Recompensas
+
+
+
+ Faucet
+ Grifo
+
+
+
+
+
+ Public Key
+ Clave Pública
+
+
+
+ Copied to Clipboard
+ Copiada en el Portapapeles
+
+
+
+ Loading market data
+ Cargando datos de mercado
+
+
+
+ There is no chart data for this ticker yet
+ No hay datos de gráficos para este ticker aún
+
+
+
+ Fetching transactions...
+ Obteniendo transacciones...
+
+
+
+ Please wait, %1 is %2
+ Por favor espera %1 es %2
+
+
+
+ % activated...
+ % activado...
+
+
+
+ No transactions available
+ No hay transacciones disponibles
+
+
+
+ Click to view your address on %1 (%2) block explorer
+ Haga clic para ver su dirección en %1 (%2) explorador de bloques
+
+
+
+ Trade
+ Intercambio
+
+
+
+ Trading Information
+ Información de Intercambios
+
+
+
+ Chart
+ Gráfico
+
+
+
+
+ Orders
+ Pedidos
+
+
+
+
+ History
+ Historial
+
+
+
+ Place Order
+ Realizar pedido
+
+
+
+ Order Selected
+ Pedido seleccionado
+
+
+
+ START SWAP
+ INICIO INTERCAMBIAR
+
+
+
+
+ Address Book
+ Libreta de direcciones
+
+
+
+ Search contact
+ Buscar contacto
+
+
+
+ + NEW CONTACT
+ + Nuevo contacto
+
+
+
+ Name
+ Nombre
+
+
+
+ Tags
+ Etiquetas
+
+
+
+ Edit
+ Editar
+
+
+
+ Delete
+ Eliminar
+
+
+
+ address copied to clipboard
+ dirección copiada al portapapeles
+
+
+
+ This contact does not have any registered address.
+ Este contacto no tiene ninguna dirección registrada.
+
+
+
+ MarketModeSelector
+
+
+ Sell %1
+ TICKER
+ Vender %1
+
+
+
+ Buy %1
+ TICKER
+ Comprar %1
+
+
+
+ MinTradeModal
+
+
+ Minimum Trading Amount
+ Cantidad Mínima de Intercambio
+
+
+
+ the minimum amount of %1 coin available for the order; the min_volume must be greater than or equal to %2; it must be also less or equal than volume param; default is %3
+ la cantidad mínima de la moneda %1 disponible para la orden; el min_volume debe ser mayor o igual a %2; debe ser también menor o igual que volumen param; el valor predeterminado es %3
+
+
+
+ MultiOrder
+
+
+ %1 price is zero!
+ TICKER
+ el precio de %1 es cero!
+
+
+
+ %1 receive volume is lower than minimum trade amount
+ TICKER
+ volumen de recepción de %1 es inferior al monto mínimo de transacción
+
+
+
+ Error:
+ Error:
+
+
+
+ You'll receive %1
+ AMOUNT TICKER
+ Tu'll recibes %1
+
+
+
+ Price
+ Precio
+
+
+
+ NewContactPopup
+
+
+ Contact name
+ Nombre
+
+
+
+ This contact name already exists.
+ Este nombre de contacto ya existe.
+
+
+
+ + ADD
+ + Añadir
+
+
+
+ NewUpdateModal
+
+
+
+
+ Searching new updates
+ Buscando nuevas actualizaciones
+
+
+
+ Fetching...
+ Buscando...
+
+
+
+
+
+
+ Close
+ Cerrar
+
+
+
+ Could not check new updates for the following reason:
+%1
+ No se pudieron comprobar las nuevas actualizaciones por el siguiente motivo: %1
+
+
+
+ New version found
+ Nueva versión encontrada
+
+
+
+ Mandatory version found
+ Versión obligatoria encontrada
+
+
+
+ %1 %2 is available !
+ %1 ¡%2 está disponible!
+
+
+
+ This update is mandatory to continue using the application
+ Esta actualización es obligatoria para seguir usando la aplicación
+
+
+
+ Close Dex
+ Cerrar Dex
+
+
+
+ Your application is updated.
+ Tu aplicación está actualizada.
+
+
+
+ Download
+ Descargar
+
+
+
+ NewWallet
+
+
+ Wrong word, please check again
+ Palabra incorrecta, verifique nuevamente
+
+
+
+ st
+ st
+
+
+
+ nd
+ nd
+
+
+
+ rd
+ rd
+
+
+
+ th
+ th
+
+
+
+ Failed to create a wallet
+ No se pudo crear una billetera
+
+
+
+ New Wallet
+ Nueva billetera
+
+
+
+ Confirm Seed
+ Confirmar semilla
+
+
+
+ Choose Password
+ Elegir contraseña
+
+
+
+ Important: Back up your seed phrase before proceeding!
+ Importante: ¡Haga una copia de seguridad de su frase semilla antes de continuar!
+
+
+
+ We recommend storing it offline.
+ Recomendamos almacenarlo fuera de línea.
+
+
+
+ Generated Seed
+ Semilla Generada
+
+
+
+ Seed phrase
+ Frase semilla
+
+
+
+ copied to clipboard
+ copiado al portapapeles
+
+
+
+ Next
+ Siguiente
+
+
+
+ Let's double check your seed phrase
+ Verifiquemos dos veces su frase semilla
+
+
+
+ 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.
+ Su 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.
+
+
+
+ Enter the
+ Ingresa la
+
+
+
+ word
+ palabra
+
+
+
+ Check
+ Verificar
+
+
+
+ Enter the same password to confirm
+ Ingrese la misma contraseña para confirmar
+
+
+
+ Continue
+ Continuar
+
+
+
+ NoConnection
+
+
+ No connection
+ Sin conexión
+
+
+
+ Please make sure you are connected to the internet
+ Asegúrate de que estás conectado a Internet
+
+
+
+ Will automatically retry in %1 seconds
+ Intentará de nuevo automáticamente en %1 segundos
+
+
+
+ Retry
+ Reintentar
+
+
+
+ NotificationsModal
+
+
+ Matching
+ Emparejando
+
+
+
+ Order Matching
+ Emparejando Orden
+
+
+
+ Matched
+ Emparejado
+
+
+
+ Order Matched
+ Orden Emparejada
+
+
+
+ Ongoing
+ En Curso
+
+
+
+ Swap Ongoing
+ Intercambio En Curso
+
+
+
+ Successful
+ Exitoso
+
+
+
+ Swap Successful
+ Intercambio exitoso
+
+
+
+ Refunding
+ Reembolso
+
+
+
+ Failed
+ Fallo
+
+
+
+ Swap Failed
+ Intercambio fallido
+
+
+
+ Unknown
+ Desconocido
+
+
+
+ Unknown State
+ Estado Desconocido
+
+
+
+ Swap status updated
+ Estado de Intercambio Actualizado
+
+
+
+ You sent %1
+ Enviaste %1
+
+
+
+ You received %1
+ Recibiste %1
+
+
+
+ Your wallet balance changed
+ El saldo de tu billetera cambió
+
+
+
+ %1 Enable status
+ TICKER
+ %1 habilitar el estado
+
+
+
+ Please check your internet connection (e.g. VPN service or firewall might block it).
+ Verifica tu conexión a Internet (por ejemplo, el servicio VPN o el firewall pueden bloquearlo).
+
+
+
+ Failed to enable %1
+ TICKER
+ No se pudo habilitar %1
+
+
+
+ Failed to disable %1
+ TICKER
+ Error al deshabilitar %1
+
+
+
+ Endpoint not reachable
+ Punto final no accesible
+
+
+
+ Could not reach to endpoint
+ No se pudo llegar al punto final
+
+
+
+ Mismatch at %1 custom asset configuration
+ TICKER
+ Falta de emparejamiento en %1 configuración de recurso personalizado
+
+
+
+ Application needs to be restarted for %1 custom asset.
+ TICKER
+ Es necesario reiniciar la aplicación para %1 recurso personalizado.
+
+
+
+ Batch %1 failed. Reason: %2
+ El lote %1 falló. Razón: %2
+
+
+
+ Show
+ Mostrar
+
+
+
+ Restart
+ Reiniciar
+
+
+
+ Quit
+ Salir
+
+
+
+ Notifications
+ Notificaciones
+
+
+
+ There aren't any notifications
+ No hay ' notificaciones
+
+
+
+ Mark all as read
+ Marcar todo como leído
+
+
+
+ OrderForm
+
+
+ Price
+ Precio
+
+
+
+ Reduce 1% relative to CEX market price.
+ Reducción del 1% en relación con el precio de mercado CEX.
+
+
+
+ Use CEX market price.
+ Utilice el precio de mercado CEX.
+
+
+
+ Increase 1% relative to CEX market price.
+ Aumento del 1% en relación con el precio de mercado de CEX.
+
+
+
+ Volume
+ Volumen
+
+
+
+ Amount to sell
+ Importe para vender
+
+
+
+ Amount to receive
+ Importe para recibir
+
+
+
+ Max
+ Max
+
+
+
+ Swap 25% of your tradable balance.
+ Usar el 25% de su saldo comercial.
+
+
+
+ Swap 50% of your tradable balance.
+ Usar el 50% de su saldo comercial.
+
+
+
+ Swap 100% of your tradable balance.
+ Usar el 100% de su saldo comercial.
+
+
+
+ Min Volume
+ Volumen Mínimo
+
+
+
+ Min amount to sell
+ Cantidad mínima para vender
+
+
+
+ Min amount to receive
+ Cantidad mínimo para recibir
+
+
+
+ Minimum accepted trade equals 10% of order volume.
+ El comercio mínimo aceptado es igual al 10% del volumen del pedido.
+
+
+
+ Minimum accepted trade equals 25% of order volume.
+ El comercio mínimo aceptado es igual al 25% del volumen del pedido.
+
+
+
+ Minimum accepted trade equals 50% of order volume.
+ El comercio mínimo aceptado es igual al 50% del volumen del pedido.
+
+
+
+ Min volume:
+ Volumen mínimo:
+
+
+
+ Use custom minimum trade amount
+ Utilizar una cantidad personalizada de intercambio mínima
+
+
+
+ OrderLine
+
+
+ Funds are recoverable
+ Los fondos son recuperables
+
+
+
+ OrderList
+
+
+ No results found
+ No se encontraron resultados
+
+
+
+ OrderModal
+
+
+ Swap Details
+ Detalles de Intercambio
+
+
+
+ Order Details
+ Detalles de Orden
+
+
+
+ Order Type
+ Tipo de Orden
+
+
+
+ Maker Order
+ Orden de Maker
+
+
+
+ Taker Order
+ Orden de Taker
+
+
+
+ Refund State
+ Estado del Reembolso
+
+
+
+ Your swap failed but the auto-refund process for your payment started already. Please wait and keep application opened until you receive your payment back
+ Su intercambio falló, pero el proceso de reembolso automático para su pago ya comenzó. Espere y mantenga la aplicación abierta hasta que reciba su pago
+
+
+
+ Date
+ Fecha
+
+
+
+ Error ID
+ ID de Error
+
+
+
+
+ Error Log
+ Registro de Error
+
+
+
+ Close
+ Cerrar
+
+
+
+ Cancel Order
+ Cancelar Pedido
+
+
+
+
+ Swap ID
+ ID de Intercambio
+
+
+
+ Maker Payment Sent Transaction ID
+ ID de la transacción pago enviada de Maker
+
+
+
+ Maker Payment Spent Transaction ID
+ ID de la transacción pago gastado de Maker
+
+
+
+ Maker Payment TXID
+ TXID del pago de Maker
+
+
+
+ Taker Payment Spent Transaction ID
+ ID de la transacción pago gastado de Taker
+
+
+
+ Taker Payment Sent Transaction ID
+ ID de la transacción pago enviada de Taker
+
+
+
+ Taker Payment TXID
+ TXID del pago de Taker
+
+
+
+ Recover Funds
+ Recuperar fondos
+
+
+
+ Refunding...
+ Reembolso...
+
+
+
+ View on Explorer
+ Ver en Explorer
+
+
+
+ OrderRemovedModal
+
+
+ Selected Order Removed
+ Pedido Seleccionado Eliminado
+
+
+
+ The selected order does not exist anymore, it might have been matched or canceled, and no order with a better price is available.
+Please select a new order.
+ El pedido seleccionado ya no existe, puede haber sido igualado o cancelado, y no hay un pedido con mejor precio disponible.
+Seleccione un nuevo pedido.
+
+
+
+ OK
+ Aceptar
+
+
+
+ OrdersPage
+
+
+
+ Filter
+ Filtrar
+
+
+
+ Date
+ Fecha
+
+
+
+ Export CSV
+ Exportar CSV
+
+
+
+ Apply Filter
+ Aplicar Filtro
+
+
+
+ Cancel All
+ Cancelar Todo
+
+
+
+ From
+ Desde
+
+
+
+ To
+ A
+
+
+
+ Please choose the CSV export name and location
+ Por favor, elija el nombre y la ubicación de exportación CSV
+
+
+
+ Pagination
+
+
+ items per page
+ elementos por página
+
+
+
+ PasswordField
+
+
+ Password
+ Contraseña
+
+
+
+ Enter your wallet password
+ Ingrese la contraseña de su billetera
+
+
+
+ At least 1 lowercase alphabetical character
+ Al menos 1 carácter alfabético en minúsculas
+
+
+
+ At least 1 uppercase alphabetical character
+ Al menos 1 carácter alfabético en mayúsculas
+
+
+
+ At least 1 numeric character
+ Al menos 1 carácter numérico
+
+
+
+ At least 1 special character (eg. !@#$%)
+ Al menos 1 carácter especial ( ej., !@#$%)
+
+
+
+ Between %1 and %2 character(s)
+ Entre %1 y %2 carácter(es)
+
+
+
+ PasswordForm
+
+
+ Password
+ Contraseña
+
+
+
+ Confirm Password
+ Confirmar contraseña
+
+
+
+ Enter the same password to confirm
+ Ingrese la misma contraseña para confirmar
+
+
+
+ Portfolio
+
+
+ ADD ASSET
+ AGREGAR ACTIVO
+
+
+
+ Search asset
+ Buscar activo
+
+
+
+ Show only coins with balance
+ Mostrar solo monedas con saldo
+
+
+
+ (%1/%2)
+ (%1/%2)
+
+
+
+ Portfolio
+ Cartera
+
+
+
+ PriceLine
+
+
+ Set swap price for evaluation
+ Establecer precio de intercambio para evaluación
+
+
+
+ Exchange rate
+ Tasa de cambio
+
+
+
+ Selected
+ Seleccionada
+
+
+
+ Expensive
+ Caro
+
+
+
+ Expedient
+ Expediente
+
+
+
+ %1 compared to CEX
+ PRICE_DIFF%
+ %1 en comparación con CEX
+
+
+
+ CEXchange rate
+ Tasa de cambio CEX
+
+
+
+ PriceLineSimplified
+
+
+ Exchange rate
+ Tasa de cambio
+
+
+
+ Selected
+ Seleccionada
+
+
+
+ CEXchange rate
+ Tasa de cambio CEX
+
+
+
+ Expensive
+ Caro
+
+
+
+ Expedient
+ Expediente
+
+
+
+ %1 compared to CEX
+ PRICE_DIFF%
+ %1 en comparación con CEX
+
+
+
+ ProView
+
+
+ Failed to place the order
+ Error al realizar el pedido
+
+
+
+ Placed the order
+ Realizó el pedido El
+
+
+
+ QObject
+
+
+ Cannot reach the endpoint:
+ No se puede llegar al punto final:
+
+
+
+ ReceiveModal
+
+
+ Receive %1
+ TICKER
+ Recibir %1
+
+
+
+ Only send %1 to this address
+ TICKER
+ Enviar solo %1 a esta dirección
+
+
+
+ %1 address
+ TICKER
+ %1 dirección
+
+
+
+ copied to clipboard.
+ copiado al portapapeles.
+
+
+
+ Close
+ Cerrar
+
+
+
+ RecoverSeedModal
+
+
+
+ View seed and private keys
+ Ver semilla y claves privadas
+
+
+
+ Please enter your password to view the seed.
+ Por favor ingrese su contraseña para ver la semilla.
+
+
+
+ Seed
+ Semilla
+
+
+
+ Backup Seed
+ Copia de seguridad de semilla
+
+
+
+ Public Address copied to clipboard
+ Direccion publica copiada en el portapapeles
+
+
+
+ Cancel
+ Cancelar
+
+
+
+ Incorrect Password
+ Contraseña incorrecta
+
+
+
+ View
+ Ver
+
+
+
+
+ copied to clipboard
+ copiado al portapapeles
+
+
+
+
+ RPC Password
+ Contraseña RPC
+
+
+
+ Search a coin.
+ Buscar una moneda.
+
+
+
+ Public Address
+ Dirección Pública
+
+
+
+ Private Key copied to clipboard
+ Clave Privada copiada en el portapapeles
+
+
+
+ Private Key
+ Clave Privada
+
+
+
+ RemoveContactPopup
+
+
+ Do you want to remove this contact ?
+ ¿Desea eliminar este contacto?
+
+
+
+ Yes
+ Sí
+
+
+
+ No
+ No
+
+
+
+ RestartModal
+
+
+ Applying the changes...
+ Aplicando los cambios...
+
+
+
+ Restarting the application. %1
+ Reiniciando la aplicación. %1
+
+
+
+ Restarting the application...
+ Reiniciando la aplicación...
+
+
+
+ RightClickMenu
+
+
+ Cut
+ Cortar
+
+
+
+ Copy
+ Copiar
+
+
+
+ Paste
+ Pegar
+
+
+
+ SearchField
+
+
+ Search
+ Buscar
+
+
+
+ SendModal
+
+
+ Failed to send
+ Error al enviar
+
+
+
+ Prepare to send
+ Preparar para enviar
+
+
+
+ Address of the recipient
+ Dirección del destinatario
+
+
+
+ Amount to send
+ Cantidad a enviar
+
+
+
+ Gas price
+ Precio del gas
+
+
+
+ Recipient's address
+ Dirección del destinatario
+
+
+
+ The address has to be mixed case.
+ La dirección debe estar en mayúsculas y minúsculas.
+
+
+
+ Failed to Broadcast
+ Error al transmitir
+
+
+
+ Fix
+ Arreglar
+
+
+
+ MAX
+ MAX
+
+
+
+ Fiat amount: Unavailable
+ Cantidad en Fiat: No disponible
+
+
+
+ Fiat amount: %1
+ Cantidad de Fiat: %1
+
+
+
+ %1 amount: %2
+ Cantidad de %1: %2
+
+
+
+ Specify in Fiat
+ Especificar en Fiat
+
+
+
+ Specify in Crypto
+ Especificar en Crypto
+
+
+
+ Enable Custom Fees
+ Habilitar Tarifas Personalizadas
+
+
+
+ Enter the custom fee
+ Ingrese la tarifa personalizada
+
+
+
+ Gas Limit
+ Límite de gas
+
+
+
+ Custom Fee can't be higher than the amount
+ Tarifa personalizada no puede ser mayor que la cantidad
+
+
+
+ Not enough funds.
+ No hay suficientes fondos.
+
+
+
+
+ You have %1
+ AMT TICKER
+ Tiene %1
+
+
+
+
+ Only use custom fees if you know what you are doing!
+ ¡Solo use tarifas personalizadas si sabe lo que está haciendo!
+
+
+
+ Close
+ Cerrar
+
+
+
+ Prepare
+ Preparar
+
+
+
+
+ Send
+ Enviar
+
+
+
+ %1 address
+ TICKER
+ %1 dirección
+
+
+
+ copied to clipboard.
+ copiado al portapapeles.
+
+
+
+ Amount
+ Cantidad
+
+
+
+ Fees
+ Tarifas
+
+
+
+ Date
+ Fecha
+
+
+
+ Back
+ Atrás
+
+
+
+ SendModalContactList
+
+
+ Select a contact with an %1 address
+ Seleccione un contacto con %1 dirección
+
+
+
+ Search for contacts...
+ Buscar contactos...
+
+
+
+ %1 addresses
+ direcciones %1
+
+
+
+ 1 address
+ 1 dirección
+
+
+
+
+ Back
+ Atrás
+
+
+
+ Choose an %1 address of %2
+ Elija una direccion %1 de %2
+
+
+
+ Name
+ Nombre
+
+
+
+ Address
+ Dirección
+
+
+
+ SendResult
+
+
+ Transaction Complete!
+ ¡Transacción completa!
+
+
+
+ %1 txid
+ TICKER
+ %1 txid
+
+
+
+
+ copied to clipboard.
+ copiado al portapapeles.
+
+
+
+ Recipient's address
+ Dirección del destinatario
+
+
+
+ %1 address
+ TICKER
+ %1 dirección
+
+
+
+ Amount
+ Cantidad
+
+
+
+ Fees
+ Tarifas
+
+
+
+ Date
+ Fecha
+
+
+
+ Transaction Hash
+ Hash de Transaccion
+
+
+
+ Close
+ Cerrar
+
+
+
+ View on Explorer
+ Ver en Explorer
+
+
+
+ SettingModal
+
+
+
+ Cancel
+ Cancelar
+
+
+
+ Settings
+ Configuración
+
+
+
+ General
+ General
+
+
+
+ Language
+ Idioma
+
+
+
+ User Interface
+ Interfaz
+
+
+
+ Security
+ Seguridad
+
+
+
+ Enable Desktop Notifications
+ Habilitar notificaciones de escritorio
+
+
+
+ Maximum number of enabled coins
+ Número máximo de monedas habilitadas
+
+
+
+ Logs
+ Registros
+
+
+
+ Open Folder
+ Carpeta Abierta
+
+
+
+ Reset
+ Restablecer
+
+
+
+ Current Font
+ Fuente Actual
+
+
+
+ Current font changed to %1.
+ La fuente actual cambió a %1.
+
+
+
+ Theme
+ Tema
+
+
+
+ Changing theme to %1
+ Cambiando el tema a %1
+
+
+
+ Application Version
+ La versión de la aplicación
+
+
+
+ copied to clipboard
+ copiado al portapapeles
+
+
+
+ About & Version
+ Acerca de & Versión
+
+
+
+
+ Reset wallet configuration
+ Restablecer configuración de billetera
+
+
+
+ This will restart your wallet with default settings
+ Esto reiniciará su billetera con la configuración predeterminada
+
+
+
+
+ Confirm
+ Confirmar
+
+
+
+ Ask system's password before sending coins ? (2FA)
+ ¿Preguntar la contraseña del sistema antes de enviar monedas? (2FA)
+
+
+
+ Disable 2FA?
+ ¿Deshabilitar 2FA?
+
+
+
+ Enter your wallet password to confirm
+ Ingrese la contraseña de su billetera para confirmar
+
+
+
+ Type password
+ Escriba la contraseña
+
+
+
+ 2FA status
+ Estado 2FA
+
+
+
+ 2FA disabled successfully
+ 2FA deshabilitado correctamente
+
+
+
+
+ Ok
+ Ok
+
+
+
+ Wrong password!
+ ¡Contraseña incorrecta!
+
+
+
+ Wallet password is incorrect
+ Contraseña de la billetera es incorrecta
+
+
+
+ View seed and private keys
+ Ver semilla y claves privadas
+
+
+
+
+ Show
+ Mostrar
+
+
+
+ Setup Camouflage Password
+ Configuración de Contraseña Camuflaje
+
+
+
+ Open
+ Abrir
+
+
+
+ Disclaimer and ToS
+ Descargo de Responsabilidad y Terminos de Servicio
+
+
+
+ Application version
+ Versión de Aplicación
+
+
+
+ MM2 version
+ Versión MM2
+
+
+
+ MM2 Version
+ Versión MM2
+
+
+
+ MM2 Version copied to clipboard.
+ Versión MM2 copiada al portapapeles.
+
+
+
+ Qt version
+ Versión Qt
+
+
+
+ Qt Version
+ Versión Qt
+
+
+
+ Qt Version copied to clipboard.
+ Versión de Qt copiada al portapapeles.
+
+
+
+ Search Update
+ Buscar Actualizacion
+
+
+
+ Logout
+ Cerrar sesión
+
+
+
+ Sidebar
+
+
+ Search
+ Buscar
+
+
+
+ Add asset
+ Agregar activo
+
+
+
+ SmartChartView
+
+
+ Loading market data
+ Cargando datos de mercado
+
+
+
+ There is no chart data for this ticker yet
+ No hay datos de gráficos para este ticker aún
+
+
+
+ SubBestOrder
+
+
+ Token
+ Token
+
+
+
+ Available Quantity
+ Cantidad Disponible
+
+
+
+ Available Quantity (in %1)
+ Cantidad Disponible (en %1)
+
+
+
+ Fiat Volume
+ Volumen en Fiat
+
+
+
+ CEX Rate
+ Tasa CEX
+
+
+
+ %1 is not enabled - Do you want to enable it to be able to select %2 best orders ?<br><a href='#'>Yes</a> - <a href='#no'>No</a>
+ %1 no está habilitado. ¿Desea habilitarlo para poder seleccionar %2 mejores ordenes?<br><a href='#'>Sí</a> - <a href='#no'>No</a>
+
+
+
+ SubCoinSelector
+
+
+ Token
+ Token
+
+
+
+ Balance
+ Saldo
+
+
+
+ Balance Fiat
+ Saldo Fiat
+
+
+
+ No Selectable coin.
+ No Moneda seleccionable.
+
+
+
+ SubHistory
+
+
+ History
+ Historial
+
+
+
+ Filter
+ Filtrar
+
+
+
+ Date
+ Fecha
+
+
+
+ Close filtering options.
+ Cerrar opciones de filtrado.
+
+
+
+ Open filtering options.
+ Abrir opciones de filtrado.
+
+
+
+ Filter settings
+ Configuración de filtros
+
+
+
+ From
+ Desde
+
+
+
+ To
+ A
+
+
+
+ Cancel
+ Cancelar
+
+
+
+ Apply filter
+ Aplicar filtro
+
+
+
+ Export
+ Exportar
+
+
+
+ Please choose the CSV export name and location
+ Por favor, elija el nombre y la ubicación de exportación CSV
+
+
+
+ No results found
+ No se encontraron resultados
+
+
+
+ SubOrders
+
+
+
+ Orders
+ Pedidos
+
+
+
+ Close filtering options.
+ Cerrar opciones de filtrado.
+
+
+
+ Filter
+ Filtrar
+
+
+
+ Date
+ Fecha
+
+
+
+ Open filtering options.
+ Abrir opciones de filtrado.
+
+
+
+ Filter settings
+ Configuración de filtros
+
+
+
+ From
+ Desde
+
+
+
+ To
+ A
+
+
+
+ Cancel
+ Cancelar
+
+
+
+ Apply filter
+ Aplicar filtro
+
+
+
+ No results found
+ No se encontraron resultados
+
+
+
+ SupportModal
+
+
+ Frequently Asked Questions
+ Preguntas frecuentes
+
+
+
+ Do you store my private keys?
+ ¿Almacenan mis claves privadas?
+
+
+
+ No! %1 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.
+ ¡No! %1 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.
+
+
+
+ How is trading on %1 different from trading on other DEXs?
+ ¿En qué se diferencia el intercambio en %1 del comercio en otros DEX?
+
+
+
+ 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.
+
+%1 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.
+ Otros DEX generalmente solo le permiten intercambiar activos que se basan en una sola red de cadena de bloques, usar tokens de proxy y solo permiten realizar un solo pedido con los mismos fondos.
+
+%1 le permite comerciar de forma nativa en dos redes de cadena de bloques diferentes sin tokens de proxy. 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 completa automáticamente cancela todos los demás pedidos.
+
+
+
+ How long does each atomic swap take?
+ ¿Cuánto tiempo toma cada intercambio atómico?
+
+
+
+ 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 %1 to consider a KMD transaction as final after just 3 confirmations which makes the swap time shorter compared to waiting for a <a href="https://komodoplatform.com/security-delayed-proof-of-work-dpow/">notarization</a>.
+ Varios factores determinan el tiempo de procesamiento de cada intercambio. El tiempo de bloqueo de los activos negociados 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 %1 que considere una transacción KMD como final después de solo 3 confirmaciones, lo que hace que el tiempo de intercambio sea más corto en comparación con esperar un <a href="https://komodoplatform.com/security-delayed- prueba de trabajo-dpow/">certificación notarial</a>.
+
+
+
+ Do I need to be online for the duration of the swap?
+ ¿Necesito estar en línea durante la duración del intercambio?
+
+
+
+ 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.
+
+If you go offline, so will your orders, and any that are in progress will fail, leading to potential loss of trade / transaction fees, and a wait for the swap to timeout and issue a refund. It may also negatively affect your wallet's reputation score for future trade matching.
+
+When you come back online, your orders will begin to broadcast again at the price you set before you went offline. If there has been significant price movement in the meantime, you might unintentionally offer someone a bargain!
+
+For this reason, we recommend cancelling orders before closing %1, or reviewing and revising your prices when restarting %1.
+ Sí. Debe permanecer conectado a Internet y tener su aplicación ejecutándose para completar con éxito cada intercambio atómico (las interrupciones muy breves en la conectividad generalmente están bien). De lo contrario, existe el riesgo de cancelación de la operación si es un creador y el riesgo de pérdida de fondos si es un tomador.
+
+El protocolo de intercambio atómico requiere que ambos participantes permanezcan en línea y monitoreen las cadenas de bloques involucradas para que el proceso permanezca atómico.
+
+Si se desconecta, también lo harán sus pedidos, y cualquiera que esté en curso fallará, lo que provocará una posible pérdida de tarifas comerciales / de transacción, y una espera para que el intercambio se agote y emita un reembolso. También puede afectar negativamente el puntaje de reputación de su billetera para futuras coincidencias comerciales.
+
+Cuando vuelva a estar en línea, sus pedidos comenzarán a transmitirse nuevamente al precio que estableció antes de desconectarse. Si ha habido un movimiento de precios significativo en el ínterin, ¡es posible que involuntariamente le ofrezcas a alguien una ganga!
+
+Por este motivo, recomendamos cancelar los pedidos antes de cerrar %1 o revisar y revisar sus precios al reiniciar %1.
+
+
+
+ How are the fees on %1 calculated?
+ ¿Cómo se calculan las tarifas de %1?
+
+
+
+ There are two fee categories to consider when trading on %1.
+
+1. %1 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.
+
+2. Both makers and takers will need to pay normal network fees to the involved blockchains when making atomic swap transactions.
+
+Network fees can vary greatly depending on your selected trading pair.
+ Hay dos categorías de tarifas a tener en cuenta al operar en %1.
+
+1. %1 cobra aproximadamente el 0,13 % (1/777 del volumen de negociación pero no menos de 0,0001) como tarifa de negociación para las órdenes del tomador, y las órdenes del fabricante no tienen tarifas.
+
+2. Tanto los creadores como los tomadores deberán pagar tarifas de red normales a las cadenas de bloques involucradas al realizar transacciones de intercambio atómico.
+
+Las tarifas de la red pueden variar mucho según el par comercial seleccionado.
+
+
+
+ Do you provide user support?
+ ¿Ofrecen soporte al usuario?
+
+
+
+ Yes! %1 offers support through the <a href="%2">%1 Discord server</a>. The team and the community are always happy to help!
+ ¡Sí! %1 ofrece soporte a través del <a href="%2">%1 servidor Discord</a>. ¡El equipo y la comunidad siempre están dispuestos a ayudar!
+
+
+
+ Who is behind %1?
+ ¿Quién está detrás de %1?
+
+
+
+ %1 is developed by the Komodo team. Komodo 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.
+ %1 está desarrollado por el equipo de Komodo. Komodo es uno de los proyectos de cadena de bloques más establecidos que trabaja en soluciones innovadoras como intercambios atómicos, prueba de trabajo retrasada y una arquitectura multicadena interoperable.
+
+
+
+ Is it possible to develop my own white-label exchange on %1?
+ ¿Es posible desarrollar mi propio intercambio de marca blanca en %1?
+
+
+
+ Absolutely! You can read our developer documentation for more details or contact us with your partnership inquiries. Have a specific technical question? The %1 developer community is always ready to help!
+ ¡Absolutamente! Puede leer nuestra documentación para desarrolladores para obtener más detalles o ponerse en contacto con nosotros con sus consultas de asociación. ¿Tiene una pregunta técnica específica? ¡La comunidad de desarrolladores de %1 siempre está lista para ayudar!
+
+
+
+ Which devices can I use %1 on?
+ ¿En qué dispositivos puedo usar %1?
+
+
+
+ %1 is available for mobile on both <a href="%2">Android and iPhone, and for desktop on Windows, Mac, and Linux</a> operating systems.
+ %1 está disponible para dispositivos móviles en <a href="%2">Android y iPhone, y para escritorio en Windows, Mac y Linux</a> sistemas operativos.
+
+
+
+ Compliance Info
+ Información de cumplimiento
+
+
+
+ Due to regulatory and legal circumstances the citizens of certain jurisdictions including, but not limited to, the United States of America, Canada, Hong Kong, Israel, Singapore, Sudan, Austria, Iran and any other state, country or other jurisdiction that is embargoed by the United States of America or the European Union are not allowed to use this application.
+ Debido a circunstancias reglamentarias y legales, los ciudadanos de ciertas jurisdicciones, incluidos, entre otros, los Estados Unidos de América, Canadá, Hong Kong, Israel, Singapur, Sudán, Austria, Irán y cualquier otro estado, país u otra jurisdicción que está embargado por los Estados Unidos de América o la Unión Europea no se les permite utilizar esta aplicación.
+
+
+
+ Changelog
+ Cambios
+
+
+
+ Open Logs Folder
+ Abrir Carpeta de Registros
+
+
+
+ SwapProgress
+
+
+ act
+ SHORT FOR ACTUAL TIME
+ act
+
+
+
+ est
+ SHORT FOR ESTIMATED
+ est
+
+
+
+ Progress details
+ Detalles del Progreso
+
+
+
+ TextAreaWithTitle
+
+
+ Save
+ Guardar
+
+
+
+ Edit
+ Editar
+
+
+
+ TextEditWithCopy
+
+
+ copied to clipboard
+ copiado al portapapeles
+
+
+
+ TextEditWithTitle
+
+
+ copied to clipboard
+ copiado al portapapeles
+
+
+
+ TextFieldWithTitle
+
+
+ Required
+ Requerido
+
+
+
+ Toast
+
+
+ Click here to see the details
+ Haga clic aquí para ver los detalles
+
+
+
+ Trade
+
+
+ Swap
+ Intercambiar
+
+
+
+ Instant trading with best orders
+ Comercio instantáneo con las mejores órdenes
+
+
+
+ Reset form
+ Restablecer formulario
+
+
+
+ You have no tradable assets
+ No tiene activos intercambiables
+
+
+
+ From
+ Desde
+
+
+
+ Enter an amount
+ Ingrese una cantidad
+
+
+
+ MAX
+ MAX
+
+
+
+ To
+ A
+
+
+
+ Pick an order
+ Elegir una orden
+
+
+
+ Price
+ Precio
+
+
+
+ Better price found: %1. Updating forms.
+ Mejor precio encontrado: %1. Actualización de formularios.
+
+
+
+ Better price (%1) found but received quantity (%2) is lower than your current one (%3). Click here to update the selected order.
+ Mejor precio (%1) encontrado pero la cantidad recibida (%2) es más baja que la actual (%3). Haga clic aquí para actualizar el pedido seleccionado.
+
+
+
+ %1
+ %1
+
+
+
+ Tradable:
+ Negociable:
+
+
+
+ Min: %1
+ Mín.: %1
+
+
+
+ Pick a coin
+ Elija una moneda
+
+
+
+ SWAP NOW
+ CAMBIE AHORA
+
+
+
+ Failed to place the order
+ Error al realizar el pedido
+
+
+
+ Placed the order
+ Realizó el pedido El
+
+
+
+ Entered amount must be superior than 0.
+ monto ingresado debe ser superior a 0.
+
+
+
+ You must select an order.
+ Debe seleccionar un pedido.
+
+
+
+ Entered amount is below the minimum required by this order: %1
+ El monto ingresado está por debajo del mínimo requerido por esta orden: %1
+
+
+
+
+ %1 needs to be enabled in order to use %2
+ %1 debe habilitarse para usar %2
+
+
+
+
+ %1 balance needs to be funded, a non-zero balance is required to pay the gas of %2 transactions
+ se debe rellenar el saldo de %1, se requiere un saldo distinto de cero para pagar el gas de %2 transacciones
+
+
+
+ %1 balance does not have enough funds to pay the gas of %2 transactions
+ %1 el saldo no tiene fondos suficientes para pagar el gas de %2 transacciones
+
+
+
+ No buy orders found for %1.
+ No se encontraron órdenes de compra para %1.
+
+
+
+ You can check later or try to sell a different coin.
+ Puede verificar más tarde o intentar vender una moneda diferente.
+
+
+
+ Calculating fee estimate...
+ Calculando tarifa estimada...
+
+
+
+ Total %1 fees:
+ Total de %1 tarifas:
+
+
+
+ %2 (%3)
+ %2 (%3)
+
+
+
+ TradeViewHeader
+
+
+ Pro View Settings
+ Vista de Configuración Pro
+
+
+
+ Display Settings
+ Configuracion de Vista
+
+
+
+ Ticker Selectors
+ Selectores
+
+
+
+ Trading Information
+ Información de Intercambios
+
+
+
+ Order Book
+ Libro de Ordenes
+
+
+
+ Best Orders
+ Mejores Ordenes
+
+
+
+ Place Order
+ Realizar pedido
+
+
+
+ TransactionDetailsModal
+
+
+ Transaction Details
+ Detalles de Transacción
+
+
+
+ %1 txid
+ TICKER
+ %1 txid
+
+
+
+ copied to clipboard.
+ copiado al portapapeles.
+
+
+
+ Amount
+ Cantidad
+
+
+
+ Fees
+ Tarifas
+
+
+
+ From address
+ Desde dirección
+
+
+
+ To address
+ Para dirección
+
+
+
+ Date
+ Fecha
+
+
+
+ Unconfirmed
+ Sin confirmar
+
+
+
+ Transaction Hash
+ Hash de Transaccion
+
+
+
+ Confirmations
+ Confirmaciones
+
+
+
+ Block Height
+ Altura del Bloque
+
+
+
+ From
+ Desde
+
+
+
+ To
+ A
+
+
+
+ Notes
+ Notas
+
+
+
+ Close
+ Cerrar
+
+
+
+ View on Explorer
+ Ver en Explorer
+
+
+
+ Transactions
+
+
+ Sent
+ Enviado
+
+
+
+ Received
+ Recibido
+
+
+
+ fees
+ tarifas
+
+
+
+ Unconfirmed
+ Sin confirmar
+
+
+
+ UpdateInvalidChecksum
+
+
+ The downloaded update archive is corrupted !
+ ¡El archivo de actualización descargado está dañado!
+
+
+
+ Vertical
+
+
+ Order Book
+ Libro de Ordenes
+
+
+
+ WalletsView
+
+
+ Welcome
+ Bienvenido
+
+
+
+ New wallet
+ Nuevo monedero
+
+
+
+ Import wallet
+ Importar monedero
+
+
+
+ Search your wallets...
+ Buscar en sus monederos...
+
+
+
+ My Wallets
+ Mis Monederos
+
+
+
+ No wallets found!
+ ¡No se han encontrado monederos!
+
+
+
+
+ Delete
+ Eliminar
+
+
+
+ Enter password to confirm deletion of
+ Ingrese la contraseña para confirmar la eliminación de
+
+
+
+ wallet
+ billetera
+
+
+
+ Type password
+ Escriba la contraseña
+
+
+
+ Cancel
+ Cancelar
+
+
+
+
+ Wallet status
+ Estado
+
+
+
+ wallet deleted successfully
+ billetera eliminada con éxito
+
+
+
+
+ Ok
+ Ok
+
+
+
+ wallet password is incorrect
+ la contraseña de la billetera es incorrecta
+
+
+
+ ZcashParamsModal
+
+
+ %1 Activation Failed!
+ ¡Error en la activación de %1!
+
+
+
+ To activate ZHTLC coins, you need to download the Zcash Params.
+This might take a few minutes...
+ Para activar las monedas ZHTLC, debe descargar Zcash Params.
+Esto puede tardar unos minutos...
+
+
+
+ Download params & enable coins
+ Descargar parámetros & habilitar monedas
+
+
+
+ More Info
+ Más información
+
+
+
+ Close
+ Cerrar
+
+
+
+ atomic_dex::settings_page
+
+
+ An error has occurred.
+ Se ha producido un error.
+
+
+
+ atomic_dex::wallet_page
+
+
+ You do not have enough funds.
+ No tiene fondos suficientes.
+
+
+
+ %1 is not activated: click on the button to enable it or enable it manually
+ %1 no está activado: haga clic en el botón para habilitarlo o habilítelo manualmente
+
+
+
+ You need to have %1 to pay the gas for %2 transactions.
+ Necesita tener %1 para pagar la gasolina de %2 transacciones.
+
+
+
+ Checksum verification failed for %1.
+ La verificación de la suma de comprobación falló para %1.
+
+
+
+ Invalid checksum for %1. Click the button to convert to mixed case address.
+ Suma de comprobación no válida para %1. Haga clic en el botón para convertir a dirección de mayúsculas y minúsculas.
+
+
+
+ Legacy address used for %1. Click the button to convert to a Cashaddress.
+ Dirección heredada utilizada para %1. Haga clic en el botón para convertir a una dirección de efectivo.
+
+
+
+ %1 address must be prefixed with 0x
+ La dirección %1 debe tener el prefijo 0x
+
+
+
+ %1 address length is invalid, please use a valid address.
+ La longitud de la dirección %1 no es válida, utilice una dirección válida.
+
+
+
+ %1 address is invalid.
+ La dirección %1 no es válida.
+
+
+
+ Invalid checksum.
+ Suma de comprobación no válida.
+
+
+
+ %1 address has invalid prefixes.
+ La dirección %1 tiene prefijos no válidos.
+
+
+
+ Backend error: %1
+ Error de backend: %1
+
+
+
+ main
+
+
+ Logout
+ Cerrar sesión
+
+
+
+ Balance
+ Saldo
+
+
+
diff --git a/atomic_defi_design/assets/languages/atomic_defi_fr.ts b/atomic_defi_design/assets/languages/atomic_defi_fr.ts
index 0fedd91a97..8fb7f616ca 100644
--- a/atomic_defi_design/assets/languages/atomic_defi_fr.ts
+++ b/atomic_defi_design/assets/languages/atomic_defi_fr.ts
@@ -1,42 +1,96 @@
+
+ AddAddressForm
+
+
+ Use standard network address
+
+
+
+
+ Label
+
+
+
+
+ This key already exists.
+ Cette clé existe déjà.
+
+
+
+ Address
+ Adresse
+
+
+
+
+ Cancel
+ Annuler
+
+
+
+ Convert
+
+
+
+
+ Edit
+ Éditer
+
+
+
+ Add
+ Ajouter
+
+
+
+ You need to enable %1 before adding this kind of address.
+
+
+
+
+ Enable
+ Activer
+
+
AddCustomCoinModal
-
+
Choose the asset type
Choisir le type d'actif
-
+
Cancel
Annuler
-
-
-
+
+
+
Next
Suivant
-
+
Enter the contract address
Entrer l'adresse du contrat
-
+
Choose the asset ticker
Choisissez le symbole de l'actif
-
+
Ticker
Symbole
-
+
Enter the ticker
Entrez le symbole
@@ -46,439 +100,165 @@
Obtenez l'adresse du contrat de
-
+
Contract address
-
+
Get the contract address from
Obtenez l'adresse du contrat de
-
-
-
-
+
+
+
+
Previous
Précedent
-
+
Choose the asset logo
Choisissez le logo de l'actif
-
+
Browse
Naviguer
-
+
Please choose the asset logo
S'il-vous-plaît choissisez le logo de l'actif
-
+
Configuration
Configuration
-
+
All configuration fields will be fetched using the contract address you provided.
Tous les champs de configuration vont être récupérés à partir de l'adresse du contrat que vous avez fournis.
-
+
Name
Nom
-
+
Enter the name
Entrez le nom
-
+
Coingecko ID
Coingecko ID
-
+
Enter the Coingecko ID
Entrer l'identifiant coingecko
-
+
Get the Coingecko ID
Récupérer l'identifiant coingecko
-
+
Active
Actif
-
-
+
+
Preview
Pré-visualisation
-
+
WARNING: Application will restart immidiately to apply the changes!
AVERTISSEMENT: l'application redémarrera immédiatement pour appliquer les modifications!
-
+
Asset not found, please go back and make sure Contract Address is correct
Actif introuvable, veuillez revenir en arrière et vous assurer que l'adresse du contrat est correcte
-
+
Config Fields
Champs de configuration
-
+
Fetched Data
Données récupérées
-
+
Submit & Restart
Soumettre et redémarrer
- AddressBook
-
-
- Address Book
- Carnet d'adresses
-
-
-
- New Contact
- Nouveau contact
-
-
-
- Search a contact by name or tags
- Rechercher un contact par nom ou par tags
-
-
-
- Name
- Nom
-
-
-
- Tags (first 6)
- Tags (Les 6 premiers)
-
-
-
- Actions
- Actions
-
-
-
- Edit
- Éditer
-
-
-
- Remove
- Retirer
-
-
-
- Do you want to remove this contact ?
- Voulez-vous supprimer ce contact ?
-
-
-
- Yes
- Oui
-
-
-
- No
- Non
-
-
-
- AddressBookAddContactAddressModal
-
-
- Create a new address
- Créer une nouvelle adresse
-
-
-
- Edit address entry
- Edition de l'entrée pour l'addresse
-
-
-
- Selected wallet: %1
- Portefeuille sélectionné : %1
-
-
-
- NONE
- RIEN
-
-
-
- Enter a name
- Entrez un nom
-
+ AddTagPopup
-
- This key already exists.
- Cette clé existe déjà.
-
-
-
- Enter the address
- Entrez l'adresse
-
-
-
- Validate
- Valider
-
-
-
- Cancel
- Annuler
-
-
-
- Convert
+
+ Tag name
-
-
- AddressBookEditContactModal
-
-
- Edit contact
- Modifier le contact
-
-
-
- Contact Name
- Nom du contact
-
-
-
- Enter a contact name
- Entrez un nom de contact
-
-
- Address List
- Liste d'addresse
-
-
-
- Search for an address entry.
- Rechercher une addresse.
-
-
-
- Type
- Type
-
-
-
- Key
- Clef
-
-
-
- Address
- Addresse
-
-
-
- Actions
- Actions
-
-
-
- Add Address
+
+ Contact already has this tag.
-
- Tags
- Tags
-
-
-
- +
- +
-
-
-
- Confirm
- Confirmer
-
-
-
-
- Cancel
- Annuler
-
-
-
- The selected address belongs to a disabled coin, you need to enabled it before sending.
- L'adresse sélectionnée appartient à un actif désactivée, vous devez l'activer avant l'envoi.
-
-
-
- Enable
- Activer
-
-
-
- Cannot send to this address
- Impossible d'envoyer à cette adresse
-
-
-
- Your balance is empty
- Votre solde est vide
-
-
-
- Ok
- Ok
-
-
-
- Remove address ?
+
+ + ADD
-
-
- Yes
- Oui
-
-
-
- No
- Non
-
- AddressBookNewContactCategoryModal
-
-
- Add a new tag
- Ajouter un nouveau tag
-
-
-
- Enter the tag name
- Entrer le nom du tag
-
-
-
- This contact already has this tag
- Ce contact possède déjà ce tag
-
-
-
- Add
- Ajouter
-
+ AmountChart
-
- Cancel
- Annuler
+
+ Work in progress
+ Travail en cours
- AddressBookNewContactModal
-
-
- Create a new contact
- Créer un nouveau contact
-
-
-
- Enter the contact name
- Entrez le nom du contact
-
-
-
- This contact name already exists.
- Ce nom de contact existe déjà.
-
-
-
- Confirm
- Confirmer
-
+ App
-
- Cancel
- Annuler
+
+ Recover Funds Result
+ Le résultat de la récupération des fonds
- AddressBookSendWalletSelector
+ AssetFromStandardSelector
-
+
Choose a valid
- Choisissez un actif
+ Choisissez un actif
-
- coin
- valide
-
-
-
- AddressBookWalletTypeList
-
-
- %1 is not enabled - You need to enable it before adding an address. Enable it ?<br><a href='#'>Yes</a> - <a href='#no'>No</a>
+
+ asset
-
-
- AddressBookWalletTypeListModal
-
- Select wallet type
- Sélectionnez le type de portefeuille
-
-
-
- Search
- Rechercher
-
-
-
- AmountChart
-
-
- Work in progress
- Travail en cours
+
+ Search an asset
+
-
-
- App
-
- Recover Funds Result
- Le résultat de la récupération des fonds
+
+ Disabled
+
@@ -522,7 +302,12 @@
Source
-
+
+ Activating:
+
+
+
+
Price provider is: %1
Fournisseur de prix : %1
@@ -530,20 +315,71 @@
Bottom
-
+
Settings
Réglages
-
+
Support
Support
-
+
Privacy
Intimité
+
+
+ Disable Privacy?
+
+
+
+
+ Enter wallet password to confirm
+
+
+
+
+ Type password
+ Tapez votre mot de passe
+
+
+
+ Confirm
+ Confirmer
+
+
+
+ Cancel
+ Annuler
+
+
+
+ Privacy status
+
+
+
+
+ Privacy mode disabled successfully
+
+
+
+
+
+ Ok
+ Ok
+
+
+
+ Wrong password!
+
+
+
+
+ wallet password is incorrect
+ le mot de passe du portefeuille est incorrect
+
CamouflagePasswordModal
@@ -553,47 +389,47 @@
Configurer le mot de passe de camouflage
-
+
Camouflage Password is a secret password for emergency situations.
Le mot de passe de camouflage est un mot de passe secret pour les situations d'urgence.
-
+
Using it to login will display your balance lower than it actually is.
Son utilisation pour vous connecter affichera votre solde inférieur à ce qu'il est réellement.
-
+
Here you enter the suffix and at login you need to enter {real_password}{suffix}
Ici, vous entrez le suffixe et lors de la connexion, vous devez entrer {mot de passe réel}{suffixe}
-
+
Password suffix
Suffixe du mot de passe
-
+
Confirm pasword suffix
Confirmer le suffixe du mot de passe
-
+
Enter a password suffix
Entrez un suffixe de mot de passe
-
+
Enter the same password suffix to confirm
Entrez le même suffixe de mot de passe pour confirmer
-
+
Cancel
Annuler
-
+
Save
Sauvegarder
@@ -665,17 +501,12 @@
Chart
-
- Chart
- Chart
-
-
-
+
Loading market data
Chargement des données de marché
-
+
There is no chart data for this pair yet
Il n'y a pas encore de données graphiques pour cette paire
@@ -683,118 +514,118 @@
ClaimRewardsModal
-
+
Failed to prepare to claim rewards
Échec de la préparation de la réclamation des récompenses
-
+
Claim your %1 reward?
TICKER
Réclamer votre %1 récompense ?
-
+
No UTXOs eligible for claiming
Aucun UTXO éligible pour réclamer
-
+
Transaction fee is higher than the reward!
Les frais de transaction sont plus élevés que la récompense !
-
+
You will receive
-
+
Refresh
Actualiser
-
+
Read more about KMD active users rewards
En savoir plus sur les récompenses des utilisateurs actifs de KMD
-
+
UTXO
UTXO
-
+
Amount
Montant
-
+
Reward
Récompense
-
+
Accruing Start
Début accumulation
-
+
Accruing Stop
Fin accumulation
-
+
Time Left
Temps restant
-
+
Error
Erreur
-
+
Locktime is not set
L'heure de verrouillage n'est pas définie
-
+
Locktime is less than the threshold
Le temps de verrouillage est inférieur au seuil
-
+
UTXO height is greater than end of the era
La hauteur UTXO est supérieure à la fin de l'ère
-
+
UTXO amount is less than 10
Le montant UTXO est inférieur à 10
-
+
One hour did not pass yet
Une heure ne s'est pas encore écoulée
-
+
Transaction is in mempool
La transaction est en mempool
-
+
Unknown problem
Problème inconnu
-
+
Cancel
Annuler
-
+
Confirm
Confirmer
@@ -802,33 +633,41 @@
CoinMenu
-
+
Disable %1
TICKER
Désactiver %1
-
+
Disable and Delete %1
TICKER
Désactiver et Supprimer %1
-
+
Disable all %1 assets
Désactiver tous les actifs %1
-
+
Disable all assets
Désactiver tous les actifs
-
+
Disable 0 balance assets
+
+ ComboBoxWithSearchBar
+
+
+ Search
+ Rechercher
+
+
Combo_fiat
@@ -893,74 +732,83 @@
ConfirmTradeModal
-
+
Confirm Exchange Details
Détails de la confirmation de l'échange
-
+
This swap request can not be undone and is a final event!
La requête de ce swap ne peut pas être annulé, c'est irréversible !
-
+
Security configuration
Configuration de la sécurité
-
- dPoW protected
- dPoW protégé
-
-
-
-
+
Read more about dPoW
En savoir plus sur dPoW
-
+
Use custom protection settings for incoming %1 transactions
TICKER
Utiliser les paramètres de protection personnalisés pour les transactions%1 entrantes
-
+
Enable Komodo dPoW security
Activer la sécurité de Komodo dPoW
-
+
%1 confirmations for incoming %2 transactions
Il y a %1 confirmations pour les transactions entrantes du ticker %2
-
+
This transaction can take up to 60 mins - DO NOT close this application!
Cette transaction peut prendre jusqu'à 60 minutes - NE fermez PAS cette application !
-
+
+ Trade price is more than 50% different to CEX! Confirm?
+
+
+
+
+ Loading fees...
+
+
+
+
<b>Total %1 fees:</b>
-
+
+ dPoW protected
+
+
+
+
Required Confirmations
Confirmations requises
-
+
Warning, this atomic swap is not dPoW protected!
Attention, ce swap atomique n'est pas protégé par dPoW !
-
+
Cancel
Annuler
-
+
Confirm
Confirmer
@@ -976,186 +824,202 @@
Dashboard
-
+
The current number of enabled coins does not match your configuration specification. Your assets configuration will be reset.
Le nombre actuel d'actifs activées ne correspond pas à vos spécifications de configuration. La configuration de vos actifs sera réinitialisée.
-
+
Matching
Recherche en cours
-
+
Order Matching
Recherche d'un ordre
-
+
Matched
Trouvé
-
+
Order Matched
Ordre trouvé
-
+
Ongoing
En cours
-
+
Swap Ongoing
Échange en cours
-
+
Successful
Réussi
-
+
Swap Successful
Échange terminé
-
+
Refunding
En cours de remboursement
-
+
Failed
Échoué
-
+
Swap Failed
Erreur lors de l'échange
-
+
Unknown
Inconnue
-
+
Unknown State
État inconnu
-
+
Started
Commencé
-
+
Negotiated
Négocié
-
+
Taker fee sent
Frais de preneur envoyés
-
+
Maker payment received
Paiement de l'envoyeur reçu
-
+
Maker payment wait confirm started
La confirmation d'attente de paiement de l'envoyeur a commencé
-
+
Maker payment validated and confirmed
Paiement de l'envoyeur validé et confirmé
-
+
Taker payment sent
Paiement du preneur envoyé
-
+
Taker payment spent
Paiement du preneur dépensé
-
+
Maker payment spent
Paiement de l'envoyeur dépensé
-
+
Finished
Fini
-
+
Start failed
Le démarrage a échoué
-
+
Negotiate failed
La négociation a échoué
-
+
Taker fee validate failed
Échec de la validation des frais du preneur
-
+
Maker payment transaction failed
La transaction de paiement du créateur a échoué
-
+
Maker payment Data send failed
Échec de l'envoi des données de paiement du créateur
-
+
Maker payment wait confirm failed
La confirmation de l'attente de paiement du créateur a échoué
-
+
Taker payment validate failed
La validation du paiement du preneur a échoué
-
+
Taker payment wait confirm failed
La confirmation de l'attente de paiement du preneur a échoué
-
+
Taker payment spend failed
Échec des dépenses de paiement du preneur
-
+
Maker payment wait refund started
attente de paiement du créateur, remboursement commencé
-
+
Maker payment refunded
Paiement du créateur remboursé
-
+
Maker payment refund failed
échec du remboursement du paiement du créateur
+
+ DatePicker
+
+
+ Date
+ Date
+
+
+
+ DefaultCopyIcon
+
+
+ copied to clipboard
+ copié dans le presse-papier
+
+
DefaultRangeSlider
@@ -1169,6 +1033,14 @@
Max
+
+ DefaultTextEdit
+
+
+ copied to clipboard
+ copié dans le presse-papier
+
+
DeleteWalletModal
@@ -1211,7 +1083,7 @@
DexAppPasswordField
-
+
Type password
Tapez votre mot de passe
@@ -1219,35 +1091,32 @@
DexKeyChecker
-
+
At least 1 lowercase alphabetical character
Au moins 1 caractère alphabétique en minuscule
-
+
At least 1 uppercase alphabetical character
Au moins 1 caractère alphabétique en majuscule
-
+
At least 1 numeric character
Au moins 1 caractère numérique
-
+
At least 1 special character (eg. !@#$%)
Au moins 1 caractère spécial (ex: ! @ # $%)
-
-
- At least %n character(s)
-
- Au moins %n caractère
- Au moins %n caractères
-
+
+
+ Between %1 and %2 character(s)
+
-
+
Password and Confirm Password have to be same
Le mot de passe et la confirmation du mot de passe doivent être identiques
@@ -1259,77 +1128,158 @@
items per page
Nombres d'éléments par page
-
-
- DexRangeSlider
+
+
+ DexRangeSlider
+
+
+ Min
+ Min
+
+
+
+ Half
+ Moitié
+
+
+
+ Max
+ Max
+
+
+
+ DexSweetComboBox
+
+
+ Search
+ Rechercher
+
+
+
+ EditContactModal
+
+
+ Edit contact
+ Modifier le contact
+
+
+
+ Contact name
+
+
+
+
+ Enter a contact name
+ Entrez un nom de contact
+
+
+
+ Address list
+
+
+
+
+ Address Book
+ Carnet d'adresses
+
+
+
+ address copied to clipboard
+
+
+
+
+ Edit
+ Éditer
+
+
+
+ + Add
+
+
+
+
+ Tags
+ Tags
+
-
- Min
- Min
+
+ Add tag
+
-
- Half
- Moitié
+
+ Cancel
+ Annuler
-
- Max
- Max
+
+ Confirm
+ Confirmer
- DexSweetComboBox
+ EnableAssetModal
-
- Search
- Rechercher
+
+ The selected address belongs to a disabled asset, you need to enabled it before sending.
+
+
+
+
+ Enable
+ Activer
+
+
+
+ Cancel
+ Annuler
EnableCoinModal
-
+
Enable assets
Activer les actifs
-
+
Search asset
Rechercher un actif
-
+
All assets are already enabled!
Tous les actifs sont déjà activés !
-
+
Change assets limit
Limiter le nombre d'actifs
-
+
Select all assets
Sélectionnez tous les actifs
-
+
You can still enable %1 assets. Selected: %2.
Vous pouvez toujours activer %1 actifs. Sélectionnés: %2.
-
+
Add a custom asset
-
+
Close
Fermer
-
+
Enable
Activer
@@ -1342,27 +1292,27 @@
Clause de non-responsabilité et conditions d'utilisation
-
+
Accept EULA
Acceptez l'EULA
-
+
Accept Terms and Conditions
Accepter les termes et conditions
-
+
Close
Fermer
-
+
Cancel
Annuler
-
+
Confirm
Confirmer
@@ -1398,10 +1348,43 @@
Les frais seront calculés
+
+ GasInfoModal
+
+
+ How do I calculate gas?
+
+
+
+
+ Gas is measured in gwei. Gwei is just a unit of Ether, and is equal to 0.000000001 ETH (or the equivalent platform coin such as AVAX or BNB). The gas price varies over time depending on network congestion.
+
+
+
+
+ The gas limit is how many units of gas (maximum) you allocate to pay for a transaction. The gas required depending on the size of the transaction & data being transmitted.
+
+
+
+
+ A standard transaction not involving contracts uses 21,000 gas units, with any of the limit remaining returned to the source address.
+
+
+
+
+ Transactions involving contracts may result in the whole limit being consumed, so be careful not to set it too high.
+
+
+
+
+ For more information, read the article at <a href="https://support.mycrypto.com/how-to/sending/how-to-know-what-gas-limit-to-use">https://support.mycrypto.com/how-to/sending/how-to-know-what-gas-limit-to-use</a>
+
+
+
General
-
+
%n day(s)
%n jour(s)
@@ -1409,7 +1392,7 @@
-
+
%nd
day
@@ -1418,7 +1401,7 @@
-
+
%nh
hours
@@ -1427,7 +1410,7 @@
-
+
%nm
minutes
@@ -1436,7 +1419,7 @@
-
+
%ns
seconds
@@ -1445,7 +1428,7 @@
-
+
%nms
milliseconds
@@ -1454,91 +1437,97 @@
-
+
-
-
-
+
<b>Taker tx fee:</b>
-
+
<b>Dex tx fee:</b>
-
+
<b>Dex fee:</b>
-
+
<b>Maker tx fee:</b>
-
+
%1 %2 %3 (%4)
-
+
Trading Fee
Frais d'échanges
-
+
Minimum Trading Amount
Frais d'échange minimum
-
+
Wallet %1 already exists
WALLETNAME
Le portefeuille %1 existe déjà
-
+
%1 balance is lower than the fees amount: %2 %3
La %1 balance est inférieur aux frais: %2 %3
-
+
Tradable (after fees) %1 balance is lower than minimum trade amount
Le solde négociable (après frais) %1 est inférieur au montant minimum de la transaction
-
+
Please fill the price field
Veuillez remplir le champ de prix
-
+
Please fill the volume field
- Veuillez remplir le champ de volume
+
+
+
+
+
+ Please wait for %1 to fully activate
+
-
-
+
+
%1 volume is lower than minimum trade amount
Le volume de %1 est inférieur au montant minimum de la transaction
-
-
+
+
%1 needs to be enabled in order to use %2
%1 doit être activé pour utiliser %2
-
-
+
+
%1 balance needs to be funded, a non-zero balance is required to pay the gas of %2 transactions
Le solde %1 doit être financé, un solde différent de zéro est requis pour payer les frais de transactions de %2
-
+
Unknown Error
Erreur inconnue
@@ -1566,17 +1555,17 @@
Taux CEX
-
+
Price
Prix
-
+
Quantity
Quantité
-
+
Total
Total
@@ -1584,17 +1573,17 @@
ImportWallet
-
+
Failed to Import the wallet
Échec de l'importation du portefeuille
-
+
Import wallet - Setup
Importer le portefeuille - Configuration
-
+
Import wallet - Choose password
Importer le portefeuille - Choisir le mot de passe
@@ -1604,59 +1593,89 @@
Nom du portefeuille
-
+
Enter seed
Entrez la phrase de récupération
-
+
Your seed is not BIP39 compliant.
Try again or select 'Allow custom seed' to continue.
-
-
+
+
i understand
+ je comprends
+
+
+
+
+ я согласен
+
+
+
+
+
+ je comprends
+
+
+
+
+
+ entiendo
+
+
+
+
+
+ anladım
+
+
+
+
+
+ ich verstehe
-
+
Ok
Ok
-
+
Allow custom seed
Autoriser les phrases de récupération personnalisées
-
+
<strong>Allow custom seed</strong>
<strong>Autoriser les phrases personnalisées</strong>
-
+
Custom seed phrases might be less secure and easier to crack than a generated BIP39 compliant seed phrase or private key (WIF).<br><br>To confirm you understand the risk and know what you are doing, type <strong>'I understand'</strong> in the box below.
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 générée.<br><br>Pour confirmer que vous comprenez le risque et savez ce que vous faites, tapez <strong>'Je comprends'</strong> dans la case ci-dessous.
-
+
I understand
Je comprends
-
+
Next
Suivant
-
+
Enter the same password to confirm
Entrez le même mot de passe pour confirmer
-
+
Continue
Continuer
@@ -1691,16 +1710,21 @@ Try again or select 'Allow custom seed' to continue.
Best Orders
Meilleurs offres
+
+
+ Enter volume to see best orders.
+
+
ListDelegate
-
+
%1 is not enabled - Do you want to enable it to be able to select %2 best orders ?<br><a href='#'>Yes</a> - <a href='#no'>No</a>
%1 n'est pas activé - Souhaitez vous l'activer pour pouvoir selectionnez les meilleurs offres %2 ?<br><a href='#'>Oui</a> - <a href='#no'>Non</a>
-
+
This order requires a minimum amount of %1 %2 <br>You don't have enough funds.<br> %3
Cette commande nécessite un montant minimum de %1 %2 <br>Vous n'avez pas assez de fonds.<br> %3
@@ -1739,149 +1763,194 @@ Try again or select 'Allow custom seed' to continue.
Login
-
+
Incorrect Password
Mot de passe incorrect
-
+
Log In
-
+
Cancel
Annuler
+
+ LogoutModal
+
+
+ Exit %1 or go to login menu?
+
+
+
+
+ Warning: You currently have a swap in progress.
+Logging out may result in a failed swap.
+
+
+
+
+ Warning: You currently have open maker orders.
+They will be removed from the orderbook until you log in again.
+
+
+
+
+ Login menu
+
+
+
+
+ Exit
+
+
+
+
+ Cancel
+ Annuler
+
+
Main
-
+
Segwit
Segwit
-
+
Confirmation
Confirmation
-
+
Do you want to send your %1 funds to %2 wallet first?
Voulez-vous d'abord envoyer vos fonds %1 vers le portefeuille %2 ?
-
+
Success
Succès
-
+
Your transaction is send, may take some time to arrive
Votre transaction est envoyée, peut prendre un certain temps pour arriver
-
+
Price
Prix
-
+
Change 24hr
-
+
Porfolio
-
+
Contract Address
-
+
Send
Envoyez
-
+
Enable %1 ?
Activer %1 ?
-
+
Yes
Oui
-
+
No
Non
-
+
Receive
Recevoir
-
+
Swap
Échange
-
+
is wallet only
-
+
Rewards
Récompenses
-
+
Faucet
Robinet
-
-
-
+
+
+
Public Key
-
+
Copied to Clipboard
Copier dans le presse-papier
-
+
Loading market data
Chargement des données de marché
-
+
There is no chart data for this ticker yet
Il n'y a pas encore de données graphiques pour ce ticker
-
- No transactions
- Pas de transactions
+
+ Fetching transactions...
+
+
+
+
+ Please wait, %1 is %2
+
-
- Refreshing
- Actualiser
+
+ % activated...
+
+
+
+
+ No transactions available
+
-
- Fetching transactions
- Récupération des transactions
+
+ Click to view your address on %1 (%2) block explorer
+
@@ -1889,54 +1958,102 @@ Try again or select 'Allow custom seed' to continue.
Échanger
-
+
Trading Information
Informations de Trading
-
- Exchange Rates
- Taux d'échanges
+
+ Chart
+ Chart
-
+
Orders
Ordres
-
+
History
Historique
-
+
Place Order
Placer l'ordre
-
+
Order Selected
Ordre séléctionné
-
+
START SWAP
COMMENCER L'ÉCHANGE
+
+
+
+ Address Book
+ Carnet d'adresses
+
+
+
+ Search contact
+
+
+
+
+ + NEW CONTACT
+
+
+
+
+ Name
+ Nom
+
+
+
+ Tags
+ Tags
+
+
+
+ Edit
+ Éditer
+
+
+
+ Delete
+ Supprimez
+
+
+
+ address copied to clipboard
+
+
+
+
+ This contact does not have any registered address.
+
+
MarketModeSelector
-
- Sell
- Vendre
+
+ Sell %1
+ TICKER
+
-
- Buy
- Acheter
+
+ Buy %1
+ TICKER
+
@@ -1983,51 +2100,84 @@ Try again or select 'Allow custom seed' to continue.
Prix
+
+ NewContactPopup
+
+
+ Contact name
+
+
+
+
+ This contact name already exists.
+ Ce nom de contact existe déjà.
+
+
+
+ + ADD
+
+
+
NewUpdateModal
-
-
-
+
+
+
Searching new updates
-
+
Fetching...
-
-
-
+
+
+
Close
Fermer
-
- Could not check new updates because of the following reason:
+
+ Could not check new updates for the following reason:
%1
-
+
New version found
-
+
+ Mandatory version found
+
+
+
+
%1 %2 is available !
-
+
+ This update is mandatory to continue using the application
+
+
+
+
+ Close Dex
+
+
+
+
Your application is updated.
-
+
Download
Téléchargement
@@ -2035,112 +2185,112 @@ Try again or select 'Allow custom seed' to continue.
NewWallet
-
+
Wrong word, please check again
Mauvais mot, veuillez vérifier à nouveau
-
+
st
-
+
nd
-
+
rd
-
+
th
-
+
Failed to create a wallet
Impossible de créer un portefeuille
-
+
New Wallet
Nouveau portefeuille
-
+
Confirm Seed
Confirmer la phrase de récupération
-
+
Choose Password
Choisissez un mot de passe
-
+
Important: Back up your seed phrase before proceeding!
Important: sauvegardez votre phrase de recupération avant de continuer !
-
+
We recommend storing it offline.
Nous vous recommandons de le stocker hors ligne.
-
+
Generated Seed
Générer un Seed
-
+
Seed phrase
Phrase de récupération
-
+
copied to clipboard
copié dans le presse-papier
-
+
Next
Suivant
-
+
Let's double check your seed phrase
Vérifions à nouveau votre phrase de récupération
-
+
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.
Votre phrase de récupération est importante - c'est pourquoi nous aimons nous assurer qu'elle est correcte. Nous vous poserons trois questions différentes au sujet de votre phrase source pour vous assurer que vous pourrez facilement restaurer votre portefeuille à tout moment.
-
+
Enter the
-
+
word
-
+
Check
Vérifier
-
+
Enter the same password to confirm
Entrez le même mot de passe pour confirmer
-
+
Continue
Continuer
@@ -2171,150 +2321,167 @@ Try again or select 'Allow custom seed' to continue.
NotificationsModal
-
+
Matching
Recherche en cours
-
+
Order Matching
Recherche d'un ordre
-
+
Matched
Trouvé
-
+
Order Matched
Ordre trouvé
-
+
Ongoing
En cours
-
+
Swap Ongoing
Échange en cours
-
+
Successful
Réussi
-
+
Swap Successful
Échange terminé
-
+
Refunding
En cours de remboursement
-
+
Failed
Échoué
-
+
Swap Failed
Erreur lors de l'échange
-
+
Unknown
Inconnue
-
+
Unknown State
État inconnu
-
+
Swap status updated
État du swap mis à jour
-
+
You sent %1
Vous avez envoyé %1
-
+
You received %1
Vous avez reçu %1
-
+
Your wallet balance changed
Le solde de votre portefeuille a changé
-
+
+ %1 Enable status
+ TICKER
+
+
+
+
Please check your internet connection (e.g. VPN service or firewall might block it).
Veuillez vérifier votre connexion Internet (par exemple, le service VPN ou le pare-feu peut la bloquer).
-
+
Failed to enable %1
TICKER
Échec de l'activation de %1
-
+
+ Failed to disable %1
+ TICKER
+
+
+
+
Endpoint not reachable
Point final non accessible
-
+
Could not reach to endpoint
Impossible d'atteindre le point de terminaison
-
+
Mismatch at %1 custom asset configuration
TICKER
Non-correspondance à la configuration de l'asset personnalisé %1
-
+
Application needs to be restarted for %1 custom asset.
TICKER
L'application doit être redémarrée pour l'asset personnalisé %1.
-
+
Batch %1 failed. Reason: %2
Le lot %1 a échoué. Raison :%2
-
+
Show
Montrer
-
+
Restart
Redémarrer
-
+
Quit
Quitter
-
- There isn't any notification
- Il n'y a aucune notification
+
+ Notifications
+
+
+
+
+ There aren't any notifications
+
-
+
Mark all as read
Tout marquer comme lu
@@ -2322,46 +2489,97 @@ Try again or select 'Allow custom seed' to continue.
OrderForm
-
+
Amount to sell
Montant à vendre
-
+
Amount to receive
Montant à recevoir
-
- Min volume:
- Min volume :
+
+ Max
+ Max
+
+
+
+ Swap 25% of your tradable balance.
+
+
+
+
+ Swap 50% of your tradable balance.
+
- How to use the pro-view slider ?
- Comment utiliser le slider pro-view ?
+ Swap 100% of your tradable balance.
+
+
+
+
+ Min Volume
+
+
+
+
+ Min amount to sell
+
+
+
+
+ Min amount to receive
+
+
+
+
+ Minimum accepted trade equals 10% of order volume.
+
+
+
+
+ Minimum accepted trade equals 25% of order volume.
+
+
+
+
+ Minimum accepted trade equals 50% of order volume.
+
-
- This slider is used to setup the order requirements you need.
-Left slider: Sets the minimum amount required to process a trade.
-Right slider: Sets the volume you want to trade.
- Ce curseur est utilisé pour configurer les exigences de commande dont vous avez besoin.
-Curseur de gauche : définit le montant minimum requis pour traiter une transaction.
-Curseur droit : définit le volume que vous souhaitez trader.
+
+ Min volume:
+ Min volume :
-
+
Use custom minimum trade amount
Utiliser le montant d'échange minimum personnalisé
-
+
Price
Prix
-
+
+ Reduce 1% relative to CEX market price.
+
+
+
+
+ Use CEX market price.
+
+
+
+
+ Increase 1% relative to CEX market price.
+
+
+
+
Volume
Volume
@@ -2369,7 +2587,7 @@ Curseur droit : définit le volume que vous souhaitez trader.
OrderLine
-
+
Funds are recoverable
Les fonds sont récupérables
@@ -2385,103 +2603,114 @@ Curseur droit : définit le volume que vous souhaitez trader.
OrderModal
-
+
Swap Details
Détails de l'échange
-
+
Order Details
Détails de l'ordre
-
+
Order Type
-
+
Maker Order
Ordre de vente
-
+
Taker Order
Ordre d'achat
-
+
Refund State
État de remboursement
-
+
Your swap failed but the auto-refund process for your payment started already. Please wait and keep application opened until you receive your payment back
Votre échange a échoué, mais le processus de remboursement automatique de votre paiement a déjà commencé. Veuillez patienter et garder l'application ouverte jusqu'à ce que vous receviez votre remboursement
-
+
Date
Date
-
- ID
- ID
-
-
-
+
Recover Funds
Récupérer des fonds
-
+
Refunding...
Remboursement...
-
+
View on Explorer
Voir dans l'explorateur
-
- Maker Payment Sent ID
- Identifiant d'envoi du paiement du créateur
+
+ Cancel Order
+ Annuler l'ordre
-
- Maker Payment Spent ID
- Identifiant de paiement du créateur
+
+ Error ID
+ ID de l'erreur
-
- Taker Payment Spent ID
- Identifiant de paiement du preneur d'achat
+
+
+ Swap ID
+ ID du Swap
-
- Taker Payment Sent ID
- Identifiant d'envoi du paiement du preneur
+
+ Maker Payment Sent Transaction ID
+
-
- Cancel Order
- Annuler l'ordre
+
+ Maker Payment Spent Transaction ID
+
-
- Error ID
- ID de l'erreur
+
+ Maker Payment TXID
+
+
+
+
+ Taker Payment Spent Transaction ID
+
+
+
+
+ Taker Payment Sent Transaction ID
+
-
-
+
+ Taker Payment TXID
+
+
+
+
+
Error Log
Journal des erreurs
-
+
Close
Fermer
@@ -2508,17 +2737,17 @@ Please select a new order.
OrdersPage
-
+
From
De
-
+
To
Vers
-
+
Apply Filter
Appliquer les changements
@@ -2534,17 +2763,17 @@ Please select a new order.
Date
-
+
Export CSV
Exporter CSV
-
+
Cancel All
-
+
Please choose the CSV export name and location
Veuillez choisir le nom et l'emplacement de l'exportation CSV
@@ -2560,42 +2789,39 @@ Please select a new order.
PasswordField
-
+
Password
Mot de passe
-
+
Enter your wallet password
Entrez le mot de passe de votre portefeuille
-
+
At least 1 lowercase alphabetical character
Au moins 1 caractère alphabétique en minuscule
-
+
At least 1 uppercase alphabetical character
Au moins 1 caractère alphabétique en majuscule
-
+
At least 1 numeric character
Au moins 1 caractère numérique
-
+
At least 1 special character (eg. !@#$%)
Au moins 1 caractère spécial (ex: ! @ # $%)
-
-
- At least %n character(s)
-
- Au moins %n caractère
- Au moins %n caractères
-
+
+
+ Between %1 and %2 character(s)
+
@@ -2629,12 +2855,12 @@ Please select a new order.
Rechercher un actif
-
+
Show only coins with balance
Afficher uniquement les assets avec solde
-
+
(%1/%2)
(%1/%2)
@@ -2647,38 +2873,38 @@ Please select a new order.
PriceLine
-
+
Set swap price for evaluation
Définir le prix d'échange pour l'évaluation
-
+
Exchange rate
Taux de l'échange
-
+
Selected
Choisi
-
+
Expensive
Coûteuse
-
+
Expedient
Abordable
-
+
%1 compared to CEX
PRICE_DIFF%
%1 par rapport aux CEX
-
+
CEXchange rate
Taux du CEX
@@ -2687,36 +2913,31 @@ Please select a new order.
PriceLineSimplified
- Set swap price for evaluation
- Définir le prix d'échange pour l'évaluation
-
-
-
Exchange rate
Taux de l'échange
-
+
Selected
Choisi
-
+
CEXchange rate
Taux du CEX
-
+
Expensive
Coûteuse
-
+
Expedient
Abordable
-
+
%1 compared to CEX
PRICE_DIFF%
%1 par rapport aux CEX
@@ -2725,12 +2946,12 @@ Please select a new order.
ProView
-
+
Failed to place the order
Échec lors du placement de l'ordre
-
+
Placed the order
L'ordre a été placé avec succès
@@ -2747,22 +2968,29 @@ Please select a new order.
ReceiveModal
- Receive
- Recevoir
+ Receive %1
+ TICKER
+
+
+
+
+ Only send %1 to this address
+ TICKER
+
-
- Only send %1 to this address:
+
+ %1 address
TICKER
-
+
copied to clipboard.
-
+
Close
Fermer
@@ -2770,74 +2998,97 @@ Please select a new order.
RecoverSeedModal
-
-
+
+
View seed and private keys
Afficher le seed et les clefs privées
-
+
Please enter your password to view the seed.
Veuillez entrer votre mot de passe pour voir la phrase de récupération.
-
+
Seed
-
+
Backup Seed
-
+
Public Address copied to clipboard
-
+
Cancel
Annuler
-
-
+
+ Incorrect Password
+ Mot de passe incorrect
+
+
+
+
copied to clipboard
copié dans le presse-papier
-
-
+
+
RPC Password
Mot de passe RPC
-
+
Search a coin.
Rechercher une asset.
-
+
Public Address
Adresse publique
-
+
Private Key copied to clipboard
-
+
Private Key
Clé privée
-
+
View
Voir
+
+ RemoveContactPopup
+
+
+ Do you want to remove this contact ?
+ Voulez-vous supprimer ce contact ?
+
+
+
+ Yes
+ Oui
+
+
+
+ No
+ Non
+
+
RestartModal
@@ -2877,7 +3128,7 @@ Please select a new order.
SearchField
-
+
Search
Rechercher
@@ -2885,149 +3136,162 @@ Please select a new order.
SendModal
-
+
Failed to send
Échec de l'envoi
-
- Failed to Send
- Échec de l'envoi
-
-
-
+
Prepare to send
Préparez à envoyer du
-
+
Address of the recipient
Adresse du destinataire
-
+
Amount to send
Montant à envoyer
-
+
Gas price
Prix du gaz
-
+
Recipient's address
Adresse du destinataire
-
+
The address has to be mixed case.
L'adresse doit être mixte (case).
-
+
+ Failed to Broadcast
+
+
+
+
Fix
Réparer
-
+
MAX
MAX
-
+
Fiat amount: Unavailable
-
+
Fiat amount: %1
-
+
%1 amount: %2
-
+
Specify in Fiat
-
+
Specify in Crypto
-
+
Enable Custom Fees
Activer les frais personnalisés
-
- Only use custom fees if you know what you are doing!
- N'utilisez des frais personnalisés que si vous savez ce que vous faites !
-
-
-
+
Enter the custom fee
Entrez les frais personnalisées
-
+
Gas Limit
Limite de gaz
-
+
Custom Fee can't be higher than the amount
Les frais personnalisées ne peuvent pas être supérieurs au montant
-
+
Not enough funds.
Pas assez de fonds.
-
+
+
You have %1
AMT TICKER
Vous avez %1
-
+
+
+ Only use custom fees if you know what you are doing!
+
+
+
+
Close
Fermer
-
+
Prepare
Préparer
-
-
+
+
Send
Envoyez
-
+
+ %1 address
+ TICKER
+
+
+
+
+ copied to clipboard.
+
+
+
+
Amount
Montant
-
+
Fees
Frais
-
+
Date
Date
-
+
Back
Retour
@@ -3035,22 +3299,22 @@ Please select a new order.
SendModalContactList
-
+
Select a contact with an %1 address
Sélectionnez un contact avec une adresse %1
-
+
Search for contacts...
Rechercher des contacts...
-
+
%1 addresses
%1 adresses
-
+
1 address
1 adresse
@@ -3079,42 +3343,60 @@ Please select a new order.
SendResult
-
+
Transaction Complete!
Transaction terminée !
-
+
+ %1 txid
+ TICKER
+
+
+
+
+
+ copied to clipboard.
+
+
+
+
Recipient's address
Adresse du destinataire
-
+
+ %1 address
+ TICKER
+
+
+
+
Amount
Montant
-
+
Fees
Frais
-
+
Date
Date
-
+
Transaction Hash
Hachage de la transaction
-
+
Close
Fermer
-
+
View on Explorer
Voir dans l'explorateur
@@ -3122,281 +3404,240 @@ Please select a new order.
SettingModal
-
- Confirm Logout
- Confirmer la déconnexion
-
-
-
- Are you sure you want to log out?
- Êtes-vous sûr de vouloir vous déconnecter ?
-
-
-
- Yes
- Oui
-
-
-
-
+
+
Cancel
Annuler
-
+
Settings
Réglages
-
+
Language
Langue
-
+
User Interface
Interface utilsateur
-
+
Security
Sécurité
-
+
General
Général
-
+
About & Version
À propos & version
-
+
Enable Desktop Notifications
Activer les notifications
-
+
Maximum number of enabled coins
Nombre maximum d'actifs activés
-
+
Logs
Journaux
-
+
Open Folder
Ouvrir le dossier
-
-
+
+
Reset wallet configuration
Réinitialiser la configuration du portefeuille
-
+
This will restart your wallet with default settings
Cela redémarrera votre portefeuille avec les paramètres par défaut
-
+
+
Confirm
Confirmer
-
+
Changing theme to %1
Changer le thème en %1
-
+
+ Disable 2FA?
+
+
+
+
+ Enter your wallet password to confirm
+
+
+
+
+ Type password
+ Tapez votre mot de passe
+
+
+
+ 2FA status
+
+
+
+
+ 2FA disabled successfully
+
+
+
+
+
+ Ok
+ Ok
+
+
+
+ Wrong password!
+
+
+
+
+ Wallet password is incorrect
+
+
+
+
Application Version
-
+
copied to clipboard
copié dans le presse-papier
-
+
Reset
Réinitialiser
-
+
Current Font
Police actuelle
-
+
Current font changed to %1.
La police actuelle est passée à %1.
-
+
Theme
Thème
-
+
Ask system's password before sending coins ? (2FA)
Demander le mot de passe du système avant d'envoyer des actifs ? (2FA)
-
+
Application version
Version de l'application
-
+
MM2 version
Version de MM2
-
+
MM2 Version
MM2 Version
-
+
MM2 Version copied to clipboard.
MM2 Version copiée dans le presse-papiers.
-
+
Qt version
Version de Qt
-
+
Qt Version
Qt Version
-
+
Qt Version copied to clipboard.
Version Qt copiée dans le presse-papiers.
-
+
Search Update
Rechercher une mise à jour
-
+
Logout
Se déconnecter
-
-
-
-
-
-
+
View seed and private keys
Afficher la phrase de récupération et les clefs privées
-
-
+
+
Show
Montrer
-
+
Setup Camouflage Password
Configurer le mot de passe de camouflage
-
+
Open
Ouvrir
-
- Disclaimer and ToS
- Clause de non-responsabilité et conditions d'utilisation
-
-
-
- Settings
-
-
- Fiat
- Monnaie fiduciaire
-
-
-
- Recommended:
- Conseillé :
-
-
-
- Enable Desktop Notifications
- Activer les notifications
-
-
-
- Use QtTextRendering Or NativeTextRendering
- Utilisez QtTextRendering ou NativeTextRendering
-
-
-
- Open Logs Folder
- Ouvrir le répertoire de logs
-
-
-
- View seed and private keys
- Voir le seed et les clefs privées
-
-
-
+
Disclaimer and ToS
Clause de non-responsabilité et conditions d'utilisation
-
-
- Setup Camouflage Password
- Configurez un mot de passe de camouflage
-
-
-
- Reset wallet configuration
- Réinitialiser la configuration du portefeuille
-
-
-
- Delete Wallet
- Supprimez le portefeuille
-
-
-
- Log out
- Déconnexion
-
-
-
- mm2 version
- Version de mm2
-
Sidebar
-
- Search coin
- Rechercher un actif
+
+ Search
+ Rechercher
-
+
Add asset
Ajouter un actif
@@ -3508,32 +3749,32 @@ Please select a new order.
De
-
+
To
Vers
-
+
Cancel
Annuler
-
+
Apply filter
Appliquer changement
-
+
Export
Exportation
-
+
Please choose the CSV export name and location
Veuillez choisir le nom et l'emplacement de l'exportation CSV
-
+
No results found
Aucun résultat trouvé
@@ -3542,57 +3783,57 @@ Please select a new order.
SubOrders
-
+
Orders
Ordres
-
+
Close filtering options.
Fermez les options de filtrage.
-
+
Filter
Filtrer
-
+
Date
Date
-
+
Open filtering options.
Ouvrir les options de filtrage.
-
+
Filter settings
Paramètres de filtre
-
+
From
De
-
+
To
Vers
-
+
Cancel
Annuler
-
+
Apply filter
Appliquer changement
-
+
No results found
Aucun résultat trouvé
@@ -3728,7 +3969,7 @@ Network fees can vary greatly depending on your selected trading pair.
Changelog
-
+
Open Logs Folder
Ouvrir le répertoire de logs
@@ -3736,31 +3977,23 @@ Network fees can vary greatly depending on your selected trading pair.
SwapProgress
-
+
act
SHORT FOR ACTUAL TIME
act
-
+
est
SHORT FOR ESTIMATED
est
-
+
Progress details
Détails de la progression
-
- SweetDexComboBox
-
-
- Search
- Rechercher
-
-
TextAreaWithTitle
@@ -3775,14 +4008,17 @@ Network fees can vary greatly depending on your selected trading pair.
- TextEditWithTitle
+ TextEditWithCopy
-
- Swap ID
- ID du Swap
+
+ copied to clipboard
+ copié dans le presse-papier
+
+
+ TextEditWithTitle
-
+
copied to clipboard
copié dans le presse-papier
@@ -3790,7 +4026,7 @@ Network fees can vary greatly depending on your selected trading pair.
TextFieldWithTitle
-
+
Required
Requis
@@ -3806,22 +4042,32 @@ Network fees can vary greatly depending on your selected trading pair.
Trade
-
+
Swap
Échange
-
+
Instant trading with best orders
Trading instantané avec les meilleurs ordres
-
+
+ Reset form
+
+
+
+
+ You have no tradable assets
+
+
+
+
From
De
-
+
Enter an amount
Entrez un montant
@@ -3841,119 +4087,109 @@ Network fees can vary greatly depending on your selected trading pair.
Choisir une commande
-
+
Price
Prix
-
+
Better price found: %1. Updating forms.
Meilleur prix trouvé : %1. Mise à jour du formulaire.
-
+
Better price (%1) found but received quantity (%2) is lower than your current one (%3). Click here to update the selected order.
Meilleur prix (%1) trouvé mais la quantité reçue (%2) est inférieure à votre montant de réception (%3). Cliquez ici pour mettre à jour la commande sélectionnée.
-
- Reset form.
- Réinitialiser le formulaire.
-
-
-
- You have no tradable assets.
-
-
-
-
+
%1
-
+
Tradable:
Disponible:
-
+
Min: %1
-
+
Pick a coin
Choisissez un actif
-
+
SWAP NOW
ÉCHANGER MAINTENANT
-
+
Failed to place the order
Échec lors du placement de l'ordre
-
+
Placed the order
L'ordre a été placé
-
+
Entered amount must be superior than 0.
Le montant saisi doit être supérieur à 0.
-
+
You must select an order.
Vous devez sélectionner une commande.
-
+
Entered amount is below the minimum required by this order: %1
Le montant saisi est inférieur au minimum requis par cette commande : %1
-
-
+
+
%1 needs to be enabled in order to use %2
%1 doit être activé pour utiliser %2
-
-
+
+
%1 balance needs to be funded, a non-zero balance is required to pay the gas of %2 transactions
Le solde %1 doit être financé, un solde différent de zéro est requis pour payer les frais de transactions de %2
-
+
%1 balance does not have enough funds to pay the gas of %2 transactions
-
+
No buy orders found for %1.
Aucun ordre d'achat trouvé pour %1.
-
+
You can check later or try to sell a different coin.
Vous pouvez vérifier plus tard ou essayer de vendre un actif différent.
-
+
Calculating fee estimate...
-
+
Total %1 fees:
Frais totaux %1 :
-
+
%2 (%3)
@@ -3972,31 +4208,26 @@ Network fees can vary greatly depending on your selected trading pair.
- Chart
- Chart
-
-
-
Ticker Selectors
-
+
Trading Information
Informations de Trading
-
+
Order Book
Carnet d'ordres
-
+
Best Orders
Meilleurs offres
-
+
Place Order
Placer l'ordre
@@ -4004,77 +4235,88 @@ Network fees can vary greatly depending on your selected trading pair.
TransactionDetailsModal
-
+
Transaction Details
Détails de la transaction
-
+
+ %1 txid
+ TICKER
+
+
+
+
+ copied to clipboard.
+
+
+
+
Amount
Montant
-
+
Fees
Frais
-
+
+ From address
+
+
+
+
+ To address
+
+
+
+
Date
Date
-
+
Unconfirmed
Non confirmé
-
+
Transaction Hash
Hachage de la transaction
-
- Transactions
-
-
-
-
- txid copied to clipboard
-
-
-
-
+
Confirmations
Confirmations
-
+
Block Height
Hauteur de bloc
-
+
From
De
-
+
To
Vers
-
+
Notes
Remarques
-
+
Close
Fermer
-
+
View on Explorer
Voir dans l'explorateur
@@ -4082,22 +4324,22 @@ Network fees can vary greatly depending on your selected trading pair.
Transactions
-
+
Received
Reçue
-
+
Sent
Envoyé
-
+
fees
frais
-
+
Unconfirmed
Non confirmé
@@ -4118,19 +4360,6 @@ Network fees can vary greatly depending on your selected trading pair.
Carnet d'ordres
-
- WalletNameField
-
-
- Wallet Name
- Nom du portefeuille
-
-
-
- Enter the name of your wallet here
- Entrez le nom du portefeuille ici
-
-
WalletsView
@@ -4154,123 +4383,160 @@ Network fees can vary greatly depending on your selected trading pair.
-
+
My Wallets
Mes portefeuilles
-
+
No wallets found!
-
-
+
+
Delete
Supprimez
-
+
Enter password to confirm deletion of
Entrez le mot de passe pour confirmer la suppression de
-
+
wallet
portefeuille
-
+
Type password
Tapez votre mot de passe
-
+
Cancel
Annuler
-
-
+
+
Wallet status
État du portefeuille
-
+
wallet deleted successfully
portefeuille supprimé avec succès
-
-
+
+
Ok
Ok
-
+
wallet password is incorrect
le mot de passe du portefeuille est incorrect
+
+ ZcashParamsModal
+
+
+ %1 Activation Failed!
+
+
+
+
+ To activate ZHTLC coins, you need to download the Zcash Params.
+This might take a few minutes...
+
+
+
+
+ Download params & enable coins
+
+
+
+
+ More Info
+
+
+
+
+ Close
+ Fermer
+
+
+
+ atomic_dex::settings_page
+
+
+ An error has occurred.
+
+
+
atomic_dex::wallet_page
-
+
You do not have enough funds.
Vous n'avez pas assez de fonds.
-
+
%1 is not activated: click on the button to enable it or enable it manually
%1 n'est pas activé : cliquez sur le bouton pour l'activer ou l'activer manuellement
-
+
You need to have %1 to pay the gas for %2 transactions.
Vous devez avoir %1 activée pour payer les frais de transactions de %2.
-
+
Checksum verification failed for %1.
Échec de la vérification du checksum de contrôle pour %1.
-
+
Invalid checksum for %1. Click the button to convert to mixed case address.
-
+
Legacy address used for %1. Click the button to convert to a Cashaddress.
-
+
%1 address must be prefixed with 0x
L'adresse %1 doit être précédée de 0x
-
+
%1 address length is invalid, please use a valid address.
La longueur de l'adresse %1 n'est pas valide, veuillez utiliser une adresse valide.
-
+
%1 address is invalid.
L'adresse %1 n'est pas valide.
-
+
Invalid checksum.
Somme de contrôle invalide.
-
+
%1 address has invalid prefixes.
L'adresse %1 a des préfixes non valides.
-
+
Backend error: %1
Erreur de backend : %1
@@ -4278,32 +4544,12 @@ Network fees can vary greatly depending on your selected trading pair.
main
-
+
Logout
Se déconnecter
-
- Confirm Logout
- Confirmer la déconnexion
-
-
-
- Are you sure you want to log out?
- Êtes-vous sûr de vouloir vous déconnecter ?
-
-
-
- Yes
- Oui
-
-
-
- Cancel
- Annuler
-
-
-
+
Balance
Balance
diff --git a/atomic_defi_design/assets/languages/atomic_defi_lang_template.ts b/atomic_defi_design/assets/languages/atomic_defi_lang_template.ts
new file mode 100644
index 0000000000..5836a5dfc1
--- /dev/null
+++ b/atomic_defi_design/assets/languages/atomic_defi_lang_template.ts
@@ -0,0 +1,3713 @@
+
+
+
+
+ AddAddressForm
+
+
+ Use standard network address
+
+
+
+ Label
+
+
+
+ This key already exists.
+
+
+
+ Address
+
+
+
+
+ Cancel
+
+
+
+ Convert
+
+
+
+ Edit
+
+
+
+ Add
+
+
+
+ You need to enable %1 before adding this kind of address.
+
+
+
+ Enable
+
+
+
+ AddCustomCoinModal
+
+
+ Get the contract address from
+
+
+
+ Choose the asset type
+
+
+
+ Cancel
+
+
+
+
+
+ Next
+
+
+
+ Contract address
+
+
+
+ Enter the contract address
+
+
+
+ Choose the asset ticker
+
+
+
+ Ticker
+
+
+
+ Enter the ticker
+
+
+
+ Get the contract address from
+
+
+
+
+
+
+ Previous
+
+
+
+ Choose the asset logo
+
+
+
+ Browse
+
+
+
+ Please choose the asset logo
+
+
+
+ Configuration
+
+
+
+ All configuration fields will be fetched using the contract address you provided.
+
+
+
+ Name
+
+
+
+ Enter the name
+
+
+
+ Coingecko ID
+
+
+
+ Enter the Coingecko ID
+
+
+
+ Get the Coingecko ID
+
+
+
+ Active
+
+
+
+
+ Preview
+
+
+
+ WARNING: Application will restart immidiately to apply the changes!
+
+
+
+ Asset not found, please go back and make sure Contract Address is correct
+
+
+
+ Config Fields
+
+
+
+ Fetched Data
+
+
+
+ Submit & Restart
+
+
+
+ AddTagPopup
+
+
+ Tag name
+
+
+
+ Contact already has this tag.
+
+
+
+ + ADD
+
+
+
+ AmountChart
+
+
+ Work in progress
+
+
+
+ App
+
+
+ Recover Funds Result
+
+
+
+ AssetFromStandardSelector
+
+
+ Choose a valid
+
+
+
+ asset
+
+
+
+ Search an asset
+
+
+
+ Disabled
+
+
+
+ AssetPieChart
+
+
+ Assets
+
+
+
+ AssetsList
+
+
+ Asset
+
+
+
+ Balance
+
+
+
+ Fiat Balance
+
+
+
+ Change 24h
+
+
+
+ Price
+
+
+
+ Source
+
+
+
+ Activating:
+
+
+
+ Price provider is: %1
+
+
+
+ Bottom
+
+
+ Settings
+
+
+
+ Support
+
+
+
+ Privacy
+
+
+
+ Disable Privacy?
+
+
+
+ Enter wallet password to confirm
+
+
+
+ Type password
+
+
+
+ Confirm
+
+
+
+ Cancel
+
+
+
+ Privacy status
+
+
+
+ Privacy mode disabled successfully
+
+
+
+
+ Ok
+
+
+
+ Wrong password!
+
+
+
+ wallet password is incorrect
+
+
+
+ CamouflagePasswordModal
+
+
+ Setup Camouflage Password
+
+
+
+ Camouflage Password is a secret password for emergency situations.
+
+
+
+ Using it to login will display your balance lower than it actually is.
+
+
+
+ Here you enter the suffix and at login you need to enter {real_password}{suffix}
+
+
+
+ Password suffix
+
+
+
+ Confirm pasword suffix
+
+
+
+ Enter a password suffix
+
+
+
+ Enter the same password suffix to confirm
+
+
+
+ Cancel
+
+
+
+ Save
+
+
+
+ CannotEnableCoinModal
+
+
+ Failed to enable %1
+
+
+
+ Enabling %1 did not succeed. Limit of enabled coins might have been reached.
+
+
+
+ Change limit in settings
+
+
+
+ Cancel
+
+
+
+ Center
+
+
+ Portfolio
+
+
+
+ Wallet
+
+
+
+ DEX
+
+
+
+ Address Book
+
+
+
+ Fiat
+
+
+
+ CexInfoModal
+
+
+ Market Data
+
+
+
+ Market data (prices, charts, etc.) marked with the ⓘ icon originates from third-party sources.<br><br>Data is sourced via <a href="https://bandprotocol.com/">Band Decentralized Oracle</a> and <a href="https://coingecko.com">CoinGecko</a>.<br><br><b>Oracle Supported Pairs:</b><br>%1<br><br><b>Last reference (Band Oracle):</b><br><a href="%2">%2</a>
+
+
+
+ Chart
+
+
+ Loading market data
+
+
+
+ There is no chart data for this pair yet
+
+
+
+ ClaimRewardsModal
+
+
+ Failed to prepare to claim rewards
+
+
+
+ Claim your %1 reward?
+ TICKER
+
+
+
+ No UTXOs eligible for claiming
+
+
+
+ Transaction fee is higher than the reward!
+
+
+
+ You will receive
+
+
+
+ Refresh
+
+
+
+ Read more about KMD active users rewards
+
+
+
+ UTXO
+
+
+
+ Amount
+
+
+
+ Reward
+
+
+
+ Accruing Start
+
+
+
+ Accruing Stop
+
+
+
+ Time Left
+
+
+
+ Error
+
+
+
+ Locktime is not set
+
+
+
+ Locktime is less than the threshold
+
+
+
+ UTXO height is greater than end of the era
+
+
+
+ UTXO amount is less than 10
+
+
+
+ One hour did not pass yet
+
+
+
+ Transaction is in mempool
+
+
+
+ Unknown problem
+
+
+
+ Cancel
+
+
+
+ Confirm
+
+
+
+ CoinMenu
+
+
+ Disable %1
+ TICKER
+
+
+
+ Disable and Delete %1
+ TICKER
+
+
+
+ Disable all %1 assets
+
+
+
+ Disable all assets
+
+
+
+ Disable 0 balance assets
+
+
+
+ ComboBoxWithSearchBar
+
+
+ Search
+
+
+
+ Combo_fiat
+
+
+ Language
+
+
+
+ Fiat
+
+
+
+ Recommended:
+
+
+
+ ConfirmMultiOrderTradeModal
+
+
+ Confirm Multi Order Details
+
+
+
+ These swaps requests can not be undone and this is the final event!
+
+
+
+ These transactions can take up to 60 mins - DO NOT close this application!
+
+
+
+ Same funds will be used until an order matches.
+
+
+
+ Note that if one order is filled other will not be cancelled.
+
+
+
+ Cancel
+
+
+
+ Confirm
+
+
+
+ Placed multiple orders
+
+
+
+ ConfirmTradeModal
+
+
+ Confirm Exchange Details
+
+
+
+ Trade price is more than 50% different to CEX! Confirm?
+
+
+
+ This swap request can not be undone and is a final event!
+
+
+
+ This transaction can take up to 60 mins - DO NOT close this application!
+
+
+
+ Loading fees...
+
+
+
+ <b>Total %1 fees:</b>
+
+
+
+ Security configuration
+
+
+
+ dPoW protected
+
+
+
+ %1 confirmations for incoming %2 transactions
+
+
+
+ Read more about dPoW
+
+
+
+ Use custom protection settings for incoming %1 transactions
+ TICKER
+
+
+
+ Enable Komodo dPoW security
+
+
+
+ Required Confirmations
+
+
+
+ Warning, this atomic swap is not dPoW protected!
+
+
+
+ Cancel
+
+
+
+ Confirm
+
+
+
+ CopyFieldButton
+
+
+ Copied to Clipboard
+
+
+
+ Dashboard
+
+
+ The current number of enabled coins does not match your configuration specification. Your assets configuration will be reset.
+
+
+
+ Matching
+
+
+
+ Order Matching
+
+
+
+ Matched
+
+
+
+ Order Matched
+
+
+
+ Ongoing
+
+
+
+ Swap Ongoing
+
+
+
+ Successful
+
+
+
+ Swap Successful
+
+
+
+ Refunding
+
+
+
+ Failed
+
+
+
+ Swap Failed
+
+
+
+ Unknown
+
+
+
+ Unknown State
+
+
+
+ Started
+
+
+
+ Negotiated
+
+
+
+ Taker fee sent
+
+
+
+ Maker payment received
+
+
+
+ Maker payment wait confirm started
+
+
+
+ Maker payment validated and confirmed
+
+
+
+ Taker payment sent
+
+
+
+ Taker payment spent
+
+
+
+ Maker payment spent
+
+
+
+ Finished
+
+
+
+ Start failed
+
+
+
+ Negotiate failed
+
+
+
+ Taker fee validate failed
+
+
+
+ Maker payment transaction failed
+
+
+
+ Maker payment Data send failed
+
+
+
+ Maker payment wait confirm failed
+
+
+
+ Taker payment validate failed
+
+
+
+ Taker payment wait confirm failed
+
+
+
+ Taker payment spend failed
+
+
+
+ Maker payment wait refund started
+
+
+
+ Maker payment refunded
+
+
+
+ Maker payment refund failed
+
+
+
+ DatePicker
+
+
+ Date
+
+
+
+ DefaultCopyIcon
+
+
+ copied to clipboard
+
+
+
+ DefaultRangeSlider
+
+
+ Min
+
+
+
+ Max
+
+
+
+ DefaultTextEdit
+
+
+ copied to clipboard
+
+
+
+ DeleteWalletModal
+
+
+ Delete Wallet
+
+
+
+ Are you sure you want to delete %1 wallet?
+ WALLET_NAME
+
+
+
+ If so, make sure you record your seed phrase in order to restore your wallet in the future.
+
+
+
+ Enter your wallet password
+
+
+
+ Wrong Password
+
+
+
+ Cancel
+
+
+
+ Delete
+
+
+
+ DexAppPasswordField
+
+
+ Type password
+
+
+
+ DexKeyChecker
+
+
+ At least 1 lowercase alphabetical character
+
+
+
+ At least 1 uppercase alphabetical character
+
+
+
+ At least 1 numeric character
+
+
+
+ At least 1 special character (eg. !@#$%)
+
+
+
+ At least %n character(s)
+
+
+
+ Password and Confirm Password have to be same
+
+
+
+ DexPaginator
+
+
+ items per page
+
+
+
+ DexRangeSlider
+
+
+ Min
+
+
+
+ Half
+
+
+
+ Max
+
+
+
+ DexSweetComboBox
+
+
+ Search
+
+
+
+ EditContactModal
+
+
+ Edit contact
+
+
+
+ Contact name
+
+
+
+ Enter a contact name
+
+
+
+ Address list
+
+
+
+ Address Book
+
+
+
+ address copied to clipboard
+
+
+
+ Edit
+
+
+
+ + Add
+
+
+
+ Tags
+
+
+
+ Add tag
+
+
+
+ Close
+
+
+
+ Confirm
+
+
+
+ EnableAssetModal
+
+
+ The selected address belongs to a disabled asset, you need to enabled it before sending.
+
+
+
+ Enable
+
+
+
+ Cancel
+
+
+
+ EnableCoinModal
+
+
+ Enable assets
+
+
+
+ Select all assets
+
+
+
+ All assets are already enabled!
+
+
+
+ You can still enable %1 assets. Selected: %2.
+
+
+
+ Search asset
+
+
+
+ Change assets limit
+
+
+
+ Add a custom asset
+
+
+
+ Close
+
+
+
+ Enable
+
+
+
+ EulaModal
+
+
+ Disclaimer & Terms of Service
+
+
+
+ Accept EULA
+
+
+
+ Accept Terms and Conditions
+
+
+
+ Close
+
+
+
+ Cancel
+
+
+
+ Confirm
+
+
+
+ FatalErrorModal
+
+
+ Fatal Error
+
+
+
+ Connection has been lost. You have been disconnected.
+
+
+
+ Close
+
+
+
+ FeeInfo
+
+
+ Minimum fee
+
+
+
+ Fees will be calculated
+
+
+
+ General
+
+
+ %n day(s)
+
+
+
+ %nd
+ day
+
+
+
+ %nh
+ hours
+
+
+
+ %nm
+ minutes
+
+
+
+ %ns
+ seconds
+
+
+
+ %nms
+ milliseconds
+
+
+
+ -
+
+
+
+ <b>Taker tx fee:</b>
+
+
+
+ <b>Dex tx fee:</b>
+
+
+
+ <b>Dex fee:</b>
+
+
+
+ <b>Maker tx fee:</b>
+
+
+
+ %1 %2 %3 (%4)
+
+
+
+ Trading Fee
+
+
+
+ Minimum Trading Amount
+
+
+
+ Wallet %1 already exists
+ WALLETNAME
+
+
+
+ %1 balance is lower than the fees amount: %2 %3
+
+
+
+ Tradable (after fees) %1 balance is lower than minimum trade amount
+
+
+
+ Please fill the price field
+
+
+
+ Please fill the volume field
+
+
+
+
+ Please wait for %1 to fully activate
+
+
+
+
+ %1 volume is lower than minimum trade amount
+
+
+
+
+ %1 needs to be enabled in order to use %2
+
+
+
+
+ %1 balance needs to be funded, a non-zero balance is required to pay the gas of %2 transactions
+
+
+
+ Unknown Error
+
+
+
+ Header
+
+
+ You get
+
+
+
+ You send
+
+
+
+ Fiat Price
+
+
+
+ CEX rate
+
+
+
+ Price
+
+
+
+ Quantity
+
+
+
+ Total
+
+
+
+ ImportWallet
+
+
+ Failed to Import the wallet
+
+
+
+ Import wallet - Setup
+
+
+
+ Import wallet - Choose password
+
+
+
+ Wallet Name
+
+
+
+ Enter seed
+
+
+
+ Your seed is not BIP39 compliant.
+Try again or select 'Allow custom seed' to continue.
+
+
+
+
+ i understand
+
+
+
+ Ok
+
+
+
+ Allow custom seed
+
+
+
+ <strong>Allow custom seed</strong>
+
+
+
+ Custom seed phrases might be less secure and easier to crack than a generated BIP39 compliant seed phrase or private key (WIF).<br><br>To confirm you understand the risk and know what you are doing, type <strong>'I understand'</strong> in the box below.
+
+
+
+ I understand
+
+
+
+ Next
+
+
+
+ Enter the same password to confirm
+
+
+
+ Continue
+
+
+
+ LinksRow
+
+
+ Join our Discord server
+
+
+
+ Follow us on Twitter
+
+
+
+ Go to Support Guides
+
+
+
+ List
+
+
+ Funds are recoverable
+
+
+
+ Best Orders
+
+
+
+ Enter volume to see best orders.
+
+
+
+ ListDelegate
+
+
+ %1 is not enabled - Do you want to enable it to be able to select %2 best orders ?<br><a href='#'>Yes</a> - <a href='#no'>No</a>
+
+
+
+ This order requires a minimum amount of %1 %2 <br>You don't have enough funds.<br> %3
+
+
+
+ LogModal
+
+
+ Close
+
+
+
+ Logging
+
+
+ Loading, please wait
+
+
+
+ Initializing MM2
+
+
+
+ Enabling assets
+
+
+
+ Getting ready
+
+
+
+ Login
+
+
+ Incorrect Password
+
+
+
+ Log In
+
+
+
+ Cancel
+
+
+
+ LogoutModal
+
+
+ Exit %1 or go to login menu?
+
+
+
+ Warning: You currently have a swap in progress.
+Logging out may result in a failed swap.
+
+
+
+ Warning: You currently have open maker orders.
+They will be removed from the orderbook until you log in again.
+
+
+
+ Login menu
+
+
+
+ Exit
+
+
+
+ Cancel
+
+
+
+ Main
+
+
+ Segwit
+
+
+
+ Confirmation
+
+
+
+ Do you want to send your %1 funds to %2 wallet first?
+
+
+
+ Success
+
+
+
+ Your transaction is send, may take some time to arrive
+
+
+
+ Price
+
+
+
+ Change 24hr
+
+
+
+ Porfolio
+
+
+
+ Contract Address
+
+
+
+ Send
+
+
+
+ Enable %1 ?
+
+
+
+ Yes
+
+
+
+ No
+
+
+
+ Receive
+
+
+
+ Swap
+
+
+
+ is wallet only
+
+
+
+ Rewards
+
+
+
+ Faucet
+
+
+
+
+
+ Public Key
+
+
+
+ Copied to Clipboard
+
+
+
+ Loading market data
+
+
+
+ There is no chart data for this ticker yet
+
+
+
+ Fetching transactions...
+
+
+
+ Please wait, %1 is %2
+
+
+
+ % activated...
+
+
+
+ No transactions available
+
+
+
+ Click to view your address on %1 (%2) block explorer
+
+
+
+ Trade
+
+
+
+ Trading Information
+
+
+
+ Chart
+
+
+
+
+ Orders
+
+
+
+
+ History
+
+
+
+ Place Order
+
+
+
+ Order Selected
+
+
+
+ START SWAP
+
+
+
+
+ Address Book
+
+
+
+ Search contact
+
+
+
+ + NEW CONTACT
+
+
+
+ Name
+
+
+
+ Tags
+
+
+
+ Edit
+
+
+
+ Delete
+
+
+
+ address copied to clipboard
+
+
+
+ This contact does not have any registered address.
+
+
+
+ MarketModeSelector
+
+
+ Sell %1
+ TICKER
+
+
+
+ Buy %1
+ TICKER
+
+
+
+ MinTradeModal
+
+
+ Minimum Trading Amount
+
+
+
+ the minimum amount of %1 coin available for the order; the min_volume must be greater than or equal to %2; it must be also less or equal than volume param; default is %3
+
+
+
+ MultiOrder
+
+
+ %1 price is zero!
+ TICKER
+
+
+
+ %1 receive volume is lower than minimum trade amount
+ TICKER
+
+
+
+ Error:
+
+
+
+ You'll receive %1
+ AMOUNT TICKER
+
+
+
+ Price
+
+
+
+ NewContactPopup
+
+
+ Contact name
+
+
+
+ This contact name already exists.
+
+
+
+ + ADD
+
+
+
+ NewUpdateModal
+
+
+
+
+ Searching new updates
+
+
+
+ Fetching...
+
+
+
+
+
+
+ Close
+
+
+
+ Could not check new updates for the following reason:
+%1
+
+
+
+ New version found
+
+
+
+ Mandatory version found
+
+
+
+ %1 %2 is available !
+
+
+
+ This update is mandatory to continue using the application
+
+
+
+ Close Dex
+
+
+
+ Your application is updated.
+
+
+
+ Download
+
+
+
+ NewWallet
+
+
+ Wrong word, please check again
+
+
+
+ st
+
+
+
+ nd
+
+
+
+ rd
+
+
+
+ th
+
+
+
+ Failed to create a wallet
+
+
+
+ New Wallet
+
+
+
+ Confirm Seed
+
+
+
+ Choose Password
+
+
+
+ Important: Back up your seed phrase before proceeding!
+
+
+
+ We recommend storing it offline.
+
+
+
+ Generated Seed
+
+
+
+ Seed phrase
+
+
+
+ copied to clipboard
+
+
+
+ Next
+
+
+
+ Let's double check your seed phrase
+
+
+
+ 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.
+
+
+
+ Enter the
+
+
+
+ word
+
+
+
+ Check
+
+
+
+ Enter the same password to confirm
+
+
+
+ Continue
+
+
+
+ NoConnection
+
+
+ No connection
+
+
+
+ Please make sure you are connected to the internet
+
+
+
+ Will automatically retry in %1 seconds
+
+
+
+ Retry
+
+
+
+ NotificationsModal
+
+
+ Matching
+
+
+
+ Order Matching
+
+
+
+ Matched
+
+
+
+ Order Matched
+
+
+
+ Ongoing
+
+
+
+ Swap Ongoing
+
+
+
+ Successful
+
+
+
+ Swap Successful
+
+
+
+ Refunding
+
+
+
+ Failed
+
+
+
+ Swap Failed
+
+
+
+ Unknown
+
+
+
+ Unknown State
+
+
+
+ Swap status updated
+
+
+
+ You sent %1
+
+
+
+ You received %1
+
+
+
+ Your wallet balance changed
+
+
+
+ %1 Enable status
+ TICKER
+
+
+
+ Please check your internet connection (e.g. VPN service or firewall might block it).
+
+
+
+ Failed to enable %1
+ TICKER
+
+
+
+ Failed to disable %1
+ TICKER
+
+
+
+ Endpoint not reachable
+
+
+
+ Could not reach to endpoint
+
+
+
+ Mismatch at %1 custom asset configuration
+ TICKER
+
+
+
+ Application needs to be restarted for %1 custom asset.
+ TICKER
+
+
+
+ Batch %1 failed. Reason: %2
+
+
+
+ Show
+
+
+
+ Restart
+
+
+
+ Quit
+
+
+
+ Notifications
+
+
+
+ There aren't any notifications
+
+
+
+ Mark all as read
+
+
+
+ OrderForm
+
+
+ Price
+
+
+
+ Reduce 1% relative to CEX market price.
+
+
+
+ Use CEX market price.
+
+
+
+ Increase 1% relative to CEX market price.
+
+
+
+ Volume
+
+
+
+ Amount to sell
+
+
+
+ Amount to receive
+
+
+
+ Max
+
+
+
+ Swap 25% of your tradable balance.
+
+
+
+ Swap 50% of your tradable balance.
+
+
+
+ Swap 100% of your tradable balance.
+
+
+
+ Min Volume
+
+
+
+ Min amount to sell
+
+
+
+ Min amount to receive
+
+
+
+ Minimum accepted trade equals 10% of order volume.
+
+
+
+ Minimum accepted trade equals 25% of order volume.
+
+
+
+ Minimum accepted trade equals 50% of order volume.
+
+
+
+ Min volume:
+
+
+
+ Use custom minimum trade amount
+
+
+
+ OrderLine
+
+
+ Funds are recoverable
+
+
+
+ OrderList
+
+
+ No results found
+
+
+
+ OrderModal
+
+
+ Swap Details
+
+
+
+ Order Details
+
+
+
+ Order Type
+
+
+
+ Maker Order
+
+
+
+ Taker Order
+
+
+
+ Refund State
+
+
+
+ Your swap failed but the auto-refund process for your payment started already. Please wait and keep application opened until you receive your payment back
+
+
+
+ Date
+
+
+
+ Error ID
+
+
+
+
+ Error Log
+
+
+
+ Close
+
+
+
+ Cancel Order
+
+
+
+
+ Swap ID
+
+
+
+ Maker Payment Sent Transaction ID
+
+
+
+ Maker Payment Spent Transaction ID
+
+
+
+ Maker Payment TXID
+
+
+
+ Taker Payment Spent Transaction ID
+
+
+
+ Taker Payment Sent Transaction ID
+
+
+
+ Taker Payment TXID
+
+
+
+ Recover Funds
+
+
+
+ Refunding...
+
+
+
+ View on Explorer
+
+
+
+ OrderRemovedModal
+
+
+ Selected Order Removed
+
+
+
+ The selected order does not exist anymore, it might have been matched or canceled, and no order with a better price is available.
+Please select a new order.
+
+
+
+ OK
+
+
+
+ OrdersPage
+
+
+
+ Filter
+
+
+
+ Date
+
+
+
+ Export CSV
+
+
+
+ Apply Filter
+
+
+
+ Cancel All
+
+
+
+ From
+
+
+
+ To
+
+
+
+ Please choose the CSV export name and location
+
+
+
+ Pagination
+
+
+ items per page
+
+
+
+ PasswordField
+
+
+ Password
+
+
+
+ Enter your wallet password
+
+
+
+ At least 1 lowercase alphabetical character
+
+
+
+ At least 1 uppercase alphabetical character
+
+
+
+ At least 1 numeric character
+
+
+
+ At least 1 special character (eg. !@#$%)
+
+
+
+ At least %n character(s)
+
+
+
+ PasswordForm
+
+
+ Password
+
+
+
+ Confirm Password
+
+
+
+ Enter the same password to confirm
+
+
+
+ Portfolio
+
+
+ ADD ASSET
+
+
+
+ Search asset
+
+
+
+ Show only coins with balance
+
+
+
+ (%1/%2)
+
+
+
+ Portfolio
+
+
+
+ PriceLine
+
+
+ Set swap price for evaluation
+
+
+
+ Exchange rate
+
+
+
+ Selected
+
+
+
+ Expensive
+
+
+
+ Expedient
+
+
+
+ %1 compared to CEX
+ PRICE_DIFF%
+
+
+
+ CEXchange rate
+
+
+
+ PriceLineSimplified
+
+
+ Exchange rate
+
+
+
+ Selected
+
+
+
+ CEXchange rate
+
+
+
+ Expensive
+
+
+
+ Expedient
+
+
+
+ %1 compared to CEX
+ PRICE_DIFF%
+
+
+
+ ProView
+
+
+ Failed to place the order
+
+
+
+ Placed the order
+
+
+
+ QObject
+
+
+ Cannot reach the endpoint:
+
+
+
+ ReceiveModal
+
+
+ Receive %1
+ TICKER
+
+
+
+ Only send %1 to this address
+ TICKER
+
+
+
+ %1 address
+ TICKER
+
+
+
+ copied to clipboard.
+
+
+
+ Close
+
+
+
+ RecoverSeedModal
+
+
+
+ View seed and private keys
+
+
+
+ Please enter your password to view the seed.
+
+
+
+ Seed
+
+
+
+ Backup Seed
+
+
+
+ Public Address copied to clipboard
+
+
+
+ Cancel
+
+
+
+ View
+
+
+
+
+ copied to clipboard
+
+
+
+
+ RPC Password
+
+
+
+ Search a coin.
+
+
+
+ Public Address
+
+
+
+ Private Key copied to clipboard
+
+
+
+ Private Key
+
+
+
+ RemoveContactPopup
+
+
+ Do you want to remove this contact ?
+
+
+
+ Yes
+
+
+
+ No
+
+
+
+ RestartModal
+
+
+ Applying the changes...
+
+
+
+ Restarting the application. %1
+
+
+
+ Restarting the application...
+
+
+
+ RightClickMenu
+
+
+ Cut
+
+
+
+ Copy
+
+
+
+ Paste
+
+
+
+ SearchField
+
+
+ Search
+
+
+
+ SendModal
+
+
+ Failed to send
+
+
+
+ Prepare to send
+
+
+
+ Address of the recipient
+
+
+
+ Amount to send
+
+
+
+ Gas price
+
+
+
+ Recipient's address
+
+
+
+ The address has to be mixed case.
+
+
+
+ Taproot not supported
+
+
+
+ Failed to Broadcast
+
+
+
+ Fix
+
+
+
+ MAX
+
+
+
+ Fiat amount: Unavailable
+
+
+
+ Fiat amount: %1
+
+
+
+ %1 amount: %2
+
+
+
+ Specify in Fiat
+
+
+
+ Specify in Crypto
+
+
+
+ Enable Custom Fees
+
+
+
+ Only use custom fees if you know what you are doing!
+
+
+
+ Enter the custom fee
+
+
+
+ Gas Limit
+
+
+
+ Custom Fee can't be higher than the amount
+
+
+
+ Not enough funds.
+
+
+
+
+ You have %1
+ AMT TICKER
+
+
+
+ Close
+
+
+
+ Prepare
+
+
+
+
+ Send
+
+
+
+ %1 address
+ TICKER
+
+
+
+ copied to clipboard.
+
+
+
+ Amount
+
+
+
+ Fees
+
+
+
+ Date
+
+
+
+ Back
+
+
+
+ SendModalContactList
+
+
+ Select a contact with an %1 address
+
+
+
+ Search for contacts...
+
+
+
+ %1 addresses
+
+
+
+ 1 address
+
+
+
+
+ Back
+
+
+
+ Choose an %1 address of %2
+
+
+
+ Name
+
+
+
+ Address
+
+
+
+ SendResult
+
+
+ Transaction Complete!
+
+
+
+ %1 txid
+ TICKER
+
+
+
+
+ copied to clipboard.
+
+
+
+ Recipient's address
+
+
+
+ %1 address
+ TICKER
+
+
+
+ Amount
+
+
+
+ Fees
+
+
+
+ Date
+
+
+
+ Transaction Hash
+
+
+
+ Close
+
+
+
+ View on Explorer
+
+
+
+ SettingModal
+
+
+
+ Cancel
+
+
+
+ Settings
+
+
+
+ General
+
+
+
+ Language
+
+
+
+ User Interface
+
+
+
+ Security
+
+
+
+ Enable Desktop Notifications
+
+
+
+ Maximum number of enabled coins
+
+
+
+ Logs
+
+
+
+ Open Folder
+
+
+
+ Reset
+
+
+
+ Current Font
+
+
+
+ Current font changed to %1.
+
+
+
+ Theme
+
+
+
+ Changing theme to %1
+
+
+
+ Application Version
+
+
+
+ copied to clipboard
+
+
+
+ About & Version
+
+
+
+
+ Reset wallet configuration
+
+
+
+ This will restart your wallet with default settings
+
+
+
+
+ Confirm
+
+
+
+ Ask system's password before sending coins ? (2FA)
+
+
+
+ Disable 2FA?
+
+
+
+ Enter your wallet password to confirm
+
+
+
+ Type password
+
+
+
+ 2FA status
+
+
+
+ 2FA disabled successfully
+
+
+
+
+ Ok
+
+
+
+ Wrong password!
+
+
+
+ Wallet password is incorrect
+
+
+
+ View seed and private keys
+
+
+
+
+ Show
+
+
+
+ Setup Camouflage Password
+
+
+
+ Open
+
+
+
+ Disclaimer and ToS
+
+
+
+ Application version
+
+
+
+ MM2 version
+
+
+
+ MM2 Version
+
+
+
+ MM2 Version copied to clipboard.
+
+
+
+ Qt version
+
+
+
+ Qt Version
+
+
+
+ Qt Version copied to clipboard.
+
+
+
+ Search Update
+
+
+
+ Logout
+
+
+
+ Settings
+
+
+ Fiat
+
+
+
+ Recommended:
+
+
+
+ Enable Desktop Notifications
+
+
+
+ Use QtTextRendering Or NativeTextRendering
+
+
+
+ Open Logs Folder
+
+
+
+ View seed and private keys
+
+
+
+ Disclaimer and ToS
+
+
+
+ Setup Camouflage Password
+
+
+
+ Reset wallet configuration
+
+
+
+ Delete Wallet
+
+
+
+ Log out
+
+
+
+ mm2 version
+
+
+
+ Sidebar
+
+
+ Search
+
+
+
+ Add asset
+
+
+
+ SmartChartView
+
+
+ Loading market data
+
+
+
+ There is no chart data for this ticker yet
+
+
+
+ SubBestOrder
+
+
+ Token
+
+
+
+ Available Quantity
+
+
+
+ Available Quantity (in %1)
+
+
+
+ Fiat Volume
+
+
+
+ CEX Rate
+
+
+
+ %1 is not enabled - Do you want to enable it to be able to select %2 best orders ?<br><a href='#'>Yes</a> - <a href='#no'>No</a>
+
+
+
+ SubCoinSelector
+
+
+ Token
+
+
+
+ Balance
+
+
+
+ Balance Fiat
+
+
+
+ No Selectable coin.
+
+
+
+ SubHistory
+
+
+ History
+
+
+
+ Filter
+
+
+
+ Date
+
+
+
+ Close filtering options.
+
+
+
+ Open filtering options.
+
+
+
+ Filter settings
+
+
+
+ From
+
+
+
+ To
+
+
+
+ Cancel
+
+
+
+ Apply filter
+
+
+
+ Export
+
+
+
+ Please choose the CSV export name and location
+
+
+
+ No results found
+
+
+
+ SubOrders
+
+
+
+ Orders
+
+
+
+ Close filtering options.
+
+
+
+ Filter
+
+
+
+ Date
+
+
+
+ Open filtering options.
+
+
+
+ Filter settings
+
+
+
+ From
+
+
+
+ To
+
+
+
+ Cancel
+
+
+
+ Apply filter
+
+
+
+ No results found
+
+
+
+ SupportModal
+
+
+ Frequently Asked Questions
+
+
+
+ Do you store my private keys?
+
+
+
+ No! %1 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.
+
+
+
+ How is trading on %1 different from trading on other DEXs?
+
+
+
+ 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.
+
+%1 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.
+
+
+
+ How long does each atomic swap take?
+
+
+
+ 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 %1 to consider a KMD transaction as final after just 3 confirmations which makes the swap time shorter compared to waiting for a <a href="https://komodoplatform.com/security-delayed-proof-of-work-dpow/">notarization</a>.
+
+
+
+ Do I need to be online for the duration of the swap?
+
+
+
+ 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.
+
+If you go offline, so will your orders, and any that are in progress will fail, leading to potential loss of trade / transaction fees, and a wait for the swap to timeout and issue a refund. It may also negatively affect your wallet's reputation score for future trade matching.
+
+When you come back online, your orders will begin to broadcast again at the price you set before you went offline. If there has been significant price movement in the meantime, you might unintentionally offer someone a bargain!
+
+For this reason, we recommend cancelling orders before closing %1, or reviewing and revising your prices when restarting %1.
+
+
+
+ How are the fees on %1 calculated?
+
+
+
+ There are two fee categories to consider when trading on %1.
+
+1. %1 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.
+
+2. Both makers and takers will need to pay normal network fees to the involved blockchains when making atomic swap transactions.
+
+Network fees can vary greatly depending on your selected trading pair.
+
+
+
+ Do you provide user support?
+
+
+
+ Yes! %1 offers support through the <a href="%2">%1 Discord server</a>. The team and the community are always happy to help!
+
+
+
+ Who is behind %1?
+
+
+
+ %1 is developed by the Komodo team. Komodo 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.
+
+
+
+ Is it possible to develop my own white-label exchange on %1?
+
+
+
+ Absolutely! You can read our developer documentation for more details or contact us with your partnership inquiries. Have a specific technical question? The %1 developer community is always ready to help!
+
+
+
+ Which devices can I use %1 on?
+
+
+
+ %1 is available for mobile on both <a href="%2">Android and iPhone, and for desktop on Windows, Mac, and Linux</a> operating systems.
+
+
+
+ Compliance Info
+
+
+
+ Due to regulatory and legal circumstances the citizens of certain jurisdictions including, but not limited to, the United States of America, Canada, Hong Kong, Israel, Singapore, Sudan, Austria, Iran and any other state, country or other jurisdiction that is embargoed by the United States of America or the European Union are not allowed to use this application.
+
+
+
+ Changelog
+
+
+
+ Open Logs Folder
+
+
+
+ SwapProgress
+
+
+ act
+ SHORT FOR ACTUAL TIME
+
+
+
+ est
+ SHORT FOR ESTIMATED
+
+
+
+ Progress details
+
+
+
+ TextAreaWithTitle
+
+
+ Save
+
+
+
+ Edit
+
+
+
+ TextEditWithCopy
+
+
+ copied to clipboard
+
+
+
+ TextEditWithTitle
+
+
+ copied to clipboard
+
+
+
+ TextFieldWithTitle
+
+
+ Required
+
+
+
+ Toast
+
+
+ Click here to see the details
+
+
+
+ Trade
+
+
+ Swap
+
+
+
+ Instant trading with best orders
+
+
+
+ Reset form
+
+
+
+ You have no tradable assets
+
+
+
+ From
+
+
+
+ Enter an amount
+
+
+
+ MAX
+
+
+
+ To
+
+
+
+ Pick an order
+
+
+
+ Price
+
+
+
+ Better price found: %1. Updating forms.
+
+
+
+ Better price (%1) found but received quantity (%2) is lower than your current one (%3). Click here to update the selected order.
+
+
+
+ %1
+
+
+
+ Tradable:
+
+
+
+ Min: %1
+
+
+
+ Pick a coin
+
+
+
+ SWAP NOW
+
+
+
+ Failed to place the order
+
+
+
+ Placed the order
+
+
+
+ Entered amount must be superior than 0.
+
+
+
+ You must select an order.
+
+
+
+ Entered amount is below the minimum required by this order: %1
+
+
+
+
+ %1 needs to be enabled in order to use %2
+
+
+
+
+ %1 balance needs to be funded, a non-zero balance is required to pay the gas of %2 transactions
+
+
+
+ %1 balance does not have enough funds to pay the gas of %2 transactions
+
+
+
+ No buy orders found for %1.
+
+
+
+ You can check later or try to sell a different coin.
+
+
+
+ Calculating fee estimate...
+
+
+
+ Total %1 fees:
+
+
+
+ %2 (%3)
+
+
+
+ TradeViewHeader
+
+
+ Pro View Settings
+
+
+
+ Display Settings
+
+
+
+ Ticker Selectors
+
+
+
+ Trading Information
+
+
+
+ Order Book
+
+
+
+ Best Orders
+
+
+
+ Place Order
+
+
+
+ TransactionDetailsModal
+
+
+ Transaction Details
+
+
+
+ %1 txid
+ TICKER
+
+
+
+ copied to clipboard.
+
+
+
+ Amount
+
+
+
+ Fees
+
+
+
+ From address
+
+
+
+ To address
+
+
+
+ Date
+
+
+
+ Unconfirmed
+
+
+
+ Transaction Hash
+
+
+
+ Confirmations
+
+
+
+ Block Height
+
+
+
+ From
+
+
+
+ To
+
+
+
+ Notes
+
+
+
+ Close
+
+
+
+ View on Explorer
+
+
+
+ Transactions
+
+
+ Sent
+
+
+
+ Received
+
+
+
+ fees
+
+
+
+ Unconfirmed
+
+
+
+ UpdateInvalidChecksum
+
+
+ The downloaded update archive is corrupted !
+
+
+
+ Vertical
+
+
+ Order Book
+
+
+
+ WalletsView
+
+
+ Welcome
+
+
+
+ New wallet
+
+
+
+ Import wallet
+
+
+
+ Search your wallets...
+
+
+
+ My Wallets
+
+
+
+ No wallets found!
+
+
+
+
+ Delete
+
+
+
+ Enter password to confirm deletion of
+
+
+
+ wallet
+
+
+
+ Type password
+
+
+
+ Cancel
+
+
+
+
+ Wallet status
+
+
+
+ wallet deleted successfully
+
+
+
+
+ Ok
+
+
+
+ wallet password is incorrect
+
+
+
+ ZcashParamsModal
+
+
+ %1 Activation Failed!
+
+
+
+ To activate ZHTLC coins, you need to download the Zcash Params.
+This might take a few minutes...
+
+
+
+ Download params & enable coins
+
+
+
+ More Info
+
+
+
+ Close
+
+
+
+ atomic_dex::settings_page
+
+
+ An error has occurred.
+
+
+
+ atomic_dex::wallet_page
+
+
+ You do not have enough funds.
+
+
+
+ %1 is not activated: click on the button to enable it or enable it manually
+
+
+
+ You need to have %1 to pay the gas for %2 transactions.
+
+
+
+ Checksum verification failed for %1.
+
+
+
+ Invalid checksum for %1. Click the button to convert to mixed case address.
+
+
+
+ Legacy address used for %1. Click the button to convert to a Cashaddress.
+
+
+
+ %1 address must be prefixed with 0x
+
+
+
+ %1 address length is invalid, please use a valid address.
+
+
+
+ %1 address is invalid.
+
+
+
+ Invalid checksum.
+
+
+
+ %1 address has invalid prefixes.
+
+
+
+ Backend error: %1
+
+
+
+ main
+
+
+ Logout
+
+
+
+ Balance
+
+
+
diff --git a/atomic_defi_design/assets/languages/atomic_defi_ru.ts b/atomic_defi_design/assets/languages/atomic_defi_ru.ts
index f2380b9740..29f2549db9 100644
--- a/atomic_defi_design/assets/languages/atomic_defi_ru.ts
+++ b/atomic_defi_design/assets/languages/atomic_defi_ru.ts
@@ -1,42 +1,96 @@
+
+ AddAddressForm
+
+
+ Use standard network address
+
+
+
+
+ Label
+
+
+
+
+ This key already exists.
+ Этот ключ уже существует.
+
+
+
+ Address
+ Адрес
+
+
+
+
+ Cancel
+
+
+
+
+ Convert
+ Преобразовать
+
+
+
+ Edit
+ Редактировать
+
+
+
+ Add
+ Добавить
+
+
+
+ You need to enable %1 before adding this kind of address.
+
+
+
+
+ Enable
+ Добавить
+
+
AddCustomCoinModal
-
+
Choose the asset type
Выберите тип монеты
-
+
Cancel
Отменить
-
-
-
+
+
+
Next
Далее
-
+
Enter the contract address
Введите адрес контракта
-
+
Choose the asset ticker
Введите тикер монеты
-
+
Ticker
Тикер
-
+
Enter the ticker
Введите тикер
@@ -46,439 +100,165 @@
Получить адрес контракта от
-
+
Contract address
-
+
Get the contract address from
Получить адрес контракта от
-
-
-
-
+
+
+
+
Previous
Назад
-
+
Choose the asset logo
Загрузите логотип монеты
-
+
Browse
Выбрать
-
+
Please choose the asset logo
Выберите логотип монеты
-
+
Configuration
Конфигурация
-
+
All configuration fields will be fetched using the contract address you provided.
Все параметры конфигурации будут получены с помощью адреса контракта.
-
+
Name
Название
-
+
Enter the name
Введите название
-
+
Coingecko ID
Coingecko ID
-
+
Enter the Coingecko ID
Введите Coingecko ID
-
+
Get the Coingecko ID
Получить Coingecko ID
-
+
Active
Активно
-
-
+
+
Preview
Превью
-
+
WARNING: Application will restart immidiately to apply the changes!
ПРЕДУПРЕЖДЕНИЕ: Приложение будет немедленно перезапущено для применения изменений!
-
+
Asset not found, please go back and make sure Contract Address is correct
Токен не найден, убедитесь, что адрес контракта указан верно
-
+
Config Fields
Параметры конфигурации
-
+
Fetched Data
Полученные данные
-
+
Submit & Restart
Отправить и перезапустить
- AddressBook
-
-
- Address Book
- Адресная книга
-
-
-
- New Contact
- Новый контакт
-
-
-
- Search a contact by name or tags
- Поиск контакта по имени или тегам
-
-
-
- Name
- Имя
-
-
-
- Tags (first 6)
- Теги (первые 6)
-
-
-
- Actions
- Действия
-
-
-
- Edit
- Редактировать
-
-
-
- Remove
- Удалить
-
-
-
- Do you want to remove this contact ?
- Вы действительно хотите удалить этот контакт?
-
-
-
- Yes
- Да
-
-
-
- No
- Нет
-
-
-
- AddressBookAddContactAddressModal
-
-
- Create a new address
- Добавить новый адрес
-
-
-
- Edit address entry
- Внести изменения в адрес
-
-
-
- Selected wallet: %1
- Выбранный кошелек: %1
-
-
-
- NONE
- НИ ОДИН
-
-
-
- Enter a name
- Введите имя
-
-
-
- This key already exists.
- Этот ключ уже существует.
-
-
-
- Enter the address
- Введите адрес
-
-
-
- Validate
- Валидировать
-
-
-
- Cancel
- Отменить
-
-
-
- Convert
- Преобразовать
-
-
-
- AddressBookEditContactModal
+ AddTagPopup
-
- Edit contact
- Редактировать контакт
-
-
-
- Contact Name
- Имя контакта
-
-
-
- Enter a contact name
- Введите имя
-
-
-
- Address List
- Список адресов
-
-
-
- Search for an address entry.
- Поиск адреса.
-
-
-
- Type
- Тип
-
-
-
- Key
- Ключ
-
-
-
- Address
- Адрес
-
-
-
- Actions
- Действия
-
-
-
- Add Address
+
+ Tag name
-
- Tags
- Теги
-
-
-
- +
- +
-
-
-
- Confirm
- Подтвердить
-
-
-
-
- Cancel
- Отменить
-
-
-
- The selected address belongs to a disabled coin, you need to enabled it before sending.
- Вы выбрали адрес отключенной монеты, ее необходимо включить перед отправкой.
-
-
-
- Enable
- Добавить
-
-
-
- Cannot send to this address
- Отправка на этот адрес невозможна
-
-
-
- Your balance is empty
- Баланс отсутствует
-
-
-
- Ok
- ОК
-
-
-
- Remove address ?
- Удалить адрес ?
-
-
-
- Yes
- Да
+
+ Contact already has this tag.
+
-
- No
- Нет
+
+ + ADD
+
- AddressBookNewContactCategoryModal
-
-
- Add a new tag
- Добавить новый тег
-
-
-
- Enter the tag name
- Добавить имя тега
-
-
-
- This contact already has this tag
- У этого контакта уже есть этот тег
-
-
-
- Add
- Добавить
-
+ AmountChart
-
- Cancel
- Отменить
+
+ Work in progress
+ Разработка в процессе
- AddressBookNewContactModal
-
-
- Create a new contact
- Добавить новый контакт
-
-
-
- Enter the contact name
- Введите имя контакта
-
-
-
- This contact name already exists.
- Контакт с таким именем уже существует.
-
-
-
- Confirm
- Подтвердить
-
+ App
-
- Cancel
- Отменить
+
+ Recover Funds Result
+ Результат восстановления средств
- AddressBookSendWalletSelector
+ AssetFromStandardSelector
-
+
Choose a valid
- Выберите валидную
-
-
-
- coin
- монету
+ Выберите валидную
-
-
- AddressBookWalletTypeList
-
- %1 is not enabled - You need to enable it before adding an address. Enable it ?<br><a href='#'>Yes</a> - <a href='#no'>No</a>
+
+ asset
-
-
- AddressBookWalletTypeListModal
-
-
- Select wallet type
- Выберите тип кошелька
-
-
-
- Search
- Поиск
-
-
-
- AmountChart
-
- Work in progress
- Разработка в процессе
+
+ Search an asset
+
-
-
- App
-
- Recover Funds Result
- Результат восстановления средств
+
+ Disabled
+
@@ -522,7 +302,12 @@
Источник
-
+
+ Activating:
+
+
+
+
Price provider is: %1
Провайдер цены: %1
@@ -530,20 +315,71 @@
Bottom
-
+
Settings
Настройки
-
+
Support
Поддержка
-
+
Privacy
Скрыть баланс
+
+
+ Disable Privacy?
+
+
+
+
+ Enter wallet password to confirm
+
+
+
+
+ Type password
+ Введите пароль
+
+
+
+ Confirm
+
+
+
+
+ Cancel
+
+
+
+
+ Privacy status
+
+
+
+
+ Privacy mode disabled successfully
+
+
+
+
+
+ Ok
+ Ок
+
+
+
+ Wrong password!
+
+
+
+
+ wallet password is incorrect
+ введен неправильный пароль
+
CamouflagePasswordModal
@@ -553,47 +389,47 @@
Установить камуфляжный пароль
-
+
Camouflage Password is a secret password for emergency situations.
Камуфляжный пароль - секретный пароль для чрезвычайных ситуаций.
-
+
Using it to login will display your balance lower than it actually is.
Используйте его во время входа, чтобы ваш баланс не отображался полностью.
-
+
Here you enter the suffix and at login you need to enter {real_password}{suffix}
Здесь вы можете ввести окончание пароля. Во время входа в приложения необходимо будет ввести {ваш пароль}{окончание}
-
+
Password suffix
Суффикс пароля
-
+
Confirm pasword suffix
Подтвердите суффикс пароля
-
+
Enter a password suffix
Задайте суффикс пароля
-
+
Enter the same password suffix to confirm
Подтвердите суффикс пароля
-
+
Cancel
Отменить
-
+
Save
Сохранить
@@ -665,17 +501,12 @@
Chart
-
- Chart
- График
-
-
-
+
Loading market data
-
+ Загрузка рыночных данных
-
+
There is no chart data for this pair yet
Нет данных для построения графика для этой торговой пары
@@ -683,118 +514,118 @@
ClaimRewardsModal
-
+
Failed to prepare to claim rewards
Ошибка при создании транзакции для получения вознаграждения
-
+
Claim your %1 reward?
TICKER
Получить %1 вознаграждение?
-
+
No UTXOs eligible for claiming
Нет UTXO, для которых доступны вознаграждения
-
+
Transaction fee is higher than the reward!
Комиссия за транзакцию превышает сумму вознаграждений!
-
+
You will receive
-
+
Refresh
Обновить
-
+
Read more about KMD active users rewards
Подробнее о вознаграждениях для активных пользователей KMD
-
+
UTXO
UTXO
-
+
Amount
Сумма
-
+
Reward
Вознаграждения
-
+
Accruing Start
Начало начисления
-
+
Accruing Stop
Прекращение начисления
-
+
Time Left
Осталось
-
+
Error
Ошибка
-
+
Locktime is not set
Время блокировки не установлено
-
+
Locktime is less than the threshold
Время блокировки меньше минимального
-
+
UTXO height is greater than end of the era
Высота UTXO больше, чем конец эпохи
-
+
UTXO amount is less than 10
UTXO меньше 10
-
+
One hour did not pass yet
1 час еще не прошел
-
+
Transaction is in mempool
Транзакция находится в мемпуле
-
+
Unknown problem
Неизвестная проблема
-
+
Cancel
Отменить
-
+
Confirm
Подтвердить
@@ -802,33 +633,41 @@
CoinMenu
-
+
Disable %1
TICKER
Удалить %1
-
+
Disable and Delete %1
TICKER
Удалить токен %1 из AtomicDex
-
+
Disable all %1 assets
Отключить все %1 ассеты
-
+
Disable all assets
Отключить все ассеты
-
+
Disable 0 balance assets
+
+ ComboBoxWithSearchBar
+
+
+ Search
+ Поиск
+
+
Combo_fiat
@@ -893,74 +732,83 @@
ConfirmTradeModal
-
+
Confirm Exchange Details
Подтвердить данные обмена
-
+
+ Trade price is more than 50% different to CEX! Confirm?
+
+
+
+
This swap request can not be undone and is a final event!
Этот запрос на своп не может быть отменен и является окончательным!
-
+
This transaction can take up to 60 mins - DO NOT close this application!
Эта транзакция может занять до 60 минут - НЕ закрывайте приложение!
-
+
+ Loading fees...
+
+
+
+
<b>Total %1 fees:</b>
-
+
Security configuration
Настройки безопасности
-
- dPoW protected
- защищено dPoW
-
-
-
+
%1 confirmations for incoming %2 transactions
%1 подтверждений для входящих %2 транзакций
-
-
+
Read more about dPoW
Узнать больше о dPoW
-
+
Use custom protection settings for incoming %1 transactions
TICKER
Использовать пользовательские настройки защиты для входящих транзакций %1
-
+
Enable Komodo dPoW security
Включить Komodo dPoW
-
+
+ dPoW protected
+
+
+
+
Required Confirmations
Необходимое количество подтверждений
-
+
Warning, this atomic swap is not dPoW protected!
Предупреждение, этот атомарный своп не защищен dPoW!
-
+
Cancel
Отменить
-
+
Confirm
Подтверждение
@@ -976,186 +824,202 @@
Dashboard
-
+
The current number of enabled coins does not match your configuration specification. Your assets configuration will be reset.
Текущее количество включенных монет не совпадает с конфигурацией. Ваша конфигурация активов будет сброшена.
-
+
Matching
Матчинг
-
+
Order Matching
Матчинг ордеров
-
+
Matched
Сматчен
-
+
Order Matched
Ордер сматчен
-
+
Ongoing
В процессе
-
+
Swap Ongoing
Своп продолжается
-
+
Successful
Успешно
-
+
Swap Successful
Своп успешно завершен
-
+
Refunding
Проводится возврат
-
+
Failed
Не завершено
-
+
Swap Failed
Своп не был завершен
-
+
Unknown
Неизвестно
-
+
Unknown State
Статус неизвестен
-
+
Started
Начат
-
+
Negotiated
Согласован
-
+
Taker fee sent
Комиссия тейкера отправлена
-
+
Maker payment received
Платеж мейкера получен
-
+
Maker payment wait confirm started
Ожидание платежа мейкера
-
+
Maker payment validated and confirmed
Платеж мейкера валидирован и подтвержден
-
+
Taker payment sent
Платеж тейкера отправлен
-
+
Taker payment spent
Платеж тейкера потрачен
-
+
Maker payment spent
Платеж мейкера потрачен
-
+
Finished
Завершено
-
+
Start failed
Не удалось начать
-
+
Negotiate failed
Согласование не прошло
-
+
Taker fee validate failed
Валидация комиссии тейкера не прошла
-
+
Maker payment transaction failed
Платежная транзакция мейкера не прошла
-
+
Maker payment Data send failed
Отправка платежных данных мейкера не прошла
-
+
Maker payment wait confirm failed
Платежная транзакция мейкера не была подтверждена
-
+
Taker payment validate failed
Не прошла валидация платежа тейкера
-
+
Taker payment wait confirm failed
Платежная транзакция тейкера не была подтверждена
-
+
Taker payment spend failed
Spend платежа тейкера не прошел
-
+
Maker payment wait refund started
Ожидание возврата платежа мейкера
-
+
Maker payment refunded
Платеж мейкера возвращен
-
+
Maker payment refund failed
Возврат платежа мейкера не выполнен
+
+ DatePicker
+
+
+ Date
+ Дата
+
+
+
+ DefaultCopyIcon
+
+
+ copied to clipboard
+ скопировано в буфер
+
+
DefaultRangeSlider
@@ -1169,6 +1033,14 @@
Макс
+
+ DefaultTextEdit
+
+
+ copied to clipboard
+ скопировано в буфер
+
+
DeleteWalletModal
@@ -1211,7 +1083,7 @@
DexAppPasswordField
-
+
Type password
Введите пароль
@@ -1219,36 +1091,32 @@
DexKeyChecker
-
+
At least 1 lowercase alphabetical character
Как минимум 1 строчная буква
-
+
At least 1 uppercase alphabetical character
Как минимум 1 заглавная буква
-
+
At least 1 numeric character
Как минимум 1 цифра
-
+
At least 1 special character (eg. !@#$%)
Как минимум 1 специальный символ (!@#$%)
-
-
- At least %n character(s)
-
- Не менее %n символов
- Не менее %n символов
- Не менее %n символов
-
+
+
+ Between %1 and %2 character(s)
+
-
+
Password and Confirm Password have to be same
Пароль и подтверждение пароля должны совпадать
@@ -1269,68 +1137,149 @@
Мин
-
- Half
- Половина
+
+ Half
+ Половина
+
+
+
+ Max
+ Макс
+
+
+
+ DexSweetComboBox
+
+
+ Search
+ Поиск
+
+
+
+ EditContactModal
+
+
+ Edit contact
+ Редактировать контакт
+
+
+
+ Contact name
+
+
+
+
+ Enter a contact name
+ Введите имя
+
+
+
+ Address list
+
+
+
+
+ Address Book
+ Адресная книга
+
+
+
+ address copied to clipboard
+
+
+
+
+ Edit
+ Редактировать
+
+
+
+ + Add
+
+
+
+
+ Tags
+ Теги
+
+
+
+ Add tag
+
+
+
+
+ Cancel
+ Отменить
-
- Max
- Макс
+
+ Confirm
+
- DexSweetComboBox
+ EnableAssetModal
-
- Search
- Поиск
+
+ The selected address belongs to a disabled asset, you need to enabled it before sending.
+
+
+
+
+ Enable
+ Добавить
+
+
+
+ Cancel
+ Отменить
EnableCoinModal
-
+
Enable assets
Подключить активы
-
+
Search asset
Поиск актива
-
+
All assets are already enabled!
Все ассеты уже добавлены!
-
+
Change assets limit
Изменить лимит
-
+
Select all assets
Выбрать все ассеты
-
+
You can still enable %1 assets. Selected: %2.
Вы можете активировать еще %1 активов. Активно: %2.
-
+
Add a custom asset
-
+
Close
Закрыть
-
+
Enable
Добавить
@@ -1343,27 +1292,27 @@
Дисклеймер и условия использования
-
+
Accept EULA
Принять EULA
-
+
Accept Terms and Conditions
Принять Terms of Service
-
+
Close
Закрыть
-
+
Cancel
Отменить
-
+
Confirm
Подтвердить
@@ -1399,10 +1348,43 @@
Комиссия будет рассчитана
+
+ GasInfoModal
+
+
+ How do I calculate gas?
+
+
+
+
+ Gas is measured in gwei. Gwei is just a unit of Ether, and is equal to 0.000000001 ETH (or the equivalent platform coin such as AVAX or BNB). The gas price varies over time depending on network congestion.
+
+
+
+
+ The gas limit is how many units of gas (maximum) you allocate to pay for a transaction. The gas required depending on the size of the transaction & data being transmitted.
+
+
+
+
+ A standard transaction not involving contracts uses 21,000 gas units, with any of the limit remaining returned to the source address.
+
+
+
+
+ Transactions involving contracts may result in the whole limit being consumed, so be careful not to set it too high.
+
+
+
+
+ For more information, read the article at <a href="https://support.mycrypto.com/how-to/sending/how-to-know-what-gas-limit-to-use">https://support.mycrypto.com/how-to/sending/how-to-know-what-gas-limit-to-use</a>
+
+
+
General
-
+
%n day(s)
%n день
@@ -1411,7 +1393,7 @@
-
+
%nd
day
@@ -1421,7 +1403,7 @@
-
+
%nh
hours
@@ -1431,7 +1413,7 @@
-
+
%nm
minutes
@@ -1441,7 +1423,7 @@
-
+
%ns
seconds
@@ -1451,7 +1433,7 @@
-
+
%nms
milliseconds
@@ -1461,91 +1443,97 @@
-
+
-
-
-
+
<b>Taker tx fee:</b>
-
+
<b>Dex tx fee:</b>
-
+
<b>Dex fee:</b>
-
+
<b>Maker tx fee:</b>
-
+
%1 %2 %3 (%4)
-
+ %2 (%3) {1 %2 %3 ?} {4)?}
-
+
Trading Fee
Торговая комиссия
-
+
Minimum Trading Amount
Минимальный объем сделки
-
+
Wallet %1 already exists
WALLETNAME
Кошелек %1 уже существует
-
+
%1 balance is lower than the fees amount: %2 %3
%1 баланс менее чем размер комиссий: %2 %3
-
+
Tradable (after fees) %1 balance is lower than minimum trade amount
Торгуемый (после комиссий) баланс %1 - меньше минимальной суммы сделки
-
+
Please fill the price field
Пожалуйста, укажите цену
-
+
Please fill the volume field
- Пожалуйста, укажите сумму
+
+
+
+
+
+ Please wait for %1 to fully activate
+
-
-
+
+
%1 volume is lower than minimum trade amount
Сумма %1 меньше минимальной суммы сделки
-
-
+
+
%1 needs to be enabled in order to use %2
%1 должен быть активным для использования %2
-
-
+
+
%1 balance needs to be funded, a non-zero balance is required to pay the gas of %2 transactions
нужно пополнить баланс %1 для оплаты газа %2 транзакций
-
+
Unknown Error
Неизвестная ошибка
@@ -1573,17 +1561,17 @@
Цена на CEX
-
+
Price
Цена
-
+
Quantity
Количество
-
+
Total
Всего
@@ -1591,17 +1579,17 @@
ImportWallet
-
+
Failed to Import the wallet
Не удалось импортировать кошелек
-
+
Import wallet - Setup
Импорт кошелька - Введите данные
-
+
Import wallet - Choose password
Импорт кошелька - Задайте пароль
@@ -1611,59 +1599,89 @@
Название кошелька
-
+
Enter seed
Введите сид-фразу
-
+
Your seed is not BIP39 compliant.
Try again or select 'Allow custom seed' to continue.
-
-
+
+
i understand
+ Я согласен
+
+
+
+
+ я согласен
-
- Ok
+
+
+ je comprends
+
+
+
+
+
+ entiendo
+
+
+
+
+
+ anladım
-
+
+
+ ich verstehe
+
+
+
+
+ Ok
+ Ок
+
+
+
Allow custom seed
Разрешить пользовательский формат сид-фразы
-
+
<strong>Allow custom seed</strong>
<strong>Разрешить произвольный seed</strong>
-
+
Custom seed phrases might be less secure and easier to crack than a generated BIP39 compliant seed phrase or private key (WIF).<br><br>To confirm you understand the risk and know what you are doing, type <strong>'I understand'</strong> in the box below.
- Пользовательские seed фразы могут быть менее безопасными и подверженными взлому, в сравнении с фразой сгенерированной в соответствии со стандартом BIP39 или приватным ключом (WIF).<br><br>Для подтверждения того, что вы понимаете что делаете введите <strong>'I understand'</strong> в поле ниже.
+ Пользовательские исходные фразы могут быть менее безопасными и их легче взломать, чем сгенерированные исходные фразы или закрытый ключ (WIF), совместимые с BIP39.<br><br>Чтобы подтвердить, что вы понимаете риск и знаете, что делаете, введите <strong>'Я согласен'</strong> в поле ниже.
-
+
I understand
-
+ Я согласен
-
+
Next
Далее
-
+
Enter the same password to confirm
Введите тот же пароль для подтверждения
-
+
Continue
Продолжить
@@ -1698,16 +1716,21 @@ Try again or select 'Allow custom seed' to continue.
Best Orders
Лучшие ордеры
+
+
+ Enter volume to see best orders.
+
+
ListDelegate
-
+
%1 is not enabled - Do you want to enable it to be able to select %2 best orders ?<br><a href='#'>Yes</a> - <a href='#no'>No</a>
%1 не активирован -Вы хотите активировать этот %2 актив чтобы видеть лучшие ордеры для него ?<br><a href='#'>Да</a> - <a href='#no'>Нет</a>
-
+
This order requires a minimum amount of %1 %2 <br>You don't have enough funds.<br> %3
@@ -1746,204 +1769,297 @@ Try again or select 'Allow custom seed' to continue.
Login
-
+
Incorrect Password
Неправильный пароль
-
+
Log In
-
+
Cancel
Отменить
+
+ LogoutModal
+
+
+ Exit %1 or go to login menu?
+
+
+
+
+ Warning: You currently have a swap in progress.
+Logging out may result in a failed swap.
+
+
+
+
+ Warning: You currently have open maker orders.
+They will be removed from the orderbook until you log in again.
+
+
+
+
+ Login menu
+
+
+
+
+ Exit
+
+
+
+
+ Cancel
+
+
+
Main
-
+
Segwit
Segwit
-
+
Confirmation
Подтверждение
-
+
Do you want to send your %1 funds to %2 wallet first?
Хотели бы вы сначала отправить ваши %1 средства на кошелек %2?
-
+
Success
Успех
-
+
Your transaction is send, may take some time to arrive
Ваша транзакция была отправлена, получение может занять какое-то время
-
+
Price
Цена
-
+
Change 24hr
-
+
Porfolio
-
+
Contract Address
-
+
Send
Отправить
-
+
Enable %1 ?
Активировать %1 ?
-
+
Yes
Да
-
+
No
Нет
-
+
Receive
Получить
-
+
Swap
Обменять
-
+
is wallet only
-
+
Rewards
Награды
-
+
Faucet
Фаусет
-
-
-
+
+
+
Public Key
-
+
Copied to Clipboard
Скопировано в буфер обмена
-
+
Loading market data
Загрузка рыночных данных
-
+
There is no chart data for this ticker yet
Для данного актива пока еще нет графиков данных
-
- No transactions
- Нет транзакций
+
+ Fetching transactions...
+
+
+
+
+ Please wait, %1 is %2
+
-
- Refreshing
- Обновление данных
+
+ % activated...
+
+
+
+
+ No transactions available
+
-
- Fetching transactions
- Получение данных о транзакциях
+
+ Click to view your address on %1 (%2) block explorer
+
Trade
-
+ торговля
-
+
Trading Information
Торговая информация
-
- Exchange Rates
- Курс обмена
+
+ Chart
+ График
-
+
Orders
Ордеры
-
+
History
История
-
+
Place Order
Разместить ордер
-
+
Order Selected
Ордер выбран
-
+
START SWAP
НАЧАТЬ ОБМЕН
+
+
+
+ Address Book
+ Адресная книга
+
+
+
+ Search contact
+ поиск контактов
+
+
+
+ + NEW CONTACT
+ новый контакт
+
+
+
+ Name
+ Название
+
+
+
+ Tags
+ Теги
+
+
+
+ Edit
+ Редактировать
+
+
+
+ Delete
+ Удалить
+
+
+
+ address copied to clipboard
+
+
+
+
+ This contact does not have any registered address.
+
+
MarketModeSelector
-
- Sell
- Продать
+
+ Sell %1
+ TICKER
+
-
- Buy
- Купить
+
+ Buy %1
+ TICKER
+
@@ -1990,51 +2106,84 @@ Try again or select 'Allow custom seed' to continue.
Цена
+
+ NewContactPopup
+
+
+ Contact name
+
+
+
+
+ This contact name already exists.
+ Контакт с таким именем уже существует.
+
+
+
+ + ADD
+
+
+
NewUpdateModal
-
-
-
+
+
+
Searching new updates
-
+
Fetching...
-
-
-
+
+
+
Close
Закрыть
-
- Could not check new updates because of the following reason:
+
+ Could not check new updates for the following reason:
%1
-
+
New version found
-
+
+ Mandatory version found
+
+
+
+
%1 %2 is available !
-
+
+ This update is mandatory to continue using the application
+
+
+
+
+ Close Dex
+
+
+
+
Your application is updated.
-
+
Download
Скачать
@@ -2042,112 +2191,112 @@ Try again or select 'Allow custom seed' to continue.
NewWallet
-
+
Wrong word, please check again
Неверное слово. Пожалуйста, попробуйте еще раз
-
+
st
-
+
nd
-
+
rd
-
+
th
-
+
Failed to create a wallet
Ошибка при создании кошелька
-
+
New Wallet
Новый кошелек
-
+
Confirm Seed
Подтвердить seed ключ
-
+
Choose Password
Задайте пароль
-
+
Important: Back up your seed phrase before proceeding!
Важно: убедитесь, что вы сохранили ваш seed ключ, прежде чем продолжить!
-
+
We recommend storing it offline.
Мы рекумендуем хранить его офлайн.
-
+
Generated Seed
Сгенерированный seed ключ
-
+
Seed phrase
Seed фраза
-
+
copied to clipboard
скопировано в буфер
-
+
Next
Далее
-
+
Let's double check your seed phrase
Давайте перепроверим ваш seed ключ
-
+
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.
Ваш seed ключ важен, и поэтому мы хотим убедиться, что вы его сохранили. Мы зададим вам три разных вопроса о вашем seed ключе, чтобы убедиться, что вы сможете легко восстановить свой кошелек, когда захотите.
-
+
Enter the
-
+
word
-
+
Check
Проверить
-
+
Enter the same password to confirm
Введите тот же пароль для подтверждения
-
+
Continue
Продолжить
@@ -2178,150 +2327,167 @@ Try again or select 'Allow custom seed' to continue.
NotificationsModal
-
+
Matching
Матчинг
-
+
Order Matching
Матчинг ордеров
-
+
Matched
Сматчен
-
+
Order Matched
Ордер сматчен
-
+
Ongoing
В процессе
-
+
Swap Ongoing
Обмен продолжается
-
+
Successful
Успешно
-
+
Swap Successful
Обмен успешно завершен
-
+
Refunding
Проводится возврат
-
+
Failed
Не завершено
-
+
Swap Failed
Обмен не был завершен
-
+
Unknown
Неизвестно
-
+
Unknown State
Статус неизвестен
-
+
Swap status updated
Обновление статуса Свопа
-
+
You sent %1
Вы отправили %1
-
+
You received %1
Вы получили %1
-
+
Your wallet balance changed
Баланс вашего кошелька изменился
-
+
+ %1 Enable status
+ TICKER
+
+
+
+
Please check your internet connection (e.g. VPN service or firewall might block it).
Пожалуйста, проверьте ваше интернет-соединение (например, служба VPN или брандмауэр могут блокировать подключение).
-
+
Failed to enable %1
TICKER
Не получается включить %1
-
+
+ Failed to disable %1
+ TICKER
+
+
+
+
Endpoint not reachable
Эндпоинт не доступен
-
+
Could not reach to endpoint
Не удалось подключиться
-
+
Mismatch at %1 custom asset configuration
TICKER
Несоответствие в конфигурации актива %1
-
+
Application needs to be restarted for %1 custom asset.
TICKER
Необходимо перезапустить приложение для %1.
-
+
Batch %1 failed. Reason: %2
Группа %1 .не удалась. Причина: %2
-
+
Show
Показать
-
+
Restart
Перезапустить
-
+
Quit
Выйти
-
- There isn't any notification
- Нет новых уведомлений
+
+ Notifications
+
+
+
+
+ There aren't any notifications
+
-
+
Mark all as read
Отметить все как прочитанные
@@ -2329,46 +2495,97 @@ Try again or select 'Allow custom seed' to continue.
OrderForm
-
+
Price
Цена
-
+
+ Reduce 1% relative to CEX market price.
+
+
+
+
+ Use CEX market price.
+
+
+
+
+ Increase 1% relative to CEX market price.
+
+
+
+
Volume
Объем
-
+
Amount to sell
Сумма для продажи
-
+
Amount to receive
Получаемая сумма
-
- Min volume:
- Мин. объем:
+
+ Max
+ Макс
+
+
+
+ Swap 25% of your tradable balance.
+
+
+
+
+ Swap 50% of your tradable balance.
+
- How to use the pro-view slider ?
- Как использовать pro-view слайдер?
+ Swap 100% of your tradable balance.
+
+
+
+
+ Min Volume
+
+
+
+
+ Min amount to sell
+
+
+
+
+ Min amount to receive
+
+
+
+
+ Minimum accepted trade equals 10% of order volume.
+
+
+
+
+ Minimum accepted trade equals 25% of order volume.
+
-
- This slider is used to setup the order requirements you need.
-Left slider: Sets the minimum amount required to process a trade.
-Right slider: Sets the volume you want to trade.
- Этот слайдер используется для настройки желаемых параметров сделки.
-Левый слайдер: Задает минимальный объем для начала обмена.
-Правый слайдер: Задает объем который вы хотите обменять.
+
+ Minimum accepted trade equals 50% of order volume.
+
+
+
+
+ Min volume:
+ Мин. объем:
-
+
Use custom minimum trade amount
Задать минимальный объем сделки
@@ -2376,7 +2593,7 @@ Right slider: Sets the volume you want to trade.
OrderLine
-
+
Funds are recoverable
Средства могут быть восстановлены
@@ -2392,103 +2609,114 @@ Right slider: Sets the volume you want to trade.
OrderModal
-
+
Swap Details
Детали свопа
-
+
Order Details
Детали ордера
-
+
Order Type
-
+
Maker Order
Мейкер ордер
-
+
Taker Order
Тейкер ордер
-
+
Refund State
Статус рефанда
-
+
Your swap failed but the auto-refund process for your payment started already. Please wait and keep application opened until you receive your payment back
Обмен не был завершен, но процесс автоматического рефанда уже начался. Пожалуйста, подождите, оставляя приложение открытым, пока вы не получите свои средства
-
+
Date
Дата
-
- ID
- ID
+
+ Error ID
+ ID ошибки
-
- Maker Payment Sent ID
- ID отправки платежа мейкера
+
+
+ Error Log
+ Лог ошибки
-
- Maker Payment Spent ID
- ID spend платежа мейкера
+
+ Close
+ Закрыть
-
- Taker Payment Spent ID
- ID spend платежа тейкера
+
+ Cancel Order
+ Отменить ордер
-
- Taker Payment Sent ID
- ID отправки платежа тейкера
+
+
+ Swap ID
+ ID обмена
-
- Error ID
- ID ошибки
+
+ Maker Payment Sent Transaction ID
+
-
-
- Error Log
- Лог ошибки
+
+ Maker Payment Spent Transaction ID
+
-
- Close
- Закрыть
+
+ Maker Payment TXID
+
-
- Cancel Order
- Отменить ордер
+
+ Taker Payment Spent Transaction ID
+
+
+
+
+ Taker Payment Sent Transaction ID
+
+
+
+
+ Taker Payment TXID
+
-
+
Recover Funds
Восстановить средства
-
+
Refunding...
Возмещается...
-
+
View on Explorer
Показать в эксплорере
@@ -2509,23 +2737,23 @@ Please select a new order.
OK
-
+ OK
OrdersPage
-
+
From
От
-
+
To
Кому
-
+
Export CSV
Скачать CSV
@@ -2541,17 +2769,17 @@ Please select a new order.
Дата
-
+
Apply Filter
Применить фильтр
-
+
Cancel All
-
+
Please choose the CSV export name and location
Выберите название и расположение загружаемого файла
@@ -2567,43 +2795,39 @@ Please select a new order.
PasswordField
-
+
Password
Пароль
-
+
Enter your wallet password
Введите пароль вашего кошелька
-
+
At least 1 lowercase alphabetical character
Как минимум 1 строчная буква
-
+
At least 1 uppercase alphabetical character
Как минимум 1 заглавная буква
-
+
At least 1 numeric character
Как минимум 1 цифра
-
+
At least 1 special character (eg. !@#$%)
Как минимум 1 специальный символ (!@#$%)
-
-
- At least %n character(s)
-
- Не менее %n символов
- Не менее %n символов
- Не менее %n символов
-
+
+
+ Between %1 and %2 character(s)
+
@@ -2637,14 +2861,14 @@ Please select a new order.
Поиск актива
-
+
Show only coins with balance
Показывать только монеты с балансом
-
+
(%1/%2)
-
+ (%1/%2)
@@ -2655,38 +2879,38 @@ Please select a new order.
PriceLine
-
+
Set swap price for evaluation
Установите цену для оценки
-
+
Exchange rate
Обменный курс
-
+
Selected
Выбрано
-
+
Expensive
Невыгодный курс
-
+
Expedient
Выгодный курс
-
+
%1 compared to CEX
PRICE_DIFF%
%1 по сравнению с CEX
-
+
CEXchange rate
CEXchange Цена
@@ -2695,36 +2919,31 @@ Please select a new order.
PriceLineSimplified
- Set swap price for evaluation
- Установите цену для оценки
-
-
-
Exchange rate
Обменный курс
-
+
Selected
Выбрано
-
+
CEXchange rate
CEXchange Цена
-
+
Expensive
Невыгодный курс
-
+
Expedient
Выгодный курс
-
+
%1 compared to CEX
PRICE_DIFF%
%1 по сравнению с CEX
@@ -2733,12 +2952,12 @@ Please select a new order.
ProView
-
+
Failed to place the order
Не удалось разместить ордер
-
+
Placed the order
Ордер размещен
@@ -2755,22 +2974,29 @@ Please select a new order.
ReceiveModal
- Receive
- Получить
+ Receive %1
+ TICKER
+
+
+
+
+ Only send %1 to this address
+ TICKER
+
-
- Only send %1 to this address:
+
+ %1 address
TICKER
-
+
copied to clipboard.
-
+
Close
Закрыть
@@ -2778,74 +3004,97 @@ Please select a new order.
RecoverSeedModal
-
-
+
+
View seed and private keys
Показать seed-фразу и приватные ключи
-
+
Please enter your password to view the seed.
Введите пароль для отображения seed ключа.
-
+
Seed
-
+
Backup Seed
-
+
Public Address copied to clipboard
-
+
Cancel
Отменить
-
-
+
+ Incorrect Password
+ Неправильный пароль
+
+
+
+
copied to clipboard
скопировано в буфер
-
-
+
+
RPC Password
RPC Пароль
-
+
Search a coin.
Поиск актива.
-
+
Public Address
Публичный адрес
-
+
Private Key copied to clipboard
-
+
Private Key
Приватный ключ
-
+
View
Показать
+
+ RemoveContactPopup
+
+
+ Do you want to remove this contact ?
+ Вы действительно хотите удалить этот контакт?
+
+
+
+ Yes
+ Да
+
+
+
+ No
+ Нет
+
+
RestartModal
@@ -2885,7 +3134,7 @@ Please select a new order.
SearchField
-
+
Search
Поиск
@@ -2893,149 +3142,162 @@ Please select a new order.
SendModal
-
+
Failed to send
Ошибка отправки
-
- Failed to Send
- Отправка не прошла
-
-
-
+
Prepare to send
Подготовить к отправке
-
+
Address of the recipient
Адрес получателя
-
+
Amount to send
Сумма для отправки
-
+
Gas price
Цена газа
-
+
Recipient's address
Адрес получателя
-
+
The address has to be mixed case.
Адрес должен быть написан в смешанном регистре.
-
+
+ Failed to Broadcast
+
+
+
+
Fix
Фикс
-
+
MAX
МАКС
-
+
Fiat amount: Unavailable
-
+
Fiat amount: %1
-
+
%1 amount: %2
-
+
Specify in Fiat
-
+
Specify in Crypto
-
+
Enable Custom Fees
Включить настройку комиссий
-
- Only use custom fees if you know what you are doing!
- Используйте настраиваемые комиссии только если знаете, что делаете!
-
-
-
+
Enter the custom fee
Введите комиссию сети
-
+
Gas Limit
Gas лимит
-
+
Custom Fee can't be higher than the amount
Комиссия не может больше общей суммы транзакции
-
+
Not enough funds.
Недостаточно средств.
-
+
+
You have %1
AMT TICKER
У вас %1
-
+
+
+ Only use custom fees if you know what you are doing!
+
+
+
+
Close
Закрыть
-
+
Prepare
Подготовка
-
-
+
+
Send
Отправить
-
+
+ %1 address
+ TICKER
+
+
+
+
+ copied to clipboard.
+
+
+
+
Amount
Сумма
-
+
Fees
Комиссия
-
+
Date
Дата
-
+
Back
Назад
@@ -3043,22 +3305,22 @@ Please select a new order.
SendModalContactList
-
+
Select a contact with an %1 address
Выберите контакт с %1 адресом
-
+
Search for contacts...
Поиск по контактам...
-
+
%1 addresses
%1 адреса
-
+
1 address
1 адрес
@@ -3087,42 +3349,60 @@ Please select a new order.
SendResult
-
+
Transaction Complete!
Транзакция завершена!
-
+
+ %1 txid
+ TICKER
+
+
+
+
+
+ copied to clipboard.
+
+
+
+
Recipient's address
Адрес получателя
-
+
+ %1 address
+ TICKER
+
+
+
+
Amount
Общая сумма транзакции
-
+
Fees
Комиссия сети
-
+
Date
Дата
-
+
Transaction Hash
Хэш транзакции
-
+
Close
Закрыть
-
+
View on Explorer
Смотреть в эксплорере
@@ -3130,281 +3410,240 @@ Please select a new order.
SettingModal
-
- Confirm Logout
- Подтвердите выход
-
-
-
- Are you sure you want to log out?
- Вы действительно хотите выйти?
-
-
-
- Yes
- Да
-
-
-
-
+
+
Cancel
Отмена
-
+
Settings
Настройки
-
+
Language
Язык
-
+
User Interface
Интерфейс
-
+
Security
Приватность
-
+
General
Общие
-
+
About & Version
О программе
-
+
Enable Desktop Notifications
Включить уведомления для рабочего стола
-
+
Maximum number of enabled coins
Макс. количество активированных монет
-
+
Logs
Логи
-
+
Open Folder
Открыть папку с логами
-
-
+
+
Reset wallet configuration
Сбросить конфигурацию кошелька
-
+
This will restart your wallet with default settings
Эта опция перезапустит ваш кошелек с настройками по умолчанию
-
+
+
Confirm
Подтвердить
-
+
Changing theme to %1
Изменить тему на %1
-
+
+ Disable 2FA?
+
+
+
+
+ Enter your wallet password to confirm
+
+
+
+
+ Type password
+ Введите пароль
+
+
+
+ 2FA status
+
+
+
+
+ 2FA disabled successfully
+
+
+
+
+
+ Ok
+ Ок
+
+
+
+ Wrong password!
+
+
+
+
+ Wallet password is incorrect
+
+
+
+
Application Version
-
+
copied to clipboard
скопировано в буфер
-
+
Reset
Сбросить
-
+
Current Font
Текущий шрифт
-
+
Current font changed to %1.
Текущий шрифт изменен на %1.
-
+
Theme
Тема
-
+
Ask system's password before sending coins ? (2FA)
Спрашивать системный пароль перед отправкой монет? (2FA)
-
+
Application version
Версия приложения
-
+
MM2 version
Версия MM2
-
+
MM2 Version
Версия MM2
-
+
MM2 Version copied to clipboard.
Версия MM2 скопирована в буфер обмена.
-
+
Qt version
Версия Qt
-
+
Qt Version
Версия Qt
-
+
Qt Version copied to clipboard.
Версия Qt скопирована в буфер обмена.
-
+
Search Update
Проверить на обновления
-
+
Logout
Выход
-
-
-
-
-
-
+
View seed and private keys
Показать seed-фразу и приватные ключи
-
-
+
+
Show
Показать
-
+
Setup Camouflage Password
Установить камуфляжный пароль
-
+
Open
Установить
-
+
Disclaimer and ToS
Дисклеймер и Условия Использования
-
- Settings
-
-
- Fiat
- Фиат
-
-
-
- Recommended:
- Рекомендации:
-
-
-
- Enable Desktop Notifications
- Включить уведомления для рабочего стола
-
-
-
- Use QtTextRendering Or NativeTextRendering
- Использовать QtTextRendering или NativeTextRendering
-
-
-
- Open Logs Folder
- Открыть папку с логами
-
-
-
- View seed and private keys
- Показать seed-фразу и приватные ключи
-
-
-
- Disclaimer and ToS
- Дисклеймер и TOS
-
-
-
- Setup Camouflage Password
- Установить камуфляжный пароль
-
-
-
- Reset wallet configuration
- Сбросить конфигурацию кошелька
-
-
-
- Delete Wallet
- Удалить кошелек
-
-
-
- Log out
- Выйти
-
-
-
- mm2 version
- версия MM2
-
-
Sidebar
-
- Search coin
- Поиск монеты
+
+ Search
+ Поиск
-
+
Add asset
Добавить крипто актив
@@ -3460,7 +3699,7 @@ Please select a new order.
Token
-
+ Токен
@@ -3516,32 +3755,32 @@ Please select a new order.
От
-
+
To
Кому
-
+
Cancel
Отменить
-
+
Apply filter
Применить фильтр
-
+
Export
Экспорт
-
+
Please choose the CSV export name and location
Выберите название и расположение экспортируемого CSV файла
-
+
No results found
Ничего не найдено
@@ -3550,57 +3789,57 @@ Please select a new order.
SubOrders
-
+
Orders
Ордеры
-
+
Close filtering options.
Закрыть настройки фильтра.
-
+
Filter
Фильтр
-
+
Date
Дата
-
+
Open filtering options.
Открыть настройки фильтра.
-
+
Filter settings
-
+ Настройки фильтра
-
+
From
От
-
+
To
Кому
-
+
Cancel
Отменить
-
+
Apply filter
Применить фильтр
-
+
No results found
Не найдено результатов
@@ -3734,7 +3973,7 @@ Network fees can vary greatly depending on your selected trading pair.
Журнал изменений
-
+
Open Logs Folder
Открыть папку с логами
@@ -3742,31 +3981,23 @@ Network fees can vary greatly depending on your selected trading pair.
SwapProgress
-
+
act
SHORT FOR ACTUAL TIME
фактич
-
+
est
SHORT FOR ESTIMATED
прибл
-
+
Progress details
Прогресс
-
- SweetDexComboBox
-
-
- Search
- Поиск
-
-
TextAreaWithTitle
@@ -3781,14 +4012,17 @@ Network fees can vary greatly depending on your selected trading pair.
- TextEditWithTitle
+ TextEditWithCopy
-
- Swap ID
- ID обмена
+
+ copied to clipboard
+ скопировано в буфер
+
+
+ TextEditWithTitle
-
+
copied to clipboard
скопировано в буфер
@@ -3796,7 +4030,7 @@ Network fees can vary greatly depending on your selected trading pair.
TextFieldWithTitle
-
+
Required
Обязательное поле
@@ -3812,22 +4046,32 @@ Network fees can vary greatly depending on your selected trading pair.
Trade
-
+
Swap
Обменять
-
+
Instant trading with best orders
Быстрая торговля с лучшими ордерами
-
+
+ Reset form
+
+
+
+
+ You have no tradable assets
+
+
+
+
From
От
-
+
Enter an amount
Введите количество
@@ -3847,121 +4091,111 @@ Network fees can vary greatly depending on your selected trading pair.
Выберите ордер
-
+
Price
Цена
-
+
Better price found: %1. Updating forms.
Найдена цена лучше: %1.Обновляю форму.
-
+
Better price (%1) found but received quantity (%2) is lower than your current one (%3). Click here to update the selected order.
Лучшая цена (%1) была обнаружена но количество (%2) меньше чем в вашем текущем ордере (%3).Нажмите чтобы обновить выбранный ордер.
-
- Reset form.
- Сбросить форму.
-
-
-
- You have no tradable assets.
-
-
-
-
+
%1
-
+ %1
-
+
Tradable:
Доступно:
-
+
Min: %1
Мин: %1
-
+
Pick a coin
Выберите монету
-
+
SWAP NOW
-
+
Failed to place the order
Не удалось разместить ордер
-
+
Placed the order
Ордер размещен
-
+
Entered amount must be superior than 0.
Введенная сумма должна быть больше 0.
-
+
You must select an order.
Вы должны выбрать ордер.
-
+
Entered amount is below the minimum required by this order: %1
Введнная сумма меньше минимальной для этого ордера: %1
-
-
+
+
%1 needs to be enabled in order to use %2
%1 должен быть активным для использования %2
-
-
+
+
%1 balance needs to be funded, a non-zero balance is required to pay the gas of %2 transactions
нужно пополнить баланс %1 для оплаты газа %2 транзакций
-
+
%1 balance does not have enough funds to pay the gas of %2 transactions
-
+
No buy orders found for %1.
Не найдено ордеров на покупку дл] %1.
-
+
You can check later or try to sell a different coin.
Вы можете попробовать позже или попробовать продать другой актив.
-
+
Calculating fee estimate...
-
+
Total %1 fees:
Всего %1 комиссий:
-
+
%2 (%3)
-
+ %2 (%3)
@@ -3978,31 +4212,26 @@ Network fees can vary greatly depending on your selected trading pair.
- Chart
- График
-
-
-
Ticker Selectors
-
+
Trading Information
Торговая информация
-
+
Order Book
Ордербук
-
+
Best Orders
Лучшие ордеры
-
+
Place Order
Разместить ордер
@@ -4010,77 +4239,88 @@ Network fees can vary greatly depending on your selected trading pair.
TransactionDetailsModal
-
+
Transaction Details
Детали транзакции
-
+
+ %1 txid
+ TICKER
+
+
+
+
+ copied to clipboard.
+
+
+
+
Amount
Сумма
-
+
Fees
Комиссия сети
-
+
+ From address
+
+
+
+
+ To address
+
+
+
+
Date
Дата
-
+
Unconfirmed
Не подтверждена
-
+
Transaction Hash
Хэш транзакции
-
- Transactions
-
-
-
-
- txid copied to clipboard
-
-
-
-
+
Confirmations
Подтверждения
-
+
Block Height
Блок
-
+
From
От
-
+
To
Получатель
-
+
Notes
Заметки
-
+
Close
Закрыть
-
+
View on Explorer
Смотреть в эксплорере
@@ -4088,22 +4328,22 @@ Network fees can vary greatly depending on your selected trading pair.
Transactions
-
+
Received
Получено
-
+
Sent
Отправлено
-
+
fees
комиссии
-
+
Unconfirmed
Не подтверждена
@@ -4124,20 +4364,6 @@ Network fees can vary greatly depending on your selected trading pair.
Ордербук
-
- WalletNameField
-
-
- Wallet Name
- Название кошелька
-
-
-
- Enter the name of your wallet here
- Введите название для вашего кошелька
- Название кошелька
-
-
WalletsView
@@ -4161,123 +4387,160 @@ Network fees can vary greatly depending on your selected trading pair.
-
+
My Wallets
Мои кошельки
-
+
No wallets found!
-
-
+
+
Delete
Удалить
-
+
Enter password to confirm deletion of
Введите пароль чтобы подтвердить удаление
-
+
wallet
кошелек
-
+
Type password
Введите пароль
-
+
Cancel
Отменить
-
-
+
+
Wallet status
Статус кошелька
-
+
wallet deleted successfully
кошелек успешно удален
-
-
+
+
Ok
Ок
-
+
wallet password is incorrect
введен неправильный пароль
+
+ ZcashParamsModal
+
+
+ %1 Activation Failed!
+
+
+
+
+ To activate ZHTLC coins, you need to download the Zcash Params.
+This might take a few minutes...
+
+
+
+
+ Download params & enable coins
+
+
+
+
+ More Info
+
+
+
+
+ Close
+ Закрыть
+
+
+
+ atomic_dex::settings_page
+
+
+ An error has occurred.
+
+
+
atomic_dex::wallet_page
-
+
You do not have enough funds.
У вас не достаточно средств.
-
+
%1 is not activated: click on the button to enable it or enable it manually
%1 не активирован: нажмите на кнопку чтобы активировать или сделайте это вручную
-
+
You need to have %1 to pay the gas for %2 transactions.
Вам нужен %1 для оплаты газа за %2 транзакции.
-
+
Checksum verification failed for %1.
Checksum верфикация неуспешна для %1.
-
+
Invalid checksum for %1. Click the button to convert to mixed case address.
-
+
Legacy address used for %1. Click the button to convert to a Cashaddress.
-
+
%1 address must be prefixed with 0x
%1 адрес должен начинаться с 0x
-
+
%1 address length is invalid, please use a valid address.
%1 длина адреса не валидна, пожалуйста используйте валидный адрес.
-
+
%1 address is invalid.
некорректный адрес %1.
-
+
Invalid checksum.
Неверная чек-сумма.
-
+
%1 address has invalid prefixes.
у адреса %1 неверный префикс.
-
+
Backend error: %1
Ошибка бэкенда: %1
@@ -4285,32 +4548,12 @@ Network fees can vary greatly depending on your selected trading pair.
main
-
+
Logout
Выход
-
- Confirm Logout
- Подтверждение выхода
-
-
-
- Are you sure you want to log out?
- Вы действительно хотите выйти?
-
-
-
- Yes
- Да
-
-
-
- Cancel
- Отменить
-
-
-
+
Balance
Баланс
diff --git a/atomic_defi_design/assets/languages/atomic_defi_tr.ts b/atomic_defi_design/assets/languages/atomic_defi_tr.ts
index 0fb96a72fb..d688587fed 100644
--- a/atomic_defi_design/assets/languages/atomic_defi_tr.ts
+++ b/atomic_defi_design/assets/languages/atomic_defi_tr.ts
@@ -1,42 +1,96 @@
+
+ AddAddressForm
+
+
+ Use standard network address
+
+
+
+
+ Label
+
+
+
+
+ This key already exists.
+ Bu anahtar zaten mevcut.
+
+
+
+ Address
+ Adres
+
+
+
+
+ Cancel
+ İptal
+
+
+
+ Convert
+
+
+
+
+ Edit
+ Düzenle
+
+
+
+ Add
+ Ekle
+
+
+
+ You need to enable %1 before adding this kind of address.
+
+
+
+
+ Enable
+ Etkinleştir
+
+
AddCustomCoinModal
-
+
Choose the asset type
Varlık türünü seçin
-
+
Cancel
İptal
-
-
-
+
+
+
Next
İleri
-
+
Enter the contract address
Kontrat adresini girin
-
+
Choose the asset ticker
Varlık kodunu girin
-
+
Ticker
Varlık Kodu
-
+
Enter the ticker
Varlık kodunu girin
@@ -46,439 +100,165 @@
Kontrat adresini şuradan alın
-
+
Contract address
-
+
Get the contract address from
Kontrat adresini şuradan alın
-
-
-
-
+
+
+
+
Previous
Geri
-
+
Choose the asset logo
Varlık logosunu seçin
-
+
Browse
Göz at
-
+
Please choose the asset logo
Lütfen varlık logosunu seçin
-
+
Configuration
Konfigürasyon
-
+
All configuration fields will be fetched using the contract address you provided.
Tüm konfigürasyon bilgileri verdiğiniz kontrat adresinden edinilip doldurulacak.
-
+
Name
İsim
-
+
Enter the name
İsmi girin
-
+
Coingecko ID
Coingecko ID
-
+
Enter the Coingecko ID
Coingecko ID'sini girin
-
+
Get the Coingecko ID
Coingecko ID'si al
-
+
Active
Aktif
-
-
+
+
Preview
Görüntüle
-
+
WARNING: Application will restart immidiately to apply the changes!
DİKKAT: Program değişiklikleri uygulamak için yeniden başlatılacak!
-
+
Asset not found, please go back and make sure Contract Address is correct
Varlık bulunamadı, lütfen geri dönün ve Kontrat Adresi'nin doğruluğundan emin olun
-
+
Config Fields
Konfig Alanları
-
+
Fetched Data
Çekilen Veri
-
+
Submit & Restart
Yolla ve Yeniden Başlat
- AddressBook
-
-
- Address Book
- Adres Defteri
-
-
-
- New Contact
- Yeni Kişi
-
-
-
- Search a contact by name or tags
- İsim ya da etiket ile kişi ara
-
-
-
- Name
- İsim
-
-
-
- Tags (first 6)
- Etiket
-
-
-
- Actions
- Eylemler
-
-
-
- Edit
- Düzenle
-
-
-
- Remove
- Kaldır
-
-
-
- Do you want to remove this contact ?
- Bu kişiyi kaldırmak istiyor musunuz ?
-
-
-
- Yes
- Evet
-
-
-
- No
- Hayır
-
-
-
- AddressBookAddContactAddressModal
-
-
- Create a new address
- Yeni bir adres oluştur
-
-
-
- Edit address entry
- Adres girdisini düzenleyin
-
+ AddTagPopup
-
- Selected wallet: %1
+
+ Tag name
-
- NONE
+
+ Contact already has this tag.
-
- Enter a name
- Bir ad girin
-
-
-
- This key already exists.
- Bu anahtar zaten mevcut.
-
-
-
- Enter the address
- Adresi girin
-
-
-
- Validate
- Geçerle
-
-
-
- Cancel
- İptal
-
-
-
- Convert
+
+ + ADD
- AddressBookEditContactModal
-
-
- Edit contact
- Kişiyi düzenle
-
-
-
- Contact Name
- Kişi Adı
-
-
-
- Enter a contact name
- Bir kişi adı girin
-
-
-
- Address List
- Adres Listesi
-
-
-
- Search for an address entry.
- Bir adres girdisi arayın.
-
-
-
- Type
- Tür
-
-
-
- Key
- Anahtar
-
-
-
- Address
- Adres
-
-
-
- Actions
- Eylemler
-
-
-
- Add Address
-
-
-
-
- Tags
- Etiketler
-
-
-
- +
- +
-
-
-
- Confirm
- Onayla
-
-
-
-
- Cancel
- İptal
-
-
-
- The selected address belongs to a disabled coin, you need to enabled it before sending.
- Seçilen adres devre dışı bırakılmış bir koine aittir, göndermeden önce etkinleştirmeniz gerekir.
-
-
-
- Enable
- Etkinleştir
-
-
-
- Cannot send to this address
- Bu adrese gönderilemiyor
-
-
-
- Your balance is empty
- Bakiyeniz boş
-
-
-
- Ok
- Tamam
-
-
-
- Remove address ?
-
-
-
-
- Yes
- Evet
-
-
-
- No
- Hayır
-
-
-
- AddressBookNewContactCategoryModal
-
-
- Add a new tag
- Yeni etiket ekle
-
-
-
- Enter the tag name
- Etiket adı girin
-
-
-
- This contact already has this tag
- Bu kişi zaten bu etikete sahip
-
-
-
- Add
- Ekle
-
+ AmountChart
-
- Cancel
- İptal
+
+ Work in progress
+ İş devam ediyor
- AddressBookNewContactModal
-
-
- Create a new contact
- Yeni bir kişi ekle
-
-
-
- Enter the contact name
- Kişi adını girin
-
-
-
- This contact name already exists.
- Bu kişi adı zaten mevcut.
-
-
-
- Confirm
- Onayla
-
+ App
-
- Cancel
- İptal
+
+ Recover Funds Result
+ Fon Kurtarma Sonucu
- AddressBookSendWalletSelector
+ AssetFromStandardSelector
-
+
Choose a valid
- Geçerli bir
+ Geçerli bir
-
- coin
- koin seçin
-
-
-
- AddressBookWalletTypeList
-
-
- %1 is not enabled - You need to enable it before adding an address. Enable it ?<br><a href='#'>Yes</a> - <a href='#no'>No</a>
+
+ asset
-
-
- AddressBookWalletTypeListModal
-
-
- Select wallet type
- Cüzdan türünü seçin
-
-
- Search
- Ara
-
-
-
- AmountChart
-
-
- Work in progress
- İş devam ediyor
+
+ Search an asset
+
-
-
- App
-
- Recover Funds Result
- Fon Kurtarma Sonucu
+
+ Disabled
+
@@ -522,7 +302,12 @@
-
+
+ Activating:
+
+
+
+
Price provider is: %1
@@ -530,20 +315,71 @@
Bottom
-
+
Settings
Ayarlar
-
+
Support
Destek
-
+
Privacy
Gizlilik
+
+
+ Disable Privacy?
+
+
+
+
+ Enter wallet password to confirm
+
+
+
+
+ Type password
+
+
+
+
+ Confirm
+ Onayla
+
+
+
+ Cancel
+ İptal
+
+
+
+ Privacy status
+
+
+
+
+ Privacy mode disabled successfully
+
+
+
+
+
+ Ok
+ Tamam
+
+
+
+ Wrong password!
+
+
+
+
+ wallet password is incorrect
+
+
CamouflagePasswordModal
@@ -553,47 +389,47 @@
Kamuflaj Parolasını Ayarla
-
+
Camouflage Password is a secret password for emergency situations.
Kamuflaj Parolası acil durumlar için olan gizli bir paroladır.
-
+
Using it to login will display your balance lower than it actually is.
Bu parolayla giriş yapınca bakiyeniz normalinden daha az görünecektir.
-
+
Here you enter the suffix and at login you need to enter {real_password}{suffix}
Buraya son eki gireceksiniz, giriş yaparken ise {gerçek_şifre}{son ek} şeklinde giriş yapacaksınız
-
+
Password suffix
-
+
Confirm pasword suffix
-
+
Enter a password suffix
-
+
Enter the same password suffix to confirm
-
+
Cancel
İptal
-
+
Save
Kaydet
@@ -665,17 +501,12 @@
Chart
-
- Chart
- Grafik
-
-
-
+
Loading market data
-
+ Piyasa bilgisi yükleniyor
-
+
There is no chart data for this pair yet
Bu parite için henüz grafik verisi yok
@@ -683,118 +514,118 @@
ClaimRewardsModal
-
+
Failed to prepare to claim rewards
Ödül alımı hazırlığı başarısız sonuçlandı
-
+
Claim your %1 reward?
TICKER
%1 ödülünüzü alacak mısınız?
-
+
No UTXOs eligible for claiming
Ödül alımı için uygun UTXO yok
-
+
Transaction fee is higher than the reward!
İşlem ücreti ödülden daha yüksek!
-
+
You will receive
-
+
Refresh
Yenile
-
+
Read more about KMD active users rewards
KMD aktif kullanıcı ödülleri hakkında daha fazla bilgi
-
+
UTXO
UTXO
-
+
Amount
Miktar
-
+
Reward
Ödül
-
+
Accruing Start
Tahakkuk Başlangıcı
-
+
Accruing Stop
Tahakkuk Bitişi
-
+
Time Left
Kalan Zaman
-
+
Error
Hata
-
+
Locktime is not set
Kilit süresi ayarlanmamış
-
+
Locktime is less than the threshold
Kilit süresi limitin altında
-
+
UTXO height is greater than end of the era
UTXO uzunluğu dönem sonundan daha büyük
-
+
UTXO amount is less than 10
UTXO miktarı 10'dan az
-
+
One hour did not pass yet
Henüz bir saat geçmedi
-
+
Transaction is in mempool
İşlem mempool'da
-
+
Unknown problem
Bilinmeyen hata
-
+
Cancel
İptal
-
+
Confirm
Onayla
@@ -802,33 +633,41 @@
CoinMenu
-
+
Disable %1
TICKER
%1'i Etkisizleştir
-
+
Disable and Delete %1
TICKER
%1'i Etkisizleştir ve Sil
-
+
Disable all %1 assets
Tüm %1 türü varlıkları etkisizleştir
-
+
Disable all assets
Tüm varlıkları etkisizleştir
-
+
Disable 0 balance assets
+
+ ComboBoxWithSearchBar
+
+
+ Search
+ Ara
+
+
Combo_fiat
@@ -893,74 +732,83 @@
ConfirmTradeModal
-
+
Confirm Exchange Details
Al-Sat Detaylarını Onayla
-
+
This swap request can not be undone and is a final event!
Bu takas isteği geri döndürülemez!
-
+
Security configuration
Güvenlik yapılandırması
-
- dPoW protected
- dPoW korumalı
-
-
-
-
+
Read more about dPoW
dPoW hakkında daha fazla bilgi
-
+
Use custom protection settings for incoming %1 transactions
TICKER
%1 işlemleri için özel güvenlik ayarları kullan
-
+
Enable Komodo dPoW security
Komodo dPoW güvenliğini etkinleştir
-
+
%1 confirmations for incoming %2 transactions
Gelen %2 işlemleri için %1 onay
-
+
This transaction can take up to 60 mins - DO NOT close this application!
Bu işlem 60 dakikayı bulabilir - Programı KAPATMAYINIZ!
-
+
+ Trade price is more than 50% different to CEX! Confirm?
+
+
+
+
+ Loading fees...
+
+
+
+
<b>Total %1 fees:</b>
-
+
+ dPoW protected
+
+
+
+
Required Confirmations
Gereken Onaylar
-
+
Warning, this atomic swap is not dPoW protected!
Uyarı, bu atomik takas dPoW korumalı değil!
-
+
Cancel
İptal
-
+
Confirm
Onayla
@@ -976,186 +824,202 @@
Dashboard
-
+
The current number of enabled coins does not match your configuration specification. Your assets configuration will be reset.
Etkinleştirilmiş koinlerin mevcut sayısı yapılandırma ayarlarınızla eşleşmiyor. Varlık yapılandırmanız sıfırlanacak.
-
+
Matching
Eşleşiyor
-
+
Order Matching
Emir Eşleşiyor
-
+
Matched
Eşleşti
-
+
Order Matched
Emir Eşleşti
-
+
Ongoing
Devam ediyor
-
+
Swap Ongoing
Takas Devam Ediyor
-
+
Successful
Başarılı
-
+
Swap Successful
Takas Başarılı
-
+
Refunding
Geri ödeniyor
-
+
Failed
Başarısız
-
+
Swap Failed
Takas Başarısız
-
+
Unknown
Bilinmiyor
-
+
Unknown State
Bilinmeyen durum
-
+
Started
Başlatıldı
-
+
Negotiated
Pazarlık yapıldı
-
+
Taker fee sent
Alıcı ücreti gönderildi
-
+
Maker payment received
Yapıcı ödemesi alındı
-
+
Maker payment wait confirm started
Yapıcı ödemesi bekleme onayı başladı
-
+
Maker payment validated and confirmed
Yapıcı ödemesi doğrulandı ve onaylandı
-
+
Taker payment sent
Alıcı ödemesi gönderildi
-
+
Taker payment spent
Alıcı ödemesi harcandı
-
+
Maker payment spent
Yapıcı ödemesi harcandı
-
+
Finished
Tamamlandı
-
+
Start failed
Başlatılamadı
-
+
Negotiate failed
Pazarlık başarısız
-
+
Taker fee validate failed
Alıcı ücreti doğrulanamadı
-
+
Maker payment transaction failed
Yapıcı ödeme işlemi başarısız
-
+
Maker payment Data send failed
Yapıcı ödeme verileri gönderilemedi
-
+
Maker payment wait confirm failed
Yapıcı ödemesi bekleme onayı başarısız
-
+
Taker payment validate failed
Alıcı ödemesi doğrulanamadı
-
+
Taker payment wait confirm failed
Alıcı ödemesi bekleme onayı başarısız oldu
-
+
Taker payment spend failed
Alıcı ödeme harcaması başarısız oldu
-
+
Maker payment wait refund started
Yapıcı ödemesi bekleme iadesi başladı
-
+
Maker payment refunded
Yapıcı ödemesi iade edildi
-
+
Maker payment refund failed
Yapıcı ödeme iadesi başarısız
+
+ DatePicker
+
+
+ Date
+ Tarih
+
+
+
+ DefaultCopyIcon
+
+
+ copied to clipboard
+
+
+
DefaultRangeSlider
@@ -1169,6 +1033,14 @@
Maks
+
+ DefaultTextEdit
+
+
+ copied to clipboard
+
+
+
DeleteWalletModal
@@ -1211,7 +1083,7 @@
DexAppPasswordField
-
+
Type password
@@ -1219,34 +1091,32 @@
DexKeyChecker
-
+
At least 1 lowercase alphabetical character
En az 1 küçük harf
-
+
At least 1 uppercase alphabetical character
En az 1 büyük harf
-
+
At least 1 numeric character
En az 1 sayı
-
+
At least 1 special character (eg. !@#$%)
En az 1 özel karakter (ör. !@#$%)
-
-
- At least %n character(s)
-
- En az %n karakter
-
+
+
+ Between %1 and %2 character(s)
+
-
+
Password and Confirm Password have to be same
Parola ve Parola Doğrulaması aynı olmalıdır
@@ -1267,68 +1137,149 @@
Min
-
- Half
- Yarısı
+
+ Half
+ Yarısı
+
+
+
+ Max
+ Maks
+
+
+
+ DexSweetComboBox
+
+
+ Search
+ Ara
+
+
+
+ EditContactModal
+
+
+ Edit contact
+ Kişiyi düzenle
+
+
+
+ Contact name
+
+
+
+
+ Enter a contact name
+ Bir kişi adı girin
+
+
+
+ Address list
+
+
+
+
+ Address Book
+ Adres Defteri
+
+
+
+ address copied to clipboard
+
+
+
+
+ Edit
+ Düzenle
+
+
+
+ + Add
+
+
+
+
+ Tags
+ Etiketler
+
+
+
+ Add tag
+
+
+
+
+ Cancel
+ İptal
+
+
+
+ Confirm
+ Onayla
+
+
+
+ EnableAssetModal
+
+
+ The selected address belongs to a disabled asset, you need to enabled it before sending.
+
-
- Max
- Maks
+
+ Enable
+ Etkinleştir
-
-
- DexSweetComboBox
-
- Search
- Ara
+
+ Cancel
+ İptal
EnableCoinModal
-
+
Enable assets
Varlıkları etkineştir
-
+
Search asset
-
+
All assets are already enabled!
Bütün varlıklar zaten etkinleştirildi!
-
+
Change assets limit
Varlıkların limitini değiştirin
-
+
Select all assets
Tüm varlıkları seç
-
+
You can still enable %1 assets. Selected: %2.
Hala %1 varlık etkinleştirebilirsiniz. Seçilen: %2.
-
+
Add a custom asset
-
+
Close
Kapat
-
+
Enable
Etkinleştir
@@ -1341,27 +1292,27 @@
Sorumluluk Reddi & Kullanım Şartları
-
+
Accept EULA
Son Kullanıcı Lisans Sözleşmesi (EULA) 'ni kabul ediyorum
-
+
Accept Terms and Conditions
Şartları ve koşulları kabul ediyorum
-
+
Close
Kapat
-
+
Cancel
İptal
-
+
Confirm
Onayla
@@ -1397,17 +1348,50 @@
Ücretler hesaplanacak
+
+ GasInfoModal
+
+
+ How do I calculate gas?
+
+
+
+
+ Gas is measured in gwei. Gwei is just a unit of Ether, and is equal to 0.000000001 ETH (or the equivalent platform coin such as AVAX or BNB). The gas price varies over time depending on network congestion.
+
+
+
+
+ The gas limit is how many units of gas (maximum) you allocate to pay for a transaction. The gas required depending on the size of the transaction & data being transmitted.
+
+
+
+
+ A standard transaction not involving contracts uses 21,000 gas units, with any of the limit remaining returned to the source address.
+
+
+
+
+ Transactions involving contracts may result in the whole limit being consumed, so be careful not to set it too high.
+
+
+
+
+ For more information, read the article at <a href="https://support.mycrypto.com/how-to/sending/how-to-know-what-gas-limit-to-use">https://support.mycrypto.com/how-to/sending/how-to-know-what-gas-limit-to-use</a>
+
+
+
General
-
+
%n day(s)
%n gün
-
+
%nd
day
@@ -1415,7 +1399,7 @@
-
+
%nh
hours
@@ -1423,7 +1407,7 @@
-
+
%nm
minutes
@@ -1431,7 +1415,7 @@
-
+
%ns
seconds
@@ -1439,7 +1423,7 @@
-
+
%nms
milliseconds
@@ -1447,91 +1431,97 @@
-
+
-
-
-
+
<b>Taker tx fee:</b>
-
+
<b>Dex tx fee:</b>
-
+
<b>Dex fee:</b>
-
+
<b>Maker tx fee:</b>
-
+
%1 %2 %3 (%4)
%2 (%3) {1 %2 %3 ?} {4)?}
-
+
Trading Fee
Takas Ücreti
-
+
Minimum Trading Amount
Minimum Takas Hacmi
-
+
Wallet %1 already exists
WALLETNAME
%1 cüzdanı zaten mevcut
-
+
%1 balance is lower than the fees amount: %2 %3
%1 bakiye ücret tutarının altında: %2 %3
-
+
Tradable (after fees) %1 balance is lower than minimum trade amount
Takas edilebilir (ücretlerden sonra)%1 bakiyesi minimum işlem ücretinden düşük
-
+
Please fill the price field
Lütfen fiyat alanını doldurun
-
+
Please fill the volume field
- Lütfen hacim alanını doldurunuz
+
+
+
+
+
+ Please wait for %1 to fully activate
+
-
-
+
+
%1 volume is lower than minimum trade amount
%1 hacmi, minimum işlem ücretinden düşük
-
-
+
+
%1 needs to be enabled in order to use %2
-
-
+
+
%1 balance needs to be funded, a non-zero balance is required to pay the gas of %2 transactions
-
+
Unknown Error
Bilinmeyen Hata
@@ -1559,17 +1549,17 @@
CEX oranı
-
+
Price
Fiyat
-
+
Quantity
Miktar
-
+
Total
Toplam
@@ -1577,17 +1567,17 @@
ImportWallet
-
+
Failed to Import the wallet
-
+
Import wallet - Setup
-
+
Import wallet - Choose password
@@ -1597,59 +1587,89 @@
Cüzdan Adı
-
+
Enter seed
-
+
Your seed is not BIP39 compliant.
Try again or select 'Allow custom seed' to continue.
-
-
+
+
i understand
+ Anladım
+
+
+
+
+ я согласен
+
+
+
+
+
+ je comprends
+
+
+
+
+
+ entiendo
+
+
+
+
+
+ anladım
+
+
+
+
+
+ ich verstehe
-
+
Ok
Tamam
-
+
Allow custom seed
Özel Seed'e izin ver
-
+
<strong>Allow custom seed</strong>
-
+
Custom seed phrases might be less secure and easier to crack than a generated BIP39 compliant seed phrase or private key (WIF).<br><br>To confirm you understand the risk and know what you are doing, type <strong>'I understand'</strong> in the box below.
-
+ Özel çekirdek tümceler, oluşturulmuş bir BIP39 uyumlu çekirdek sözcük grubu veya özel anahtara (WIF).<br><br> Riski anladığınızı ve ne yaptığınızı bildiğinizi doğrulamak için lütfen aşağıdaki kutuya <strong>'Anladım'</strong> yazın.
-
+
I understand
-
+ Anladım
-
+
Next
İleri
-
+
Enter the same password to confirm
Doğrulamak için aynı parolayı giriniz
-
+
Continue
Devam
@@ -1684,16 +1704,21 @@ Try again or select 'Allow custom seed' to continue.
Best Orders
En İyi Emirler
+
+
+ Enter volume to see best orders.
+
+
ListDelegate
-
+
%1 is not enabled - Do you want to enable it to be able to select %2 best orders ?<br><a href='#'>Yes</a> - <a href='#no'>No</a>
%1 etkin değil - En iyi %2 siparişini seçebilmesi için etkinleştirmek istiyor musunuz ? <br><a href='#'>Evet</a> - <a href='#no'>Hayır</a>
-
+
This order requires a minimum amount of %1 %2 <br>You don't have enough funds.<br> %3
@@ -1732,17 +1757,52 @@ Try again or select 'Allow custom seed' to continue.
Login
-
+
Incorrect Password
Yanlış Parola
-
+
Log In
-
+
+ Cancel
+ İptal
+
+
+
+ LogoutModal
+
+
+ Exit %1 or go to login menu?
+
+
+
+
+ Warning: You currently have a swap in progress.
+Logging out may result in a failed swap.
+
+
+
+
+ Warning: You currently have open maker orders.
+They will be removed from the orderbook until you log in again.
+
+
+
+
+ Login menu
+
+
+
+
+ Exit
+
+
+
+
Cancel
İptal
@@ -1750,131 +1810,141 @@ Try again or select 'Allow custom seed' to continue.
Main
-
+
Segwit
-
+
Confirmation
-
+
Do you want to send your %1 funds to %2 wallet first?
-
+
Success
-
+
Your transaction is send, may take some time to arrive
-
+
Price
Fiyat
-
+
Change 24hr
-
+
Porfolio
-
+
Contract Address
-
+
Send
Gönder
-
+
Enable %1 ?
%1 Etkinleştirilsin mi ?
-
+
Yes
Evet
-
+
No
Hayır
-
+
Receive
Al
-
+
Swap
Takasla
-
+
is wallet only
-
+
Rewards
-
+
Faucet
Musluk
-
-
-
+
+
+
Public Key
-
+
Copied to Clipboard
Panoya Kopyalandı
-
+
Loading market data
Piyasa bilgisi yükleniyor
-
+
There is no chart data for this ticker yet
Henüz bu hisse senedi için grafik verisi yok
-
- No transactions
- İşlem yok
+
+ Fetching transactions...
+
+
+
+
+ Please wait, %1 is %2
+
+
+
+
+ % activated...
+
-
- Refreshing
- Yenileniyor
+
+ No transactions available
+
-
- Fetching transactions
- İşlemler alınıyor
+
+ Click to view your address on %1 (%2) block explorer
+
@@ -1882,54 +1952,102 @@ Try again or select 'Allow custom seed' to continue.
Al Sat
-
+
Trading Information
Al Sat Bilgisi
-
- Exchange Rates
- Döviz kurları
+
+ Chart
+ Grafik
-
+
Orders
Emirler
-
+
History
Tarihçe
-
+
Place Order
Emir Ver
-
+
Order Selected
Emir Seçildi
-
+
START SWAP
+ Takası başlat
+
+
+
+
+ Address Book
+ Adres Defteri
+
+
+
+ Search contact
+ Kişileri ara
+
+
+
+ + NEW CONTACT
+ Yeni bağlantı
+
+
+
+ Name
+ İsim
+
+
+
+ Tags
+ Etiketler
+
+
+
+ Edit
+ Düzenle
+
+
+
+ Delete
+ Sil
+
+
+
+ address copied to clipboard
+
+
+
+
+ This contact does not have any registered address.
MarketModeSelector
-
- Sell
- Sat
+
+ Sell %1
+ TICKER
+
-
- Buy
- Satın Al
+
+ Buy %1
+ TICKER
+
@@ -1976,51 +2094,84 @@ Try again or select 'Allow custom seed' to continue.
Fiyat
+
+ NewContactPopup
+
+
+ Contact name
+
+
+
+
+ This contact name already exists.
+ Bu kişi adı zaten mevcut.
+
+
+
+ + ADD
+
+
+
NewUpdateModal
-
-
-
+
+
+
Searching new updates
-
+
Fetching...
-
-
-
+
+
+
Close
Kapat
-
- Could not check new updates because of the following reason:
+
+ Could not check new updates for the following reason:
%1
-
+
New version found
-
+
+ Mandatory version found
+
+
+
+
%1 %2 is available !
-
+
+ This update is mandatory to continue using the application
+
+
+
+
+ Close Dex
+
+
+
+
Your application is updated.
-
+
Download
İndir
@@ -2028,112 +2179,112 @@ Try again or select 'Allow custom seed' to continue.
NewWallet
-
+
Wrong word, please check again
Hatalı kelime, lütfen kontrol ediniz
-
+
st
-
+
nd
-
+
rd
-
+
th
-
+
Failed to create a wallet
Cüzdan oluşturulamadı
-
+
New Wallet
Yeni Cüzdan
-
+
Confirm Seed
Seed'i Onayla
-
+
Choose Password
-
+
Important: Back up your seed phrase before proceeding!
Önemli: Devam etmeden önce seed kelimelerinizi yedekleyin!
-
+
We recommend storing it offline.
Çevrimdışı saklamanızı öneririz.
-
+
Generated Seed
Seed Oluştur
-
+
Seed phrase
-
+
copied to clipboard
-
+
Next
İleri
-
+
Let's double check your seed phrase
Seed kelimelerinizi tekrar kontrol edelim
-
+
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.
Seed kelimeleriniz önemlidir - bu yüzden doğru olduğundan emin olmak istiyoruz. Cüzdanınızı istediğiniz zaman kolayca kurtarabileceğinizden emin olmak için seed kelimeleriniz hakkında üç farklı soru soracağız.
-
+
Enter the
-
+
word
-
+
Check
-
+
Enter the same password to confirm
Doğrulamak için aynı parolayı giriniz
-
+
Continue
Devam
@@ -2164,150 +2315,167 @@ Try again or select 'Allow custom seed' to continue.
NotificationsModal
-
+
Matching
Eşleşiyor
-
+
Order Matching
Emir Eşleşiyor
-
+
Matched
Eşleşti
-
+
Order Matched
Emir Eşleşti
-
+
Ongoing
Devam ediyor
-
+
Swap Ongoing
Takas Devam Ediyor
-
+
Successful
Başarılı
-
+
Swap Successful
Takas Başarılı
-
+
Refunding
Geri ödeniyor
-
+
Failed
Başarısız
-
+
Swap Failed
Takas Başarısız
-
+
Unknown
Bilinmiyor
-
+
Unknown State
Bilinmeyen durum
-
+
Swap status updated
Takas durumu güncellendi
-
+
You sent %1
%1 gönderdiniz
-
+
You received %1
%1 aldınız
-
+
Your wallet balance changed
Cüzdan bakiyeniz değişti
-
+
+ %1 Enable status
+ TICKER
+
+
+
+
Please check your internet connection (e.g. VPN service or firewall might block it).
Lütfen internet bağlantınızı kontrol edin (ör. VPN hizmeti veya güvenlik duvarı bağlantıyı engelliyor olabilir).
-
+
Failed to enable %1
TICKER
%1 etkinleştirilemedi
-
+
+ Failed to disable %1
+ TICKER
+
+
+
+
Endpoint not reachable
Uç nokta ulaşılabilir değil
-
+
Could not reach to endpoint
Uç noktaya ulaşılamadı
-
+
Mismatch at %1 custom asset configuration
TICKER
%1 özel varlık yapılandırmasında uyuşmazlık
-
+
Application needs to be restarted for %1 custom asset.
TICKER
%1 özel varlığı için uygulamanın yeniden başlatılması gerekiyor.
-
+
Batch %1 failed. Reason: %2
%1 toplu işlemi başarısız oldu. Sebep: %2
-
+
Show
Göster
-
+
Restart
Yeniden Başlat
-
+
Quit
Çık
-
- There isn't any notification
- Bildirim yok
+
+ Notifications
+
+
+
+
+ There aren't any notifications
+
-
+
Mark all as read
@@ -2315,44 +2483,97 @@ Try again or select 'Allow custom seed' to continue.
OrderForm
-
+
Amount to sell
Satılacak miktar
-
+
Amount to receive
Alınacak miktar
-
- Min volume:
+
+ Max
+ Maks
+
+
+
+ Swap 25% of your tradable balance.
+
+
+
+
+ Swap 50% of your tradable balance.
- How to use the pro-view slider ?
+ Swap 100% of your tradable balance.
+
+
+
+
+ Min Volume
+
+
+
+
+ Min amount to sell
-
- This slider is used to setup the order requirements you need.
-Left slider: Sets the minimum amount required to process a trade.
-Right slider: Sets the volume you want to trade.
+
+ Min amount to receive
-
+
+ Minimum accepted trade equals 10% of order volume.
+
+
+
+
+ Minimum accepted trade equals 25% of order volume.
+
+
+
+
+ Minimum accepted trade equals 50% of order volume.
+
+
+
+
+ Min volume:
+
+
+
+
Use custom minimum trade amount
-
+
Price
Fiyat
-
+
+ Reduce 1% relative to CEX market price.
+
+
+
+
+ Use CEX market price.
+
+
+
+
+ Increase 1% relative to CEX market price.
+
+
+
+
Volume
Hacim
@@ -2360,7 +2581,7 @@ Right slider: Sets the volume you want to trade.
OrderLine
-
+
Funds are recoverable
Fonlar kurtarılabilir
@@ -2376,103 +2597,114 @@ Right slider: Sets the volume you want to trade.
OrderModal
-
+
Swap Details
Takas Detayları
-
+
Order Details
Emir Detayları
-
+
Order Type
-
+
Maker Order
Yapıcı Emri
-
+
Taker Order
Alıcı Emri
-
+
Refund State
Geri Ödeme Durumu
-
+
Your swap failed but the auto-refund process for your payment started already. Please wait and keep application opened until you receive your payment back
Takas işlemi başarısız oldu, ancak otomatik geri ödeme süreci başladı. Lütfen bekleyin ve ödemenizi geri alana kadar uygulamayı açık tutun
-
+
Date
Tarih
-
- ID
- ID
-
-
-
+
Recover Funds
Fon Kurtar
-
+
Refunding...
-
+
View on Explorer
Explorer'da Göster
-
- Maker Payment Sent ID
- Yapıcı Ödemesi Gönderilen Kimliği
+
+ Cancel Order
+ Emri İptal Et
+
+
+
+ Error ID
+ Hata ID
+
+
+
+
+ Swap ID
+
-
- Maker Payment Spent ID
- Yapıcı Ödemesi Harcanan Kimliği
+
+ Maker Payment Sent Transaction ID
+
-
- Taker Payment Spent ID
- Alıcı Ödemesi Harcanan Kimliği
+
+ Maker Payment Spent Transaction ID
+
-
- Taker Payment Sent ID
- Alıcı Ödemesi Gönderilen Kimliği
+
+ Maker Payment TXID
+
-
- Cancel Order
- Emri İptal Et
+
+ Taker Payment Spent Transaction ID
+
-
- Error ID
- Hata ID
+
+ Taker Payment Sent Transaction ID
+
-
-
+
+ Taker Payment TXID
+
+
+
+
+
Error Log
Hata Kaydı
-
+
Close
Kapat
@@ -2499,17 +2731,17 @@ Please select a new order.
OrdersPage
-
+
From
Gönderen
-
+
To
Alan
-
+
Apply Filter
Filtreyi Uygula
@@ -2525,17 +2757,17 @@ Please select a new order.
Tarih
-
+
Export CSV
CSV'yi dışa aktar
-
+
Cancel All
-
+
Please choose the CSV export name and location
Lütfen CSV dışa aktarma adını ve konumunu seçin
@@ -2551,41 +2783,39 @@ Please select a new order.
PasswordField
-
+
Password
Parola
-
+
Enter your wallet password
Cüzdan parolanızı girin
-
+
At least 1 lowercase alphabetical character
En az 1 küçük harf
-
+
At least 1 uppercase alphabetical character
En az 1 büyük harf
-
+
At least 1 numeric character
En az 1 sayı
-
+
At least 1 special character (eg. !@#$%)
En az 1 özel karakter (ör. !@#$%)
-
-
- At least %n character(s)
-
- En az %n karakter
-
+
+
+ Between %1 and %2 character(s)
+
@@ -2619,12 +2849,12 @@ Please select a new order.
-
+
Show only coins with balance
Sadece bakiyesi olan koinleri göster
-
+
(%1/%2)
@@ -2637,38 +2867,38 @@ Please select a new order.
PriceLine
-
+
Set swap price for evaluation
Değerlendirme için takas fiyatı belirleyin
-
+
Exchange rate
Döviz kuru
-
+
Selected
Seçili
-
+
Expensive
Pahalı
-
+
Expedient
Uygun
-
+
%1 compared to CEX
PRICE_DIFF%
CEX ile karşılaştırıldığında %1
-
+
CEXchange rate
CEXchange kuru
@@ -2677,36 +2907,31 @@ Please select a new order.
PriceLineSimplified
- Set swap price for evaluation
- Değerlendirme için takas fiyatı belirleyin
-
-
-
Exchange rate
Döviz kuru
-
+
Selected
Seçili
-
+
CEXchange rate
CEXchange kuru
-
+
Expensive
Pahalı
-
+
Expedient
Uygun
-
+
%1 compared to CEX
PRICE_DIFF%
CEX ile karşılaştırıldığında %1
@@ -2715,12 +2940,12 @@ Please select a new order.
ProView
-
+
Failed to place the order
Emir başarısız oldu
-
+
Placed the order
Emir başarılı
@@ -2737,22 +2962,29 @@ Please select a new order.
ReceiveModal
- Receive
- Al
+ Receive %1
+ TICKER
+
+
+
+
+ Only send %1 to this address
+ TICKER
+
-
- Only send %1 to this address:
+
+ %1 address
TICKER
-
+
copied to clipboard.
-
+
Close
Kapat
@@ -2760,72 +2992,95 @@ Please select a new order.
RecoverSeedModal
-
-
+
+
View seed and private keys
Seed ve özel anahtarları görüntüle
-
+
Please enter your password to view the seed.
Seed'i görmek için lütfen parolanızı giriniz.
-
+
Seed
-
+
Backup Seed
-
+
Public Address copied to clipboard
-
+
Cancel
İptal
-
-
+
+ Incorrect Password
+ Yanlış Parola
+
+
+
+
copied to clipboard
-
-
+
+
RPC Password
RPC Parolası
-
+
Search a coin.
Koin ara.
-
+
Public Address
Public Adres
-
+
Private Key copied to clipboard
-
+
Private Key
Private Key
-
- View
- Görüntüle
+
+ View
+ Görüntüle
+
+
+
+ RemoveContactPopup
+
+
+ Do you want to remove this contact ?
+ Bu kişiyi kaldırmak istiyor musunuz ?
+
+
+
+ Yes
+ Evet
+
+
+
+ No
+ Hayır
@@ -2867,7 +3122,7 @@ Please select a new order.
SearchField
-
+
Search
Ara
@@ -2875,149 +3130,162 @@ Please select a new order.
SendModal
-
+
Failed to send
Gönderilemedi
-
- Failed to Send
- Gönderilemedi
-
-
-
+
Prepare to send
Göndermeye hazırlanıyor
-
+
Address of the recipient
-
+
Amount to send
-
+
Gas price
-
+
Recipient's address
Alıcı adresi
-
+
The address has to be mixed case.
Adres, büyük-küçük harf karışık olmalıdır.
-
+
+ Failed to Broadcast
+
+
+
+
Fix
Düzelt
-
+
MAX
MAKS
-
+
Fiat amount: Unavailable
-
+
Fiat amount: %1
-
+
%1 amount: %2
-
+
Specify in Fiat
-
+
Specify in Crypto
-
+
Enable Custom Fees
Özel İşlem Ücretlerini Etkinleştir
-
- Only use custom fees if you know what you are doing!
- Özel işlem ücretleri hakkında bilginiz yoksa kullanmayınız!
-
-
-
+
Enter the custom fee
Özel ücreti giriniz
-
+
Gas Limit
Gas Limiti
-
+
Custom Fee can't be higher than the amount
Özel İşlem Ücreti takas miktarından daha yüksek olamaz
-
+
Not enough funds.
Yetersiz bakiye.
-
+
+
You have %1
AMT TICKER
%1'niz var
-
+
+
+ Only use custom fees if you know what you are doing!
+
+
+
+
Close
Kapat
-
+
Prepare
Hazırla
-
-
+
+
Send
Gönder
-
+
+ %1 address
+ TICKER
+
+
+
+
+ copied to clipboard.
+
+
+
+
Amount
Miktar
-
+
Fees
İşlem Ücreti
-
+
Date
Tarih
-
+
Back
Geri
@@ -3025,22 +3293,22 @@ Please select a new order.
SendModalContactList
-
+
Select a contact with an %1 address
%1 adresi olan bir kişi seçin
-
+
Search for contacts...
Kişi ara...
-
+
%1 addresses
%1 adresleri
-
+
1 address
1 adres
@@ -3069,42 +3337,60 @@ Please select a new order.
SendResult
-
+
Transaction Complete!
İşlem Tamamlandı!
-
+
+ %1 txid
+ TICKER
+
+
+
+
+
+ copied to clipboard.
+
+
+
+
Recipient's address
Alıcının adresi
-
+
+ %1 address
+ TICKER
+
+
+
+
Amount
Miktar
-
+
Fees
İşlem Ücreti
-
+
Date
Tarih
-
+
Transaction Hash
İşlem Hash'i
-
+
Close
Kapat
-
+
View on Explorer
Explorer'da göster
@@ -3112,281 +3398,240 @@ Please select a new order.
SettingModal
-
- Confirm Logout
-
-
-
-
- Are you sure you want to log out?
-
-
-
-
- Yes
- Evet
-
-
-
-
+
+
Cancel
İptal
-
+
Settings
Ayarlar
-
+
Language
Dil
-
+
User Interface
Kullanıcı Arayüzü
-
+
Security
Güvenlik
-
+
General
Genel
-
+
About & Version
-
+
Enable Desktop Notifications
Masaüstü Bildirimlerini Aktif Et
-
+
Maximum number of enabled coins
Maksimum etkin koin sayısı
-
+
Logs
Günlük Kaydı
-
+
Open Folder
Klasörü Aç
-
-
+
+
Reset wallet configuration
-
+
This will restart your wallet with default settings
-
+
+
Confirm
Onayla
-
+
Changing theme to %1
-
+
+ Disable 2FA?
+
+
+
+
+ Enter your wallet password to confirm
+
+
+
+
+ Type password
+
+
+
+
+ 2FA status
+
+
+
+
+ 2FA disabled successfully
+
+
+
+
+
+ Ok
+ Tamam
+
+
+
+ Wrong password!
+
+
+
+
+ Wallet password is incorrect
+
+
+
+
Application Version
-
+
copied to clipboard
-
+
Reset
Sıfırla
-
+
Current Font
Geçerli Yazı Tipi
-
+
Current font changed to %1.
-
+
Theme
Tema
-
+
Ask system's password before sending coins ? (2FA)
Para göndermeden önce sistem parolası sorulsun mu ? (2FA)
-
+
Application version
Uygulama sürümü
-
+
MM2 version
MM2 sürümü
-
+
MM2 Version
-
+
MM2 Version copied to clipboard.
-
+
Qt version
Qt sürümü
-
+
Qt Version
-
+
Qt Version copied to clipboard.
-
+
Search Update
Güncelleme Ara
-
+
Logout
Çıkış
-
-
-
-
-
-
+
View seed and private keys
Seed ve özel anahtarları görüntüle
-
-
+
+
Show
Göster
-
+
Setup Camouflage Password
Kamuflaj Parolasını Ayarla
-
+
Open
Aç
-
- Disclaimer and ToS
- Sorumluluk Reddi ve K.Ş.
-
-
-
- Settings
-
-
- Fiat
- Döviz
-
-
-
- Recommended:
- Önerilen:
-
-
-
- Enable Desktop Notifications
- Masaüstü Bildirimlerini Aktif Et
-
-
-
- Use QtTextRendering Or NativeTextRendering
- QtTextRendering veya NativeTextRendering Kullan
-
-
-
- Open Logs Folder
- Günlük Kaydı Klasörünü Aç
-
-
-
+
Disclaimer and ToS
Sorumluluk Reddi ve K.Ş.
-
-
- Setup Camouflage Password
- Kamuflaj Parolasını Ayarla
-
-
-
- mm2 version
- mm2 versiyonu
-
-
-
- Delete Wallet
- Cüzdanı Sil
-
-
-
- View seed and private keys
- Seed ve özel anahtarları görüntüle
-
-
-
- Reset wallet configuration
-
-
-
-
- Log out
- Çıkış yap
-
Sidebar
-
- Search coin
-
+
+ Search
+ Ara
-
+
Add asset
Varlık ekle
@@ -3498,32 +3743,32 @@ Please select a new order.
Gönderen
-
+
To
Alan
-
+
Cancel
İptal
-
+
Apply filter
Filtreyi uygula
-
+
Export
Dışarı al
-
+
Please choose the CSV export name and location
Lütfen CSV dışa aktarma adını ve konumunu seçin
-
+
No results found
@@ -3532,57 +3777,57 @@ Please select a new order.
SubOrders
-
+
Orders
Emirler
-
+
Filter
-
+
Date
Tarih
-
+
Close filtering options.
-
+
Open filtering options.
-
+
Filter settings
Ayarları filtrele
-
+
From
Gönderen
-
+
To
Alan
-
+
Cancel
İptal
-
+
Apply filter
Filtreyi uygula
-
+
No results found
@@ -3716,7 +3961,7 @@ Network fees can vary greatly depending on your selected trading pair.
Değişim günlüğü
-
+
Open Logs Folder
Günlük Kaydı Klasörünü Aç
@@ -3724,31 +3969,23 @@ Network fees can vary greatly depending on your selected trading pair.
SwapProgress
-
+
act
SHORT FOR ACTUAL TIME
gerçek
-
+
est
SHORT FOR ESTIMATED
tahmini
-
+
Progress details
İlerleme ayrıntıları
-
- SweetDexComboBox
-
-
- Search
- Ara
-
-
TextAreaWithTitle
@@ -3763,14 +4000,17 @@ Network fees can vary greatly depending on your selected trading pair.
- TextEditWithTitle
+ TextEditWithCopy
-
- Swap ID
+
+ copied to clipboard
+
+
+ TextEditWithTitle
-
+
copied to clipboard
@@ -3778,7 +4018,7 @@ Network fees can vary greatly depending on your selected trading pair.
TextFieldWithTitle
-
+
Required
Gerekli
@@ -3794,22 +4034,32 @@ Network fees can vary greatly depending on your selected trading pair.
Trade
-
+
Swap
Takasla
-
+
Instant trading with best orders
En iyi emirlerle anında alım satım
-
+
+ Reset form
+
+
+
+
+ You have no tradable assets
+
+
+
+
From
Gönderen
-
+
Enter an amount
Bir miktar gir
@@ -3829,119 +4079,109 @@ Network fees can vary greatly depending on your selected trading pair.
Emri seç
-
+
Price
Fiyat
-
+
Better price found: %1. Updating forms.
Daha iyi fiyat bulundu: %1. Formları güncelliyor.
-
+
Better price (%1) found but received quantity (%2) is lower than your current one (%3). Click here to update the selected order.
Daha iyi fiyat (%1) bulundu, ancak alınan miktar (%2) mevcut fiyattan (%3) daha düşük. Seçilen emri güncellemek için buraya tıklayın.
-
- Reset form.
- Formu sıfırla
-
-
-
- You have no tradable assets.
-
-
-
-
+
%1
%1
-
+
Tradable:
Al sat yapılabilir:
-
+
Min: %1
-
+
Pick a coin
-
+
SWAP NOW
-
+
Failed to place the order
Emir başarısız oldu
-
+
Placed the order
Emir başarılı
-
+
Entered amount must be superior than 0.
Girilen tutar 0'dan büyük olmalıdır.
-
+
You must select an order.
Bir emir seçmelisiniz.
-
+
Entered amount is below the minimum required by this order: %1
Girilen miktar, bu emrin gerektirdiği minimum %1 tutarının altında
-
-
+
+
%1 needs to be enabled in order to use %2
-
-
+
+
%1 balance needs to be funded, a non-zero balance is required to pay the gas of %2 transactions
-
+
%1 balance does not have enough funds to pay the gas of %2 transactions
-
+
No buy orders found for %1.
-
+
You can check later or try to sell a different coin.
-
+
Calculating fee estimate...
-
+
Total %1 fees:
Toplam %1 işlem giderleri:
-
+
%2 (%3)
%2 (%3)
@@ -3960,31 +4200,26 @@ Network fees can vary greatly depending on your selected trading pair.
- Chart
- Grafik
-
-
-
Ticker Selectors
-
+
Trading Information
Al Sat Bilgisi
-
+
Order Book
Emir Defteri
-
+
Best Orders
En İyi Emirler
-
+
Place Order
Emir Ver
@@ -3992,77 +4227,88 @@ Network fees can vary greatly depending on your selected trading pair.
TransactionDetailsModal
-
+
Transaction Details
İşlem Detayları
-
+
+ %1 txid
+ TICKER
+
+
+
+
+ copied to clipboard.
+
+
+
+
Amount
Miktar
-
+
Fees
İşlem Ücreti
-
+
+ From address
+
+
+
+
+ To address
+
+
+
+
Date
Tarih
-
+
Unconfirmed
Onaylanmamış
-
+
Transaction Hash
İşlem Hash'i
-
- Transactions
-
-
-
-
- txid copied to clipboard
-
-
-
-
+
Confirmations
Onay Sayısı
-
+
Block Height
Blok Uzunluğu
-
+
From
Gönderen
-
+
To
Alan
-
+
Notes
Notlar
-
+
Close
Kapat
-
+
View on Explorer
Explorer'da göster
@@ -4070,22 +4316,22 @@ Network fees can vary greatly depending on your selected trading pair.
Transactions
-
+
Received
Alınan
-
+
Sent
Gönderilen
-
+
fees
işlem ücretleri
-
+
Unconfirmed
Onaylanmamış
@@ -4106,19 +4352,6 @@ Network fees can vary greatly depending on your selected trading pair.
Emir Defteri
-
- WalletNameField
-
-
- Wallet Name
- Cüzdan Adı
-
-
-
- Enter the name of your wallet here
- Cüzdanınızın adını giriniz
-
-
WalletsView
@@ -4142,123 +4375,160 @@ Network fees can vary greatly depending on your selected trading pair.
-
+
My Wallets
Cüzdanlarım
-
+
No wallets found!
-
-
+
+
Delete
Sil
-
+
Enter password to confirm deletion of
-
+
wallet
-
+
Type password
-
+
Cancel
İptal
-
-
+
+
Wallet status
-
+
wallet deleted successfully
-
-
+
+
Ok
Tamam
-
+
wallet password is incorrect
+
+ ZcashParamsModal
+
+
+ %1 Activation Failed!
+
+
+
+
+ To activate ZHTLC coins, you need to download the Zcash Params.
+This might take a few minutes...
+
+
+
+
+ Download params & enable coins
+
+
+
+
+ More Info
+
+
+
+
+ Close
+ Kapat
+
+
+
+ atomic_dex::settings_page
+
+
+ An error has occurred.
+
+
+
atomic_dex::wallet_page
-
+
You do not have enough funds.
Bakiye yetersiz.
-
+
%1 is not activated: click on the button to enable it or enable it manually
%1 etkinleştirilmedi: etkinleştirmek için düğmeye tıklayın veya manuel olarak etkinleştirin
-
+
You need to have %1 to pay the gas for %2 transactions.
%2 işlemi için gaz ödemek üzere %1'e sahip olmanız gerekir.
-
+
Checksum verification failed for %1.
%1 için sağlama toplamı doğrulaması başarısız oldu.
-
+
Invalid checksum for %1. Click the button to convert to mixed case address.
-
+
Legacy address used for %1. Click the button to convert to a Cashaddress.
-
+
%1 address must be prefixed with 0x
%1 adresinin önüne 0x konulmalı
-
+
%1 address length is invalid, please use a valid address.
%1 adres uzunluğu geçersiz, lütfen geçerli bir adres kullanın.
-
+
%1 address is invalid.
-
+
Invalid checksum.
-
+
%1 address has invalid prefixes.
-
+
Backend error: %1
@@ -4266,32 +4536,12 @@ Network fees can vary greatly depending on your selected trading pair.
main
-
+
Logout
Çıkış
-
- Confirm Logout
-
-
-
-
- Are you sure you want to log out?
-
-
-
-
- Yes
- Evet
-
-
-
- Cancel
- İptal
-
-
-
+
Balance
Bakiye
diff --git a/atomic_defi_design/assets/languages/gen_translation.py b/atomic_defi_design/assets/languages/gen_translation.py
new file mode 100755
index 0000000000..a401e547fd
--- /dev/null
+++ b/atomic_defi_design/assets/languages/gen_translation.py
@@ -0,0 +1,96 @@
+#!/usr/bin/env python3
+import os
+import csv
+
+'''
+NOTE: This script takes a CSV file as input, then generates a .ts file using the english file as a template.
+There may be some postprocessing required to manually fix bad csv input and numerusform values.
+'''
+
+
+def get_lang_dict():
+ with open('translations_matrix.csv') as f:
+ csv_reader = csv.reader(f, delimiter=',')
+ lang_dict = {}
+ line_count = 0
+ for row in csv_reader:
+ if line_count == 0:
+ en = row.index("English")
+ es = row.index("Spanish")
+ de = row.index("German")
+ line_count += 1
+ else:
+ lang_dict.update({
+ row[en]: {
+ "es": row[es],
+ "de": row[de]
+ }
+ })
+ line_count += 1
+ return lang_dict
+
+def remove_existing_translations():
+ with open(f"atomic_defi_en.ts", "r") as f:
+ ts_file = f.readlines()
+
+ with open(f"atomic_defi_lang_template.ts", "w") as f:
+ lines = []
+ ignoring = False
+ for l in ts_file:
+ if l.find(" -1 or ignoring:
+ ignoring = True
+ if l.find("translation>") > -1:
+ ignoring = False
+ else:
+ lines.append(l)
+ f.writelines(lines)
+
+
+def generate_translation(lang='en'):
+ lang_dict = get_lang_dict()
+ remove_existing_translations()
+
+ with open(f"atomic_defi_lang_template.ts", "r") as f:
+ lang_file = f.read()
+
+ multiline = False
+ multiline_data = []
+ untranslated_count = 0
+ for i in lang_dict:
+ try:
+ # TODO: handle numerusform translations
+ if f"{i}" in lang_file:
+ lang_file = lang_file.replace(f"{i}", f"{i}\n {lang_dict[i][lang]}")
+ if f" {i}" in lang_file:
+ lang_file = lang_file.replace(f"{i}", f"{i}\n {lang_dict[i][lang]}")
+ elif f"{i}" in lang_file:
+ multiline = True
+ multiline_data.append(f"{lang_dict[i][lang]}")
+ elif multiline:
+ multiline_data.append(f"{lang_dict[i][lang]}")
+ elif f"{i}" in lang_file:
+ multiline_data.append(f"{lang_dict[i][lang]}")
+ translation = '\n'.join(multiline_data)
+ lang_file = lang_file.replace(f"{i}", f"{i}\n {translation}")
+ multiline = False
+ elif f"{i}" not in lang_file:
+ print(f"{i} ---> {lang_dict[i][lang]}")
+ print(f">>>>>>>>>>>>>>>>>>>>>>>>>> '{i}' not found!")
+ untranslated_count += 1
+ else:
+ #print(lang_dict[i][lang])
+ untranslated_count += 1
+ pass
+ except Exception as e:
+ untranslated_count += 1
+ print(f">>>>>>>>>>>>>>>>>>>>>>>>>> 'Error: {e} | source: {i}")
+ print(f"{untranslated_count} lines untranslated")
+
+ with open(f"atomic_defi_{lang}.ts", 'w') as f:
+ f.write(lang_file)
+
+
+if __name__ == '__main__':
+ generate_translation('es')
+
+
\ No newline at end of file
diff --git a/atomic_defi_design/assets/languages/translations_matrix.csv b/atomic_defi_design/assets/languages/translations_matrix.csv
new file mode 100644
index 0000000000..37a934e80a
--- /dev/null
+++ b/atomic_defi_design/assets/languages/translations_matrix.csv
@@ -0,0 +1,807 @@
+"Location/Area line
+(German lang. file)",Location/Area,comment,"Source Line
+(German lang. file)",English,"Translation Line
+(German lang. file)",German,Spanish,Mandarin,…
+7,Dex/Addressbook/AddAddressForm.qml,,8,Use standard network address,9,Standard-Netzwerkadresse verwenden,Utilice la dirección de red,,
+12,Dex/Addressbook/AddAddressForm.qml,,13,Label,14,Bezeichnung,Etiqueta,,
+17,Dex/Addressbook/AddAddressForm.qml,,18,This key already exists.,19,Dieser Schlüssel existiert bereits.,Esta clave ya existe.,,
+22,Dex/Addressbook/AddAddressForm.qml,,23,Address,24,Adresse,Dirección,,
+27,Dex/Addressbook/AddAddressForm.qml,,29,Cancel,30,Abbrechen,Cancelar,,
+33,Dex/Addressbook/AddAddressForm.qml,,34,Convert,35,Umwandeln,Convertir,,
+38,Dex/Addressbook/AddAddressForm.qml,,39,Edit,40,Bearbeiten,Editar,,
+43,Dex/Addressbook/AddAddressForm.qml,,44,Add,45,Hinzufügen,Agregar,,
+48,Dex/Addressbook/AddAddressForm.qml,,49,You need to enable %1 before adding this kind of address.,50,"Sie müssen %1 aktivieren, bevor Sie diese Art von Adresse hinzufügen.",Debe habilitar %1 antes de agregar este tipo de dirección.,,
+53,Dex/Addressbook/AddAddressForm.qml,,54,Enable,55,Aktivieren,Habilitar,,
+61,Dex/Settings/AddCustomCoinModal.qml,,62,Get the contract address from,63,Erhalten Sie die Vertragsadresse von,Obtener la dirección del contrato de,,
+66,Dex/Settings/AddCustomCoinModal.qml,,67,Choose the asset type,68,Wählen Sie den Asset-Typ aus,Elija el tipo de activo,,
+71,Dex/Settings/AddCustomCoinModal.qml,,72,Cancel,73,Abbrechen,Cancelar,,
+78,Dex/Settings/AddCustomCoinModal.qml,,79,Next,80,Weiter,Siguiente,,
+83,Dex/Settings/AddCustomCoinModal.qml,,84,Contract address,85,Vertragsadresse,Dirección del contrato,,
+88,Dex/Settings/AddCustomCoinModal.qml,,89,Enter the contract address,90,Geben Sie die Vertragsadresse ein,Ingrese la dirección del contrato,,
+93,Dex/Settings/AddCustomCoinModal.qml,,94,Choose the asset ticker,95,Wählen Sie den Asset-Ticker,Elija el ticker del activo,,
+98,Dex/Settings/AddCustomCoinModal.qml,,99,Ticker,100,Ticker,Ticker,,
+103,Dex/Settings/AddCustomCoinModal.qml,,104,Enter the ticker,105,Geben Sie den Ticker ein,Ingrese el ticker,,
+108,Dex/Settings/AddCustomCoinModal.qml,,109,Get the contract address from ,110,Erhalten Sie die Vertragsadresse von,Obtener la dirección del contrato de,,
+116,Dex/Settings/AddCustomCoinModal.qml,,117,Previous,118,Vorherige,Anterior,,
+121,Dex/Settings/AddCustomCoinModal.qml,,122,Choose the asset logo,123,Wählen Sie ein Logo für das Asset aus,Elija el logotipo del activo,,
+126,Dex/Settings/AddCustomCoinModal.qml,,127,Browse,128,Durchsuchen,Navegar,,
+131,Dex/Settings/AddCustomCoinModal.qml,,132,Please choose the asset logo,133,Bitte wählen Sie für das Asset ein Logo aus,Elija el logotipo del activo,,
+136,Dex/Settings/AddCustomCoinModal.qml,,137,Configuration,138,Konfiguration,Configuración,,
+141,Dex/Settings/AddCustomCoinModal.qml,,142,All configuration fields will be fetched using the contract address you provided.,143,Alle Konfigurationsfelder werden mit der von Ihnen angegebenen Vertragsadresse abgerufen.,Todos los campos de configuración se obtendrán usando la dirección del contrato que proporcionó.,,
+146,Dex/Settings/AddCustomCoinModal.qml,,147,Name,148,Name,Nombre,,
+151,Dex/Settings/AddCustomCoinModal.qml,,152,Enter the name,153,Geben Sie den Namen ein,Ingrese el nombre,,
+156,Dex/Settings/AddCustomCoinModal.qml,,157,Coingecko ID,158,Coingecko ID,Coingecko ID,,
+161,Dex/Settings/AddCustomCoinModal.qml,,162,Enter the Coingecko ID,163,Geben Sie die Coingecko-ID ein,Ingrese el Coingecko ID,,
+166,Dex/Settings/AddCustomCoinModal.qml,,167,Get the Coingecko ID,168,Coingecko-ID erhalten,Obtener el Coingecko ID,,
+171,Dex/Settings/AddCustomCoinModal.qml,,172,Active,173,Aktiv,Activo,,
+177,Dex/Settings/AddCustomCoinModal.qml,,178,Preview,179,Vorschau,Vista previa,,
+182,Dex/Settings/AddCustomCoinModal.qml,,183,WARNING: Application will restart immidiately to apply the changes!,184,"WARNUNG: Die Anwendung wird sofort neu gestartet, um die Änderungen zu übernehmen!",ADVERTENCIA: ¡La aplicación se reiniciará inmediatamente para aplicar los cambios!,,
+187,Dex/Settings/AddCustomCoinModal.qml,,188,"Asset not found, please go back and make sure Contract Address is correct",189,"Asset nicht gefunden, bitte gehen Sie zurück und stellen Sie sicher, dass die Vertragsadresse korrekt ist","Activo no encontrado, regrese y asegúrese de que la dirección del contrato sea correcta",,
+192,Dex/Settings/AddCustomCoinModal.qml,,193,Config Fields,194,Konfigurationsfelder,Campos de configuracion,,
+197,Dex/Settings/AddCustomCoinModal.qml,,198,Fetched Data,199,Abgerufene Daten,Datos obtenidos,,
+202,Dex/Settings/AddCustomCoinModal.qml,,203,Submit & Restart,204,Bestätigen und Neu starten,Enviar & Reiniciar,,
+210,Dex/Addressbook/AddTagPopup.qml,,211,Tag name,212,Schlagwort,Nombre de la etiqueta,,
+215,Dex/Addressbook/AddTagPopup.qml,,216,Contact already has this tag.,217,Der Kontakt hat bereits dieses Schlagwort.,El contacto ya tiene esta etiqueta.,,
+220,Dex/Addressbook/AddTagPopup.qml,,221,+ ADD,222,+ HINZUFÜGEN,#NAME?,,
+228,Dex/Portfolio/AmountChart.qml,,229,Work in progress,230,In Arbeit,Trabajo en proceso,,
+236,Dex/App.qml,,237,Recover Funds Result,238,Ergebnis der Rückerstattung der Geldmittel,Resultados de Recuperar Fondos,,
+244,Dex/Addressbook/AssetFromStandardSelector.qml,,245,Choose a valid ,246,Wählen Sie eine gültige,Elija un,,
+249,Dex/Addressbook/AssetFromStandardSelector.qml,,250,asset,251,Asset,activo,,
+254,Dex/Addressbook/AssetFromStandardSelector.qml,,255,Search an asset,256,Asset suchen,Buscar un activo,,
+259,Dex/Addressbook/AssetFromStandardSelector.qml,,260,Disabled,261,Deaktiviert,deshabilitados,,
+267,Dex/Portfolio/AssetPieChart.qml,,268,Assets,269,Assets,Activos,,
+275,Dex/Portfolio/AssetsList.qml,,276,Asset,277,Asset,Activo,,
+280,Dex/Portfolio/AssetsList.qml,,281,Balance,282,Balance,Saldo,,
+285,Dex/Portfolio/AssetsList.qml,,286,Fiat Balance,287,Fiat Balance,Saldo Fiat,,
+290,Dex/Portfolio/AssetsList.qml,,291,Change 24h,292,24h Veränderung,Cambio en 24h,,
+295,Dex/Portfolio/AssetsList.qml,,296,Price,297,Preis,Precio,,
+300,Dex/Portfolio/AssetsList.qml,,301,Source,302,Quelle,Fuente,,
+305,Dex/Portfolio/AssetsList.qml,,306,Price provider is: %1,307,Preisanbieter ist: %1,El proveedor de precios es: %1,,
+313,Dex/Sidebar/Bottom.qml,,314,Settings,315,Einstellungen,Configuración,,
+318,Dex/Sidebar/Bottom.qml,,319,Support,320,Support,Soporte,,
+323,Dex/Sidebar/Bottom.qml,,324,Privacy,325,Datenschutz,Privacidad,,
+328,Dex/Sidebar/Bottom.qml,,329,Disable Privacy?,330,Datenschutz deaktivieren?,¿Deshabilitar privacidad?,,
+333,Dex/Sidebar/Bottom.qml,,334,Enter wallet password to confirm,335,Geben Sie zur Bestätigung das Kennwort der Brieftasche ein,Ingrese la contraseña de la billetera para confirmar,,
+338,Dex/Sidebar/Bottom.qml,,339,Type password,340,Kennwort eingeben,Escriba la contraseña,,
+343,Dex/Sidebar/Bottom.qml,,344,Confirm,345,Bestätigen,Confirmar,,
+348,Dex/Sidebar/Bottom.qml,,349,Cancel,350,Abbrechen,Cancelar,,
+353,Dex/Sidebar/Bottom.qml,,354,Privacy status,355,Status Datenschutz,Estado de privacidad,,
+358,Dex/Sidebar/Bottom.qml,,359,Privacy mode disabled successfully,360,Der Datenschutzmodus wurde erfolgreich deaktiviert,Modo de privacidad deshabilitado correctamente,,
+364,Dex/Sidebar/Bottom.qml,,365,Ok,366,Ok,Ok,,
+369,Dex/Sidebar/Bottom.qml,,370,Wrong password!,371,Falsches Kennwort!,¡Contraseña incorrecta!,,
+374,Dex/Sidebar/Bottom.qml,,375,wallet password is incorrect,376,Kennwort der Brieftasche ist falsch,la contraseña de la billetera es incorrecta,,
+382,Dex/Settings/CamouflagePasswordModal.qml,,383,Setup Camouflage Password,384,Tarnkennwort einrichten,Configurar Contraseña Camuflaje,,
+387,Dex/Settings/CamouflagePasswordModal.qml,,388,Camouflage Password is a secret password for emergency situations.,389,Das Tarnkennwort (Camouflage Password) ist ein geheimes Passwort für Notsituationen.,Contraseña Camuflaje es una contraseña secreta para situaciones de emergencia.,,
+392,Dex/Settings/CamouflagePasswordModal.qml,,393,Using it to login will display your balance lower than it actually is.,394,"Wenn Sie sich damit anmelden, wird Ihr Guthaben niedriger angezeigt, als es tatsächlich ist.",Usarlo para iniciar sesión mostrará su saldo más bajo de lo que realmente es.,,
+397,Dex/Settings/CamouflagePasswordModal.qml,,398,Here you enter the suffix and at login you need to enter {real_password}{suffix},399,Hier geben Sie den Zusatz ein und beim Einloggen benötigen Sie {echtes Kennwort}{suffix},Aquí ingresa el sufijo y al iniciar sesión debe ingresar {real_password}{suffix},,
+403,Dex/Settings/CamouflagePasswordModal.qml,,404,Password suffix,405,Kennwort-Zusatz,Sufijo de contraseña,,
+408,Dex/Settings/CamouflagePasswordModal.qml,,409,Confirm pasword suffix,410,Kennwort-Zusatz bestätigen,Confirmar sufijo,,
+413,Dex/Settings/CamouflagePasswordModal.qml,,414,Enter a password suffix,415,Geben Sie einen Kennwort-Zusatz ein,Ingrese un sufijo de contraseña,,
+418,Dex/Settings/CamouflagePasswordModal.qml,,419,Enter the same password suffix to confirm,420,Geben Sie zur Bestätigung denselben Kennwort-Zusatz ein,Ingrese el mismo sufijo de contraseña para confirmar,,
+423,Dex/Settings/CamouflagePasswordModal.qml,,424,Cancel,425,Abbrechen,Cancelar,,
+428,Dex/Settings/CamouflagePasswordModal.qml,,429,Save,430,Speichern,Guardar,,
+436,Dex/Components/CannotEnableCoinModal.qml,,437,Failed to enable %1,438,Aktivierung von %1 fehlgeschlagen,No se pudo habilitar %1,,
+441,Dex/Components/CannotEnableCoinModal.qml,,442,Enabling %1 did not succeed. Limit of enabled coins might have been reached.,443,Das Aktivieren von %1 war nicht erfolgreich. Das Limit der aktivierten Coins wurde möglicherweise erreicht.,No se pudo habilitar %1. Es posible que se haya alcanzado el límite de monedas habilitadas.,,
+446,Dex/Components/CannotEnableCoinModal.qml,,447,Change limit in settings,448,Limit in den Einstellungen ändern,Cambiar el límite en la configuración,,
+451,Dex/Components/CannotEnableCoinModal.qml,,452,Cancel,453,Abbrechen,Cancelar,,
+459,Dex/Sidebar/Center.qml,,460,Portfolio,461,Portfolio,Portafolio,,
+464,Dex/Sidebar/Center.qml,,465,Wallet,466,Brieftasche,Monedero,,
+469,Dex/Sidebar/Center.qml,,470,DEX,471,DEX,DEX,,
+474,Dex/Sidebar/Center.qml,,475,Address Book,476,Adressbuch,Libreta de direcciones,,
+479,Dex/Sidebar/Center.qml,,480,Fiat,481,Fiat,Fiat,,
+487,Dex/Components/CexInfoModal.qml,,488,Market Data,489,Marktdaten,Data de Mercado,,
+492,Dex/Components/CexInfoModal.qml,,493,"Market data (prices, charts, etc.) marked with the ⓘ icon originates from third-party sources.<br><br>Data is sourced via <a href="https://bandprotocol.com/">Band Decentralized Oracle</a> and <a href="https://coingecko.com">CoinGecko</a>.<br><br><b>Oracle Supported Pairs:</b><br>%1<br><br><b>Last reference (Band Oracle):</b><br><a href="%2">%2</a>",494,"Mit dem Symbol ⓘ gekennzeichnete Marktdaten (Kurse, Charts etc.) stammen aus Drittquellen.<br><br>Die Daten stammen von <a href="https://bandprotocol.com/">Band Decentralized Oracle</a> und <a href="https://coingecko.com">CoinGecko</a>.<br><br><b>Oracle unterstützte Paare:</b><br>%1<br><br><b>Letzte Referenz (Band Oracle):</b><br><a href="%2">%2</a>","Datos de mercado (precios, estadisticas, etc.) marcados con ⓘ se obtienen a través de fuentes terceras.<br><br>Data is sourced via <a href="https://bandprotocol.com/">Band Decentralized Oracle</a> and <a href="https://coingecko.com">CoinGecko</a>.<br><br><b>Oracle Supported Pairs:</b><br>%1<br><br><b>Last reference (Band Oracle):</b><br><a href="%2">%2</a>",,
+500,Dex/Exchange/ProView/Chart.qml,,501,Loading market data,502,Laden von Marktdaten,Cargando datos de mercado,,
+505,Dex/Exchange/ProView/Chart.qml,,506,There is no chart data for this pair yet,507,Für dieses Paar liegen noch keine Chartdaten vor,Todavía no hay datos de gráficos para este par,,
+513,Dex/Wallet/ClaimRewardsModal.qml,,514,Failed to prepare to claim rewards,515,Vorbereitung zum Einfordern von Belohnungen fehlgeschlagen,No se pudo preparar para reclamar recompensas,,
+518,Dex/Wallet/ClaimRewardsModal.qml,TICKER,519,Claim your %1 reward?,521,%1 Belohnung beantragen?,¿Reclamar su %1 de recompensa?,,
+524,Dex/Wallet/ClaimRewardsModal.qml,,525,No UTXOs eligible for claiming,526,Keine beanspruchungsberechtigten UTXOs vorhanden,Ningún UTXO elegible para reclamar,,
+529,Dex/Wallet/ClaimRewardsModal.qml,,530,Transaction fee is higher than the reward!,531,Die Transaktionsgebühr ist höher als die Belohnung!,¡La tarifa de transacción es más alta que la recompensa!,,
+534,Dex/Wallet/ClaimRewardsModal.qml,,535,You will receive ,536,Sie erhalten,Recibirá,,
+539,Dex/Wallet/ClaimRewardsModal.qml,,540,Refresh,541,Aktualisieren,Actualizar,,
+544,Dex/Wallet/ClaimRewardsModal.qml,,545,Read more about KMD active users rewards,546,Lesen Sie mehr über die Belohnungen für aktive KMD-Benutzer,Lea más sobre las recompensas de los usuarios activos de KMD,,
+549,Dex/Wallet/ClaimRewardsModal.qml,,550,UTXO,551,UTXO,UTXO,,
+554,Dex/Wallet/ClaimRewardsModal.qml,,555,Amount,556,Menge,Monto,,
+559,Dex/Wallet/ClaimRewardsModal.qml,,560,Reward,561,Belohnung,Recompensa,,
+564,Dex/Wallet/ClaimRewardsModal.qml,,565,Accruing Start,566,Anfallender Start,Inicio de Acumulación,,
+569,Dex/Wallet/ClaimRewardsModal.qml,,570,Accruing Stop,571,Anfallender Stopp,Detener Acumulación,,
+574,Dex/Wallet/ClaimRewardsModal.qml,,575,Time Left,576,Verbleibende Zeit,Tiempo Restante,,
+579,Dex/Wallet/ClaimRewardsModal.qml,,580,Error,581,Fehler,Error,,
+584,Dex/Wallet/ClaimRewardsModal.qml,,585,Locktime is not set,586,Die Sperrzeit ist nicht eingestellt,Locktime no está configurado,,
+589,Dex/Wallet/ClaimRewardsModal.qml,,590,Locktime is less than the threshold,591,Die Sperrzeit liegt unter dem Schwellenwert,Locktime es inferior al umbral,,
+594,Dex/Wallet/ClaimRewardsModal.qml,,595,UTXO height is greater than end of the era,596,UTXO-Höhe ist größer als Ende der Ära,La altura de UTXO es mayor que el final de la era,,
+599,Dex/Wallet/ClaimRewardsModal.qml,,600,UTXO amount is less than 10,601,UTXO-Menge ist kleiner als 10,La cantidad de UTXO es inferior a 10,,
+604,Dex/Wallet/ClaimRewardsModal.qml,,605,One hour did not pass yet,606,Eine Stunde ist noch nicht vergangen,Una hora no pasa aún,,
+609,Dex/Wallet/ClaimRewardsModal.qml,,610,Transaction is in mempool,611,Die Transaktion befindet sich in Mempool,La transacción está en el mempool,,
+614,Dex/Wallet/ClaimRewardsModal.qml,,615,Unknown problem,616,Unbekanntes Problem,Problema desconocido,,
+619,Dex/Wallet/ClaimRewardsModal.qml,,620,Cancel,621,Abbrechen,Cancelar,,
+624,Dex/Wallet/ClaimRewardsModal.qml,,625,Confirm,626,Bestätigen,Confirmar,,
+632,Dex/Components/CoinMenu.qml,TICKER,633,Disable %1,635,%1 deaktivieren,Deshabilitar %1,,
+638,Dex/Components/CoinMenu.qml,TICKER,639,Disable and Delete %1,641,%1 deaktivieren und löschen,Deshabilitar y eliminar %1,,
+644,Dex/Components/CoinMenu.qml,,645,Disable all %1 assets,646,Alle %1 Assets deaktivieren,Deshabilitar todos los activos de %1,,
+649,Dex/Components/CoinMenu.qml,,650,Disable all assets,651,Alle Assets deaktivieren,Deshabilitar todos los activos,,
+654,Dex/Components/CoinMenu.qml,,655,Disable 0 balance assets,656,Alle Assets mit der Balance 0 deaktivieren,Deshabilitar 0 balancear activos,,
+662,Dex/Components/ComboBoxWithSearchBar.qml,,663,Search,664,Suchen,Búsqueda,,
+670,Dex/Settings/Combo_fiat.qml,,671,Language,672,Sprache,Idioma,,
+675,Dex/Settings/Combo_fiat.qml,,676,Fiat,677,Fiat,Fiat,,
+680,Dex/Settings/Combo_fiat.qml,,681,Recommended: ,682,Empfohlen:,Recomendado:,,
+688,Dex/Exchange/Trade/ConfirmMultiOrderTradeModal.qml,,689,Confirm Multi Order Details,690,Bestätigen Sie die Details des Mehrfachauftrags,Confirmar detalles de Multi Order,,
+693,Dex/Exchange/Trade/ConfirmMultiOrderTradeModal.qml,,694,These swaps requests can not be undone and this is the final event!,695,Diese Tauschanfragen können nicht rückgängig gemacht werden und dies ist das endgültige Ereignis!,Estas solicitudes de intercambio no se pueden deshacer y este es el evento final!,,
+698,Dex/Exchange/Trade/ConfirmMultiOrderTradeModal.qml,,699,These transactions can take up to 60 mins - DO NOT close this application!,700,Diese Transaktionen können bis zu 60 Minuten dauern - schließen Sie diese Anwendung NICHT!,Estas transacciones pueden demorar hasta 60 minutos. ¡NO cierre esta aplicación!,,
+703,Dex/Exchange/Trade/ConfirmMultiOrderTradeModal.qml,,704,Same funds will be used until an order matches.,705,"Die gleichen Geldmittel werden verwendet, bis eine Bestellung übereinstimmt.",Se utilizarán los mismos fondos hasta que coincida un pedido.,,
+708,Dex/Exchange/Trade/ConfirmMultiOrderTradeModal.qml,,709,Note that if one order is filled other will not be cancelled.,710,"Beachten Sie, dass, wenn eine Bestellung ausgeführt wird, andere nicht storniert werden.","Tenga en cuenta que si se completa un pedido, el otro no se cancelará.",,
+713,Dex/Exchange/Trade/ConfirmMultiOrderTradeModal.qml,,714,Cancel,715,Abbrechen,Cancelar,,
+718,Dex/Exchange/Trade/ConfirmMultiOrderTradeModal.qml,,719,Confirm,720,Bestätigen,Confirmar,,
+723,Dex/Exchange/Trade/ConfirmMultiOrderTradeModal.qml,,724,Placed multiple orders,725,Mehrere Aufrtäge aufgegeben,Pedidos múltiples realizados,,
+731,Dex/Exchange/Trade/ConfirmTradeModal.qml,,732,Confirm Exchange Details,733,Bestätigen Sie die Austausch-Details,Confirmar Detalles de Intercambio,,
+736,Dex/Exchange/Trade/ConfirmTradeModal.qml,,737,Trade price is more than 50% different to CEX! Confirm?,738,Der Handelspreis unterscheidet sich um mehr als 50 % vom CEX-Preis! Bestätigen?,¡El precio comercial es más del 50% diferente al de CEX! ¿Confirmar?,,
+741,Dex/Exchange/Trade/ConfirmTradeModal.qml,,742,This swap request can not be undone and is a final event!,743,Diese Tauschanfrage kann nicht rückgängig gemacht werden und ist ein endgültiges Ereignis!,¡Esta solicitud de intercambio no se puede deshacer y es un evento final!,,
+746,Dex/Exchange/Trade/ConfirmTradeModal.qml,,747,This transaction can take up to 60 mins - DO NOT close this application!,748,Diese Transaktion kann bis zu 60 Minuten dauern - schließen Sie diese Anwendung NICHT!,Esta transacción puede demorar hasta 60 minutos. ¡NO cierre esta aplicación!,,
+751,Dex/Exchange/Trade/ConfirmTradeModal.qml,,752,Loading fees...,753,Lade Gebühren...,Cargando tarifas...,,
+756,Dex/Exchange/Trade/ConfirmTradeModal.qml,,757,<b>Total %1 fees:</b>,758,<b>Gesamt %1 Gebühren:</b>,<b>Total de %1 fees:</b>,,
+761,Dex/Exchange/Trade/ConfirmTradeModal.qml,,762,Security configuration,763,Sicherheitskonfiguration,Configuración de seguridad,,
+766,Dex/Exchange/Trade/ConfirmTradeModal.qml,,767,dPoW protected,768,dPoW-geschützt,Protegido por dPoW,,
+771,Dex/Exchange/Trade/ConfirmTradeModal.qml,,772,%1 confirmations for incoming %2 transactions,773,%1 Bestätigungen für eingehende %2 Transaktionen,%1 confirmaciones para %2 transacciones entrantes,,
+776,Dex/Exchange/Trade/ConfirmTradeModal.qml,,777,Read more about dPoW,778,Lesen Sie mehr über dPoW,Obtenga más información sobre dPoW,,
+781,Dex/Exchange/Trade/ConfirmTradeModal.qml,TICKER,782,Use custom protection settings for incoming %1 transactions,784,Benutzerdefinierte Schutzeinstellungen für eingehende %1 Transaktionen verwenden,Utilice configuraciones de protección personalizadas para %1 transacciones entrantes,,
+787,Dex/Exchange/Trade/ConfirmTradeModal.qml,,788,Enable Komodo dPoW security,789,Komodo dPoW-Sicherheit aktivieren,Habilite la seguridad dPoW de Komodo,,
+792,Dex/Exchange/Trade/ConfirmTradeModal.qml,,793,Required Confirmations,794,Erforderliche Bestätigungen,Confirmaciones Requeridas,,
+797,Dex/Exchange/Trade/ConfirmTradeModal.qml,,798,"Warning, this atomic swap is not dPoW protected!",799,"Achtung, dieser Atomic Swap ist nicht dPoW-geschützt!","Advertencia, este intercambio atómico no está protegido por dPoW!",,
+802,Dex/Exchange/Trade/ConfirmTradeModal.qml,,803,Cancel,804,Abbrechen,Cancelar,,
+807,Dex/Exchange/Trade/ConfirmTradeModal.qml,,808,Confirm,809,Bestätigen,Confirmar,,
+815,Dex/Components/CopyFieldButton.qml,,816,Copied to Clipboard,817,In die Zwischenablage kopiert,Copiado al Portapapeles,,
+823,Dex/Screens/Dashboard.qml,,824,The current number of enabled coins does not match your configuration specification. Your assets configuration will be reset.,825,Die aktuelle Anzahl aktivierter Coins stimmt nicht mit Ihrer Konfigurationsvorgabe überein. Die Konfiguration der Assets wird zurückgesetzt.,El número actual de monedas habilitadas no coincide con su especificación de configuración. Se restablecerá la configuración de sus activos.,,
+828,Dex/Screens/Dashboard.qml,,829,Matching,830,"Zusammenführung",Emparejamiento,,
+833,Dex/Screens/Dashboard.qml,,834,Order Matching,835,"Auftrag wird zusammengeführt",Emparejamiento de Ordenes,,
+838,Dex/Screens/Dashboard.qml,,839,Matched,840,"Zusammengeführt",Emparejamiento Completo,,
+843,Dex/Screens/Dashboard.qml,,844,Order Matched,845,"Auftrag wurde zusammengeführt",Orden Emparejada,,
+848,Dex/Screens/Dashboard.qml,,849,Ongoing,850,"Laufend",En curso,,
+853,Dex/Screens/Dashboard.qml,,854,Swap Ongoing,855,Austausch läuft,Intercambio en Curso,,
+858,Dex/Screens/Dashboard.qml,,859,Successful,860,Erfolgreich,Exitoso,,
+863,Dex/Screens/Dashboard.qml,,864,Swap Successful,865,Tausch erfolgreich,Intercambio Exitoso,,
+868,Dex/Screens/Dashboard.qml,,869,Refunding,870,Rückzahlung,Reembolso,,
+873,Dex/Screens/Dashboard.qml,,874,Failed,875,Fehlgeschlagen,Fallido,,
+878,Dex/Screens/Dashboard.qml,,879,Swap Failed,880,Tausch fehlgeschlagen,Intercambio Fallido,,
+883,Dex/Screens/Dashboard.qml,,884,Unknown,885,Unbekannt,Desconocido,,
+888,Dex/Screens/Dashboard.qml,,889,Unknown State,890,Unbekannter Status,Estado Desconocido,,
+893,Dex/Screens/Dashboard.qml,,894,Started,895,Gestartet,Iniciado,,
+898,Dex/Screens/Dashboard.qml,,899,Negotiated,900,"Ausgehandelt",Negociado,,
+903,Dex/Screens/Dashboard.qml,,904,Taker fee sent,905,Taker-Gebühr gesendet,Tarifa taker enviada,,
+908,Dex/Screens/Dashboard.qml,,909,Maker payment received,910,Maker-Zahlung erhalten,Pago de maker recibido,,
+913,Dex/Screens/Dashboard.qml,,914,Maker payment wait confirm started,915,Warten auf die Zahlungsbestätigung des Makers gestartet,Inicio de espera de confirmacion de pago de maker,,
+918,Dex/Screens/Dashboard.qml,,919,Maker payment validated and confirmed,920,Maker-Zahlung validiert und bestätigt,Validacion y confirmacion de pago de maker,,
+923,Dex/Screens/Dashboard.qml,,924,Taker payment sent,925,Taker-Zahlung gesendet,Pago de taker enviado,,
+928,Dex/Screens/Dashboard.qml,,929,Taker payment spent,930,Taker-Zahlung ausgegeben,Pago del taker gastado,,
+933,Dex/Screens/Dashboard.qml,,934,Maker payment spent,935,Maker-Zahlung ausgegeben,Pago del maker gastado,,
+938,Dex/Screens/Dashboard.qml,,939,Finished,940,Fertig,Terminado,,
+943,Dex/Screens/Dashboard.qml,,944,Start failed,945,Start fehlgeschlagen,Inicio fallido,,
+948,Dex/Screens/Dashboard.qml,,949,Negotiate failed,950,Verhandeln fehlgeschlagen,Negociacion fallida,,
+953,Dex/Screens/Dashboard.qml,,954,Taker fee validate failed,955,Validierung der Abnehmergebühr fehlgeschlagen,Validación de tarifa del taker fallida,,
+958,Dex/Screens/Dashboard.qml,,959,Maker payment transaction failed,960,Maker-Zahlungstransaktion fehlgeschlagen,Transacción de pago de maker fallo,,
+963,Dex/Screens/Dashboard.qml,,964,Maker payment Data send failed,965,Fehler beim Senden der Maker-Zahlungsdaten,Envio de data de pago de maker fallo,,
+968,Dex/Screens/Dashboard.qml,,969,Maker payment wait confirm failed,970,Warten auf die Zahlungsbestätigung des Makers fehlgeschlagen,Espera de confirmacion de pago de maker fallo,,
+973,Dex/Screens/Dashboard.qml,,974,Taker payment validate failed,975,Validierung der Taker-Zahlung fehlgeschlagen,Validacion de pago de taker fallo,,
+978,Dex/Screens/Dashboard.qml,,979,Taker payment wait confirm failed,980,Warten auf die Zahlungsbestätigung des Takers fehlgeschlagen,Espera de confirmacion de pago de taker fallo,,
+983,Dex/Screens/Dashboard.qml,,984,Taker payment spend failed,985,Zahlungsausgabe des Takers fehlgeschlagen,Gasto de pago de taker fallo,,
+988,Dex/Screens/Dashboard.qml,,989,Maker payment wait refund started,990,Countdown für die Rückerstattung der Maker-Zahlung hat begonnen,Reembolso de espera de pago de maker iniciado,,
+993,Dex/Screens/Dashboard.qml,,994,Maker payment refunded,995,Maker-Zahlung zurückerstattet,Pago de maker reembolsado,,
+998,Dex/Screens/Dashboard.qml,,999,Maker payment refund failed,1000,Rückerstattung der Maker-Zahlung fehlgeschlagen,Reembolso del pago de maker fallo,,
+1006,Dex/Components/DatePicker.qml,,1007,Date,1008,Datum,Fecha,,
+1014,Dex/Components/DefaultCopyIcon.qml,,1015,copied to clipboard,1016,In die Zwischenablage kopiert,copiada al portapapeles,,
+1022,Dex/Components/DefaultRangeSlider.qml,,1023,Min,1024,Min,Min,,
+1027,Dex/Components/DefaultRangeSlider.qml,,1028,Max,1029,Max,Max,,
+1035,Dex/Components/DefaultTextEdit.qml,,1036,copied to clipboard,1037,In die Zwischenablage kopiert,copiado al portapapeles,,
+1043,Dex/Settings/DeleteWalletModal.qml,,1044,Delete Wallet,1045,Brieftasche löschen,Eliminar billetera,,
+1048,Dex/Settings/DeleteWalletModal.qml,WALLET_NAME,1049,Are you sure you want to delete %1 wallet?,1051,"Sind Sie sicher, dass Sie die %1 Brieftasche löschen möchten?",¿Está seguro de que desea eliminar %1 billetera?,,
+1054,Dex/Settings/DeleteWalletModal.qml,,1055,"If so, make sure you record your seed phrase in order to restore your wallet in the future.",1056,"Wenn ja, stellen Sie sicher, dass Sie Ihre Seed-Phrase notieren, um Ihre Brieftasche in Zukunft wiederherzustellen.","Si es así, asegúrese de registrar su frase inicial para restaurar su billetera en el futuro.",,
+1059,Dex/Settings/DeleteWalletModal.qml,,1060,Enter your wallet password,1061,Geben Sie das Kennwort für ihre Brieftasche ein,Ingrese la contraseña de su billetera,,
+1064,Dex/Settings/DeleteWalletModal.qml,,1065,Wrong Password,1066,Falsches Kennwort,Contraseña incorrecta,,
+1069,Dex/Settings/DeleteWalletModal.qml,,1070,Cancel,1071,Abbrechen,Cancelar,,
+1074,Dex/Settings/DeleteWalletModal.qml,,1075,Delete,1076,Löschen,Eliminar,,
+1082,Dex/Components/DexAppPasswordField.qml,,1083,Type password,1084,Kennwort eingeben,Escriba la contraseña,,
+1090,Dex/Components/DexKeyChecker.qml,,1091,At least 1 lowercase alphabetical character,1092,Mindestens 1 Kleinbuchstabe,Al menos 1 carácter alfabético en minúscula,,
+1095,Dex/Components/DexKeyChecker.qml,,1096,At least 1 uppercase alphabetical character,1097,Mindestens 1 Großbuchstabe,Al menos 1 carácter alfabético en mayúscula,,
+1100,Dex/Components/DexKeyChecker.qml,,1101,At least 1 numeric character,1102,Mindestens 1 Ziffer,Al menos 1 carácter numérico,,
+1105,Dex/Components/DexKeyChecker.qml,,1106,At least 1 special character (eg. !@#$%),1107,Mindestens 1 Sonderzeichen (z. B. ! @ # $ %),"Al menos 1 carácter especial (p. ej., !@#$%)",,
+1110,Dex/Components/DexKeyChecker.qml,,1111,At least %n character(s),1112,,Al menos %n carácter(es),,
+1118,Dex/Components/DexKeyChecker.qml,,1119,Password and Confirm Password have to be same,1120,Kennwort und Kennwortbestätigung müssen identisch sein,Contraseña y Confirmar Contraseña tienen que ser los mismos,,
+1126,Dex/Components/DexPaginator.qml,,1127,items per page,1128,Elemente pro Seite,elementos por página,,
+1134,Dex/Components/DexRangeSlider.qml,,1135,Min,1136,Min,Min,,
+1139,Dex/Components/DexRangeSlider.qml,,1140,Half,1141,Halb,Mitad,,
+1144,Dex/Components/DexRangeSlider.qml,,1145,Max,1146,Max,Max,,
+1152,Dex/Components/DexSweetComboBox.qml,,1153,Search,1154,Suchen,Buscar,,
+1160,Dex/Addressbook/EditContactModal.qml,,1161,Edit contact,1162,Kontakt bearbeiten,Editar contacto,,
+1165,Dex/Addressbook/EditContactModal.qml,,1166,Contact name,1167,Kontaktname,Nombre,,
+1170,Dex/Addressbook/EditContactModal.qml,,1171,Enter a contact name,1172,Geben Sie einen Kontaktnamen ein,Ingresar un nombre de contacto,,
+1175,Dex/Addressbook/EditContactModal.qml,,1176,Address list,1177,Adressliste,Lista de direcciónes,,
+1180,Dex/Addressbook/EditContactModal.qml,,1181,Address Book,1182,Adressbuch,Libreta de direcciónes,,
+1185,Dex/Addressbook/EditContactModal.qml,,1186,address copied to clipboard,1187,Adresse in die Zwischenablage kopiert,direccion copiada al portapapeles,,
+1190,Dex/Addressbook/EditContactModal.qml,,1191,Edit,1192,Bearbeiten,Editar,,
+1195,Dex/Addressbook/EditContactModal.qml,,1196,+ Add,1197,+ Hinzufügen,#NAME?,,
+1200,Dex/Addressbook/EditContactModal.qml,,1201,Tags,1202,Schlagworte,Etiquetas,,
+1205,Dex/Addressbook/EditContactModal.qml,,1206,Add tag,1207,Schlagwort hinzufügen,Agregar etiqueta,,
+1210,Dex/Addressbook/EditContactModal.qml,,1211,Close,1212,Schließen,Cerrar,,
+1215,Dex/Addressbook/EditContactModal.qml,,1216,Confirm,1217,Bestätigen,Confirmar,,
+1223,Dex/Addressbook/EnableAssetModal.qml,,1224,"The selected address belongs to a disabled asset, you need to enabled it before sending.",1225,"Die ausgewählte Adresse gehört zu einem deaktivierten Asset, Sie müssen es vor dem Senden aktivieren.","La dirección seleccionada pertenece a un activo deshabilitado, debe habilitó antes de enviar.",,
+1228,Dex/Addressbook/EnableAssetModal.qml,,1229,Enable,1230,Aktivieren,Habilitar,,
+1233,Dex/Addressbook/EnableAssetModal.qml,,1234,Cancel,1235,Abbrechen,Cancelar,,
+1241,Dex/Wallet/EnableCoinModal.qml,,1242,Enable assets,1243,Assets aktivieren,Habilitar activos,,
+1246,Dex/Wallet/EnableCoinModal.qml,,1247,Select all assets,1248,Alle Assets auswählen,Seleccionar todos los activos,,
+1251,Dex/Wallet/EnableCoinModal.qml,,1252,All assets are already enabled!,1253,Alle Assets sind bereits aktiviert!,¡Todos los activos ya están habilitados!,,
+1256,Dex/Wallet/EnableCoinModal.qml,,1257,You can still enable %1 assets. Selected: %2.,1258,Sie können weiterhin %1 Assets aktivieren. Ausgewählt: %2.,Todavía puede habilitar activos %1. Seleccionado: %2.,,
+1261,Dex/Wallet/EnableCoinModal.qml,,1262,Search asset,1263,Asset suchen,Buscar activo,,
+1266,Dex/Wallet/EnableCoinModal.qml,,1267,Change assets limit,1268,Asset-Limit ändern,Cambiar el límite de activos,,
+1271,Dex/Wallet/EnableCoinModal.qml,,1272,Add a custom asset,1273,Benutzerdefiniertes Asset hinzufügen,Agregar un activo personalizado,,
+1276,Dex/Wallet/EnableCoinModal.qml,,1277,Close,1278,Schließen,Cerrar,,
+1281,Dex/Wallet/EnableCoinModal.qml,,1282,Enable,1283,Aktivieren,Habilitar,,
+1289,Dex/Components/EulaModal.qml,,1290,Disclaimer & Terms of Service,1291,Haftungsausschluss & Nutzungsbedingungen,Descargo de Responsabilidad & Términos de servicio,,
+1294,Dex/Components/EulaModal.qml,,1295,Accept EULA,1296,EULA akzeptieren,Aceptar EULA,,
+1299,Dex/Components/EulaModal.qml,,1300,Accept Terms and Conditions,1301,Allgemeine Geschäftsbedingungen akzeptieren,Aceptar términos y condiciones,,
+1304,Dex/Components/EulaModal.qml,,1305,Close,1306,Schließen,Cerrar,,
+1309,Dex/Components/EulaModal.qml,,1310,Cancel,1311,Abbrechen,Cancelar,,
+1314,Dex/Components/EulaModal.qml,,1315,Confirm,1316,Bestätigen,Confirmar,,
+1322,Dex/Dashboard/FatalErrorModal.qml,,1323,Fatal Error,1324,Schwerwiegender Fehler,Error Fatal,,
+1327,Dex/Dashboard/FatalErrorModal.qml,,1328,Connection has been lost. You have been disconnected.,1329,Die Verbindung wurde unterbrochen. Ihre Verbindung wurde getrennt.,Ha perdido la conexión. Has sido desconectado.,,
+1332,Dex/Dashboard/FatalErrorModal.qml,,1333,Close,1334,Schließen,Cerrar,,
+1340,Dex/Exchange/Trade/Trading/Items/FeeInfo.qml,,1341,Minimum fee,1342,Mindestgebühr,Tarifa mínima,,
+1345,Dex/Exchange/Trade/Trading/Items/FeeInfo.qml,,1346,Fees will be calculated,1347,Gebühren werden berechnet,Las tarifas se calcularán,,
+1353,Dex/Constants/General.qml,,1354,%n day(s),1355,,%n día(s),,
+1361,Dex/Constants/General.qml,day,1362,%nd,1364,,%nd,,
+1370,Dex/Constants/General.qml,hours,1371,%nh,1373,,%nh,,
+1379,Dex/Constants/General.qml,minutes,1380,%nm,1382,,%nm,,
+1388,Dex/Constants/General.qml,seconds,1389,%ns,1391,,%ns,,
+1397,Dex/Constants/General.qml,milliseconds,1398,%nms,1400,,%nms,,
+1406,Dex/Constants/General.qml,,1407,-,1408,-,-,,
+1411,Dex/Constants/General.qml,,1412,<b>Taker tx fee:</b> ,1413,<b>Taker tx Gebühren:</b> ,<b>Taker tx fee:</b>,,
+1416,Dex/Constants/General.qml,,1417,<b>Dex tx fee:</b> ,1418,<b>Dex tx Gebühren:</b> ,<b>Dex tx fee:</b>,,
+1421,Dex/Constants/General.qml,,1422,<b>Dex fee:</b> ,1423,<b>Dex Gebühren:</b> ,<b>Dex fee:</b>,,
+1426,Dex/Constants/General.qml,,1427,<b>Maker tx fee:</b> ,1428,<b>Maker tx Gebühren:</b> ,<b>Maker tx fee:</b>,,
+1431,Dex/Constants/General.qml,,1432,%1 %2 %3 (%4),1433,%1 %2 %3 (%4),%1 %2 %3 (%4),,
+1436,Dex/Constants/General.qml,,1437,Trading Fee,1438,Handelsgebühr,Tarifa de Intercambio,,
+1441,Dex/Constants/General.qml,,1442,Minimum Trading Amount,1443,Mindesthandelsbetrag,Minimo Monto de Intercambio,,
+1446,Dex/Constants/General.qml,WALLETNAME,1447,Wallet %1 already exists,1449,Brieftasche %1 existiert bereits,Monedero %1 ya existe,,
+1452,Dex/Constants/General.qml,,1453,%1 balance is lower than the fees amount: %2 %3,1454,Das %1 Guthaben ist niedriger als der Gebührenbetrag: %2 %3,El saldo de %1 es inferior al monto de las tarifas: %2 %3,,
+1457,Dex/Constants/General.qml,,1458,Tradable (after fees) %1 balance is lower than minimum trade amount,1459,Handelbares %1 Guthaben (nach Gebühren) ist niedriger als der Mindesthandelsbetrag,El saldo de %1 (después de las tarifas) es inferior al monto mínimo de intercambio,,
+1462,Dex/Constants/General.qml,,1463,Please fill the price field,1464,Bitte füllen Sie das Preisfeld aus,Por favor complete el campo de precio,,
+1467,Dex/Constants/General.qml,,1468,Please fill the volume field,1469,Bitte füllen Sie das Volumenfeld aus,Complete el campo de volumen,,
+1473,Dex/Constants/General.qml,,1474,%1 volume is lower than minimum trade amount,1475,%1 Volumen ist niedriger als der minimale Handelsbetrag,El volumen de %1 es inferior al monto mínimo de intercambio,,
+1479,Dex/Constants/General.qml,,1480,%1 needs to be enabled in order to use %2,1481,"%1 muss aktiviert werden, um %2 verwenden zu können",%1 debe habilitarse para usar %2,,
+1485,Dex/Constants/General.qml,,1486,"%1 balance needs to be funded, a non-zero balance is required to pay the gas of %2 transactions",1487,"Das %1 Guthaben muss finanziert werden, ein Guthaben größer Null ist erforderlich, um das Benzin von %2 Transaktionen zu bezahlen","el saldo de %1 esta en cero, se requiere un saldo minimo para pagar el gas de transacciones de % 2",,
+1490,Dex/Constants/General.qml,,1491,Unknown Error,1492,Unbekannter Fehler,Error Desconocido,,
+1498,Dex/Exchange/Trade/BestOrder/Header.qml,,1499,You get,1500,Du erhältst,Obtienes,,
+1503,Dex/Exchange/Trade/BestOrder/Header.qml,,1504,You send,1505,Sie senden,Envía,,
+1508,Dex/Exchange/Trade/BestOrder/Header.qml,,1509,Fiat Price,1510,Fiat Preis,Precio Fiat,,
+1513,Dex/Exchange/Trade/BestOrder/Header.qml,,1514,CEX rate,1515,CEX-Kurs,Tasa CEX,,
+1518,Dex/Exchange/Trade/OrderBook/Header.qml,,1519,Price,1520,Preis,Precio,,
+1523,Dex/Exchange/Trade/OrderBook/Header.qml,,1524,Quantity,1525,Menge,Cantidad,,
+1528,Dex/Exchange/Trade/OrderBook/Header.qml,,1529,Total,1530,Gesamt,Total,,
+1536,Dex/Screens/Startup/ImportWallet.qml,,1537,Failed to Import the wallet,1538,Fehler beim Importieren der Brieftasche,No se pudo importar la billetera,,
+1541,Dex/Screens/Startup/ImportWallet.qml,,1542,Import wallet - Setup,1543,Brieftasche importieren - Einrichtung,Importar billetera - Configurar,,
+1546,Dex/Screens/Startup/ImportWallet.qml,,1547,Import wallet - Choose password,1548,Brieftasche importieren - Kennwort wählen,Importar billetera - Elegir contraseña,,
+1551,Dex/Screens/Startup/ImportWallet.qml,,1552,Wallet Name,1553,Name der Brieftasche,Nombre de billetera,,
+1556,Dex/Screens/Startup/ImportWallet.qml,,1557,Enter seed,1558,Geben Sie den Seed ein,Ingresar semilla,,
+1561,Dex/Screens/Startup/ImportWallet.qml,,1562,Your seed is not BIP39 compliant. Try again or select 'Allow custom seed' to continue.,1564,Ihr Seed ist nicht BIP39-konform. Versuchen Sie es erneut oder wählen Sie "benutzerdefinierten Seed erlauben" um fortzufahren,Su semilla no es compatible con BIP39. Vuelva a intentarlo o seleccione 'Permitir semilla personalizada' continuar.,,
+1568,Dex/Screens/Startup/ImportWallet.qml,,1569,i understand,1570,Ich verstehe,entiendo,,
+1573,Dex/Screens/Startup/ImportWallet.qml,,1574,Ok,1575,Ok,Ok,,
+1578,Dex/Screens/Startup/ImportWallet.qml,,1579,Allow custom seed,1580,Benutzerdefinierten Seed zulassen,Permitir semilla personalizada,,
+1583,Dex/Screens/Startup/ImportWallet.qml,,1584,<strong>Allow custom seed</strong>,1585,<strong>Benutzerdefinierten Seed zulassen</strong>,<strong>Permitir semilla personalizada</strong>,,
+1588,Dex/Screens/Startup/ImportWallet.qml,,1589,"Custom seed phrases might be less secure and easier to crack than a generated BIP39 compliant seed phrase or private key (WIF).<br><br>To confirm you understand the risk and know what you are doing, type <strong>'I understand'</strong> in the box below.",1590,"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).<br><br>Um zu bestätigen, dass Sie das Risiko verstehen und wissen, was Sie tun, geben Sie <strong>'Ich verstehe'</strong> im Kasten unten.","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.<br><br>Para confirmar que comprende el riesgo y sabe lo que está haciendo, escriba <strong> 'Entiendo'</strong> en el cuadro de abajo.",,
+1593,Dex/Screens/Startup/ImportWallet.qml,,1594,I understand,1595,Ich verstehe,Entiendo,,
+1598,Dex/Screens/Startup/ImportWallet.qml,,1599,Next,1600,Weiter,Siguiente,,
+1603,Dex/Screens/Startup/ImportWallet.qml,,1604,Enter the same password to confirm,1605,Geben Sie zur Bestätigung dasselbe Kennwort ein,Ingrese la misma contraseña para confirmar,,
+1608,Dex/Screens/Startup/ImportWallet.qml,,1609,Continue,1610,Fortsetzen,Continuar,,
+1616,Dex/Components/LinksRow.qml,,1617,Join our Discord server,1618,Tritt unserem Discord-Server bei,Únase a nuestro servidor de Discord,,
+1621,Dex/Components/LinksRow.qml,,1622,Follow us on Twitter,1623,Folge uns auf Twitter,Síganos en Twitter,,
+1626,Dex/Components/LinksRow.qml,,1627,Go to Support Guides,1628,Zu den Support-Leitfäden,Ir a Guías de soporte,,
+1634,Dex/Exchange/Trade/SimpleView/List.qml,,1635,Funds are recoverable,1636,Geldmittel sind erstattungsfähig,Los fondos son recuperables,,
+1639,Dex/Exchange/Trade/BestOrder/List.qml,,1640,Best Orders,1641,Die günstigsten Aufträge,Mejores Ordenes,,
+1647,Dex/Exchange/Trade/BestOrder/ListDelegate.qml,,1648,%1 is not enabled - Do you want to enable it to be able to select %2 best orders ?<br><a href='#'>Yes</a> - <a href='#no'>No</a>,1649,"%1 ist nicht aktiviert - Möchten Sie es aktivieren, um die günstigsten Aufträge von %2 auswählen zu können? <br><a href='#'>Ja</a> - <a href='#no'>Nein</a>",%1 no está habilitado. ¿Desea habilitarlo para poder seleccionar las mejores ordenes de %2 ?< br><a href='#'>Sí</a> - <a href='#no'>No</a>,,
+1652,Dex/Exchange/Trade/OrderBook/ListDelegate.qml,,1653,This order requires a minimum amount of %1 %2 <br>You don't have enough funds.<br> %3,1654,Für diesen Auftrag ist ein Mindestbetrag von %1 %2 erforderlich. <br>Ihr Guthaben reicht nicht aus.<br> %3,Este pedido requiere una cantidad mínima de %1 %2 <br>No tiene fondos suficientes.<br> %3,,
+1660,Dex/Components/LogModal.qml,,1661,Close,1662,Schließen,Cerrar,,
+1668,Dex/Screens/Startup/Logging.qml,,1669,"Loading, please wait",1670,"Lädt, bitte warten","Cargando, por favor espere",,
+1673,Dex/Screens/Startup/Logging.qml,,1674,Initializing MM2,1675,MM2 initialisieren,Inicializando MM2,,
+1678,Dex/Screens/Startup/Logging.qml,,1679,Enabling assets,1680,Assets ermöglichen,Habilitando activos,,
+1683,Dex/Screens/Startup/Logging.qml,,1684,Getting ready,1685,Fertig werden,Preparándose,,
+1691,Dex/Screens/Startup/Login.qml,,1692,Incorrect Password,1693,Falsches Kennwort,Contraseña incorrecta,,
+1696,Dex/Screens/Startup/Login.qml,,1697,Log In,1698,Anmelden,Iniciar sesión,,
+1701,Dex/Screens/Startup/Login.qml,,1702,Cancel,1703,Abbrechen,Cancelar,,
+1709,Dex/Wallet/Main.qml,,1710,Segwit,1711,Segwit,Segwit,,
+1714,Dex/Wallet/Main.qml,,1715,Confirmation,1716,Bestätigung,Confirmación,,
+1719,Dex/Wallet/Main.qml,,1720,Do you want to send your %1 funds to %2 wallet first?,1721,Möchten Sie Ihr %1-Guthaben zuerst an die %2-Brieftasche senden?,¿Desea enviar sus fondos de %1 a la billetera %2 primero?,,
+1724,Dex/Wallet/Main.qml,,1725,Success,1726,Erfolg,Éxito,,
+1729,Dex/Wallet/Main.qml,,1730,"Your transaction is send, may take some time to arrive",1731,"Ihre Transaktion wird gesendet, es kann einige Zeit dauern, bis sie ankommt","Su transacción se envió, puede demorar algún tiempo en llegar",,
+1734,Dex/Wallet/Main.qml,,1735,Price,1736,Preis,Precio,,
+1739,Dex/Wallet/Main.qml,,1740,Change 24hr,1741,24h Veränderung,Cambio,,
+1744,Dex/Wallet/Main.qml,,1745,Porfolio,1746,Portfolio,Cartera,,
+1749,Dex/Wallet/Main.qml,,1750,Contract Address,1751,Vertragsadresse,Dirección del Contrato,,
+1754,Dex/Wallet/Main.qml,,1755,Send,1756,Senden,Enviar,,
+1759,Dex/Wallet/Main.qml,,1760,Enable %1 ?,1761,%1 aktivieren?,¿Habilitar %1?,,
+1764,Dex/Wallet/Main.qml,,1765,Yes,1766,Ja,Sí,,
+1769,Dex/Wallet/Main.qml,,1770,No,1771,Nein,No,,
+1774,Dex/Wallet/Main.qml,,1775,Receive,1776,Empfangen,Recibir,,
+1779,Dex/Wallet/Main.qml,,1780,Swap,1781,Tausch,Swap,,
+1784,Dex/Wallet/Main.qml,,1785,is wallet only,1786,nur Brieftasche (kein DEX möglich),es solo monedero,,
+1789,Dex/Wallet/Main.qml,,1790,Rewards,1791,Belohnungen,Recompensas,,
+1794,Dex/Wallet/Main.qml,,1795,Faucet,1796,Faucet,Grifo,,
+1801,Dex/Wallet/Main.qml,,1802,Public Key,1803,Öffentlicher Schlüssel,Clave Pública,,
+1806,Dex/Wallet/Main.qml,,1807,Copied to Clipboard,1808,In die Zwischenablage kopiert,Copiada en el Portapapeles,,
+1811,Dex/Wallet/Main.qml,,1812,Loading market data,1813,Laden von Marktdaten,Cargando datos de mercado,,
+1816,Dex/Wallet/Main.qml,,1817,There is no chart data for this ticker yet,1818,Für diesen Ticker liegen noch keine Chartdaten vor,Todavía no hay datos de gráfico para este ticker,,
+1821,Dex/Wallet/Main.qml,,1822,Fetching transactions...,1823,Transaktionen werden abgerufen...,Obteniendo transacciones...,,
+1826,Dex/Wallet/Main.qml,,1827,No transactions available,1828,Keine Transaktionen verfügbar,No hay transacciones disponibles,,
+1831,Dex/Wallet/Main.qml,,1832,Click to view your address on %1 (%2) block explorer,1833,"Klicken Sie hier, um Ihre Adresse im %1 (%2) Block-Explorer anzuzeigen",Haga clic para ver su dirección en %1 (%2) explorador de bloques,,
+1836,Dex/Exchange/Trade/SimpleView/Main.qml,,1837,Trade,1838,Handeln,Intercambio,,
+1841,Dex/Exchange/ProView/TradingInfo/Main.qml,,1842,Trading Information,1843,Handelsinformationen,Informacion de Intercambio,,
+1846,Dex/Exchange/ProView/TradingInfo/Main.qml,,1847,Chart,1848,Chart,Gráfico,,
+1852,Dex/Exchange/Trade/SimpleView/Main.qml,,1853,Orders,1854,Aufträge,Ordenes,,
+1858,Dex/Exchange/Trade/SimpleView/Main.qml,,1859,History,1860,Historie,Historial,,
+1863,Dex/Exchange/ProView/PlaceOrderForm/Main.qml,,1864,Place Order,1865,Auftrag platzieren,Realizar pedido,,
+1868,Dex/Exchange/ProView/PlaceOrderForm/Main.qml,,1869,Order Selected,1870,Auftrag ausgewählt,Pedido seleccionado,,
+1873,Dex/Exchange/ProView/PlaceOrderForm/Main.qml,,1874,START SWAP,1875,TAUSCH STARTEN,INICIO INTERCAMBIAR,,
+1879,Dex/Addressbook/Main.qml,,1880,Address Book,1881,Adressbuch,Libreta de direcciones,,
+1884,Dex/Addressbook/Main.qml,,1885,Search contact,1886,Kontakt suchen,Buscar contacto,,
+1889,Dex/Addressbook/Main.qml,,1890,+ NEW CONTACT,1891,+ Neuer Kontakt,Nuevo contacto,,
+1894,Dex/Addressbook/Main.qml,,1895,Name,1896,Name,Nombre,,
+1899,Dex/Addressbook/Main.qml,,1900,Tags,1901,Schlagwörter,Etiquetas,,
+1904,Dex/Addressbook/Main.qml,,1905,Edit,1906,Bearbeiten,Editar,,
+1909,Dex/Addressbook/Main.qml,,1910,Delete,1911,Löschen,Eliminar,,
+1914,Dex/Addressbook/Main.qml,,1915,address copied to clipboard,1916,Adresse in die Zwischenablage kopiert,dirección copiada al portapapeles,,
+1919,Dex/Addressbook/Main.qml,,1920,This contact does not have any registered address.,1921,Dieser Kontakt hat keine registrierte Adresse.,Este contacto no tiene ninguna dirección registrada.,,
+1927,Dex/Exchange/ProView/PlaceOrderForm/MarketModeSelector.qml,TICKER,1928,Sell %1,1930,%1 Verkaufen,Vender %1,,
+1933,Dex/Exchange/ProView/PlaceOrderForm/MarketModeSelector.qml,TICKER,1934,Buy %1,1936,%1 Kaufen,Comprar %1,,
+1942,Dex/Components/MinTradeModal.qml,,1943,Minimum Trading Amount,1944,Mindesthandelsbetrag,Cantidad Mínima de Intercambio,,
+1947,Dex/Components/MinTradeModal.qml,,1948,the minimum amount of %1 coin available for the order; the min_volume must be greater than or equal to %2; it must be also less or equal than volume param; default is %3,1949,"die Mindestmenge von %1 Coin, die für die Bestellung verfügbar ist; das min_volume muss größer oder gleich %2 sein; es muss auch kleiner oder gleich als volume param sein; Standard ist %3",la cantidad mínima de la moneda %1 disponible para la orden; el min_volume debe ser mayor o igual a %2; debe ser también menor o igual que volumen param; el valor predeterminado es %3,,
+1955,Dex/Exchange/Trade/MultiOrder.qml,TICKER,1956,%1 price is zero!,1958,%1 Preis ist null!,el precio de %1 es cero!,,
+1961,Dex/Exchange/Trade/MultiOrder.qml,TICKER,1962,%1 receive volume is lower than minimum trade amount,1964,%1 Empfangsvolumen ist niedriger als der Mindesthandelsbetrag,volumen de recepción de %1 es inferior al monto mínimo de transacción,,
+1967,Dex/Exchange/Trade/MultiOrder.qml,,1968,Error:,1969,Fehler:,Error:,,
+1972,Dex/Exchange/Trade/MultiOrder.qml,AMOUNT TICKER,1973,You'll receive %1,1975,Sie erhalten %1,Tu'll recibes %1,,
+1978,Dex/Exchange/Trade/MultiOrder.qml,,1979,Price,1980,Preis,Precio,,
+1986,Dex/Addressbook/NewContactPopup.qml,,1987,Contact name,1988,Kontaktname,Nombre,,
+1991,Dex/Addressbook/NewContactPopup.qml,,1992,This contact name already exists.,1993,Dieser Kontaktname existiert bereits.,Este nombre de contacto ya existe.,,
+1996,Dex/Addressbook/NewContactPopup.qml,,1997,+ ADD,1998,+ HINZUFÜGEN,#NAME?,,
+2006,Dex/NewUpdateModal.qml,,2007,Searching new updates,2008,Suche nach neuen Updates,Buscando nuevas actualizaciones,,
+2011,Dex/NewUpdateModal.qml,,2012,Fetching...,2013,Abrufen…,Buscando...,,
+2019,Dex/NewUpdateModal.qml,,2020,Close,2021,Schließen,Cerrar,,
+2024,Dex/NewUpdateModal.qml,,2025,Could not check new updates for the following reason: %1,2027,Neue Updates konnten aus folgendem Grund nicht überprüft werden: %1,No se pudieron comprobar nuevas actualizaciones por el siguiente motivo: %1,,
+2030,Dex/NewUpdateModal.qml,,2031,New version found,2032,Neue Version gefunden,Nueva versión encontrada,,
+2035,Dex/NewUpdateModal.qml,,2036,Mandatory version found,2037,Zwingend notwendige Version gefunden,Versión obligatoria encontrada,,
+2040,Dex/NewUpdateModal.qml,,2041,%1 %2 is available !,2042,%1 %2 ist verfügbar !,%1 ¡%2 está disponible!,,
+2045,Dex/NewUpdateModal.qml,,2046,This update is mandatory to continue using the application,2047,"Dieses Update ist zwingend erforderlich, um die Anwendung weiterhin verwenden zu können",Esta actualización es obligatoria para seguir usando la aplicación,,
+2050,Dex/NewUpdateModal.qml,,2051,Close Dex,2052,Dex schließen,Cerrar Dex,,
+2055,Dex/NewUpdateModal.qml,,2056,Your application is updated.,2057,Ihre Anwendung ist auf dem neuesten Stand.,Tu aplicación está actualizada.,,
+2060,Dex/NewUpdateModal.qml,,2061,Download,2062,Herunterladen,Descargar,,
+2068,Dex/Screens/Startup/NewWallet.qml,,2069,"Wrong word, please check again",2070,"Falsches Wort, bitte überprüfen Sie es erneut","Palabra incorrecta, verifique nuevamente",,
+2073,Dex/Screens/Startup/NewWallet.qml,,2074,st,2075,.,st,,
+2078,Dex/Screens/Startup/NewWallet.qml,,2079,nd,2080,.,nd,,
+2083,Dex/Screens/Startup/NewWallet.qml,,2084,rd,2085,.,rd,,
+2088,Dex/Screens/Startup/NewWallet.qml,,2089,th,2090,.,th,,
+2093,Dex/Screens/Startup/NewWallet.qml,,2094,Failed to create a wallet,2095,Anlegen einer Brieftasche ist fehlgeschlagen,No se pudo crear una billetera,,
+2098,Dex/Screens/Startup/NewWallet.qml,,2099,New Wallet,2100,Neue Brieftasche,Nueva billetera,,
+2103,Dex/Screens/Startup/NewWallet.qml,,2104,Confirm Seed,2105,Seed bestätigen,Confirmar semilla,,
+2108,Dex/Screens/Startup/NewWallet.qml,,2109,Choose Password,2110,Wählen sie ein Kennwort,Elegir contraseña,,
+2113,Dex/Screens/Startup/NewWallet.qml,,2114,Important: Back up your seed phrase before proceeding!,2115,"Wichtig: Sichern Sie Ihre Seed-Phrase, bevor Sie fortfahren!",Importante: ¡Haga una copia de seguridad de su frase semilla antes de continuar!,,
+2118,Dex/Screens/Startup/NewWallet.qml,,2119,We recommend storing it offline.,2120,"Wir empfehlen, sie offline zu speichern.",Recomendamos almacenarlo fuera de línea.,,
+2123,Dex/Screens/Startup/NewWallet.qml,,2124,Generated Seed,2125,Generierter Seed,Semilla Generada,,
+2128,Dex/Screens/Startup/NewWallet.qml,,2129,Seed phrase,2130,Seed Phrase,Frase semilla,,
+2133,Dex/Screens/Startup/NewWallet.qml,,2134,copied to clipboard,2135,In die Zwischenablage kopiert,copiada al portapapeles,,
+2138,Dex/Screens/Startup/NewWallet.qml,,2139,Next,2140,Weiter,Siguiente,,
+2143,Dex/Screens/Startup/NewWallet.qml,,2144,Let's double check your seed phrase,2145,Lassen Sie uns Ihre Seed-Phrase noch einmal überprüfen,Verifiquemos dos veces su frase semilla,,
+2148,Dex/Screens/Startup/NewWallet.qml,,2149,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.,2150,"Ihre Seed-Phrase ist wichtig – deshalb stellen wir gerne sicher, dass sie korrekt ist. Wir stellen Ihnen drei verschiedene Fragen zu Ihrer Seed-Phrase, um sicherzustellen, dass Sie Ihre Wallet jederzeit problemlos wiederherstellen können.","Su 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.",,
+2153,Dex/Screens/Startup/NewWallet.qml,,2154,Enter the ,2155,Geben Sie das,Ingresa la,,
+2158,Dex/Screens/Startup/NewWallet.qml,,2159,word,2160,Wort ein,palabra,,
+2163,Dex/Screens/Startup/NewWallet.qml,,2164,Check,2165,Prüfen,Verificar,,
+2168,Dex/Screens/Startup/NewWallet.qml,,2169,Enter the same password to confirm,2170,Geben Sie zur Bestätigung dasselbe Kennwort ein,Ingresa la misma contraseña para confirmar,,
+2173,Dex/Screens/Startup/NewWallet.qml,,2174,Continue,2175,Fortsetzen,Continuar,,
+2181,Dex/NoConnection.qml,,2182,No connection,2183,Keine Verbindung,Sin conexión,,
+2186,Dex/NoConnection.qml,,2187,Please make sure you are connected to the internet,2188,"Bitte stellen Sie sicher, dass Sie mit dem Internet verbunden sind",Asegúrate de que estás conectado a Internet,,
+2191,Dex/NoConnection.qml,,2192,Will automatically retry in %1 seconds,2193,Wird in %1 Sekunde(n) automatisch erneut versucht,Intentará de nuevo automáticamente en %1 segundos,,
+2196,Dex/NoConnection.qml,,2197,Retry,2198,Wiederholen,Reintentar,,
+2204,Dex/Dashboard/NotificationsModal.qml,,2205,Matching,2206,"Zusammenführung",Emparejando,,
+2209,Dex/Dashboard/NotificationsModal.qml,,2210,Order Matching,2211,Auftrag wird abgeglichen,Emparejando Orden,,
+2214,Dex/Dashboard/NotificationsModal.qml,,2215,Matched,2216,Abgestimmt,Emparejado,,
+2219,Dex/Dashboard/NotificationsModal.qml,,2220,Order Matched,2221,Auftrag wurde abgestimmt,Orden Emparejada,,
+2224,Dex/Dashboard/NotificationsModal.qml,,2225,Ongoing,2226,"Läuft",En Curso,,
+2229,Dex/Dashboard/NotificationsModal.qml,,2230,Swap Ongoing,2231,Austausch läuft,Intercambio En Curso,,
+2234,Dex/Dashboard/NotificationsModal.qml,,2235,Successful,2236,Erfolgreich,Exitoso,,
+2239,Dex/Dashboard/NotificationsModal.qml,,2240,Swap Successful,2241,Tausch erfolgreich,Intercambio exitoso,,
+2244,Dex/Dashboard/NotificationsModal.qml,,2245,Refunding,2246,Rückzahlung,Reembolso,,
+2249,Dex/Dashboard/NotificationsModal.qml,,2250,Failed,2251,Fehlgeschlagen,Fallo,,
+2254,Dex/Dashboard/NotificationsModal.qml,,2255,Swap Failed,2256,Tausch fehlgeschlagen,Intercambio fallido,,
+2259,Dex/Dashboard/NotificationsModal.qml,,2260,Unknown,2261,Unbekannt,Desconocido,,
+2264,Dex/Dashboard/NotificationsModal.qml,,2265,Unknown State,2266,Unbekannter Status,Estado Desconocido,,
+2269,Dex/Dashboard/NotificationsModal.qml,,2270,Swap status updated,2271,Austausch-Status aktualisiert,Estado de Intercambio Actualizado,,
+2274,Dex/Dashboard/NotificationsModal.qml,,2275,You sent %1,2276,Sie %1 haben gesendet,Enviaste %1,,
+2279,Dex/Dashboard/NotificationsModal.qml,,2280,You received %1,2281,Sie %1 haben erhalten,Recibiste %1,,
+2284,Dex/Dashboard/NotificationsModal.qml,,2285,Your wallet balance changed,2286,Ihr Guthaben hat sich geändert,El saldo de tu billetera cambió,,
+2289,Dex/Dashboard/NotificationsModal.qml,,2290,Please check your internet connection (e.g. VPN service or firewall might block it).,2291,Bitte überprüfen Sie Ihre Internetverbindung (z. B. könnte VPN-Dienst oder Firewall sie blockieren).,"Verifica tu conexión a Internet (por ejemplo, el servicio VPN o el firewall pueden bloquearlo).",,
+2294,Dex/Dashboard/NotificationsModal.qml,TICKER,2295,Failed to enable %1,2297,Aktivierung von %1 fehlgeschlagen,No se pudo habilitar %1,,
+2300,Dex/Dashboard/NotificationsModal.qml,,2301,Endpoint not reachable,2302,Endpunkt nicht erreichbar,Punto final no accesible,,
+2305,Dex/Dashboard/NotificationsModal.qml,,2306,Could not reach to endpoint,2307,Endpunkt konnte nicht erreicht werden,No se pudo llegar al punto final,,
+2310,Dex/Dashboard/NotificationsModal.qml,TICKER,2311,Mismatch at %1 custom asset configuration,2313,Nichtübereinstimmung bei benutzerdefinierter Konfiguration des %1 Asset,Falta de emparejamiento en %1 configuración de recurso personalizado,,
+2316,Dex/Dashboard/NotificationsModal.qml,TICKER,2317,Application needs to be restarted for %1 custom asset.,2319,Die Anwendung muss für benutzerdefiniertes Asset %1 neu gestartet werden.,Es necesario reiniciar la aplicación para %1 recurso personalizado.,,
+2322,Dex/Dashboard/NotificationsModal.qml,,2323,Batch %1 failed. Reason: %2,2324,Batch %1 fehlgeschlagen. Grund: %2,El lote %1 falló. Razón: %2,,
+2327,Dex/Dashboard/NotificationsModal.qml,,2328,Show,2329,Zeigen,Mostrar,,
+2332,Dex/Dashboard/NotificationsModal.qml,,2333,Restart,2334,Neustart,Reiniciar,,
+2337,Dex/Dashboard/NotificationsModal.qml,,2338,Quit,2339,Beenden,Salir,,
+2342,Dex/Dashboard/NotificationsModal.qml,,2343,Notifications,2344,Benachrichtigungen,Notificaciones,,
+2347,Dex/Dashboard/NotificationsModal.qml,,2348,There aren't any notifications,2349,Es gibt keine Benachrichtigungen,No hay ' notificaciones,,
+2352,Dex/Dashboard/NotificationsModal.qml,,2353,Mark all as read,2354,Alle als gelesen makieren,Marcar todo como leído,,
+2360,Dex/Exchange/ProView/PlaceOrderForm/OrderForm.qml,,2361,Price,2362,Preis,Precio,,
+2365,Dex/Exchange/ProView/PlaceOrderForm/OrderForm.qml,,2366,Volume,2367,Volumen,Volumen,,
+2370,Dex/Exchange/ProView/PlaceOrderForm/OrderForm.qml,,2371,Amount to sell,2372,Zu verkaufender Betrag,Importe para vender,,
+2375,Dex/Exchange/ProView/PlaceOrderForm/OrderForm.qml,,2376,Amount to receive,2377,Zu erhaltender Betrag,Importe para recibir,,
+2380,Dex/Exchange/ProView/PlaceOrderForm/OrderForm.qml,,2381,Min Volume,2382,Min Volumen,Volumen Mínimo,,
+2385,Dex/Exchange/ProView/PlaceOrderForm/OrderForm.qml,,2386,Min amount to sell,2387,Min Verkaufsmenge,Cantidad mínima para vender,,
+2390,Dex/Exchange/ProView/PlaceOrderForm/OrderForm.qml,,2391,Min amount to receive,2392,Min zu erhaltende Menge,Cantidad mínimo para recibir,,
+2395,Dex/Exchange/ProView/PlaceOrderForm/OrderForm.qml,,2396,Min volume: ,2397,Mindestvolumen:,Volumen mínimo:,,
+2400,Dex/Exchange/ProView/PlaceOrderForm/OrderForm.qml,,2401,Use custom minimum trade amount,2402,Benutzerdefinierten Mindesthandelsbetrag verwenden,Utilizar una cantidad personalizada de intercambio mínima,,
+2408,Dex/Exchange/ProView/TradingInfo/OrderLine.qml,,2409,Funds are recoverable,2410,Geldmittel sind erstattungsfähig,Los fondos son recuperables,,
+2416,Dex/Exchange/ProView/TradingInfo/OrderList.qml,,2417,No results found,2418,Keine Ergebnisse gefunden,No se han encontrado resultados,,
+2424,Dex/Exchange/ProView/TradingInfo/OrderModal.qml,,2425,Swap Details,2426,Tauschdetails,Detalles de Intercambio,,
+2429,Dex/Exchange/ProView/TradingInfo/OrderModal.qml,,2430,Order Details,2431,Auftragsdetails,Detalles de Orden,,
+2434,Dex/Exchange/ProView/TradingInfo/OrderModal.qml,,2435,Order Type,2436,Auftragsart,Tipo de Orden,,
+2439,Dex/Exchange/ProView/TradingInfo/OrderModal.qml,,2440,Maker Order,2441,Maker-Auftrag,Orden de Maker,,
+2444,Dex/Exchange/ProView/TradingInfo/OrderModal.qml,,2445,Taker Order,2446,Taker-Auftrag,Orden de Taker,,
+2449,Dex/Exchange/ProView/TradingInfo/OrderModal.qml,,2450,Refund State,2451,Rückerstattungsstatus,Estado del Reembolso,,
+2454,Dex/Exchange/ProView/TradingInfo/OrderModal.qml,,2455,Your swap failed but the auto-refund process for your payment started already. Please wait and keep application opened until you receive your payment back,2456,"Ihr Umtausch ist fehlgeschlagen, aber der automatische Rückerstattungsprozess für Ihre Zahlung hat bereits begonnen. Bitte warten Sie und lassen Sie die Anwendung geöffnet, bis Sie Ihre Zahlung zurückerhalten","Su intercambio falló, pero el proceso de reembolso automático para su pago ya comenzó. Espere y mantenga la aplicación abierta hasta que reciba su pago",,
+2459,Dex/Exchange/ProView/TradingInfo/OrderModal.qml,,2460,Date,2461,Datum,Fecha,,
+2464,Dex/Exchange/ProView/TradingInfo/OrderModal.qml,,2465,Error ID,2466,Fehler-ID,ID de Error,,
+2470,Dex/Exchange/ProView/TradingInfo/OrderModal.qml,,2471,Error Log,2472,Fehlerprotokoll,Registro de Error,,
+2475,Dex/Exchange/ProView/TradingInfo/OrderModal.qml,,2476,Close,2477,Schließen,Cerrar,,
+2480,Dex/Exchange/ProView/TradingInfo/OrderModal.qml,,2481,Cancel Order,2482,Auftrag Abbrechen,Cancelar Pedido,,
+2486,Dex/Exchange/ProView/TradingInfo/OrderModal.qml,,2487,Swap ID,2488,Swap ID,ID de Intercambio,,
+2491,Dex/Exchange/ProView/TradingInfo/OrderModal.qml,,2492,Maker Payment Sent Transaction ID,2493,Maker-Zahlung gesendet: Transaktions-ID,ID de la transacción pago enviada de Maker,,
+2496,Dex/Exchange/ProView/TradingInfo/OrderModal.qml,,2497,Maker Payment Spent Transaction ID,2498,Maker-Zahlung ausgegeben: Transaktions-ID,ID de la transacción pago gastado de Maker,,
+2501,Dex/Exchange/ProView/TradingInfo/OrderModal.qml,,2502,Maker Payment TXID,2503,Maker-Zahlung: TXID,TXID del pago de Maker,,
+2506,Dex/Exchange/ProView/TradingInfo/OrderModal.qml,,2507,Taker Payment Spent Transaction ID,2508,Taker-Zahlung ausgegeben: Transaktions-ID,ID de la transacción pago gastado de Taker,,
+2511,Dex/Exchange/ProView/TradingInfo/OrderModal.qml,,2512,Taker Payment Sent Transaction ID,2513,Taker-Zahlung gesendet: Transaktions-ID,ID de la transacción pago enviada de Taker,,
+2516,Dex/Exchange/ProView/TradingInfo/OrderModal.qml,,2517,Taker Payment TXID,2518,Taker-Zahlung: TXID,TXID del pago de Taker,,
+2521,Dex/Exchange/ProView/TradingInfo/OrderModal.qml,,2522,Recover Funds,2523,Rückerstattung der Geldmittel,Recuperar fondos,,
+2526,Dex/Exchange/ProView/TradingInfo/OrderModal.qml,,2527,Refunding...,2528,Rückzahlung…,Reembolso...,,
+2531,Dex/Exchange/ProView/TradingInfo/OrderModal.qml,,2532,View on Explorer,2533,Ansicht im Explorer,Ver en Explorer,,
+2539,Dex/Exchange/Trade/SimpleView/OrderRemovedModal.qml,,2540,Selected Order Removed,2541,Ausgewählten Auftrag entfernt,Pedido Seleccionado Eliminado,,
+2544,Dex/Exchange/Trade/SimpleView/OrderRemovedModal.qml,,2545,"The selected order does not exist anymore, it might have been matched or canceled, and no order with a better price is available.",2547,Der ausgewählte Auftrag existiert nicht mehr! Er wurde möglicherweise zugeordnet oder storniert und es ist kein Auftrag mit einem besseren Preis verfügbar.,"El pedido seleccionado ya no existe, es posible que haya sido igualado o cancelado, y no hay ningún pedido disponible con un mejor precio.",,
+2544,Dex/Exchange/Trade/SimpleView/OrderRemovedModal.qml,,2545,Please select a new order.,2548,Bitte wählen Sie einen neuen Auftrag aus.,Seleccione un nuevo pedido.,,
+2551,Dex/Exchange/Trade/SimpleView/OrderRemovedModal.qml,,2552,OK,2553,OK,Aceptar,,
+2560,Dex/Exchange/ProView/TradingInfo/OrdersPage.qml,,2561,Filter,2562,Filter,Filtrar,,
+2565,Dex/Exchange/ProView/TradingInfo/OrdersPage.qml,,2566,Date,2567,Datum,Fecha,,
+2570,Dex/Exchange/ProView/TradingInfo/OrdersPage.qml,,2571,Export CSV,2572,CSV exportieren,Exportar CSV,,
+2575,Dex/Exchange/ProView/TradingInfo/OrdersPage.qml,,2576,Apply Filter,2577,Filter anwenden,Aplicar Filtro,,
+2580,Dex/Exchange/ProView/TradingInfo/OrdersPage.qml,,2581,Cancel All,2582,Alles stornieren,Cancelar Todo,,
+2585,Dex/Exchange/ProView/TradingInfo/OrdersPage.qml,,2586,From,2587,Von,De,,
+2590,Dex/Exchange/ProView/TradingInfo/OrdersPage.qml,,2591,To,2592,Bis,A,,
+2595,Dex/Exchange/ProView/TradingInfo/OrdersPage.qml,,2596,Please choose the CSV export name and location,2597,Bitte wählen Sie den CSV-Exportnamen und den Speicherort aus,Elija el nombre y la ubicación de exportación CSV,,
+2603,Dex/Components/Pagination.qml,,2604,items per page,2605,Elemente pro Seite,elementos por página,,
+2611,Dex/Components/PasswordField.qml,,2612,Password,2613,Kennwort,Contraseña,,
+2616,Dex/Components/PasswordField.qml,,2617,Enter your wallet password,2618,Geben Sie das Kennwort für ihre Brieftasche ein,Ingrese la contraseña de su billetera,,
+2621,Dex/Components/PasswordField.qml,,2622,At least 1 lowercase alphabetical character,2623,Mindestens 1 Kleinbuchstabe,Al menos 1 carácter alfabético en minúsculas,,
+2626,Dex/Components/PasswordField.qml,,2627,At least 1 uppercase alphabetical character,2628,Mindestens 1 Großbuchstabe,Al menos 1 carácter alfabético en mayúsculas,,
+2631,Dex/Components/PasswordField.qml,,2632,At least 1 numeric character,2633,Mindestens 1 Ziffer,Al menos 1 carácter numérico,,
+2636,Dex/Components/PasswordField.qml,,2637,At least 1 special character (eg. !@#$%),2638,Mindestens 1 Sonderzeichen (z. B. ! @ # $ %),"Al menos 1 carácter especial ( ej., !@#$%)",,
+2641,Dex/Components/PasswordField.qml,,2642,At least %n character(s),2643,,Al menos %n carácter(es),,
+2652,Dex/Components/PasswordForm.qml,,2653,Password,2654,Kennwort,Contraseña,,
+2657,Dex/Components/PasswordForm.qml,,2658,Confirm Password,2659,Kennwort bestätigen,Confirmar contraseña,,
+2662,Dex/Components/PasswordForm.qml,,2663,Enter the same password to confirm,2664,Geben Sie zur Bestätigung dasselbe Kennwort ein,Ingrese la misma contraseña para confirmar,,
+2670,Dex/Portfolio/Portfolio.qml,,2671,ADD ASSET,2672,ASSET HINZUFÜGEN,AGREGAR ACTIVO,,
+2675,Dex/Portfolio/Portfolio.qml,,2676,Search asset,2677,Asset suchen,Buscar activo,,
+2680,Dex/Portfolio/Portfolio.qml,,2681,Show only coins with balance,2682,Nur Coins mit Guthaben anzeigen,Mostrar solo monedas con saldo,,
+2685,Dex/Portfolio/Portfolio.qml,,2686,(%1/%2),2687,(%1/%2),(%1/%2),,
+2690,Dex/Portfolio/Portfolio.qml,,2691,Portfolio,2692,Portfolio,Cartera,,
+2698,Dex/Exchange/ProView/TradingInfo/PriceLine.qml,,2699,Set swap price for evaluation,2700,Legen Sie den Tausch-Preis für die Bewertung fest,Establecer precio de intercambio para evaluación,,
+2703,Dex/Exchange/ProView/TradingInfo/PriceLine.qml,,2704,Exchange rate,2705,Wechselkurs,Tipo de cambio,,
+2708,Dex/Exchange/ProView/TradingInfo/PriceLine.qml,,2709,Selected,2710,Ausgewählt,seleccionado,,
+2713,Dex/Exchange/ProView/TradingInfo/PriceLine.qml,,2714,Expensive,2715,Teuer,Expensive,,
+2718,Dex/Exchange/ProView/TradingInfo/PriceLine.qml,,2719,Expedient,2720,Sinnvoll,Expedient,,
+2723,Dex/Exchange/ProView/TradingInfo/PriceLine.qml,PRICE_DIFF%,2724,%1 compared to CEX,2726,%1 im Vergleich zu CEX,%1 en comparación con CEX,,
+2729,Dex/Exchange/ProView/TradingInfo/PriceLine.qml,,2730,CEXchange rate,2731,CEX-Wechselkurs,Tasa de cambio CEX,,
+2737,Dex/Exchange/Trade/PriceLineSimplified.qml,,2738,Exchange rate,2739,Wechselkurs,Tasa de cambio,,
+2742,Dex/Exchange/Trade/PriceLineSimplified.qml,,2743,Selected,2744,Ausgewählt,Seleccionada,,
+2747,Dex/Exchange/Trade/PriceLineSimplified.qml,,2748,CEXchange rate,2749,CEX-Wechselkurs,Tasa de cambio CEX,,
+2752,Dex/Exchange/Trade/PriceLineSimplified.qml,,2753,Expensive,2754,Teuer,Caro,,
+2757,Dex/Exchange/Trade/PriceLineSimplified.qml,,2758,Expedient,2759,Sinnvoll,Expediente,,
+2762,Dex/Exchange/Trade/PriceLineSimplified.qml,PRICE_DIFF%,2763,%1 compared to CEX,2765,%1 im Vergleich zu CEX,%1 en comparación con CEX,,
+2771,Dex/Exchange/Trade/ProView.qml,,2772,Failed to place the order,2773,Der Auftrag konnte nicht platziert werden,No se pudo realizar la orden,,
+2776,Dex/Exchange/Trade/ProView.qml,,2777,Placed the order,2778,Auftrag platziert,Orden emitida,,
+2784,../src/core/atomicdex/services/update/update.checker.service.cpp,,2785,Cannot reach the endpoint: ,2786,Der Endpunkt kann nicht erreicht werden:,No se puede llegar al punto final:,,
+2792,Dex/Wallet/ReceiveModal.qml,,2793,Receive,2794,Empfangen,Recibir,,
+2797,Dex/Wallet/ReceiveModal.qml,TICKER,2798,Only send %1 to this address:,2800,Sende nur %1 an diese Adresse:,Enviar solo %1 a esta dirección:,,
+2803,Dex/Wallet/ReceiveModal.qml,,2804,copied to clipboard.,2805,In die Zwischenablage kopiert,copiado al portapapeles.,,
+2808,Dex/Wallet/ReceiveModal.qml,,2809,Close,2810,Schließen,Cerrar,,
+2817,Dex/Settings/RecoverSeedModal.qml,,2818,View seed and private keys,2819,Seed- und privaten Schlüsseln anzeigen,Ver semilla y claves privadas,,
+2822,Dex/Settings/RecoverSeedModal.qml,,2823,Please enter your password to view the seed.,2824,"Bitte geben Sie Ihr Kennwort ein, um den Seed anzuzeigen.",Por favor ingrese su contraseña para ver la semilla.,,
+2827,Dex/Settings/RecoverSeedModal.qml,,2828,Seed,2829,Seed,Semilla,,
+2832,Dex/Settings/RecoverSeedModal.qml,,2833,Backup Seed,2834,Seed Sicherung,Copia de seguridad de semilla,,
+2837,Dex/Settings/RecoverSeedModal.qml,,2838,Public Address copied to clipboard,2839,Öffentliche Adresse in die Zwischenablage kopiert,Direccion publica copiada en el portapapeles,,
+2842,Dex/Settings/RecoverSeedModal.qml,,2843,Cancel,2844,Abbrechen,Cancelar,,
+2847,Dex/Settings/RecoverSeedModal.qml,,2848,View,2849,Ansehen,Ver,,
+2853,Dex/Settings/RecoverSeedModal.qml,,2854,copied to clipboard,2855,In die Zwischenablage kopiert,copiada en el portapapeles,,
+2859,Dex/Settings/RecoverSeedModal.qml,,2860,RPC Password,2861,RPC Kennwort,Contraseña RPC,,
+2864,Dex/Settings/RecoverSeedModal.qml,,2865,Search a coin.,2866,Coin suchen.,Buscar una moneda.,,
+2869,Dex/Settings/RecoverSeedModal.qml,,2870,Public Address,2871,Öffentliche Adresse,Dirección Pública,,
+2874,Dex/Settings/RecoverSeedModal.qml,,2875,Private Key copied to clipboard,2876,Privater Schlüssel in die Zwischenablage kopiert,Clave Privada copiada en el portapapeles,,
+2879,Dex/Settings/RecoverSeedModal.qml,,2880,Private Key,2881,Privater Schlüssel,Clave Privada,,
+2887,Dex/Addressbook/RemoveContactPopup.qml,,2888,Do you want to remove this contact ?,2889,Möchten Sie diesen Kontakt entfernen?,¿Desea eliminar este contacto?,,
+2892,Dex/Addressbook/RemoveContactPopup.qml,,2893,Yes,2894,Ja,Sí,,
+2897,Dex/Addressbook/RemoveContactPopup.qml,,2898,No,2899,Nein,No,,
+2905,Dex/Components/RestartModal.qml,,2906,Applying the changes...,2907,Übernehmen der Änderungen...,Aplicando los cambios...,,
+2910,Dex/Components/RestartModal.qml,,2911,Restarting the application. %1,2912,Neustart der Anwendung. %1,Reiniciando la aplicación. %1,,
+2915,Dex/Components/RestartModal.qml,,2916,Restarting the application...,2917,Neustart der Anwendung...,Reiniciando la aplicación...,,
+2923,Dex/Components/RightClickMenu.qml,,2924,Cut,2925,Ausschneiden,Cortar,,
+2928,Dex/Components/RightClickMenu.qml,,2929,Copy,2930,Kopieren,Copiar,,
+2933,Dex/Components/RightClickMenu.qml,,2934,Paste,2935,Einfügen,Pegar,,
+2941,Dex/Components/SearchField.qml,,2942,Search,2943,Suchen,Buscar,,
+2949,Dex/Wallet/SendModal.qml,,2950,Failed to send,2951,Fehler beim Senden,Error al enviar,,
+2954,Dex/Wallet/SendModal.qml,,2955,Failed to Send,2956,Fehler beim Senden,Error al enviar,,
+2959,Dex/Wallet/SendModal.qml,,2960,Prepare to send ,2961,Versandvorbereitung von ,Preparar para enviar,,
+2964,Dex/Wallet/SendModal.qml,,2965,Address of the recipient,2966,Adresse des Empfängers,Dirección del destinatario,,
+2969,Dex/Wallet/SendModal.qml,,2970,Amount to send,2971,Zu sendender Betrag,Cantidad a enviar,,
+2974,Dex/Wallet/SendModal.qml,,2975,Gas price,2976,Gas Preis,Precio del gas,,
+2979,Dex/Wallet/SendModal.qml,,2980,Recipient's address,2981,Empfängeradresse,Direccion's recipiente,,
+2984,Dex/Wallet/SendModal.qml,,2985,The address has to be mixed case.,2986,Die Adresse muss Groß-/Kleinschreibung sein.,La dirección debe estar en mayúsculas y minúsculas.,,
+2989,Dex/Wallet/SendModal.qml,,2990,Fix,2991,Korrigieren,Arreglar,,
+2994,Dex/Wallet/SendModal.qml,,2995,MAX,2996,MAX,MAX,,
+2999,Dex/Wallet/SendModal.qml,,3000,Fiat amount: Unavailable,3001,Fiat-Betrag: Nicht verfügbar,Cantidad en Fiat: No disponible,,
+3004,Dex/Wallet/SendModal.qml,,3005,Fiat amount: %1,3006,Fiat-Betrag: %1,Cantidad de Fiat: %1,,
+3009,Dex/Wallet/SendModal.qml,,3010,%1 amount: %2,3011,%1 Betrag: %2,Cantidad de %1: %2,,
+3014,Dex/Wallet/SendModal.qml,,3015,Specify in Fiat,3016,In Fiat angeben,Especificar en Fiat,,
+3019,Dex/Wallet/SendModal.qml,,3020,Specify in Crypto,3021,In Krypto angeben,Especificar en Crypto,,
+3024,Dex/Wallet/SendModal.qml,,3025,Enable Custom Fees,3026,Benutzerdefinierte Gebühren,Habilitar Tarifas Personalizadas,,
+3029,Dex/Wallet/SendModal.qml,,3030,Only use custom fees if you know what you are doing!,3031,"Benutzerdefinierte Gebühren nur verwenden, wenn Sie wissen, was Sie tun!",¡Solo use tarifas personalizadas si sabe lo que está haciendo!,,
+3034,Dex/Wallet/SendModal.qml,,3035,Enter the custom fee,3036,Geben Sie die benutzerdefinierte Gebühr ein,Ingrese la tarifa personalizada,,
+3039,Dex/Wallet/SendModal.qml,,3040,Gas Limit,3041,Gas Limit,Límite de gas,,
+3044,Dex/Wallet/SendModal.qml,,3045,Custom Fee can't be higher than the amount,3046,Die benutzerdefinierten Gebühren dürfen nicht höher sein als der Betrag,Tarifa personalizada no puede ser mayor que la cantidad,,
+3049,Dex/Wallet/SendModal.qml,,3050,Not enough funds.,3051,Nicht genug Geldmittel.,No hay suficientes fondos.,,
+3055,Dex/Wallet/SendModal.qml,AMT TICKER,3056,You have %1,3058,Sie haben %1,Tiene %1,,
+3061,Dex/Wallet/SendModal.qml,,3062,Close,3063,Schließen,Cerrar,,
+3066,Dex/Wallet/SendModal.qml,,3067,Prepare,3068,Vorbereiten,Preparar,,
+3072,Dex/Wallet/SendModal.qml,,3073,Send,3074,Senden,Enviar,,
+3077,Dex/Wallet/SendModal.qml,,3078,Amount,3079,Menge,Cantidad,,
+3082,Dex/Wallet/SendModal.qml,,3083,Fees,3084,Gebühren,Tarifas,,
+3087,Dex/Wallet/SendModal.qml,,3088,Date,3089,Datum,Fecha,,
+3092,Dex/Wallet/SendModal.qml,,3093,Back,3094,Zurück,Atrás,,
+3100,Dex/Wallet/SendModalContactList.qml,,3101,Select a contact with an %1 address,3102,Wählen Sie einen Kontakt mit einer %1-Adresse aus,Seleccione un contacto con %1 dirección,,
+3105,Dex/Wallet/SendModalContactList.qml,,3106,Search for contacts...,3107,Kontakte suchen...,Buscar contactos...,,
+3110,Dex/Wallet/SendModalContactList.qml,,3111,%1 addresses,3112,%1 Adressen,direcciones %1,,
+3115,Dex/Wallet/SendModalContactList.qml,,3116,1 address,3117,1 Adresse,1 dirección,,
+3121,Dex/Wallet/SendModalContactList.qml,,3122,Back,3123,Zurück,Atrás,,
+3126,Dex/Wallet/SendModalContactList.qml,,3127,Choose an %1 address of %2,3128,Wählen Sie eine %1-Adresse von %2,Elija una direccion %1 de %2,,
+3131,Dex/Wallet/SendModalContactList.qml,,3132,Name,3133,Name,Nombre,,
+3136,Dex/Wallet/SendModalContactList.qml,,3137,Address,3138,Adresse,Dirección,,
+3144,Dex/Wallet/SendResult.qml,,3145,Transaction Complete!,3146,Transaktion abgeschlossen!,¡Transacción completa!,,
+3149,Dex/Wallet/SendResult.qml,,3150,Recipient's address,3151,Empfängeradresse,Dirección del destinatario,,
+3154,Dex/Wallet/SendResult.qml,,3155,Amount,3156,Menge,Importe,,
+3159,Dex/Wallet/SendResult.qml,,3160,Fees,3161,Gebühren,Tarifas,,
+3164,Dex/Wallet/SendResult.qml,,3165,Date,3166,Datum,Fecha,,
+3169,Dex/Wallet/SendResult.qml,,3170,Transaction Hash,3171,Transaktions-Hash,Hash de Transacción,,
+3174,Dex/Wallet/SendResult.qml,,3175,Close,3176,Schließen,Cerrar,,
+3179,Dex/Wallet/SendResult.qml,,3180,View on Explorer,3181,Ansicht im Explorer,Ver en Explorer,,
+3187,Dex/Settings/SettingModal.qml,,3188,Confirm Logout,3189,Abmelden bestätigen,Confirmar Cerrar Sesión,,
+3192,Dex/Settings/SettingModal.qml,,3193,Are you sure you want to log out?,3194,Wollen Sie sich wirklich abmelden?,¿Está seguro de que desea cerrar sesión?,,
+3197,Dex/Settings/SettingModal.qml,,3198,Yes,3199,Ja,Sí,,
+3204,Dex/Settings/SettingModal.qml,,3205,Cancel,3206,Abbrechen,Cancelar,,
+3209,Dex/Settings/SettingModal.qml,,3210,Settings,3211,Einstellungen,Configuración,,
+3214,Dex/Settings/SettingModal.qml,,3215,General,3216,Allgemein,General,,
+3219,Dex/Settings/SettingModal.qml,,3220,Language,3221,Sprache,Idioma,,
+3224,Dex/Settings/SettingModal.qml,,3225,User Interface,3226,Benutzeroberfläche,Interfaz,,
+3229,Dex/Settings/SettingModal.qml,,3230,Security,3231,Sicherheit,Seguridad,,
+3234,Dex/Settings/SettingModal.qml,,3235,Enable Desktop Notifications,3236,Desktop-Benachrichtigungen aktivieren,Habilitar Notificaciones de Escritorio,,
+3239,Dex/Settings/SettingModal.qml,,3240,Maximum number of enabled coins,3241,Maximale Anzahl aktivierter Coins,Número máximo de monedas habilitadas,,
+3244,Dex/Settings/SettingModal.qml,,3245,Logs,3246,Protokolle,Registros,,
+3249,Dex/Settings/SettingModal.qml,,3250,Open Folder,3251,Ordner öffnen,Carpeta Abierta,,
+3254,Dex/Settings/SettingModal.qml,,3255,Reset,3256,Zurücksetzen,Restablecer,,
+3259,Dex/Settings/SettingModal.qml,,3260,Current Font,3261,Aktuelle Schriftart,Fuente Actual,,
+3264,Dex/Settings/SettingModal.qml,,3265,Current font changed to %1.,3266,Aktuelle Schriftart in %1 geändert.,La fuente actual cambió a %1.,,
+3269,Dex/Settings/SettingModal.qml,,3270,Theme,3271,Thema,Tema,,
+3274,Dex/Settings/SettingModal.qml,,3275,Changing theme to %1,3276,Design zu %1 geändert,Cambiando el tema a %1,,
+3279,Dex/Settings/SettingModal.qml,,3280,Disable 2FA?,3281,2FA deaktivieren?,¿Deshabilitar 2FA?,,
+3284,Dex/Settings/SettingModal.qml,,3285,Enter your wallet password to confirm,3286,Geben Sie zur Bestätigung das Kennwort ihrer Brieftasche ein,Ingrese la contraseña de su billetera para confirmar,,
+3289,Dex/Settings/SettingModal.qml,,3290,Type password,3291,Kennwort eingeben,Escriba la contraseña,,
+3294,Dex/Settings/SettingModal.qml,,3295,2FA status,3296,2FA Status,Estado 2FA,,
+3299,Dex/Settings/SettingModal.qml,,3300,2FA disabled successfully,3301,2FA erfolgreich deaktiviert,2FA deshabilitado correctamente,,
+3305,Dex/Settings/SettingModal.qml,,3306,Ok,3307,Ok,Ok,,
+3310,Dex/Settings/SettingModal.qml,,3311,Wrong password!,3312,Falsches Kennwort!,¡Contraseña incorrecta!,,
+3315,Dex/Settings/SettingModal.qml,,3316,Wallet password is incorrect,3317,Kennwort der Brieftasche ist falsch,Contraseña de la billetera es incorrecta,,
+3320,Dex/Settings/SettingModal.qml,,3321,Application Version,3322,Anwendungsversion,La versión de la aplicación,,
+3325,Dex/Settings/SettingModal.qml,,3326,copied to clipboard,3327,In die Zwischenablage kopiert,copió en el portapapeles,,
+3330,
${DEX_DISPLAY_NAME}
- 0.5.6
+ 0.5.7
${DEX_DISPLAY_NAME} Installer
${DEX_WEBSITE}
${DEX_COMPANY}
diff --git a/ci_tools_atomic_dex/installer/osx/packages/com.komodoplatform.atomicdex/meta/package.xml.in b/ci_tools_atomic_dex/installer/osx/packages/com.komodoplatform.atomicdex/meta/package.xml.in
index 89c8e81c29..06109f6ba9 100644
--- a/ci_tools_atomic_dex/installer/osx/packages/com.komodoplatform.atomicdex/meta/package.xml.in
+++ b/ci_tools_atomic_dex/installer/osx/packages/com.komodoplatform.atomicdex/meta/package.xml.in
@@ -2,8 +2,8 @@
${DEX_DISPLAY_NAME}
Install ${DEX_DISPLAY_NAME}.
- 0.5.6
- 2022-07-12
+ 0.5.7
+ 2022-11-09
diff --git a/ci_tools_atomic_dex/installer/windows/config/config.xml.in b/ci_tools_atomic_dex/installer/windows/config/config.xml.in
index 3ea5ee7723..2a33ec7019 100644
--- a/ci_tools_atomic_dex/installer/windows/config/config.xml.in
+++ b/ci_tools_atomic_dex/installer/windows/config/config.xml.in
@@ -1,7 +1,7 @@
@DEX_DISPLAY_NAME@
- 0.5.6
+ 0.5.7
@DEX_DISPLAY_NAME@ Installer
@DEX_WEBSITE@
@DEX_COMPANY@
diff --git a/ci_tools_atomic_dex/installer/windows/packages/com.komodoplatform.atomicdex/meta/package.xml.in b/ci_tools_atomic_dex/installer/windows/packages/com.komodoplatform.atomicdex/meta/package.xml.in
index 89c8e81c29..1a0b0bc1c3 100644
--- a/ci_tools_atomic_dex/installer/windows/packages/com.komodoplatform.atomicdex/meta/package.xml.in
+++ b/ci_tools_atomic_dex/installer/windows/packages/com.komodoplatform.atomicdex/meta/package.xml.in
@@ -2,8 +2,8 @@
${DEX_DISPLAY_NAME}
Install ${DEX_DISPLAY_NAME}.
- 0.5.6
- 2022-07-12
+ 0.5.7
+ 2022-10-24
diff --git a/ci_tools_atomic_dex/src/ci_tools_atomic_dex.nim b/ci_tools_atomic_dex/src/ci_tools_atomic_dex.nim
index feb24df7e3..ab8425ffa5 100644
--- a/ci_tools_atomic_dex/src/ci_tools_atomic_dex.nim
+++ b/ci_tools_atomic_dex/src/ci_tools_atomic_dex.nim
@@ -16,11 +16,11 @@ Atomic Dex CI Tools.
Usage:
ci_tools_atomic_dex --install_vcpkg
ci_tools_atomic_dex --install_dependencies
- ci_tools_atomic_dex build (release|debug) [--osx_sdk=] [--compiler=]
+ ci_tools_atomic_dex build (Release|Debug) [--osx_sdk=] [--compiler=]
ci_tools_atomic_dex clean (full|dependencies|build_dir)
- ci_tools_atomic_dex generate (release|debug) [--osx_sdk=] [--compiler=]
- ci_tools_atomic_dex bundle (release|debug) [--osx_sdk=] [--compiler=]
- ci_tools_atomic_dex tests (release|debug) [--osx_sdk=] [--compiler=]
+ ci_tools_atomic_dex generate (Release|Debug) [--osx_sdk=] [--compiler=]
+ ci_tools_atomic_dex bundle (Release|Debug) [--osx_sdk=] [--compiler=]
+ ci_tools_atomic_dex tests (Release|Debug) [--osx_sdk=] [--compiler=]
ci_tools_atomic_dex --version
ci_tools_atomic_dex (-h | --help)
@@ -32,30 +32,37 @@ Options:
proc main() =
let args = docopt(doc, version = "Atomic Dex CI Tools 0.0.1")
vcpkg_prepare()
+
if args["--install_vcpkg"]:
install_vcpkg()
+
elif args["--install_dependencies"]:
download_packages()
+
elif args["generate"]:
- if args["release"]:
+ if args["Release"]:
generate_solution("Release", $args["--osx_sdk"], $args["--compiler"])
- elif args["debug"]:
+ elif args["Debug"]:
generate_solution("Debug", $args["--osx_sdk"], $args["--compiler"])
+
elif args["build"]:
- if args["release"]:
+ if args["Release"]:
build_atomic_qt("Release", $args["--osx_sdk"], $args["--compiler"])
- elif args["debug"]:
+ elif args["Debug"]:
build_atomic_qt("Debug", $args["--osx_sdk"], $args["--compiler"])
+
elif args["bundle"]:
- if args["release"]:
+ if args["Release"]:
bundle("Release", $args["--osx_sdk"], $args["--compiler"])
- elif args["debug"]:
+ elif args["Debug"]:
bundle("Debug", $args["--osx_sdk"], $args["--compiler"])
+
elif args["tests"]:
- if args["release"]:
+ if args["Release"]:
run_tests("Release", $args["--osx_sdk"], $args["--compiler"])
- elif args["debug"]:
+ elif args["Debug"]:
run_tests("Debug", $args["--osx_sdk"], $args["--compiler"])
+
elif args["clean"]:
if args["full"]:
clean("full")
diff --git a/ci_tools_atomic_dex/src/tests.nim b/ci_tools_atomic_dex/src/tests.nim
index 0b8240610a..78ee2980ff 100644
--- a/ci_tools_atomic_dex/src/tests.nim
+++ b/ci_tools_atomic_dex/src/tests.nim
@@ -12,8 +12,26 @@ proc run_tests*(build_type: string, osx_sdk_path: string, compiler_path: string)
generate_solution(build_type, osx_sdk_path, compiler_path)
when defined(osx):
+ echo "CURRENT OSX FOLDER"
echo os.getCurrentDir()
- os.setCurrentDir(os.getCurrentDir().joinPath("bin").joinPath(os.getEnv("DEX_PROJECT_NAME") & "_tests.app").joinPath("Contents").joinPath("MacOS"))
+ discard osproc.execCmd("ls")
+ os.setCurrentDir(os.getCurrentDir().joinPath("bin"))
+ echo "CURRENT OSX FOLDER"
+ echo os.getCurrentDir()
+ discard osproc.execCmd("ls")
+ os.setCurrentDir(os.getCurrentDir().joinPath(os.getEnv("DEX_PROJECT_NAME") & "_tests.app"))
+ echo "CURRENT OSX FOLDER"
+ echo os.getCurrentDir()
+ discard osproc.execCmd("ls")
+ os.setCurrentDir(os.getCurrentDir().joinPath("Contents"))
+ echo "CURRENT OSX FOLDER"
+ echo os.getCurrentDir()
+ discard osproc.execCmd("ls")
+ os.setCurrentDir(os.getCurrentDir().joinPath("MacOS"))
+ echo "CURRENT OSX FOLDER"
+ echo os.getCurrentDir()
+ discard osproc.execCmd("ls")
+ # os.setCurrentDir(os.getCurrentDir().joinPath("bin").joinPath(os.getEnv("DEX_PROJECT_NAME") & "_tests.app").joinPath("Contents").joinPath("MacOS"))
echo "Running AtomicDex Pro Unit tests"
discard osproc.execCmd("./" & os.getEnv("DEX_PROJECT_NAME") & "_tests --reporters=xml --out=" & os.getEnv("DEX_PROJECT_NAME") & "-tests-result.xml -s")
echo "Successfully Generated", os.getEnv("DEX_PROJECT_NAME"), "-tests-result.xml"
diff --git a/ci_tools_atomic_dex/util/compare_themes.py b/ci_tools_atomic_dex/util/compare_themes.py
new file mode 100755
index 0000000000..40b5f097cd
--- /dev/null
+++ b/ci_tools_atomic_dex/util/compare_themes.py
@@ -0,0 +1,83 @@
+#!/usr/bin/env python3
+import json
+import requests
+
+'''
+Purpose: Scans the light and dark theme json files for a list of whitelabel
+ branches, and compares them with the dev branch to identify theme
+ selectors which are obsolete or not present in the whitelabel branch.
+
+Usage: `./compare_themes.py`
+'''
+
+REPO_URL = "https://raw.githubusercontent.com/KomodoPlatform/atomicDEX-Desktop"
+BRANCHES = ['smartdex', 'GleecDEX', 'shibadex']
+
+
+def get_theme_url(branch, theme):
+ '''Returns a github url for a branch theme.'''
+ path = f"assets/themes/Default%20-%20{theme.title()}"
+ return f"{REPO_URL}/{branch}/{path}/colors.json"
+
+
+def get_themes_data(branches):
+ '''Returns a dict of dark/light theme data for each branch.'''
+ themes = {}
+ for branch in branches+['dev']:
+ themes.update({branch: {}})
+ for theme in ['light', 'dark']:
+ url = get_theme_url(branch, theme)
+ themes[branch].update({
+ theme: requests.get(url).json()
+ })
+ return themes
+
+
+def get_selectors(themes, branch='dev'):
+ '''Returns a list of selectors within each theme for a branch.'''
+ return {
+ 'light': set(themes[branch]['light'].keys()),
+ 'dark': set(themes[branch]['dark'].keys())
+ }
+
+
+def compare_branch_themes(branches, show_results=True):
+ '''Scans whitelabel theme data to identify missing/obsolete selectors.'''
+ themes = get_themes_data(branches)
+ dev_selectors = get_selectors(themes, 'dev')
+
+ for branch in branches:
+ for theme in ['light', 'dark']:
+ selectors = set(themes[branch][theme].keys())
+ missing = dev_selectors[theme].difference(selectors)
+ themes[branch].update({
+ f"missing_{theme}": missing,
+ f"obsolete_{theme}": selectors.difference(dev_selectors[theme])
+ })
+ if show_results:
+ output_results(themes, branch, theme)
+
+
+def output_results(themes, branch, theme):
+ '''Outputs results for a branch to the console.'''
+ print(f"\n#### {branch} {theme} ####")
+ if len(themes[branch][f"obsolete_{theme}"]) == 0:
+ print(f"No obsolete selectors")
+ else:
+ for i in themes[branch][f"obsolete_{theme}"]:
+ print(f"Obsolete selector: {i}...")
+
+ if len(themes[branch][f"missing_{theme}"]) == 0:
+ print(f"No obsolete selectors")
+ else:
+ for i in themes[branch][f"missing_{theme}"]:
+ dev_color = themes['dev'][theme][i]
+ for j in themes['dev'][theme]:
+ if dev_color == themes['dev'][theme][j]:
+ if j in themes[branch][theme]:
+ print(f"Missing {i}... Try {themes[branch][theme][j]}")
+ break
+
+
+if __name__ == '__main__':
+ compare_branch_themes(BRANCHES, True)
diff --git a/cmake/compiler_targets.cmake b/cmake/compiler_targets.cmake
index 2793d91d09..ecbe4a273b 100644
--- a/cmake/compiler_targets.cmake
+++ b/cmake/compiler_targets.cmake
@@ -52,7 +52,7 @@ target_compile_definitions(antara_optimize_settings INTERFACE
$<$,$,$>:NDEBUG>
$<$,$,$>:DEBUG>
$<$,$,$>:NDEBUG>
- $<$,$,$>:-DEBUG>
+ $<$,$,$>:DEBUG>
$<$,$,$>:NDEBUG>
$<$,$,$>:DEBUG>
)
diff --git a/cmake/install/linux/linux_post_install.cmake b/cmake/install/linux/linux_post_install.cmake
index 246a03f62e..23eae65e00 100644
--- a/cmake/install/linux/linux_post_install.cmake
+++ b/cmake/install/linux/linux_post_install.cmake
@@ -5,20 +5,26 @@ execute_process(COMMAND bash -c "echo -n `git rev-parse --short HEAD`"
OUTPUT_VARIABLE VERSION_ID
)
+message(STATUS "PROJECT_ROOT_DIR (before readjusting) -> ${PROJECT_ROOT_DIR}")
+
get_filename_component(PROJECT_ROOT_DIR ${CMAKE_SOURCE_DIR} DIRECTORY)
-if (EXISTS ${PROJECT_ROOT_DIR}/build-Release)
+if (EXISTS ${PROJECT_ROOT_DIR}/build-Release OR EXISTS ${PROJECT_ROOT_DIR}/build-Debug)
message(STATUS "from ci tools, readjusting")
get_filename_component(PROJECT_ROOT_DIR ${PROJECT_ROOT_DIR} DIRECTORY)
endif ()
-message(STATUS "PROJECT_ROOT_DIR -> ${PROJECT_ROOT_DIR}")
set(PROJECT_QML_DIR ${PROJECT_ROOT_DIR}/atomic_defi_design/Dex)
-message(STATUS "PROJECT_QML_DIR -> ${PROJECT_QML_DIR}")
set(PROJECT_APP_DIR AntaraAtomicDexAppDir)
set(PROJECT_APP_PATH ${CMAKE_SOURCE_DIR}/bin/${PROJECT_APP_DIR})
set(PROJECT_BIN_PATH ${PROJECT_APP_PATH}/usr/bin/${DEX_PROJECT_NAME})
set(PROJECT_LIB_PATH ${PROJECT_APP_PATH}/usr/lib)
set(TARGET_APP_PATH ${PROJECT_ROOT_DIR}/bundled/linux)
+
+message(STATUS "VCPKG package manager enabled")
+message(STATUS "PROJECT_ROOT_DIR (after readjusting) -> ${PROJECT_ROOT_DIR}")
+message(STATUS "PROJECT_QML_DIR -> ${PROJECT_QML_DIR}")
+message(STATUS "VERSION_ID -> ${VERSION_ID}")
+
if (EXISTS ${PROJECT_APP_PATH})
message(STATUS "PROJECT_APP_PATH path is -> ${PROJECT_APP_PATH}")
message(STATUS "PROJECT_BIN_PATH path is -> ${PROJECT_BIN_PATH}")
@@ -28,16 +34,13 @@ else ()
message(FATAL_ERROR "Didn't find ${PROJECT_APP_PATH}")
endif ()
-message(STATUS "VCPKG package manager enabled")
set(LINUX_DEPLOY_PATH ${PROJECT_ROOT_DIR}/ci_tools_atomic_dex/linux_misc/linuxdeployqt-7-x86_64.AppImage)
-
if (EXISTS ${LINUX_DEPLOY_PATH})
message(STATUS "linuxdeployqt path is -> ${LINUX_DEPLOY_PATH}")
else ()
message(FATAL_ERROR "Didn't find ${LINUX_DEPLOY_PATH}")
endif ()
-
message(STATUS "Copying required libraries for QtWebEngine")
list(APPEND LIST_LIBS
"/usr/lib/x86_64-linux-gnu/libsmime3.so"
@@ -49,26 +52,35 @@ list(APPEND LIST_LIBS
"/usr/lib/x86_64-linux-gnu/nss/libnssdbm3.so"
"/usr/lib/x86_64-linux-gnu/nss/libsoftokn3.chk"
"/usr/lib/x86_64-linux-gnu/nss/libsoftokn3.so")
+
file(COPY ${PROJECT_APP_PATH}/usr/share/icons/default/64x64/apps/dex-logo-64.png DESTINATION ${PROJECT_APP_PATH})
file(COPY ${PROJECT_APP_PATH}/usr/share/applications/dex.desktop DESTINATION ${PROJECT_APP_PATH})
+
foreach (current_lib ${LIST_LIBS})
message(STATUS "copying ${current_lib} to ${PROJECT_LIB_PATH}")
file(COPY ${current_lib} DESTINATION ${PROJECT_LIB_PATH})
endforeach ()
+
message(STATUS "Executing linuxdeployqt to fix dependencies")
message(STATUS "Executing cmd: [${LINUX_DEPLOY_PATH} ${PROJECT_BIN_PATH} -qmldir=${PROJECT_QML_DIR} -bundle-non-qt-libs -exclude-libs='libnss3.so,libnssutil3.so' -unsupported-allow-new-glibc -no-copy-copyright-files -verbose=1 -extra-plugins=iconengines,platformthemes/libqgtk3.so -appimage]")
execute_process(COMMAND ${LINUX_DEPLOY_PATH} ${PROJECT_BIN_PATH} -qmldir=${PROJECT_QML_DIR} -bundle-non-qt-libs -exclude-libs='libnss3.so,libnssutil3.so' -unsupported-allow-new-glibc -no-copy-copyright-files -verbose=1 -extra-plugins=iconengines,platformthemes/libqgtk3.so -appimage
WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
ECHO_OUTPUT_VARIABLE
ECHO_ERROR_VARIABLE)
+
+message(STATUS "Renaming ${CMAKE_SOURCE_DIR}/${DEX_PROJECT_NAME}-${VERSION_ID}-x86_64.AppImage to ${CMAKE_SOURCE_DIR}/${DEX_PROJECT_NAME}-linux-${VERSION_ID}-x86_64.AppImage")
+file(RENAME ${CMAKE_SOURCE_DIR}/${DEX_PROJECT_NAME}-${VERSION_ID}-x86_64.AppImage ${CMAKE_SOURCE_DIR}/${DEX_PROJECT_NAME}-linux-${VERSION_ID}-x86_64.AppImage)
+
message(STATUS "Copying ${PROJECT_APP_PATH} to ${TARGET_APP_PATH}/${PROJECT_APP_DIR}")
file(COPY ${PROJECT_APP_PATH} DESTINATION ${TARGET_APP_PATH})
execute_process(COMMAND zip -r ${DEX_PROJECT_NAME}-linux-${VERSION_ID}.zip AntaraAtomicDexAppDir
WORKING_DIRECTORY ${TARGET_APP_PATH}
ECHO_OUTPUT_VARIABLE
ECHO_ERROR_VARIABLE)
+
execute_process(COMMAND tar --zstd -cf ${DEX_PROJECT_NAME}-linux-${VERSION_ID}.tar.zst AntaraAtomicDexAppDir
WORKING_DIRECTORY ${TARGET_APP_PATH}
ECHO_OUTPUT_VARIABLE
ECHO_ERROR_VARIABLE)
-file(COPY ${CMAKE_SOURCE_DIR}/${DEX_PROJECT_NAME}-${VERSION_ID}-x86_64.AppImage DESTINATION ${TARGET_APP_PATH})
\ No newline at end of file
+
+file(COPY ${CMAKE_SOURCE_DIR}/${DEX_PROJECT_NAME}-linux-${VERSION_ID}-x86_64.AppImage DESTINATION ${TARGET_APP_PATH})
diff --git a/cmake/install/macos/dex_install.cmake b/cmake/install/macos/dex_install.cmake
index 96f48384a4..c472d7684d 100644
--- a/cmake/install/macos/dex_install.cmake
+++ b/cmake/install/macos/dex_install.cmake
@@ -4,8 +4,8 @@ if (APPLE)
MACOSX_BUNDLE_BUNDLE_NAME "${PROJECT_NAME}"
RESOURCE ${ICON}
MACOSX_BUNDLE_ICON_FILE dex-logo
- MACOSX_BUNDLE_SHORT_VERSION_STRING 0.5.6
- MACOSX_BUNDLE_LONG_VERSION_STRING 0.5.6
+ MACOSX_BUNDLE_SHORT_VERSION_STRING 0.5.7
+ MACOSX_BUNDLE_LONG_VERSION_STRING 0.5.7
MACOSX_BUNDLE_INFO_PLIST "${PROJECT_SOURCE_DIR}/cmake/MacOSXBundleInfo.plist.in")
add_custom_command(TARGET ${PROJECT_NAME}
POST_BUILD COMMAND
diff --git a/cmake/install/macos/osx_post_install.cmake b/cmake/install/macos/osx_post_install.cmake
index fb53e69b4f..4aa629b58e 100644
--- a/cmake/install/macos/osx_post_install.cmake
+++ b/cmake/install/macos/osx_post_install.cmake
@@ -1,38 +1,43 @@
include(${CMAKE_CURRENT_LIST_DIR}/../../project.metadata.cmake)
+message(STATUS "OSX POST INSTALL CMAKE")
+message(STATUS "PROJECT_ROOT_DIR (before readjusting) -> ${PROJECT_ROOT_DIR}")
+
get_filename_component(PROJECT_ROOT_DIR ${CMAKE_SOURCE_DIR} DIRECTORY)
if (EXISTS ${PROJECT_ROOT_DIR}/build-Release OR EXISTS ${PROJECT_ROOT_DIR}/build-Debug)
message(STATUS "from ci tools, readjusting")
get_filename_component(PROJECT_ROOT_DIR ${PROJECT_ROOT_DIR} DIRECTORY)
endif ()
-message(STATUS "PROJECT_ROOT_DIR -> ${PROJECT_ROOT_DIR}")
-set(PROJECT_QML_DIR ${PROJECT_ROOT_DIR}/atomic_defi_design/Dex)
-message(STATUS "PROJECT_QML_DIR -> ${PROJECT_QML_DIR}")
-message(STATUS "bin dir -> ${CMAKE_CURRENT_SOURCE_DIR}/bin")
+set(BIN_DIR ${CMAKE_CURRENT_SOURCE_DIR}/bin)
set(TARGET_APP_PATH ${PROJECT_ROOT_DIR}/bundled/osx/)
set(PROJECT_APP_DIR ${DEX_PROJECT_NAME}.app)
-set(PROJECT_APP_PATH ${CMAKE_SOURCE_DIR}/bin/${PROJECT_APP_DIR})
-if (EXISTS ${PROJECT_APP_PATH})
- message(STATUS "PROJECT_APP_PATH path is -> ${PROJECT_APP_PATH}")
-else ()
- message(FATAL_ERROR "Didn't find PROJECT_APP_PATH -> ${PROJECT_APP_PATH}")
-endif ()
-
+set(PROJECT_APP_PATH ${BIN_DIR}/${PROJECT_APP_DIR})
+set(PROJECT_QML_DIR ${PROJECT_ROOT_DIR}/atomic_defi_design/Dex)
+set(MAC_DEPLOY_PATH $ENV{QT_ROOT}/clang_64/bin/macdeployqt)
message(STATUS "VCPKG package manager enabled")
+message(STATUS "QT_ROOT -> ${QT_ROOT}")
+message(STATUS "BIN_DIR -> ${BIN_DIR}")
+message(STATUS "TARGET_APP_PATH -> ${TARGET_APP_PATH}")
+message(STATUS "PROJECT_APP_DIR -> ${PROJECT_APP_DIR}")
+message(STATUS "PROJECT_QML_DIR -> ${PROJECT_QML_DIR}")
+message(STATUS "PROJECT_ROOT_DIR (after readjusting) -> ${PROJECT_ROOT_DIR}")
-message(STATUS "Using QT tools from $HOME/QT")
-set(MAC_DEPLOY_PATH $ENV{QT_ROOT}/clang_64/bin/macdeployqt)
+if (EXISTS ${PROJECT_APP_PATH})
+ message(STATUS "PROJECT_APP_PATH -> ${PROJECT_APP_PATH}")
+else ()
+ message(FATAL_ERROR "Didn't find PROJECT_APP_PATH")
+endif ()
if (EXISTS ${MAC_DEPLOY_PATH})
- message(STATUS "macdeployqt path is -> ${MAC_DEPLOY_PATH}")
+ message(STATUS "MAC_DEPLOY_PATH -> ${MAC_DEPLOY_PATH}")
else ()
- message(FATAL_ERROR "Didn't find macdeployqt")
+ message(FATAL_ERROR "Didn't find MAC_DEPLOY_PATH")
endif ()
+message(STATUS "CREATING DMG")
if (NOT EXISTS ${CMAKE_SOURCE_DIR}/bin/${DEX_PROJECT_NAME}.dmg)
- ##-------------------------------------------
message(STATUS "${MAC_DEPLOY_PATH} ${PROJECT_APP_PATH} -qmldir=${PROJECT_QML_DIR} -always-overwrite -sign-for-notarization=$ENV{MAC_SIGN_IDENTITY} -verbose=3")
execute_process(
COMMAND
@@ -41,9 +46,6 @@ if (NOT EXISTS ${CMAKE_SOURCE_DIR}/bin/${DEX_PROJECT_NAME}.dmg)
ECHO_OUTPUT_VARIABLE
ECHO_ERROR_VARIABLE
)
- ##-------------------------------------------
-
- ##-------------------------------------------
message(STATUS "Fixing QTWebengineProcess")
set(QTWEBENGINE_BUNDLED_PATH ${PROJECT_APP_PATH}/Contents/Frameworks/QtWebEngineCore.framework/Helpers/QtWebEngineProcess.app/Contents/MacOS/QtWebEngineProcess)
message(STATUS "Executing: [install_name_tool -add_rpath @executable_path/../../../../../../Frameworks ${QTWEBENGINE_BUNDLED_PATH}]")
@@ -52,7 +54,7 @@ if (NOT EXISTS ${CMAKE_SOURCE_DIR}/bin/${DEX_PROJECT_NAME}.dmg)
ECHO_OUTPUT_VARIABLE
ECHO_ERROR_VARIABLE)
- execute_process(COMMAND codesign --deep --force -v -s "$ENV{MAC_SIGN_IDENTITY}" -o runtime --timestamp ${PROJECT_APP_PATH}/Contents/Resources/assets/tools/mm2/mm2
+ execute_process(COMMAND codesign --deep --force -v -s "$ENV{MAC_SIGN_IDENTITY}" -o runtime --timestamp ${PROJECT_APP_PATH}/Contents/Resources/assets/tools/mm2/${DEX_API}
WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
ECHO_OUTPUT_VARIABLE
ECHO_ERROR_VARIABLE)
@@ -68,7 +70,6 @@ if (NOT EXISTS ${CMAKE_SOURCE_DIR}/bin/${DEX_PROJECT_NAME}.dmg)
ECHO_OUTPUT_VARIABLE
ECHO_ERROR_VARIABLE)
- ##-------------------------------------------
message(STATUS "Packaging the DMG")
set(PACKAGER_PATH ${PROJECT_ROOT_DIR}/ci_tools_atomic_dex/dmg-packager/package.sh)
if (EXISTS ${PACKAGER_PATH})
@@ -97,13 +98,14 @@ endif ()
file(COPY ${CMAKE_SOURCE_DIR}/bin/${DEX_PROJECT_NAME}.dmg DESTINATION ${TARGET_APP_PATH})
-get_filename_component(QT_ROOT_DIR $ENV{QT_ROOT} DIRECTORY)
-set(IFW_BINDIR ${QT_ROOT_DIR}/Tools/QtInstallerFramework/4.4/bin)
+get_filename_component(QT_ROOT_DIR $ENV{QT_ROOT} DIRECTORY)
+set(IFW_BINDIR ${QT_ROOT_DIR}/Tools/QtInstallerFramework/4.5/bin)
message(STATUS "IFW_BIN PATH IS ${IFW_BINDIR}")
if (NOT EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/bin/${DEX_PROJECT_NAME}.7z)
+ execute_process(COMMAND ls WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/bin)
message(STATUS "Generating ${DEX_PROJECT_NAME}.7z with [${IFW_BINDIR}/archivegen ${DEX_PROJECT_NAME}.7z ${DEX_PROJECT_NAME}.app] from directory: ${CMAKE_CURRENT_SOURCE_DIR}/bin")
execute_process(COMMAND
- ${IFW_BINDIR}/archivegen ${DEX_PROJECT_NAME}.7z ${DEX_PROJECT_NAME}.app
+ ${IFW_BINDIR}/archivegen ${DEX_PROJECT_NAME}.7z ${PROJECT_APP_PATH}
WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/bin
ECHO_OUTPUT_VARIABLE
ECHO_ERROR_VARIABLE)
@@ -111,9 +113,11 @@ else()
message(STATUS "${DEX_PROJECT_NAME}.7z already created - skipping")
endif()
+message(STATUS "Copying ${CMAKE_CURRENT_SOURCE_DIR}/bin/${DEX_PROJECT_NAME}.7z TO ${PROJECT_ROOT_DIR}/ci_tools_atomic_dex/installer/osx/packages/com.komodoplatform.atomicdex/data")
+
file(COPY ${CMAKE_CURRENT_SOURCE_DIR}/bin/${DEX_PROJECT_NAME}.7z DESTINATION ${PROJECT_ROOT_DIR}/ci_tools_atomic_dex/installer/osx/packages/com.komodoplatform.atomicdex/data)
-execute_process(COMMAND ${IFW_BINDIR}/binarycreator -c ./config/config.xml -p ./packages/ ${DEX_PROJECT_NAME}_installer -s $ENV{MAC_SIGN_IDENTITY}
+execute_process(COMMAND ${IFW_BINDIR}/binarycreator -c ./config/config.xml -p ./packages/ ${PROJECT_ROOT_DIR}/ci_tools_atomic_dex/installer/osx/${DEX_PROJECT_NAME}_installer -s $ENV{MAC_SIGN_IDENTITY}
WORKING_DIRECTORY ${PROJECT_ROOT_DIR}/ci_tools_atomic_dex/installer/osx
ECHO_OUTPUT_VARIABLE
ECHO_ERROR_VARIABLE)
@@ -130,7 +134,10 @@ execute_process(COMMAND ${PROJECT_ROOT_DIR}/cmake/install/macos/macos_notarize.s
file(COPY ${PROJECT_ROOT_DIR}/ci_tools_atomic_dex/installer/osx/${DEX_PROJECT_NAME}_installer.app DESTINATION ${TARGET_APP_PATH})
-execute_process(COMMAND ${IFW_BINDIR}/archivegen ${DEX_PROJECT_NAME}_installer.7z ${DEX_PROJECT_NAME}_installer.app
+
+execute_process(COMMAND ${IFW_BINDIR}/archivegen ${PROJECT_ROOT_DIR}/ci_tools_atomic_dex/installer/osx/${DEX_PROJECT_NAME}_installer.7z ${DEX_PROJECT_NAME}_installer.app
WORKING_DIRECTORY ${TARGET_APP_PATH}
ECHO_OUTPUT_VARIABLE
ECHO_ERROR_VARIABLE)
+
+file(COPY ${PROJECT_ROOT_DIR}/ci_tools_atomic_dex/installer/osx/${DEX_PROJECT_NAME}_installer.7z DESTINATION ${TARGET_APP_PATH})
diff --git a/cmake/install/windows/windows_post_install.cmake b/cmake/install/windows/windows_post_install.cmake
index 6867250ad1..ecdf78ae12 100644
--- a/cmake/install/windows/windows_post_install.cmake
+++ b/cmake/install/windows/windows_post_install.cmake
@@ -1,17 +1,21 @@
include(${CMAKE_CURRENT_LIST_DIR}/../../project.metadata.cmake)
+message(STATUS "PROJECT_ROOT_DIR (before readjusting) -> ${PROJECT_ROOT_DIR}")
+
get_filename_component(PROJECT_ROOT_DIR ${CMAKE_SOURCE_DIR} DIRECTORY)
-if (EXISTS ${PROJECT_ROOT_DIR}/build-Release)
+if (EXISTS ${PROJECT_ROOT_DIR}/build-Release OR EXISTS ${PROJECT_ROOT_DIR}/build-Debug)
message(STATUS "from ci tools, readjusting")
get_filename_component(PROJECT_ROOT_DIR ${PROJECT_ROOT_DIR} DIRECTORY)
endif ()
-message(STATUS "PROJECT_ROOT_DIR -> ${PROJECT_ROOT_DIR}")
-
set(PROJECT_APP_DIR bin)
set(PROJECT_APP_PATH ${CMAKE_SOURCE_DIR}/${PROJECT_APP_DIR})
set(TARGET_APP_PATH ${PROJECT_ROOT_DIR}/bundled/windows)
+message(STATUS "VCPKG package manager enabled")
+message(STATUS "PROJECT_ROOT_DIR (after readjusting) -> ${PROJECT_ROOT_DIR}")
+message(STATUS "PROJECT_QML_DIR -> ${PROJECT_QML_DIR}")
+
if (EXISTS ${PROJECT_APP_PATH})
message(STATUS "PROJECT_APP_PATH path is -> ${PROJECT_APP_PATH}")
message(STATUS "TARGET_APP_PATH path is -> ${TARGET_APP_PATH}")
@@ -58,7 +62,7 @@ execute_process(COMMAND powershell.exe -File ${PROJECT_ROOT_DIR}/ci_tools_atomic
message(STATUS "manifest output: ${MANIFEST_RESULT} ${MANIFEST_OUTPUT} ${MANIFEST_ERROR}")
message(STATUS "Creating Installer")
-set(IFW_BINDIR $ENV{QT_ROOT}/Tools/QtInstallerFramework/4.4/bin)
+set(IFW_BINDIR $ENV{QT_ROOT}/Tools/QtInstallerFramework/4.5/bin)
message(STATUS "IFW_BIN PATH IS ${IFW_BINDIR}")
if (NOT EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/bin/${DEX_PROJECT_NAME}.7z)
message(STATUS "command is: [${IFW_BINDIR}/archivegen.exe ${DEX_PROJECT_NAME}.7z .]")
diff --git a/cmake/project.metadata.cmake b/cmake/project.metadata.cmake
index 0c30aab815..2dc37ab350 100644
--- a/cmake/project.metadata.cmake
+++ b/cmake/project.metadata.cmake
@@ -1,4 +1,7 @@
# Default project values
+set(DEX_API "mm2")
+set(DEX_RPCPORT 7783)
+set(DEX_RPC "http://127.0.0.1:7783")
set(DEX_PROJECT_NAME "atomicdex-desktop-ce")
set(DEX_DISPLAY_NAME "AtomicDEX Desktop-CE")
set(DEX_MAINTENANCE_TOOL_NAME "AtomicDEX Maintenance Tool")
@@ -8,7 +11,7 @@ set(DEX_SUPPORT_PAGE "https://support.komodoplatform.com/support/home")
set(DEX_DISCORD "https://discord.gg/euuHtKfJEu")
set(DEX_TWITTER "https://twitter.com/KomodianOrg")
set(DEX_PRIMARY_COIN "KMD") ## Main coin of the DEX, will be enabled by default and will be the default left ticker for trading
-set(DEX_SECOND_PRIMARY_COIN "LTC") ## Second main coin of the DEX, will be enabled by default and will be the default right ticker for trading
+set(DEX_SECOND_PRIMARY_COIN "ARRR") ## Second main coin of the DEX, will be enabled by default and will be the default right ticker for trading
option(DISABLE_GEOBLOCKING "Enable to disable geoblocking (for dev purpose)" ON)
set(DEX_REPOSITORY_OWNER ${DEX_COMPANY})
set(DEX_REPOSITORY_NAME "atomicDEX-Desktop-CE")
@@ -18,13 +21,20 @@ if (APPLE)
else ()
set(DEX_APPDATA_FOLDER "atomic_qt")
endif ()
-message(STATUS "APPDATA folder is ${DEX_APPDATA_FOLDER}")
-
if (UNIX AND NOT APPLE)
set(DEX_LINUX_APP_ID "dex-ce.desktop")
endif ()
# Erases default project values with environment variables if they exist.
+if (DEFINED ENV{DEX_API})
+ set(DEX_API $ENV{DEX_API})
+endif ()
+if (DEFINED ENV{DEX_RPCPORT})
+ set(DEX_RPCPORT $ENV{DEX_RPCPORT})
+endif ()
+if (DEFINED ENV{DEX_RPC})
+ set(DEX_RPC $ENV{DEX_RPC})
+endif ()
if (DEFINED ENV{DEX_PROJECT_NAME})
set(DEX_PROJECT_NAME $ENV{DEX_PROJECT_NAME})
endif ()
@@ -37,9 +47,25 @@ endif ()
if (DEFINED ENV{DEX_WEBSITE})
set(DEX_WEBSITE $ENV{DEX_WEBSITE})
endif ()
+if (DEFINED ENV{PROJECT_ROOT})
+ set(PROJECT_ROOT $ENV{PROJECT_ROOT})
+else ()
+ set(PROJECT_ROOT ${CMAKE_SOURCE_DIR})
+endif ()
+
# Shows project metadata
-message(STATUS "Project Metadata: ${DEX_PROJECT_NAME}.${DEX_DISPLAY_NAME}.${DEX_COMPANY}.${DEX_WEBSITE}")
+message(STATUS "Project Metadata:")
+message(STATUS "DEX_APPDATA_FOLDER --> ${DEX_APPDATA_FOLDER}")
+message(STATUS "CMAKE_BUILD_TYPE --> ${CMAKE_BUILD_TYPE}")
+message(STATUS "DEX_PROJECT_NAME --> ${DEX_PROJECT_NAME}")
+message(STATUS "DEX_DISPLAY_NAME --> ${DEX_DISPLAY_NAME}")
+message(STATUS "DEX_COMPANY --> ${DEX_COMPANY}")
+message(STATUS "DEX_WEBSITE --> ${DEX_WEBSITE}")
+message(STATUS "CMAKE_SOURCE_DIR --> ${CMAKE_SOURCE_DIR}")
+message(STATUS "PROJECT_ROOT --> ${PROJECT_ROOT}")
+
+
# Generates files which need to be configured with custom variables from env/CMake.
macro(generate_dex_project_metafiles)
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
index 417e52afc7..531c27e8d6 100644
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -14,7 +14,7 @@ DEX_NEW_LIB(core INTERFACE
$<$:NOMINMAX>
$<$:SPDLOG_WCHAR_TO_UTF8_SUPPORT>
_TURN_OFF_PLATFORM_STRING
- DEX_NAME="${DEX_DISPLAY_NAME}" DEX_WEBSITE_URL="${DEX_WEBSITE}"
+ DEX_API="${DEX_API}" DEX_RPC="${DEX_RPC}" DEX_RPCPORT="${DEX_RPCPORT}" DEX_NAME="${DEX_DISPLAY_NAME}" DEX_WEBSITE_URL="${DEX_WEBSITE}"
DEX_SUPPORT_URL="${DEX_SUPPORT_PAGE}" DEX_DISCORD_URL="${DEX_DISCORD}" DEX_TWITTER_URL="${DEX_TWITTER}"
DEX_PRIMARY_COIN="${DEX_PRIMARY_COIN}" DEX_SECOND_PRIMARY_COIN="${DEX_SECOND_PRIMARY_COIN}" #DEX_COMMON_DATA_FOLDER="${DEX_COMMON_DATA_FOLDER}"
DEX_PROJECT_NAME="${DEX_PROJECT_NAME}" DEX_COMPANY_NAME="${DEX_COMPANY_NAME}"
@@ -53,6 +53,8 @@ set_directory_properties(PROPERTIES CLEAN_NO_CUSTOM TRUE)
set(TS_FILES
${CMAKE_SOURCE_DIR}/atomic_defi_design/assets/languages/atomic_defi_en.ts
${CMAKE_SOURCE_DIR}/atomic_defi_design/assets/languages/atomic_defi_fr.ts
+ ${CMAKE_SOURCE_DIR}/atomic_defi_design/assets/languages/atomic_defi_de.ts
+ ${CMAKE_SOURCE_DIR}/atomic_defi_design/assets/languages/atomic_defi_es.ts
${CMAKE_SOURCE_DIR}/atomic_defi_design/assets/languages/atomic_defi_tr.ts
${CMAKE_SOURCE_DIR}/atomic_defi_design/assets/languages/atomic_defi_ru.ts)
set_source_files_properties(${TS_FILES} PROPERTIES OUTPUT_LOCATION ${CMAKE_SOURCE_DIR}/atomic_defi_design/assets/languages)
@@ -73,7 +75,7 @@ dex_generate_qrc(${CMAKE_SOURCE_DIR}/atomic_defi_design/Dex qml_qrc
dex_generate_qrc(${CMAKE_SOURCE_DIR}/atomic_defi_design/assets assets_qrc
PATH_PREFIX "assets"
FILES_TO_EXCLUDE ".gitignore;.DS_Store;CONTRIBUTING.txt;FONTLOG.txt;LICENCE-FAQ.txt;LICENCE.txt;README.txt;TRADEMARKS.txt;.ts;.qm;.qrc"
- FILES "languages/atomic_defi_en.qm;languages/atomic_defi_fr.qm;languages/atomic_defi_ru.qm;languages/atomic_defi_tr.qm")
+ FILES "languages/atomic_defi_en.qm;languages/atomic_defi_es.qm;languages/atomic_defi_de.qm;languages/atomic_defi_fr.qm;languages/atomic_defi_ru.qm;languages/atomic_defi_tr.qm")
# Main executable
add_executable(${PROJECT_NAME}
@@ -106,17 +108,30 @@ endif ()
# Testing executable
add_executable(${PROJECT_NAME}_tests MACOSX_BUNDLE ${ICON}
+ tests/atomic.dex.qt.utilities.tests.cpp
+ tests/atomic.dex.provider.cex.prices.api.tests.cpp
+ tests/atomic.dex.provider.cex.prices.tests.cpp
tests/atomic.dex.tests.cpp
tests/atomic.dex.wallet.config.tests.cpp
- tests/atomic.dex.provider.cex.prices.tests.cpp
- tests/atomic.dex.qt.utilities.tests.cpp
+ ##! API
+ tests/api/coingecko/coingecko.tests.cpp
+ tests/api/komodo_prices/komodo.prices.tests.cpp
+ tests/api/mm2/mm2.api.format.address.tests.cpp
+ tests/api/mm2/mm2.api.utxo.merge.params.tests.cpp
+ tests/api/mm2/mm2.api.balance.infos.tests.cpp
+ tests/api/mm2/mm2.fraction.tests.cpp
+ tests/api/mm2/mm2.rpc.trade.preimage.tests.cpp
+
+ ##! CFG
tests/config/coins.cfg.tests.cpp
+
##! API
tests/api/coingecko/coingecko.tests.cpp
tests/api/komodo_prices/komodo.prices.tests.cpp
tests/api/mm2/mm2.rpc.trade.preimage.tests.cpp
tests/api/mm2/mm2.fraction.tests.cpp
+ tests/api/mm2/enable_bch_with_tokens_rpc_tests.cpp
##! Utilities
tests/utilities/qt.utilities.tests.cpp
@@ -128,7 +143,10 @@ add_executable(${PROJECT_NAME}_tests MACOSX_BUNDLE ${ICON}
##! Models
tests/models/qt.addressbook.contact.model.tests.cpp
- tests/atomic.dex.provider.cex.prices.api.tests.cpp)
+ ##! Utilities
+ tests/utilities/qt.utilities.tests.cpp
+ tests/utilities/global.utilities.tests.cpp)
+
target_link_libraries(${PROJECT_NAME}_tests
PUBLIC
${PROJECT_NAME}::core
diff --git a/src/app/app.cpp b/src/app/app.cpp
index 07922b0fcc..cc0e164b4f 100644
--- a/src/app/app.cpp
+++ b/src/app/app.cpp
@@ -1,5 +1,5 @@
/******************************************************************************
- * Copyright © 2013-2021 The Komodo Platform Developers. *
+ * Copyright © 2013-2022 The Komodo Platform Developers. *
* *
* See the AUTHORS, DEVELOPER-AGREEMENT and LICENSE files at *
* the top-level directory of this distribution for the individual copyright *
@@ -76,25 +76,32 @@ namespace atomic_dex
coins_std.reserve(coins.size());
atomic_dex::mm2_service& mm2 = get_mm2();
std::unordered_set extra_coins;
- for (auto&& coin: coins) {
+ for (auto&& coin : coins)
+ {
auto coin_info = mm2.get_coin_info(coin.toStdString());
- if (coin_info.has_parent_fees_ticker && coin_info.ticker != coin_info.fees_ticker)
+
+ if (coin_info.has_parent_fees_ticker &&
+ coin_info.ticker != coin_info.fees_ticker &&
+ !coins.contains(QString::fromStdString(coin_info.fees_ticker)))
{
auto coin_parent_info = mm2.get_coin_info(coin_info.fees_ticker);
- if (!coin_parent_info.currently_enabled && !coin_parent_info.active && extra_coins.insert(coin_parent_info.ticker).second)
+ // todo: why can it be empty when it has been found ?
+ // refactor coins enabling logic!!!
+ if (coin_parent_info.ticker != "")
{
- SPDLOG_INFO("Adding extra coin: {} to enable", coin_parent_info.ticker);
+ if (!coin_parent_info.currently_enabled && !coin_parent_info.active && extra_coins.insert(coin_parent_info.ticker).second)
+ {
+ SPDLOG_INFO("Adding extra coin: {} to enable", coin_parent_info.ticker);
+ }
}
}
coins_std.push_back(coin.toStdString());
}
-
for (auto&& extra_coin : extra_coins)
{
coins_std.push_back(extra_coin);
}
- mm2.enable_multiple_coins(coins_std);
-
+ mm2.enable_coins(coins_std);
return true;
}
@@ -109,19 +116,26 @@ namespace atomic_dex
QString secondary_coin = QString::fromStdString(g_second_primary_dex_coin);
QStringList coins_copy;
const auto& mm2 = system_manager_.get_system();
- for (auto&& coin: coins)
+ for (auto&& coin : coins)
{
const auto coin_info = mm2.get_coin_info(coin.toStdString());
bool has_parent_fees = coin_info.has_parent_fees_ticker;
if (not get_orders()->swap_is_in_progress(coin) && coin != primary_coin && coin != secondary_coin)
{
- if (has_parent_fees)
+ if (!get_mm2().is_zhtlc_coin_ready(coin.toStdString()))
{
- coins_copy.push_front(coin);
+ this->dispatcher_.trigger(coin.toStdString(), "Can't disable until fully activated.");
}
else
{
- coins_copy.push_back(coin);
+ if (has_parent_fees)
+ {
+ coins_copy.push_front(coin);
+ }
+ else
+ {
+ coins_copy.push_back(coin);
+ }
}
}
}
@@ -132,7 +146,7 @@ namespace atomic_dex
system_manager_.get_system().disable_coins(coins_copy);
system_manager_.get_system().disable_coins(coins_copy);
coins_std.reserve(coins_copy.size());
- for (auto&& coin: coins_copy)
+ for (auto&& coin : coins_copy)
{
if (QString::fromStdString(get_mm2().get_current_ticker()) == coin && m_primary_coin_fully_enabled)
{
@@ -220,6 +234,7 @@ namespace atomic_dex
while (not m_portfolio_queue.empty())
{
const char* ticker_cstr = nullptr;
+ bool add_to_init(true);
m_portfolio_queue.pop(ticker_cstr);
std::string ticker(ticker_cstr);
if (ticker == g_primary_dex_coin)
@@ -230,7 +245,17 @@ namespace atomic_dex
{
this->m_secondary_coin_fully_enabled = true;
}
- to_init.push_back(ticker);
+ //! TODO: figure out why sometimes ZHTLC coins end up in here twice. When they do, without this check it crashes.
+ if (std::find(to_init.begin(), to_init.end(), ticker) != to_init.end()) {
+ SPDLOG_DEBUG("Ticker {} is already in vector", ticker);
+ add_to_init = false;
+ }
+ else {
+ SPDLOG_DEBUG("Ticker {} is not already in vector", ticker);
+ }
+ if (add_to_init) {
+ to_init.push_back(ticker);
+ }
std::free((void*)ticker_cstr);
}
@@ -363,6 +388,9 @@ namespace atomic_dex
system_manager_.create_system(
system_manager_, m_event_actions.at(events_action::about_to_exit_app), portfolio_system.get_portfolio(), this);
+
+ system_manager_.create_system(system_manager_, this->dispatcher_, this);
+
connect_signals();
if (qt_wallet_manager::is_there_a_default_wallet())
{
@@ -473,8 +501,8 @@ namespace atomic_dex
auto& wallet_manager = this->system_manager_.get_system();
wallet_manager.just_set_wallet_name("");
- this->m_secondary_coin_fully_enabled = false;
this->m_primary_coin_fully_enabled = false;
+ this->m_secondary_coin_fully_enabled = false;
system_manager_.get_system().set_status("None");
return fs::remove(utils::get_atomic_dex_config_folder() / "default.wallet");
}
@@ -507,7 +535,7 @@ namespace atomic_dex
{
QString result;
- ::mm2::api::recover_funds_of_swap_request request{.swap_uuid = uuid.toStdString()};
+ mm2::recover_funds_of_swap_request request{.swap_uuid = uuid.toStdString()};
auto res = get_mm2().get_mm2_client().rpc_recover_funds(std::move(request));
result = QString::fromStdString(res.raw_result);
@@ -739,6 +767,17 @@ namespace atomic_dex
}
} // namespace atomic_dex
+//! update checker
+namespace atomic_dex
+{
+ zcash_params_service* application::get_zcash_params_service() const
+ {
+ auto ptr = const_cast(std::addressof(system_manager_.get_system()));
+ assert(ptr != nullptr);
+ return ptr;
+ }
+} // namespace atomic_dex
+
//! IP checker
namespace atomic_dex
{
diff --git a/src/app/app.hpp b/src/app/app.hpp
index 5ad906ff54..dd18115804 100644
--- a/src/app/app.hpp
+++ b/src/app/app.hpp
@@ -49,6 +49,7 @@
#include "atomicdex/services/mm2/mm2.service.hpp"
#include "atomicdex/services/price/global.provider.hpp"
#include "atomicdex/services/update/update.checker.service.hpp"
+#include "atomicdex/services/update/zcash.params.service.hpp"
namespace ag = antara::gaming;
@@ -74,6 +75,7 @@ namespace atomic_dex
Q_PROPERTY(settings_page* settings_pg READ get_settings_page NOTIFY settingsPageChanged)
Q_PROPERTY(qt_wallet_manager* wallet_mgr READ get_wallet_mgr NOTIFY walletMgrChanged)
Q_PROPERTY(update_checker_service* updateCheckerService READ get_update_checker_service NOTIFY updateCheckerServiceChanged)
+ Q_PROPERTY(zcash_params_service* zcash_params READ get_zcash_params_service NOTIFY zcashParamsServiceChanged)
//! Private function
void connect_signals();
@@ -118,23 +120,24 @@ namespace atomic_dex
void on_mm2_initialized_event(const mm2_initialized&);
void on_process_orders_and_swaps_finished_event(const process_swaps_and_orders_finished&);
- mm2_service& get_mm2();
- [[nodiscard]] const mm2_service& get_mm2() const;
- entt::dispatcher& get_dispatcher();
- const entt::registry& get_registry() const;
- entt::registry& get_registry();
- [[nodiscard]] addressbook_page* get_addressbook_page() const;
- [[nodiscard]] portfolio_page* get_portfolio_page() const;
- [[nodiscard]] wallet_page* get_wallet_page() const;
- orders_model* get_orders() const;
- notification_manager* get_notification_manager() const;
- trading_page* get_trading_page() const;
- settings_page* get_settings_page() const;
- qt_wallet_manager* get_wallet_mgr() const;
- internet_service_checker* get_internet_checker() const;
- ip_service_checker* get_ip_checker() const;
- update_checker_service* get_update_checker_service() const;
- exporter_service* get_exporter_service() const;
+ mm2_service& get_mm2();
+ [[nodiscard]] const mm2_service& get_mm2() const;
+ entt::dispatcher& get_dispatcher();
+ const entt::registry& get_registry() const;
+ entt::registry& get_registry();
+ [[nodiscard]] addressbook_page* get_addressbook_page() const;
+ [[nodiscard]] portfolio_page* get_portfolio_page() const;
+ [[nodiscard]] wallet_page* get_wallet_page() const;
+ orders_model* get_orders() const;
+ notification_manager* get_notification_manager() const;
+ trading_page* get_trading_page() const;
+ settings_page* get_settings_page() const;
+ qt_wallet_manager* get_wallet_mgr() const;
+ internet_service_checker* get_internet_checker() const;
+ ip_service_checker* get_ip_checker() const;
+ update_checker_service* get_update_checker_service() const;
+ [[nodiscard]] zcash_params_service* get_zcash_params_service() const;
+ exporter_service* get_exporter_service() const;
void set_qt_app(std::shared_ptr app, QQmlApplicationEngine* qml_engine);
@@ -174,6 +177,7 @@ namespace atomic_dex
void walletPageChanged();
void ordersChanged();
void updateCheckerServiceChanged();
+ void zcashParamsServiceChanged();
void tradingPageChanged();
void settingsPageChanged();
void internetCheckerChanged();
diff --git a/src/app/main.prerequisites.hpp b/src/app/main.prerequisites.hpp
index 90d8f88f79..d843e2e6e2 100644
--- a/src/app/main.prerequisites.hpp
+++ b/src/app/main.prerequisites.hpp
@@ -57,6 +57,7 @@
//! Project Headers
#include "app.hpp"
#include "atomicdex/constants/qt.wallet.enums.hpp"
+#include "atomicdex/constants/dex.constants.hpp"
#include "atomicdex/models/qt.portfolio.model.hpp"
#include "atomicdex/utilities/kill.hpp"
#include "atomicdex/utilities/qt.utilities.hpp"
@@ -104,7 +105,7 @@ static void
signal_handler(int signal)
{
SPDLOG_ERROR("sigabort received, cleaning mm2");
- atomic_dex::kill_executable("mm2");
+ atomic_dex::kill_executable(atomic_dex::g_dex_api);
#if defined(linux) || defined(__APPLE__)
boost::stacktrace::safe_dump_to("./backtrace.dump");
std::ifstream ifs("./backtrace.dump");
@@ -158,20 +159,37 @@ static void
clean_previous_run()
{
SPDLOG_INFO("cleaning previous mm2 instance");
- atomic_dex::kill_executable("mm2");
+ atomic_dex::kill_executable(atomic_dex::g_dex_api);
}
-static void
-init_logging()
+static void init_logging()
{
- auto logger = atomic_dex::utils::register_logger();
- if (spdlog::get("log_mt") == nullptr)
- {
- spdlog::register_logger(logger);
- spdlog::set_default_logger(logger);
- spdlog::set_level(spdlog::level::trace);
- spdlog::set_pattern("[%T] [%^%l%$] [%s:%#] [%t]: %v");
- }
+ constexpr size_t qsize_spdlog = 10240;
+ constexpr size_t spdlog_thread_count = 2;
+ constexpr size_t spdlog_max_file_size = 7777777;
+ constexpr size_t spdlog_max_file_rotation = 3;
+
+ fs::path path = atomic_dex::utils::get_atomic_dex_current_log_file();
+ spdlog::init_thread_pool(qsize_spdlog, spdlog_thread_count);
+ auto tp = spdlog::thread_pool();
+ auto stdout_sink = std::make_shared();
+
+#if defined(_WIN32) || defined(WIN32)
+ auto rotating_sink = std::make_shared(path.wstring(), spdlog_max_file_size, spdlog_max_file_rotation);
+#else
+ auto rotating_sink = std::make_shared(path.string(), spdlog_max_file_size, spdlog_max_file_rotation);
+#endif
+
+ std::vector sinks{stdout_sink, rotating_sink};
+ auto logger = std::make_shared("log_mt", sinks.begin(), sinks.end(), tp, spdlog::async_overflow_policy::block);
+ spdlog::register_logger(logger);
+ spdlog::set_default_logger(logger);
+#ifdef DEBUG
+ spdlog::set_level(spdlog::level::trace);
+#else
+ spdlog::set_level(spdlog::level::info);
+#endif
+ spdlog::set_pattern("[%T] [%^%l%$] [%s:%#] [%t]: %v");
}
static void
@@ -322,7 +340,7 @@ handle_settings(QSettings& settings)
#endif
create_settings_functor("AutomaticUpdateOrderBot", QVariant(false));
create_settings_functor("WalletChartsCategory", qint32(WalletChartsCategories::OneMonth));
- create_settings_functor("AvailableLang", QStringList{"en", "fr", "tr", "ru"});
+ create_settings_functor("AvailableLang", QStringList{"en", "es", "fr", "de", "tr", "ru"});
create_settings_functor("CurrentLang", QString("en"));
create_settings_functor("2FA", 0);
create_settings_functor("MaximumNbCoinsEnabled", 50);
diff --git a/src/core/atomicdex/api/komodo_prices/komodo.prices.cpp b/src/core/atomicdex/api/komodo_prices/komodo.prices.cpp
index c403ee2966..65ca7505bb 100644
--- a/src/core/atomicdex/api/komodo_prices/komodo.prices.cpp
+++ b/src/core/atomicdex/api/komodo_prices/komodo.prices.cpp
@@ -79,8 +79,8 @@ namespace atomic_dex::komodo_prices::api
{
web::http::http_request req;
req.set_method(web::http::methods::GET);
- SPDLOG_INFO("url: {}", TO_STD_STR(g_komodo_prices_client->base_uri().to_string()) + "api/v2/tickers?expire_at=600");
- req.set_request_uri(FROM_STD_STR("/api/v2/tickers?expire_at=600"));
+ SPDLOG_INFO("url: {}", TO_STD_STR(g_komodo_prices_client->base_uri().to_string()) + "api/v2/tickers?expire_at=21600");
+ req.set_request_uri(FROM_STD_STR("/api/v2/tickers?expire_at=21600"));
return fallback ? g_komodo_prices_client_fallback->request(req) : g_komodo_prices_client->request(req);
}
} // namespace atomic_dex::komodo_prices::api
diff --git a/src/core/atomicdex/api/mm2/balance.infos.cpp b/src/core/atomicdex/api/mm2/balance.infos.cpp
new file mode 100644
index 0000000000..73c1c8753c
--- /dev/null
+++ b/src/core/atomicdex/api/mm2/balance.infos.cpp
@@ -0,0 +1,31 @@
+/******************************************************************************
+ * Copyright © 2013-2022 The Komodo Platform Developers. *
+ * *
+ * See the AUTHORS, DEVELOPER-AGREEMENT and LICENSE files at *
+ * the top-level directory of this distribution for the individual copyright *
+ * holder information and the developer policies on copyright and licensing. *
+ * *
+ * Unless otherwise agreed in a custom licensing agreement, no part of the *
+ * Komodo Platform software, including this file may be copied, modified, *
+ * propagated or distributed except according to the terms contained in the *
+ * LICENSE file *
+ * *
+ * Removal or modification of this copyright notice is prohibited. *
+ * *
+ ******************************************************************************/
+
+//! Dependencies Headers
+#include
+
+// Project Headers
+#include "balance.infos.hpp"
+
+namespace atomic_dex::mm2
+{
+ void
+ from_json(const nlohmann::json& j, balance_infos& answer)
+ {
+ answer.spendable = j.at("spendable").get();
+ answer.unspendable = j.at("unspendable").get();
+ }
+} // namespace atomic_dex::mm2
\ No newline at end of file
diff --git a/src/core/atomicdex/api/mm2/balance.infos.hpp b/src/core/atomicdex/api/mm2/balance.infos.hpp
new file mode 100644
index 0000000000..5173db0f8a
--- /dev/null
+++ b/src/core/atomicdex/api/mm2/balance.infos.hpp
@@ -0,0 +1,31 @@
+/******************************************************************************
+ * Copyright © 2013-2022 The Komodo Platform Developers. *
+ * *
+ * See the AUTHORS, DEVELOPER-AGREEMENT and LICENSE files at *
+ * the top-level directory of this distribution for the individual copyright *
+ * holder information and the developer policies on copyright and licensing. *
+ * *
+ * Unless otherwise agreed in a custom licensing agreement, no part of the *
+ * Komodo Platform software, including this file may be copied, modified, *
+ * propagated or distributed except according to the terms contained in the *
+ * LICENSE file *
+ * *
+ * Removal or modification of this copyright notice is prohibited. *
+ * *
+ ******************************************************************************/
+
+#pragma once
+
+#include
+#include
+
+namespace atomic_dex::mm2
+{
+ struct balance_infos
+ {
+ std::string spendable;
+ std::string unspendable;
+ };
+
+ void from_json(const nlohmann::json& j, balance_infos& answer);
+}
\ No newline at end of file
diff --git a/src/core/atomicdex/api/mm2/balance_info.cpp b/src/core/atomicdex/api/mm2/balance_info.cpp
new file mode 100644
index 0000000000..dde88b26a0
--- /dev/null
+++ b/src/core/atomicdex/api/mm2/balance_info.cpp
@@ -0,0 +1,12 @@
+#include
+
+#include "balance_info.hpp"
+
+namespace atomic_dex::mm2
+{
+ void from_json(const nlohmann::json& j, balance_info& in)
+ {
+ j.at("spendable").get_to(in.spendable);
+ j.at("unspendable").get_to(in.unspendable);
+ }
+}
\ No newline at end of file
diff --git a/src/core/atomicdex/api/mm2/balance_info.hpp b/src/core/atomicdex/api/mm2/balance_info.hpp
new file mode 100644
index 0000000000..f40047c368
--- /dev/null
+++ b/src/core/atomicdex/api/mm2/balance_info.hpp
@@ -0,0 +1,16 @@
+#pragma once
+
+#include
+
+#include //> nlohmann::json
+
+namespace atomic_dex::mm2
+{
+ struct balance_info
+ {
+ std::string spendable;
+ std::string unspendable;
+ };
+
+ void from_json(const nlohmann::json& j, balance_info& in);
+}
\ No newline at end of file
diff --git a/src/core/atomicdex/api/mm2/enable_bch_with_tokens_rpc.cpp b/src/core/atomicdex/api/mm2/enable_bch_with_tokens_rpc.cpp
new file mode 100644
index 0000000000..26b248f4a1
--- /dev/null
+++ b/src/core/atomicdex/api/mm2/enable_bch_with_tokens_rpc.cpp
@@ -0,0 +1,81 @@
+#include
+
+#include "enable_bch_with_tokens_rpc.hpp"
+
+namespace atomic_dex::mm2
+{
+ void to_json(nlohmann::json& j, const enable_bch_with_tokens_request_rpc& in)
+ {
+ j["ticker"] = in.ticker;
+ j["bchd_urls"] = in.bchd_urls;
+ j["tx_history"] = in.tx_history;
+ j["allow_slp_unsafe_conf"] = in.allow_slp_unsafe_conf.value_or(false);
+ j["mode"] = in.mode;
+ j["slp_tokens_requests"] = in.slp_tokens_requests;
+ if (in.required_confirmations.has_value())
+ j["required_confirmations"] = in.required_confirmations.value();
+ if (in.requires_notarization.has_value())
+ j["requires_notarization"] = in.requires_notarization.value();
+ if (in.address_format.has_value())
+ j["address_format"] = in.address_format.value();
+ if (in.utxo_merge_params.has_value())
+ j["utxo_merge_params"] = in.utxo_merge_params.value();
+ }
+
+ void to_json(nlohmann::json& j, const enable_bch_with_tokens_request_rpc::mode_t& in)
+ {
+ j["rpc"] = in.rpc;
+ j["rpc_data"] = in.rpc_data;
+ }
+
+ void to_json(nlohmann::json& j, const enable_bch_with_tokens_request_rpc::mode_t::data& in)
+ {
+ j["servers"] = in.servers;
+ }
+
+ void to_json(nlohmann::json& j, const enable_bch_with_tokens_request_rpc::address_format_t& in)
+ {
+ j["format"] = in.format;
+ j["network"] = in.network;
+ }
+
+ void to_json(nlohmann::json& j, const enable_bch_with_tokens_request_rpc::slp_token_request_t& in)
+ {
+ j["ticker"] = in.ticker;
+ if (in.required_confirmations)
+ j["required_confirmations"] = in.required_confirmations.value();
+ }
+
+ void to_json(nlohmann::json& j, const enable_bch_with_tokens_request_rpc::utxo_merge_params_t& in)
+ {
+ j["merge_at"] = in.merge_at;
+ j["check_every"] = in.check_every;
+ j["max_merge_at_once"] = in.max_merge_at_once;
+ }
+
+ void from_json(const nlohmann::json& json, enable_bch_with_tokens_result_rpc& out)
+ {
+ out.current_block = json["current_block"];
+ out.bch_addresses_infos = json["bch_addresses_infos"].get();
+ out.slp_addresses_infos = json["slp_addresses_infos"].get();
+ }
+
+ void from_json(const nlohmann::json& json, enable_bch_with_tokens_result_rpc::derivation_method_t& out)
+ {
+ out.type = json["type"];
+ }
+
+ void from_json(const nlohmann::json& json, enable_bch_with_tokens_result_rpc::bch_address_infos_t& out)
+ {
+ out.derivation_method = json["derivation_method"];
+ out.pubkey = json["pubkey"];
+ out.balances = json["balances"];
+ }
+
+ void from_json(const nlohmann::json& json, enable_bch_with_tokens_result_rpc::slp_address_infos_t& out)
+ {
+ out.derivation_method = json["derivation_method"];
+ out.pubkey = json["pubkey"];
+ out.balances = json["balances"].get();
+ }
+}
\ No newline at end of file
diff --git a/src/core/atomicdex/api/mm2/enable_bch_with_tokens_rpc.hpp b/src/core/atomicdex/api/mm2/enable_bch_with_tokens_rpc.hpp
new file mode 100644
index 0000000000..88f8f66cd7
--- /dev/null
+++ b/src/core/atomicdex/api/mm2/enable_bch_with_tokens_rpc.hpp
@@ -0,0 +1,96 @@
+#pragma once
+
+#include
+
+#include "rpc.hpp"
+#include "balance_info.hpp"
+#include "atomicdex/config/electrum.cfg.hpp"
+
+namespace atomic_dex::mm2
+{
+ struct enable_bch_with_tokens_rpc
+ {
+ static constexpr auto endpoint = "enable_bch_with_tokens";
+ static constexpr bool is_v2 = true;
+
+ struct expected_request_type
+ {
+ struct mode_t
+ {
+ struct data { std::vector servers; };
+
+ std::string rpc{"Electrum"};
+ data rpc_data;
+ };
+ struct slp_token_request_t
+ {
+ std::string ticker;
+ std::optional required_confirmations;
+ };
+ struct address_format_t
+ {
+ std::string format;
+ std::string network;
+ };
+ struct utxo_merge_params_t
+ {
+ int merge_at;
+ int check_every;
+ int max_merge_at_once;
+ };
+
+ std::string ticker;
+ std::optional allow_slp_unsafe_conf{false};
+ std::vector bchd_urls;
+ mode_t mode;
+ bool tx_history{true};
+ std::vector slp_tokens_requests;
+ std::optional required_confirmations;
+ std::optional requires_notarization;
+ std::optional address_format;
+ std::optional utxo_merge_params;
+ };
+
+ struct expected_result_type
+ {
+ struct derivation_method_t { std::string type; };
+ struct bch_address_infos_t
+ {
+ derivation_method_t derivation_method;
+ std::string pubkey;
+ balance_info balances;
+ };
+ struct slp_address_infos_t
+ {
+ derivation_method_t derivation_method;
+ std::string pubkey;
+ std::unordered_map balances;
+ };
+
+ std::size_t current_block;
+ std::unordered_map bch_addresses_infos;
+ std::unordered_map slp_addresses_infos;
+ };
+
+ using expected_error_type = rpc_basic_error_type;
+
+ expected_request_type request;
+ std::optional result;
+ std::optional error;
+ };
+
+ using enable_bch_with_tokens_request_rpc = enable_bch_with_tokens_rpc::expected_request_type;
+ using enable_bch_with_tokens_result_rpc = enable_bch_with_tokens_rpc::expected_result_type;
+ using enable_bch_with_tokens_error_rpc = enable_bch_with_tokens_rpc::expected_error_type;
+
+ void to_json(nlohmann::json& j, const enable_bch_with_tokens_request_rpc& in);
+ void to_json(nlohmann::json& j, const enable_bch_with_tokens_request_rpc::mode_t& in);
+ void to_json(nlohmann::json& j, const enable_bch_with_tokens_request_rpc::mode_t::data& in);
+ void to_json(nlohmann::json& j, const enable_bch_with_tokens_request_rpc::address_format_t& in);
+ void to_json(nlohmann::json& j, const enable_bch_with_tokens_request_rpc::slp_token_request_t& in);
+ void to_json(nlohmann::json& j, const enable_bch_with_tokens_request_rpc::utxo_merge_params_t& in);
+ void from_json(const nlohmann::json& json, enable_bch_with_tokens_result_rpc& out);
+ void from_json(const nlohmann::json& json, enable_bch_with_tokens_result_rpc::derivation_method_t& out);
+ void from_json(const nlohmann::json& json, enable_bch_with_tokens_result_rpc::bch_address_infos_t& out);
+ void from_json(const nlohmann::json& json, enable_bch_with_tokens_result_rpc::slp_address_infos_t& out);
+}
\ No newline at end of file
diff --git a/src/core/atomicdex/api/mm2/enable_slp_rpc.cpp b/src/core/atomicdex/api/mm2/enable_slp_rpc.cpp
new file mode 100644
index 0000000000..314005d743
--- /dev/null
+++ b/src/core/atomicdex/api/mm2/enable_slp_rpc.cpp
@@ -0,0 +1,28 @@
+#include
+
+#include "enable_slp_rpc.hpp"
+
+namespace atomic_dex::mm2
+{
+ void to_json(nlohmann::json& j, const enable_slp_rpc_request& request)
+ {
+ j["ticker"] = request.ticker;
+ if (request.activation_params.required_confirmations)
+ {
+ j["activation_params"]["required_confirmations"] = *request.activation_params.required_confirmations;
+ }
+ else
+ {
+ j["activation_params"] = nlohmann::json::object();
+ }
+ }
+
+ void from_json(const nlohmann::json& j, enable_slp_rpc_result& in)
+ {
+ j.at("token_id").get_to(in.token_id);
+ j.at("platform_coin").get_to(in.platform_coin);
+ j.at("required_confirmations").get_to(in.required_confirmations);
+ j.at("token_id").get_to(in.token_id);
+ j.at("balances").get_to>(in.balances);
+ }
+}
\ No newline at end of file
diff --git a/src/core/atomicdex/api/mm2/enable_slp_rpc.hpp b/src/core/atomicdex/api/mm2/enable_slp_rpc.hpp
new file mode 100644
index 0000000000..f06ce0dfb0
--- /dev/null
+++ b/src/core/atomicdex/api/mm2/enable_slp_rpc.hpp
@@ -0,0 +1,60 @@
+/******************************************************************************
+ * Copyright © 2013-2022 The Komodo Platform Developers. *
+ * *
+ * See the AUTHORS, DEVELOPER-AGREEMENT and LICENSE files at *
+ * the top-level directory of this distribution for the individual copyright *
+ * holder information and the developer policies on copyright and licensing. *
+ * *
+ * Unless otherwise agreed in a custom licensing agreement, no part of the *
+ * Komodo Platform software, including this file may be copied, modified, *
+ * propagated or distributed except according to the terms contained in the *
+ * LICENSE file *
+ * *
+ * Removal or modification of this copyright notice is prohibited. *
+ * *
+ ******************************************************************************/
+
+#pragma once
+
+#include
+
+#include //> nlohmann::json
+
+#include "rpc.hpp"
+#include "balance_info.hpp"
+
+namespace atomic_dex::mm2
+{
+ struct enable_slp_rpc
+ {
+ static constexpr auto endpoint = "enable_slp";
+ static constexpr bool is_v2 = true;
+
+ struct expected_request_type
+ {
+ std::string ticker;
+ struct { std::optional required_confirmations; } activation_params;
+ };
+
+ struct expected_result_type
+ {
+ std::string token_id;
+ std::string platform_coin;
+ int required_confirmations;
+ std::unordered_map balances;
+ };
+
+ using expected_error_type = rpc_basic_error_type;
+
+ expected_request_type request;
+ std::optional result;
+ std::optional error;
+ };
+
+ using enable_slp_rpc_request = enable_slp_rpc::expected_request_type;
+ using enable_slp_rpc_result = enable_slp_rpc::expected_result_type;
+ using enable_slp_rpc_error = enable_slp_rpc::expected_error_type;
+
+ void to_json(nlohmann::json& j, const enable_slp_rpc_request& request);
+ void from_json(const nlohmann::json& j, enable_slp_rpc_result& in);
+}
\ No newline at end of file
diff --git a/src/core/atomicdex/api/mm2/format.address.cpp b/src/core/atomicdex/api/mm2/format.address.cpp
new file mode 100644
index 0000000000..e860019e11
--- /dev/null
+++ b/src/core/atomicdex/api/mm2/format.address.cpp
@@ -0,0 +1,31 @@
+/******************************************************************************
+ * Copyright © 2013-2022 The Komodo Platform Developers. *
+ * *
+ * See the AUTHORS, DEVELOPER-AGREEMENT and LICENSE files at *
+ * the top-level directory of this distribution for the individual copyright *
+ * holder information and the developer policies on copyright and licensing. *
+ * *
+ * Unless otherwise agreed in a custom licensing agreement, no part of the *
+ * Komodo Platform software, including this file may be copied, modified, *
+ * propagated or distributed except according to the terms contained in the *
+ * LICENSE file *
+ * *
+ * Removal or modification of this copyright notice is prohibited. *
+ * *
+ ******************************************************************************/
+
+//! Dependencies Headers
+#include
+
+//! Project Headers
+#include "format.address.hpp"
+
+namespace atomic_dex::mm2
+{
+ void
+ to_json(nlohmann::json& j, const format_address& cfg)
+ {
+ j["format"] = cfg.format;
+ j["network"] = cfg.network;
+ }
+} // namespace atomic_dex::mm2
\ No newline at end of file
diff --git a/src/core/atomicdex/api/mm2/format.address.hpp b/src/core/atomicdex/api/mm2/format.address.hpp
new file mode 100644
index 0000000000..c6f9db230c
--- /dev/null
+++ b/src/core/atomicdex/api/mm2/format.address.hpp
@@ -0,0 +1,31 @@
+/******************************************************************************
+ * Copyright © 2013-2022 The Komodo Platform Developers. *
+ * *
+ * See the AUTHORS, DEVELOPER-AGREEMENT and LICENSE files at *
+ * the top-level directory of this distribution for the individual copyright *
+ * holder information and the developer policies on copyright and licensing. *
+ * *
+ * Unless otherwise agreed in a custom licensing agreement, no part of the *
+ * Komodo Platform software, including this file may be copied, modified, *
+ * propagated or distributed except according to the terms contained in the *
+ * LICENSE file *
+ * *
+ * Removal or modification of this copyright notice is prohibited. *
+ * *
+ ******************************************************************************/
+
+#pragma once
+
+#include
+#include
+
+namespace atomic_dex::mm2
+{
+ struct format_address
+ {
+ std::string format;
+ std::string network;
+ };
+
+ void to_json(nlohmann::json& j, const format_address& cfg);
+}
\ No newline at end of file
diff --git a/src/core/atomicdex/api/mm2/fraction.cpp b/src/core/atomicdex/api/mm2/fraction.cpp
index 705e82e620..0bcdc944fc 100644
--- a/src/core/atomicdex/api/mm2/fraction.cpp
+++ b/src/core/atomicdex/api/mm2/fraction.cpp
@@ -1,19 +1,12 @@
-//
-// Created by Roman Szterg on 13/02/2021.
-//
-
-//! Deps
#include
-//! Project Headers
#include "atomicdex/api/mm2/fraction.hpp"
-namespace mm2::api
+namespace atomic_dex::mm2
{
- void
- from_json(const nlohmann::json& j, fraction& fraction)
+ void from_json(const nlohmann::json& j, mm2::fraction& fraction)
{
j.at("denom").get_to(fraction.denom);
j.at("numer").get_to(fraction.numer);
}
-} // namespace mm2::api
\ No newline at end of file
+} // namespace atomic_dex::mm2
\ No newline at end of file
diff --git a/src/core/atomicdex/api/mm2/fraction.fwd.hpp b/src/core/atomicdex/api/mm2/fraction.fwd.hpp
index 751790ad4a..8b0b7bb20c 100644
--- a/src/core/atomicdex/api/mm2/fraction.fwd.hpp
+++ b/src/core/atomicdex/api/mm2/fraction.fwd.hpp
@@ -1,6 +1,6 @@
#pragma once
-namespace mm2::api
+namespace atomic_dex::mm2
{
struct fraction;
}
\ No newline at end of file
diff --git a/src/core/atomicdex/api/mm2/fraction.hpp b/src/core/atomicdex/api/mm2/fraction.hpp
index c1a8895e2d..c197c8a478 100644
--- a/src/core/atomicdex/api/mm2/fraction.hpp
+++ b/src/core/atomicdex/api/mm2/fraction.hpp
@@ -1,13 +1,11 @@
#pragma once
-//! STD
#include
-//! Deps
#include
#include
-namespace mm2::api
+namespace atomic_dex::mm2
{
struct fraction
{
@@ -15,5 +13,5 @@ namespace mm2::api
std::string numer;
};
- ENTT_API void from_json(const nlohmann::json& j, fraction& fraction);
+ ENTT_API void from_json(const nlohmann::json& j, mm2::fraction& fraction);
}
\ No newline at end of file
diff --git a/src/core/atomicdex/api/mm2/generic.error.cpp b/src/core/atomicdex/api/mm2/generic.error.cpp
index 4c0f6ab146..85943adcf6 100644
--- a/src/core/atomicdex/api/mm2/generic.error.cpp
+++ b/src/core/atomicdex/api/mm2/generic.error.cpp
@@ -1,13 +1,8 @@
-//
-// Created by Sztergbaum Roman on 08/06/2021.
-//
-
#include "atomicdex/api/mm2/generic.error.hpp"
-namespace mm2::api
+namespace atomic_dex::mm2
{
- void
- from_json(const nlohmann::json& j, generic_answer_error& res)
+ void from_json(const nlohmann::json& j, generic_answer_error& res)
{
j.at("error").get_to(res.error);
j.at("error_path").get_to(res.error_path);
@@ -15,4 +10,4 @@ namespace mm2::api
j.at("error_type").get_to(res.error_type);
j.at("error_data").get_to(res.error_data);
}
-} // namespace mm2::api
\ No newline at end of file
+} // namespace atomic_dex::mm2
\ No newline at end of file
diff --git a/src/core/atomicdex/api/mm2/generic.error.hpp b/src/core/atomicdex/api/mm2/generic.error.hpp
index a7de90b803..7be792aae5 100644
--- a/src/core/atomicdex/api/mm2/generic.error.hpp
+++ b/src/core/atomicdex/api/mm2/generic.error.hpp
@@ -6,7 +6,7 @@
//! Deps
#include
-namespace mm2::api
+namespace atomic_dex::mm2
{
struct generic_answer_error
{
@@ -18,4 +18,4 @@ namespace mm2::api
};
void from_json(const nlohmann::json& j, generic_answer_error& res);
-} // namespace mm2::api
\ No newline at end of file
+} // namespace atomic_dex::mm2
\ No newline at end of file
diff --git a/src/core/atomicdex/api/mm2/generics.cpp b/src/core/atomicdex/api/mm2/generics.cpp
index 6920b12069..58ec61a052 100644
--- a/src/core/atomicdex/api/mm2/generics.cpp
+++ b/src/core/atomicdex/api/mm2/generics.cpp
@@ -30,7 +30,7 @@
#include "atomicdex/api/mm2/rpc.validate.address.hpp"
#include "atomicdex/api/mm2/rpc.recover.funds.hpp"
-namespace mm2::api
+namespace atomic_dex::mm2
{
template
void
@@ -56,4 +56,4 @@ namespace mm2::api
template void extract_rpc_json_answer(const nlohmann::json& j, validate_address_answer& answer);
template void extract_rpc_json_answer(const nlohmann::json& j, convert_address_answer& answer);
template void extract_rpc_json_answer(const nlohmann::json& j, recover_funds_of_swap_answer& answer);
-} // namespace mm2::api
\ No newline at end of file
+} // namespace atomic_dex::mm2
\ No newline at end of file
diff --git a/src/core/atomicdex/api/mm2/generics.hpp b/src/core/atomicdex/api/mm2/generics.hpp
index 5c40f63053..f8dc01c009 100644
--- a/src/core/atomicdex/api/mm2/generics.hpp
+++ b/src/core/atomicdex/api/mm2/generics.hpp
@@ -18,7 +18,7 @@
#include
-namespace mm2::api
+namespace atomic_dex::mm2
{
template
void
diff --git a/src/core/atomicdex/api/mm2/rpc.get.public.key.cpp b/src/core/atomicdex/api/mm2/get_public_key_rpc.cpp
similarity index 86%
rename from src/core/atomicdex/api/mm2/rpc.get.public.key.cpp
rename to src/core/atomicdex/api/mm2/get_public_key_rpc.cpp
index 966f4d911a..fe8559710b 100644
--- a/src/core/atomicdex/api/mm2/rpc.get.public.key.cpp
+++ b/src/core/atomicdex/api/mm2/get_public_key_rpc.cpp
@@ -14,15 +14,18 @@
* *
******************************************************************************/
-// Deps Headers
#include
-// Project Headers
-#include "rpc.get.public.key.hpp"
+#include "get_public_key_rpc.hpp"
namespace atomic_dex::mm2
{
- void from_json(const nlohmann::json& json, get_public_key_answer& in)
+ void to_json(nlohmann::json& j, const get_public_key_rpc_request& request)
+ {
+
+ }
+
+ void from_json(const nlohmann::json& json, get_public_key_rpc_result& in)
{
json.at("public_key").get_to(in.public_key);
}
diff --git a/src/core/atomicdex/api/mm2/get_public_key_rpc.hpp b/src/core/atomicdex/api/mm2/get_public_key_rpc.hpp
new file mode 100644
index 0000000000..609ae0261e
--- /dev/null
+++ b/src/core/atomicdex/api/mm2/get_public_key_rpc.hpp
@@ -0,0 +1,52 @@
+/******************************************************************************
+ * Copyright © 2013-2022 The Komodo Platform Developers. *
+ * *
+ * See the AUTHORS, DEVELOPER-AGREEMENT and LICENSE files at *
+ * the top-level directory of this distribution for the individual copyright *
+ * holder information and the developer policies on copyright and licensing. *
+ * *
+ * Unless otherwise agreed in a custom licensing agreement, no part of the *
+ * Komodo Platform software, including this file may be copied, modified, *
+ * propagated or distributed except according to the terms contained in the *
+ * LICENSE file *
+ * *
+ * Removal or modification of this copyright notice is prohibited. *
+ * *
+ ******************************************************************************/
+
+#pragma once
+
+#include
+
+#include
+
+#include "rpc.hpp"
+
+namespace atomic_dex::mm2
+{
+ struct get_public_key_rpc
+ {
+ static constexpr auto endpoint = "get_public_key";
+ static constexpr bool is_v2 = true;
+
+ struct expected_request_type{};
+
+ struct expected_result_type
+ {
+ std::string public_key;
+ };
+
+ using expected_error_type = rpc_basic_error_type;
+
+ expected_request_type request;
+ std::optional result;
+ std::optional error;
+ };
+
+ using get_public_key_rpc_request = get_public_key_rpc::expected_request_type;
+ using get_public_key_rpc_result = get_public_key_rpc::expected_result_type;
+ using get_public_key_rpc_error = get_public_key_rpc::expected_error_type;
+
+ void to_json([[maybe_unused]] nlohmann::json& j, const get_public_key_rpc_request&);
+ void from_json(const nlohmann::json& json, get_public_key_rpc_result& in);
+}
\ No newline at end of file
diff --git a/src/core/atomicdex/api/mm2/mm2.client.cpp b/src/core/atomicdex/api/mm2/mm2.client.cpp
index 0b51757b58..635e190a91 100644
--- a/src/core/atomicdex/api/mm2/mm2.client.cpp
+++ b/src/core/atomicdex/api/mm2/mm2.client.cpp
@@ -14,15 +14,18 @@
* *
******************************************************************************/
-// Deps Headers
#include
-// Project Headers
-#include "atomicdex/api/mm2/mm2.client.hpp"
-#include "atomicdex/api/mm2/mm2.hpp"
-#include "atomicdex/api/mm2/rpc.tx.history.hpp"
-#include "rpc.get.public.key.hpp"
+#include "enable_slp_rpc.hpp"
+#include "get_public_key_rpc.hpp"
+#include "enable_bch_with_tokens_rpc.hpp"
+#include "my_tx_history_rpc.hpp"
+#include "my_tx_history_v1_rpc.hpp"
+#include "mm2.client.hpp"
+#include "mm2.hpp"
+#include "atomicdex/constants/dex.constants.hpp"
#include "rpc.hpp"
+#include "rpc.tx.history.hpp"
namespace
{
@@ -31,49 +34,60 @@ namespace
t_http_client generate_client()
{
- web::http::client::http_client_config cfg;
using namespace std::chrono_literals;
- cfg.set_timeout(30s);
- return web::http::client::http_client(FROM_STD_STR(::mm2::api::g_endpoint), cfg);
+
+ constexpr auto client_timeout = 30s;
+ web::http::client::http_client_config cfg;
+
+ cfg.set_timeout(client_timeout);
+ return {FROM_STD_STR(atomic_dex::g_dex_rpc), cfg};
}
- template
+ template
web::http::http_request make_request(typename Rpc::expected_request_type data_req = {})
{
web::http::http_request request;
- nlohmann::json json_req = {{"method", Rpc::endpoint}, {"userpass", mm2::api::get_rpc_password()}};
+ nlohmann::json json_req = {{"method", Rpc::endpoint}, {"userpass", atomic_dex::mm2::get_rpc_password()}};
+ nlohmann::json json_data;
+ nlohmann::to_json(json_data, data_req);
request.set_method(web::http::methods::POST);
if (Rpc::is_v2)
{
json_req["mmrpc"] = "2.0";
- json_req.push_back({"params", data_req});
+ json_req.push_back({"params", json_data});
}
else
{
- json_req.insert(json_req.end(), nlohmann::json(data_req));
+ json_req.insert(json_req.end(), json_data);
}
request.set_body(json_req.dump());
return request;
}
- template
- typename Rpc::expected_answer_type make_answer(const web::http::http_response& answer)
+ template
+ Rpc process_rpc_answer(const web::http::http_response& answer)
{
+ Rpc rpc;
auto json_answer = nlohmann::json::parse(TO_STD_STR(answer.extract_string(true).get()));
+
if (Rpc::is_v2)
{
- return json_answer.at("result").get();
+ if (answer.status_code() == 200)
+ rpc.result = json_answer.at("result").get();
+ else
+ rpc.error = json_answer.get();
}
- return json_answer.get();
+ else
+ rpc.result = json_answer.get();
+ return rpc;
}
} // namespace
-namespace atomic_dex
+namespace atomic_dex::mm2
{
template
- RpcReturnType
- mm2_client::rpc_process_answer(const web::http::http_response& resp, const std::string& rpc_command)
+ RpcReturnType mm2_client::rpc_process_answer(const web::http::http_response& resp, const std::string& rpc_command)
{
std::string body = TO_STD_STR(resp.extract_string(true).get());
SPDLOG_INFO("resp code for rpc_command {} is {}", rpc_command, resp.status_code());
@@ -135,18 +149,31 @@ namespace atomic_dex
return resp;
}
- template <::mm2::api::rpc ApiCallType>
- void mm2_client::process_rpc_async(const std::function& on_rpc_processed)
+ template
+ void mm2_client::process_rpc_async(const std::function& on_rpc_processed)
{
- auto request = make_request();
+ using request_type = typename Rpc::expected_request_type;
+ process_rpc_async(request_type{}, on_rpc_processed);
+ }
+ template void mm2_client::process_rpc_async(const std::function&);
+ template void mm2_client::process_rpc_async(const std::function&);
+ template void mm2_client::process_rpc_async(const std::function&);
+ template void mm2_client::process_rpc_async(const std::function&);
+ template void mm2_client::process_rpc_async(const std::function&);
+
+ template
+ void mm2_client::process_rpc_async(typename Rpc::expected_request_type request, const std::function& on_rpc_processed)
+ {
+ auto http_request = make_request(request);
generate_client()
- .request(request, m_token_source.get_token())
- .template then([on_rpc_processed](const web::http::http_response& resp)
+ .request(http_request, m_token_source.get_token())
+ .template then([on_rpc_processed, request](const web::http::http_response& resp)
{
try
{
- auto answer = make_answer(resp);
- on_rpc_processed(answer);
+ auto rpc = process_rpc_answer(resp);
+ rpc.request = request;
+ on_rpc_processed(rpc);
}
catch (const std::exception& ex)
{
@@ -155,8 +182,6 @@ namespace atomic_dex
});
}
- template void mm2_client::process_rpc_async(const std::function&);
-
void
mm2_client::stop()
{
@@ -167,11 +192,11 @@ namespace atomic_dex
TAnswer
mm2_client::process_rpc(TRequest&& request, std::string rpc_command)
{
- SPDLOG_INFO("Processing rpc call: {}", rpc_command);
+ SPDLOG_DEBUG("Processing rpc call: {}", rpc_command);
- nlohmann::json json_data = ::mm2::api::template_request(rpc_command);
+ nlohmann::json json_data = mm2::template_request(rpc_command);
- ::mm2::api::to_json(json_data, request);
+ mm2::to_json(json_data, request);
auto json_copy = json_data;
json_copy["userpass"] = "*******";
@@ -198,5 +223,5 @@ namespace atomic_dex
}
} // namespace atomic_dex
-template mm2::api::tx_history_answer atomic_dex::mm2_client::rpc_process_answer(const web::http::http_response& resp, const std::string& rpc_command);
-template mm2::api::disable_coin_answer atomic_dex::mm2_client::rpc_process_answer(const web::http::http_response& resp, const std::string& rpc_command);
\ No newline at end of file
+template atomic_dex::mm2::tx_history_answer atomic_dex::mm2::mm2_client::rpc_process_answer(const web::http::http_response& resp, const std::string& rpc_command);
+template atomic_dex::mm2::disable_coin_answer atomic_dex::mm2::mm2_client::rpc_process_answer(const web::http::http_response& resp, const std::string& rpc_command);
\ No newline at end of file
diff --git a/src/core/atomicdex/api/mm2/mm2.client.hpp b/src/core/atomicdex/api/mm2/mm2.client.hpp
index fb86964b2f..22f9a94c89 100644
--- a/src/core/atomicdex/api/mm2/mm2.client.hpp
+++ b/src/core/atomicdex/api/mm2/mm2.client.hpp
@@ -12,7 +12,7 @@
#include "rpc.recover.funds.hpp"
#include "rpc.hpp"
-namespace atomic_dex
+namespace atomic_dex::mm2
{
class ENTT_API mm2_client
{
@@ -28,8 +28,10 @@ namespace atomic_dex
//! API
pplx::task async_rpc_batch_standalone(nlohmann::json batch_array);
- template
- void process_rpc_async(const std::function& on_rpc_processed);
+ template
+ void process_rpc_async(const std::function& on_rpc_processed);
+ template
+ void process_rpc_async(typename Rpc::expected_request_type request, const std::function& on_rpc_processed);
//! Synced
template
diff --git a/src/core/atomicdex/api/mm2/mm2.cpp b/src/core/atomicdex/api/mm2/mm2.cpp
index c35bee2154..d889bd07d1 100644
--- a/src/core/atomicdex/api/mm2/mm2.cpp
+++ b/src/core/atomicdex/api/mm2/mm2.cpp
@@ -23,9 +23,11 @@
#include "atomicdex/api/mm2/rpc.convertaddress.hpp"
#include "atomicdex/api/mm2/rpc.min.volume.hpp"
#include "atomicdex/api/mm2/rpc.orderbook.hpp"
+#include "atomicdex/api/mm2/rpc.recover.funds.hpp"
#include "atomicdex/api/mm2/rpc.trade.preimage.hpp"
#include "atomicdex/api/mm2/rpc.validate.address.hpp"
#include "atomicdex/api/mm2/rpc.withdraw.hpp"
+#include "atomicdex/api/mm2/rpc2.withdraw_status.hpp"
#include "atomicdex/api/mm2/rpc.recover.funds.hpp"
#include "atomicdex/pages/qt.settings.page.hpp"
#include "atomicdex/services/price/global.provider.hpp"
@@ -167,7 +169,7 @@ namespace
}
} // namespace
-namespace mm2::api
+namespace atomic_dex::mm2
{
void
to_json(nlohmann::json& j, const send_raw_transaction_request& cfg)
@@ -593,7 +595,7 @@ namespace mm2::api
nlohmann::json json_data = template_request("version");
try
{
- auto client = std::make_unique(FROM_STD_STR("http://127.0.0.1:7783"));
+ auto client = std::make_unique(FROM_STD_STR(atomic_dex::g_dex_rpc));
web::http::http_request request;
request.set_method(web::http::methods::POST);
request.set_body(json_data.dump());
@@ -706,24 +708,25 @@ namespace mm2::api
return answer;
}
- template mm2::api::withdraw_answer rpc_process_answer_batch(nlohmann::json& json_answer, const std::string& rpc_command);
- template mm2::api::my_orders_answer rpc_process_answer_batch(nlohmann::json& json_answer, const std::string& rpc_command);
- template mm2::api::orderbook_answer rpc_process_answer_batch(nlohmann::json& json_answer, const std::string& rpc_command);
- template mm2::api::trade_fee_answer rpc_process_answer_batch(nlohmann::json& json_answer, const std::string& rpc_command);
- template mm2::api::max_taker_vol_answer rpc_process_answer_batch(nlohmann::json& json_answer, const std::string& rpc_command);
- template mm2::api::min_volume_answer rpc_process_answer_batch(nlohmann::json& json_answer, const std::string& rpc_command);
- template mm2::api::my_recent_swaps_answer rpc_process_answer_batch(nlohmann::json& json_answer, const std::string& rpc_command);
- template mm2::api::active_swaps_answer rpc_process_answer_batch(nlohmann::json& json_answer, const std::string& rpc_command);
- template mm2::api::show_priv_key_answer rpc_process_answer_batch(nlohmann::json& json_answer, const std::string& rpc_command);
- template mm2::api::trade_preimage_answer rpc_process_answer_batch(nlohmann::json& json_answer, const std::string& rpc_command);
- template mm2::api::best_orders_answer rpc_process_answer_batch(nlohmann::json& json_answer, const std::string& rpc_command);
- template mm2::api::validate_address_answer rpc_process_answer_batch(nlohmann::json& json_answer, const std::string& rpc_command);
- template mm2::api::convert_address_answer rpc_process_answer_batch(nlohmann::json& json_answer, const std::string& rpc_command);
- template mm2::api::recover_funds_of_swap_answer rpc_process_answer_batch(nlohmann::json& json_answer, const std::string& rpc_command);
+ template mm2::withdraw_answer rpc_process_answer_batch(nlohmann::json& json_answer, const std::string& rpc_command);
+ template mm2::withdraw_status_answer rpc_process_answer_batch(nlohmann::json& json_answer, const std::string& rpc_command);
+ template mm2::my_orders_answer rpc_process_answer_batch(nlohmann::json& json_answer, const std::string& rpc_command);
+ template mm2::orderbook_answer rpc_process_answer_batch(nlohmann::json& json_answer, const std::string& rpc_command);
+ template mm2::trade_fee_answer rpc_process_answer_batch(nlohmann::json& json_answer, const std::string& rpc_command);
+ template mm2::max_taker_vol_answer rpc_process_answer_batch(nlohmann::json& json_answer, const std::string& rpc_command);
+ template mm2::min_volume_answer rpc_process_answer_batch(nlohmann::json& json_answer, const std::string& rpc_command);
+ template mm2::my_recent_swaps_answer rpc_process_answer_batch(nlohmann::json& json_answer, const std::string& rpc_command);
+ template mm2::active_swaps_answer rpc_process_answer_batch(nlohmann::json& json_answer, const std::string& rpc_command);
+ template mm2::show_priv_key_answer rpc_process_answer_batch(nlohmann::json& json_answer, const std::string& rpc_command);
+ template mm2::trade_preimage_answer rpc_process_answer_batch(nlohmann::json& json_answer, const std::string& rpc_command);
+ template mm2::best_orders_answer rpc_process_answer_batch(nlohmann::json& json_answer, const std::string& rpc_command);
+ template mm2::validate_address_answer rpc_process_answer_batch(nlohmann::json& json_answer, const std::string& rpc_command);
+ template mm2::convert_address_answer rpc_process_answer_batch(nlohmann::json& json_answer, const std::string& rpc_command);
+ template mm2::recover_funds_of_swap_answer rpc_process_answer_batch(nlohmann::json& json_answer, const std::string& rpc_command);
void
set_system_manager(ag::ecs::system_manager& system_manager)
{
g_system_mgr = std::addressof(system_manager);
}
-} // namespace mm2::api
+} // namespace atomic_dex::mm2
diff --git a/src/core/atomicdex/api/mm2/mm2.hpp b/src/core/atomicdex/api/mm2/mm2.hpp
index 57b15785fd..ae8c9f170d 100644
--- a/src/core/atomicdex/api/mm2/mm2.hpp
+++ b/src/core/atomicdex/api/mm2/mm2.hpp
@@ -32,9 +32,8 @@
namespace ag = antara::gaming;
-namespace mm2::api
+namespace atomic_dex::mm2
{
- inline constexpr const char* g_endpoint = "http://127.0.0.1:7783";
inline constexpr const char* g_etherscan_proxy_endpoint = "https://komodo.live:3334";
inline std::unique_ptr g_etherscan_proxy_http_client{
std::make_unique(FROM_STD_STR(g_etherscan_proxy_endpoint))};
@@ -239,16 +238,16 @@ namespace mm2::api
void set_rpc_password(std::string rpc_password) ;
const std::string& get_rpc_password() ;
void set_system_manager(ag::ecs::system_manager& system_manager);
-} // namespace mm2::api
+} // namespace atomic_dex::mm2
namespace atomic_dex
{
- using t_my_orders_answer = ::mm2::api::my_orders_answer;
- using t_broadcast_request = ::mm2::api::send_raw_transaction_request;
- using t_my_recent_swaps_answer = ::mm2::api::my_recent_swaps_answer;
- using t_my_recent_swaps_request = ::mm2::api::my_recent_swaps_request;
- using t_active_swaps_request = ::mm2::api::active_swaps_request;
- using t_active_swaps_answer = ::mm2::api::active_swaps_answer;
- using t_get_trade_fee_request = ::mm2::api::trade_fee_request;
- using t_get_trade_fee_answer = ::mm2::api::trade_fee_answer;
+ using t_my_orders_answer = mm2::my_orders_answer;
+ using t_broadcast_request = mm2::send_raw_transaction_request;
+ using t_my_recent_swaps_answer = mm2::my_recent_swaps_answer;
+ using t_my_recent_swaps_request = mm2::my_recent_swaps_request;
+ using t_active_swaps_request = mm2::active_swaps_request;
+ using t_active_swaps_answer = mm2::active_swaps_answer;
+ using t_get_trade_fee_request = mm2::trade_fee_request;
+ using t_get_trade_fee_answer = mm2::trade_fee_answer;
} // namespace atomic_dex
diff --git a/src/core/atomicdex/api/mm2/my_tx_history_rpc.cpp b/src/core/atomicdex/api/mm2/my_tx_history_rpc.cpp
new file mode 100644
index 0000000000..6a0c86ef95
--- /dev/null
+++ b/src/core/atomicdex/api/mm2/my_tx_history_rpc.cpp
@@ -0,0 +1,31 @@
+// atomicdex-desktop
+// Author(s): syl
+
+#include
+
+#include "my_tx_history_rpc.hpp"
+
+namespace atomic_dex::mm2
+{
+ void to_json(nlohmann::json& j, const my_tx_history_request_rpc& in)
+ {
+ j["coin"] = in.coin;
+ j["limit"] = in.limit;
+ j["paging_options"] = nlohmann::json::object();
+ if (in.paging_options.from_id)
+ {
+ j["paging_options"]["FromId"] = *in.paging_options.from_id;
+ }
+ if (in.paging_options.page_number)
+ {
+ j["paging_options"]["PageNumber"] = *in.paging_options.page_number;
+ }
+ }
+
+ void from_json(const nlohmann::json& json, my_tx_history_result_rpc& out)
+ {
+ out.coin = json["coin"];
+ out.current_block = json["current_block"];
+ out.transactions = json["transactions"].get>();
+ }
+}
\ No newline at end of file
diff --git a/src/core/atomicdex/api/mm2/my_tx_history_rpc.hpp b/src/core/atomicdex/api/mm2/my_tx_history_rpc.hpp
new file mode 100644
index 0000000000..ea308b14b6
--- /dev/null
+++ b/src/core/atomicdex/api/mm2/my_tx_history_rpc.hpp
@@ -0,0 +1,46 @@
+// atomicdex-desktop
+// Author(s): syl
+
+#include
+
+#include "paging_options.hpp"
+#include "transaction.data.hpp"
+#include "rpc.hpp"
+
+#pragma once
+
+namespace atomic_dex::mm2
+{
+ struct my_tx_history_rpc
+ {
+ static constexpr auto endpoint = "my_tx_history";
+ static constexpr bool is_v2 = true;
+
+ struct expected_request_type
+ {
+ std::string coin;
+ int limit;
+ paging_options paging_options;
+ };
+
+ struct expected_result_type
+ {
+ std::string coin;
+ std::size_t current_block;
+ std::vector transactions;
+ };
+
+ using expected_error_type = rpc_basic_error_type;
+
+ expected_request_type request;
+ std::optional result;
+ std::optional