From c5e2321b0b8241ce923af4543dbff6a6cf12fd1f Mon Sep 17 00:00:00 2001 From: Jenkins Date: Fri, 14 Apr 2023 10:38:26 +0200 Subject: [PATCH 01/31] bump develop version --- package-lock.json | 4 ++-- package.json | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/package-lock.json b/package-lock.json index fc789b1..b1198e9 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "@venly/web3-react-venly", - "version": "1.1.1-develop.11", + "version": "1.2.0-SNAPSHOT.0", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "@venly/web3-react-venly", - "version": "1.1.1-develop.11", + "version": "1.2.0-SNAPSHOT.0", "dependencies": { "@venly/web3-provider": "^3.0.0-develop.5", "@web3-react/types": "^8.1.2-beta.0" diff --git a/package.json b/package.json index fea3b03..684181f 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@venly/web3-react-venly", - "version": "1.1.1-develop.11", + "version": "1.2.0-SNAPSHOT.0", "description": "Venly connector for Web3-React", "type": "commonjs", "types": "./dist/index.d.ts", From 65740f6fdeeac03d19210d53e08c8999b792a596 Mon Sep 17 00:00:00 2001 From: Jenkins Date: Fri, 14 Apr 2023 10:39:58 +0200 Subject: [PATCH 02/31] Update develop to release version to avoid merge conflicts --- package-lock.json | 4 ++-- package.json | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/package-lock.json b/package-lock.json index b1198e9..cb5aecc 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "@venly/web3-react-venly", - "version": "1.2.0-SNAPSHOT.0", + "version": "1.2.0", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "@venly/web3-react-venly", - "version": "1.2.0-SNAPSHOT.0", + "version": "1.2.0", "dependencies": { "@venly/web3-provider": "^3.0.0-develop.5", "@web3-react/types": "^8.1.2-beta.0" diff --git a/package.json b/package.json index 684181f..42e89fa 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@venly/web3-react-venly", - "version": "1.2.0-SNAPSHOT.0", + "version": "1.2.0", "description": "Venly connector for Web3-React", "type": "commonjs", "types": "./dist/index.d.ts", From 9be86e7e12eab63e3b8b2dff16cb3ddd50314cf2 Mon Sep 17 00:00:00 2001 From: Jenkins Date: Fri, 14 Apr 2023 10:39:59 +0200 Subject: [PATCH 03/31] Update develop version back to pre-merge state --- package-lock.json | 4 ++-- package.json | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/package-lock.json b/package-lock.json index cb5aecc..b1198e9 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "@venly/web3-react-venly", - "version": "1.2.0", + "version": "1.2.0-SNAPSHOT.0", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "@venly/web3-react-venly", - "version": "1.2.0", + "version": "1.2.0-SNAPSHOT.0", "dependencies": { "@venly/web3-provider": "^3.0.0-develop.5", "@web3-react/types": "^8.1.2-beta.0" diff --git a/package.json b/package.json index 42e89fa..684181f 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@venly/web3-react-venly", - "version": "1.2.0", + "version": "1.2.0-SNAPSHOT.0", "description": "Venly connector for Web3-React", "type": "commonjs", "types": "./dist/index.d.ts", From 8a42c884ff90f5dce19c85e3606ac06eb04fcad8 Mon Sep 17 00:00:00 2001 From: Jenkins Date: Fri, 19 May 2023 14:05:11 +0200 Subject: [PATCH 04/31] Update develop to hotfix version to avoid merge conflicts --- package-lock.json | 4 ++-- package.json | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/package-lock.json b/package-lock.json index b1198e9..e2bdecd 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "@venly/web3-react-venly", - "version": "1.2.0-SNAPSHOT.0", + "version": "1.2.1", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "@venly/web3-react-venly", - "version": "1.2.0-SNAPSHOT.0", + "version": "1.2.1", "dependencies": { "@venly/web3-provider": "^3.0.0-develop.5", "@web3-react/types": "^8.1.2-beta.0" diff --git a/package.json b/package.json index 684181f..a24a016 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@venly/web3-react-venly", - "version": "1.2.0-SNAPSHOT.0", + "version": "1.2.1", "description": "Venly connector for Web3-React", "type": "commonjs", "types": "./dist/index.d.ts", From 605741a30e8864ae39a81300178acde3d80a5df3 Mon Sep 17 00:00:00 2001 From: Jenkins Date: Fri, 19 May 2023 14:05:12 +0200 Subject: [PATCH 05/31] Update develop version back to pre-merge state --- package-lock.json | 4 ++-- package.json | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/package-lock.json b/package-lock.json index c1ebd91..c1fa375 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "@venly/web3-react-venly", - "version": "1.2.1", + "version": "1.2.0-SNAPSHOT.0", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "@venly/web3-react-venly", - "version": "1.2.1", + "version": "1.2.0-SNAPSHOT.0", "dependencies": { "@venly/web3-provider": "^3.1.0", "@web3-react/types": "^8.1.2-beta.0" diff --git a/package.json b/package.json index 77625a6..748aa15 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@venly/web3-react-venly", - "version": "1.2.1", + "version": "1.2.0-SNAPSHOT.0", "description": "Venly connector for Web3-React", "type": "commonjs", "types": "./dist/index.d.ts", From b42b38a64bd202b6787a8494915bf59d5bf1a7ee Mon Sep 17 00:00:00 2001 From: Koen Date: Fri, 30 Aug 2024 10:59:36 +0200 Subject: [PATCH 06/31] feat: add GitHub Actions for hotfix and release workflows, including version bumping and publishing to NPM --- .github/CONTRIBUTING.md | 92 ++++++ .github/LICENSE | 21 ++ .github/actions/bump_version/action.yml | 35 +++ .github/actions/get_version/action.yml | 32 ++ .github/actions/hotfix_finish/README.md | 47 +++ .github/actions/hotfix_finish/action.yml | 282 ++++++++++++++++++ .github/actions/hotfix_start/README.md | 43 +++ .github/actions/hotfix_start/action.yml | 221 ++++++++++++++ .github/actions/merge_back/README.md | 31 ++ .github/actions/merge_back/action.yml | 66 ++++ .github/actions/publish_npm/action.yml | 50 ++++ .github/actions/release_finish/README.md | 34 +++ .github/actions/release_finish/action.yml | 143 +++++++++ .github/actions/release_start/README.md | 34 +++ .github/actions/release_start/action.yml | 148 +++++++++ .github/workflows/build.yml | 70 +++++ .github/workflows/hotfix_finish.yml | 30 ++ .github/workflows/hotfix_start.yml | 30 ++ .github/workflows/release_finish.yml | 30 ++ .github/workflows/release_start.yml | 30 ++ .../Jenkinsfile-Hotfix-finish.Backup | 0 .../Jenkinsfile-Hotfix-start.Backup | 0 .../Jenkinsfile-Release-finish.Backup | 0 .../Jenkinsfile-Release-start.Backup | 0 .../Jenkinsfile-release.Backup | 0 .../Jenkinsfile.Backup | 0 26 files changed, 1469 insertions(+) create mode 100644 .github/CONTRIBUTING.md create mode 100644 .github/LICENSE create mode 100644 .github/actions/bump_version/action.yml create mode 100644 .github/actions/get_version/action.yml create mode 100644 .github/actions/hotfix_finish/README.md create mode 100644 .github/actions/hotfix_finish/action.yml create mode 100644 .github/actions/hotfix_start/README.md create mode 100644 .github/actions/hotfix_start/action.yml create mode 100644 .github/actions/merge_back/README.md create mode 100644 .github/actions/merge_back/action.yml create mode 100644 .github/actions/publish_npm/action.yml create mode 100644 .github/actions/release_finish/README.md create mode 100644 .github/actions/release_finish/action.yml create mode 100644 .github/actions/release_start/README.md create mode 100644 .github/actions/release_start/action.yml create mode 100644 .github/workflows/build.yml create mode 100644 .github/workflows/hotfix_finish.yml create mode 100644 .github/workflows/hotfix_start.yml create mode 100644 .github/workflows/release_finish.yml create mode 100644 .github/workflows/release_start.yml rename Jenkinsfile-Hotfix-finish => JenkinsBackup/Jenkinsfile-Hotfix-finish.Backup (100%) rename Jenkinsfile-Hotfix-start => JenkinsBackup/Jenkinsfile-Hotfix-start.Backup (100%) rename Jenkinsfile-Release-finish => JenkinsBackup/Jenkinsfile-Release-finish.Backup (100%) rename Jenkinsfile-Release-start => JenkinsBackup/Jenkinsfile-Release-start.Backup (100%) rename Jenkinsfile-release => JenkinsBackup/Jenkinsfile-release.Backup (100%) rename Jenkinsfile => JenkinsBackup/Jenkinsfile.Backup (100%) diff --git a/.github/CONTRIBUTING.md b/.github/CONTRIBUTING.md new file mode 100644 index 0000000..394d0de --- /dev/null +++ b/.github/CONTRIBUTING.md @@ -0,0 +1,92 @@ +# Contributing + +When contributing to this repository, please first discuss the change you wish to make via issue, +email, or any other method with the owners of this repository before making a change. + +Please note we have a code of conduct, please follow it in all your interactions with the project. + +## Pull Request Process + +1. Ensure any install or build dependencies are removed before the end of the layer when doing a + build. +2. Update the README.md with details of changes to the interface, this includes new environment + variables, exposed ports, useful file locations and container parameters. +3. Increase the version numbers in any examples files and the README.md to the new version that this + Pull Request would represent. The versioning scheme we use is [SemVer](http://semver.org/). +4. You may merge the Pull Request in once you have the sign-off of two other developers, or if you + do not have permission to do that, you may request the second reviewer to merge it for you. + +## Code of Conduct + +### Our Pledge + +In the interest of fostering an open and welcoming environment, we as +contributors and maintainers pledge to making participation in our project and +our community a harassment-free experience for everyone, regardless of age, body +size, disability, ethnicity, gender identity and expression, level of experience, +nationality, personal appearance, race, religion, or sexual identity and +orientation. + +### Our Standards + +Examples of behavior that contributes to creating a positive environment +include: + +* Using welcoming and inclusive language +* Being respectful of differing viewpoints and experiences +* Gracefully accepting constructive criticism +* Focusing on what is best for the community +* Showing empathy towards other community members + +Examples of unacceptable behavior by participants include: + +* The use of sexualized language or imagery and unwelcome sexual attention or +advances +* Trolling, insulting/derogatory comments, and personal or political attacks +* Public or private harassment +* Publishing others' private information, such as a physical or electronic + address, without explicit permission +* Other conduct which could reasonably be considered inappropriate in a + professional setting + +### Our Responsibilities + +Project maintainers are responsible for clarifying the standards of acceptable +behavior and are expected to take appropriate and fair corrective action in +response to any instances of unacceptable behavior. + +Project maintainers have the right and responsibility to remove, edit, or +reject comments, commits, code, wiki edits, issues, and other contributions +that are not aligned to this Code of Conduct, or to ban temporarily or +permanently any contributor for other behaviors that they deem inappropriate, +threatening, offensive, or harmful. + +### Scope + +This Code of Conduct applies both within project spaces and in public spaces +when an individual is representing the project or its community. Examples of +representing a project or community include using an official project e-mail +address, posting via an official social media account, or acting as an appointed +representative at an online or offline event. Representation of a project may be +further defined and clarified by project maintainers. + +### Enforcement + +Instances of abusive, harassing, or otherwise unacceptable behavior may be +reported by contacting the project team at info@venly.io. All +complaints will be reviewed and investigated and will result in a response that +is deemed necessary and appropriate to the circumstances. The project team is +obligated to maintain confidentiality with regard to the reporter of an incident. +Further details of specific enforcement policies may be posted separately. + +Project maintainers who do not follow or enforce the Code of Conduct in good +faith may face temporary or permanent repercussions as determined by other +members of the project's leadership. + +### Attribution + +This Code of Conduct is adapted from the [Contributor Covenant][homepage], version 1.4, +available at [http://contributor-covenant.org/version/1/4][version] + +[homepage]: http://contributor-covenant.org +[version]: http://contributor-covenant.org/version/1/4/ diff --git a/.github/LICENSE b/.github/LICENSE new file mode 100644 index 0000000..99b1a04 --- /dev/null +++ b/.github/LICENSE @@ -0,0 +1,21 @@ +The MIT License (MIT) + +Copyright (c) 2018-present, Venly.io + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. diff --git a/.github/actions/bump_version/action.yml b/.github/actions/bump_version/action.yml new file mode 100644 index 0000000..990d7cf --- /dev/null +++ b/.github/actions/bump_version/action.yml @@ -0,0 +1,35 @@ +name: ๐Ÿ”– Bump Version +description: "Bump Version" + +inputs: + token: + description: The VENLY_GITHUB_ACTIONS_TOKEN + required: true + +outputs: + new_version: + description: "Bumped Version" + value: ${{ steps.bump_version.outputs.new_version }} + +runs: + using: "composite" + steps: + - uses: oleksiyrudenko/gha-git-credentials@v2.1.1 + with: + global: false + name: ${{ github.actor }} + email: ${{ github.actor }}@venly.io + actor: ${{ github.actor }} + token: ${{ inputs.token }} + + - name: ๐Ÿ”– Bump Version + id: bump_version + shell: bash + run: | + #!/bin/bash + set -x + new_version=$(npm version prerelease --preid=develop) + new_version=${new_version#v} + echo "Bumped version to $new_version" + echo "new_version=$new_version" >> $GITHUB_ENV + echo "new_version=$new_version" >> $GITHUB_OUTPUT diff --git a/.github/actions/get_version/action.yml b/.github/actions/get_version/action.yml new file mode 100644 index 0000000..7a4c861 --- /dev/null +++ b/.github/actions/get_version/action.yml @@ -0,0 +1,32 @@ +name: version +description: "Reads the version number from package.json" + +outputs: + version: + description: "Version from package.json" + value: ${{ steps.package-version.outputs.current_version }} + +runs: + using: "composite" + steps: + - name: โ” get-npm-version โ” + id: package-version + shell: bash + run: | + #!/bin/bash + set -x + PACKAGE_JSON_PATH="./package.json" + if [[ -f "$PACKAGE_JSON_PATH" ]]; then + VERSION=$(jq -r '.version' "$PACKAGE_JSON_PATH") + if [[ "$VERSION" == "null" || -z "$VERSION" ]]; then + echo "No version field found in $PACKAGE_JSON_PATH" + echo "current_version=0.0.0" >> $GITHUB_ENV + else + echo "Version in $PACKAGE_JSON_PATH is $VERSION" + echo "current_version=$VERSION" >> $GITHUB_ENV + echo "current_version=$VERSION" >> $GITHUB_OUTPUT + fi + else + echo "$PACKAGE_JSON_PATH not found" + echo "current_version=0.0.0" >> $GITHUB_ENV + fi diff --git a/.github/actions/hotfix_finish/README.md b/.github/actions/hotfix_finish/README.md new file mode 100644 index 0000000..8f5bf65 --- /dev/null +++ b/.github/actions/hotfix_finish/README.md @@ -0,0 +1,47 @@ +# Hotfix Node Application Finish + +This GitHub Action concludes the hotfix process for a Node.js application. It finalizes the hotfix version, merges the hotfix into the production branch, tags the release, publishes the hotfix, and cleans up the hotfix branch. + +## Inputs + +| Input | Description | Required | +|--------|----------------------------------|----------| +| `token`| The VENLY_GITHUB_ACTIONS_TOKEN. | Yes | + +## Runs + +This action operates using the "composite" run type and carries out the steps outlined below: + +1. **Set HOME environment variable** to define a consistent workspace for the action. +2. **Setup Git Credentials** to ensure access to the repository for operations such as checkout, commit, and push. +3. **Determine Master or Main** to identify the production branch. +4. **Checkout production branch** to apply the hotfix. +5. **Setup Node.js environment** with the specified Node.js version (defaults to 16.x). +6. **Identify the hotfix branch** by fetching remote branches and filtering for the hotfix pattern. +7. **Switch to the hotfix branch** to finalize the version and prepare for merging. +8. **Bump Version and Create Tag** using npm to finalize the hotfix version and prepare for release. +9. **Get npm version for hotfix** to capture the new version number from `package.json`. +10. **Checkout and Merge to Production Branch** to apply the hotfix changes to the production codebase. +11. **Publish Hotfix** using GitHub Releases to distribute the hotfix version. +12. **Switch to Development Branch** to integrate the hotfix changes into the ongoing development work. +13. **Merge to Develop** to synchronize the development branch with the hotfix and production changes. +14. **Push Changes** to both develop and production branches to finalize the hotfix process. +15. **Cleanup Release Branch** by deleting the hotfix branch to clean up the repository. + +## Hotfix Flow Info + +This action also provides detailed information about the hotfix process, including the workflow name, actor, repository, reference, hotfix version, commit SHA, run ID, and run number. + +## Example Usage + +```yaml +jobs: + hotfix_finish_job: + runs-on: docker-runner + name: Finish Hotfix Node Application + steps: + - name: Hotfix Node App Finish + uses: ArkaneNetwork/venly-github-workflows/.github/actions/hotfix_java_start@main + with: + token: ${{ secrets.VENLY_GITHUB_ACTIONS_TOKEN }} +``` diff --git a/.github/actions/hotfix_finish/action.yml b/.github/actions/hotfix_finish/action.yml new file mode 100644 index 0000000..88e2352 --- /dev/null +++ b/.github/actions/hotfix_finish/action.yml @@ -0,0 +1,282 @@ +name: "Hotfix Node Applicaton Finish" +description: "Hotfix Node Applicaton Finish" +inputs: + token: + description: The VENLY_GITHUB_ACTIONS_TOKEN + required: true + node_version: + default: 18.x + description: Node Version to use + work_directory: + description: Optional path to set for the working directory + required: false +runs: + using: "composite" + steps: + - name: Set HOME environment variable ๐Ÿ  + shell: bash + run: | + echo "๐Ÿ  Setting HOME environment variable..." + echo "HOME=${{ runner.workspace }}" >> $GITHUB_ENV + + - name: Setup Git Credentials ๐Ÿ”‘ + uses: oleksiyrudenko/gha-git-credentials@v2.1.1 + with: + global: false + name: ${{ github.actor }} + email: ${{ github.actor }}@venly.io + actor: ${{ github.actor }} + token: ${{ inputs.token }} + + # Determine the production branch name Master Or Main + - name: Determine Master Or Main ๐ŸŒ + shell: bash + run: | + #!/bin/bash + set -x + echo "๐Ÿ” Determining the production branch (Master or Main)..." + git fetch -p + BRANCHES=$(git branch -r | grep -E 'origin/main|origin/master') + echo "Remote branches: $BRANCHES" + if [ -z "$BRANCHES" ]; then + echo "โŒ No 'main' or 'master' branch found." + else + for BRANCH in $BRANCHES; do + BRANCH_NAME=$(echo $BRANCH | cut -d '/' -f 2) + echo "production_branch=$BRANCH_NAME" >> $GITHUB_ENV + echo "๐Ÿš€ Production Branch is $BRANCH_NAME" + done + fi + + # Checkout code to production branch + - name: Checkout production branch + shell: bash + run: | + #!/bin/bash + set -x + echo "๐Ÿ” Make sure we are on the production Branch ๐Ÿ”" + git switch ${{ env.production_branch }} + + - name: Setup Node.js ${{ inputs.node_version }} ๐Ÿ“ฆ + uses: actions/setup-node@v3 + id: node_setup + with: + node-version: ${{ inputs.node_version }} + + # ===================================================== + # Hotfix + # ===================================================== + # Get the Name of the Hotfix Branch + - name: Check for multiple hotfix branches + shell: bash + run: | + #!/bin/bash + set -x + # Fetch all branches from the remote + git fetch --all + + # Get a list of hotfix branches + hotfix_branches=$(git branch -r | grep -o 'origin/hotfix-[0-9]*\.[0-9]*\.[0-9]*') + + # Count the number of hotfix branches + branch_count=$(echo "$hotfix_branches" | wc -l) + + if [ "$branch_count" -gt 1 ]; then + echo "Error: Multiple hotfix branches found. Please resolve the following hotfix branches:" + echo "$hotfix_branches" | sort -V + exit 1 + elif [ "$branch_count" -eq 1 ]; then + echo "One hotfix branch found. Proceeding with the pipeline." + else + echo "No hotfix branch found. Proceeding with the pipeline." + fi + - name: ๐Ÿ” Get Hotfix Branch + shell: bash + run: | + #!/bin/bash + set -x + echo "๐Ÿ”„ Fetching and identifying the hotfix branch..." + git fetch -p + HOTFIX_BRANCH=$(git branch -r | grep origin/hotfix- | sort -t. -k1,1n -k2,2n -k3,3n | head -n1 | cut -d '/' -f 2) + if [ -z "$HOTFIX_BRANCH" ]; then + echo "โŒ No hotfix branch found. Continuing without it." + else + echo "hotfix_branch=$HOTFIX_BRANCH" >> $GITHUB_ENV + echo "โœ… Hotfix Branch is: $HOTFIX_BRANCH" + fi + + # Switch to Hotfix Branch + - name: ๐Ÿ”€ Switch to hotfix branch ${{ env.hotfix_branch }} + shell: bash + run: | + #!/bin/bash + set -x + echo "๐Ÿ”„ Switching to the hotfix branch..." + git checkout ${{ env.hotfix_branch }} + git status + + # Finalize version + - name: ๐Ÿท๏ธ Bump Version and Create Tag + shell: bash + run: | + #!/bin/bash + set -x + echo "๐Ÿ”– Finalizing the version and creating a tag from the ${{ env.hotfix_branch }} branch" + # Remove all local tags + git tag -l | xargs -n 1 git tag -d + HOTFIX_VERSION=$(npm version patch --no-git-tag-version) + echo "npm_hotfix_version=$HOTFIX_VERSION" >> $GITHUB_ENV + git commit -am "Finalize version ${{ env.npm_hotfix_version }}" + + # Check if the tag already exists + if git rev-parse "$HOTFIX_VERSION" >/dev/null 2>&1; then + echo "Tag $HOTFIX_VERSION already exists. Please Remove the tag and try again..." + exit 1 + fi + + # Read package.json for version + - name: โ” Get npm version for hotfix โ” + shell: bash + run: | + #!/bin/bash + set -x + if [ -n "${{ inputs.work_directory }}" ]; then + cd "${{ inputs.work_directory }}" + fi + PACKAGE_JSON_PATH="./package.json" + + echo "๐Ÿ“š Reading the version from package.json for the hotfix..." + if [[ -n "$PACKAGE_JSON_PATH" ]]; then + VERSION=$(jq -r '.version' "$PACKAGE_JSON_PATH") + if [[ "$VERSION" == "null" || -z "$VERSION" ]]; then + echo "No version field found in $PACKAGE_JSON_PATH" + echo "hotfix_version="0.0.0"" >> $GITHUB_ENV + else + echo "Version in $PACKAGE_JSON_PATH is $VERSION" + echo "hotfix_version=$VERSION" >> $GITHUB_ENV + fi + fi + + # Merge to Production Branch + - name: ๐Ÿ”€ Checkout and Merge to Production Branch + shell: bash + run: | + set -x + echo "๐Ÿ”„ Fetching and switching to the production branch..." + git fetch origin + git checkout ${{ env.production_branch }} + git pull origin ${{ env.production_branch }} + + echo "๐Ÿ”„ Merging the hotfix branch..." + git merge ${{ env.hotfix_branch }} --no-commit --no-ff + MERGE_STATUS=$? + + if [ $MERGE_STATUS -ne 0 ]; then + echo "Merge conflict detected, listing conflicts..." + git diff --name-only --diff-filter=U + git diff --diff-filter=U + echo "Please resolve the above conflicts and push the changes manually." + exit 1 + else + echo "โœ… Merge successful. Committing the merge..." + git commit -m "Merge hotfix branch ${{ env.hotfix_branch }} into ${{ env.production_branch }}" + git push origin ${{ env.production_branch }} + fi + + # Publish Hotfix + - name: ๐Ÿš€ Publish Hotfix + uses: softprops/action-gh-release@v0.1.15 + with: + tag_name: ${{ env.npm_hotfix_version }} + token: ${{ inputs.token }} + append_body: true + + # Switch to Development Branch + - name: ๐Ÿ”€ Switch to Development Branch + shell: bash + run: | + echo "๐Ÿ”„ Switching to the development branch..." + git switch develop + git status + + # Read package.json for version + + - name: โ” Get npm version for develop โ” + shell: bash + run: | + #!/bin/bash + set -x + if [ -n "${{ inputs.work_directory }}" ]; then + cd "${{ inputs.work_directory }}" + fi + PACKAGE_JSON_PATH="./package.json" + + echo "๐Ÿ“š Reading the version from package.json for the develop branch..." + if [[ -n "$PACKAGE_JSON_PATH" ]]; then + VERSION=$(jq -r '.version' "$PACKAGE_JSON_PATH") + if [[ "$VERSION" == "null" || -z "$VERSION" ]]; then + echo "No version field found in $PACKAGE_JSON_PATH" + echo "develop_version="0.0.0"" >> $GITHUB_ENV + else + echo "Version in $PACKAGE_JSON_PATH is $VERSION" + echo "develop_version=$VERSION" >> $GITHUB_ENV + fi + fi + + # Merge Back to develop + - name: ๐Ÿ”€ Merge To Develop + shell: bash + run: | + #!/bin/bash + set -x + echo "๐Ÿ”„ Merging changes back to the develop branch..." + echo "I'm in ${{ github.ref }}" + # Step 1: Bump the version with npm + npm version ${{ env.hotfix_version }} --git-tag-version=false + + # Step 2: Commit changes for hotfix version + git commit -am "Update develop to hotfix version ${{ env.hotfix_version }} to avoid merge conflicts" + + # Step 3: Merge the production branch with + MERGE_OUTPUT=$(git merge "${{ env.production_branch }}" 2>&1) + MERGE_STATUS=$? + echo "Merge Output: $MERGE_OUTPUT" + echo "Merge Status: $MERGE_STATUS" + + # Step 4: Bump the version of develop branch + npm version ${{ env.develop_version }} --git-tag-version=false + + # Step 5: Commit changes for develop version back to pre-merge state + git commit -am "Update develop version ${{ env.develop_version }} back to pre-merge state" + + # Push Changes + - name: โฌ†๏ธ Push Changes + shell: bash + run: | + #!/bin/bash + set -x + echo "๐Ÿ“ค Pushing changes to develop and production branches..." + git push origin develop:refs/heads/develop + git push origin ${{ env.production_branch }}:refs/heads/${{ env.production_branch }} + + # Cleanup Release Branch + - name: ๐Ÿงน Delete Hotfix Branch + uses: dawidd6/action-delete-branch@v3 + with: + github_token: ${{ inputs.token }} + branches: ${{ env.hotfix_branch }} + # ===================================================== + # Hotfix Flow Info + # ===================================================== + - name: โ„น๏ธ Display Hotfix Process Inf + shell: bash + run: | + echo "๐Ÿš€ Hotfix Process Details ๐Ÿš€" + echo "โœจ Workflow Name: ${{ github.workflow }}" + echo "๐Ÿ‘ค Triggered by: ${{ github.actor }}" + echo "๐Ÿ“ฆ Repository: ${{ github.repository }}" + echo "๐Ÿ”– Reference: ${{ github.ref }}" + echo "๐Ÿท๏ธ Hotfix Version: ${{ env.npm_hotfix_version }}" + echo "๐Ÿ”‘ Commit SHA: ${{ github.sha }}" + echo "๐Ÿ”ข Run ID: ${{ github.run_id }}" + echo "๐Ÿ”ข Run Number: ${{ github.run_number }}" diff --git a/.github/actions/hotfix_start/README.md b/.github/actions/hotfix_start/README.md new file mode 100644 index 0000000..1a059ff --- /dev/null +++ b/.github/actions/hotfix_start/README.md @@ -0,0 +1,43 @@ +# Hotfix Node Application Start + +This GitHub Action initiates the hotfix process for a Node.js application. It sets up the environment, configures Git credentials, determines the production branch, and prepares a new hotfix branch with a bumped version based on the semantic versioning from `package.json`. + +## Inputs + +| Input | Description | Required | +|--------|----------------------------------|----------| +| `token`| The VENLY_GITHUB_ACTIONS_TOKEN. | Yes | + +## Runs + +This action utilizes the "composite" run type to execute the following steps: + +1. **Set HOME environment variable** to help with tooling and scripts that might need a HOME directory. +2. **Setup Git Credentials** for subsequent Git operations within the action. +3. **Determine Master or Main** to find the production branch name (either `master` or `main`). +4. **Checkout production branch** to start the hotfix process from the current production codebase. +5. **Setup Node.js environment** using the specified Node.js version (defaults to 16.x). +6. **Bump the application version** in `package.json` to a new prepatch version with `SNAPSHOT` preid, without creating a Git tag. +7. **Extract the semantic version** from `package.json` and prepare it for use in branch naming and tagging. +8. **Create a Hotfix Branch** with the new version and push it to the remote repository. +9. **Switch to the development branch** to prepare for the merge back into the development branch after the hotfix is finalized. +10. **Merge the hotfix changes back into the development branch** after adjusting versioning to avoid merge conflicts. +11. **Display Hotfix Process Info** if the flow is set to 'finish', including workflow name, actor, repository, reference, hotfix branch, commit SHA, run ID, and run number. + +## Hotfix Flow Info + +At the end of the action, if the flow is set to 'finish', details of the hotfix process are displayed, providing visibility into the workflow execution and important references. + +## Example Usage + +```yaml +jobs: + hotfix_start_job: + runs-on: docker-runner + name: Start Hotfix Node Application + steps: + - name: Hotfix Node App Start + uses: ArkaneNetwork/venly-github-workflows/.github/actions/hotfix_node_start@main + with: + token: ${{ secrets.VENLY_GITHUB_ACTIONS_TOKEN }} +``` diff --git a/.github/actions/hotfix_start/action.yml b/.github/actions/hotfix_start/action.yml new file mode 100644 index 0000000..c60c3f6 --- /dev/null +++ b/.github/actions/hotfix_start/action.yml @@ -0,0 +1,221 @@ +name: "Hotfix Node Applicaton Start" +description: "Hotfix Node Applicaton Start" +inputs: + token: + description: The VENLY_GITHUB_ACTIONS_TOKEN + required: true + node_version: + default: 18.x + description: Node Version to use + work_directory: + description: Optional path to set for the working directory + required: false +runs: + using: "composite" + steps: + - name: Set HOME environment variable ๐Ÿ  + shell: bash + run: | + echo "๐Ÿ  Setting HOME environment variable..." + echo "HOME=${{ runner.workspace }}" >> $GITHUB_ENV + + - name: Setup Git Credentials ๐Ÿ”‘ + uses: oleksiyrudenko/gha-git-credentials@v2.1.1 + with: + global: false + name: ${{ github.actor }} + email: ${{ github.actor }}@venly.io + actor: ${{ github.actor }} + token: ${{ inputs.token }} + + # Determine the production branch name Master Or Main + - name: Determine Master Or Main ๐ŸŒ + shell: bash + run: | + #!/bin/bash + set -x + echo "๐Ÿ” Determining the production branch (Master or Main)..." + git fetch -p + BRANCHES=$(git branch -r | grep -E 'origin/main|origin/master') + echo "Remote branches: $BRANCHES" + if [ -z "$BRANCHES" ]; then + echo "โŒ No 'main' or 'master' branch found." + else + for BRANCH in $BRANCHES; do + BRANCH_NAME=$(echo $BRANCH | cut -d '/' -f 2) + echo "production_branch=$BRANCH_NAME" >> $GITHUB_ENV + echo "๐Ÿš€ Production Branch is $BRANCH_NAME" + done + fi + + # Checkout code to production branch + - name: Checkout production branch + shell: bash + run: | + #!/bin/bash + set -x + echo "๐Ÿ” Make sure we are on the production Branch ๐Ÿ”" + git switch ${{ env.production_branch }} + + - name: Setup Node.js ${{ inputs.node_version }} ๐Ÿ“ฆ + uses: actions/setup-node@v3 + id: node_setup + with: + node-version: ${{ inputs.node_version }} + + # ===================================================== + # Hotfix + # ===================================================== + # Create hotfix version + - name: Bump Version + shell: bash + run: | + #!/bin/bash + set -x + echo "๐Ÿš€ Bumping the version..." + git fetch -p + git status + npm version prepatch --preid=SNAPSHOT --git-tag-version=false + + # Read package.json for version + + - name: โ” get-npm-version โ” + id: package-version + shell: bash + run: | + #!/bin/bash + set -x + if [ -n "${{ inputs.work_directory }}" ]; then + cd "${{ inputs.work_directory }}" + fi + PACKAGE_JSON_PATH="./package.json" + + echo "๐Ÿ” Reading package.json for version..." + if [[ -n "$PACKAGE_JSON_PATH" ]]; then + VERSION=$(jq -r '.version' "$PACKAGE_JSON_PATH") + if [[ "$VERSION" == "null" || -z "$VERSION" ]]; then + echo "No version field found in $PACKAGE_JSON_PATH" + echo "hotfix_version_raw="0.0.0"" >> $GITHUB_ENV + else + echo "Version in $PACKAGE_JSON_PATH is $VERSION" + echo "hotfix_version_raw=$VERSION" >> $GITHUB_ENV + fi + fi + + # Extract semantic version + - name: Extract semantic version + shell: bash + id: hotfix_version + run: | + #!/bin/bash + set -x + RAW_HOTFIX_VERSION=${{ env.hotfix_version_raw }} + HOTFIX_VERSION=$(echo $RAW_HOTFIX_VERSION | grep -oP "\d*\.\d*\.\d*") + if [ -n "$HOTFIX_VERSION" ]; then + echo "hotfix_version=$HOTFIX_VERSION" >> $GITHUB_ENV + echo "hotfix_version=$HOTFIX_VERSION" >> $GITHUB_OUTPUT + echo $HOTFIX_VERSION + else + echo "No version found" + fi + + - name: Check for existing hotfix branch + shell: bash + run: | + #!/bin/bash + set -x + # Fetch all branches from the remote + git fetch --all + + # Check if any branch contains the keyword "hotfix" + if git branch -r | grep -q "origin/hotfix"; then + echo "Error: A hotfix branch already exists. Please resolve or merge the existing hotfix branch before creating a new one." + exit 1 + else + echo "No existing hotfix branch found. Proceeding..." + fi + + - name: Create Hotfix Branch + shell: bash + run: | + #!/bin/bash + set -x + git checkout -b hotfix-${{ env.hotfix_version }} + git commit -am "Create hotfix version ${{ env.hotfix_version_raw }}" + git push origin HEAD:refs/heads/hotfix-${{ env.hotfix_version }} + + # Switch to Development Branch + - name: Switch to development branch + shell: bash + run: | + git switch develop + git status + + # Read package.json for version + # Get npm version + - name: โ” Get npm version for develop branch โ” + shell: bash + run: | + #!/bin/bash + set -x + if [ -n "${{ inputs.work_directory }}" ]; then + cd "${{ inputs.work_directory }}" + fi + PACKAGE_JSON_PATH="./package.json" + + echo "๐Ÿ“š Reading the version from package.json for the develop branch..." + if [[ -n "$PACKAGE_JSON_PATH" ]]; then + VERSION=$(jq -r '.version' "$PACKAGE_JSON_PATH") + if [[ "$VERSION" == "null" || -z "$VERSION" ]]; then + echo "โš ๏ธ No version field found in $PACKAGE_JSON_PATH" + echo "current-version-develop="0.0.0"" >> $GITHUB_ENV + else + echo "โœ… Version in $PACKAGE_JSON_PATH is $VERSION" + echo "current-version-develop=$VERSION" >> $GITHUB_ENV + fi + fi + + # Merge Back to develop + - name: Merge To Develop Branch ๐Ÿ”„ + shell: bash + run: | + #!/bin/bash + set -x + echo "๐Ÿ”„ Preparing to merge the hotfix branch into develop..." + # Checkout develop branch + git checkout develop + + # Bump version to match the hotfix version without creating a git tag + echo "๐Ÿ”– Bumping version to match hotfix version..." + npm version ${{ env.hotfix_version_raw }} --git-tag-version=false + git commit -am "Update develop to hotfix version ${{ env.hotfix_version_raw }} to avoid merge conflicts" + + # Merge the hotfix branch + echo "๐Ÿ”€ Merging hotfix-${{ env.hotfix_version }} into develop..." + git merge hotfix-${{ env.hotfix_version }} -m "Merge hotfix-${{ env.hotfix_version }} into develop" + + # Bump the develop version back to pre-merge state + echo "๐Ÿ”– Bumping develop version back to pre-merge state..." + npm version ${{ env.current-version-develop }} --git-tag-version=false + git commit -am "Update develop version back to pre-merge state" + + # Push changes to the develop branch + echo "๐Ÿ“ค Pushing changes to the develop branch..." + git push origin develop + + # ===================================================== + # Hotfix Flow Info + # ===================================================== + - name: โ„น๏ธ Display Hotfix Process Info + if: ${{ inputs.flow == 'finish' }} + shell: bash + run: | + echo "๐Ÿš€ Hotfix Process Details ๐Ÿš€" + echo "โœจ Workflow Name: ${{ github.workflow }}" + echo "๐Ÿ‘ค Triggered by: ${{ github.actor }}" + echo "๐Ÿ“ฆ Repository: ${{ github.repository }}" + echo "๐Ÿ”– Reference: ${{ github.ref }}" + echo "๐Ÿท๏ธ Hotfix Branch: hotfix-${{ env.hotfix_version }}" + echo "๐Ÿ”‘ Commit SHA: ${{ github.sha }}" + echo "๐Ÿ”ข Run ID: ${{ github.run_id }}" + echo "๐Ÿ”ข Run Number: ${{ github.run_number }}" diff --git a/.github/actions/merge_back/README.md b/.github/actions/merge_back/README.md new file mode 100644 index 0000000..ab47748 --- /dev/null +++ b/.github/actions/merge_back/README.md @@ -0,0 +1,31 @@ +# Merge Back to Development Action + +## Description + +The "Merge Back to Development" Action automates the process of merging changes from a specified branch back into the development branch. This action is typically used in continuous integration workflows to ensure that feature branches or release branches are correctly merged back after completion. + +## Inputs + +| Input | Description | Required | +| --------- | ----------------------------------- | -------- | +| `branch` | The branch to merge into develop | Yes | +| `token` | The VENLY_GITHUB_ACTIONS_TOKEN | Yes | + +## Steps + +1. **Branch Identification**: Identifies and echoes the branch to be merged. +2. **Checkout Code**: Checks out the code from the specified branch. +3. **Git Credentials Setup**: Configures Git credentials for push operations. +4. **Merge Operation**: Performs the merge operation from the specified branch to the development branch. + +## Usage + +To use this action in your workflow, add the following step: + +```yaml +- name: Merge Back to Development + uses: ArkaneNetwork/venly-github-workflows/.github/actions/merge_back@main + with: + branch: "" + token: "" +``` diff --git a/.github/actions/merge_back/action.yml b/.github/actions/merge_back/action.yml new file mode 100644 index 0000000..a82807b --- /dev/null +++ b/.github/actions/merge_back/action.yml @@ -0,0 +1,66 @@ +name: "Merge Back to Development" +description: "Build NodeJs container" +inputs: + branch: + description: The branch to Merge + required: true + token: + description: The VENLY_GITHUB_ACTIONS_TOKEN + required: true +runs: + using: "composite" + steps: + - name: Branch to Build + shell: bash + run: echo -e "๐Ÿ”ง Merging ${{ github.sha }} back to develop ๐Ÿ”ง" + + - uses: oleksiyrudenko/gha-git-credentials@v2.1.1 + with: + global: false + name: ${{ github.actor }} + email: ${{ github.actor }}@venly.io + actor: ${{ github.actor }} + token: ${{ inputs.token }} + + - name: Merge back to develop + env: + GIT_USERNAME: ${{ github.actor }} + GITHUB_TOKEN: ${{ inputs.token }} + shell: bash + run: | + #!/bin/bash + set -x + + git fetch -p --unshallow + git reset --hard + git checkout ${{ github.sha }} + if [ -f "package.json" ]; then + # Read branch version + BRANCH_VERSION=$(jq -r '.version' package.json) + + # Fetch develop branch and checkout + git fetch --no-tags origin develop:develop + git checkout develop + + # Read develop version + DEVELOP_VERSION=$(jq -r '.version' package.json) + + # Update develop to branch version + npm version $BRANCH_VERSION --git-tag-version=false + git commit -am "Update develop to branch version to avoid merge conflicts" + + # Merge current commit into develop + git merge ${{ github.sha }} + + # Restore develop version + npm version $DEVELOP_VERSION --git-tag-version=false + git commit -am "Update develop version back to pre-merge state" + else + # If not a Node.js project, just merge + git fetch --no-tags origin develop:develop + git checkout develop + git merge ${{ github.sha }} + fi + + # Push changes back to develop branch + git push origin develop:develop diff --git a/.github/actions/publish_npm/action.yml b/.github/actions/publish_npm/action.yml new file mode 100644 index 0000000..d2ac1b5 --- /dev/null +++ b/.github/actions/publish_npm/action.yml @@ -0,0 +1,50 @@ +name: ๐Ÿš€ Publish +description: "Publish To Npm" + +inputs: + npm_token: + description: The npm Token + required: true + token: + description: The Github PAT Token + required: true +outputs: + published_version: + description: "Published Version from package.json" + value: ${{ steps.publish.outputs.published_version }} + +runs: + using: "composite" + steps: + - name: ๐Ÿš€ Publish to npm + id: publish + shell: bash + env: + NPM_KEY: ${{ inputs.npm_token }} + run: | + #!/bin/bash + set -x + + # Authenticate with npm using the token + printf '//registry.npmjs.org/:_authToken=${NPM_KEY}\n@venly:registry=https://registry.npmjs.org/' > .npmrc + + # Debug information + npm config get registry + npm whoami + + # Publish the npm package and capture the output + if [ "${GITHUB_REF}" == "refs/heads/master" ]; then + npm publish --verbose + else + npm publish --tag $(echo "${GITHUB_REF}" | sed 's|refs/heads/||') --verbose + fi + + # Capture the version from package.json + published_version=$(jq -r '.version' package.json) + + # Output the version + echo "Published version: $published_version" + + # Export the version to GitHub Actions environment variables + echo "published_version=$published_version" >> $GITHUB_ENV + echo "published_version=$published_version" >> $GITHUB_OUTPUT diff --git a/.github/actions/release_finish/README.md b/.github/actions/release_finish/README.md new file mode 100644 index 0000000..cc46030 --- /dev/null +++ b/.github/actions/release_finish/README.md @@ -0,0 +1,34 @@ +# Release Node Application Action + +## Description + +The "Release Node Application" Action automates the release process for Node.js applications. It covers both starting and finishing release flows, incorporating version management, changelog generation, merging, and tagging. + +## Inputs + +| Input | Description | Required | +| ----------- | ----------------------------------- | -------- | +| `flow` | Release flow, can be 'start' or 'finish' | Yes | +| `token` | The VENLY_GITHUB_ACTIONS_TOKEN | Yes | + +## Steps + +1. **Checkout Code**: Checks out the code from the development branch. +2. **Setup Node.js**: Sets up the Node.js environment for the build process. +3. **Release Flow Start**: If the `flow` input is 'start', it initiates the release process by creating a new release branch and bumping the version. +4. **Release Flow Finish**: If the `flow` input is 'finish', it finalizes the release process, including merging changes to the production branch, creating a release, and updating the development branch. +5. **Build Changelog**: Generates a changelog for the release using the release-changelog-builder action. +6. **Publish Release**: Creates a GitHub release with the new version number and the generated changelog. +7. **Cleanup**: Deletes the release branch after the release is finished. + +## Usage + +To use this action in your workflow, add the following step: + +```yaml +- name: Release Node Application + uses: ArkaneNetwork/venly-github-workflows/.github/actions/release_node@main + with: + flow: "" + token: "" +``` diff --git a/.github/actions/release_finish/action.yml b/.github/actions/release_finish/action.yml new file mode 100644 index 0000000..98cc1fc --- /dev/null +++ b/.github/actions/release_finish/action.yml @@ -0,0 +1,143 @@ +name: "Release Node Applicaton Finish" +description: "Release Node Applicaton Finish" +inputs: + token: + description: The VENLY_GITHUB_ACTIONS_TOKEN + required: true + node_version: + default: 18.x + description: Node Version to use +runs: + using: "composite" + steps: + - name: Set HOME environment variable + shell: bash + run: echo "HOME=${{ github.workspace }}" >> $GITHUB_ENV + + # Determine the production branch name Master Or Main + - name: Determine Master Or Main + shell: bash + run: | + git fetch -p + BRANCHES=$(git branch -r | grep -E 'origin/main|origin/master') + if [ -z "$BRANCHES" ]; then + echo "No 'main' or 'master' branch found." + else + for BRANCH in $BRANCHES; do + BRANCH_NAME=$(echo $BRANCH | cut -d '/' -f 2) + echo "production_branch=$BRANCH_NAME" >> $GITHUB_ENV + echo "Production Branch is $BRANCH_NAME" + done + fi + + - uses: oleksiyrudenko/gha-git-credentials@v2.1.1 + with: + global: false + name: ${{ github.actor }} + email: ${{ github.actor }}@venly.io + actor: ${{ github.actor }} + token: ${{ inputs.token }} + + - name: Use Node.js ${{ inputs.node_version }} + uses: actions/setup-node@v4.0.2 + id: node_setup + with: + node-version: ${{ inputs.node_version }} + check-latest: true + - name: DEBUG + shell: bash + run: which npm + # ===================================================== + # Release + # ===================================================== + # Get the Name of the Release Branch + - name: Get Release Branch + shell: bash + run: | + #!/bin/bash + set -x + RELEASE_BRANCH=$(git branch -r | grep origin/release- | sort -t. -k1,1n -k2,2n -k3,3n | head -n1 | cut -d '/' -f 2) + if [ -z "$RELEASE_BRANCH" ]; then + echo "No release branch found. Continuing without it." + else + echo "Release branch found. Continuing..." + echo "release_branch=$RELEASE_BRANCH" >> $GITHUB_ENV + echo "Release branch found - $RELEASE_BRANCH. Continuing..." + fi + + # Finalize Version + - name: Finalise version + shell: bash + run: | + #!/bin/bash + set -x + git stash push -u -m "Temporarily stashing changes before switching branches" + git checkout ${{ env.release_branch }} + git config user.email "${{ github.actor }}@venly.io" + git config user.name "${{ github.actor }}" + npm version minor + RELEASE_VERSION=$(jq -r '.version' package.json) + echo "RELEASE_VERSION=$RELEASE_VERSION" >> $GITHUB_ENV + + - name: Merge to master + shell: bash + run: | + #!/bin/bash + set -x + git switch ${{ env.production_branch }} + git merge ${{ env.release_branch }} + + # Merge Back to develop + - name: Merge back to develop + shell: bash + run: | + #!/bin/bash + set -x + git reset --hard + git switch develop + # Remove all local tags + git tag -l | xargs -n 1 git tag -d + DEVELOP_VERSION=$(jq -r '.version' package.json) + + # Update npm version to release version to avoid merge conflicts + npm version ${{ env.RELEASE_VERSION }} --git-tag-version=false + git commit -am "Update develop to release version to avoid merge conflicts" + + # Merge the production branch in develop + git merge ${{ env.production_branch }} + + # Update npm version back to the develop version + npm version $DEVELOP_VERSION --git-tag-version=false + git commit -am "Update develop version back to pre-merge state" + + # Push + - name: Push Changes + shell: bash + run: | + #!/bin/bash + set -x + git push --tags origin develop:refs/heads/develop + git push origin ${{ env.production_branch }}:refs/heads/${{ env.production_branch }} + + # Cleanup Release Branch + - name: Delete branch in specific repository with a specific owner + uses: dawidd6/action-delete-branch@v3 + with: + github_token: ${{ inputs.token }} + branches: ${{ env.release_branch }} + + # ===================================================== + # Release Flow Info + # ===================================================== + - name: โ„น๏ธ Display Release Process Info + shell: bash + run: | + echo "๐Ÿš€ Release Process Details ๐Ÿš€" + echo "โœจ Workflow Name: ${{ github.workflow }}" + echo "๐Ÿ‘ค Triggered by: ${{ github.actor }}" + echo "๐Ÿ“ฆ Repository: ${{ github.repository }}" + echo "๐Ÿ”– Reference: ${{ github.ref }}" + echo "๐Ÿท๏ธ Release Version: ${{ env.RELEASE_VERSION }}" + echo "๐Ÿ”‘ Commit SHA: ${{ github.sha }}" + echo "๐Ÿ”ข Run ID: ${{ github.run_id }}" + echo "๐Ÿ”ข Run Number: ${{ github.run_number }}" diff --git a/.github/actions/release_start/README.md b/.github/actions/release_start/README.md new file mode 100644 index 0000000..cc46030 --- /dev/null +++ b/.github/actions/release_start/README.md @@ -0,0 +1,34 @@ +# Release Node Application Action + +## Description + +The "Release Node Application" Action automates the release process for Node.js applications. It covers both starting and finishing release flows, incorporating version management, changelog generation, merging, and tagging. + +## Inputs + +| Input | Description | Required | +| ----------- | ----------------------------------- | -------- | +| `flow` | Release flow, can be 'start' or 'finish' | Yes | +| `token` | The VENLY_GITHUB_ACTIONS_TOKEN | Yes | + +## Steps + +1. **Checkout Code**: Checks out the code from the development branch. +2. **Setup Node.js**: Sets up the Node.js environment for the build process. +3. **Release Flow Start**: If the `flow` input is 'start', it initiates the release process by creating a new release branch and bumping the version. +4. **Release Flow Finish**: If the `flow` input is 'finish', it finalizes the release process, including merging changes to the production branch, creating a release, and updating the development branch. +5. **Build Changelog**: Generates a changelog for the release using the release-changelog-builder action. +6. **Publish Release**: Creates a GitHub release with the new version number and the generated changelog. +7. **Cleanup**: Deletes the release branch after the release is finished. + +## Usage + +To use this action in your workflow, add the following step: + +```yaml +- name: Release Node Application + uses: ArkaneNetwork/venly-github-workflows/.github/actions/release_node@main + with: + flow: "" + token: "" +``` diff --git a/.github/actions/release_start/action.yml b/.github/actions/release_start/action.yml new file mode 100644 index 0000000..b4e6439 --- /dev/null +++ b/.github/actions/release_start/action.yml @@ -0,0 +1,148 @@ +name: "Release Node Applicaton Start" +description: "Release Node Applicaton Start" +inputs: + token: + description: The VENLY_GITHUB_ACTIONS_TOKEN + required: true + node_version: + default: 18.x + description: Node Version to use + work_directory: + description: Optional path to set for the working directory + required: false +runs: + using: "composite" + steps: + - name: Set HOME environment variable + shell: bash + run: echo "HOME=${{ github.workspace }}" >> $GITHUB_ENV + + # Determine the production branch name Master Or Main + - name: Determine Master Or Main + shell: bash + run: | + #!/bin/bash + set -x + git fetch -p + BRANCHES=$(git branch -r | grep -E 'origin/main|origin/master') + if [ -z "$BRANCHES" ]; then + echo "No 'main' or 'master' branch found." + else + for BRANCH in $BRANCHES; do + BRANCH_NAME=$(echo $BRANCH | cut -d '/' -f 2) + echo "production_branch=$BRANCH_NAME" >> $GITHUB_ENV + echo "Production Branch is $BRANCH_NAME" + done + fi + + - uses: oleksiyrudenko/gha-git-credentials@v2.1.1 + with: + global: false + name: ${{ github.actor }} + email: ${{ github.actor }}@venly.io + actor: ${{ github.actor }} + token: ${{ inputs.token }} + + - name: Use Node.js ${{ inputs.node_version }} + uses: actions/setup-node@v4.0.2 + id: node_setup + with: + node-version: ${{ inputs.node_version }} + check-latest: true + # ===================================================== + # Release + # ===================================================== + # Switch to develop version + - name: Switch to develop branch and check for updates + shell: bash + run: | + #!/bin/bash + set -x + echo "๐Ÿ” Make sure we are on the develop Branch ๐Ÿ”" + git switch develop + git fetch origin develop + CHANGED_FILES=$(git diff --name-only HEAD origin/develop) + if [[ -n "$CHANGED_FILES" ]]; then + echo "The following files differ from the remote 'develop' branch and might cause issues:" + echo "$CHANGED_FILES" + echo "Attempting to merge remote 'develop' into local 'develop' branch..." + git merge origin/develop --no-edit || (echo "Merge conflicts detected, manual resolution required." && exit 1) + else + echo "Local 'develop' branch is up-to-date with remote." + fi + + # Read package.json for version + - name: โ” get-npm-version โ” + id: package-version + shell: bash + run: | + #!/bin/bash + set -x + if [ -n "${{ inputs.work_directory }}" ]; then + cd "${{ inputs.work_directory }}" + fi + PACKAGE_JSON_PATH="./package.json" + + echo "Looking for package.json in" + if [[ -n "$PACKAGE_JSON_PATH" ]]; then + VERSION=$(jq -r '.version' "$PACKAGE_JSON_PATH") + if [[ "$VERSION" == "null" || -z "$VERSION" ]]; then + echo "No version field found in $PACKAGE_JSON_PATH" + echo "release_version_raw="0.0.0"" >> $GITHUB_ENV + else + echo "Version in $PACKAGE_JSON_PATH is $VERSION" + echo "release_version_raw=$VERSION" >> $GITHUB_ENV + fi + fi + + - name: Extract semantic version + shell: bash + id: semantic-version + run: | + #!/bin/bash + set -x + RAW_RELEASE_VERSION=${{ env.release_version_raw }} + RELEASE_VERSION=$(echo $RAW_RELEASE_VERSION | grep -oP "\d*\.\d*\.\d*") + if [ -n "$RELEASE_VERSION" ]; then + echo "release_version=$RELEASE_VERSION" >> $GITHUB_ENV + echo "release_version=$RELEASE_VERSION" >> $GITHUB_OUTPUT + echo $RELEASE_VERSION + else + echo "No version found" + fi + + # Create Release Branch + - uses: peterjgrainger/action-create-branch@v2.4.0 + env: + GITHUB_TOKEN: ${{ inputs.token }} + with: + branch: release-${{ env.release_version }} + + # Bump npm minor version + - name: "Automated Version Bump" + shell: bash + run: | + #!/bin/bash + set -x + git switch develop + NEW_PRE_VERSION=$(npm version preminor --preid=SNAPSHOT --git-tag-version=false) + git add --all + git commit --allow-empty -m "bump develop version $NEW_PRE_VERSION" + git push origin HEAD:refs/heads/develop + echo "npm_new_pre_version=$NEW_PRE_VERSION" >> $GITHUB_ENV + + # ===================================================== + # Release Flow Info + # ===================================================== + - name: โ„น๏ธ Display Release Process Info + shell: bash + run: | + echo "๐Ÿš€ Release Process Details ๐Ÿš€" + echo "โœจ Workflow Name: ${{ github.workflow }}" + echo "๐Ÿ‘ค Triggered by: ${{ github.actor }}" + echo "๐Ÿ“ฆ Repository: ${{ github.repository }}" + echo "๐Ÿ”– Reference: ${{ github.ref }}" + echo "๐Ÿท๏ธ Release Branch: release-${{ env.release_version }}" + echo "๐Ÿ”‘ Commit SHA: ${{ github.sha }}" + echo "๐Ÿ”ข Run ID: ${{ github.run_id }}" + echo "๐Ÿ”ข Run Number: ${{ github.run_number }}" diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml new file mode 100644 index 0000000..782011a --- /dev/null +++ b/.github/workflows/build.yml @@ -0,0 +1,70 @@ +name: ๐Ÿ—๏ธ Build +on: + push: + paths-ignore: + - .github/** + pull_request: + workflow_dispatch: +concurrency: + group: ${{ github.workflow }}-${{ github.ref }} + cancel-in-progress: true + +permissions: + actions: read + checks: write + contents: write + deployments: read + id-token: write + issues: read + discussions: read + packages: read + pages: read + pull-requests: read + repository-projects: read + security-events: read + statuses: read +run-name: ๐Ÿ—๏ธ Build ${{ github.ref_name }} + +jobs: + build: + runs-on: ubuntu-latest + steps: + - name: โœ… Checkout + uses: actions/checkout@v4 + with: + token: ${{ secrets.VENLY_GITHUB_ACTIONS_TOKEN }} + + - name: ๐Ÿ” Get Version + uses: ./.github/actions/get_version + + - name: โฌ†๏ธ Bump Version + if: github.event_name == 'push' || github.event_name == 'workflow_dispatch' && (startsWith(github.ref, 'refs/heads/develop') || startsWith(github.ref, 'refs/heads/hotfix-') || startsWith(github.ref, 'refs/heads/release-')) + uses: ./.github/actions/bump_version + with: + token: ${{ secrets.VENLY_GITHUB_ACTIONS_TOKEN }} + + - name: ๐Ÿ› ๏ธ Setup Node.js 16.x + uses: actions/setup-node@v3 + id: node_setup + with: + node-version: 16.x + + - name: ๐Ÿ—๏ธ Build Node + run: | + #!/bin/bash + set -x + npm i + npm run build + + - name: ๐Ÿš€ Publish Npm + uses: ./.github/actions/publish_npm + with: + npm_token: ${{ secrets.NPM_KEY }} + token: ${{ secrets.VENLY_GITHUB_ACTIONS_TOKEN }} + + - name: ๐Ÿ”„ Merge Back + if: startsWith(github.ref, 'refs/heads/hotfix-') || startsWith(github.ref, 'refs/heads/release-') + uses: ./.github/actions/merge_back + with: + branch: ${{ github.ref_name }} + token: ${{ secrets.VENLY_GITHUB_ACTIONS_TOKEN }} diff --git a/.github/workflows/hotfix_finish.yml b/.github/workflows/hotfix_finish.yml new file mode 100644 index 0000000..eb5153e --- /dev/null +++ b/.github/workflows/hotfix_finish.yml @@ -0,0 +1,30 @@ +name: ๐Ÿฉน Hotfix Finish +on: + workflow_dispatch: +permissions: + actions: read + checks: write + contents: write + deployments: read + id-token: write + issues: write + discussions: read + packages: read + pages: read + pull-requests: write + repository-projects: read + security-events: read + statuses: read +run-name: ๐Ÿฉน hotfix-finish +jobs: + hotfix: + runs-on: ubuntu-latest + steps: + - name: โœ… Checkout + uses: actions/checkout@v4 + with: + token: ${{ secrets.VENLY_GITHUB_ACTIONS_TOKEN }} + fetch-depth: 0 + - uses: ./.github/actions/hotfix_finish + with: + token: ${{ secrets.VENLY_GITHUB_ACTIONS_TOKEN }} diff --git a/.github/workflows/hotfix_start.yml b/.github/workflows/hotfix_start.yml new file mode 100644 index 0000000..76108c3 --- /dev/null +++ b/.github/workflows/hotfix_start.yml @@ -0,0 +1,30 @@ +name: ๐Ÿค• Hotfix Start +on: + workflow_dispatch: +permissions: + actions: read + checks: write + contents: write + deployments: read + id-token: write + issues: write + discussions: read + packages: read + pages: read + pull-requests: write + repository-projects: read + security-events: read + statuses: read +run-name: ๐Ÿค• hotfix-start +jobs: + hotfix: + runs-on: ubuntu-latest + steps: + - name: โœ… Checkout + uses: actions/checkout@v4 + with: + token: ${{ secrets.VENLY_GITHUB_ACTIONS_TOKEN }} + fetch-depth: 0 + - uses: ./.github/actions/hotfix_start + with: + token: ${{ secrets.VENLY_GITHUB_ACTIONS_TOKEN }} diff --git a/.github/workflows/release_finish.yml b/.github/workflows/release_finish.yml new file mode 100644 index 0000000..efb731a --- /dev/null +++ b/.github/workflows/release_finish.yml @@ -0,0 +1,30 @@ +name: ๐Ÿ›ฌ Release Finish +on: + workflow_dispatch: +permissions: + actions: read + checks: write + contents: write + deployments: read + id-token: write + issues: write + discussions: read + packages: read + pages: read + pull-requests: write + repository-projects: read + security-events: read + statuses: read +run-name: ๐Ÿ›ฌ release-finish +jobs: + release: + runs-on: ubuntu-latest + steps: + - name: โœ… Checkout + uses: actions/checkout@v4 + with: + token: ${{ secrets.VENLY_GITHUB_ACTIONS_TOKEN }} + fetch-depth: 0 + - uses: ./.github/actions/release_finish + with: + token: ${{ secrets.VENLY_GITHUB_ACTIONS_TOKEN }} diff --git a/.github/workflows/release_start.yml b/.github/workflows/release_start.yml new file mode 100644 index 0000000..dc286cf --- /dev/null +++ b/.github/workflows/release_start.yml @@ -0,0 +1,30 @@ +name: ๐Ÿ›ซ Release Start +on: + workflow_dispatch: +permissions: + actions: read + checks: write + contents: write + deployments: read + id-token: write + issues: write + discussions: read + packages: read + pages: read + pull-requests: write + repository-projects: read + security-events: read + statuses: read +run-name: ๐Ÿ›ซ release-start +jobs: + release: + runs-on: ubuntu-latest + steps: + - name: โœ… Checkout + uses: actions/checkout@v4 + with: + token: ${{ secrets.VENLY_GITHUB_ACTIONS_TOKEN }} + fetch-depth: 0 + - uses: ./.github/actions/release_start + with: + token: ${{ secrets.VENLY_GITHUB_ACTIONS_TOKEN }} diff --git a/Jenkinsfile-Hotfix-finish b/JenkinsBackup/Jenkinsfile-Hotfix-finish.Backup similarity index 100% rename from Jenkinsfile-Hotfix-finish rename to JenkinsBackup/Jenkinsfile-Hotfix-finish.Backup diff --git a/Jenkinsfile-Hotfix-start b/JenkinsBackup/Jenkinsfile-Hotfix-start.Backup similarity index 100% rename from Jenkinsfile-Hotfix-start rename to JenkinsBackup/Jenkinsfile-Hotfix-start.Backup diff --git a/Jenkinsfile-Release-finish b/JenkinsBackup/Jenkinsfile-Release-finish.Backup similarity index 100% rename from Jenkinsfile-Release-finish rename to JenkinsBackup/Jenkinsfile-Release-finish.Backup diff --git a/Jenkinsfile-Release-start b/JenkinsBackup/Jenkinsfile-Release-start.Backup similarity index 100% rename from Jenkinsfile-Release-start rename to JenkinsBackup/Jenkinsfile-Release-start.Backup diff --git a/Jenkinsfile-release b/JenkinsBackup/Jenkinsfile-release.Backup similarity index 100% rename from Jenkinsfile-release rename to JenkinsBackup/Jenkinsfile-release.Backup diff --git a/Jenkinsfile b/JenkinsBackup/Jenkinsfile.Backup similarity index 100% rename from Jenkinsfile rename to JenkinsBackup/Jenkinsfile.Backup From 397b23c595db73ae704a0a93874ecb83ff1b8151 Mon Sep 17 00:00:00 2001 From: Koen Date: Wed, 18 Sep 2024 11:09:35 +0200 Subject: [PATCH 07/31] ci: Update build workflow to conditionally publish NPM based on event name and branch prefixes --- .github/workflows/build.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 782011a..b6b78fb 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -57,6 +57,7 @@ jobs: npm run build - name: ๐Ÿš€ Publish Npm + if: github.event_name == 'push' || github.event_name == 'workflow_dispatch' && (startsWith(github.ref, 'refs/heads/develop') || startsWith(github.ref, 'refs/heads/hotfix-') || startsWith(github.ref, 'refs/heads/release-')) uses: ./.github/actions/publish_npm with: npm_token: ${{ secrets.NPM_KEY }} From 25b44bd9a95c34fcbc1140def73c540687a75720 Mon Sep 17 00:00:00 2001 From: AlpaCoder Date: Wed, 9 Oct 2024 17:46:53 +0200 Subject: [PATCH 08/31] Update package.json --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 748aa15..d60e5bd 100644 --- a/package.json +++ b/package.json @@ -13,7 +13,7 @@ ], "repository": { "type": "git", - "url": "git+https://github.com/ArkaneNetwork/web3-react-venly" + "url": "git+https://github.com/Venly/web3-react-venly" }, "scripts": { "prebuild": "rm -rf dist", From 5d150844cc27b32b7053ad9afef9874a31357e6e Mon Sep 17 00:00:00 2001 From: Koen Date: Thu, 10 Oct 2024 09:16:01 +0200 Subject: [PATCH 09/31] chore: update GitHub workflows to use Venly's official GitHub action repository --- .github/actions/hotfix_finish/README.md | 2 +- .github/actions/hotfix_start/README.md | 2 +- .github/actions/merge_back/README.md | 2 +- .github/actions/release_finish/README.md | 2 +- .github/actions/release_start/README.md | 2 +- 5 files changed, 5 insertions(+), 5 deletions(-) diff --git a/.github/actions/hotfix_finish/README.md b/.github/actions/hotfix_finish/README.md index 8f5bf65..03d5bbf 100644 --- a/.github/actions/hotfix_finish/README.md +++ b/.github/actions/hotfix_finish/README.md @@ -41,7 +41,7 @@ jobs: name: Finish Hotfix Node Application steps: - name: Hotfix Node App Finish - uses: ArkaneNetwork/venly-github-workflows/.github/actions/hotfix_java_start@main + uses: Venly/venly-github-workflows/.github/actions/hotfix_java_start@main with: token: ${{ secrets.VENLY_GITHUB_ACTIONS_TOKEN }} ``` diff --git a/.github/actions/hotfix_start/README.md b/.github/actions/hotfix_start/README.md index 1a059ff..34d13a5 100644 --- a/.github/actions/hotfix_start/README.md +++ b/.github/actions/hotfix_start/README.md @@ -37,7 +37,7 @@ jobs: name: Start Hotfix Node Application steps: - name: Hotfix Node App Start - uses: ArkaneNetwork/venly-github-workflows/.github/actions/hotfix_node_start@main + uses: Venly/venly-github-workflows/.github/actions/hotfix_node_start@main with: token: ${{ secrets.VENLY_GITHUB_ACTIONS_TOKEN }} ``` diff --git a/.github/actions/merge_back/README.md b/.github/actions/merge_back/README.md index ab47748..99dbaad 100644 --- a/.github/actions/merge_back/README.md +++ b/.github/actions/merge_back/README.md @@ -24,7 +24,7 @@ To use this action in your workflow, add the following step: ```yaml - name: Merge Back to Development - uses: ArkaneNetwork/venly-github-workflows/.github/actions/merge_back@main + uses: Venly/venly-github-workflows/.github/actions/merge_back@main with: branch: "" token: "" diff --git a/.github/actions/release_finish/README.md b/.github/actions/release_finish/README.md index cc46030..08e33d5 100644 --- a/.github/actions/release_finish/README.md +++ b/.github/actions/release_finish/README.md @@ -27,7 +27,7 @@ To use this action in your workflow, add the following step: ```yaml - name: Release Node Application - uses: ArkaneNetwork/venly-github-workflows/.github/actions/release_node@main + uses: Venly/venly-github-workflows/.github/actions/release_node@main with: flow: "" token: "" diff --git a/.github/actions/release_start/README.md b/.github/actions/release_start/README.md index cc46030..08e33d5 100644 --- a/.github/actions/release_start/README.md +++ b/.github/actions/release_start/README.md @@ -27,7 +27,7 @@ To use this action in your workflow, add the following step: ```yaml - name: Release Node Application - uses: ArkaneNetwork/venly-github-workflows/.github/actions/release_node@main + uses: Venly/venly-github-workflows/.github/actions/release_node@main with: flow: "" token: "" From be950a070b95346a74b8d4de218875d91a289a03 Mon Sep 17 00:00:00 2001 From: koen Date: Fri, 7 Feb 2025 08:11:17 +0100 Subject: [PATCH 10/31] VENLY-8449: removed Jenkinsfile --- .../Jenkinsfile-Hotfix-finish.Backup | 75 ---------------- JenkinsBackup/Jenkinsfile-Hotfix-start.Backup | 58 ------------- .../Jenkinsfile-Release-finish.Backup | 75 ---------------- .../Jenkinsfile-Release-start.Backup | 50 ----------- JenkinsBackup/Jenkinsfile-release.Backup | 66 -------------- JenkinsBackup/Jenkinsfile.Backup | 87 ------------------- 6 files changed, 411 deletions(-) delete mode 100644 JenkinsBackup/Jenkinsfile-Hotfix-finish.Backup delete mode 100644 JenkinsBackup/Jenkinsfile-Hotfix-start.Backup delete mode 100644 JenkinsBackup/Jenkinsfile-Release-finish.Backup delete mode 100644 JenkinsBackup/Jenkinsfile-Release-start.Backup delete mode 100644 JenkinsBackup/Jenkinsfile-release.Backup delete mode 100644 JenkinsBackup/Jenkinsfile.Backup diff --git a/JenkinsBackup/Jenkinsfile-Hotfix-finish.Backup b/JenkinsBackup/Jenkinsfile-Hotfix-finish.Backup deleted file mode 100644 index 5c1ab05..0000000 --- a/JenkinsBackup/Jenkinsfile-Hotfix-finish.Backup +++ /dev/null @@ -1,75 +0,0 @@ - pipeline { - agent any - environment { - GITHUB_CREDS = credentials('GITHUB_CRED') - } - options { - disableConcurrentBuilds() - timeout(time: 15, unit: 'MINUTES') - } - stages { - stage('Initialize env') { - steps { - sh "git config --global user.email \"jenkins@venly.io\"" - sh "git config --global user.name \"Jenkins\"" - withCredentials([gitUsernamePassword(credentialsId: 'GITHUB_CRED', gitToolName: 'Default')]) { - sh 'git fetch -p' - } - script { - env.HOTFIX_BRANCH = sh (script: 'git branch -a | grep origin/hotfix- | cut -d \'/\' -f 3', returnStdout: true).trim() - } - echo env.HOTFIX_BRANCH - } - } - stage('Finalise version') { - steps { - sh "git checkout ${HOTFIX_BRANCH}" - sh "npm version patch" - script { - def packageFile = readJSON file: 'package.json' - env.HOTFIX_VERSION = packageFile.version - } - } - } - stage('Merge to main') { - steps { - sh "git checkout main" - sh "git merge ${HOTFIX_BRANCH}" - } - } - stage('Merge back to develop') { - steps { - sh "git checkout develop" - script { - def packageFile = readJSON file: 'package.json' - env.DEVELOP_VERSION = packageFile.version - } - sh "npm version ${HOTFIX_VERSION} --git-tag-version=false" - sh 'git commit -am "Update develop to hotfix version to avoid merge conflicts"' - sh "git merge main" - sh "npm version ${DEVELOP_VERSION} --git-tag-version=false" - sh 'git commit -am "Update develop version back to pre-merge state"' - } - } - stage('Push to Github') { - steps { - withCredentials([gitUsernamePassword(credentialsId: 'GITHUB_CRED', gitToolName: 'Default')]) { - sh 'git push origin develop:refs/heads/develop' - sh 'git push origin main:refs/heads/main' - } - } - } - stage('Cleanup hotfix branch') { - steps { - withCredentials([gitUsernamePassword(credentialsId: 'GITHUB_CRED', gitToolName: 'Default')]) { - sh 'git push origin :refs/heads/${HOTFIX_BRANCH}' - } - } - } - } - post { - always { - cleanWs() - } - } -} diff --git a/JenkinsBackup/Jenkinsfile-Hotfix-start.Backup b/JenkinsBackup/Jenkinsfile-Hotfix-start.Backup deleted file mode 100644 index 640c81b..0000000 --- a/JenkinsBackup/Jenkinsfile-Hotfix-start.Backup +++ /dev/null @@ -1,58 +0,0 @@ -pipeline { - agent any - environment { - GITHUB_CREDS = credentials('GITHUB_CRED') - } - options { - disableConcurrentBuilds() - timeout(time: 15, unit: 'MINUTES') - } - stages { - stage('Initialize env') { - steps { - sh "git config --global user.email \"jenkins@venly.io\"" - sh "git config --global user.name \"Jenkins\"" - withCredentials([gitUsernamePassword(credentialsId: 'GITHUB_CRED', gitToolName: 'Default')]) { - sh 'git fetch -p' - } - } - } - stage ('Create hotfix version + branch') { - steps { - sh 'npm version prepatch --preid=SNAPSHOT --git-tag-version=false' - script { - def packageFile = readJSON file: 'package.json' - env.RAW_HOTFIX_VERSION = packageFile.version - def versionMatcher = env.RAW_HOTFIX_VERSION =~ /(\d*\.\d*\.\d*)/ - if (versionMatcher.size() > 0) { - env.HOTFIX_VERSION = versionMatcher[0][0] - } - } - sh 'git checkout -b hotfix-${HOTFIX_VERSION}' - sh 'git commit -am "Create hotfix version"' - withCredentials([gitUsernamePassword(credentialsId: 'GITHUB_CRED', gitToolName: 'Default')]) { - sh 'git push origin HEAD:refs/heads/hotfix-${HOTFIX_VERSION}' - } - } - } - stage('Merge hotfix-branch back to develop') { - steps { - sh 'git checkout develop' - script { - def packageFile = readJSON file: 'package.json' - env.DEVELOP_VERSION = packageFile.version - } - sh "npm version ${RAW_HOTFIX_VERSION} --git-tag-version=false" - sh 'git commit -am "Update develop to hotfix version to avoid merge conflicts"' - sh "git merge hotfix-${HOTFIX_VERSION}" - sh "npm version ${DEVELOP_VERSION} --git-tag-version=false" - sh 'git commit -am "Update develop version back to pre-merge state"' - } - } - } - post { - always { - cleanWs() - } - } -} diff --git a/JenkinsBackup/Jenkinsfile-Release-finish.Backup b/JenkinsBackup/Jenkinsfile-Release-finish.Backup deleted file mode 100644 index 7c0a65c..0000000 --- a/JenkinsBackup/Jenkinsfile-Release-finish.Backup +++ /dev/null @@ -1,75 +0,0 @@ -pipeline { - agent any - environment { - GITHUB_CREDS = credentials('GITHUB_CRED') - } - options { - disableConcurrentBuilds() - timeout(time: 15, unit: 'MINUTES') - } - stages { - stage('Initialize env') { - steps { - sh "git config --global user.email \"jenkins@venly.io\"" - sh "git config --global user.name \"Jenkins\"" - withCredentials([gitUsernamePassword(credentialsId: 'GITHUB_CRED', gitToolName: 'Default')]) { - sh 'git fetch -p' - } - script { - env.RELEASE_BRANCH = sh (script: 'git branch -a | grep origin/release- | cut -d \'/\' -f 3', returnStdout: true).trim() - } - echo env.RELEASE_BRANCH - } - } - stage('Finalise version') { - steps { - sh "git checkout ${RELEASE_BRANCH}" - sh "npm version minor" - script { - def packageFile = readJSON file: 'package.json' - env.RELEASE_VERSION = packageFile.version - } - } - } - stage('Merge to main') { - steps { - sh "git checkout main" - sh "git merge ${RELEASE_BRANCH}" - } - } - stage('Merge back to develop') { - steps { - sh "git checkout develop" - script { - def packageFile = readJSON file: 'package.json' - env.DEVELOP_VERSION = packageFile.version - } - sh "npm version ${RELEASE_VERSION} --git-tag-version=false" - sh 'git commit -am "Update develop to release version to avoid merge conflicts"' - sh "git merge main" - sh "npm version ${DEVELOP_VERSION} --git-tag-version=false" - sh 'git commit -am "Update develop version back to pre-merge state"' - } - } - stage('Push to Github') { - steps { - withCredentials([gitUsernamePassword(credentialsId: 'GITHUB_CRED', gitToolName: 'Default')]) { - sh 'git push origin develop:refs/heads/develop' - sh 'git push origin main:refs/heads/main' - } - } - } - stage('Cleanup release branch') { - steps { - withCredentials([gitUsernamePassword(credentialsId: 'GITHUB_CRED', gitToolName: 'Default')]) { - sh 'git push origin :refs/heads/${RELEASE_BRANCH}' - } - } - } - } - post { - always { - cleanWs() - } - } -} diff --git a/JenkinsBackup/Jenkinsfile-Release-start.Backup b/JenkinsBackup/Jenkinsfile-Release-start.Backup deleted file mode 100644 index e902e5a..0000000 --- a/JenkinsBackup/Jenkinsfile-Release-start.Backup +++ /dev/null @@ -1,50 +0,0 @@ -pipeline { - agent any - environment { - GITHUB_CREDS = credentials('GITHUB_CRED') - } - options { - disableConcurrentBuilds() - timeout(time: 15, unit: 'MINUTES') - } - stages { - stage('Initialize env') { - steps { - sh "git config --global user.email \"jenkins@venly.io\"" - sh "git config --global user.name \"Jenkins\"" - } - } - stage ('Create release branch') { - steps { - script { - def packageFile = readJSON file: 'package.json' - env.RAW_RELEASE_VERSION = packageFile.version - def versionMatcher = env.RAW_RELEASE_VERSION =~ /(\d*\.\d*\.\d*)/ - if (versionMatcher.size() > 0) { - env.RELEASE_VERSION = versionMatcher[0][0] - } - } - sh "git checkout develop" - sh "git checkout -b release-${RELEASE_VERSION}" - withCredentials([gitUsernamePassword(credentialsId: 'GITHUB_CRED', gitToolName: 'Default')]) { - sh 'git push origin HEAD:refs/heads/release-${RELEASE_VERSION}' - } - } - } - stage ('Bump develop version') { - steps { - sh "git checkout develop" - sh "npm version preminor --preid=SNAPSHOT --git-tag-version=false" - sh 'git commit -am "bump develop version"' - withCredentials([gitUsernamePassword(credentialsId: 'GITHUB_CRED', gitToolName: 'Default')]) { - sh 'git push origin HEAD:refs/heads/develop' - } - } - } - } - post { - always { - cleanWs() - } - } -} diff --git a/JenkinsBackup/Jenkinsfile-release.Backup b/JenkinsBackup/Jenkinsfile-release.Backup deleted file mode 100644 index 738e95c..0000000 --- a/JenkinsBackup/Jenkinsfile-release.Backup +++ /dev/null @@ -1,66 +0,0 @@ -pipeline { - agent any - environment { - GITHUB_CREDS = credentials('GITHUB_CRED') - RELEASE_BRANCH = "release-${env.BUILD_DATE}" - } - options { - disableConcurrentBuilds() - timeout(time: 15, unit: 'MINUTES') - } - stages { - stage ('release branch and set version') { - steps { - sh "git config --global user.email \"jenkins@arkane.network\"" - sh "git config --global user.name \"Jenkins\"" - sh "git checkout -b ${RELEASE_BRANCH}" - sh "npm version minor" - withCredentials([usernamePassword(credentialsId: 'GITHUB_CRED', passwordVariable: 'GIT_PASSWORD', usernameVariable: 'GIT_USERNAME')]) { - sh 'git push https://${GIT_USERNAME}:${GIT_PASSWORD}@github.com/ArkaneNetwork/web3-react-venly.git HEAD:refs/heads/${RELEASE_BRANCH}' - sh 'git push https://${GIT_USERNAME}:${GIT_PASSWORD}@github.com/ArkaneNetwork/web3-react-venly.git --tags' - } - } - } - - stage ('merge and publish') { - environment { - NPM_KEY = credentials('NPM_KEY') - } - steps { - sh "git checkout master" - sh "git merge --no-ff ${RELEASE_BRANCH}" - sh "npm i" - sh "npm run build-ts" - sh "npm run build-js" - sh "printf '//registry.npmjs.org/:_authToken=' > .npmrc && printf '${NPM_KEY}' >> .npmrc" - sh 'npm publish' - withCredentials([usernamePassword(credentialsId: 'GITHUB_CRED', passwordVariable: 'GIT_PASSWORD', usernameVariable: 'GIT_USERNAME')]) { - sh 'rm .npmrc' - sh 'git add .' - sh 'git commit --allow-empty -m "changes during ${RELEASE_BRANCH}"' - sh 'git push https://${GIT_USERNAME}:${GIT_PASSWORD}@github.com/ArkaneNetwork/web3-react-venly.git HEAD:refs/heads/master' - sh 'git push https://${GIT_USERNAME}:${GIT_PASSWORD}@github.com/ArkaneNetwork/web3-react-venly.git --tags' - } - } - } - - stage ('backmerge to develop and increase dev version') { - steps { - sh "git checkout develop" - sh "git merge --no-ff master" - sh "npm version preminor --preid=develop --git-tag-version=false" - sh 'git add .' - sh 'git commit -m "bump develop version after ${RELEASE_BRANCH}"' - withCredentials([usernamePassword(credentialsId: 'GITHUB_CRED', passwordVariable: 'GIT_PASSWORD', usernameVariable: 'GIT_USERNAME')]) { - sh 'git push https://${GIT_USERNAME}:${GIT_PASSWORD}@github.com/ArkaneNetwork/web3-react-venly.git HEAD:refs/heads/develop' - } - } - } - } - - post { - always { - cleanWs() - } - } -} diff --git a/JenkinsBackup/Jenkinsfile.Backup b/JenkinsBackup/Jenkinsfile.Backup deleted file mode 100644 index 819de81..0000000 --- a/JenkinsBackup/Jenkinsfile.Backup +++ /dev/null @@ -1,87 +0,0 @@ -pipeline { - agent any - environment { - GITHUB_CREDS = credentials('GITHUB_CRED') - } - options { - disableConcurrentBuilds() - timeout(time: 15, unit: 'MINUTES') - } - stages { - stage('Bump version') { - when { - anyOf { - branch 'develop' - branch 'hotfix-*' - branch 'release-*' - } - } - steps { - sh "git config --global user.email \"jenkins@venly.io\"" - sh "git config --global user.name \"Jenkins\"" - sh "npm version prerelease --preid=develop" - } - } - stage('Build') { - steps { - sh "npm i" - sh "npm run build" - } - } - stage('Publish to npmjs') { - environment { - NPM_KEY = credentials('NPM_KEY') - } - when { - anyOf { - branch 'develop' - branch 'hotfix-*' - branch 'release-*' - branch 'main' - } - } - steps { - sh "printf '//registry.npmjs.org/:_authToken=' > .npmrc && printf '${NPM_KEY}' >> .npmrc" - script { - if (env.BRANCH_NAME == 'main') { - sh 'npm publish' - } else { - sh 'npm publish --tag ${BRANCH_NAME}' - } - } - withCredentials([usernamePassword(credentialsId: 'GITHUB_CRED', passwordVariable: 'GIT_PASSWORD', usernameVariable: 'GIT_USERNAME')]) { - sh 'git push https://${GIT_USERNAME}:${GIT_PASSWORD}@github.com/ArkaneNetwork/web3-react-venly.git HEAD:refs/heads/${BRANCH_NAME}' - sh 'git push https://${GIT_USERNAME}:${GIT_PASSWORD}@github.com/ArkaneNetwork/web3-react-venly.git --tags' - } - } - post { - always { - cleanWs(deleteDirs: true, patterns: [[pattern: '.npmrc', type: 'INCLUDE']]) - } - } - } - stage('Merge back to develop') { - when { - anyOf { - branch 'hotfix-*' - branch 'release-*' - } - } - steps { - withCredentials([usernamePassword(credentialsId: 'GITHUB_CRED', passwordVariable: 'GIT_PASSWORD', usernameVariable: 'GIT_USERNAME')]) { - sh 'git remote add mergeBack https://${GIT_USERNAME}:${GIT_PASSWORD}@github.com/ArkaneNetwork/web3-react-venly.git' - sh 'git fetch --no-tags mergeBack' - sh 'git reset --hard' - sh 'git checkout -b develop --track mergeBack/develop' - sh 'git merge ${GIT_COMMIT}' - sh 'git push mergeBack' - } - } - post { - always { - cleanWs(deleteDirs: true, patterns: [[pattern: '.git', type: 'INCLUDE']]) - } - } - } - } -} From 766061f837fd93e67887b8a8295ef901b1ee275c Mon Sep 17 00:00:00 2001 From: BjornMonnens Date: Mon, 22 Dec 2025 10:41:03 +0100 Subject: [PATCH 11/31] chore(VENLY-9049) security fixes --- package-lock.json | 51 +++++++++-------------------------------------- package.json | 5 ++++- 2 files changed, 13 insertions(+), 43 deletions(-) diff --git a/package-lock.json b/package-lock.json index c1fa375..de3b52a 100644 --- a/package-lock.json +++ b/package-lock.json @@ -7,6 +7,7 @@ "": { "name": "@venly/web3-react-venly", "version": "1.2.0-SNAPSHOT.0", + "license": "MIT", "dependencies": { "@venly/web3-provider": "^3.1.0", "@web3-react/types": "^8.1.2-beta.0" @@ -581,17 +582,6 @@ "loose-envify": "cli.js" } }, - "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/ms": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", @@ -626,12 +616,10 @@ } }, "node_modules/semver": { - "version": "7.3.8", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz", - "integrity": "sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==", - "dependencies": { - "lru-cache": "^6.0.0" - }, + "version": "7.7.3", + "resolved": "https://pkg.venly.io/repository/npm-group/semver/-/semver-7.7.3.tgz", + "integrity": "sha512-SdsKMrI9TdgjdweUSR9MweHA4EJ8YxHn8DFaDisvhVlUOe4BF1tLD7GAj0lIqWVl+dPb/rExr0Btby5loQm20Q==", + "license": "ISC", "bin": { "semver": "bin/semver.js" }, @@ -703,11 +691,6 @@ "node": ">=0.4" } }, - "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/zustand": { "version": "4.3.6", "resolved": "https://registry.npmjs.org/zustand/-/zustand-4.3.6.tgz", @@ -884,7 +867,7 @@ "requires": { "@types/debug": "^4.1.7", "debug": "^4.3.4", - "semver": "^7.3.8", + "semver": "^7.5.2", "superstruct": "^1.0.3" } }, @@ -1151,14 +1134,6 @@ "js-tokens": "^3.0.0 || ^4.0.0" } }, - "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==", - "requires": { - "yallist": "^4.0.0" - } - }, "ms": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", @@ -1184,12 +1159,9 @@ "integrity": "sha512-e2bDA2WJT0wxseVd4lsDP4+3ONX6HpMXQa1ZhFQ7SU+GjvORCmShbCMltrtIDfkYhVHrOcPtj+KhmDBdPdZD1g==" }, "semver": { - "version": "7.3.8", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz", - "integrity": "sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==", - "requires": { - "lru-cache": "^6.0.0" - } + "version": "7.7.3", + "resolved": "https://pkg.venly.io/repository/npm-group/semver/-/semver-7.7.3.tgz", + "integrity": "sha512-SdsKMrI9TdgjdweUSR9MweHA4EJ8YxHn8DFaDisvhVlUOe4BF1tLD7GAj0lIqWVl+dPb/rExr0Btby5loQm20Q==" }, "strip-hex-prefix": { "version": "1.0.0", @@ -1236,11 +1208,6 @@ "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==" }, - "yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" - }, "zustand": { "version": "4.3.6", "resolved": "https://registry.npmjs.org/zustand/-/zustand-4.3.6.tgz", diff --git a/package.json b/package.json index d60e5bd..faad126 100644 --- a/package.json +++ b/package.json @@ -36,5 +36,8 @@ }, "files": [ "dist" - ] + ], + "overrides": { + "semver": "^7.5.2" + } } From 8d23353561c066cc6483befddbadb041904bf8d0 Mon Sep 17 00:00:00 2001 From: Aleksander Ndoci Date: Thu, 2 Apr 2026 12:30:44 +0200 Subject: [PATCH 12/31] fix(VENLY-9223) fix vanta findings --- package-lock.json | 26 ++++++++++++++------------ 1 file changed, 14 insertions(+), 12 deletions(-) diff --git a/package-lock.json b/package-lock.json index de3b52a..4512162 100644 --- a/package-lock.json +++ b/package-lock.json @@ -108,9 +108,10 @@ } }, "node_modules/@ethersproject/bignumber/node_modules/bn.js": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-5.2.1.tgz", - "integrity": "sha512-eXRvHzWyYPBuB4NBy0cmYQjGitUrtqwbvlzP3G6VFnNRbsZQIxQ10PbKKHt8gZ/HW/D/747aDl+QkDqg3KQLMQ==" + "version": "5.2.3", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-5.2.3.tgz", + "integrity": "sha512-EAcmnPkxpntVL+DS7bO1zhcZNvCkxqtkd0ZY53h06GNQ3DEkkGZ/gKgmDv6DdZQGj9BgfSPKtJJ7Dp1GPP8f7w==", + "license": "MIT" }, "node_modules/@ethersproject/bytes": { "version": "5.7.0", @@ -390,9 +391,10 @@ "integrity": "sha512-mLQ4i2QO1ytvGWFWmcngKO//JXAQueZvwEKtjgQFM4jIK0kU+ytMfplL8j+n5mspOfjHwoAg+9yhb7BwAHm36g==" }, "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==" + "version": "4.12.3", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.3.tgz", + "integrity": "sha512-fGTi3gxV/23FTYdAoUtLYp6qySe2KE3teyZitipKNRuVYcBkoP/bB3guXN/XVKUe9mxCHXnc9C4ocyz8OmgN0g==", + "license": "MIT" }, "node_modules/case": { "version": "1.6.3", @@ -778,9 +780,9 @@ }, "dependencies": { "bn.js": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-5.2.1.tgz", - "integrity": "sha512-eXRvHzWyYPBuB4NBy0cmYQjGitUrtqwbvlzP3G6VFnNRbsZQIxQ10PbKKHt8gZ/HW/D/747aDl+QkDqg3KQLMQ==" + "version": "5.2.3", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-5.2.3.tgz", + "integrity": "sha512-EAcmnPkxpntVL+DS7bO1zhcZNvCkxqtkd0ZY53h06GNQ3DEkkGZ/gKgmDv6DdZQGj9BgfSPKtJJ7Dp1GPP8f7w==" } } }, @@ -980,9 +982,9 @@ "integrity": "sha512-mLQ4i2QO1ytvGWFWmcngKO//JXAQueZvwEKtjgQFM4jIK0kU+ytMfplL8j+n5mspOfjHwoAg+9yhb7BwAHm36g==" }, "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==" + "version": "4.12.3", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.3.tgz", + "integrity": "sha512-fGTi3gxV/23FTYdAoUtLYp6qySe2KE3teyZitipKNRuVYcBkoP/bB3guXN/XVKUe9mxCHXnc9C4ocyz8OmgN0g==" }, "case": { "version": "1.6.3", From 0eb2f5570e5cbc55025012679cedf7d415d60413 Mon Sep 17 00:00:00 2001 From: NicoPeeters Date: Fri, 10 Apr 2026 09:15:09 +0200 Subject: [PATCH 13/31] task() - Align Github Actions with Connect-SDK --- .github/actions/bump_version/action.yml | 26 ++++- .../actions/cleanup_npm_versions/action.yml | 45 ++++++++ .github/actions/hotfix_finish/action.yml | 102 ++++-------------- .github/actions/hotfix_start/action.yml | 85 +++------------ .github/actions/merge_back/action.yml | 10 +- .github/actions/publish_npm/action.yml | 45 ++++---- .../actions/read_package_version/action.yml | 22 ++++ .github/actions/release_finish/action.yml | 31 ++---- .github/actions/release_start/action.yml | 49 +-------- .github/workflows/build.yml | 50 ++++----- .github/workflows/hotfix_finish.yml | 23 ++-- .github/workflows/hotfix_start.yml | 23 ++-- .github/workflows/release_finish.yml | 23 ++-- .github/workflows/release_start.yml | 23 ++-- 14 files changed, 221 insertions(+), 336 deletions(-) create mode 100644 .github/actions/cleanup_npm_versions/action.yml create mode 100644 .github/actions/read_package_version/action.yml diff --git a/.github/actions/bump_version/action.yml b/.github/actions/bump_version/action.yml index 990d7cf..3237f45 100644 --- a/.github/actions/bump_version/action.yml +++ b/.github/actions/bump_version/action.yml @@ -1,9 +1,9 @@ -name: ๐Ÿ”– Bump Version -description: "Bump Version" +name: ๐Ÿ”– Bump Build Version +description: "Bump Build Version" inputs: token: - description: The VENLY_GITHUB_ACTIONS_TOKEN + description: GitHub token for authentication required: true outputs: @@ -28,8 +28,24 @@ runs: run: | #!/bin/bash set -x - new_version=$(npm version prerelease --preid=develop) + new_version=$(npm version prerelease --preid=develop --git-tag-version=false) new_version=${new_version#v} - echo "Bumped version to $new_version" + echo "Version after bump: $(jq -r '.version' package.json)" echo "new_version=$new_version" >> $GITHUB_ENV echo "new_version=$new_version" >> $GITHUB_OUTPUT + + - name: Commit version bump + id: commit_version_bump + shell: bash + run: | + #!/bin/bash + set -x + git commit -a -m ${{ steps.bump_version.outputs.new_version }} + + - name: Push version bump + id: push_version_bump + shell: bash + run: | + #!/bin/bash + set -x + git push origin diff --git a/.github/actions/cleanup_npm_versions/action.yml b/.github/actions/cleanup_npm_versions/action.yml new file mode 100644 index 0000000..ff37fb5 --- /dev/null +++ b/.github/actions/cleanup_npm_versions/action.yml @@ -0,0 +1,45 @@ +name: ๐Ÿงน Cleanup Old Develop Versions +description: "Remove old develop pre-release versions from npm where the base version is <= the just-released version" + +runs: + using: "composite" + steps: + - name: ๐Ÿงน Cleanup old develop versions + shell: bash + run: | + #!/bin/bash + set -x + + package_name=$(jq -r '.name' package.json) + released_version="$published_version" + + if [[ -z "$released_version" ]]; then + echo "No published_version found, skipping cleanup" + exit 0 + fi + + echo "Released version: $released_version" + + # Set registry for @venly scope + npm config set @venly:registry https://registry.npmjs.org/ + + # Get all versions from npm + all_versions=$(npm view "$package_name" versions --json 2>/dev/null | jq -r '.[]') + + unpublished_count=0 + + for version in $all_versions; do + # Only target develop pre-release versions + if [[ "$version" =~ ^([0-9]+\.[0-9]+\.[0-9]+)-develop\.[0-9]+$ ]]; then + version_base="${BASH_REMATCH[1]}" + + # Check if version_base <= released_version (sort -V puts the higher version last) + higher=$(printf '%s\n%s' "$version_base" "$released_version" | sort -V | tail -1) + if [[ "$higher" == "$released_version" ]]; then + echo "Unpublishing ${package_name}@${version}" + npm unpublish "${package_name}@${version}" && ((unpublished_count++)) || echo "Failed to unpublish ${version}, continuing..." + fi + fi + done + + echo "Cleanup complete. Unpublished ${unpublished_count} old develop version(s)." diff --git a/.github/actions/hotfix_finish/action.yml b/.github/actions/hotfix_finish/action.yml index 88e2352..7a0e13a 100644 --- a/.github/actions/hotfix_finish/action.yml +++ b/.github/actions/hotfix_finish/action.yml @@ -2,14 +2,11 @@ name: "Hotfix Node Applicaton Finish" description: "Hotfix Node Applicaton Finish" inputs: token: - description: The VENLY_GITHUB_ACTIONS_TOKEN + description: GitHub token for authentication required: true node_version: default: 18.x description: Node Version to use - work_directory: - description: Optional path to set for the working directory - required: false runs: using: "composite" steps: @@ -17,7 +14,7 @@ runs: shell: bash run: | echo "๐Ÿ  Setting HOME environment variable..." - echo "HOME=${{ runner.workspace }}" >> $GITHUB_ENV + echo "HOME=${{ github.workspace }}" >> $GITHUB_ENV - name: Setup Git Credentials ๐Ÿ”‘ uses: oleksiyrudenko/gha-git-credentials@v2.1.1 @@ -28,26 +25,6 @@ runs: actor: ${{ github.actor }} token: ${{ inputs.token }} - # Determine the production branch name Master Or Main - - name: Determine Master Or Main ๐ŸŒ - shell: bash - run: | - #!/bin/bash - set -x - echo "๐Ÿ” Determining the production branch (Master or Main)..." - git fetch -p - BRANCHES=$(git branch -r | grep -E 'origin/main|origin/master') - echo "Remote branches: $BRANCHES" - if [ -z "$BRANCHES" ]; then - echo "โŒ No 'main' or 'master' branch found." - else - for BRANCH in $BRANCHES; do - BRANCH_NAME=$(echo $BRANCH | cut -d '/' -f 2) - echo "production_branch=$BRANCH_NAME" >> $GITHUB_ENV - echo "๐Ÿš€ Production Branch is $BRANCH_NAME" - done - fi - # Checkout code to production branch - name: Checkout production branch shell: bash @@ -55,10 +32,10 @@ runs: #!/bin/bash set -x echo "๐Ÿ” Make sure we are on the production Branch ๐Ÿ”" - git switch ${{ env.production_branch }} + git switch main - name: Setup Node.js ${{ inputs.node_version }} ๐Ÿ“ฆ - uses: actions/setup-node@v3 + uses: actions/setup-node@v4 id: node_setup with: node-version: ${{ inputs.node_version }} @@ -135,27 +112,10 @@ runs: fi # Read package.json for version - - name: โ” Get npm version for hotfix โ” - shell: bash - run: | - #!/bin/bash - set -x - if [ -n "${{ inputs.work_directory }}" ]; then - cd "${{ inputs.work_directory }}" - fi - PACKAGE_JSON_PATH="./package.json" - - echo "๐Ÿ“š Reading the version from package.json for the hotfix..." - if [[ -n "$PACKAGE_JSON_PATH" ]]; then - VERSION=$(jq -r '.version' "$PACKAGE_JSON_PATH") - if [[ "$VERSION" == "null" || -z "$VERSION" ]]; then - echo "No version field found in $PACKAGE_JSON_PATH" - echo "hotfix_version="0.0.0"" >> $GITHUB_ENV - else - echo "Version in $PACKAGE_JSON_PATH is $VERSION" - echo "hotfix_version=$VERSION" >> $GITHUB_ENV - fi - fi + - name: Read hotfix package version + uses: ./.github/actions/read_package_version + with: + env_var_name: hotfix_version # Merge to Production Branch - name: ๐Ÿ”€ Checkout and Merge to Production Branch @@ -164,8 +124,8 @@ runs: set -x echo "๐Ÿ”„ Fetching and switching to the production branch..." git fetch origin - git checkout ${{ env.production_branch }} - git pull origin ${{ env.production_branch }} + git checkout main + git pull origin main echo "๐Ÿ”„ Merging the hotfix branch..." git merge ${{ env.hotfix_branch }} --no-commit --no-ff @@ -179,13 +139,13 @@ runs: exit 1 else echo "โœ… Merge successful. Committing the merge..." - git commit -m "Merge hotfix branch ${{ env.hotfix_branch }} into ${{ env.production_branch }}" - git push origin ${{ env.production_branch }} + git commit -m "Merge hotfix branch ${{ env.hotfix_branch }} into main" + git push origin main fi # Publish Hotfix - name: ๐Ÿš€ Publish Hotfix - uses: softprops/action-gh-release@v0.1.15 + uses: softprops/action-gh-release@v2 with: tag_name: ${{ env.npm_hotfix_version }} token: ${{ inputs.token }} @@ -200,28 +160,10 @@ runs: git status # Read package.json for version - - - name: โ” Get npm version for develop โ” - shell: bash - run: | - #!/bin/bash - set -x - if [ -n "${{ inputs.work_directory }}" ]; then - cd "${{ inputs.work_directory }}" - fi - PACKAGE_JSON_PATH="./package.json" - - echo "๐Ÿ“š Reading the version from package.json for the develop branch..." - if [[ -n "$PACKAGE_JSON_PATH" ]]; then - VERSION=$(jq -r '.version' "$PACKAGE_JSON_PATH") - if [[ "$VERSION" == "null" || -z "$VERSION" ]]; then - echo "No version field found in $PACKAGE_JSON_PATH" - echo "develop_version="0.0.0"" >> $GITHUB_ENV - else - echo "Version in $PACKAGE_JSON_PATH is $VERSION" - echo "develop_version=$VERSION" >> $GITHUB_ENV - fi - fi + - name: Read develop package version + uses: ./.github/actions/read_package_version + with: + env_var_name: develop_version # Merge Back to develop - name: ๐Ÿ”€ Merge To Develop @@ -237,8 +179,8 @@ runs: # Step 2: Commit changes for hotfix version git commit -am "Update develop to hotfix version ${{ env.hotfix_version }} to avoid merge conflicts" - # Step 3: Merge the production branch with - MERGE_OUTPUT=$(git merge "${{ env.production_branch }}" 2>&1) + # Step 3: Merge the production branch + MERGE_OUTPUT=$(git merge "main" 2>&1) MERGE_STATUS=$? echo "Merge Output: $MERGE_OUTPUT" echo "Merge Status: $MERGE_STATUS" @@ -256,8 +198,8 @@ runs: #!/bin/bash set -x echo "๐Ÿ“ค Pushing changes to develop and production branches..." - git push origin develop:refs/heads/develop - git push origin ${{ env.production_branch }}:refs/heads/${{ env.production_branch }} + git push origin develop:refs/heads/develop + git push origin main:refs/heads/main # Cleanup Release Branch - name: ๐Ÿงน Delete Hotfix Branch @@ -268,7 +210,7 @@ runs: # ===================================================== # Hotfix Flow Info # ===================================================== - - name: โ„น๏ธ Display Hotfix Process Inf + - name: โ„น๏ธ Display Hotfix Process Info shell: bash run: | echo "๐Ÿš€ Hotfix Process Details ๐Ÿš€" diff --git a/.github/actions/hotfix_start/action.yml b/.github/actions/hotfix_start/action.yml index c60c3f6..1560414 100644 --- a/.github/actions/hotfix_start/action.yml +++ b/.github/actions/hotfix_start/action.yml @@ -2,14 +2,11 @@ name: "Hotfix Node Applicaton Start" description: "Hotfix Node Applicaton Start" inputs: token: - description: The VENLY_GITHUB_ACTIONS_TOKEN + description: GitHub token for authentication required: true node_version: default: 18.x description: Node Version to use - work_directory: - description: Optional path to set for the working directory - required: false runs: using: "composite" steps: @@ -17,7 +14,7 @@ runs: shell: bash run: | echo "๐Ÿ  Setting HOME environment variable..." - echo "HOME=${{ runner.workspace }}" >> $GITHUB_ENV + echo "HOME=${{ github.workspace }}" >> $GITHUB_ENV - name: Setup Git Credentials ๐Ÿ”‘ uses: oleksiyrudenko/gha-git-credentials@v2.1.1 @@ -28,26 +25,6 @@ runs: actor: ${{ github.actor }} token: ${{ inputs.token }} - # Determine the production branch name Master Or Main - - name: Determine Master Or Main ๐ŸŒ - shell: bash - run: | - #!/bin/bash - set -x - echo "๐Ÿ” Determining the production branch (Master or Main)..." - git fetch -p - BRANCHES=$(git branch -r | grep -E 'origin/main|origin/master') - echo "Remote branches: $BRANCHES" - if [ -z "$BRANCHES" ]; then - echo "โŒ No 'main' or 'master' branch found." - else - for BRANCH in $BRANCHES; do - BRANCH_NAME=$(echo $BRANCH | cut -d '/' -f 2) - echo "production_branch=$BRANCH_NAME" >> $GITHUB_ENV - echo "๐Ÿš€ Production Branch is $BRANCH_NAME" - done - fi - # Checkout code to production branch - name: Checkout production branch shell: bash @@ -55,10 +32,10 @@ runs: #!/bin/bash set -x echo "๐Ÿ” Make sure we are on the production Branch ๐Ÿ”" - git switch ${{ env.production_branch }} + git switch main - name: Setup Node.js ${{ inputs.node_version }} ๐Ÿ“ฆ - uses: actions/setup-node@v3 + uses: actions/setup-node@v4 id: node_setup with: node-version: ${{ inputs.node_version }} @@ -78,29 +55,10 @@ runs: npm version prepatch --preid=SNAPSHOT --git-tag-version=false # Read package.json for version - - - name: โ” get-npm-version โ” - id: package-version - shell: bash - run: | - #!/bin/bash - set -x - if [ -n "${{ inputs.work_directory }}" ]; then - cd "${{ inputs.work_directory }}" - fi - PACKAGE_JSON_PATH="./package.json" - - echo "๐Ÿ” Reading package.json for version..." - if [[ -n "$PACKAGE_JSON_PATH" ]]; then - VERSION=$(jq -r '.version' "$PACKAGE_JSON_PATH") - if [[ "$VERSION" == "null" || -z "$VERSION" ]]; then - echo "No version field found in $PACKAGE_JSON_PATH" - echo "hotfix_version_raw="0.0.0"" >> $GITHUB_ENV - else - echo "Version in $PACKAGE_JSON_PATH is $VERSION" - echo "hotfix_version_raw=$VERSION" >> $GITHUB_ENV - fi - fi + - name: Read hotfix package version + uses: ./.github/actions/read_package_version + with: + env_var_name: hotfix_version_raw # Extract semantic version - name: Extract semantic version @@ -152,28 +110,10 @@ runs: git status # Read package.json for version - # Get npm version - - name: โ” Get npm version for develop branch โ” - shell: bash - run: | - #!/bin/bash - set -x - if [ -n "${{ inputs.work_directory }}" ]; then - cd "${{ inputs.work_directory }}" - fi - PACKAGE_JSON_PATH="./package.json" - - echo "๐Ÿ“š Reading the version from package.json for the develop branch..." - if [[ -n "$PACKAGE_JSON_PATH" ]]; then - VERSION=$(jq -r '.version' "$PACKAGE_JSON_PATH") - if [[ "$VERSION" == "null" || -z "$VERSION" ]]; then - echo "โš ๏ธ No version field found in $PACKAGE_JSON_PATH" - echo "current-version-develop="0.0.0"" >> $GITHUB_ENV - else - echo "โœ… Version in $PACKAGE_JSON_PATH is $VERSION" - echo "current-version-develop=$VERSION" >> $GITHUB_ENV - fi - fi + - name: Read develop package version + uses: ./.github/actions/read_package_version + with: + env_var_name: current-version-develop # Merge Back to develop - name: Merge To Develop Branch ๐Ÿ”„ @@ -207,7 +147,6 @@ runs: # Hotfix Flow Info # ===================================================== - name: โ„น๏ธ Display Hotfix Process Info - if: ${{ inputs.flow == 'finish' }} shell: bash run: | echo "๐Ÿš€ Hotfix Process Details ๐Ÿš€" diff --git a/.github/actions/merge_back/action.yml b/.github/actions/merge_back/action.yml index a82807b..cec23b4 100644 --- a/.github/actions/merge_back/action.yml +++ b/.github/actions/merge_back/action.yml @@ -1,11 +1,11 @@ name: "Merge Back to Development" -description: "Build NodeJs container" +description: "Merge branch back to develop" inputs: branch: description: The branch to Merge required: true token: - description: The VENLY_GITHUB_ACTIONS_TOKEN + description: GitHub token for authentication required: true runs: using: "composite" @@ -17,14 +17,14 @@ runs: - uses: oleksiyrudenko/gha-git-credentials@v2.1.1 with: global: false - name: ${{ github.actor }} + name: ${{ github.actor }} email: ${{ github.actor }}@venly.io - actor: ${{ github.actor }} + actor: ${{ github.actor }} token: ${{ inputs.token }} - name: Merge back to develop env: - GIT_USERNAME: ${{ github.actor }} + GIT_USERNAME: ${{ github.actor }} GITHUB_TOKEN: ${{ inputs.token }} shell: bash run: | diff --git a/.github/actions/publish_npm/action.yml b/.github/actions/publish_npm/action.yml index d2ac1b5..3f006a7 100644 --- a/.github/actions/publish_npm/action.yml +++ b/.github/actions/publish_npm/action.yml @@ -1,13 +1,6 @@ name: ๐Ÿš€ Publish description: "Publish To Npm" -inputs: - npm_token: - description: The npm Token - required: true - token: - description: The Github PAT Token - required: true outputs: published_version: description: "Published Version from package.json" @@ -19,32 +12,36 @@ runs: - name: ๐Ÿš€ Publish to npm id: publish shell: bash - env: - NPM_KEY: ${{ inputs.npm_token }} run: | #!/bin/bash set -x - # Authenticate with npm using the token - printf '//registry.npmjs.org/:_authToken=${NPM_KEY}\n@venly:registry=https://registry.npmjs.org/' > .npmrc + # Get current version from package.json + current_version=$(jq -r '.version' package.json) + package_name=$(jq -r '.name' package.json) - # Debug information - npm config get registry - npm whoami + # Set registry for @venly scope + npm config set @venly:registry https://registry.npmjs.org/ - # Publish the npm package and capture the output - if [ "${GITHUB_REF}" == "refs/heads/master" ]; then + # Check if version already exists + if npm view ${package_name}@${current_version} version &>/dev/null; then + echo "Version ${current_version} already exists in npm registry, skipping publish" + echo "published_version=${current_version}" >> $GITHUB_ENV + echo "published_version=${current_version}" >> $GITHUB_OUTPUT + exit 0 + fi + + # Publish the npm package (authenticated via OIDC trusted publishing) + if [ "${{ github.ref }}" == "refs/heads/main" ]; then npm publish --verbose else - npm publish --tag $(echo "${GITHUB_REF}" | sed 's|refs/heads/||') --verbose + npm publish --tag $(echo "${{ github.ref }}" | sed 's|refs/heads/||') --verbose fi - # Capture the version from package.json - published_version=$(jq -r '.version' package.json) + # Push tags + git push -f --tags origin HEAD:${{ github.ref_name }} # Output the version - echo "Published version: $published_version" - - # Export the version to GitHub Actions environment variables - echo "published_version=$published_version" >> $GITHUB_ENV - echo "published_version=$published_version" >> $GITHUB_OUTPUT + echo "Published version: ${current_version}" + echo "published_version=${current_version}" >> $GITHUB_ENV + echo "published_version=${current_version}" >> $GITHUB_OUTPUT diff --git a/.github/actions/read_package_version/action.yml b/.github/actions/read_package_version/action.yml new file mode 100644 index 0000000..4e817e0 --- /dev/null +++ b/.github/actions/read_package_version/action.yml @@ -0,0 +1,22 @@ +name: "Read Package Version" +description: "Read version from package.json and set it as an environment variable" +inputs: + env_var_name: + description: Name of the environment variable to set with the version value + required: true +runs: + using: "composite" + steps: + - name: Read version from package.json + shell: bash + run: | + #!/bin/bash + set -x + VERSION=$(jq -r '.version' "./package.json") + if [[ "$VERSION" == "null" || -z "$VERSION" ]]; then + echo "No version field found in package.json" + echo "${{ inputs.env_var_name }}=0.0.0" >> $GITHUB_ENV + else + echo "Version in package.json is $VERSION" + echo "${{ inputs.env_var_name }}=$VERSION" >> $GITHUB_ENV + fi diff --git a/.github/actions/release_finish/action.yml b/.github/actions/release_finish/action.yml index 98cc1fc..4301b5d 100644 --- a/.github/actions/release_finish/action.yml +++ b/.github/actions/release_finish/action.yml @@ -2,7 +2,7 @@ name: "Release Node Applicaton Finish" description: "Release Node Applicaton Finish" inputs: token: - description: The VENLY_GITHUB_ACTIONS_TOKEN + description: GitHub token for authentication required: true node_version: default: 18.x @@ -14,22 +14,6 @@ runs: shell: bash run: echo "HOME=${{ github.workspace }}" >> $GITHUB_ENV - # Determine the production branch name Master Or Main - - name: Determine Master Or Main - shell: bash - run: | - git fetch -p - BRANCHES=$(git branch -r | grep -E 'origin/main|origin/master') - if [ -z "$BRANCHES" ]; then - echo "No 'main' or 'master' branch found." - else - for BRANCH in $BRANCHES; do - BRANCH_NAME=$(echo $BRANCH | cut -d '/' -f 2) - echo "production_branch=$BRANCH_NAME" >> $GITHUB_ENV - echo "Production Branch is $BRANCH_NAME" - done - fi - - uses: oleksiyrudenko/gha-git-credentials@v2.1.1 with: global: false @@ -44,9 +28,6 @@ runs: with: node-version: ${{ inputs.node_version }} check-latest: true - - name: DEBUG - shell: bash - run: which npm # ===================================================== # Release # ===================================================== @@ -79,12 +60,12 @@ runs: RELEASE_VERSION=$(jq -r '.version' package.json) echo "RELEASE_VERSION=$RELEASE_VERSION" >> $GITHUB_ENV - - name: Merge to master + - name: Merge to main shell: bash run: | #!/bin/bash set -x - git switch ${{ env.production_branch }} + git switch main git merge ${{ env.release_branch }} # Merge Back to develop @@ -104,7 +85,7 @@ runs: git commit -am "Update develop to release version to avoid merge conflicts" # Merge the production branch in develop - git merge ${{ env.production_branch }} + git merge main # Update npm version back to the develop version npm version $DEVELOP_VERSION --git-tag-version=false @@ -116,8 +97,8 @@ runs: run: | #!/bin/bash set -x - git push --tags origin develop:refs/heads/develop - git push origin ${{ env.production_branch }}:refs/heads/${{ env.production_branch }} + git push --tags origin develop:refs/heads/develop + git push origin main:refs/heads/main # Cleanup Release Branch - name: Delete branch in specific repository with a specific owner diff --git a/.github/actions/release_start/action.yml b/.github/actions/release_start/action.yml index b4e6439..708c348 100644 --- a/.github/actions/release_start/action.yml +++ b/.github/actions/release_start/action.yml @@ -2,14 +2,11 @@ name: "Release Node Applicaton Start" description: "Release Node Applicaton Start" inputs: token: - description: The VENLY_GITHUB_ACTIONS_TOKEN + description: GitHub token for authentication required: true node_version: default: 18.x description: Node Version to use - work_directory: - description: Optional path to set for the working directory - required: false runs: using: "composite" steps: @@ -17,24 +14,6 @@ runs: shell: bash run: echo "HOME=${{ github.workspace }}" >> $GITHUB_ENV - # Determine the production branch name Master Or Main - - name: Determine Master Or Main - shell: bash - run: | - #!/bin/bash - set -x - git fetch -p - BRANCHES=$(git branch -r | grep -E 'origin/main|origin/master') - if [ -z "$BRANCHES" ]; then - echo "No 'main' or 'master' branch found." - else - for BRANCH in $BRANCHES; do - BRANCH_NAME=$(echo $BRANCH | cut -d '/' -f 2) - echo "production_branch=$BRANCH_NAME" >> $GITHUB_ENV - echo "Production Branch is $BRANCH_NAME" - done - fi - - uses: oleksiyrudenko/gha-git-credentials@v2.1.1 with: global: false @@ -72,28 +51,10 @@ runs: fi # Read package.json for version - - name: โ” get-npm-version โ” - id: package-version - shell: bash - run: | - #!/bin/bash - set -x - if [ -n "${{ inputs.work_directory }}" ]; then - cd "${{ inputs.work_directory }}" - fi - PACKAGE_JSON_PATH="./package.json" - - echo "Looking for package.json in" - if [[ -n "$PACKAGE_JSON_PATH" ]]; then - VERSION=$(jq -r '.version' "$PACKAGE_JSON_PATH") - if [[ "$VERSION" == "null" || -z "$VERSION" ]]; then - echo "No version field found in $PACKAGE_JSON_PATH" - echo "release_version_raw="0.0.0"" >> $GITHUB_ENV - else - echo "Version in $PACKAGE_JSON_PATH is $VERSION" - echo "release_version_raw=$VERSION" >> $GITHUB_ENV - fi - fi + - name: Read package version + uses: ./.github/actions/read_package_version + with: + env_var_name: release_version_raw - name: Extract semantic version shell: bash diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index b6b78fb..4d60edb 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -2,7 +2,9 @@ name: ๐Ÿ—๏ธ Build on: push: paths-ignore: - - .github/** + - ".github/**" + - "package.json" + - "package-lock.json" pull_request: workflow_dispatch: concurrency: @@ -10,44 +12,43 @@ concurrency: cancel-in-progress: true permissions: - actions: read - checks: write contents: write - deployments: read + actions: read id-token: write - issues: read - discussions: read - packages: read - pages: read - pull-requests: read - repository-projects: read - security-events: read - statuses: read -run-name: ๐Ÿ—๏ธ Build ${{ github.ref_name }} + +run-name: ๐Ÿ—๏ธ Build ${{ github.ref_name }} jobs: build: runs-on: ubuntu-latest steps: + - name: ๐Ÿ”‘ Generate CI token + if: (github.event_name == 'push' || github.event_name == 'workflow_dispatch') && (startsWith(github.ref, 'refs/heads/develop') || startsWith(github.ref, 'refs/heads/main') || startsWith(github.ref, 'refs/heads/hotfix-') || startsWith(github.ref, 'refs/heads/release-')) + id: app-token + uses: actions/create-github-app-token@v1 + with: + app-id: ${{ secrets.CI_BOT_APP_ID }} + private-key: ${{ secrets.CI_BOT_PRIVATE_KEY }} + - name: โœ… Checkout uses: actions/checkout@v4 with: - token: ${{ secrets.VENLY_GITHUB_ACTIONS_TOKEN }} + token: ${{ steps.app-token.outputs.token || github.token }} - name: ๐Ÿ” Get Version uses: ./.github/actions/get_version - name: โฌ†๏ธ Bump Version - if: github.event_name == 'push' || github.event_name == 'workflow_dispatch' && (startsWith(github.ref, 'refs/heads/develop') || startsWith(github.ref, 'refs/heads/hotfix-') || startsWith(github.ref, 'refs/heads/release-')) + if: (github.event_name == 'push' || github.event_name == 'workflow_dispatch') && (startsWith(github.ref, 'refs/heads/develop') || startsWith(github.ref, 'refs/heads/hotfix-') || startsWith(github.ref, 'refs/heads/release-')) uses: ./.github/actions/bump_version with: - token: ${{ secrets.VENLY_GITHUB_ACTIONS_TOKEN }} + token: ${{ steps.app-token.outputs.token }} - - name: ๐Ÿ› ๏ธ Setup Node.js 16.x - uses: actions/setup-node@v3 + - name: ๐Ÿ› ๏ธ Setup Node.js + uses: actions/setup-node@v4 id: node_setup with: - node-version: 16.x + node-version: 24.x - name: ๐Ÿ—๏ธ Build Node run: | @@ -57,15 +58,16 @@ jobs: npm run build - name: ๐Ÿš€ Publish Npm - if: github.event_name == 'push' || github.event_name == 'workflow_dispatch' && (startsWith(github.ref, 'refs/heads/develop') || startsWith(github.ref, 'refs/heads/hotfix-') || startsWith(github.ref, 'refs/heads/release-')) + if: (github.event_name == 'push' || github.event_name == 'workflow_dispatch') && (startsWith(github.ref, 'refs/heads/develop') || startsWith(github.ref, 'refs/heads/main') || startsWith(github.ref, 'refs/heads/hotfix-') || startsWith(github.ref, 'refs/heads/release-')) uses: ./.github/actions/publish_npm - with: - npm_token: ${{ secrets.NPM_KEY }} - token: ${{ secrets.VENLY_GITHUB_ACTIONS_TOKEN }} + + - name: ๐Ÿงน Cleanup Old Develop Versions + if: (github.event_name == 'push' || github.event_name == 'workflow_dispatch') && github.ref == 'refs/heads/main' + uses: ./.github/actions/cleanup_npm_versions - name: ๐Ÿ”„ Merge Back if: startsWith(github.ref, 'refs/heads/hotfix-') || startsWith(github.ref, 'refs/heads/release-') uses: ./.github/actions/merge_back with: branch: ${{ github.ref_name }} - token: ${{ secrets.VENLY_GITHUB_ACTIONS_TOKEN }} + token: ${{ steps.app-token.outputs.token }} diff --git a/.github/workflows/hotfix_finish.yml b/.github/workflows/hotfix_finish.yml index eb5153e..95fb900 100644 --- a/.github/workflows/hotfix_finish.yml +++ b/.github/workflows/hotfix_finish.yml @@ -2,29 +2,24 @@ name: ๐Ÿฉน Hotfix Finish on: workflow_dispatch: permissions: - actions: read - checks: write contents: write - deployments: read - id-token: write - issues: write - discussions: read - packages: read - pages: read - pull-requests: write - repository-projects: read - security-events: read - statuses: read run-name: ๐Ÿฉน hotfix-finish jobs: hotfix: runs-on: ubuntu-latest steps: + - name: ๐Ÿ”‘ Generate CI token + id: app-token + uses: actions/create-github-app-token@v1 + with: + app-id: ${{ secrets.CI_BOT_APP_ID }} + private-key: ${{ secrets.CI_BOT_PRIVATE_KEY }} + - name: โœ… Checkout uses: actions/checkout@v4 with: - token: ${{ secrets.VENLY_GITHUB_ACTIONS_TOKEN }} + token: ${{ steps.app-token.outputs.token }} fetch-depth: 0 - uses: ./.github/actions/hotfix_finish with: - token: ${{ secrets.VENLY_GITHUB_ACTIONS_TOKEN }} + token: ${{ steps.app-token.outputs.token }} diff --git a/.github/workflows/hotfix_start.yml b/.github/workflows/hotfix_start.yml index 76108c3..d3e8d3b 100644 --- a/.github/workflows/hotfix_start.yml +++ b/.github/workflows/hotfix_start.yml @@ -2,29 +2,24 @@ name: ๐Ÿค• Hotfix Start on: workflow_dispatch: permissions: - actions: read - checks: write contents: write - deployments: read - id-token: write - issues: write - discussions: read - packages: read - pages: read - pull-requests: write - repository-projects: read - security-events: read - statuses: read run-name: ๐Ÿค• hotfix-start jobs: hotfix: runs-on: ubuntu-latest steps: + - name: ๐Ÿ”‘ Generate CI token + id: app-token + uses: actions/create-github-app-token@v1 + with: + app-id: ${{ secrets.CI_BOT_APP_ID }} + private-key: ${{ secrets.CI_BOT_PRIVATE_KEY }} + - name: โœ… Checkout uses: actions/checkout@v4 with: - token: ${{ secrets.VENLY_GITHUB_ACTIONS_TOKEN }} + token: ${{ steps.app-token.outputs.token }} fetch-depth: 0 - uses: ./.github/actions/hotfix_start with: - token: ${{ secrets.VENLY_GITHUB_ACTIONS_TOKEN }} + token: ${{ steps.app-token.outputs.token }} diff --git a/.github/workflows/release_finish.yml b/.github/workflows/release_finish.yml index efb731a..d5134b4 100644 --- a/.github/workflows/release_finish.yml +++ b/.github/workflows/release_finish.yml @@ -2,29 +2,24 @@ name: ๐Ÿ›ฌ Release Finish on: workflow_dispatch: permissions: - actions: read - checks: write contents: write - deployments: read - id-token: write - issues: write - discussions: read - packages: read - pages: read - pull-requests: write - repository-projects: read - security-events: read - statuses: read run-name: ๐Ÿ›ฌ release-finish jobs: release: runs-on: ubuntu-latest steps: + - name: ๐Ÿ”‘ Generate CI token + id: app-token + uses: actions/create-github-app-token@v1 + with: + app-id: ${{ secrets.CI_BOT_APP_ID }} + private-key: ${{ secrets.CI_BOT_PRIVATE_KEY }} + - name: โœ… Checkout uses: actions/checkout@v4 with: - token: ${{ secrets.VENLY_GITHUB_ACTIONS_TOKEN }} + token: ${{ steps.app-token.outputs.token }} fetch-depth: 0 - uses: ./.github/actions/release_finish with: - token: ${{ secrets.VENLY_GITHUB_ACTIONS_TOKEN }} + token: ${{ steps.app-token.outputs.token }} diff --git a/.github/workflows/release_start.yml b/.github/workflows/release_start.yml index dc286cf..997e0c8 100644 --- a/.github/workflows/release_start.yml +++ b/.github/workflows/release_start.yml @@ -2,29 +2,24 @@ name: ๐Ÿ›ซ Release Start on: workflow_dispatch: permissions: - actions: read - checks: write contents: write - deployments: read - id-token: write - issues: write - discussions: read - packages: read - pages: read - pull-requests: write - repository-projects: read - security-events: read - statuses: read run-name: ๐Ÿ›ซ release-start jobs: release: runs-on: ubuntu-latest steps: + - name: ๐Ÿ”‘ Generate CI token + id: app-token + uses: actions/create-github-app-token@v1 + with: + app-id: ${{ secrets.CI_BOT_APP_ID }} + private-key: ${{ secrets.CI_BOT_PRIVATE_KEY }} + - name: โœ… Checkout uses: actions/checkout@v4 with: - token: ${{ secrets.VENLY_GITHUB_ACTIONS_TOKEN }} + token: ${{ steps.app-token.outputs.token }} fetch-depth: 0 - uses: ./.github/actions/release_start with: - token: ${{ secrets.VENLY_GITHUB_ACTIONS_TOKEN }} + token: ${{ steps.app-token.outputs.token }} From 2afc8f6c0d5d82c8ee47996411474a893e1afb38 Mon Sep 17 00:00:00 2001 From: nico-ptrs Date: Fri, 10 Apr 2026 07:15:33 +0000 Subject: [PATCH 14/31] 1.2.0-develop.0 --- package-lock.json | 4 ++-- package.json | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/package-lock.json b/package-lock.json index 4512162..498eda0 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "@venly/web3-react-venly", - "version": "1.2.0-SNAPSHOT.0", + "version": "1.2.0-develop.0", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "@venly/web3-react-venly", - "version": "1.2.0-SNAPSHOT.0", + "version": "1.2.0-develop.0", "license": "MIT", "dependencies": { "@venly/web3-provider": "^3.1.0", diff --git a/package.json b/package.json index faad126..7089fdc 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@venly/web3-react-venly", - "version": "1.2.0-SNAPSHOT.0", + "version": "1.2.0-develop.0", "description": "Venly connector for Web3-React", "type": "commonjs", "types": "./dist/index.d.ts", From 94c40d5da70a1e6e9601e20a04c79e5e7ed1b6d1 Mon Sep 17 00:00:00 2001 From: NicoPeeters Date: Fri, 10 Apr 2026 10:49:07 +0200 Subject: [PATCH 15/31] task() - Align Github Actions with Connect-SDK --- package-lock.json | 1385 +++++++++++++++++++-------------------------- 1 file changed, 575 insertions(+), 810 deletions(-) diff --git a/package-lock.json b/package-lock.json index 498eda0..f5914b6 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "@venly/web3-react-venly", - "version": "1.2.0-develop.0", - "lockfileVersion": 2, + "version": "1.2.0-SNAPSHOT.0", + "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "@venly/web3-react-venly", - "version": "1.2.0-develop.0", + "version": "1.2.0-SNAPSHOT.0", "license": "MIT", "dependencies": { "@venly/web3-provider": "^3.1.0", @@ -17,33 +17,21 @@ "typescript": "^5.0.4" } }, - "node_modules/@chainsafe/as-sha256": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/@chainsafe/as-sha256/-/as-sha256-0.3.1.tgz", - "integrity": "sha512-hldFFYuf49ed7DAakWVXSJODuq3pzJEguD8tQ7h+sGkM18vja+OFoJI9krnGmgzyuZC2ETX0NOIcCTy31v2Mtg==" - }, - "node_modules/@chainsafe/persistent-merkle-tree": { - "version": "0.4.2", - "resolved": "https://registry.npmjs.org/@chainsafe/persistent-merkle-tree/-/persistent-merkle-tree-0.4.2.tgz", - "integrity": "sha512-lLO3ihKPngXLTus/L7WHKaw9PnNJWizlOF1H9NNzHP6Xvh82vzg9F2bzkXhYIFshMZ2gTCEz8tq6STe7r5NDfQ==", - "dependencies": { - "@chainsafe/as-sha256": "^0.3.1" - } - }, - "node_modules/@chainsafe/ssz": { - "version": "0.9.4", - "resolved": "https://registry.npmjs.org/@chainsafe/ssz/-/ssz-0.9.4.tgz", - "integrity": "sha512-77Qtg2N1ayqs4Bg/wvnWfg5Bta7iy7IRh8XqXh7oNMeP2HBbBwx8m6yTpA8p0EHItWPEBkgZd5S5/LSlp3GXuQ==", + "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==", + "license": "MIT", "dependencies": { - "@chainsafe/as-sha256": "^0.3.1", - "@chainsafe/persistent-merkle-tree": "^0.4.2", - "case": "^1.6.3" + "@ethereumjs/util": "^8.1.0", + "crc-32": "^1.2.0" } }, "node_modules/@ethereumjs/rlp": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/@ethereumjs/rlp/-/rlp-4.0.1.tgz", "integrity": "sha512-tqsQiBQDQdmPWE1xkkBq4rlSW5QZpLOUJ5RJh2/9fug+q9tnUhuZoVLk7s0scUIKTOzEtR72DFBXI4WiZcMpvw==", + "license": "MPL-2.0", "bin": { "rlp": "bin/rlp" }, @@ -51,23 +39,39 @@ "node": ">=14" } }, + "node_modules/@ethereumjs/tx": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/@ethereumjs/tx/-/tx-4.2.0.tgz", + "integrity": "sha512-1nc6VO4jtFd172BbSnTnDQVr9IYBFl1y4xPzZdtkrkKIncBCkdbgfdRV+MiTkJYAtTxvV12GRZLqBFT1PNK6Yw==", + "license": "MPL-2.0", + "dependencies": { + "@ethereumjs/common": "^3.2.0", + "@ethereumjs/rlp": "^4.0.1", + "@ethereumjs/util": "^8.1.0", + "ethereum-cryptography": "^2.0.0" + }, + "engines": { + "node": ">=14" + } + }, "node_modules/@ethereumjs/util": { - "version": "8.0.5", - "resolved": "https://registry.npmjs.org/@ethereumjs/util/-/util-8.0.5.tgz", - "integrity": "sha512-259rXKK3b3D8HRVdRmlOEi6QFvwxdt304hhrEAmpZhsj7ufXEOTIc9JRZPMnXatKjECokdLNBcDOFBeBSzAIaw==", + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/@ethereumjs/util/-/util-8.1.0.tgz", + "integrity": "sha512-zQ0IqbdX8FZ9aw11vP+dZkKDkS+kgIvQPHnSAXzP9pLu+Rfu3D3XEeLbicvoXJTYnhZiPmsZUxgdzXwNKxRPbA==", + "license": "MPL-2.0", "dependencies": { - "@chainsafe/ssz": "0.9.4", "@ethereumjs/rlp": "^4.0.1", - "ethereum-cryptography": "^1.1.2" + "ethereum-cryptography": "^2.0.0", + "micro-ftch": "^0.3.1" }, "engines": { "node": ">=14" } }, "node_modules/@ethersproject/address": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@ethersproject/address/-/address-5.7.0.tgz", - "integrity": "sha512-9wYhYt7aghVGo758POM5nqcOMaE168Q6aRLJZwUmiqSrAungkG74gSSeKEIR7ukixesdRZGPgVqme6vmxs1fkA==", + "version": "5.8.0", + "resolved": "https://registry.npmjs.org/@ethersproject/address/-/address-5.8.0.tgz", + "integrity": "sha512-GhH/abcC46LJwshoN+uBNoKVFPxUuZm6dA257z0vZkKmU1+t8xTn8oK7B9qrj8W2rFRMch4gbJl6PmVxjxBEBA==", "dev": true, "funding": [ { @@ -79,18 +83,19 @@ "url": "https://www.buymeacoffee.com/ricmoo" } ], + "license": "MIT", "dependencies": { - "@ethersproject/bignumber": "^5.7.0", - "@ethersproject/bytes": "^5.7.0", - "@ethersproject/keccak256": "^5.7.0", - "@ethersproject/logger": "^5.7.0", - "@ethersproject/rlp": "^5.7.0" + "@ethersproject/bignumber": "^5.8.0", + "@ethersproject/bytes": "^5.8.0", + "@ethersproject/keccak256": "^5.8.0", + "@ethersproject/logger": "^5.8.0", + "@ethersproject/rlp": "^5.8.0" } }, "node_modules/@ethersproject/bignumber": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@ethersproject/bignumber/-/bignumber-5.7.0.tgz", - "integrity": "sha512-n1CAdIHRWjSucQO3MC1zPSVgV/6dy/fjL9pMrPP9peL+QxEg9wOsVqwD4+818B6LUEtaXzVHQiuivzRoxPxUGw==", + "version": "5.8.0", + "resolved": "https://registry.npmjs.org/@ethersproject/bignumber/-/bignumber-5.8.0.tgz", + "integrity": "sha512-ZyaT24bHaSeJon2tGPKIiHszWjD/54Sz8t57Toch475lCLljC6MgPmxk7Gtzz+ddNN5LuHea9qhAe0x3D+uYPA==", "funding": [ { "type": "individual", @@ -101,22 +106,17 @@ "url": "https://www.buymeacoffee.com/ricmoo" } ], + "license": "MIT", "dependencies": { - "@ethersproject/bytes": "^5.7.0", - "@ethersproject/logger": "^5.7.0", + "@ethersproject/bytes": "^5.8.0", + "@ethersproject/logger": "^5.8.0", "bn.js": "^5.2.1" } }, - "node_modules/@ethersproject/bignumber/node_modules/bn.js": { - "version": "5.2.3", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-5.2.3.tgz", - "integrity": "sha512-EAcmnPkxpntVL+DS7bO1zhcZNvCkxqtkd0ZY53h06GNQ3DEkkGZ/gKgmDv6DdZQGj9BgfSPKtJJ7Dp1GPP8f7w==", - "license": "MIT" - }, "node_modules/@ethersproject/bytes": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@ethersproject/bytes/-/bytes-5.7.0.tgz", - "integrity": "sha512-nsbxwgFXWh9NyYWo+U8atvmMsSdKJprTcICAkvbBffT75qDocbuggBU0SJiVK2MuTrp0q+xvLkTnGMPK1+uA9A==", + "version": "5.8.0", + "resolved": "https://registry.npmjs.org/@ethersproject/bytes/-/bytes-5.8.0.tgz", + "integrity": "sha512-vTkeohgJVCPVHu5c25XWaWQOZ4v+DkGoC42/TS2ond+PARCxTJvgTFUNDZovyQ/uAQ4EcpqqowKydcdmRKjg7A==", "funding": [ { "type": "individual", @@ -127,14 +127,15 @@ "url": "https://www.buymeacoffee.com/ricmoo" } ], + "license": "MIT", "dependencies": { - "@ethersproject/logger": "^5.7.0" + "@ethersproject/logger": "^5.8.0" } }, "node_modules/@ethersproject/keccak256": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@ethersproject/keccak256/-/keccak256-5.7.0.tgz", - "integrity": "sha512-2UcPboeL/iW+pSg6vZ6ydF8tCnv3Iu/8tUmLLzWWGzxWKFFqOBQFLo6uLUv6BDrLgCDfN28RJ/wtByx+jZ4KBg==", + "version": "5.8.0", + "resolved": "https://registry.npmjs.org/@ethersproject/keccak256/-/keccak256-5.8.0.tgz", + "integrity": "sha512-A1pkKLZSz8pDaQ1ftutZoaN46I6+jvuqugx5KYNeQOPqq+JZ0Txm7dlWesCHB5cndJSu5vP2VKptKf7cksERng==", "dev": true, "funding": [ { @@ -146,15 +147,16 @@ "url": "https://www.buymeacoffee.com/ricmoo" } ], + "license": "MIT", "dependencies": { - "@ethersproject/bytes": "^5.7.0", + "@ethersproject/bytes": "^5.8.0", "js-sha3": "0.8.0" } }, "node_modules/@ethersproject/logger": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@ethersproject/logger/-/logger-5.7.0.tgz", - "integrity": "sha512-0odtFdXu/XHtjQXJYA3u9G0G8btm0ND5Cu8M7i5vhEcE8/HmF4Lbdqanwyv4uQTr2tx6b7fQRmgLrsnpQlmnig==", + "version": "5.8.0", + "resolved": "https://registry.npmjs.org/@ethersproject/logger/-/logger-5.8.0.tgz", + "integrity": "sha512-Qe6knGmY+zPPWTC+wQrpitodgBfH7XoceCGL5bJVejmH+yCS3R8jJm8iiWuvWbG76RUmyEG53oqv6GMVWqunjA==", "funding": [ { "type": "individual", @@ -164,12 +166,13 @@ "type": "individual", "url": "https://www.buymeacoffee.com/ricmoo" } - ] + ], + "license": "MIT" }, "node_modules/@ethersproject/rlp": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@ethersproject/rlp/-/rlp-5.7.0.tgz", - "integrity": "sha512-rBxzX2vK8mVF7b0Tol44t5Tb8gomOHkj5guL+HhzQ1yBh/ydjGnpw6at+X6Iw0Kp3OzzzkcKp8N9r0W4kYSs9w==", + "version": "5.8.0", + "resolved": "https://registry.npmjs.org/@ethersproject/rlp/-/rlp-5.8.0.tgz", + "integrity": "sha512-LqZgAznqDbiEunaUvykH2JAoXTT9NV0Atqk8rQN9nx9SEgThA/WMx5DnW8a9FOufo//6FZOCHZ+XiClzgbqV9Q==", "dev": true, "funding": [ { @@ -181,163 +184,395 @@ "url": "https://www.buymeacoffee.com/ricmoo" } ], + "license": "MIT", + "dependencies": { + "@ethersproject/bytes": "^5.8.0", + "@ethersproject/logger": "^5.8.0" + } + }, + "node_modules/@metamask/abi-utils": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/@metamask/abi-utils/-/abi-utils-2.0.4.tgz", + "integrity": "sha512-StnIgUB75x7a7AgUhiaUZDpCsqGp7VkNnZh2XivXkJ6mPkE83U8ARGQj5MbRis7VJY8BC5V1AbB1fjdh0hupPQ==", + "license": "(Apache-2.0 AND MIT)", + "dependencies": { + "@metamask/superstruct": "^3.1.0", + "@metamask/utils": "^9.0.0" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/@metamask/abi-utils/node_modules/@metamask/utils": { + "version": "9.3.0", + "resolved": "https://registry.npmjs.org/@metamask/utils/-/utils-9.3.0.tgz", + "integrity": "sha512-w8CVbdkDrVXFJbfBSlDfafDR6BAkpDmv1bC1UJVCoVny5tW2RKAdn9i68Xf7asYT4TnUhl/hN4zfUiKQq9II4g==", + "license": "ISC", + "dependencies": { + "@ethereumjs/tx": "^4.2.0", + "@metamask/superstruct": "^3.1.0", + "@noble/hashes": "^1.3.1", + "@scure/base": "^1.1.3", + "@types/debug": "^4.1.7", + "debug": "^4.3.4", + "pony-cause": "^2.1.10", + "semver": "^7.5.4", + "uuid": "^9.0.1" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/@metamask/eth-block-tracker": { + "version": "9.0.3", + "resolved": "https://registry.npmjs.org/@metamask/eth-block-tracker/-/eth-block-tracker-9.0.3.tgz", + "integrity": "sha512-I29IwdhnSJtk/A05vFsiOV92ADXXtBymXfC0naSvHP9TYNNOryG9y2l0jmnSzBsP3+wefCkHJWEzEwF4YSKogw==", + "license": "MIT", + "dependencies": { + "@metamask/eth-json-rpc-provider": "^3.0.2", + "@metamask/safe-event-emitter": "^3.0.0", + "@metamask/utils": "^8.1.0", + "json-rpc-random-id": "^1.0.1", + "pify": "^5.0.0" + }, + "engines": { + "node": ">=16.20 || ^18.16" + } + }, + "node_modules/@metamask/eth-block-tracker/node_modules/@metamask/eth-json-rpc-provider": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@metamask/eth-json-rpc-provider/-/eth-json-rpc-provider-3.0.2.tgz", + "integrity": "sha512-ma5bYjKa71bSw5+iibEnIiY25s8wkDnTljrqOnGw5MkTEU4PQDiKnK9YjxfUZSasx2BPEsp1OW2NS+pnrRMO4Q==", + "license": "ISC", "dependencies": { - "@ethersproject/bytes": "^5.7.0", - "@ethersproject/logger": "^5.7.0" + "@metamask/json-rpc-engine": "^8.0.2", + "@metamask/safe-event-emitter": "^3.0.0", + "@metamask/utils": "^8.3.0" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/@metamask/eth-block-tracker/node_modules/@metamask/json-rpc-engine": { + "version": "8.0.2", + "resolved": "https://registry.npmjs.org/@metamask/json-rpc-engine/-/json-rpc-engine-8.0.2.tgz", + "integrity": "sha512-IoQPmql8q7ABLruW7i4EYVHWUbF74yrp63bRuXV5Zf9BQwcn5H9Ww1eLtROYvI1bUXwOiHZ6qT5CWTrDc/t/AA==", + "license": "ISC", + "dependencies": { + "@metamask/rpc-errors": "^6.2.1", + "@metamask/safe-event-emitter": "^3.0.0", + "@metamask/utils": "^8.3.0" + }, + "engines": { + "node": ">=16.0.0" } }, "node_modules/@metamask/eth-json-rpc-middleware": { - "version": "11.0.0", - "resolved": "https://registry.npmjs.org/@metamask/eth-json-rpc-middleware/-/eth-json-rpc-middleware-11.0.0.tgz", - "integrity": "sha512-QDEUZsoUdgZKwFnMS8XW/aQ8mJULaOssXjGnk9DocCs/p8rj69bovBsHtnlYawVHYuOy4Cual5GmAtvAZcrPxA==", + "version": "12.1.2", + "resolved": "https://registry.npmjs.org/@metamask/eth-json-rpc-middleware/-/eth-json-rpc-middleware-12.1.2.tgz", + "integrity": "sha512-qhaUq0SenE8P916yuYDj5dbdGRvl/qJDsjPGSlSJOi0QBASFDbKpo5k1st+ban6duJfRUQhrwzERCVyNbtil7w==", + "license": "ISC", "dependencies": { - "@metamask/eth-json-rpc-provider": "^1.0.0", - "@metamask/eth-sig-util": "^5.0.0", - "@metamask/utils": "^3.0.3", - "clone": "^2.1.1", - "eth-block-tracker": "^7.0.0", - "eth-rpc-errors": "^4.0.3", - "json-rpc-engine": "^6.1.0", - "pify": "^3.0.0", - "safe-stable-stringify": "^2.3.2" + "@metamask/eth-block-tracker": "^9.0.3", + "@metamask/eth-json-rpc-provider": "^3.0.2", + "@metamask/eth-sig-util": "^7.0.0", + "@metamask/json-rpc-engine": "^8.0.2", + "@metamask/rpc-errors": "^6.0.0", + "@metamask/utils": "^8.1.0", + "klona": "^2.0.6", + "pify": "^5.0.0", + "safe-stable-stringify": "^2.4.3" }, "engines": { - "node": ">=14.0.0" + "node": "^16.20 || ^18.16 || >=20" + } + }, + "node_modules/@metamask/eth-json-rpc-middleware/node_modules/@metamask/eth-json-rpc-provider": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@metamask/eth-json-rpc-provider/-/eth-json-rpc-provider-3.0.2.tgz", + "integrity": "sha512-ma5bYjKa71bSw5+iibEnIiY25s8wkDnTljrqOnGw5MkTEU4PQDiKnK9YjxfUZSasx2BPEsp1OW2NS+pnrRMO4Q==", + "license": "ISC", + "dependencies": { + "@metamask/json-rpc-engine": "^8.0.2", + "@metamask/safe-event-emitter": "^3.0.0", + "@metamask/utils": "^8.3.0" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/@metamask/eth-json-rpc-middleware/node_modules/@metamask/json-rpc-engine": { + "version": "8.0.2", + "resolved": "https://registry.npmjs.org/@metamask/json-rpc-engine/-/json-rpc-engine-8.0.2.tgz", + "integrity": "sha512-IoQPmql8q7ABLruW7i4EYVHWUbF74yrp63bRuXV5Zf9BQwcn5H9Ww1eLtROYvI1bUXwOiHZ6qT5CWTrDc/t/AA==", + "license": "ISC", + "dependencies": { + "@metamask/rpc-errors": "^6.2.1", + "@metamask/safe-event-emitter": "^3.0.0", + "@metamask/utils": "^8.3.0" + }, + "engines": { + "node": ">=16.0.0" } }, "node_modules/@metamask/eth-json-rpc-provider": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/@metamask/eth-json-rpc-provider/-/eth-json-rpc-provider-1.0.0.tgz", - "integrity": "sha512-Bl9FbSNctgh1FRjUX0Gpoo4BwFXBKplcZ198y9/gysUhgOBD4MKqe3V4XzaYXuvB7VhVA9TNH0ZsaK1MnolpWg==", + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/@metamask/eth-json-rpc-provider/-/eth-json-rpc-provider-2.3.2.tgz", + "integrity": "sha512-VaZx++3gfi85+j9zB5TvqSWLeZ6QpsNjIk56Nq6OMDp2U8iUEPgjdA8CybOtkyDb88EbpuOSzHZcdHEeIX3zPw==", + "license": "ISC", "dependencies": { - "@metamask/safe-event-emitter": "^2.0.0", - "json-rpc-engine": "^6.1.0" + "@metamask/json-rpc-engine": "^7.3.2", + "@metamask/safe-event-emitter": "^3.0.0", + "@metamask/utils": "^8.3.0" }, "engines": { - "node": ">=14.0.0" + "node": ">=16.0.0" } }, "node_modules/@metamask/eth-sig-util": { - "version": "5.0.2", - "resolved": "https://registry.npmjs.org/@metamask/eth-sig-util/-/eth-sig-util-5.0.2.tgz", - "integrity": "sha512-RU6fG/H6/UlBol221uBkq5C7w3TwLK611nEZliO2u+kO0vHKGBXnIPlhI0tzKUigjhUeOd9mhCNbNvhh0LKt9Q==", + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/@metamask/eth-sig-util/-/eth-sig-util-7.0.3.tgz", + "integrity": "sha512-PAtGnOkYvh90k2lEZldq/FK7GTLF6WxE+2bV85PoA3pqlJnmJCAY62tuvxHSwnVngSKlc4mcNvjnUg2eYO6JGg==", + "license": "ISC", "dependencies": { - "@ethereumjs/util": "^8.0.0", - "bn.js": "^4.11.8", - "ethereum-cryptography": "^1.1.2", - "ethjs-util": "^0.1.6", - "tweetnacl": "^1.0.3", - "tweetnacl-util": "^0.15.1" + "@ethereumjs/util": "^8.1.0", + "@metamask/abi-utils": "^2.0.4", + "@metamask/utils": "^9.0.0", + "@scure/base": "~1.1.3", + "ethereum-cryptography": "^2.1.2", + "tweetnacl": "^1.0.3" }, "engines": { - "node": ">=14.0.0" + "node": "^16.20 || ^18.16 || >=20" + } + }, + "node_modules/@metamask/eth-sig-util/node_modules/@metamask/utils": { + "version": "9.3.0", + "resolved": "https://registry.npmjs.org/@metamask/utils/-/utils-9.3.0.tgz", + "integrity": "sha512-w8CVbdkDrVXFJbfBSlDfafDR6BAkpDmv1bC1UJVCoVny5tW2RKAdn9i68Xf7asYT4TnUhl/hN4zfUiKQq9II4g==", + "license": "ISC", + "dependencies": { + "@ethereumjs/tx": "^4.2.0", + "@metamask/superstruct": "^3.1.0", + "@noble/hashes": "^1.3.1", + "@scure/base": "^1.1.3", + "@types/debug": "^4.1.7", + "debug": "^4.3.4", + "pony-cause": "^2.1.10", + "semver": "^7.5.4", + "uuid": "^9.0.1" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/@metamask/json-rpc-engine": { + "version": "7.3.3", + "resolved": "https://registry.npmjs.org/@metamask/json-rpc-engine/-/json-rpc-engine-7.3.3.tgz", + "integrity": "sha512-dwZPq8wx9yV3IX2caLi9q9xZBw2XeIoYqdyihDDDpuHVCEiqadJLwqM3zy+uwf6F1QYQ65A8aOMQg1Uw7LMLNg==", + "license": "ISC", + "dependencies": { + "@metamask/rpc-errors": "^6.2.1", + "@metamask/safe-event-emitter": "^3.0.0", + "@metamask/utils": "^8.3.0" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/@metamask/rpc-errors": { + "version": "6.4.0", + "resolved": "https://registry.npmjs.org/@metamask/rpc-errors/-/rpc-errors-6.4.0.tgz", + "integrity": "sha512-1ugFO1UoirU2esS3juZanS/Fo8C8XYocCuBpfZI5N7ECtoG+zu0wF+uWZASik6CkO6w9n/Iebt4iI4pT0vptpg==", + "license": "MIT", + "dependencies": { + "@metamask/utils": "^9.0.0", + "fast-safe-stringify": "^2.0.6" + }, + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/@metamask/rpc-errors/node_modules/@metamask/utils": { + "version": "9.3.0", + "resolved": "https://registry.npmjs.org/@metamask/utils/-/utils-9.3.0.tgz", + "integrity": "sha512-w8CVbdkDrVXFJbfBSlDfafDR6BAkpDmv1bC1UJVCoVny5tW2RKAdn9i68Xf7asYT4TnUhl/hN4zfUiKQq9II4g==", + "license": "ISC", + "dependencies": { + "@ethereumjs/tx": "^4.2.0", + "@metamask/superstruct": "^3.1.0", + "@noble/hashes": "^1.3.1", + "@scure/base": "^1.1.3", + "@types/debug": "^4.1.7", + "debug": "^4.3.4", + "pony-cause": "^2.1.10", + "semver": "^7.5.4", + "uuid": "^9.0.1" + }, + "engines": { + "node": ">=16.0.0" } }, "node_modules/@metamask/safe-event-emitter": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/@metamask/safe-event-emitter/-/safe-event-emitter-2.0.0.tgz", - "integrity": "sha512-/kSXhY692qiV1MXu6EeOZvg5nECLclxNXcKCxJ3cXQgYuRymRHpdx/t7JXfsK+JLjwA1e1c1/SBrlQYpusC29Q==" + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/@metamask/safe-event-emitter/-/safe-event-emitter-3.1.2.tgz", + "integrity": "sha512-5yb2gMI1BDm0JybZezeoX/3XhPDOtTbcFvpTXM9kxsoZjPZFh4XciqRbpD6N86HYZqWDhEaKUDuOyR0sQHEjMA==", + "license": "ISC", + "engines": { + "node": ">=12.0.0" + } + }, + "node_modules/@metamask/superstruct": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/@metamask/superstruct/-/superstruct-3.2.1.tgz", + "integrity": "sha512-fLgJnDOXFmuVlB38rUN5SmU7hAFQcCjrg3Vrxz67KTY7YHFnSNEKvX4avmEBdOI0yTCxZjwMCFEqsC8k2+Wd3g==", + "license": "MIT", + "engines": { + "node": ">=16.0.0" + } }, "node_modules/@metamask/utils": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/@metamask/utils/-/utils-3.6.0.tgz", - "integrity": "sha512-9cIRrfkWvHblSiNDVXsjivqa9Ak0RYo/1H6tqTqTbAx+oBK2Sva0lWDHxGchOqA7bySGUJKAWSNJvH6gdHZ0gQ==", + "version": "8.5.0", + "resolved": "https://registry.npmjs.org/@metamask/utils/-/utils-8.5.0.tgz", + "integrity": "sha512-I6bkduevXb72TIM9q2LRO63JSsF9EXduh3sBr9oybNX2hNNpr/j1tEjXrsG0Uabm4MJ1xkGAQEMwifvKZIkyxQ==", + "license": "ISC", "dependencies": { + "@ethereumjs/tx": "^4.2.0", + "@metamask/superstruct": "^3.0.0", + "@noble/hashes": "^1.3.1", + "@scure/base": "^1.1.3", "@types/debug": "^4.1.7", "debug": "^4.3.4", - "semver": "^7.3.8", - "superstruct": "^1.0.3" + "pony-cause": "^2.1.10", + "semver": "^7.5.4", + "uuid": "^9.0.1" }, "engines": { - "node": ">=14.0.0" + "node": ">=16.0.0" } }, - "node_modules/@noble/hashes": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/@noble/hashes/-/hashes-1.2.0.tgz", - "integrity": "sha512-FZfhjEDbT5GRswV3C6uvLPHMiVD6lQBmpoX5+eSiPaMTXte/IKqI5dykDxzZB/WBeK/CDuQRBWarPdi3FNY2zQ==", - "funding": [ - { - "type": "individual", - "url": "https://paulmillr.com/funding/" - } - ] + "node_modules/@noble/curves": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/@noble/curves/-/curves-1.4.2.tgz", + "integrity": "sha512-TavHr8qycMChk8UwMld0ZDRvatedkzWfH8IiaeGCfymOP5i0hSCozz9vHOL0nkwk7HRMlFnAiKpS2jrUmSybcw==", + "license": "MIT", + "dependencies": { + "@noble/hashes": "1.4.0" + }, + "funding": { + "url": "https://paulmillr.com/funding/" + } }, - "node_modules/@noble/secp256k1": { - "version": "1.7.1", - "resolved": "https://registry.npmjs.org/@noble/secp256k1/-/secp256k1-1.7.1.tgz", - "integrity": "sha512-hOUk6AyBFmqVrv7k5WAw/LpszxVbj9gGN4JRkIX52fdFAj1UA61KXmZDvqVEm+pOyec3+fIeZB02LYa/pWOArw==", - "funding": [ - { - "type": "individual", - "url": "https://paulmillr.com/funding/" - } - ] + "node_modules/@noble/curves/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==", + "license": "MIT", + "engines": { + "node": ">= 16" + }, + "funding": { + "url": "https://paulmillr.com/funding/" + } + }, + "node_modules/@noble/hashes": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/@noble/hashes/-/hashes-1.8.0.tgz", + "integrity": "sha512-jCs9ldd7NwzpgXDIf6P3+NrHh9/sD6CQdxHyjQI+h/6rDNo88ypBxxz45UDuZHz9r3tNz7N/VInSVoVdtXEI4A==", + "license": "MIT", + "engines": { + "node": "^14.21.3 || >=16" + }, + "funding": { + "url": "https://paulmillr.com/funding/" + } }, "node_modules/@scure/base": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/@scure/base/-/base-1.1.1.tgz", - "integrity": "sha512-ZxOhsSyxYwLJj3pLZCefNitxsj093tb2vq90mp2txoYeBqbcjDjqFhyM8eUjq/uFm6zJ+mUuqxlS2FkuSY1MTA==", - "funding": [ - { - "type": "individual", - "url": "https://paulmillr.com/funding/" - } - ] + "version": "1.1.9", + "resolved": "https://registry.npmjs.org/@scure/base/-/base-1.1.9.tgz", + "integrity": "sha512-8YKhl8GHiNI/pU2VMaofa2Tor7PJRAjwQLBBuilkJ9L5+13yVbC7JO/wS7piioAvPSwR3JKM1IJ/u4xQzbcXKg==", + "license": "MIT", + "funding": { + "url": "https://paulmillr.com/funding/" + } }, "node_modules/@scure/bip32": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/@scure/bip32/-/bip32-1.1.5.tgz", - "integrity": "sha512-XyNh1rB0SkEqd3tXcXMi+Xe1fvg+kUIcoRIEujP1Jgv7DqW2r9lg3Ah0NkFaCs9sTkQAQA8kw7xiRXzENi9Rtw==", - "funding": [ - { - "type": "individual", - "url": "https://paulmillr.com/funding/" - } - ], + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/@scure/bip32/-/bip32-1.4.0.tgz", + "integrity": "sha512-sVUpc0Vq3tXCkDGYVWGIZTRfnvu8LoTDaev7vbwh0omSvVORONr960MQWdKqJDCReIEmTj3PAr73O3aoxz7OPg==", + "license": "MIT", "dependencies": { - "@noble/hashes": "~1.2.0", - "@noble/secp256k1": "~1.7.0", - "@scure/base": "~1.1.0" + "@noble/curves": "~1.4.0", + "@noble/hashes": "~1.4.0", + "@scure/base": "~1.1.6" + }, + "funding": { + "url": "https://paulmillr.com/funding/" + } + }, + "node_modules/@scure/bip32/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==", + "license": "MIT", + "engines": { + "node": ">= 16" + }, + "funding": { + "url": "https://paulmillr.com/funding/" } }, "node_modules/@scure/bip39": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/@scure/bip39/-/bip39-1.1.1.tgz", - "integrity": "sha512-t+wDck2rVkh65Hmv280fYdVdY25J9YeEUIgn2LG1WM6gxFkGzcksoDiUkWVpVp3Oex9xGC68JU2dSbUfwZ2jPg==", - "funding": [ - { - "type": "individual", - "url": "https://paulmillr.com/funding/" - } - ], + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/@scure/bip39/-/bip39-1.3.0.tgz", + "integrity": "sha512-disdg7gHuTDZtY+ZdkmLpPCk7fxZSu3gBiEGuoC1XYxv9cGx3Z6cpTggCgW6odSOOIXCiDjuGejW+aJKCY/pIQ==", + "license": "MIT", "dependencies": { - "@noble/hashes": "~1.2.0", - "@scure/base": "~1.1.0" + "@noble/hashes": "~1.4.0", + "@scure/base": "~1.1.6" + }, + "funding": { + "url": "https://paulmillr.com/funding/" + } + }, + "node_modules/@scure/bip39/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==", + "license": "MIT", + "engines": { + "node": ">= 16" + }, + "funding": { + "url": "https://paulmillr.com/funding/" } }, "node_modules/@types/debug": { - "version": "4.1.7", - "resolved": "https://registry.npmjs.org/@types/debug/-/debug-4.1.7.tgz", - "integrity": "sha512-9AonUzyTjXXhEOa0DnqpzZi6VHlqKMswga9EXjpXnnqxwLtdvPPtlO8evrI5D9S6asFRCQ6v+wpiUKbw+vKqyg==", + "version": "4.1.13", + "resolved": "https://registry.npmjs.org/@types/debug/-/debug-4.1.13.tgz", + "integrity": "sha512-KSVgmQmzMwPlmtljOomayoR89W4FynCAi3E8PPs7vmDVPe84hT+vGPKkJfThkmXs0x0jAaa9U8uW8bbfyS2fWw==", + "license": "MIT", "dependencies": { "@types/ms": "*" } }, "node_modules/@types/ms": { - "version": "0.7.31", - "resolved": "https://registry.npmjs.org/@types/ms/-/ms-0.7.31.tgz", - "integrity": "sha512-iiUgKzV9AuaEkZqkOLDIvlQiL6ltuZd9tGcW3gwpnX8JbuiuhFlEGmmFXEXkN50Cvq7Os88IY2v0dkDqXYWVgA==" + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/@types/ms/-/ms-2.1.0.tgz", + "integrity": "sha512-GsCCIZDE/p3i96vtEqx+7dBUGXrc7zeSK3wwPHIaRThS+9OhWIXRqzs4d6k1SVU8g91DrNRWxWUGhp5KXQb2VA==", + "license": "MIT" }, "node_modules/@types/node": { "version": "12.20.55", "resolved": "https://registry.npmjs.org/@types/node/-/node-12.20.55.tgz", - "integrity": "sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==" + "integrity": "sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==", + "license": "MIT" }, "node_modules/@venly/connect": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/@venly/connect/-/connect-2.2.0.tgz", - "integrity": "sha512-fSG+loJ7q6Oy8FCIPPIba3z6Ss6TEJ4ZRGDSoQw7Od0JCaSPPJ1MOA9/4MplVIbj3eCqR/FS11tq0K1jpQZavQ==", + "version": "2.10.0", + "resolved": "https://registry.npmjs.org/@venly/connect/-/connect-2.10.0.tgz", + "integrity": "sha512-5KMQLMoL7TaQPrzjs+z5H/XIxx2WYpzFWdtGQs65EfNBDIyhQ2sTUwgTZfC1cGOor3SXT2jrascfbZRwUneUuw==", + "license": "MIT", "dependencies": { "@types/node": "^12.7.1", "es6-promise": "^4.2.8", @@ -345,42 +580,48 @@ } }, "node_modules/@venly/web3-provider": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/@venly/web3-provider/-/web3-provider-3.1.0.tgz", - "integrity": "sha512-yPZJPGDTiwEq1YnEU2gL1NxjteQPFRGWeCKuvYd7sy3EH9fUcohwhkJbVuKipL5eGpAW5j4AyABjpkb79XZcxQ==", + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/@venly/web3-provider/-/web3-provider-3.7.0.tgz", + "integrity": "sha512-nGnia3R5v7TZVs20uAlnQJtA2HvFS1Ovmeu7gyLny8Lzzlfw7h8q967qxdyTIkslkWe8y9xY50pPa7793OVKfA==", + "license": "MIT", "dependencies": { "@ethersproject/bignumber": "^5.7.0", - "@metamask/eth-json-rpc-middleware": "^11.0.0", - "@metamask/eth-json-rpc-provider": "^1.0.0", - "@venly/connect": "^2.2.0", - "eth-block-tracker": "^7.0.0", - "eth-json-rpc-filters": "^6.0.0", - "json-rpc-engine": "^6.1.0" + "@metamask/eth-json-rpc-middleware": "^12.0.0", + "@metamask/eth-json-rpc-provider": "^2.1.0", + "@metamask/json-rpc-engine": "^7.1.1", + "@metamask/rpc-errors": "^6.0.0", + "@metamask/utils": "^8.1.0", + "@venly/connect": "2.10.0", + "eth-block-tracker": "^8.0.0", + "eth-json-rpc-filters": "^6.0.1" } }, "node_modules/@web3-react/store": { - "version": "8.1.2-beta.0", - "resolved": "https://registry.npmjs.org/@web3-react/store/-/store-8.1.2-beta.0.tgz", - "integrity": "sha512-Xmogyl52zSYkPILwt+LjFIlTSlwrx25IrotrONglE37Pq263k/AAMii3AlblDuUF3CWSuxnq2YPuhZ4PODVaKA==", + "version": "8.2.3", + "resolved": "https://registry.npmjs.org/@web3-react/store/-/store-8.2.3.tgz", + "integrity": "sha512-qUJQ5pDsYYDra+/+glq2BmIS43HYAiEZ22sLLVh6E75WiZKRNOOqUxBDPe33KTIn718DLt51j+wd2FT+oT/kJQ==", "dev": true, + "license": "GPL-3.0-or-later", "dependencies": { "@ethersproject/address": "^5", - "@web3-react/types": "^8.1.2-beta.0", - "zustand": "^4.3.5" + "@web3-react/types": "^8.2.3", + "zustand": "4.4.0" } }, "node_modules/@web3-react/types": { - "version": "8.1.2-beta.0", - "resolved": "https://registry.npmjs.org/@web3-react/types/-/types-8.1.2-beta.0.tgz", - "integrity": "sha512-gvVJqRvGsABpoUZA7RWQQiOq5qv5exkUW6ouSjlO4Q5BkfCBgT4NlIUVQ91w3JnS5qkDpk/uKDMt+wDFw0Yssw==", + "version": "8.2.3", + "resolved": "https://registry.npmjs.org/@web3-react/types/-/types-8.2.3.tgz", + "integrity": "sha512-kSG90QkN+n7IOtp10nQ44oS8J7jzfH9EmqnruwBpCGybh1FM/ohyRvUKWYZNfNE4wsjTSpKsINR0/VdDsZMHyg==", + "license": "GPL-3.0-or-later", "dependencies": { - "zustand": "^4.3.5" + "zustand": "4.4.0" } }, "node_modules/async-mutex": { "version": "0.2.6", "resolved": "https://registry.npmjs.org/async-mutex/-/async-mutex-0.2.6.tgz", "integrity": "sha512-Hs4R+4SPgamu6rSGW8C7cV9gaWUKEHykfzCCvIRuaVv636Ju10ZdeUbvb4TBEW0INuq2DHZqXbK4Nd3yG4RaRw==", + "license": "MIT", "dependencies": { "tslib": "^2.0.0" } @@ -388,36 +629,34 @@ "node_modules/base64-js": { "version": "1.3.1", "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.3.1.tgz", - "integrity": "sha512-mLQ4i2QO1ytvGWFWmcngKO//JXAQueZvwEKtjgQFM4jIK0kU+ytMfplL8j+n5mspOfjHwoAg+9yhb7BwAHm36g==" + "integrity": "sha512-mLQ4i2QO1ytvGWFWmcngKO//JXAQueZvwEKtjgQFM4jIK0kU+ytMfplL8j+n5mspOfjHwoAg+9yhb7BwAHm36g==", + "license": "MIT" }, "node_modules/bn.js": { - "version": "4.12.3", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.3.tgz", - "integrity": "sha512-fGTi3gxV/23FTYdAoUtLYp6qySe2KE3teyZitipKNRuVYcBkoP/bB3guXN/XVKUe9mxCHXnc9C4ocyz8OmgN0g==", + "version": "5.2.3", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-5.2.3.tgz", + "integrity": "sha512-EAcmnPkxpntVL+DS7bO1zhcZNvCkxqtkd0ZY53h06GNQ3DEkkGZ/gKgmDv6DdZQGj9BgfSPKtJJ7Dp1GPP8f7w==", "license": "MIT" }, - "node_modules/case": { - "version": "1.6.3", - "resolved": "https://registry.npmjs.org/case/-/case-1.6.3.tgz", - "integrity": "sha512-mzDSXIPaFwVDvZAHqZ9VlbyF4yyXRuX6IvB06WvPYkqJVO24kX1PPhv9bfpKNFZyxYFmmgo03HUiD8iklmJYRQ==", - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/clone": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/clone/-/clone-2.1.2.tgz", - "integrity": "sha512-3Pe/CF1Nn94hyhIYpjtiLhdCoEoz0DqQ+988E9gmeEdQZlojxnOb74wctFyuwWQHzqyf9X7C7MG8juUpqBJT8w==", + "node_modules/crc-32": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/crc-32/-/crc-32-1.2.2.tgz", + "integrity": "sha512-ROmzCKrTnOwybPcJApAA6WBWij23HVfGVNKqqrZpuyZOHqK2CwHSvpGuyt/UNNvaIjEd8X5IFGp4Mh+Ie1IHJQ==", + "license": "Apache-2.0", + "bin": { + "crc32": "bin/crc32.njs" + }, "engines": { "node": ">=0.8" } }, "node_modules/debug": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", - "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "version": "4.4.3", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.3.tgz", + "integrity": "sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA==", + "license": "MIT", "dependencies": { - "ms": "2.1.2" + "ms": "^2.1.3" }, "engines": { "node": ">=6.0" @@ -431,29 +670,32 @@ "node_modules/es6-promise": { "version": "4.2.8", "resolved": "https://registry.npmjs.org/es6-promise/-/es6-promise-4.2.8.tgz", - "integrity": "sha512-HJDGx5daxeIvxdBxvG2cb9g4tEvwIk3i8+nhX0yGrYmZUzbkdg8QbDevheDB8gd0//uPj4c1EQua8Q+MViT0/w==" + "integrity": "sha512-HJDGx5daxeIvxdBxvG2cb9g4tEvwIk3i8+nhX0yGrYmZUzbkdg8QbDevheDB8gd0//uPj4c1EQua8Q+MViT0/w==", + "license": "MIT" }, "node_modules/eth-block-tracker": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/eth-block-tracker/-/eth-block-tracker-7.0.0.tgz", - "integrity": "sha512-QDky41HSmiKpxpXbLBnojizCkeNH7N+imqhq5NWJASlIVDxY4h9dRwiLjRFMC8F7hHFxsOt/XaVK0CGkAwXlxg==", + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/eth-block-tracker/-/eth-block-tracker-8.1.0.tgz", + "integrity": "sha512-cdP9GMtJV87d4yuj4A3WX7gHIoJP4T4eeGgVW1jLjC/H7xuJsjs9vtwy9DJZvcd2cpRYZNQ7eWsdoJriHfi67Q==", + "license": "MIT", "dependencies": { - "@metamask/eth-json-rpc-provider": "^1.0.0", - "@metamask/safe-event-emitter": "^2.0.0", - "@metamask/utils": "^3.0.1", + "@metamask/eth-json-rpc-provider": "^2.1.0", + "@metamask/safe-event-emitter": "^3.0.0", + "@metamask/utils": "^8.1.0", "json-rpc-random-id": "^1.0.1", - "pify": "^3.0.0" + "pify": "^5.0.0" }, "engines": { - "node": ">=14.0.0" + "node": ">=16.20 || ^18.16" } }, "node_modules/eth-json-rpc-filters": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/eth-json-rpc-filters/-/eth-json-rpc-filters-6.0.0.tgz", - "integrity": "sha512-7jm1Qm+uAdcYS2PDPuIMj6BM9kmLVCnRVRTvc5ZsUU+rMBRUg1vZ1qqtKa54AwMna7n7x3ZmUbFPGDUlqDN1AQ==", + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/eth-json-rpc-filters/-/eth-json-rpc-filters-6.0.1.tgz", + "integrity": "sha512-ITJTvqoCw6OVMLs7pI8f4gG92n/St6x80ACtHodeS+IXmO0w+t1T5OOzfSt7KLSMLRkVUoexV7tztLgDxg+iig==", + "license": "ISC", "dependencies": { - "@metamask/safe-event-emitter": "^2.0.0", + "@metamask/safe-event-emitter": "^3.0.0", "async-mutex": "^0.2.6", "eth-query": "^2.1.2", "json-rpc-engine": "^6.1.0", @@ -463,21 +705,11 @@ "node": ">=14.0.0" } }, - "node_modules/eth-json-rpc-filters/node_modules/pify": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-5.0.0.tgz", - "integrity": "sha512-eW/gHNMlxdSP6dmG6uJip6FXN0EQBwm2clYYd8Wul42Cwu/DK8HEftzsapcNdYe2MfLiIwZqsDk2RDEsTE79hA==", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/eth-query": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/eth-query/-/eth-query-2.1.2.tgz", "integrity": "sha512-srES0ZcvwkR/wd5OQBRA1bIJMww1skfGS0s8wlwK3/oNP4+wnds60krvu5R1QbpRQjMmpG5OMIWro5s7gvDPsA==", + "license": "ISC", "dependencies": { "json-rpc-random-id": "^1.0.0", "xtend": "^4.0.1" @@ -487,69 +719,66 @@ "version": "4.0.3", "resolved": "https://registry.npmjs.org/eth-rpc-errors/-/eth-rpc-errors-4.0.3.tgz", "integrity": "sha512-Z3ymjopaoft7JDoxZcEb3pwdGh7yiYMhOwm2doUt6ASXlMavpNlK6Cre0+IMl2VSGyEU9rkiperQhp5iRxn5Pg==", + "license": "MIT", "dependencies": { "fast-safe-stringify": "^2.0.6" } }, "node_modules/ethereum-cryptography": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/ethereum-cryptography/-/ethereum-cryptography-1.2.0.tgz", - "integrity": "sha512-6yFQC9b5ug6/17CQpCyE3k9eKBMdhyVjzUy1WkiuY/E4vj/SXDBbCw8QEIaXqf0Mf2SnY6RmpDcwlUmBSS0EJw==", + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/ethereum-cryptography/-/ethereum-cryptography-2.2.1.tgz", + "integrity": "sha512-r/W8lkHSiTLxUxW8Rf3u4HGB0xQweG2RyETjywylKZSzLWoWAijRz8WCuOtJ6wah+avllXBqZuk29HCCvhEIRg==", + "license": "MIT", "dependencies": { - "@noble/hashes": "1.2.0", - "@noble/secp256k1": "1.7.1", - "@scure/bip32": "1.1.5", - "@scure/bip39": "1.1.1" + "@noble/curves": "1.4.2", + "@noble/hashes": "1.4.0", + "@scure/bip32": "1.4.0", + "@scure/bip39": "1.3.0" } }, - "node_modules/ethjs-util": { - "version": "0.1.6", - "resolved": "https://registry.npmjs.org/ethjs-util/-/ethjs-util-0.1.6.tgz", - "integrity": "sha512-CUnVOQq7gSpDHZVVrQW8ExxUETWrnrvXYvYz55wOU8Uj4VCgw56XC2B/fVqQN+f7gmrnRHSLVnFAwsCuNwji8w==", - "dependencies": { - "is-hex-prefixed": "1.0.0", - "strip-hex-prefix": "1.0.0" - }, + "node_modules/ethereum-cryptography/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==", + "license": "MIT", "engines": { - "node": ">=6.5.0", - "npm": ">=3" + "node": ">= 16" + }, + "funding": { + "url": "https://paulmillr.com/funding/" } }, "node_modules/fast-safe-stringify": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/fast-safe-stringify/-/fast-safe-stringify-2.1.1.tgz", - "integrity": "sha512-W+KJc2dmILlPplD/H4K9l9LcAHAfPtP6BY84uVLXQ6Evcz9Lcg33Y2z1IVblT6xdY54PXYVHEv+0Wpq8Io6zkA==" - }, - "node_modules/is-hex-prefixed": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-hex-prefixed/-/is-hex-prefixed-1.0.0.tgz", - "integrity": "sha512-WvtOiug1VFrE9v1Cydwm+FnXd3+w9GaeVUss5W4v/SLy3UW00vP+6iNF2SdnfiBoLy4bTqVdkftNGTUeOFVsbA==", - "engines": { - "node": ">=6.5.0", - "npm": ">=3" - } + "integrity": "sha512-W+KJc2dmILlPplD/H4K9l9LcAHAfPtP6BY84uVLXQ6Evcz9Lcg33Y2z1IVblT6xdY54PXYVHEv+0Wpq8Io6zkA==", + "license": "MIT" }, "node_modules/js-sha256": { "version": "0.9.0", "resolved": "https://registry.npmjs.org/js-sha256/-/js-sha256-0.9.0.tgz", - "integrity": "sha512-sga3MHh9sgQN2+pJ9VYZ+1LPwXOxuBJBA5nrR5/ofPfuiJBE2hnjsaN8se8JznOmGLN2p49Pe5U/ttafcs/apA==" + "integrity": "sha512-sga3MHh9sgQN2+pJ9VYZ+1LPwXOxuBJBA5nrR5/ofPfuiJBE2hnjsaN8se8JznOmGLN2p49Pe5U/ttafcs/apA==", + "license": "MIT" }, "node_modules/js-sha3": { "version": "0.8.0", "resolved": "https://registry.npmjs.org/js-sha3/-/js-sha3-0.8.0.tgz", "integrity": "sha512-gF1cRrHhIzNfToc802P800N8PpXS+evLLXfsVpowqmAFR9uwbi89WvXg2QspOmXL8QL86J4T1EpFu+yUkwJY3Q==", - "dev": true + "dev": true, + "license": "MIT" }, "node_modules/js-tokens": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", + "license": "MIT", "peer": true }, "node_modules/json-rpc-engine": { "version": "6.1.0", "resolved": "https://registry.npmjs.org/json-rpc-engine/-/json-rpc-engine-6.1.0.tgz", "integrity": "sha512-NEdLrtrq1jUZyfjkr9OCz9EzCNhnRyWtt1PAnvnhwy6e8XETS0Dtc+ZNCO2gvuAoKsIn2+vCSowXTYE4CkgnAQ==", + "license": "ISC", "dependencies": { "@metamask/safe-event-emitter": "^2.0.0", "eth-rpc-errors": "^4.0.2" @@ -558,24 +787,42 @@ "node": ">=10.0.0" } }, + "node_modules/json-rpc-engine/node_modules/@metamask/safe-event-emitter": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@metamask/safe-event-emitter/-/safe-event-emitter-2.0.0.tgz", + "integrity": "sha512-/kSXhY692qiV1MXu6EeOZvg5nECLclxNXcKCxJ3cXQgYuRymRHpdx/t7JXfsK+JLjwA1e1c1/SBrlQYpusC29Q==", + "license": "ISC" + }, "node_modules/json-rpc-random-id": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/json-rpc-random-id/-/json-rpc-random-id-1.0.1.tgz", - "integrity": "sha512-RJ9YYNCkhVDBuP4zN5BBtYAzEl03yq/jIIsyif0JY9qyJuQQZNeDK7anAPKKlyEtLSj2s8h6hNh2F8zO5q7ScA==" + "integrity": "sha512-RJ9YYNCkhVDBuP4zN5BBtYAzEl03yq/jIIsyif0JY9qyJuQQZNeDK7anAPKKlyEtLSj2s8h6hNh2F8zO5q7ScA==", + "license": "ISC" }, "node_modules/keycloak-js": { "version": "11.0.2", "resolved": "https://registry.npmjs.org/keycloak-js/-/keycloak-js-11.0.2.tgz", "integrity": "sha512-dnvzgTetovu3eTjJtvBQQhxRN4jqvd/DaA2wFaE4aWIFXhwRcoPpZT8ZJ7MwlICDPdCgzbCsOsBjpL8CbYOZsg==", + "license": "Apache-2.0", "dependencies": { "base64-js": "1.3.1", "js-sha256": "0.9.0" } }, + "node_modules/klona": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/klona/-/klona-2.0.6.tgz", + "integrity": "sha512-dhG34DXATL5hSxJbIexCft8FChFXtmskoZYnoPWjXQuebWYCNkVeV3KkGegCK9CP1oswI/vQibS2GY7Em/sJJA==", + "license": "MIT", + "engines": { + "node": ">= 8" + } + }, "node_modules/loose-envify": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", + "license": "MIT", "peer": true, "dependencies": { "js-tokens": "^3.0.0 || ^4.0.0" @@ -584,23 +831,44 @@ "loose-envify": "cli.js" } }, + "node_modules/micro-ftch": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/micro-ftch/-/micro-ftch-0.3.1.tgz", + "integrity": "sha512-/0LLxhzP0tfiR5hcQebtudP56gUurs2CLkGarnCiB/OqEyUFQ6U3paQi/tgLv0hBJYt2rnr9MNpxz4fiiugstg==", + "license": "MIT" + }, "node_modules/ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", + "license": "MIT" }, "node_modules/pify": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", - "integrity": "sha512-C3FsVNH1udSEX48gGX1xfvwTWfsYWj5U+8/uK15BGzIGrKoUpghX8hWZwa/OFnakBiiVNmBvemTJR5mcy7iPcg==", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-5.0.0.tgz", + "integrity": "sha512-eW/gHNMlxdSP6dmG6uJip6FXN0EQBwm2clYYd8Wul42Cwu/DK8HEftzsapcNdYe2MfLiIwZqsDk2RDEsTE79hA==", + "license": "MIT", "engines": { - "node": ">=4" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/pony-cause": { + "version": "2.1.11", + "resolved": "https://registry.npmjs.org/pony-cause/-/pony-cause-2.1.11.tgz", + "integrity": "sha512-M7LhCsdNbNgiLYiP4WjsfLUuFmCfnjdF6jKe2R9NKl4WFN+HZPGHJZ9lnLP7f9ZnKe3U9nuWD0szirmj+migUg==", + "license": "0BSD", + "engines": { + "node": ">=12.0.0" } }, "node_modules/react": { - "version": "18.2.0", - "resolved": "https://registry.npmjs.org/react/-/react-18.2.0.tgz", - "integrity": "sha512-/3IjMdb2L9QbBdWiW5e3P2/npwMBaU9mHCSCUzNln0ZCYbcfTsGbTJrU/kGemdH2IWmB2ioZ+zkxtmq6g09fGQ==", + "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==", + "license": "MIT", "peer": true, "dependencies": { "loose-envify": "^1.1.0" @@ -610,17 +878,18 @@ } }, "node_modules/safe-stable-stringify": { - "version": "2.4.3", - "resolved": "https://registry.npmjs.org/safe-stable-stringify/-/safe-stable-stringify-2.4.3.tgz", - "integrity": "sha512-e2bDA2WJT0wxseVd4lsDP4+3ONX6HpMXQa1ZhFQ7SU+GjvORCmShbCMltrtIDfkYhVHrOcPtj+KhmDBdPdZD1g==", + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/safe-stable-stringify/-/safe-stable-stringify-2.5.0.tgz", + "integrity": "sha512-b3rppTKm9T+PsVCBEOUR46GWI7fdOs00VKZ1+9c1EWDaDMvjQc6tUwuFyIprgGgTcWoVHSKrU8H31ZHA2e0RHA==", + "license": "MIT", "engines": { "node": ">=10" } }, "node_modules/semver": { - "version": "7.7.3", - "resolved": "https://pkg.venly.io/repository/npm-group/semver/-/semver-7.7.3.tgz", - "integrity": "sha512-SdsKMrI9TdgjdweUSR9MweHA4EJ8YxHn8DFaDisvhVlUOe4BF1tLD7GAj0lIqWVl+dPb/rExr0Btby5loQm20Q==", + "version": "7.7.4", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.4.tgz", + "integrity": "sha512-vFKC2IEtQnVhpT78h1Yp8wzwrf8CM+MzKMHGJZfBtzhZNycRFnXsHk6E5TxIkkMsgNS7mdX3AGB7x2QM2di4lA==", "license": "ISC", "bin": { "semver": "bin/semver.js" @@ -629,74 +898,68 @@ "node": ">=10" } }, - "node_modules/strip-hex-prefix": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/strip-hex-prefix/-/strip-hex-prefix-1.0.0.tgz", - "integrity": "sha512-q8d4ue7JGEiVcypji1bALTos+0pWtyGlivAWyPuTkHzuTCJqrK9sWxYQZUq6Nq3cuyv3bm734IhHvHtGGURU6A==", - "dependencies": { - "is-hex-prefixed": "1.0.0" - }, - "engines": { - "node": ">=6.5.0", - "npm": ">=3" - } - }, - "node_modules/superstruct": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/superstruct/-/superstruct-1.0.3.tgz", - "integrity": "sha512-8iTn3oSS8nRGn+C2pgXSKPI3jmpm6FExNazNpjvqS6ZUJQCej3PUXEKM8NjHBOs54ExM+LPW/FBRhymrdcCiSg==", - "engines": { - "node": ">=14.0.0" - } - }, "node_modules/tslib": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.5.0.tgz", - "integrity": "sha512-336iVw3rtn2BUK7ORdIAHTyxHGRIHVReokCR3XjbckJMK7ms8FysBfhLR8IXnAgy7T0PTPNBWKiH514FOW/WSg==" + "version": "2.8.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz", + "integrity": "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==", + "license": "0BSD" }, "node_modules/tweetnacl": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-1.0.3.tgz", - "integrity": "sha512-6rt+RN7aOi1nGMyC4Xa5DdYiukl2UWCbcJft7YhxReBGQD7OAM8Pbxw6YMo4r2diNEA8FEmu32YOn9rhaiE5yw==" - }, - "node_modules/tweetnacl-util": { - "version": "0.15.1", - "resolved": "https://registry.npmjs.org/tweetnacl-util/-/tweetnacl-util-0.15.1.tgz", - "integrity": "sha512-RKJBIj8lySrShN4w6i/BonWp2Z/uxwC3h4y7xsRrpP59ZboCd0GpEVsOnMDYLMmKBpYhb5TgHzZXy7wTfYFBRw==" + "integrity": "sha512-6rt+RN7aOi1nGMyC4Xa5DdYiukl2UWCbcJft7YhxReBGQD7OAM8Pbxw6YMo4r2diNEA8FEmu32YOn9rhaiE5yw==", + "license": "Unlicense" }, "node_modules/typescript": { - "version": "5.0.4", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.0.4.tgz", - "integrity": "sha512-cW9T5W9xY37cc+jfEnaUvX91foxtHkza3Nw3wkoF4sSlKn0MONdkdEndig/qPBWXNkmplh3NzayQzCiHM4/hqw==", + "version": "5.9.3", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.9.3.tgz", + "integrity": "sha512-jl1vZzPDinLr9eUt3J/t7V6FgNEw9QjvBPdysz9KfQDD41fQrC2Y4vKQdiaUpFT4bXlb1RHhLpp8wtm6M5TgSw==", "dev": true, + "license": "Apache-2.0", "bin": { "tsc": "bin/tsc", "tsserver": "bin/tsserver" }, "engines": { - "node": ">=12.20" + "node": ">=14.17" } }, "node_modules/use-sync-external-store": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/use-sync-external-store/-/use-sync-external-store-1.2.0.tgz", "integrity": "sha512-eEgnFxGQ1Ife9bzYs6VLi8/4X6CObHMw9Qr9tPY43iKwsPw8xE8+EFsf/2cFZ5S3esXgpWgtSCtLNS41F+sKPA==", + "license": "MIT", "peerDependencies": { "react": "^16.8.0 || ^17.0.0 || ^18.0.0" } }, + "node_modules/uuid": { + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-9.0.1.tgz", + "integrity": "sha512-b+1eJOlsR9K8HJpow9Ok3fiWOWSIcIzXodvv0rQjVoOVNpWMpxf1wZNpt4y9h10odCNrqnYp1OBzRktckBe3sA==", + "funding": [ + "https://github.com/sponsors/broofa", + "https://github.com/sponsors/ctavan" + ], + "license": "MIT", + "bin": { + "uuid": "dist/bin/uuid" + } + }, "node_modules/xtend": { "version": "4.0.2", "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==", + "license": "MIT", "engines": { "node": ">=0.4" } }, "node_modules/zustand": { - "version": "4.3.6", - "resolved": "https://registry.npmjs.org/zustand/-/zustand-4.3.6.tgz", - "integrity": "sha512-6J5zDxjxLE+yukC2XZWf/IyWVKnXT9b9HUv09VJ/bwGCpKNcaTqp7Ws28Xr8jnbvnZcdRaidztAPsXFBIqufiw==", + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/zustand/-/zustand-4.4.0.tgz", + "integrity": "sha512-2dq6wq4dSxbiPTamGar0NlIG/av0wpyWZJGeQYtUOLegIUvhM2Bf86ekPlmgpUtS5uR7HyetSiktYrGsdsyZgQ==", + "license": "MIT", "dependencies": { "use-sync-external-store": "1.2.0" }, @@ -704,10 +967,14 @@ "node": ">=12.7.0" }, "peerDependencies": { + "@types/react": ">=16.8", "immer": ">=9.0", "react": ">=16.8" }, "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, "immer": { "optional": true }, @@ -716,507 +983,5 @@ } } } - }, - "dependencies": { - "@chainsafe/as-sha256": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/@chainsafe/as-sha256/-/as-sha256-0.3.1.tgz", - "integrity": "sha512-hldFFYuf49ed7DAakWVXSJODuq3pzJEguD8tQ7h+sGkM18vja+OFoJI9krnGmgzyuZC2ETX0NOIcCTy31v2Mtg==" - }, - "@chainsafe/persistent-merkle-tree": { - "version": "0.4.2", - "resolved": "https://registry.npmjs.org/@chainsafe/persistent-merkle-tree/-/persistent-merkle-tree-0.4.2.tgz", - "integrity": "sha512-lLO3ihKPngXLTus/L7WHKaw9PnNJWizlOF1H9NNzHP6Xvh82vzg9F2bzkXhYIFshMZ2gTCEz8tq6STe7r5NDfQ==", - "requires": { - "@chainsafe/as-sha256": "^0.3.1" - } - }, - "@chainsafe/ssz": { - "version": "0.9.4", - "resolved": "https://registry.npmjs.org/@chainsafe/ssz/-/ssz-0.9.4.tgz", - "integrity": "sha512-77Qtg2N1ayqs4Bg/wvnWfg5Bta7iy7IRh8XqXh7oNMeP2HBbBwx8m6yTpA8p0EHItWPEBkgZd5S5/LSlp3GXuQ==", - "requires": { - "@chainsafe/as-sha256": "^0.3.1", - "@chainsafe/persistent-merkle-tree": "^0.4.2", - "case": "^1.6.3" - } - }, - "@ethereumjs/rlp": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/@ethereumjs/rlp/-/rlp-4.0.1.tgz", - "integrity": "sha512-tqsQiBQDQdmPWE1xkkBq4rlSW5QZpLOUJ5RJh2/9fug+q9tnUhuZoVLk7s0scUIKTOzEtR72DFBXI4WiZcMpvw==" - }, - "@ethereumjs/util": { - "version": "8.0.5", - "resolved": "https://registry.npmjs.org/@ethereumjs/util/-/util-8.0.5.tgz", - "integrity": "sha512-259rXKK3b3D8HRVdRmlOEi6QFvwxdt304hhrEAmpZhsj7ufXEOTIc9JRZPMnXatKjECokdLNBcDOFBeBSzAIaw==", - "requires": { - "@chainsafe/ssz": "0.9.4", - "@ethereumjs/rlp": "^4.0.1", - "ethereum-cryptography": "^1.1.2" - } - }, - "@ethersproject/address": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@ethersproject/address/-/address-5.7.0.tgz", - "integrity": "sha512-9wYhYt7aghVGo758POM5nqcOMaE168Q6aRLJZwUmiqSrAungkG74gSSeKEIR7ukixesdRZGPgVqme6vmxs1fkA==", - "dev": true, - "requires": { - "@ethersproject/bignumber": "^5.7.0", - "@ethersproject/bytes": "^5.7.0", - "@ethersproject/keccak256": "^5.7.0", - "@ethersproject/logger": "^5.7.0", - "@ethersproject/rlp": "^5.7.0" - } - }, - "@ethersproject/bignumber": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@ethersproject/bignumber/-/bignumber-5.7.0.tgz", - "integrity": "sha512-n1CAdIHRWjSucQO3MC1zPSVgV/6dy/fjL9pMrPP9peL+QxEg9wOsVqwD4+818B6LUEtaXzVHQiuivzRoxPxUGw==", - "requires": { - "@ethersproject/bytes": "^5.7.0", - "@ethersproject/logger": "^5.7.0", - "bn.js": "^5.2.1" - }, - "dependencies": { - "bn.js": { - "version": "5.2.3", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-5.2.3.tgz", - "integrity": "sha512-EAcmnPkxpntVL+DS7bO1zhcZNvCkxqtkd0ZY53h06GNQ3DEkkGZ/gKgmDv6DdZQGj9BgfSPKtJJ7Dp1GPP8f7w==" - } - } - }, - "@ethersproject/bytes": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@ethersproject/bytes/-/bytes-5.7.0.tgz", - "integrity": "sha512-nsbxwgFXWh9NyYWo+U8atvmMsSdKJprTcICAkvbBffT75qDocbuggBU0SJiVK2MuTrp0q+xvLkTnGMPK1+uA9A==", - "requires": { - "@ethersproject/logger": "^5.7.0" - } - }, - "@ethersproject/keccak256": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@ethersproject/keccak256/-/keccak256-5.7.0.tgz", - "integrity": "sha512-2UcPboeL/iW+pSg6vZ6ydF8tCnv3Iu/8tUmLLzWWGzxWKFFqOBQFLo6uLUv6BDrLgCDfN28RJ/wtByx+jZ4KBg==", - "dev": true, - "requires": { - "@ethersproject/bytes": "^5.7.0", - "js-sha3": "0.8.0" - } - }, - "@ethersproject/logger": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@ethersproject/logger/-/logger-5.7.0.tgz", - "integrity": "sha512-0odtFdXu/XHtjQXJYA3u9G0G8btm0ND5Cu8M7i5vhEcE8/HmF4Lbdqanwyv4uQTr2tx6b7fQRmgLrsnpQlmnig==" - }, - "@ethersproject/rlp": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@ethersproject/rlp/-/rlp-5.7.0.tgz", - "integrity": "sha512-rBxzX2vK8mVF7b0Tol44t5Tb8gomOHkj5guL+HhzQ1yBh/ydjGnpw6at+X6Iw0Kp3OzzzkcKp8N9r0W4kYSs9w==", - "dev": true, - "requires": { - "@ethersproject/bytes": "^5.7.0", - "@ethersproject/logger": "^5.7.0" - } - }, - "@metamask/eth-json-rpc-middleware": { - "version": "11.0.0", - "resolved": "https://registry.npmjs.org/@metamask/eth-json-rpc-middleware/-/eth-json-rpc-middleware-11.0.0.tgz", - "integrity": "sha512-QDEUZsoUdgZKwFnMS8XW/aQ8mJULaOssXjGnk9DocCs/p8rj69bovBsHtnlYawVHYuOy4Cual5GmAtvAZcrPxA==", - "requires": { - "@metamask/eth-json-rpc-provider": "^1.0.0", - "@metamask/eth-sig-util": "^5.0.0", - "@metamask/utils": "^3.0.3", - "clone": "^2.1.1", - "eth-block-tracker": "^7.0.0", - "eth-rpc-errors": "^4.0.3", - "json-rpc-engine": "^6.1.0", - "pify": "^3.0.0", - "safe-stable-stringify": "^2.3.2" - } - }, - "@metamask/eth-json-rpc-provider": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/@metamask/eth-json-rpc-provider/-/eth-json-rpc-provider-1.0.0.tgz", - "integrity": "sha512-Bl9FbSNctgh1FRjUX0Gpoo4BwFXBKplcZ198y9/gysUhgOBD4MKqe3V4XzaYXuvB7VhVA9TNH0ZsaK1MnolpWg==", - "requires": { - "@metamask/safe-event-emitter": "^2.0.0", - "json-rpc-engine": "^6.1.0" - } - }, - "@metamask/eth-sig-util": { - "version": "5.0.2", - "resolved": "https://registry.npmjs.org/@metamask/eth-sig-util/-/eth-sig-util-5.0.2.tgz", - "integrity": "sha512-RU6fG/H6/UlBol221uBkq5C7w3TwLK611nEZliO2u+kO0vHKGBXnIPlhI0tzKUigjhUeOd9mhCNbNvhh0LKt9Q==", - "requires": { - "@ethereumjs/util": "^8.0.0", - "bn.js": "^4.11.8", - "ethereum-cryptography": "^1.1.2", - "ethjs-util": "^0.1.6", - "tweetnacl": "^1.0.3", - "tweetnacl-util": "^0.15.1" - } - }, - "@metamask/safe-event-emitter": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/@metamask/safe-event-emitter/-/safe-event-emitter-2.0.0.tgz", - "integrity": "sha512-/kSXhY692qiV1MXu6EeOZvg5nECLclxNXcKCxJ3cXQgYuRymRHpdx/t7JXfsK+JLjwA1e1c1/SBrlQYpusC29Q==" - }, - "@metamask/utils": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/@metamask/utils/-/utils-3.6.0.tgz", - "integrity": "sha512-9cIRrfkWvHblSiNDVXsjivqa9Ak0RYo/1H6tqTqTbAx+oBK2Sva0lWDHxGchOqA7bySGUJKAWSNJvH6gdHZ0gQ==", - "requires": { - "@types/debug": "^4.1.7", - "debug": "^4.3.4", - "semver": "^7.5.2", - "superstruct": "^1.0.3" - } - }, - "@noble/hashes": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/@noble/hashes/-/hashes-1.2.0.tgz", - "integrity": "sha512-FZfhjEDbT5GRswV3C6uvLPHMiVD6lQBmpoX5+eSiPaMTXte/IKqI5dykDxzZB/WBeK/CDuQRBWarPdi3FNY2zQ==" - }, - "@noble/secp256k1": { - "version": "1.7.1", - "resolved": "https://registry.npmjs.org/@noble/secp256k1/-/secp256k1-1.7.1.tgz", - "integrity": "sha512-hOUk6AyBFmqVrv7k5WAw/LpszxVbj9gGN4JRkIX52fdFAj1UA61KXmZDvqVEm+pOyec3+fIeZB02LYa/pWOArw==" - }, - "@scure/base": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/@scure/base/-/base-1.1.1.tgz", - "integrity": "sha512-ZxOhsSyxYwLJj3pLZCefNitxsj093tb2vq90mp2txoYeBqbcjDjqFhyM8eUjq/uFm6zJ+mUuqxlS2FkuSY1MTA==" - }, - "@scure/bip32": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/@scure/bip32/-/bip32-1.1.5.tgz", - "integrity": "sha512-XyNh1rB0SkEqd3tXcXMi+Xe1fvg+kUIcoRIEujP1Jgv7DqW2r9lg3Ah0NkFaCs9sTkQAQA8kw7xiRXzENi9Rtw==", - "requires": { - "@noble/hashes": "~1.2.0", - "@noble/secp256k1": "~1.7.0", - "@scure/base": "~1.1.0" - } - }, - "@scure/bip39": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/@scure/bip39/-/bip39-1.1.1.tgz", - "integrity": "sha512-t+wDck2rVkh65Hmv280fYdVdY25J9YeEUIgn2LG1WM6gxFkGzcksoDiUkWVpVp3Oex9xGC68JU2dSbUfwZ2jPg==", - "requires": { - "@noble/hashes": "~1.2.0", - "@scure/base": "~1.1.0" - } - }, - "@types/debug": { - "version": "4.1.7", - "resolved": "https://registry.npmjs.org/@types/debug/-/debug-4.1.7.tgz", - "integrity": "sha512-9AonUzyTjXXhEOa0DnqpzZi6VHlqKMswga9EXjpXnnqxwLtdvPPtlO8evrI5D9S6asFRCQ6v+wpiUKbw+vKqyg==", - "requires": { - "@types/ms": "*" - } - }, - "@types/ms": { - "version": "0.7.31", - "resolved": "https://registry.npmjs.org/@types/ms/-/ms-0.7.31.tgz", - "integrity": "sha512-iiUgKzV9AuaEkZqkOLDIvlQiL6ltuZd9tGcW3gwpnX8JbuiuhFlEGmmFXEXkN50Cvq7Os88IY2v0dkDqXYWVgA==" - }, - "@types/node": { - "version": "12.20.55", - "resolved": "https://registry.npmjs.org/@types/node/-/node-12.20.55.tgz", - "integrity": "sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==" - }, - "@venly/connect": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/@venly/connect/-/connect-2.2.0.tgz", - "integrity": "sha512-fSG+loJ7q6Oy8FCIPPIba3z6Ss6TEJ4ZRGDSoQw7Od0JCaSPPJ1MOA9/4MplVIbj3eCqR/FS11tq0K1jpQZavQ==", - "requires": { - "@types/node": "^12.7.1", - "es6-promise": "^4.2.8", - "keycloak-js": "11.0.2" - } - }, - "@venly/web3-provider": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/@venly/web3-provider/-/web3-provider-3.1.0.tgz", - "integrity": "sha512-yPZJPGDTiwEq1YnEU2gL1NxjteQPFRGWeCKuvYd7sy3EH9fUcohwhkJbVuKipL5eGpAW5j4AyABjpkb79XZcxQ==", - "requires": { - "@ethersproject/bignumber": "^5.7.0", - "@metamask/eth-json-rpc-middleware": "^11.0.0", - "@metamask/eth-json-rpc-provider": "^1.0.0", - "@venly/connect": "^2.2.0", - "eth-block-tracker": "^7.0.0", - "eth-json-rpc-filters": "^6.0.0", - "json-rpc-engine": "^6.1.0" - } - }, - "@web3-react/store": { - "version": "8.1.2-beta.0", - "resolved": "https://registry.npmjs.org/@web3-react/store/-/store-8.1.2-beta.0.tgz", - "integrity": "sha512-Xmogyl52zSYkPILwt+LjFIlTSlwrx25IrotrONglE37Pq263k/AAMii3AlblDuUF3CWSuxnq2YPuhZ4PODVaKA==", - "dev": true, - "requires": { - "@ethersproject/address": "^5", - "@web3-react/types": "^8.1.2-beta.0", - "zustand": "^4.3.5" - } - }, - "@web3-react/types": { - "version": "8.1.2-beta.0", - "resolved": "https://registry.npmjs.org/@web3-react/types/-/types-8.1.2-beta.0.tgz", - "integrity": "sha512-gvVJqRvGsABpoUZA7RWQQiOq5qv5exkUW6ouSjlO4Q5BkfCBgT4NlIUVQ91w3JnS5qkDpk/uKDMt+wDFw0Yssw==", - "requires": { - "zustand": "^4.3.5" - } - }, - "async-mutex": { - "version": "0.2.6", - "resolved": "https://registry.npmjs.org/async-mutex/-/async-mutex-0.2.6.tgz", - "integrity": "sha512-Hs4R+4SPgamu6rSGW8C7cV9gaWUKEHykfzCCvIRuaVv636Ju10ZdeUbvb4TBEW0INuq2DHZqXbK4Nd3yG4RaRw==", - "requires": { - "tslib": "^2.0.0" - } - }, - "base64-js": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.3.1.tgz", - "integrity": "sha512-mLQ4i2QO1ytvGWFWmcngKO//JXAQueZvwEKtjgQFM4jIK0kU+ytMfplL8j+n5mspOfjHwoAg+9yhb7BwAHm36g==" - }, - "bn.js": { - "version": "4.12.3", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.3.tgz", - "integrity": "sha512-fGTi3gxV/23FTYdAoUtLYp6qySe2KE3teyZitipKNRuVYcBkoP/bB3guXN/XVKUe9mxCHXnc9C4ocyz8OmgN0g==" - }, - "case": { - "version": "1.6.3", - "resolved": "https://registry.npmjs.org/case/-/case-1.6.3.tgz", - "integrity": "sha512-mzDSXIPaFwVDvZAHqZ9VlbyF4yyXRuX6IvB06WvPYkqJVO24kX1PPhv9bfpKNFZyxYFmmgo03HUiD8iklmJYRQ==" - }, - "clone": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/clone/-/clone-2.1.2.tgz", - "integrity": "sha512-3Pe/CF1Nn94hyhIYpjtiLhdCoEoz0DqQ+988E9gmeEdQZlojxnOb74wctFyuwWQHzqyf9X7C7MG8juUpqBJT8w==" - }, - "debug": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", - "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", - "requires": { - "ms": "2.1.2" - } - }, - "es6-promise": { - "version": "4.2.8", - "resolved": "https://registry.npmjs.org/es6-promise/-/es6-promise-4.2.8.tgz", - "integrity": "sha512-HJDGx5daxeIvxdBxvG2cb9g4tEvwIk3i8+nhX0yGrYmZUzbkdg8QbDevheDB8gd0//uPj4c1EQua8Q+MViT0/w==" - }, - "eth-block-tracker": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/eth-block-tracker/-/eth-block-tracker-7.0.0.tgz", - "integrity": "sha512-QDky41HSmiKpxpXbLBnojizCkeNH7N+imqhq5NWJASlIVDxY4h9dRwiLjRFMC8F7hHFxsOt/XaVK0CGkAwXlxg==", - "requires": { - "@metamask/eth-json-rpc-provider": "^1.0.0", - "@metamask/safe-event-emitter": "^2.0.0", - "@metamask/utils": "^3.0.1", - "json-rpc-random-id": "^1.0.1", - "pify": "^3.0.0" - } - }, - "eth-json-rpc-filters": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/eth-json-rpc-filters/-/eth-json-rpc-filters-6.0.0.tgz", - "integrity": "sha512-7jm1Qm+uAdcYS2PDPuIMj6BM9kmLVCnRVRTvc5ZsUU+rMBRUg1vZ1qqtKa54AwMna7n7x3ZmUbFPGDUlqDN1AQ==", - "requires": { - "@metamask/safe-event-emitter": "^2.0.0", - "async-mutex": "^0.2.6", - "eth-query": "^2.1.2", - "json-rpc-engine": "^6.1.0", - "pify": "^5.0.0" - }, - "dependencies": { - "pify": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-5.0.0.tgz", - "integrity": "sha512-eW/gHNMlxdSP6dmG6uJip6FXN0EQBwm2clYYd8Wul42Cwu/DK8HEftzsapcNdYe2MfLiIwZqsDk2RDEsTE79hA==" - } - } - }, - "eth-query": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/eth-query/-/eth-query-2.1.2.tgz", - "integrity": "sha512-srES0ZcvwkR/wd5OQBRA1bIJMww1skfGS0s8wlwK3/oNP4+wnds60krvu5R1QbpRQjMmpG5OMIWro5s7gvDPsA==", - "requires": { - "json-rpc-random-id": "^1.0.0", - "xtend": "^4.0.1" - } - }, - "eth-rpc-errors": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/eth-rpc-errors/-/eth-rpc-errors-4.0.3.tgz", - "integrity": "sha512-Z3ymjopaoft7JDoxZcEb3pwdGh7yiYMhOwm2doUt6ASXlMavpNlK6Cre0+IMl2VSGyEU9rkiperQhp5iRxn5Pg==", - "requires": { - "fast-safe-stringify": "^2.0.6" - } - }, - "ethereum-cryptography": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/ethereum-cryptography/-/ethereum-cryptography-1.2.0.tgz", - "integrity": "sha512-6yFQC9b5ug6/17CQpCyE3k9eKBMdhyVjzUy1WkiuY/E4vj/SXDBbCw8QEIaXqf0Mf2SnY6RmpDcwlUmBSS0EJw==", - "requires": { - "@noble/hashes": "1.2.0", - "@noble/secp256k1": "1.7.1", - "@scure/bip32": "1.1.5", - "@scure/bip39": "1.1.1" - } - }, - "ethjs-util": { - "version": "0.1.6", - "resolved": "https://registry.npmjs.org/ethjs-util/-/ethjs-util-0.1.6.tgz", - "integrity": "sha512-CUnVOQq7gSpDHZVVrQW8ExxUETWrnrvXYvYz55wOU8Uj4VCgw56XC2B/fVqQN+f7gmrnRHSLVnFAwsCuNwji8w==", - "requires": { - "is-hex-prefixed": "1.0.0", - "strip-hex-prefix": "1.0.0" - } - }, - "fast-safe-stringify": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/fast-safe-stringify/-/fast-safe-stringify-2.1.1.tgz", - "integrity": "sha512-W+KJc2dmILlPplD/H4K9l9LcAHAfPtP6BY84uVLXQ6Evcz9Lcg33Y2z1IVblT6xdY54PXYVHEv+0Wpq8Io6zkA==" - }, - "is-hex-prefixed": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-hex-prefixed/-/is-hex-prefixed-1.0.0.tgz", - "integrity": "sha512-WvtOiug1VFrE9v1Cydwm+FnXd3+w9GaeVUss5W4v/SLy3UW00vP+6iNF2SdnfiBoLy4bTqVdkftNGTUeOFVsbA==" - }, - "js-sha256": { - "version": "0.9.0", - "resolved": "https://registry.npmjs.org/js-sha256/-/js-sha256-0.9.0.tgz", - "integrity": "sha512-sga3MHh9sgQN2+pJ9VYZ+1LPwXOxuBJBA5nrR5/ofPfuiJBE2hnjsaN8se8JznOmGLN2p49Pe5U/ttafcs/apA==" - }, - "js-sha3": { - "version": "0.8.0", - "resolved": "https://registry.npmjs.org/js-sha3/-/js-sha3-0.8.0.tgz", - "integrity": "sha512-gF1cRrHhIzNfToc802P800N8PpXS+evLLXfsVpowqmAFR9uwbi89WvXg2QspOmXL8QL86J4T1EpFu+yUkwJY3Q==", - "dev": true - }, - "js-tokens": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", - "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", - "peer": true - }, - "json-rpc-engine": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/json-rpc-engine/-/json-rpc-engine-6.1.0.tgz", - "integrity": "sha512-NEdLrtrq1jUZyfjkr9OCz9EzCNhnRyWtt1PAnvnhwy6e8XETS0Dtc+ZNCO2gvuAoKsIn2+vCSowXTYE4CkgnAQ==", - "requires": { - "@metamask/safe-event-emitter": "^2.0.0", - "eth-rpc-errors": "^4.0.2" - } - }, - "json-rpc-random-id": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json-rpc-random-id/-/json-rpc-random-id-1.0.1.tgz", - "integrity": "sha512-RJ9YYNCkhVDBuP4zN5BBtYAzEl03yq/jIIsyif0JY9qyJuQQZNeDK7anAPKKlyEtLSj2s8h6hNh2F8zO5q7ScA==" - }, - "keycloak-js": { - "version": "11.0.2", - "resolved": "https://registry.npmjs.org/keycloak-js/-/keycloak-js-11.0.2.tgz", - "integrity": "sha512-dnvzgTetovu3eTjJtvBQQhxRN4jqvd/DaA2wFaE4aWIFXhwRcoPpZT8ZJ7MwlICDPdCgzbCsOsBjpL8CbYOZsg==", - "requires": { - "base64-js": "1.3.1", - "js-sha256": "0.9.0" - } - }, - "loose-envify": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", - "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", - "peer": true, - "requires": { - "js-tokens": "^3.0.0 || ^4.0.0" - } - }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" - }, - "pify": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", - "integrity": "sha512-C3FsVNH1udSEX48gGX1xfvwTWfsYWj5U+8/uK15BGzIGrKoUpghX8hWZwa/OFnakBiiVNmBvemTJR5mcy7iPcg==" - }, - "react": { - "version": "18.2.0", - "resolved": "https://registry.npmjs.org/react/-/react-18.2.0.tgz", - "integrity": "sha512-/3IjMdb2L9QbBdWiW5e3P2/npwMBaU9mHCSCUzNln0ZCYbcfTsGbTJrU/kGemdH2IWmB2ioZ+zkxtmq6g09fGQ==", - "peer": true, - "requires": { - "loose-envify": "^1.1.0" - } - }, - "safe-stable-stringify": { - "version": "2.4.3", - "resolved": "https://registry.npmjs.org/safe-stable-stringify/-/safe-stable-stringify-2.4.3.tgz", - "integrity": "sha512-e2bDA2WJT0wxseVd4lsDP4+3ONX6HpMXQa1ZhFQ7SU+GjvORCmShbCMltrtIDfkYhVHrOcPtj+KhmDBdPdZD1g==" - }, - "semver": { - "version": "7.7.3", - "resolved": "https://pkg.venly.io/repository/npm-group/semver/-/semver-7.7.3.tgz", - "integrity": "sha512-SdsKMrI9TdgjdweUSR9MweHA4EJ8YxHn8DFaDisvhVlUOe4BF1tLD7GAj0lIqWVl+dPb/rExr0Btby5loQm20Q==" - }, - "strip-hex-prefix": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/strip-hex-prefix/-/strip-hex-prefix-1.0.0.tgz", - "integrity": "sha512-q8d4ue7JGEiVcypji1bALTos+0pWtyGlivAWyPuTkHzuTCJqrK9sWxYQZUq6Nq3cuyv3bm734IhHvHtGGURU6A==", - "requires": { - "is-hex-prefixed": "1.0.0" - } - }, - "superstruct": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/superstruct/-/superstruct-1.0.3.tgz", - "integrity": "sha512-8iTn3oSS8nRGn+C2pgXSKPI3jmpm6FExNazNpjvqS6ZUJQCej3PUXEKM8NjHBOs54ExM+LPW/FBRhymrdcCiSg==" - }, - "tslib": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.5.0.tgz", - "integrity": "sha512-336iVw3rtn2BUK7ORdIAHTyxHGRIHVReokCR3XjbckJMK7ms8FysBfhLR8IXnAgy7T0PTPNBWKiH514FOW/WSg==" - }, - "tweetnacl": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-1.0.3.tgz", - "integrity": "sha512-6rt+RN7aOi1nGMyC4Xa5DdYiukl2UWCbcJft7YhxReBGQD7OAM8Pbxw6YMo4r2diNEA8FEmu32YOn9rhaiE5yw==" - }, - "tweetnacl-util": { - "version": "0.15.1", - "resolved": "https://registry.npmjs.org/tweetnacl-util/-/tweetnacl-util-0.15.1.tgz", - "integrity": "sha512-RKJBIj8lySrShN4w6i/BonWp2Z/uxwC3h4y7xsRrpP59ZboCd0GpEVsOnMDYLMmKBpYhb5TgHzZXy7wTfYFBRw==" - }, - "typescript": { - "version": "5.0.4", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.0.4.tgz", - "integrity": "sha512-cW9T5W9xY37cc+jfEnaUvX91foxtHkza3Nw3wkoF4sSlKn0MONdkdEndig/qPBWXNkmplh3NzayQzCiHM4/hqw==", - "dev": true - }, - "use-sync-external-store": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/use-sync-external-store/-/use-sync-external-store-1.2.0.tgz", - "integrity": "sha512-eEgnFxGQ1Ife9bzYs6VLi8/4X6CObHMw9Qr9tPY43iKwsPw8xE8+EFsf/2cFZ5S3esXgpWgtSCtLNS41F+sKPA==", - "requires": {} - }, - "xtend": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", - "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==" - }, - "zustand": { - "version": "4.3.6", - "resolved": "https://registry.npmjs.org/zustand/-/zustand-4.3.6.tgz", - "integrity": "sha512-6J5zDxjxLE+yukC2XZWf/IyWVKnXT9b9HUv09VJ/bwGCpKNcaTqp7Ws28Xr8jnbvnZcdRaidztAPsXFBIqufiw==", - "requires": { - "use-sync-external-store": "1.2.0" - } - } } } From e1ba2272ddc7c30aaa525816e5b862eb2aaccb7c Mon Sep 17 00:00:00 2001 From: nico-ptrs Date: Fri, 10 Apr 2026 08:50:06 +0000 Subject: [PATCH 16/31] 1.2.0-develop.1 --- package-lock.json | 4 ++-- package.json | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/package-lock.json b/package-lock.json index f5914b6..329f13b 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "@venly/web3-react-venly", - "version": "1.2.0-SNAPSHOT.0", + "version": "1.2.0-develop.1", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "@venly/web3-react-venly", - "version": "1.2.0-SNAPSHOT.0", + "version": "1.2.0-develop.1", "license": "MIT", "dependencies": { "@venly/web3-provider": "^3.1.0", diff --git a/package.json b/package.json index 7089fdc..abe59ee 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@venly/web3-react-venly", - "version": "1.2.0-develop.0", + "version": "1.2.0-develop.1", "description": "Venly connector for Web3-React", "type": "commonjs", "types": "./dist/index.d.ts", From 75b1773e9e2439a5bee5666632fba33d4d54482f Mon Sep 17 00:00:00 2001 From: nico-ptrs Date: Thu, 21 May 2026 09:33:57 +0000 Subject: [PATCH 17/31] bump develop version v1.3.0-SNAPSHOT.0 --- .../_logs/2026-05-21T09_33_57_768Z-debug-0.log | 18 ++++++++++++++++++ package-lock.json | 4 ++-- package.json | 2 +- 3 files changed, 21 insertions(+), 3 deletions(-) create mode 100644 .npm/_logs/2026-05-21T09_33_57_768Z-debug-0.log diff --git a/.npm/_logs/2026-05-21T09_33_57_768Z-debug-0.log b/.npm/_logs/2026-05-21T09_33_57_768Z-debug-0.log new file mode 100644 index 0000000..88d8272 --- /dev/null +++ b/.npm/_logs/2026-05-21T09_33_57_768Z-debug-0.log @@ -0,0 +1,18 @@ +0 verbose cli /opt/hostedtoolcache/node/18.20.8/x64/bin/node /opt/hostedtoolcache/node/18.20.8/x64/bin/npm +1 info using npm@10.8.2 +2 info using node@v18.20.8 +3 silly config load:file:/opt/hostedtoolcache/node/18.20.8/x64/lib/node_modules/npm/npmrc +4 silly config load:file:/home/runner/work/web3-react-venly/web3-react-venly/.npmrc +5 silly config load:file:/opt/hostedtoolcache/node/18.20.8/x64/etc/npmrc +6 verbose title npm version preminor +7 verbose argv "version" "preminor" "--preid" "SNAPSHOT" "--git-tag-version" "false" +8 verbose logfile logs-max:10 dir:/home/runner/work/web3-react-venly/web3-react-venly/.npm/_logs/2026-05-21T09_33_57_768Z- +9 verbose logfile /home/runner/work/web3-react-venly/web3-react-venly/.npm/_logs/2026-05-21T09_33_57_768Z-debug-0.log +10 silly logfile done cleaning log files +11 verbose version Not tagging: not in a git repo or no git cmd +12 verbose cwd /home/runner/work/web3-react-venly/web3-react-venly +13 verbose os Linux 6.17.0-1013-azure +14 verbose node v18.20.8 +15 verbose npm v10.8.2 +16 verbose exit 0 +17 info ok diff --git a/package-lock.json b/package-lock.json index 329f13b..ebb450b 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "@venly/web3-react-venly", - "version": "1.2.0-develop.1", + "version": "1.3.0-SNAPSHOT.0", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "@venly/web3-react-venly", - "version": "1.2.0-develop.1", + "version": "1.3.0-SNAPSHOT.0", "license": "MIT", "dependencies": { "@venly/web3-provider": "^3.1.0", diff --git a/package.json b/package.json index abe59ee..0c0d471 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@venly/web3-react-venly", - "version": "1.2.0-develop.1", + "version": "1.3.0-SNAPSHOT.0", "description": "Venly connector for Web3-React", "type": "commonjs", "types": "./dist/index.d.ts", From 3a81962ede8288dfbaa530aaa8c168b99fcedf3c Mon Sep 17 00:00:00 2001 From: "venly-ci-bot[bot]" Date: Thu, 21 May 2026 09:34:15 +0000 Subject: [PATCH 18/31] 1.3.0-develop.0 --- package-lock.json | 4 ++-- package.json | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/package-lock.json b/package-lock.json index ebb450b..83c4555 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "@venly/web3-react-venly", - "version": "1.3.0-SNAPSHOT.0", + "version": "1.3.0-develop.0", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "@venly/web3-react-venly", - "version": "1.3.0-SNAPSHOT.0", + "version": "1.3.0-develop.0", "license": "MIT", "dependencies": { "@venly/web3-provider": "^3.1.0", diff --git a/package.json b/package.json index 0c0d471..a03052d 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@venly/web3-react-venly", - "version": "1.3.0-SNAPSHOT.0", + "version": "1.3.0-develop.0", "description": "Venly connector for Web3-React", "type": "commonjs", "types": "./dist/index.d.ts", From 4b08c7aad4cfce3f6c10b0c1ec09f544adc62aa1 Mon Sep 17 00:00:00 2001 From: nico-ptrs Date: Thu, 21 May 2026 09:35:26 +0000 Subject: [PATCH 19/31] 1.2.0-develop.2 --- package-lock.json | 4 ++-- package.json | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/package-lock.json b/package-lock.json index 329f13b..fa67833 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "@venly/web3-react-venly", - "version": "1.2.0-develop.1", + "version": "1.2.0-develop.2", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "@venly/web3-react-venly", - "version": "1.2.0-develop.1", + "version": "1.2.0-develop.2", "license": "MIT", "dependencies": { "@venly/web3-provider": "^3.1.0", diff --git a/package.json b/package.json index abe59ee..a486b34 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@venly/web3-react-venly", - "version": "1.2.0-develop.1", + "version": "1.2.0-develop.2", "description": "Venly connector for Web3-React", "type": "commonjs", "types": "./dist/index.d.ts", From 451d623597cbaacdae74122fcff89b5fb09bae33 Mon Sep 17 00:00:00 2001 From: nico-ptrs Date: Thu, 21 May 2026 09:35:38 +0000 Subject: [PATCH 20/31] Update develop to branch version to avoid merge conflicts --- package-lock.json | 4 ++-- package.json | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/package-lock.json b/package-lock.json index 83c4555..329f13b 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "@venly/web3-react-venly", - "version": "1.3.0-develop.0", + "version": "1.2.0-develop.1", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "@venly/web3-react-venly", - "version": "1.3.0-develop.0", + "version": "1.2.0-develop.1", "license": "MIT", "dependencies": { "@venly/web3-provider": "^3.1.0", diff --git a/package.json b/package.json index a03052d..abe59ee 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@venly/web3-react-venly", - "version": "1.3.0-develop.0", + "version": "1.2.0-develop.1", "description": "Venly connector for Web3-React", "type": "commonjs", "types": "./dist/index.d.ts", From 8fdcee9b924e32ba80ccb8f8816561a550305ac6 Mon Sep 17 00:00:00 2001 From: nico-ptrs Date: Thu, 21 May 2026 09:35:39 +0000 Subject: [PATCH 21/31] Update develop version back to pre-merge state --- package-lock.json | 4 ++-- package.json | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/package-lock.json b/package-lock.json index 329f13b..83c4555 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "@venly/web3-react-venly", - "version": "1.2.0-develop.1", + "version": "1.3.0-develop.0", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "@venly/web3-react-venly", - "version": "1.2.0-develop.1", + "version": "1.3.0-develop.0", "license": "MIT", "dependencies": { "@venly/web3-provider": "^3.1.0", diff --git a/package.json b/package.json index abe59ee..a03052d 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@venly/web3-react-venly", - "version": "1.2.0-develop.1", + "version": "1.3.0-develop.0", "description": "Venly connector for Web3-React", "type": "commonjs", "types": "./dist/index.d.ts", From 757308d3518125248855c91a03511f5d54a40968 Mon Sep 17 00:00:00 2001 From: NicoPeeters Date: Thu, 21 May 2026 12:06:34 +0200 Subject: [PATCH 22/31] task() - Use latest web3-provider --- package-lock.json | 33 ++++++++++----------------------- package.json | 2 +- 2 files changed, 11 insertions(+), 24 deletions(-) diff --git a/package-lock.json b/package-lock.json index fa67833..cd4bab6 100644 --- a/package-lock.json +++ b/package-lock.json @@ -9,7 +9,7 @@ "version": "1.2.0-develop.2", "license": "MIT", "dependencies": { - "@venly/web3-provider": "^3.1.0", + "@venly/web3-provider": "^3.8.0", "@web3-react/types": "^8.1.2-beta.0" }, "devDependencies": { @@ -562,27 +562,20 @@ "integrity": "sha512-GsCCIZDE/p3i96vtEqx+7dBUGXrc7zeSK3wwPHIaRThS+9OhWIXRqzs4d6k1SVU8g91DrNRWxWUGhp5KXQb2VA==", "license": "MIT" }, - "node_modules/@types/node": { - "version": "12.20.55", - "resolved": "https://registry.npmjs.org/@types/node/-/node-12.20.55.tgz", - "integrity": "sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==", - "license": "MIT" - }, "node_modules/@venly/connect": { - "version": "2.10.0", - "resolved": "https://registry.npmjs.org/@venly/connect/-/connect-2.10.0.tgz", - "integrity": "sha512-5KMQLMoL7TaQPrzjs+z5H/XIxx2WYpzFWdtGQs65EfNBDIyhQ2sTUwgTZfC1cGOor3SXT2jrascfbZRwUneUuw==", + "version": "2.11.0", + "resolved": "https://registry.npmjs.org/@venly/connect/-/connect-2.11.0.tgz", + "integrity": "sha512-bBxeMGrGI4Ng5EcDH4WhYZsRQdYXcxGW9zGQykls2X4vYg2RRcVOuglLWcb/4AnmykqHZQBXLb6fUp/dutvOsA==", "license": "MIT", "dependencies": { - "@types/node": "^12.7.1", - "es6-promise": "^4.2.8", - "keycloak-js": "11.0.2" + "keycloak-js": "11.0.2", + "tslib": "^2.8.0" } }, "node_modules/@venly/web3-provider": { - "version": "3.7.0", - "resolved": "https://registry.npmjs.org/@venly/web3-provider/-/web3-provider-3.7.0.tgz", - "integrity": "sha512-nGnia3R5v7TZVs20uAlnQJtA2HvFS1Ovmeu7gyLny8Lzzlfw7h8q967qxdyTIkslkWe8y9xY50pPa7793OVKfA==", + "version": "3.8.0", + "resolved": "https://registry.npmjs.org/@venly/web3-provider/-/web3-provider-3.8.0.tgz", + "integrity": "sha512-Yhyr+X0MxZQ9uUD/oS91MGqReTGjZEXUVBrkxWdhTIUM1Npd+Pf44JgbiOFVB85gN0T2DcTHheDP9y7RYeqbyQ==", "license": "MIT", "dependencies": { "@ethersproject/bignumber": "^5.7.0", @@ -591,7 +584,7 @@ "@metamask/json-rpc-engine": "^7.1.1", "@metamask/rpc-errors": "^6.0.0", "@metamask/utils": "^8.1.0", - "@venly/connect": "2.10.0", + "@venly/connect": "^2.11.0", "eth-block-tracker": "^8.0.0", "eth-json-rpc-filters": "^6.0.1" } @@ -667,12 +660,6 @@ } } }, - "node_modules/es6-promise": { - "version": "4.2.8", - "resolved": "https://registry.npmjs.org/es6-promise/-/es6-promise-4.2.8.tgz", - "integrity": "sha512-HJDGx5daxeIvxdBxvG2cb9g4tEvwIk3i8+nhX0yGrYmZUzbkdg8QbDevheDB8gd0//uPj4c1EQua8Q+MViT0/w==", - "license": "MIT" - }, "node_modules/eth-block-tracker": { "version": "8.1.0", "resolved": "https://registry.npmjs.org/eth-block-tracker/-/eth-block-tracker-8.1.0.tgz", diff --git a/package.json b/package.json index a486b34..ac9ad31 100644 --- a/package.json +++ b/package.json @@ -27,7 +27,7 @@ }, "homepage": "https://venly.io", "dependencies": { - "@venly/web3-provider": "^3.1.0", + "@venly/web3-provider": "^3.8.0", "@web3-react/types": "^8.1.2-beta.0" }, "devDependencies": { From ce9b7ac6375e10228e8c6860eb8a0fb5d95b18ce Mon Sep 17 00:00:00 2001 From: nico-ptrs Date: Thu, 21 May 2026 10:07:20 +0000 Subject: [PATCH 23/31] 1.2.0-develop.3 --- package-lock.json | 4 ++-- package.json | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/package-lock.json b/package-lock.json index cd4bab6..340db2a 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "@venly/web3-react-venly", - "version": "1.2.0-develop.2", + "version": "1.2.0-develop.3", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "@venly/web3-react-venly", - "version": "1.2.0-develop.2", + "version": "1.2.0-develop.3", "license": "MIT", "dependencies": { "@venly/web3-provider": "^3.8.0", diff --git a/package.json b/package.json index ac9ad31..9fa8242 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@venly/web3-react-venly", - "version": "1.2.0-develop.2", + "version": "1.2.0-develop.3", "description": "Venly connector for Web3-React", "type": "commonjs", "types": "./dist/index.d.ts", From 2b1bae3602238f097aef18c2a3bc3d3b3fdab7ad Mon Sep 17 00:00:00 2001 From: nico-ptrs Date: Thu, 21 May 2026 10:07:31 +0000 Subject: [PATCH 24/31] Update develop to branch version to avoid merge conflicts --- package-lock.json | 4 ++-- package.json | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/package-lock.json b/package-lock.json index 83c4555..fa67833 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "@venly/web3-react-venly", - "version": "1.3.0-develop.0", + "version": "1.2.0-develop.2", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "@venly/web3-react-venly", - "version": "1.3.0-develop.0", + "version": "1.2.0-develop.2", "license": "MIT", "dependencies": { "@venly/web3-provider": "^3.1.0", diff --git a/package.json b/package.json index a03052d..a486b34 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@venly/web3-react-venly", - "version": "1.3.0-develop.0", + "version": "1.2.0-develop.2", "description": "Venly connector for Web3-React", "type": "commonjs", "types": "./dist/index.d.ts", From bc027b8e850b10cc3205923461f327e4d70202d1 Mon Sep 17 00:00:00 2001 From: nico-ptrs Date: Thu, 21 May 2026 10:07:31 +0000 Subject: [PATCH 25/31] Update develop version back to pre-merge state --- package-lock.json | 4 ++-- package.json | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/package-lock.json b/package-lock.json index cd4bab6..3bca68d 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "@venly/web3-react-venly", - "version": "1.2.0-develop.2", + "version": "1.3.0-develop.0", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "@venly/web3-react-venly", - "version": "1.2.0-develop.2", + "version": "1.3.0-develop.0", "license": "MIT", "dependencies": { "@venly/web3-provider": "^3.8.0", diff --git a/package.json b/package.json index ac9ad31..ddd3809 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@venly/web3-react-venly", - "version": "1.2.0-develop.2", + "version": "1.3.0-develop.0", "description": "Venly connector for Web3-React", "type": "commonjs", "types": "./dist/index.d.ts", From 97b3bc2eb1c4dbd948069fdf747dd1b0e0f25dfe Mon Sep 17 00:00:00 2001 From: nico-ptrs Date: Thu, 21 May 2026 10:10:21 +0000 Subject: [PATCH 26/31] 1.2.0 --- package-lock.json | 4 ++-- package.json | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/package-lock.json b/package-lock.json index 340db2a..a498269 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "@venly/web3-react-venly", - "version": "1.2.0-develop.3", + "version": "1.2.0", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "@venly/web3-react-venly", - "version": "1.2.0-develop.3", + "version": "1.2.0", "license": "MIT", "dependencies": { "@venly/web3-provider": "^3.8.0", diff --git a/package.json b/package.json index 9fa8242..7816cd0 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@venly/web3-react-venly", - "version": "1.2.0-develop.3", + "version": "1.2.0", "description": "Venly connector for Web3-React", "type": "commonjs", "types": "./dist/index.d.ts", From 39c0e4a377e5d5a772ae64a3ab751ed7e663b3cd Mon Sep 17 00:00:00 2001 From: nico-ptrs Date: Thu, 21 May 2026 10:10:21 +0000 Subject: [PATCH 27/31] Update develop to release version to avoid merge conflicts --- package-lock.json | 4 ++-- package.json | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/package-lock.json b/package-lock.json index 3bca68d..a498269 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "@venly/web3-react-venly", - "version": "1.3.0-develop.0", + "version": "1.2.0", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "@venly/web3-react-venly", - "version": "1.3.0-develop.0", + "version": "1.2.0", "license": "MIT", "dependencies": { "@venly/web3-provider": "^3.8.0", diff --git a/package.json b/package.json index ddd3809..7816cd0 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@venly/web3-react-venly", - "version": "1.3.0-develop.0", + "version": "1.2.0", "description": "Venly connector for Web3-React", "type": "commonjs", "types": "./dist/index.d.ts", From 205604903c14c9606c782b165fcef9dd2aee68a8 Mon Sep 17 00:00:00 2001 From: nico-ptrs Date: Thu, 21 May 2026 10:10:21 +0000 Subject: [PATCH 28/31] Update develop version back to pre-merge state --- package-lock.json | 4 ++-- package.json | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/package-lock.json b/package-lock.json index a498269..3bca68d 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "@venly/web3-react-venly", - "version": "1.2.0", + "version": "1.3.0-develop.0", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "@venly/web3-react-venly", - "version": "1.2.0", + "version": "1.3.0-develop.0", "license": "MIT", "dependencies": { "@venly/web3-provider": "^3.8.0", diff --git a/package.json b/package.json index 7816cd0..ddd3809 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@venly/web3-react-venly", - "version": "1.2.0", + "version": "1.3.0-develop.0", "description": "Venly connector for Web3-React", "type": "commonjs", "types": "./dist/index.d.ts", From 824d581e24ec96fc42f4687f5083ae4a0c51989f Mon Sep 17 00:00:00 2001 From: nico-ptrs Date: Thu, 21 May 2026 10:18:52 +0000 Subject: [PATCH 29/31] 1.3.0-develop.1 --- package-lock.json | 4 ++-- package.json | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/package-lock.json b/package-lock.json index 3bca68d..3377d9b 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "@venly/web3-react-venly", - "version": "1.3.0-develop.0", + "version": "1.3.0-develop.1", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "@venly/web3-react-venly", - "version": "1.3.0-develop.0", + "version": "1.3.0-develop.1", "license": "MIT", "dependencies": { "@venly/web3-provider": "^3.8.0", diff --git a/package.json b/package.json index ddd3809..b666b9b 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@venly/web3-react-venly", - "version": "1.3.0-develop.0", + "version": "1.3.0-develop.1", "description": "Venly connector for Web3-React", "type": "commonjs", "types": "./dist/index.d.ts", From 4ddeba6dab5539c4d794885ea59a4715f8762c33 Mon Sep 17 00:00:00 2001 From: nico-ptrs Date: Thu, 21 May 2026 10:29:52 +0000 Subject: [PATCH 30/31] 1.3.0-develop.2 --- package-lock.json | 4 ++-- package.json | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/package-lock.json b/package-lock.json index 3377d9b..99046cb 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "@venly/web3-react-venly", - "version": "1.3.0-develop.1", + "version": "1.3.0-develop.2", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "@venly/web3-react-venly", - "version": "1.3.0-develop.1", + "version": "1.3.0-develop.2", "license": "MIT", "dependencies": { "@venly/web3-provider": "^3.8.0", diff --git a/package.json b/package.json index b666b9b..6024681 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@venly/web3-react-venly", - "version": "1.3.0-develop.1", + "version": "1.3.0-develop.2", "description": "Venly connector for Web3-React", "type": "commonjs", "types": "./dist/index.d.ts", From 9ebfb65cb8ade4c3f7c20329f84fd6d9f478afa0 Mon Sep 17 00:00:00 2001 From: nico-ptrs Date: Thu, 21 May 2026 10:48:56 +0000 Subject: [PATCH 31/31] 1.3.0 --- package-lock.json | 4 ++-- package.json | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/package-lock.json b/package-lock.json index 99046cb..1d86914 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "@venly/web3-react-venly", - "version": "1.3.0-develop.2", + "version": "1.3.0", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "@venly/web3-react-venly", - "version": "1.3.0-develop.2", + "version": "1.3.0", "license": "MIT", "dependencies": { "@venly/web3-provider": "^3.8.0", diff --git a/package.json b/package.json index 6024681..fcd7396 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@venly/web3-react-venly", - "version": "1.3.0-develop.2", + "version": "1.3.0", "description": "Venly connector for Web3-React", "type": "commonjs", "types": "./dist/index.d.ts",