diff --git a/.github/workflows/draft-artifacts.yml b/.github/workflows/draft-artifacts.yml index 01f716d289..f02f6a33e8 100644 --- a/.github/workflows/draft-artifacts.yml +++ b/.github/workflows/draft-artifacts.yml @@ -46,20 +46,20 @@ jobs: # - name: Upload .AppImage # uses: actions/upload-artifact@master # with: - # name: ark-desktop-wallet-linux-2.9.4.AppImage - # path: build/target/ark-desktop-wallet-linux-x86_64-2.9.4.AppImage + # name: ark-desktop-wallet-linux-2.9.5.AppImage + # path: build/target/ark-desktop-wallet-linux-x86_64-2.9.5.AppImage # - name: Upload .tar.gz # uses: actions/upload-artifact@master # with: - # name: ark-desktop-wallet-linux-2.9.4.tar.gz - # path: build/target/ark-desktop-wallet-linux-x64-2.9.4.tar.gz + # name: ark-desktop-wallet-linux-2.9.5.tar.gz + # path: build/target/ark-desktop-wallet-linux-x64-2.9.5.tar.gz - name: Upload .deb uses: actions/upload-artifact@master with: - name: ark-desktop-wallet-linux-2.9.4-${{ github.sha }}.deb - path: build/target/ark-desktop-wallet-linux-amd64-2.9.4.deb + name: ark-desktop-wallet-linux-2.9.5-${{ github.sha }}.deb + path: build/target/ark-desktop-wallet-linux-amd64-2.9.5.deb build-macOS: runs-on: macos-latest @@ -102,14 +102,14 @@ jobs: # - name: Upload .zip # uses: actions/upload-artifact@master # with: - # name: ark-desktop-wallet-mac-2.9.4.zip - # path: build/target/ark-desktop-wallet-mac-2.9.4.zip + # name: ark-desktop-wallet-mac-2.9.5.zip + # path: build/target/ark-desktop-wallet-mac-2.9.5.zip - name: Upload .dmg uses: actions/upload-artifact@v1 with: - name: ark-desktop-wallet-mac-2.9.4-${{ github.sha }}.dmg - path: build/target/ark-desktop-wallet-mac-2.9.4.dmg + name: ark-desktop-wallet-mac-2.9.5-${{ github.sha }}.dmg + path: build/target/ark-desktop-wallet-mac-2.9.5.dmg build-windows: runs-on: windows-latest @@ -137,5 +137,5 @@ jobs: - name: Upload .exe uses: actions/upload-artifact@v1 with: - name: ark-desktop-wallet-win-2.9.4-${{ github.sha }}.exe - path: build/target/ark-desktop-wallet-win-2.9.4.exe + name: ark-desktop-wallet-win-2.9.5-${{ github.sha }}.exe + path: build/target/ark-desktop-wallet-win-2.9.5.exe diff --git a/.github/workflows/publish-release.yml b/.github/workflows/publish-release.yml index 14ac026a1b..666c2798a9 100644 --- a/.github/workflows/publish-release.yml +++ b/.github/workflows/publish-release.yml @@ -82,28 +82,28 @@ jobs: GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} - name: Calculate Checksums for AppImage - run: shasum -a 256 build/target/ark-desktop-wallet-linux-x86_64-2.9.4.AppImage + run: shasum -a 256 build/target/ark-desktop-wallet-linux-x86_64-2.9.5.AppImage - name: Calculate Checksums for TAR - run: shasum -a 256 build/target/ark-desktop-wallet-linux-x64-2.9.4.tar.gz + run: shasum -a 256 build/target/ark-desktop-wallet-linux-x64-2.9.5.tar.gz - name: Calculate Checksums for DEB - run: shasum -a 256 build/target/ark-desktop-wallet-linux-amd64-2.9.4.deb + run: shasum -a 256 build/target/ark-desktop-wallet-linux-amd64-2.9.5.deb - name: VirusTotal Scan for AppImage run: | UPLOAD_URL=$(curl -s --location --url 'https://www.virustotal.com/vtapi/v2/file/scan/upload_url?apikey=${{ secrets.VIRUSTOTAL_TOKEN }}' | jq -r .upload_url) - curl -s --url "$UPLOAD_URL" --form 'apikey=${{ secrets.VIRUSTOTAL_TOKEN }}' --form 'file=@build/target/ark-desktop-wallet-linux-x86_64-2.9.4.AppImage' | jq -r .permalink + curl -s --url "$UPLOAD_URL" --form 'apikey=${{ secrets.VIRUSTOTAL_TOKEN }}' --form 'file=@build/target/ark-desktop-wallet-linux-x86_64-2.9.5.AppImage' | jq -r .permalink - name: VirusTotal Scan for TAR run: | UPLOAD_URL=$(curl -s --location --url 'https://www.virustotal.com/vtapi/v2/file/scan/upload_url?apikey=${{ secrets.VIRUSTOTAL_TOKEN }}' | jq -r .upload_url) - curl -s --url "$UPLOAD_URL" --form 'apikey=${{ secrets.VIRUSTOTAL_TOKEN }}' --form 'file=@build/target/ark-desktop-wallet-linux-x64-2.9.4.tar.gz' | jq -r .permalink + curl -s --url "$UPLOAD_URL" --form 'apikey=${{ secrets.VIRUSTOTAL_TOKEN }}' --form 'file=@build/target/ark-desktop-wallet-linux-x64-2.9.5.tar.gz' | jq -r .permalink - name: VirusTotal Scan for DEB run: | UPLOAD_URL=$(curl -s --location --url 'https://www.virustotal.com/vtapi/v2/file/scan/upload_url?apikey=${{ secrets.VIRUSTOTAL_TOKEN }}' | jq -r .upload_url) - curl -s --url "$UPLOAD_URL" --form 'apikey=${{ secrets.VIRUSTOTAL_TOKEN }}' --form 'file=@build/target/ark-desktop-wallet-linux-amd64-2.9.4.deb' | jq -r .permalink + curl -s --url "$UPLOAD_URL" --form 'apikey=${{ secrets.VIRUSTOTAL_TOKEN }}' --form 'file=@build/target/ark-desktop-wallet-linux-amd64-2.9.5.deb' | jq -r .permalink publish-macos: needs: ["create-release"] @@ -148,20 +148,20 @@ jobs: CSC_KEY_PASSWORD: ${{ secrets.CSC_KEY_PASSWORD }} - name: Calculate Checksums for DMG - run: shasum -a 256 build/target/ark-desktop-wallet-mac-2.9.4.dmg + run: shasum -a 256 build/target/ark-desktop-wallet-mac-2.9.5.dmg - name: Calculate Checksums for ZIP - run: shasum -a 256 build/target/ark-desktop-wallet-mac-2.9.4.zip + run: shasum -a 256 build/target/ark-desktop-wallet-mac-2.9.5.zip - name: VirusTotal Scan for DMG run: | UPLOAD_URL=$(curl -s --location --url 'https://www.virustotal.com/vtapi/v2/file/scan/upload_url?apikey=${{ secrets.VIRUSTOTAL_TOKEN }}' | jq -r .upload_url) - curl -s --url "$UPLOAD_URL" --form 'apikey=${{ secrets.VIRUSTOTAL_TOKEN }}' --form 'file=@build/target/ark-desktop-wallet-mac-2.9.4.dmg' | jq -r .permalink + curl -s --url "$UPLOAD_URL" --form 'apikey=${{ secrets.VIRUSTOTAL_TOKEN }}' --form 'file=@build/target/ark-desktop-wallet-mac-2.9.5.dmg' | jq -r .permalink - name: VirusTotal Scan for ZIP run: | UPLOAD_URL=$(curl -s --location --url 'https://www.virustotal.com/vtapi/v2/file/scan/upload_url?apikey=${{ secrets.VIRUSTOTAL_TOKEN }}' | jq -r .upload_url) - curl -s --url "$UPLOAD_URL" --form 'apikey=${{ secrets.VIRUSTOTAL_TOKEN }}' --form 'file=@build/target/ark-desktop-wallet-mac-2.9.4.zip' | jq -r .permalink + curl -s --url "$UPLOAD_URL" --form 'apikey=${{ secrets.VIRUSTOTAL_TOKEN }}' --form 'file=@build/target/ark-desktop-wallet-mac-2.9.5.zip' | jq -r .permalink publish-windows: needs: ["create-release"] @@ -199,5 +199,5 @@ jobs: GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} - name: Calculate Checksums for EXE - run: Get-FileHash build/target/ark-desktop-wallet-win-2.9.4.exe -Algorithm SHA256 | Format-List + run: Get-FileHash build/target/ark-desktop-wallet-win-2.9.5.exe -Algorithm SHA256 | Format-List shell: powershell diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 63b50a4392..9a7aa05820 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -90,20 +90,20 @@ jobs: # - name: Upload .AppImage # uses: actions/upload-artifact@master # with: - # name: ark-desktop-wallet-linux-2.9.4.AppImage - # path: build/target/ark-desktop-wallet-linux-x86_64-2.9.4.AppImage + # name: ark-desktop-wallet-linux-2.9.5.AppImage + # path: build/target/ark-desktop-wallet-linux-x86_64-2.9.5.AppImage # - name: Upload .tar.gz # uses: actions/upload-artifact@master # with: - # name: ark-desktop-wallet-linux-2.9.4.tar.gz - # path: build/target/ark-desktop-wallet-linux-x64-2.9.4.tar.gz + # name: ark-desktop-wallet-linux-2.9.5.tar.gz + # path: build/target/ark-desktop-wallet-linux-x64-2.9.5.tar.gz - name: Upload .deb uses: actions/upload-artifact@master with: - name: ark-desktop-wallet-linux-2.9.4-${{ github.sha }}.deb - path: build/target/ark-desktop-wallet-linux-amd64-2.9.4.deb + name: ark-desktop-wallet-linux-2.9.5-${{ github.sha }}.deb + path: build/target/ark-desktop-wallet-linux-amd64-2.9.5.deb build-macOS: runs-on: macos-latest @@ -138,14 +138,14 @@ jobs: # - name: Upload .zip # uses: actions/upload-artifact@master # with: - # name: ark-desktop-wallet-mac-2.9.4.zip - # path: build/target/ark-desktop-wallet-mac-2.9.4.zip + # name: ark-desktop-wallet-mac-2.9.5.zip + # path: build/target/ark-desktop-wallet-mac-2.9.5.zip - name: Upload .dmg uses: actions/upload-artifact@v1 with: - name: ark-desktop-wallet-mac-2.9.4-${{ github.sha }}.dmg - path: build/target/ark-desktop-wallet-mac-2.9.4.dmg + name: ark-desktop-wallet-mac-2.9.5-${{ github.sha }}.dmg + path: build/target/ark-desktop-wallet-mac-2.9.5.dmg build-windows: runs-on: windows-latest @@ -173,5 +173,5 @@ jobs: - name: Upload .exe uses: actions/upload-artifact@v1 with: - name: ark-desktop-wallet-win-2.9.4-${{ github.sha }}.exe - path: build/target/ark-desktop-wallet-win-2.9.4.exe + name: ark-desktop-wallet-win-2.9.5-${{ github.sha }}.exe + path: build/target/ark-desktop-wallet-win-2.9.5.exe diff --git a/README.md b/README.md index 0f20ea8e1c..714994220a 100644 --- a/README.md +++ b/README.md @@ -6,7 +6,7 @@ [![Latest Version](https://badgen.now.sh/github/release/ArkEcosystem/desktop-wallet)](https://github.com/ArkEcosystem/desktop-wallet/releases) [![License: MIT](https://badgen.now.sh/badge/license/MIT/green)](https://opensource.org/licenses/MIT) -> Lead Maintainer: [Alex Barnsley](https://github.com/alexbarnsley) +> Lead Maintainer: [LĂșcio Rubens](https://github.com/luciorubeens) ## Download diff --git a/__tests__/unit/__utils__/setup.js b/__tests__/unit/__utils__/setup.js index 2690eee342..ed08d8367a 100644 --- a/__tests__/unit/__utils__/setup.js +++ b/__tests__/unit/__utils__/setup.js @@ -12,6 +12,7 @@ require('babel-plugin-require-context-hook/register')() // implementation to use it instead when that lack of accuracy is an issue global.__Intl__ = global.Intl global.Intl = require('intl') +global.Intl.Collator = global.__Intl__.Collator HTMLCanvasElement.prototype.getContext = jest.fn() diff --git a/__tests__/unit/components/Transaction/TransactionForm/TransactionFormVote.spec.js b/__tests__/unit/components/Transaction/TransactionForm/TransactionFormVote.spec.js index edd85842dd..2716ec6daa 100755 --- a/__tests__/unit/components/Transaction/TransactionForm/TransactionFormVote.spec.js +++ b/__tests__/unit/components/Transaction/TransactionForm/TransactionFormVote.spec.js @@ -234,7 +234,7 @@ describe('TransactionFormVote', () => { expect(wrapper.vm.showVoteUnvoteButton).toBe(false) }) - it('should return false if wallet is voting but not for delegate', () => { + it('should return true if wallet is voting but not for delegate', () => { wrapper.setProps({ isVoter: false, votedDelegate: { @@ -254,7 +254,7 @@ describe('TransactionFormVote', () => { } }) - expect(wrapper.vm.showVoteUnvoteButton).toBe(false) + expect(wrapper.vm.showVoteUnvoteButton).toBe(true) }) it('should return true if not voting', () => { diff --git a/__tests__/unit/services/client.spec.js b/__tests__/unit/services/client.spec.js index d5d0b2a561..f89e208243 100644 --- a/__tests__/unit/services/client.spec.js +++ b/__tests__/unit/services/client.spec.js @@ -16,7 +16,8 @@ const sessionNetwork = Object.freeze({ }, vendorField: { maxLength: 64 - } + }, + version: 23 }) jest.mock('@/store', () => ({ diff --git a/__tests__/unit/services/crypto/transaction-signer.spec.js b/__tests__/unit/services/crypto/transaction-signer.spec.js index 344252912c..fdecf2bfe3 100644 --- a/__tests__/unit/services/crypto/transaction-signer.spec.js +++ b/__tests__/unit/services/crypto/transaction-signer.spec.js @@ -16,7 +16,8 @@ const sessionNetwork = Object.freeze({ }, vendorField: { maxLength: 64 - } + }, + version: 23 }) jest.mock('@/store', () => ({ diff --git a/config/networks/devnet.json b/config/networks/devnet.json index ad801f4602..01c3ee0c45 100644 --- a/config/networks/devnet.json +++ b/config/networks/devnet.json @@ -2,7 +2,7 @@ "id": "ark.devnet", "name": "ARK Devnet", "title": "ARK Devnet", - "server": "https://dexplorer.ark.io:8443", + "server": "https://dwallets.ark.io", "description": "The ARK Devnet is only used for R&D by engineers.", "imagePath": "networks/ark.devnet.svg", "apiVersion": 2, diff --git a/config/networks/mainnet.json b/config/networks/mainnet.json index cd09bbc1c3..8480d29f12 100644 --- a/config/networks/mainnet.json +++ b/config/networks/mainnet.json @@ -2,7 +2,7 @@ "id": "ark.mainnet", "name": "ARK Mainnet", "title": "ARK Mainnet", - "server": "https://explorer.ark.io:8443", + "server": "https://wallets.ark.io", "description": "The ARK Mainnet should be chosen in most cases.", "imagePath": "networks/ark.png", "apiVersion": 2, diff --git a/package.json b/package.json index 501f1e7929..9c2d71f6dc 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "private": true, "name": "ark-desktop-wallet", - "version": "2.9.4", + "version": "2.9.5", "repository": { "type": "git", "url": "git+https://github.com/ArkEcosystem/desktop-wallet.git" @@ -50,8 +50,8 @@ }, "dependencies": { "@arkecosystem/client": "^1.0.5", - "@arkecosystem/core-magistrate-crypto": "^2.6.27", - "@arkecosystem/crypto": "^2.6.27", + "@arkecosystem/core-magistrate-crypto": "^3.0.0-next.9", + "@arkecosystem/crypto": "^3.0.0-next.9", "@arkecosystem/ledger-transport": "^1.1.2", "@arkecosystem/peers": "^0.3.0", "@arkecosystem/platform-sdk": "^0.0.2", @@ -186,8 +186,8 @@ "tailwindcss": "^0.7.4", "tempy": "^0.5.0", "ts-jest": "^25.0.0", - "ts-loader": "^7.0.0", - "typescript": "^3.5.3", + "ts-loader": "^8.0.11", + "typescript": "^3.9.7", "url-loader": "^4.0.0", "vue-html-loader": "^1.2.4", "vue-jest": "^3.0.4", diff --git a/src/renderer/components/Passphrase/PassphraseInput.vue b/src/renderer/components/Passphrase/PassphraseInput.vue index 6cce4a757b..d10b78ace7 100644 --- a/src/renderer/components/Passphrase/PassphraseInput.vue +++ b/src/renderer/components/Passphrase/PassphraseInput.vue @@ -236,7 +236,7 @@ export default { model: { required, isValid (value) { - return WalletService.validatePassphrase(value, this.pubKeyHash) + return WalletService.validatePassphrase(value) }, matchAddress (value) { if (this.address) { diff --git a/src/renderer/components/Transaction/TransactionForm/TransactionFormVote.vue b/src/renderer/components/Transaction/TransactionForm/TransactionFormVote.vue index 7c19dbdf91..892051023d 100644 --- a/src/renderer/components/Transaction/TransactionForm/TransactionFormVote.vue +++ b/src/renderer/components/Transaction/TransactionForm/TransactionFormVote.vue @@ -256,11 +256,15 @@ export default { }, showVoteUnvoteButton () { - if (this.currentWallet.isContact || (!!this.votedDelegate && !this.isVoter) || (this.delegate.isResigned && !this.isVoter)) { + if (this.currentWallet.isContact) { return false } - return !this.votedDelegate || (!!this.votedDelegate && this.isVoter) + if (this.isVoter === false && this.delegate.isResigned) { + return false + } + + return true }, showCurrentlyVoting () { @@ -307,6 +311,10 @@ export default { transactionData.secondPassphrase = this.form.secondPassphrase } + if (this.isVoter === false && !!this.votedDelegate && this.$client.satisfiesCoreVersion('>=3')) { + transactionData.votes.unshift(`-${this.votedDelegate.publicKey}`) + } + return transactionData }, diff --git a/src/renderer/components/Transaction/TransactionModal.vue b/src/renderer/components/Transaction/TransactionModal.vue index 5472101dc0..d24f0511d0 100644 --- a/src/renderer/components/Transaction/TransactionModal.vue +++ b/src/renderer/components/Transaction/TransactionModal.vue @@ -41,7 +41,7 @@