diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 79aa7908..2118d264 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -10,13 +10,13 @@ jobs: runs-on: ubuntu-20.04 steps: - name: Checkout - uses: actions/checkout@v3 + uses: actions/checkout@163217dfcd28294438ea1c1c149cfaf66eec283e # v4.2.1 with: # Disabling shallow clone is recommended for improving relevancy of reporting fetch-depth: 0 - name: Setup NodeJS - uses: actions/setup-node@v3 + uses: actions/setup-node@1a4442cacd436585916779262731d5b162bc6ec7 # v3.8.2 with: node-version-file: '.nvmrc' cache: 'npm' @@ -28,7 +28,7 @@ jobs: npm run lint npm run test:unit - name: Code Coverage Report - uses: SonarSource/sonarcloud-github-action@master + uses: SonarSource/sonarcloud-github-action@383f7e52eae3ab0510c3cb0e7d9d150bbaeab838 # v3.1.0 env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} SONAR_TOKEN: ${{ secrets.SONARCLOUD_TOKEN }} diff --git a/.github/workflows/codeql.yml b/.github/workflows/codeql.yml index 20233619..af10055d 100644 --- a/.github/workflows/codeql.yml +++ b/.github/workflows/codeql.yml @@ -8,8 +8,7 @@ on: schedule: - cron: "59 4 * * 1" -permissions: - contents: read-all +permissions: read-all jobs: analyze: @@ -30,15 +29,15 @@ jobs: uses: actions/checkout@eef61447b9ff4aafe5dcd4e0bbf5d482be7e7871 # v4.2.1 - name: Initialize CodeQL - uses: github/codeql-action/init@5973e2313ac1b9aaedb1f911a1e91228cde07d28 # v2.26.0 + uses: github/codeql-action/init@662472033e021d55d94146f66f6058822b0b39fd # v3.27.0 with: languages: ${{ matrix.language }} queries: +security-and-quality - name: Autobuild - uses: github/codeql-action/autobuild@5973e2313ac1b9aaedb1f911a1e91228cde07d28 # v2.26.0 + uses: github/codeql-action/autobuild@662472033e021d55d94146f66f6058822b0b39fd # v3.27.0 - name: Perform CodeQL Analysis - uses: github/codeql-action/analyze@5973e2313ac1b9aaedb1f911a1e91228cde07d28 # v2.26.0 + uses: github/codeql-action/analyze@662472033e021d55d94146f66f6058822b0b39fd # v3.27.0 with: category: "/language:${{ matrix.language }}" diff --git a/.github/workflows/dependency-review.yml b/.github/workflows/dependency-review.yml index 809fb49d..55220196 100644 --- a/.github/workflows/dependency-review.yml +++ b/.github/workflows/dependency-review.yml @@ -12,10 +12,10 @@ jobs: pull-requests: write steps: - name: 'Checkout Repository' - uses: actions/checkout@eef61447b9ff4aafe5dcd4e0bbf5d482be7e7871 # v4.2.1 + uses: actions/checkout@163217dfcd28294438ea1c1c149cfaf66eec283e # v4.2.1 - name: 'Dependency Review' - uses: actions/dependency-review-action@5a2ce3f5b92ee19cbb1541a4984c76d921601d7c # v4.3.4 + uses: actions/dependency-review-action@a6993e2c61fd5dc440b409aa1d6904921c5e1894 # v4.3.5 with: fail-on-severity: high comment-summary-in-pr: true \ No newline at end of file diff --git a/.github/workflows/deploy_MainNet_UI.yml b/.github/workflows/deploy_MainNet_UI.yml index 94c34afd..4c337568 100644 --- a/.github/workflows/deploy_MainNet_UI.yml +++ b/.github/workflows/deploy_MainNet_UI.yml @@ -22,12 +22,12 @@ jobs: run: echo ::set-output name=VERSION::${GITHUB_REF/refs\/tags\//} - name: Checkout - uses: actions/checkout@v2 + uses: actions/checkout@163217dfcd28294438ea1c1c149cfaf66eec283e # v4.2.1 with: ref: ${{ steps.get_tag_name.outputs.VERSION }} - name: Setup NodeJS - uses: actions/setup-node@v3 + uses: actions/setup-node@0a44ba7841725637a19e28fa30b79a866c81b0a6 #v4.0.4 with: node-version-file: '.nvmrc' cache: 'npm' @@ -58,7 +58,7 @@ jobs: npm run-script build - name: Configure AWS credentials - uses: aws-actions/configure-aws-credentials@v4 + uses: aws-actions/configure-aws-credentials@e3dd6a429d7300a6a4c196c26e071d42e0343502 # v4.0.2 with: role-to-assume: ${{ secrets.MAINNET_ROLE_ARN }} aws-region: us-east-1 diff --git a/.github/workflows/deploy_TestNet_UI.yml b/.github/workflows/deploy_TestNet_UI.yml index c5904db8..4186d628 100644 --- a/.github/workflows/deploy_TestNet_UI.yml +++ b/.github/workflows/deploy_TestNet_UI.yml @@ -22,12 +22,12 @@ jobs: run: echo ::set-output name=VERSION::${GITHUB_REF/refs\/tags\//} - name: Checkout - uses: actions/checkout@v2 + uses: actions/checkout@163217dfcd28294438ea1c1c149cfaf66eec283e # v4.2.1 with: ref: ${{ steps.get_tag_name.outputs.VERSION }} - name: Setup NodeJS - uses: actions/setup-node@v3 + uses: actions/setup-node@0a44ba7841725637a19e28fa30b79a866c81b0a6 #v4.0.4 with: node-version-file: '.nvmrc' cache: 'npm' @@ -58,7 +58,7 @@ jobs: npm run-script build - name: Configure AWS credentials - uses: aws-actions/configure-aws-credentials@v4 + uses: aws-actions/configure-aws-credentials@e3dd6a429d7300a6a4c196c26e071d42e0343502 # v4.0.2 with: role-to-assume: ${{ secrets.TESTNET_ROLE_ARN }} aws-region: us-east-1 diff --git a/.github/workflows/deploy_staging_MainNet_UI.yml b/.github/workflows/deploy_staging_MainNet_UI.yml index 2458c824..c041c2b5 100644 --- a/.github/workflows/deploy_staging_MainNet_UI.yml +++ b/.github/workflows/deploy_staging_MainNet_UI.yml @@ -22,12 +22,12 @@ jobs: run: echo ::set-output name=VERSION::${GITHUB_REF/refs\/tags\//} - name: Checkout - uses: actions/checkout@v3 + uses: actions/checkout@163217dfcd28294438ea1c1c149cfaf66eec283e # v4.2.1 with: ref: release-candidate - name: Setup NodeJS - uses: actions/setup-node@v3 + uses: actions/setup-node@0a44ba7841725637a19e28fa30b79a866c81b0a6 #v4.0.4 with: node-version-file: '.nvmrc' cache: 'npm' @@ -58,7 +58,7 @@ jobs: npm run-script build - name: Configure AWS credentials - uses: aws-actions/configure-aws-credentials@v4 + uses: aws-actions/configure-aws-credentials@e3dd6a429d7300a6a4c196c26e071d42e0343502 # v4.0.2 with: role-to-assume: ${{ secrets.STAGING_MAINNET_ROLE_ARN }} aws-region: us-east-1 diff --git a/.github/workflows/deploy_staging_TestNet_UI.yml b/.github/workflows/deploy_staging_TestNet_UI.yml index 4d297104..e5e63097 100644 --- a/.github/workflows/deploy_staging_TestNet_UI.yml +++ b/.github/workflows/deploy_staging_TestNet_UI.yml @@ -22,12 +22,12 @@ jobs: run: echo ::set-output name=VERSION::${GITHUB_REF/refs\/tags\//} - name: Checkout - uses: actions/checkout@v3 + uses: actions/checkout@163217dfcd28294438ea1c1c149cfaf66eec283e # v4.2.1 with: ref: qa - name: Setup NodeJS - uses: actions/setup-node@v3 + uses: actions/setup-node@0a44ba7841725637a19e28fa30b79a866c81b0a6 #v4.0.4 with: node-version-file: '.nvmrc' cache: 'npm' @@ -58,7 +58,7 @@ jobs: npm run-script build - name: Configure AWS credentials - uses: aws-actions/configure-aws-credentials@v4 + uses: aws-actions/configure-aws-credentials@e3dd6a429d7300a6a4c196c26e071d42e0343502 # v4.0.2 with: role-to-assume: ${{ secrets.STAGING_TESTNET_ROLE_ARN }} aws-region: us-east-1 diff --git a/.github/workflows/scorecard.yml b/.github/workflows/scorecard.yml index 128c2f03..d50e20de 100644 --- a/.github/workflows/scorecard.yml +++ b/.github/workflows/scorecard.yml @@ -19,7 +19,7 @@ jobs: steps: - name: "Checkout code" - uses: actions/checkout@eef61447b9ff4aafe5dcd4e0bbf5d482be7e7871 # v4.2.1 + uses: actions/checkout@163217dfcd28294438ea1c1c149cfaf66eec283e # v4.2.1 with: persist-credentials: false @@ -33,7 +33,7 @@ jobs: # Upload the results as artifacts (optional). Commenting out will disable uploads of run results in SARIF # format to the repository Actions tab. - name: "Upload artifact" - uses: actions/upload-artifact@50769540e7f4bd5e21e526ee35c689e35e0d6874 # v4.4.0 + uses: actions/upload-artifact@b4b15b8c7c6ac21ea08fcf65892d2ee8f75cf882 # v4.4.3 with: name: SARIF file path: results.sarif @@ -42,6 +42,6 @@ jobs: # Upload the results to GitHub's code scanning dashboard (optional). # Commenting out will disable upload of results to your repo's Code Scanning dashboard - name: "Upload to code-scanning" - uses: github/codeql-action/upload-sarif@461ef6c76dfe95d5c364de2f431ddbd31a417628 # v3.26.9 + uses: github/codeql-action/upload-sarif@662472033e021d55d94146f66f6058822b0b39fd # v3.27.0 with: sarif_file: results.sarif \ No newline at end of file diff --git a/Dockerfile b/Dockerfile index 4b41aa2b..fe40c763 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,11 +1,11 @@ -FROM node:latest as build-stage +FROM node@sha256:840dad0077213cadd2d734d542ae11cd0f648200be29504eb1b6e2c995d2b75a as build-stage WORKDIR /app COPY package*.json ./ RUN npm ci COPY ./ . RUN npm run build -FROM nginx as production-stage +FROM nginx@sha256:28402db69fec7c17e179ea87882667f1e054391138f77ffaf0c3eb388efc3ffb as production-stage RUN mkdir /app COPY --from=build-stage /app/dist /app COPY nginx.crt /etc/ssl/ diff --git a/README.md b/README.md index 876ee4d1..4aef3b2d 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,10 @@ [![Quality Gate Status](https://sonarcloud.io/api/project_badges/measure?project=rsksmart_2wp-app&metric=alert_status)](https://sonarcloud.io/summary/new_code?id=rsksmart_2wp-app) +[![OpenSSF Scorecard](https://api.scorecard.dev/projects/github.com/rsksmart/2wp-app/badge)](https://scorecard.dev/viewer/?uri=github.com/rsksmart/2wp-app) + +[Releases](https://github.com/rsksmart/2wp-app/releases/latest) + + # PowPeg app This is the front end application for 2-Way-Peg solution. The solution will be a **web interface (this app)**, which integrates with a Rest API, which in turn communicates with internal services such as the blockchain node and databases. In addition, a daemon/worker will be created that will be responsible for obtaining data from the blockchain and changing the status of the transaction. @@ -62,5 +67,3 @@ To report a vulnerability, please use the [vulnerability reporting guideline](./ ## Adding your own wallet for pegin To know how to add your own wallet in the pegin page, visit [how to add new wallet, step by step](./WALLET.md) for details on how to do it. - -[![OpenSSF Scorecard](https://api.scorecard.dev/projects/github.com/rsksmart/2wp-app/badge)](https://scorecard.dev/viewer/?uri=github.com/rsksmart/2wp-app) \ No newline at end of file diff --git a/package-lock.json b/package-lock.json index e9e12295..9f3d4d4a 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "PowPeg", - "version": "2.2.1", + "version": "2.3.0", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "PowPeg", - "version": "2.2.1", + "version": "2.3.0", "dependencies": { "@leather.io/rpc": "^2.0.2", "@ledgerhq/devices": "6.27.1", @@ -18,7 +18,7 @@ "@rsksmart/bridges-core-sdk": "^0.3.3", "@rsksmart/flyover-sdk": "^1.5.1", "@rsksmart/rlogin": "^1.5.3-beta.1", - "@rsksmart/rlogin-ledger-provider": "^1.0.3", + "@rsksmart/rlogin-ledger-provider": "^1.0.4", "@rsksmart/rlogin-trezor-provider": "^1.0.3", "@rsksmart/rsk-precompiled-abis": "^6.0.0-ARROWHEAD", "@rsksmart/rsk-utils": "^1.1.0", @@ -55,7 +55,7 @@ "vue": "^3.3.4", "vue-i18n": "^9.13.1", "vue-router": "^4.2.4", - "vuetify": "^3.5.17", + "vuetify": "^3.7.3", "vuex": "^4.1.0", "web3": "^4.8.0", "web3-eth-contract": "^1.10.0" @@ -65,12 +65,12 @@ "@ledgerhq/hw-transport-mocker": "^6.28.5", "@mdi/font": "^7.2.96", "@types/big.js": "^6.2.0", - "@types/chai": "^4.2.11", + "@types/chai": "^5.0.0", "@types/jest": "^27.5.2", "@types/markdown-it": "^14.1.1", "@types/node": "^20.4.7", "@types/sinon": "^10.0.2", - "@types/w3c-web-usb": "^1.0.4", + "@types/w3c-web-usb": "^1.0.10", "@typescript-eslint/eslint-plugin": "^5.62.0", "@typescript-eslint/parser": "^5.62.0", "@vue/cli-plugin-babel": "~5.0.0", @@ -85,7 +85,7 @@ "@vue/test-utils": "^2.4.1", "@vue/vue3-jest": "^27.0.0", "babel-jest": "^27.5.1", - "chai": "^4.3.4", + "chai": "^5.0.0", "chromedriver": "^119.0.1", "electron": "^24.2.0", "eslint": "^7.32.0", @@ -2190,6 +2190,29 @@ "dev": true, "license": "MIT" }, + "node_modules/@chainsafe/as-sha256": { + "version": "0.4.2", + "resolved": "https://registry.npmjs.org/@chainsafe/as-sha256/-/as-sha256-0.4.2.tgz", + "integrity": "sha512-HJ8GZBRjLeWtRsAXf3EbNsNzmTGpzTFjfpSf4yHkLYC+E52DhT6hwz+7qpj6I/EmFzSUm5tYYvT9K8GZokLQCQ==" + }, + "node_modules/@chainsafe/persistent-merkle-tree": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/@chainsafe/persistent-merkle-tree/-/persistent-merkle-tree-0.6.1.tgz", + "integrity": "sha512-gcENLemRR13+1MED2NeZBMA7FRS0xQPM7L2vhMqvKkjqtFT4YfjSVADq5U0iLuQLhFUJEMVuA8fbv5v+TN6O9A==", + "dependencies": { + "@chainsafe/as-sha256": "^0.4.1", + "@noble/hashes": "^1.3.0" + } + }, + "node_modules/@chainsafe/ssz": { + "version": "0.11.1", + "resolved": "https://registry.npmjs.org/@chainsafe/ssz/-/ssz-0.11.1.tgz", + "integrity": "sha512-cB8dBkgGN6ZoeOKuk+rIRHKN0L5i9JLGeC0Lui71QX0TuLcQKwgbfkUexpyJxnGFatWf8yeJxlOjozMn/OTP0g==", + "dependencies": { + "@chainsafe/as-sha256": "^0.4.1", + "@chainsafe/persistent-merkle-tree": "^0.6.1" + } + }, "node_modules/@discoveryjs/json-ext": { "version": "0.5.7", "dev": true, @@ -5931,11 +5954,13 @@ "@leather.io/models": "0.10.2" } }, - "node_modules/@ledgerhq/cryptoassets": { - "version": "9.11.1", - "license": "Apache-2.0", + "node_modules/@ledgerhq/cryptoassets-evm-signatures": { + "version": "13.5.1", + "resolved": "https://registry.npmjs.org/@ledgerhq/cryptoassets-evm-signatures/-/cryptoassets-evm-signatures-13.5.1.tgz", + "integrity": "sha512-ktyMb4nx6WGzHZPezfiITwZ5NJDa4twRoeGY81Xb/8JQqOtJprfpL89niJZk1teUT5rcwehGRoJJBl4B94Ea8Q==", "dependencies": { - "invariant": "2" + "@ledgerhq/live-env": "^2.4.0", + "axios": "1.7.7" } }, "node_modules/@ledgerhq/devices": { @@ -5976,75 +6001,67 @@ "license": "ISC" }, "node_modules/@ledgerhq/domain-service": { - "version": "1.1.8", - "license": "Apache-2.0", + "version": "1.2.9", + "resolved": "https://registry.npmjs.org/@ledgerhq/domain-service/-/domain-service-1.2.9.tgz", + "integrity": "sha512-65mlt+DBIs4osuUlljLelMCyG+a2VmWQPw5ppV4J50vPnkqfi8KAM+AiLbv9BHOfCTTaYyKjcVIWp/tHi82M3A==", "dependencies": { - "@ledgerhq/cryptoassets": "^9.11.1", - "@ledgerhq/errors": "^6.14.0", - "@ledgerhq/logs": "^6.10.1", - "@ledgerhq/types-live": "^6.38.1", - "axios": "^1.3.4", + "@ledgerhq/errors": "^6.19.1", + "@ledgerhq/logs": "^6.12.0", + "@ledgerhq/types-live": "^6.52.3", + "axios": "1.7.7", "eip55": "^2.1.1", - "react": "^17.0.2", - "react-dom": "^17.0.2" + "react": "^18.2.0", + "react-dom": "^18.2.0" } }, "node_modules/@ledgerhq/domain-service/node_modules/react": { - "version": "17.0.2", - "license": "MIT", + "version": "18.3.1", + "resolved": "https://registry.npmjs.org/react/-/react-18.3.1.tgz", + "integrity": "sha512-wS+hAgJShR0KhEvPJArfuPVN1+Hz1t0Y6n5jLrGQbkb4urgPE/0Rve+1kMB1v/oWgHgm4WIcV+i7F2pTVj+2iQ==", "dependencies": { - "loose-envify": "^1.1.0", - "object-assign": "^4.1.1" + "loose-envify": "^1.1.0" }, "engines": { "node": ">=0.10.0" } }, "node_modules/@ledgerhq/domain-service/node_modules/react-dom": { - "version": "17.0.2", - "license": "MIT", + "version": "18.3.1", + "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-18.3.1.tgz", + "integrity": "sha512-5m4nQKp+rZRb09LNH59GM4BxTh9251/ylbKIbpe7TpGxfJ+9kv6BLkLBXIjjspbgbnIBNqlI23tRnTWT0snUIw==", "dependencies": { "loose-envify": "^1.1.0", - "object-assign": "^4.1.1", - "scheduler": "^0.20.2" + "scheduler": "^0.23.2" }, "peerDependencies": { - "react": "17.0.2" + "react": "^18.3.1" } }, "node_modules/@ledgerhq/domain-service/node_modules/scheduler": { - "version": "0.20.2", - "license": "MIT", + "version": "0.23.2", + "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.23.2.tgz", + "integrity": "sha512-UOShsPwz7NrMUqhR6t0hWjFduvOzbtv7toDH1/hIrfRNIDBnnBWd0CwJTGvTpngVlmwGCdP9/Zl/tVrDqcuYzQ==", "dependencies": { - "loose-envify": "^1.1.0", - "object-assign": "^4.1.1" + "loose-envify": "^1.1.0" } }, "node_modules/@ledgerhq/errors": { - "version": "6.16.3", - "resolved": "https://registry.npmjs.org/@ledgerhq/errors/-/errors-6.16.3.tgz", - "integrity": "sha512-3w7/SJVXOPa9mpzyll7VKoKnGwDD3BzWgN1Nom8byR40DiQvOKjHX+kKQausCedTHVNBn9euzPCNsftZ9+mxfw==" + "version": "6.19.1", + "resolved": "https://registry.npmjs.org/@ledgerhq/errors/-/errors-6.19.1.tgz", + "integrity": "sha512-75yK7Nnit/Gp7gdrJAz0ipp31CCgncRp+evWt6QawQEtQKYEDfGo10QywgrrBBixeRxwnMy1DP6g2oCWRf1bjw==" }, "node_modules/@ledgerhq/evm-tools": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/@ledgerhq/evm-tools/-/evm-tools-1.0.10.tgz", - "integrity": "sha512-CyViTYzYgLrtxkl203JAZpqlVYCXN8N03cDLdm9EL8GhEzxkyAYIv4hS2SwhWATGXdGAnEoPmju91XrudQ1OxA==", + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/@ledgerhq/evm-tools/-/evm-tools-1.2.4.tgz", + "integrity": "sha512-3panbP6OWBvU/K5nyYqMsjNiccEniHC8CcS/cpKY3n2I1wbH0gmJD1tw6+fo75kyrSAwaBEwwr5sZ1M0cU6fsA==", "dependencies": { - "@ledgerhq/cryptoassets": "^11.1.0", - "@ledgerhq/live-env": "^0.6.1", - "@ledgerhq/live-network": "^1.1.8", + "@ledgerhq/cryptoassets-evm-signatures": "^13.5.1", + "@ledgerhq/live-env": "^2.4.0", + "axios": "1.7.7", "crypto-js": "4.2.0", "ethers": "5.7.2" } }, - "node_modules/@ledgerhq/evm-tools/node_modules/@ledgerhq/cryptoassets": { - "version": "11.1.0", - "resolved": "https://registry.npmjs.org/@ledgerhq/cryptoassets/-/cryptoassets-11.1.0.tgz", - "integrity": "sha512-Ky8ZaXQHd8YcLsjPRpU1QeMolZTVhjV4oDy31sdToKFbYSDmrpIVNSNlCXzkIERR7wUVV5h5XrAPnHH+c8HxGw==", - "dependencies": { - "invariant": "2" - } - }, "node_modules/@ledgerhq/hw-app-btc": { "version": "6.27.1", "license": "Apache-2.0", @@ -6090,58 +6107,59 @@ "license": "ISC" }, "node_modules/@ledgerhq/hw-app-eth": { - "version": "6.34.3", - "license": "Apache-2.0", + "version": "6.40.2", + "resolved": "https://registry.npmjs.org/@ledgerhq/hw-app-eth/-/hw-app-eth-6.40.2.tgz", + "integrity": "sha512-Wt3czShzSzBpvgttX3Fj9Y6n+zdGbqo4TArSysPQQD42yfOArVGFk1ovNPooBkLWj3qWDhVq4J07NIGlrgF8LQ==", "dependencies": { "@ethersproject/abi": "^5.5.0", "@ethersproject/rlp": "^5.5.0", - "@ledgerhq/cryptoassets": "^9.11.1", - "@ledgerhq/domain-service": "^1.1.8", - "@ledgerhq/errors": "^6.14.0", - "@ledgerhq/evm-tools": "^1.0.4", - "@ledgerhq/hw-transport": "^6.28.8", - "@ledgerhq/hw-transport-mocker": "^6.27.19", - "@ledgerhq/logs": "^6.10.1", - "@ledgerhq/types-live": "^6.38.1", - "axios": "^1.3.4", - "bignumber.js": "^9.1.1" + "@ledgerhq/cryptoassets-evm-signatures": "^13.5.1", + "@ledgerhq/domain-service": "^1.2.9", + "@ledgerhq/errors": "^6.19.1", + "@ledgerhq/evm-tools": "^1.2.4", + "@ledgerhq/hw-transport": "^6.31.4", + "@ledgerhq/hw-transport-mocker": "^6.29.4", + "@ledgerhq/logs": "^6.12.0", + "@ledgerhq/types-live": "^6.52.3", + "axios": "1.7.7", + "bignumber.js": "^9.1.2", + "semver": "^7.3.5" } }, "node_modules/@ledgerhq/hw-app-eth/node_modules/@ledgerhq/devices": { - "version": "8.0.7", - "license": "Apache-2.0", + "version": "8.4.4", + "resolved": "https://registry.npmjs.org/@ledgerhq/devices/-/devices-8.4.4.tgz", + "integrity": "sha512-sz/ryhe/R687RHtevIE9RlKaV8kkKykUV4k29e7GAVwzHX1gqG+O75cu1NCJUHLbp3eABV5FdvZejqRUlLis9A==", "dependencies": { - "@ledgerhq/errors": "^6.14.0", - "@ledgerhq/logs": "^6.10.1", - "rxjs": "6", + "@ledgerhq/errors": "^6.19.1", + "@ledgerhq/logs": "^6.12.0", + "rxjs": "^7.8.1", "semver": "^7.3.5" } }, "node_modules/@ledgerhq/hw-app-eth/node_modules/@ledgerhq/hw-transport": { - "version": "6.28.8", - "license": "Apache-2.0", + "version": "6.31.4", + "resolved": "https://registry.npmjs.org/@ledgerhq/hw-transport/-/hw-transport-6.31.4.tgz", + "integrity": "sha512-6c1ir/cXWJm5dCWdq55NPgCJ3UuKuuxRvf//Xs36Bq9BwkV2YaRQhZITAkads83l07NAdR16hkTWqqpwFMaI6A==", "dependencies": { - "@ledgerhq/devices": "^8.0.7", - "@ledgerhq/errors": "^6.14.0", + "@ledgerhq/devices": "^8.4.4", + "@ledgerhq/errors": "^6.19.1", + "@ledgerhq/logs": "^6.12.0", "events": "^3.3.0" } }, - "node_modules/@ledgerhq/hw-app-eth/node_modules/lru-cache": { - "version": "6.0.0", - "license": "ISC", + "node_modules/@ledgerhq/hw-app-eth/node_modules/rxjs": { + "version": "7.8.1", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.8.1.tgz", + "integrity": "sha512-AA3TVj+0A2iuIoQkWEK/tqFjBq2j+6PO6Y0zJcvzLAFhEFIO3HL0vls9hWLncZbAAbK0mar7oZ4V079I/qPMxg==", "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" + "tslib": "^2.1.0" } }, "node_modules/@ledgerhq/hw-app-eth/node_modules/semver": { - "version": "7.5.4", - "license": "ISC", - "dependencies": { - "lru-cache": "^6.0.0" - }, + "version": "7.6.3", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz", + "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==", "bin": { "semver": "bin/semver.js" }, @@ -6149,10 +6167,6 @@ "node": ">=10" } }, - "node_modules/@ledgerhq/hw-app-eth/node_modules/yallist": { - "version": "4.0.0", - "license": "ISC" - }, "node_modules/@ledgerhq/hw-transport": { "version": "6.27.1", "license": "Apache-2.0", @@ -6163,48 +6177,37 @@ } }, "node_modules/@ledgerhq/hw-transport-mocker": { - "version": "6.28.5", - "resolved": "https://registry.npmjs.org/@ledgerhq/hw-transport-mocker/-/hw-transport-mocker-6.28.5.tgz", - "integrity": "sha512-NrOoonR5pIQgzCC9HhKaomUtMCDoz42wWP4bjB2v8vh9KKYXQG9T4R5A+I+KGUqYVSCgyI1YW0RM7V2ZhuWdCA==", + "version": "6.29.4", + "resolved": "https://registry.npmjs.org/@ledgerhq/hw-transport-mocker/-/hw-transport-mocker-6.29.4.tgz", + "integrity": "sha512-CLDIpQ/eqU8qrCYGY9MyHa+oMgqs6PuNkWtqbcaS4AzNx8L/9bv7y8CZwCjxX6oB/2ZEq42RlL6oZ6Ou3oHnoQ==", "dependencies": { - "@ledgerhq/hw-transport": "^6.30.5", + "@ledgerhq/hw-transport": "^6.31.4", "@ledgerhq/logs": "^6.12.0", "rxjs": "^7.8.1" } }, "node_modules/@ledgerhq/hw-transport-mocker/node_modules/@ledgerhq/devices": { - "version": "8.2.2", - "resolved": "https://registry.npmjs.org/@ledgerhq/devices/-/devices-8.2.2.tgz", - "integrity": "sha512-SKahGA4p0mZ3ovypOJ2wa5mUvUkArE3HBrwWKYf+cRs+t/Licp3OJfhj+DHIxP3AfyH2xR6CFFWECYHeKwGsDQ==", + "version": "8.4.4", + "resolved": "https://registry.npmjs.org/@ledgerhq/devices/-/devices-8.4.4.tgz", + "integrity": "sha512-sz/ryhe/R687RHtevIE9RlKaV8kkKykUV4k29e7GAVwzHX1gqG+O75cu1NCJUHLbp3eABV5FdvZejqRUlLis9A==", "dependencies": { - "@ledgerhq/errors": "^6.16.3", + "@ledgerhq/errors": "^6.19.1", "@ledgerhq/logs": "^6.12.0", "rxjs": "^7.8.1", "semver": "^7.3.5" } }, "node_modules/@ledgerhq/hw-transport-mocker/node_modules/@ledgerhq/hw-transport": { - "version": "6.30.5", - "resolved": "https://registry.npmjs.org/@ledgerhq/hw-transport/-/hw-transport-6.30.5.tgz", - "integrity": "sha512-JMl//7BgPBvWxrWyMu82jj6JEYtsQyOyhYtonWNgtxn6KUZWht3gU4gxmLpeIRr+DiS7e50mW7m3GA+EudZmmA==", + "version": "6.31.4", + "resolved": "https://registry.npmjs.org/@ledgerhq/hw-transport/-/hw-transport-6.31.4.tgz", + "integrity": "sha512-6c1ir/cXWJm5dCWdq55NPgCJ3UuKuuxRvf//Xs36Bq9BwkV2YaRQhZITAkads83l07NAdR16hkTWqqpwFMaI6A==", "dependencies": { - "@ledgerhq/devices": "^8.2.2", - "@ledgerhq/errors": "^6.16.3", + "@ledgerhq/devices": "^8.4.4", + "@ledgerhq/errors": "^6.19.1", "@ledgerhq/logs": "^6.12.0", "events": "^3.3.0" } }, - "node_modules/@ledgerhq/hw-transport-mocker/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, "node_modules/@ledgerhq/hw-transport-mocker/node_modules/rxjs": { "version": "7.8.1", "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.8.1.tgz", @@ -6214,12 +6217,9 @@ } }, "node_modules/@ledgerhq/hw-transport-mocker/node_modules/semver": { - "version": "7.6.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz", - "integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==", - "dependencies": { - "lru-cache": "^6.0.0" - }, + "version": "7.6.3", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz", + "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==", "bin": { "semver": "bin/semver.js" }, @@ -6227,56 +6227,51 @@ "node": ">=10" } }, - "node_modules/@ledgerhq/hw-transport-mocker/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" - }, "node_modules/@ledgerhq/hw-transport-webhid": { - "version": "6.27.19", - "license": "Apache-2.0", + "version": "6.29.4", + "resolved": "https://registry.npmjs.org/@ledgerhq/hw-transport-webhid/-/hw-transport-webhid-6.29.4.tgz", + "integrity": "sha512-XkF37lcuyg9zVExMyfDQathWly8rRcGac13wgZATBa3nZ+hUzzWr5QVKg1pKCw10izVHGErW/9a4tbb72rUEmQ==", "dependencies": { - "@ledgerhq/devices": "^8.0.7", - "@ledgerhq/errors": "^6.14.0", - "@ledgerhq/hw-transport": "^6.28.8", - "@ledgerhq/logs": "^6.10.1" + "@ledgerhq/devices": "^8.4.4", + "@ledgerhq/errors": "^6.19.1", + "@ledgerhq/hw-transport": "^6.31.4", + "@ledgerhq/logs": "^6.12.0" } }, "node_modules/@ledgerhq/hw-transport-webhid/node_modules/@ledgerhq/devices": { - "version": "8.0.7", - "license": "Apache-2.0", + "version": "8.4.4", + "resolved": "https://registry.npmjs.org/@ledgerhq/devices/-/devices-8.4.4.tgz", + "integrity": "sha512-sz/ryhe/R687RHtevIE9RlKaV8kkKykUV4k29e7GAVwzHX1gqG+O75cu1NCJUHLbp3eABV5FdvZejqRUlLis9A==", "dependencies": { - "@ledgerhq/errors": "^6.14.0", - "@ledgerhq/logs": "^6.10.1", - "rxjs": "6", + "@ledgerhq/errors": "^6.19.1", + "@ledgerhq/logs": "^6.12.0", + "rxjs": "^7.8.1", "semver": "^7.3.5" } }, "node_modules/@ledgerhq/hw-transport-webhid/node_modules/@ledgerhq/hw-transport": { - "version": "6.28.8", - "license": "Apache-2.0", + "version": "6.31.4", + "resolved": "https://registry.npmjs.org/@ledgerhq/hw-transport/-/hw-transport-6.31.4.tgz", + "integrity": "sha512-6c1ir/cXWJm5dCWdq55NPgCJ3UuKuuxRvf//Xs36Bq9BwkV2YaRQhZITAkads83l07NAdR16hkTWqqpwFMaI6A==", "dependencies": { - "@ledgerhq/devices": "^8.0.7", - "@ledgerhq/errors": "^6.14.0", + "@ledgerhq/devices": "^8.4.4", + "@ledgerhq/errors": "^6.19.1", + "@ledgerhq/logs": "^6.12.0", "events": "^3.3.0" } }, - "node_modules/@ledgerhq/hw-transport-webhid/node_modules/lru-cache": { - "version": "6.0.0", - "license": "ISC", + "node_modules/@ledgerhq/hw-transport-webhid/node_modules/rxjs": { + "version": "7.8.1", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.8.1.tgz", + "integrity": "sha512-AA3TVj+0A2iuIoQkWEK/tqFjBq2j+6PO6Y0zJcvzLAFhEFIO3HL0vls9hWLncZbAAbK0mar7oZ4V079I/qPMxg==", "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" + "tslib": "^2.1.0" } }, "node_modules/@ledgerhq/hw-transport-webhid/node_modules/semver": { - "version": "7.5.4", - "license": "ISC", - "dependencies": { - "lru-cache": "^6.0.0" - }, + "version": "7.6.3", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz", + "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==", "bin": { "semver": "bin/semver.js" }, @@ -6284,10 +6279,6 @@ "node": ">=10" } }, - "node_modules/@ledgerhq/hw-transport-webhid/node_modules/yallist": { - "version": "4.0.0", - "license": "ISC" - }, "node_modules/@ledgerhq/hw-transport-webusb": { "version": "6.27.1", "license": "Apache-2.0", @@ -6299,9 +6290,9 @@ } }, "node_modules/@ledgerhq/live-env": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/@ledgerhq/live-env/-/live-env-0.6.1.tgz", - "integrity": "sha512-DZoFlj35qnjUoOtqPih1ZtjMpJTD8z76JcyHPi/PXD/vGw9ZkitaYP9K2Ihnm3TWul5YzbtF0Q6lvcRswklpPw==", + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/@ledgerhq/live-env/-/live-env-2.4.0.tgz", + "integrity": "sha512-hXkaGPdMZUHbbjfezMKfqUa8LA5gnXfYsnGdQcXorRhdRBqc7w5xtYSlc53Vos88mbDij7iL7NrhDXF//IFd5Q==", "dependencies": { "rxjs": "^7.8.1", "utility-types": "^3.10.0" @@ -6315,53 +6306,26 @@ "tslib": "^2.1.0" } }, - "node_modules/@ledgerhq/live-network": { - "version": "1.1.8", - "resolved": "https://registry.npmjs.org/@ledgerhq/live-network/-/live-network-1.1.8.tgz", - "integrity": "sha512-3cyEMKI6yqJGTfruFyxfnki5OkyrTATwR5CRYUL1keRsVjaB3OdYWqlXesFv23ra1myF1Y7OZemzmwHR2gqTqw==", - "dependencies": { - "@ledgerhq/errors": "^6.15.0", - "@ledgerhq/live-env": "^0.6.1", - "@ledgerhq/live-promise": "^0.0.2", - "@ledgerhq/logs": "^6.11.0", - "axios": "0.26.1", - "invariant": "^2.2.2", - "lru-cache": "^7.14.1" - } - }, - "node_modules/@ledgerhq/live-network/node_modules/axios": { - "version": "0.26.1", - "license": "MIT", - "dependencies": { - "follow-redirects": "^1.14.8" - } - }, - "node_modules/@ledgerhq/live-network/node_modules/lru-cache": { - "version": "7.18.3", - "license": "ISC", - "engines": { - "node": ">=12" - } - }, - "node_modules/@ledgerhq/live-promise": { - "version": "0.0.2", - "resolved": "https://registry.npmjs.org/@ledgerhq/live-promise/-/live-promise-0.0.2.tgz", - "integrity": "sha512-UT3UL7r/67ADw8Ykxg/GrslBr+GqjWCjklIAnlXWTS8zsH58SUp8wJRJN9Ie28RCt0im9UitrQ5o41D8KPszag==", - "dependencies": { - "@ledgerhq/logs": "^6.11.0" - } - }, "node_modules/@ledgerhq/logs": { "version": "6.12.0", "resolved": "https://registry.npmjs.org/@ledgerhq/logs/-/logs-6.12.0.tgz", "integrity": "sha512-ExDoj1QV5eC6TEbMdLUMMk9cfvNKhhv5gXol4SmULRVCx/3iyCPhJ74nsb3S0Vb+/f+XujBEj3vQn5+cwS0fNA==" }, "node_modules/@ledgerhq/types-live": { - "version": "6.38.1", - "license": "Apache-2.0", + "version": "6.52.3", + "resolved": "https://registry.npmjs.org/@ledgerhq/types-live/-/types-live-6.52.3.tgz", + "integrity": "sha512-llIY2MPNedMFb+sm5T7o5ffbpR+avucVpksWMY6NcArKja9pwK24rJeZyJXP7HDzS7rcTQjBNFLqrjX2hnaZyA==", "dependencies": { - "bignumber.js": "^9.1.1", - "rxjs": "6" + "bignumber.js": "^9.1.2", + "rxjs": "^7.8.1" + } + }, + "node_modules/@ledgerhq/types-live/node_modules/rxjs": { + "version": "7.8.1", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.8.1.tgz", + "integrity": "sha512-AA3TVj+0A2iuIoQkWEK/tqFjBq2j+6PO6Y0zJcvzLAFhEFIO3HL0vls9hWLncZbAAbK0mar7oZ4V079I/qPMxg==", + "dependencies": { + "tslib": "^2.1.0" } }, "node_modules/@leichtgewicht/ip-codec": { @@ -7037,22 +7001,168 @@ } }, "node_modules/@rsksmart/rlogin-ledger-provider": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/@rsksmart/rlogin-ledger-provider/-/rlogin-ledger-provider-1.0.3.tgz", - "integrity": "sha512-BJzxY8LJRVmFACPwjvf3XKUzRaWtN2qTKutj2m5nENxq6ZftkHWkq0QQ+ZszCHaN5zVF3o4MvOmNDNNHvfSGzw==", + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/@rsksmart/rlogin-ledger-provider/-/rlogin-ledger-provider-1.0.4.tgz", + "integrity": "sha512-HrZjUXpEvBIomJO/IEeLmEU54IJB2Tgs5f/MtRSgRs98+Xhf7jrBLKSsISEiwOdZblDCV5+X0mf6eiJgVMrqcg==", "dependencies": { - "@ethereumjs/tx": "^3.3.0", - "@ledgerhq/hw-app-eth": "^6.2.0", - "@ledgerhq/hw-transport-webhid": "^6.4.1", - "@ledgerhq/hw-transport-webusb": "^6.3.0", + "@ethereumjs/tx": "4.1", + "@ledgerhq/hw-app-eth": "^6.35.5", + "@ledgerhq/hw-transport-webhid": "^6.28.4", + "@ledgerhq/hw-transport-webusb": "^6.28.4", "@rsksmart/rlogin-dpath": "^1.0.3", "@rsksmart/rlogin-eip1193-proxy-subprovider": "^1.0.2", "@rsksmart/rlogin-transactions": "^1.0.2", "@rsksmart/rsk-utils": "^1.1.0", - "assert": "^2.0.0", - "bn.js": "^5.2.0", + "assert": "^2.1.0", + "bn.js": "^5.2.1", + "browserify-zlib": "^0.2.0", "buffer": "^6.0.3", - "stream-browserify": "^3.0.0" + "https-browserify": "^1.0.0", + "stream-browserify": "^3.0.0", + "stream-http": "^3.2.0", + "url": "^0.11.3" + } + }, + "node_modules/@rsksmart/rlogin-ledger-provider/node_modules/@ethereumjs/common": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/@ethereumjs/common/-/common-3.2.0.tgz", + "integrity": "sha512-pksvzI0VyLgmuEF2FA/JR/4/y6hcPq8OUail3/AvycBaW1d5VSauOZzqGvJ3RTmR4MU35lWE8KseKOsEhrFRBA==", + "dependencies": { + "@ethereumjs/util": "^8.1.0", + "crc-32": "^1.2.0" + } + }, + "node_modules/@rsksmart/rlogin-ledger-provider/node_modules/@ethereumjs/tx": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/@ethereumjs/tx/-/tx-4.1.2.tgz", + "integrity": "sha512-PWWyO9lAFOiLwk7nB9OQisoJUsuvMz2PN2v4/ILbBpzamC5Ug79OddVq9r4rKvIDLPY+bn4NFerxBJg29+sjaA==", + "dependencies": { + "@chainsafe/ssz": "^0.11.1", + "@ethereumjs/common": "^3.1.2", + "@ethereumjs/rlp": "^4.0.1", + "@ethereumjs/util": "^8.0.6", + "ethereum-cryptography": "^2.0.0" + }, + "engines": { + "node": ">=14" + }, + "peerDependencies": { + "c-kzg": "^1.0.8" + }, + "peerDependenciesMeta": { + "c-kzg": { + "optional": true + } + } + }, + "node_modules/@rsksmart/rlogin-ledger-provider/node_modules/@ledgerhq/devices": { + "version": "8.4.4", + "resolved": "https://registry.npmjs.org/@ledgerhq/devices/-/devices-8.4.4.tgz", + "integrity": "sha512-sz/ryhe/R687RHtevIE9RlKaV8kkKykUV4k29e7GAVwzHX1gqG+O75cu1NCJUHLbp3eABV5FdvZejqRUlLis9A==", + "dependencies": { + "@ledgerhq/errors": "^6.19.1", + "@ledgerhq/logs": "^6.12.0", + "rxjs": "^7.8.1", + "semver": "^7.3.5" + } + }, + "node_modules/@rsksmart/rlogin-ledger-provider/node_modules/@ledgerhq/hw-transport": { + "version": "6.31.4", + "resolved": "https://registry.npmjs.org/@ledgerhq/hw-transport/-/hw-transport-6.31.4.tgz", + "integrity": "sha512-6c1ir/cXWJm5dCWdq55NPgCJ3UuKuuxRvf//Xs36Bq9BwkV2YaRQhZITAkads83l07NAdR16hkTWqqpwFMaI6A==", + "dependencies": { + "@ledgerhq/devices": "^8.4.4", + "@ledgerhq/errors": "^6.19.1", + "@ledgerhq/logs": "^6.12.0", + "events": "^3.3.0" + } + }, + "node_modules/@rsksmart/rlogin-ledger-provider/node_modules/@ledgerhq/hw-transport-webusb": { + "version": "6.29.4", + "resolved": "https://registry.npmjs.org/@ledgerhq/hw-transport-webusb/-/hw-transport-webusb-6.29.4.tgz", + "integrity": "sha512-HoGF1LlBT9HEGBQy2XeCHrFdv/FEOZU0+J+yfKcgAQIAiASr2MLvdzwoJbUS8h6Gn+vc+/BjzBSO3JNn7Loqbg==", + "dependencies": { + "@ledgerhq/devices": "^8.4.4", + "@ledgerhq/errors": "^6.19.1", + "@ledgerhq/hw-transport": "^6.31.4", + "@ledgerhq/logs": "^6.12.0" + } + }, + "node_modules/@rsksmart/rlogin-ledger-provider/node_modules/@noble/curves": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/@noble/curves/-/curves-1.4.2.tgz", + "integrity": "sha512-TavHr8qycMChk8UwMld0ZDRvatedkzWfH8IiaeGCfymOP5i0hSCozz9vHOL0nkwk7HRMlFnAiKpS2jrUmSybcw==", + "dependencies": { + "@noble/hashes": "1.4.0" + }, + "funding": { + "url": "https://paulmillr.com/funding/" + } + }, + "node_modules/@rsksmart/rlogin-ledger-provider/node_modules/@noble/hashes": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/@noble/hashes/-/hashes-1.4.0.tgz", + "integrity": "sha512-V1JJ1WTRUqHHrOSh597hURcMqVKVGL/ea3kv0gSnEdsEZ0/+VyPghM1lMNGc00z7CIQorSvbKpuJkxvuHbvdbg==", + "engines": { + "node": ">= 16" + }, + "funding": { + "url": "https://paulmillr.com/funding/" + } + }, + "node_modules/@rsksmart/rlogin-ledger-provider/node_modules/@scure/bip32": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/@scure/bip32/-/bip32-1.4.0.tgz", + "integrity": "sha512-sVUpc0Vq3tXCkDGYVWGIZTRfnvu8LoTDaev7vbwh0omSvVORONr960MQWdKqJDCReIEmTj3PAr73O3aoxz7OPg==", + "dependencies": { + "@noble/curves": "~1.4.0", + "@noble/hashes": "~1.4.0", + "@scure/base": "~1.1.6" + }, + "funding": { + "url": "https://paulmillr.com/funding/" + } + }, + "node_modules/@rsksmart/rlogin-ledger-provider/node_modules/@scure/bip39": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/@scure/bip39/-/bip39-1.3.0.tgz", + "integrity": "sha512-disdg7gHuTDZtY+ZdkmLpPCk7fxZSu3gBiEGuoC1XYxv9cGx3Z6cpTggCgW6odSOOIXCiDjuGejW+aJKCY/pIQ==", + "dependencies": { + "@noble/hashes": "~1.4.0", + "@scure/base": "~1.1.6" + }, + "funding": { + "url": "https://paulmillr.com/funding/" + } + }, + "node_modules/@rsksmart/rlogin-ledger-provider/node_modules/ethereum-cryptography": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/ethereum-cryptography/-/ethereum-cryptography-2.2.1.tgz", + "integrity": "sha512-r/W8lkHSiTLxUxW8Rf3u4HGB0xQweG2RyETjywylKZSzLWoWAijRz8WCuOtJ6wah+avllXBqZuk29HCCvhEIRg==", + "dependencies": { + "@noble/curves": "1.4.2", + "@noble/hashes": "1.4.0", + "@scure/bip32": "1.4.0", + "@scure/bip39": "1.3.0" + } + }, + "node_modules/@rsksmart/rlogin-ledger-provider/node_modules/rxjs": { + "version": "7.8.1", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.8.1.tgz", + "integrity": "sha512-AA3TVj+0A2iuIoQkWEK/tqFjBq2j+6PO6Y0zJcvzLAFhEFIO3HL0vls9hWLncZbAAbK0mar7oZ4V079I/qPMxg==", + "dependencies": { + "tslib": "^2.1.0" + } + }, + "node_modules/@rsksmart/rlogin-ledger-provider/node_modules/semver": { + "version": "7.6.3", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz", + "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==", + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" } }, "node_modules/@rsksmart/rlogin-transactions": { @@ -8085,9 +8195,10 @@ } }, "node_modules/@types/chai": { - "version": "4.3.5", - "dev": true, - "license": "MIT" + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/@types/chai/-/chai-5.0.0.tgz", + "integrity": "sha512-+DwhEHAaFPPdJ2ral3kNHFQXnTfscEEFsUxzD+d7nlcLrFK23JtNjH71RGasTcHb88b4vVi4mTyfpf8u2L8bdA==", + "dev": true }, "node_modules/@types/connect": { "version": "3.4.35", @@ -8447,8 +8558,9 @@ "license": "MIT" }, "node_modules/@types/w3c-web-usb": { - "version": "1.0.6", - "license": "MIT" + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/@types/w3c-web-usb/-/w3c-web-usb-1.0.10.tgz", + "integrity": "sha512-CHgUI5kTc/QLMP8hODUHhge0D4vx+9UiAwIGiT0sTy/B2XpdX1U5rJt6JSISgr6ikRT7vxV9EVAFeYZqUnl1gQ==" }, "node_modules/@types/web": { "version": "0.0.138", @@ -10626,13 +10738,15 @@ "license": "MIT" }, "node_modules/assert": { - "version": "2.0.0", - "license": "MIT", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/assert/-/assert-2.1.0.tgz", + "integrity": "sha512-eLHpSK/Y4nhMJ07gDaAzoX/XAKS8PSaojml3M0DM4JpV1LAi5JOJ/p6H/XWrl8L+DzVEvVCW1z3vWAaB9oTsQw==", "dependencies": { - "es6-object-assign": "^1.1.0", - "is-nan": "^1.2.1", - "object-is": "^1.0.1", - "util": "^0.12.0" + "call-bind": "^1.0.2", + "is-nan": "^1.3.2", + "object-is": "^1.1.5", + "object.assign": "^4.1.4", + "util": "^0.12.5" } }, "node_modules/assert-plus": { @@ -10643,11 +10757,12 @@ } }, "node_modules/assertion-error": { - "version": "1.1.0", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/assertion-error/-/assertion-error-2.0.1.tgz", + "integrity": "sha512-Izi8RQcffqCeNVgFigKli1ssklIbpHnCYc6AknXGYoB6grJqyeby7jv12JUQgmTAnIDnbck1uxksT4dzN3PWBA==", "dev": true, - "license": "MIT", "engines": { - "node": "*" + "node": ">=12" } }, "node_modules/ast-types": { @@ -10768,11 +10883,11 @@ "license": "MIT" }, "node_modules/axios": { - "version": "1.6.3", - "resolved": "https://registry.npmjs.org/axios/-/axios-1.6.3.tgz", - "integrity": "sha512-fWyNdeawGam70jXSVlKl+SUNVcL6j6W79CuSIPfi6HnDUmSCH6gyUys/HrqHeA/wU0Az41rRgean494d0Jb+ww==", + "version": "1.7.7", + "resolved": "https://registry.npmjs.org/axios/-/axios-1.7.7.tgz", + "integrity": "sha512-S4kL7XrjgBmvdGut0sN3yJxqYzrDOnivkBiN0OFs6hLiUam3UPvswUo0kqGyhqUZGEOytHyumEdXsAkgCOUf3Q==", "dependencies": { - "follow-redirects": "^1.15.0", + "follow-redirects": "^1.15.6", "form-data": "^4.0.0", "proxy-from-env": "^1.1.0" } @@ -11624,6 +11739,14 @@ "node": ">= 4" } }, + "node_modules/browserify-zlib": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/browserify-zlib/-/browserify-zlib-0.2.0.tgz", + "integrity": "sha512-Z942RysHXmJrhqk88FmKBVq/v5tqmSkDz7p54G/MGyjMnCFFnC79XWNbg+Vta8W6Wb2qtSZTSxIGkJrRpCFEiA==", + "dependencies": { + "pako": "~1.0.5" + } + }, "node_modules/browserslist": { "version": "4.21.10", "funding": [ @@ -12017,20 +12140,19 @@ } }, "node_modules/chai": { - "version": "4.3.8", + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/chai/-/chai-5.1.2.tgz", + "integrity": "sha512-aGtmf24DW6MLHHG5gCx4zaI3uBq3KRtxeVs0DjFH6Z0rDNbsvTxFASFvdj79pxjxZ8/5u3PIiN3IwEIQkiiuPw==", "dev": true, - "license": "MIT", "dependencies": { - "assertion-error": "^1.1.0", - "check-error": "^1.0.2", - "deep-eql": "^4.1.2", - "get-func-name": "^2.0.0", - "loupe": "^2.3.1", - "pathval": "^1.1.1", - "type-detect": "^4.0.5" + "assertion-error": "^2.0.1", + "check-error": "^2.1.1", + "deep-eql": "^5.0.1", + "loupe": "^3.1.0", + "pathval": "^2.0.0" }, "engines": { - "node": ">=4" + "node": ">=12" } }, "node_modules/chalk": { @@ -12063,11 +12185,12 @@ } }, "node_modules/check-error": { - "version": "1.0.2", + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/check-error/-/check-error-2.1.1.tgz", + "integrity": "sha512-OAlb+T7V4Op9OwdkjmguYRqncdlx5JiofwOAUkmTF+jNdHwzTaTs4sRAGpzLF3oOz5xAyDGrPgeIDFQmDOTiJw==", "dev": true, - "license": "MIT", "engines": { - "node": "*" + "node": ">= 16" } }, "node_modules/checkpoint-store": { @@ -13519,12 +13642,10 @@ "license": "MIT" }, "node_modules/deep-eql": { - "version": "4.1.3", + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/deep-eql/-/deep-eql-5.0.2.tgz", + "integrity": "sha512-h5k/5U50IJJFpzfL6nO9jaaumfjO/f2NjK/oYB2Djzm4p9L+3T9qWpZqZ2hAbLPuuYq9wrU08WQyBTL5GbPk5Q==", "dev": true, - "license": "MIT", - "dependencies": { - "type-detect": "^4.0.0" - }, "engines": { "node": ">=6" } @@ -14105,15 +14226,17 @@ }, "node_modules/eip55": { "version": "2.1.1", - "license": "MIT", + "resolved": "https://registry.npmjs.org/eip55/-/eip55-2.1.1.tgz", + "integrity": "sha512-WcagVAmNu2Ww2cDUfzuWVntYwFxbvZ5MvIyLZpMjTTkjD6sCvkGOiS86jTppzu9/gWsc8isLHAeMBWK02OnZmA==", "dependencies": { "keccak": "^3.0.3" } }, "node_modules/eip55/node_modules/keccak": { - "version": "3.0.3", + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/keccak/-/keccak-3.0.4.tgz", + "integrity": "sha512-3vKuW0jV8J3XNTzvfyicFR5qvxrSAGl7KIhvgOu5cmWwM7tZRj3fMbj/pfIf4be7aznbc+prBWGjywox/g2Y6Q==", "hasInstallScript": true, - "license": "MIT", "dependencies": { "node-addon-api": "^2.0.0", "node-gyp-build": "^4.2.0", @@ -14452,10 +14575,6 @@ "es6-symbol": "^3.1.1" } }, - "node_modules/es6-object-assign": { - "version": "1.1.0", - "license": "MIT" - }, "node_modules/es6-promise": { "version": "4.2.8", "resolved": "https://registry.npmjs.org/es6-promise/-/es6-promise-4.2.8.tgz", @@ -17664,15 +17783,6 @@ "node": "6.* || 8.* || >= 10.*" } }, - "node_modules/get-func-name": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/get-func-name/-/get-func-name-2.0.2.tgz", - "integrity": "sha512-8vXOvuE167CtIc3OyItco7N/dpRtBbYOsPsXCz7X/PMnlGjYjSGuZJgM1Y7mmew7BKf9BqvLX2tnOVy1BBUsxQ==", - "dev": true, - "engines": { - "node": "*" - } - }, "node_modules/get-intrinsic": { "version": "1.2.4", "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.4.tgz", @@ -22740,12 +22850,10 @@ } }, "node_modules/loupe": { - "version": "2.3.6", - "dev": true, - "license": "MIT", - "dependencies": { - "get-func-name": "^2.0.0" - } + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/loupe/-/loupe-3.1.2.tgz", + "integrity": "sha512-23I4pFZHmAemUnz8WZXbYRSKYj801VDaNv9ETuMh7IrMc7VuVVSo+Z9iLE3ni30+U48iDWfi30d3twAXBYmnCg==", + "dev": true }, "node_modules/lower-case": { "version": "2.0.2", @@ -24262,6 +24370,11 @@ "node": ">=6" } }, + "node_modules/pako": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.11.tgz", + "integrity": "sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==" + }, "node_modules/param-case": { "version": "3.0.4", "dev": true, @@ -24416,11 +24529,12 @@ } }, "node_modules/pathval": { - "version": "1.1.1", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/pathval/-/pathval-2.0.0.tgz", + "integrity": "sha512-vE7JKRyES09KiunauX7nd2Q9/L7lhok4smP9RZTDeD4MVs72Dp2qNFVz39Nz5a0FVEW0BJR6C0DYrq6unoziZA==", "dev": true, - "license": "MIT", "engines": { - "node": "*" + "node": ">= 14.16" } }, "node_modules/pbkdf2": { @@ -25582,10 +25696,11 @@ } }, "node_modules/qs": { - "version": "6.11.2", - "license": "BSD-3-Clause", + "version": "6.13.0", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.13.0.tgz", + "integrity": "sha512-+38qI9SOr8tfZ4QmJNplMUxqjbe7LKvvZgWdExBOmd+egZTtjLB67Gu0HRX3u/XOq7UU2Nx6nsjvS16Z9uwfpg==", "dependencies": { - "side-channel": "^1.0.4" + "side-channel": "^1.0.6" }, "engines": { "node": ">=0.6" @@ -26564,18 +26679,44 @@ "license": "MIT" }, "node_modules/secp256k1": { - "version": "4.0.3", + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/secp256k1/-/secp256k1-4.0.4.tgz", + "integrity": "sha512-6JfvwvjUOn8F/jUoBY2Q1v5WY5XS+rj8qSe0v8Y4ezH4InLgTEeOOPQsRll9OV429Pvo6BCHGavIyJfr3TAhsw==", "hasInstallScript": true, "license": "MIT", "dependencies": { - "elliptic": "^6.5.4", - "node-addon-api": "^2.0.0", + "elliptic": "^6.5.7", + "node-addon-api": "^5.0.0", "node-gyp-build": "^4.2.0" }, "engines": { - "node": ">=10.0.0" + "node": ">=18.0.0" + } + }, + "node_modules/secp256k1/node_modules/bn.js": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" + }, + "node_modules/secp256k1/node_modules/elliptic": { + "version": "6.5.7", + "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.5.7.tgz", + "integrity": "sha512-ESVCtTwiA+XhY3wyh24QqRGBoP3rEdDUl3EDUUo9tft074fi19IrdpH7hLCMMP3CIj7jb3W96rn8lt/BqIlt5Q==", + "dependencies": { + "bn.js": "^4.11.9", + "brorand": "^1.1.0", + "hash.js": "^1.0.0", + "hmac-drbg": "^1.0.1", + "inherits": "^2.0.4", + "minimalistic-assert": "^1.0.1", + "minimalistic-crypto-utils": "^1.0.1" } }, + "node_modules/secp256k1/node_modules/node-addon-api": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-5.1.0.tgz", + "integrity": "sha512-eh0GgfEkpnoWDq+VY8OyvYhFEzBk6jIYbRKdIlyTiAXIVJ8PyBaKb0rp7oDtoddbdoHWhq8wwr+XZ81F1rpNdA==" + }, "node_modules/seek-bzip": { "version": "1.0.6", "dev": true, @@ -26891,12 +27032,17 @@ } }, "node_modules/side-channel": { - "version": "1.0.4", - "license": "MIT", + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.6.tgz", + "integrity": "sha512-fDW/EZ6Q9RiO8eFG8Hj+7u/oW+XrPTIChwCOM2+th2A6OblDtYYIpve9m+KvI9Z4C9qSEXlaGR6bTEYHReuglA==", "dependencies": { - "call-bind": "^1.0.0", - "get-intrinsic": "^1.0.2", - "object-inspect": "^1.9.0" + "call-bind": "^1.0.7", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.4", + "object-inspect": "^1.13.1" + }, + "engines": { + "node": ">= 0.4" }, "funding": { "url": "https://github.com/sponsors/ljharb" @@ -29116,11 +29262,15 @@ } }, "node_modules/url": { - "version": "0.11.1", - "license": "MIT", + "version": "0.11.4", + "resolved": "https://registry.npmjs.org/url/-/url-0.11.4.tgz", + "integrity": "sha512-oCwdVC7mTuWiPyjLUz/COz5TLk6wgp0RCsN+wHZ2Ekneac9w8uuV0njcbbie2ME+Vs+d6duwmYuR3HgQXs1fOg==", "dependencies": { "punycode": "^1.4.1", - "qs": "^6.11.0" + "qs": "^6.12.3" + }, + "engines": { + "node": ">= 0.4" } }, "node_modules/url-join": { @@ -29199,9 +29349,9 @@ "license": "MIT" }, "node_modules/utility-types": { - "version": "3.10.0", - "resolved": "https://registry.npmjs.org/utility-types/-/utility-types-3.10.0.tgz", - "integrity": "sha512-O11mqxmi7wMKCo6HKFt5AhO4BwY3VV68YU07tgxfz8zJTIxr4BpsezN49Ffwy9j3ZpwwJp4fkRwjRzq3uWE6Rg==", + "version": "3.11.0", + "resolved": "https://registry.npmjs.org/utility-types/-/utility-types-3.11.0.tgz", + "integrity": "sha512-6Z7Ma2aVEWisaL6TvBCy7P8rm2LQoPv6dJ7ecIaIixHcwfbJ0x7mWdbcwlIM5IGQxPZSFYeqRCqlOOeKoJYMkw==", "engines": { "node": ">= 4" } @@ -29617,9 +29767,9 @@ "license": "ISC" }, "node_modules/vuetify": { - "version": "3.5.17", - "resolved": "https://registry.npmjs.org/vuetify/-/vuetify-3.5.17.tgz", - "integrity": "sha512-/Veklxxyu/l63q7QQOqJZeZukIKI2sBxY7FKMDcNup2KSGMjyjT+oYXy1DOdl7wlU3c3fKGQMFHqVWb0HDsyDw==", + "version": "3.7.3", + "resolved": "https://registry.npmjs.org/vuetify/-/vuetify-3.7.3.tgz", + "integrity": "sha512-bpuvBpZl1/+nLlXDgdVXekvMNR6W/ciaoa8CYlpeAzAARbY8zUFSoBq05JlLhkIHI58AnzKVy4c09d0OtfYAPg==", "engines": { "node": "^12.20 || >=14.13" }, @@ -29631,7 +29781,6 @@ "typescript": ">=4.7", "vite-plugin-vuetify": ">=1.0.0", "vue": "^3.3.0", - "vue-i18n": "^9.0.0", "webpack-plugin-vuetify": ">=2.0.0" }, "peerDependenciesMeta": { @@ -29641,9 +29790,6 @@ "vite-plugin-vuetify": { "optional": true }, - "vue-i18n": { - "optional": true - }, "webpack-plugin-vuetify": { "optional": true } diff --git a/package.json b/package.json index f251cc9d..29bbbd41 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "PowPeg", - "version": "2.2.1", + "version": "2.3.0", "private": true, "scripts": { "serve": "vue-cli-service serve", @@ -22,7 +22,7 @@ "@rsksmart/bridges-core-sdk": "^0.3.3", "@rsksmart/flyover-sdk": "^1.5.1", "@rsksmart/rlogin": "^1.5.3-beta.1", - "@rsksmart/rlogin-ledger-provider": "^1.0.3", + "@rsksmart/rlogin-ledger-provider": "^1.0.4", "@rsksmart/rlogin-trezor-provider": "^1.0.3", "@rsksmart/rsk-precompiled-abis": "^6.0.0-ARROWHEAD", "@rsksmart/rsk-utils": "^1.1.0", @@ -59,7 +59,7 @@ "vue": "^3.3.4", "vue-i18n": "^9.13.1", "vue-router": "^4.2.4", - "vuetify": "^3.5.17", + "vuetify": "^3.7.3", "vuex": "^4.1.0", "web3": "^4.8.0", "web3-eth-contract": "^1.10.0" @@ -69,12 +69,12 @@ "@ledgerhq/hw-transport-mocker": "^6.28.5", "@mdi/font": "^7.2.96", "@types/big.js": "^6.2.0", - "@types/chai": "^4.2.11", + "@types/chai": "^5.0.0", "@types/jest": "^27.5.2", "@types/markdown-it": "^14.1.1", "@types/node": "^20.4.7", "@types/sinon": "^10.0.2", - "@types/w3c-web-usb": "^1.0.4", + "@types/w3c-web-usb": "^1.0.10", "@typescript-eslint/eslint-plugin": "^5.62.0", "@typescript-eslint/parser": "^5.62.0", "@vue/cli-plugin-babel": "~5.0.0", @@ -89,7 +89,7 @@ "@vue/test-utils": "^2.4.1", "@vue/vue3-jest": "^27.0.0", "babel-jest": "^27.5.1", - "chai": "^4.3.4", + "chai": "^5.0.0", "chromedriver": "^119.0.1", "electron": "^24.2.0", "eslint": "^7.32.0", diff --git a/tests/unit/SatoshiBig.spec.ts b/tests/unit/SatoshiBig.spec.ts index bb18a811..71d8b8e0 100644 --- a/tests/unit/SatoshiBig.spec.ts +++ b/tests/unit/SatoshiBig.spec.ts @@ -58,7 +58,7 @@ describe('SatoshiBig', () => { expect(sb1.toBTCString()).toEqual('0.00000000'); expect(sb1.toBTCStringNotZeroPadded()).toEqual('0'); }); - + it('should return an instance of SatoshiBig from a WeiBig instance rounded up', () => { const weiToTest = new WeiBig('5301364444000000', 'wei'); const weiToTest2 = new WeiBig('8101341211956000', 'wei');