From c84e8471c43490208972b509fce9a852d36d32d8 Mon Sep 17 00:00:00 2001 From: Dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Mon, 27 Apr 2026 09:43:33 +0700 Subject: [PATCH 1/6] Refactor CircleCI config for testing workflow (#495) Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> --- .circleci/config.yml | 36 ++++++++++++++++-------------------- 1 file changed, 16 insertions(+), 20 deletions(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index 709c9a7474..2ef62819f0 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -1,26 +1,22 @@ -# Use the latest 2.1 version of CircleCI pipeline process engine. -# See: https://circleci.com/docs/configuration-reference - version: 2.1 -executors: - my-custom-executor: - docker: - - image: cimg/base:stable - auth: - # ensure you have first added these secrets - # visit app.circleci.com/settings/project/github/Dargon789/hardhat-project/environment-variables - username: $DOCKER_HUB_USER - password: $DOCKER_HUB_PASSWORD + jobs: - web3-defi-game-project-: - - executor: my-custom-executor + test: + docker: + - image: ghcr.io/foundry-rs/foundry:latest steps: - checkout - - run: | - # echo Hello, World! - + - run: + name: Install submodules + command: git submodule update --init --recursive + - run: + name: Build + command: forge build + - run: + name: Test + command: forge test -vvv + workflows: - my-custom-workflow: + main: jobs: - - web3-defi-game-project- + - test From 7bef631951de9106415730de0130c86822eb5008 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 27 Apr 2026 11:32:20 +0700 Subject: [PATCH 2/6] Bump the npm_and_yarn group across 3 directories with 3 updates (#496) Bumps the npm_and_yarn group with 2 updates in the / directory: [next](https://github.com/vercel/next.js) and [uuid](https://github.com/uuidjs/uuid). Bumps the npm_and_yarn group with 1 update in the /packages/wallet/wdk directory: [uuid](https://github.com/uuidjs/uuid). Bumps the npm_and_yarn group with 1 update in the /wagmi-project directory: [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite). Updates `next` from 15.5.14 to 15.5.15 - [Release notes](https://github.com/vercel/next.js/releases) - [Changelog](https://github.com/vercel/next.js/blob/canary/release.js) - [Commits](https://github.com/vercel/next.js/compare/v15.5.14...v15.5.15) Updates `uuid` from 13.0.0 to 14.0.0 - [Release notes](https://github.com/uuidjs/uuid/releases) - [Changelog](https://github.com/uuidjs/uuid/blob/main/CHANGELOG.md) - [Commits](https://github.com/uuidjs/uuid/compare/v13.0.0...v14.0.0) Updates `uuid` from 13.0.0 to 14.0.0 - [Release notes](https://github.com/uuidjs/uuid/releases) - [Changelog](https://github.com/uuidjs/uuid/blob/main/CHANGELOG.md) - [Commits](https://github.com/uuidjs/uuid/compare/v13.0.0...v14.0.0) Updates `vite` from 7.3.0 to 7.3.2 - [Release notes](https://github.com/vitejs/vite/releases) - [Changelog](https://github.com/vitejs/vite/blob/v7.3.2/packages/vite/CHANGELOG.md) - [Commits](https://github.com/vitejs/vite/commits/v7.3.2/packages/vite) --- updated-dependencies: - dependency-name: next dependency-version: 15.5.15 dependency-type: direct:production dependency-group: npm_and_yarn - dependency-name: uuid dependency-version: 14.0.0 dependency-type: direct:production dependency-group: npm_and_yarn - dependency-name: uuid dependency-version: 14.0.0 dependency-type: direct:production dependency-group: npm_and_yarn - dependency-name: vite dependency-version: 7.3.2 dependency-type: direct:development dependency-group: npm_and_yarn ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- extras/docs/package.json | 2 +- extras/web/package.json | 2 +- packages/wallet/wdk/package.json | 2 +- pnpm-lock.yaml | 184 +++++++++++++++---------------- wagmi-project/package.json | 2 +- 5 files changed, 96 insertions(+), 96 deletions(-) diff --git a/extras/docs/package.json b/extras/docs/package.json index ccf8cc5bbf..738f3ead18 100644 --- a/extras/docs/package.json +++ b/extras/docs/package.json @@ -13,7 +13,7 @@ }, "dependencies": { "@repo/ui": "workspace:^", - "next": "^15.5.14", + "next": "^15.5.15", "react": "^19.2.3", "react-dom": "^19.2.3" }, diff --git a/extras/web/package.json b/extras/web/package.json index b8fdea4997..23e80ac071 100644 --- a/extras/web/package.json +++ b/extras/web/package.json @@ -13,7 +13,7 @@ }, "dependencies": { "@repo/ui": "workspace:^", - "next": "^15.5.14", + "next": "^15.5.15", "react": "^19.2.3", "react-dom": "^19.2.3" }, diff --git a/packages/wallet/wdk/package.json b/packages/wallet/wdk/package.json index 2d62c27953..1934c2e600 100644 --- a/packages/wallet/wdk/package.json +++ b/packages/wallet/wdk/package.json @@ -44,6 +44,6 @@ "idb": "^8.0.3", "jwt-decode": "^4.0.0", "ox": "^0.9.17", - "uuid": "^13.0.0" + "uuid": "^14.0.0" } } diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 54ad63e327..e81a9b1db7 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -39,8 +39,8 @@ importers: specifier: workspace:^ version: link:../../repo/ui next: - specifier: ^15.5.14 - version: 15.5.14(react-dom@19.2.3(react@19.2.3))(react@19.2.3) + specifier: ^15.5.15 + version: 15.5.15(react-dom@19.2.3(react@19.2.3))(react@19.2.3) react: specifier: ^19.2.3 version: 19.2.3 @@ -76,8 +76,8 @@ importers: specifier: workspace:^ version: link:../../repo/ui next: - specifier: ^15.5.14 - version: 15.5.14(react-dom@19.2.3(react@19.2.3))(react@19.2.3) + specifier: ^15.5.15 + version: 15.5.15(react-dom@19.2.3(react@19.2.3))(react@19.2.3) react: specifier: ^19.2.3 version: 19.2.3 @@ -474,8 +474,8 @@ importers: specifier: ^0.9.17 version: 0.9.17(typescript@5.9.3)(zod@4.2.0) uuid: - specifier: ^13.0.0 - version: 13.0.0 + specifier: ^14.0.0 + version: 14.0.0 devDependencies: '@repo/eslint-config': specifier: workspace:^ @@ -530,7 +530,7 @@ importers: version: 7.0.1(eslint@9.39.2) eslint-plugin-turbo: specifier: ^2.6.3 - version: 2.6.3(eslint@9.39.2)(turbo@2.8.21) + version: 2.6.3(eslint@9.39.2)(turbo@2.9.6) globals: specifier: ^16.5.0 version: 16.5.0 @@ -720,8 +720,8 @@ packages: resolution: {integrity: sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw==} engines: {node: '>=12'} - '@emnapi/runtime@1.9.1': - resolution: {integrity: sha512-VYi5+ZVLhpgK4hQ0TAjiQiZ6ol0oe4mBx7mVv7IflsiEp0OWoVsp/+f9Vc1hOhE0TtkORVrI1GvzyreqpgWtkA==} + '@emnapi/runtime@1.10.0': + resolution: {integrity: sha512-ewvYlk86xUoGI0zQRNq/mC+16R1QeDlKQy21Ki3oSYXNgLb45GV1P6A0M+/s6nyCuNDqe5VpaY84BzXGwVbwFA==} '@esbuild/aix-ppc64@0.27.3': resolution: {integrity: sha512-9fJMTNFTWZMh5qwrBItuziu834eOCUcEqymSH7pY+zoMVEZg3gcPuBNxH1EvfVYe9h0x/Ptw8KBzv7qxb7l8dg==} @@ -1104,56 +1104,56 @@ packages: '@manypkg/get-packages@1.1.3': resolution: {integrity: sha512-fo+QhuU3qE/2TQMQmbVMqaQ6EWbMhi4ABWP+O4AM1NqPBuy0OrApV5LO6BrrgnhtAHS2NH6RrVk9OL181tTi8A==} - '@next/env@15.5.14': - resolution: {integrity: sha512-aXeirLYuASxEgi4X4WhfXsShCFxWDfNn/8ZeC5YXAS2BB4A8FJi1kwwGL6nvMVboE7fZCzmJPNdMvVHc8JpaiA==} + '@next/env@15.5.15': + resolution: {integrity: sha512-vcmyu5/MyFzN7CdqRHO3uHO44p/QPCZkuTUXroeUmhNP8bL5PHFEhik22JUazt+CDDoD6EpBYRCaS2pISL+/hg==} '@next/eslint-plugin-next@15.5.9': resolution: {integrity: sha512-kUzXx0iFiXw27cQAViE1yKWnz/nF8JzRmwgMRTMh8qMY90crNsdXJRh2e+R0vBpFR3kk1yvAR7wev7+fCCb79Q==} - '@next/swc-darwin-arm64@15.5.14': - resolution: {integrity: sha512-Y9K6SPzobnZvrRDPO2s0grgzC+Egf0CqfbdvYmQVaztV890zicw8Z8+4Vqw8oPck8r1TjUHxVh8299Cg4TrxXg==} + '@next/swc-darwin-arm64@15.5.15': + resolution: {integrity: sha512-6PvFO2Tzt10GFK2Ro9tAVEtacMqRmTarYMFKAnV2vYMdwWc73xzmDQyAV7SwEdMhzmiRoo7+m88DuiXlJlGeaw==} engines: {node: '>= 10'} cpu: [arm64] os: [darwin] - '@next/swc-darwin-x64@15.5.14': - resolution: {integrity: sha512-aNnkSMjSFRTOmkd7qoNI2/rETQm/vKD6c/Ac9BZGa9CtoOzy3c2njgz7LvebQJ8iPxdeTuGnAjagyis8a9ifBw==} + '@next/swc-darwin-x64@15.5.15': + resolution: {integrity: sha512-G+YNV+z6FDZTp/+IdGyIMFqalBTaQSnvAA+X/hrt+eaTRFSznRMz9K7rTmzvM6tDmKegNtyzgufZW0HwVzEqaQ==} engines: {node: '>= 10'} cpu: [x64] os: [darwin] - '@next/swc-linux-arm64-gnu@15.5.14': - resolution: {integrity: sha512-tjlpia+yStPRS//6sdmlVwuO1Rioern4u2onafa5n+h2hCS9MAvMXqpVbSrjgiEOoCs0nJy7oPOmWgtRRNSM5Q==} + '@next/swc-linux-arm64-gnu@15.5.15': + resolution: {integrity: sha512-eVkrMcVIBqGfXB+QUC7jjZ94Z6uX/dNStbQFabewAnk13Uy18Igd1YZ/GtPRzdhtm7QwC0e6o7zOQecul4iC1w==} engines: {node: '>= 10'} cpu: [arm64] os: [linux] - '@next/swc-linux-arm64-musl@15.5.14': - resolution: {integrity: sha512-8B8cngBaLadl5lbDRdxGCP1Lef8ipD6KlxS3v0ElDAGil6lafrAM3B258p1KJOglInCVFUjk751IXMr2ixeQOQ==} + '@next/swc-linux-arm64-musl@15.5.15': + resolution: {integrity: sha512-RwSHKMQ7InLy5GfkY2/n5PcFycKA08qI1VST78n09nN36nUPqCvGSMiLXlfUmzmpQpF6XeBYP2KRWHi0UW3uNg==} engines: {node: '>= 10'} cpu: [arm64] os: [linux] - '@next/swc-linux-x64-gnu@15.5.14': - resolution: {integrity: sha512-bAS6tIAg8u4Gn3Nz7fCPpSoKAexEt2d5vn1mzokcqdqyov6ZJ6gu6GdF9l8ORFrBuRHgv3go/RfzYz5BkZ6YSQ==} + '@next/swc-linux-x64-gnu@15.5.15': + resolution: {integrity: sha512-nplqvY86LakS+eeiuWsNWvfmK8pFcOEW7ZtVRt4QH70lL+0x6LG/m1OpJ/tvrbwjmR8HH9/fH2jzW1GlL03TIg==} engines: {node: '>= 10'} cpu: [x64] os: [linux] - '@next/swc-linux-x64-musl@15.5.14': - resolution: {integrity: sha512-mMxv/FcrT7Gfaq4tsR22l17oKWXZmH/lVqcvjX0kfp5I0lKodHYLICKPoX1KRnnE+ci6oIUdriUhuA3rBCDiSw==} + '@next/swc-linux-x64-musl@15.5.15': + resolution: {integrity: sha512-eAgl9NKQ84/sww0v81DQINl/vL2IBxD7sMybd0cWRw6wqgouVI53brVRBrggqBRP/NWeIAE1dm5cbKYoiMlqDQ==} engines: {node: '>= 10'} cpu: [x64] os: [linux] - '@next/swc-win32-arm64-msvc@15.5.14': - resolution: {integrity: sha512-OTmiBlYThppnvnsqx0rBqjDRemlmIeZ8/o4zI7veaXoeO1PVHoyj2lfTfXTiiGjCyRDhA10y4h6ZvZvBiynr2g==} + '@next/swc-win32-arm64-msvc@15.5.15': + resolution: {integrity: sha512-GJVZC86lzSquh0MtvZT+L7G8+jMnJcldloOjA8Kf3wXvBrvb6OGe2MzPuALxFshSm/IpwUtD2mIoof39ymf52A==} engines: {node: '>= 10'} cpu: [arm64] os: [win32] - '@next/swc-win32-x64-msvc@15.5.14': - resolution: {integrity: sha512-+W7eFf3RS7m4G6tppVTOSyP9Y6FsJXfOuKzav1qKniiFm3KFByQfPEcouHdjlZmysl4zJGuGLQ/M9XyVeyeNEg==} + '@next/swc-win32-x64-msvc@15.5.15': + resolution: {integrity: sha512-nFucjVdwlFqxh/JG3hWSJ4p8+YJV7Ii8aPDuBQULB6DzUF4UNZETXLfEUk+oI2zEznWWULPt7MeuTE6xtK1HSA==} engines: {node: '>= 10'} cpu: [x64] os: [win32] @@ -1326,13 +1326,13 @@ packages: '@tsconfig/node16@1.0.4': resolution: {integrity: sha512-vxhUy4J8lyeyinH7Azl1pdd43GJhZH/tP2weN8TntQblOY+A0XbT8DJk1/oCPuOOyg/Ja757rG0CgHcWC8OfMA==} - '@turbo/darwin-64@2.8.21': - resolution: {integrity: sha512-kfGoM0Iw8ZNZpbds+4IzOe0hjvHldqJwUPRAjXJi3KBxg/QOZL95N893SRoMtf2aJ+jJ3dk32yPkp8rvcIjP9g==} + '@turbo/darwin-64@2.9.6': + resolution: {integrity: sha512-X/56SnVXIQZBLKwniGTwEQTGmtE5brSACnKMBWpY3YafuxVYefrC2acamfjgxP7BG5w3I+6jf0UrLoSzgPcSJg==} cpu: [x64] os: [darwin] - '@turbo/darwin-arm64@2.8.21': - resolution: {integrity: sha512-o9HEflxUEyr987x0cTUzZBhDOyL6u95JmdmlkH2VyxAw7zq2sdtM5e72y9ufv2N5SIoOBw1fVn9UES5VY5H6vQ==} + '@turbo/darwin-arm64@2.9.6': + resolution: {integrity: sha512-aalBeSl4agT/QtYGDyf/XLajedWzUC9Vg/pm/YO6QQ93vkQ91Vz5uK1ta5RbVRDozQSz4njxUNqRNmOXDzW+qw==} cpu: [arm64] os: [darwin] @@ -1340,23 +1340,23 @@ packages: resolution: {integrity: sha512-PK38N1fHhDUyjLi0mUjv0RbX0xXGwDLQeRSGsIlLcVpP1B5fwodSIwIYXc9vJok26Yne94BX5AGjueYsUT3uUw==} hasBin: true - '@turbo/linux-64@2.8.21': - resolution: {integrity: sha512-uTxlCcXWy5h1fSSymP8XSJ+AudzEHMDV3IDfKX7+DGB8kgJ+SLoTUAH7z4OFA7I/l2sznz0upPdbNNZs91YMag==} + '@turbo/linux-64@2.9.6': + resolution: {integrity: sha512-YKi05jnNHaD7vevgYwahpzGwbsNNTwzU2c7VZdmdFm7+cGDP4oREUWSsainiMfRqjRuolQxBwRn8wf1jmu+YZA==} cpu: [x64] os: [linux] - '@turbo/linux-arm64@2.8.21': - resolution: {integrity: sha512-cdHIcxNcihHHkCHp0Y4Zb60K4Qz+CK4xw1gb6s/t/9o4SMeMj+hTBCtoW6QpPnl9xPYmxuTou8Zw6+cylTnREg==} + '@turbo/linux-arm64@2.9.6': + resolution: {integrity: sha512-02o/ZS69cOYEDczXvOB2xmyrtzjQ2hVFtWZK1iqxXUfzMmTjZK4UumrfNnjckSg+gqeBfnPRHa0NstA173Ik3g==} cpu: [arm64] os: [linux] - '@turbo/windows-64@2.8.21': - resolution: {integrity: sha512-/iBj4OzbqEY8CX+eaeKbBTMZv2CLXNrt0692F7HnK7LcyYwyDecaAiSET6ZzL4opT7sbwkKvzAC/fhqT3Quu1A==} + '@turbo/windows-64@2.9.6': + resolution: {integrity: sha512-wVdQjvnBI15wB6JrA+43CtUtagjIMmX6XYO758oZHAsCNSxqRlJtdyujih0D8OCnwCRWiGWGI63zAxR0hO6s9g==} cpu: [x64] os: [win32] - '@turbo/windows-arm64@2.8.21': - resolution: {integrity: sha512-95tMA/ZbIidJFUUtkmqioQ1gf3n3I1YbRP3ZgVdWTVn2qVbkodcIdGXBKRHHrIbRsLRl99SiHi/L7IxhpZDagQ==} + '@turbo/windows-arm64@2.9.6': + resolution: {integrity: sha512-1XUUyWW0W6FTSqGEhU8RHVqb2wP1SPkr7hIvBlMEwH9jr+sJQK5kqeosLJ/QaUv4ecSAd1ZhIrLoW7qslAzT4A==} cpu: [arm64] os: [win32] @@ -1675,7 +1675,7 @@ packages: basic-ftp@5.0.5: resolution: {integrity: sha512-4Bcg1P8xhUuqcii/S0Z9wiHIrQVPMermM1any+MX5GeGD7faD3/msQUDGLol9wOcz4/jbg/WJnGqoJF6LiBdtg==} engines: {node: '>=10.0.0'} - deprecated: Security vulnerability fixed in 5.2.0, please upgrade + deprecated: Security vulnerability fixed in 5.2.1, please upgrade better-path-resolve@1.0.0: resolution: {integrity: sha512-pbnl5XzGBdrFU/wT4jqmJVPn2B6UHPBOhzMQkY/SPUPB6QtUXtmBHBIwCbXJol93mOpGMnQyP/+BB19q04xj7g==} @@ -1733,8 +1733,8 @@ packages: camel-case@3.0.0: resolution: {integrity: sha512-+MbKztAYHXPr1jNTSKQF52VpcFjwY5RkR7fxksV8Doo4KAYc5Fl4UJRgthBbTmEx8C54DqahhbLJkDwjI3PI/w==} - caniuse-lite@1.0.30001781: - resolution: {integrity: sha512-RdwNCyMsNBftLjW6w01z8bKEvT6e/5tpPVEgtn22TiLGlstHOVecsX2KHFkD5e/vRnIE4EGzpuIODb3mtswtkw==} + caniuse-lite@1.0.30001791: + resolution: {integrity: sha512-yk0l/YSrOnFZk3UROpDLQD9+kC1l4meK/wed583AXrzoarMGJcbRi2Q4RaUYbKxYAsZ8sWmaSa/DsLmdBeI1vQ==} cbor2@1.12.0: resolution: {integrity: sha512-3Cco8XQhi27DogSp9Ri6LYNZLi/TBY/JVnDe+mj06NkBjW/ZYOtekaEU4wZ4xcRMNrFkDv8KNtOAqHyDfz3lYg==} @@ -2833,8 +2833,8 @@ packages: resolution: {integrity: sha512-dBpDMdxv9Irdq66304OLfEmQ9tbNRFnFTuZiLo+bD+r332bBmMJ8GBLXklIXXgxd3+v9+KUnZaUR5PJMa75Gsg==} engines: {node: '>= 0.4.0'} - next@15.5.14: - resolution: {integrity: sha512-M6S+4JyRjmKic2Ssm7jHUPkE6YUJ6lv4507jprsSZLulubz0ihO2E+S4zmQK3JZ2ov81JrugukKU4Tz0ivgqqQ==} + next@15.5.15: + resolution: {integrity: sha512-VSqCrJwtLVGwAVE0Sb/yikrQfkwkZW9p+lL/J4+xe+G3ZA+QnWPqgcfH1tDUEuk9y+pthzzVFp4L/U8JerMfMQ==} engines: {node: ^18.18.0 || ^19.8.0 || >= 20.0.0} hasBin: true peerDependencies: @@ -3058,8 +3058,8 @@ packages: resolution: {integrity: sha512-PS08Iboia9mts/2ygV3eLpY5ghnUcfLV/EXTOW1E2qYxJKGGBUtNjN76FYHnMs36RmARn41bC0AZmn+rR0OVpQ==} engines: {node: ^10 || ^12 || >=14} - postcss@8.5.8: - resolution: {integrity: sha512-OW/rX8O/jXnm82Ey1k44pObPtdblfiuWnrd8X7GJ7emImCOstunGbXUpp7HdBrFQX6rJzn3sPT397Wp5aCwCHg==} + postcss@8.5.12: + resolution: {integrity: sha512-W62t/Se6rA0Az3DfCL0AqJwXuKwBeYg6nOaIgzP+xZ7N5BFCI7DYi1qs6ygUYT6rvfi6t9k65UMLJC+PHZpDAA==} engines: {node: ^10 || ^12 || >=14} prelude-ls@1.2.1: @@ -3585,8 +3585,8 @@ packages: resolution: {integrity: sha512-OxbzDES66+x7nnKGg2MwBA1ypVsZoDTLHpeaP4giyiHSixbsiTaMyeJqbEyvBdp5Cm28fc+8GG6RdQtic0ijwQ==} hasBin: true - turbo@2.8.21: - resolution: {integrity: sha512-FlJ8OD5Qcp0jTAM7E4a/RhUzRNds2GzKlyxHKA6N247VLy628rrxAGlMpIXSz6VB430+TiQDJ/SMl6PL1lu6wQ==} + turbo@2.9.6: + resolution: {integrity: sha512-+v2QJey7ZUeUiuigkU+uFfklvNUyPI2VO2vBpMYJA+a1hKFLFiKtUYlRHdb3P9CrAvMzi0upbjI4WT+zKtqkBg==} hasBin: true type-check@0.4.0: @@ -3669,8 +3669,8 @@ packages: util-deprecate@1.0.2: resolution: {integrity: sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==} - uuid@13.0.0: - resolution: {integrity: sha512-XQegIaBTVUjSHliKqcnFqYypAd4S+WCYt5NIeRs6w/UAry7z8Y9j5ZwRRL4kzq9U3sD6v+85er9FvkEaBpji2w==} + uuid@14.0.0: + resolution: {integrity: sha512-Qo+uWgilfSmAhXCMav1uYFynlQO7fMFiMVZsQqZRMIXp0O7rR7qjkj+cPvBHLgBqi960QCoo/PH2/6ZtVqKvrg==} hasBin: true v8-compile-cache-lib@3.0.1: @@ -4146,7 +4146,7 @@ snapshots: dependencies: '@jridgewell/trace-mapping': 0.3.9 - '@emnapi/runtime@1.9.1': + '@emnapi/runtime@1.10.0': dependencies: tslib: 2.8.1 optional: true @@ -4371,7 +4371,7 @@ snapshots: '@img/sharp-wasm32@0.34.5': dependencies: - '@emnapi/runtime': 1.9.1 + '@emnapi/runtime': 1.10.0 optional: true '@img/sharp-win32-arm64@0.34.5': @@ -4430,34 +4430,34 @@ snapshots: globby: 11.1.0 read-yaml-file: 1.1.0 - '@next/env@15.5.14': {} + '@next/env@15.5.15': {} '@next/eslint-plugin-next@15.5.9': dependencies: fast-glob: 3.3.1 - '@next/swc-darwin-arm64@15.5.14': + '@next/swc-darwin-arm64@15.5.15': optional: true - '@next/swc-darwin-x64@15.5.14': + '@next/swc-darwin-x64@15.5.15': optional: true - '@next/swc-linux-arm64-gnu@15.5.14': + '@next/swc-linux-arm64-gnu@15.5.15': optional: true - '@next/swc-linux-arm64-musl@15.5.14': + '@next/swc-linux-arm64-musl@15.5.15': optional: true - '@next/swc-linux-x64-gnu@15.5.14': + '@next/swc-linux-x64-gnu@15.5.15': optional: true - '@next/swc-linux-x64-musl@15.5.14': + '@next/swc-linux-x64-musl@15.5.15': optional: true - '@next/swc-win32-arm64-msvc@15.5.14': + '@next/swc-win32-arm64-msvc@15.5.15': optional: true - '@next/swc-win32-x64-msvc@15.5.14': + '@next/swc-win32-x64-msvc@15.5.15': optional: true '@noble/ciphers@1.3.0': {} @@ -4577,10 +4577,10 @@ snapshots: '@tsconfig/node16@1.0.4': {} - '@turbo/darwin-64@2.8.21': + '@turbo/darwin-64@2.9.6': optional: true - '@turbo/darwin-arm64@2.8.21': + '@turbo/darwin-arm64@2.9.6': optional: true '@turbo/gen@1.13.4(@types/node@25.3.0)(typescript@5.9.3)': @@ -4603,16 +4603,16 @@ snapshots: - supports-color - typescript - '@turbo/linux-64@2.8.21': + '@turbo/linux-64@2.9.6': optional: true - '@turbo/linux-arm64@2.8.21': + '@turbo/linux-arm64@2.9.6': optional: true - '@turbo/windows-64@2.8.21': + '@turbo/windows-64@2.9.6': optional: true - '@turbo/windows-arm64@2.8.21': + '@turbo/windows-arm64@2.9.6': optional: true '@turbo/workspaces@1.13.4(@types/node@25.3.0)': @@ -5025,7 +5025,7 @@ snapshots: browserslist@4.28.1: dependencies: baseline-browser-mapping: 2.9.7 - caniuse-lite: 1.0.30001781 + caniuse-lite: 1.0.30001791 electron-to-chromium: 1.5.267 node-releases: 2.0.27 update-browserslist-db: 1.2.2(browserslist@4.28.1) @@ -5061,7 +5061,7 @@ snapshots: no-case: 2.3.2 upper-case: 1.1.3 - caniuse-lite@1.0.30001781: {} + caniuse-lite@1.0.30001791: {} cbor2@1.12.0: {} @@ -5482,11 +5482,11 @@ snapshots: string.prototype.matchall: 4.0.12 string.prototype.repeat: 1.0.0 - eslint-plugin-turbo@2.6.3(eslint@9.39.2)(turbo@2.8.21): + eslint-plugin-turbo@2.6.3(eslint@9.39.2)(turbo@2.9.6): dependencies: dotenv: 16.0.3 eslint: 9.39.2 - turbo: 2.8.21 + turbo: 2.9.6 eslint-scope@8.4.0: dependencies: @@ -6320,24 +6320,24 @@ snapshots: netmask@2.0.2: {} - next@15.5.14(react-dom@19.2.3(react@19.2.3))(react@19.2.3): + next@15.5.15(react-dom@19.2.3(react@19.2.3))(react@19.2.3): dependencies: - '@next/env': 15.5.14 + '@next/env': 15.5.15 '@swc/helpers': 0.5.15 - caniuse-lite: 1.0.30001781 + caniuse-lite: 1.0.30001791 postcss: 8.4.31 react: 19.2.3 react-dom: 19.2.3(react@19.2.3) styled-jsx: 5.1.6(react@19.2.3) optionalDependencies: - '@next/swc-darwin-arm64': 15.5.14 - '@next/swc-darwin-x64': 15.5.14 - '@next/swc-linux-arm64-gnu': 15.5.14 - '@next/swc-linux-arm64-musl': 15.5.14 - '@next/swc-linux-x64-gnu': 15.5.14 - '@next/swc-linux-x64-musl': 15.5.14 - '@next/swc-win32-arm64-msvc': 15.5.14 - '@next/swc-win32-x64-msvc': 15.5.14 + '@next/swc-darwin-arm64': 15.5.15 + '@next/swc-darwin-x64': 15.5.15 + '@next/swc-linux-arm64-gnu': 15.5.15 + '@next/swc-linux-arm64-musl': 15.5.15 + '@next/swc-linux-x64-gnu': 15.5.15 + '@next/swc-linux-x64-musl': 15.5.15 + '@next/swc-win32-arm64-msvc': 15.5.15 + '@next/swc-win32-x64-msvc': 15.5.15 sharp: 0.34.5 transitivePeerDependencies: - '@babel/core' @@ -6596,7 +6596,7 @@ snapshots: picocolors: 1.1.1 source-map-js: 1.2.1 - postcss@8.5.8: + postcss@8.5.12: dependencies: nanoid: 3.3.11 picocolors: 1.1.1 @@ -7185,14 +7185,14 @@ snapshots: turbo-windows-64: 2.8.10 turbo-windows-arm64: 2.8.10 - turbo@2.8.21: + turbo@2.9.6: optionalDependencies: - '@turbo/darwin-64': 2.8.21 - '@turbo/darwin-arm64': 2.8.21 - '@turbo/linux-64': 2.8.21 - '@turbo/linux-arm64': 2.8.21 - '@turbo/windows-64': 2.8.21 - '@turbo/windows-arm64': 2.8.21 + '@turbo/darwin-64': 2.9.6 + '@turbo/darwin-arm64': 2.9.6 + '@turbo/linux-64': 2.9.6 + '@turbo/linux-arm64': 2.9.6 + '@turbo/windows-64': 2.9.6 + '@turbo/windows-arm64': 2.9.6 type-check@0.4.0: dependencies: @@ -7287,7 +7287,7 @@ snapshots: util-deprecate@1.0.2: {} - uuid@13.0.0: {} + uuid@14.0.0: {} v8-compile-cache-lib@3.0.1: {} @@ -7315,7 +7315,7 @@ snapshots: esbuild: 0.27.3 fdir: 6.5.0(picomatch@4.0.3) picomatch: 4.0.3 - postcss: 8.5.8 + postcss: 8.5.12 rollup: 4.53.4 tinyglobby: 0.2.15 optionalDependencies: diff --git a/wagmi-project/package.json b/wagmi-project/package.json index 206445bb31..c635e9821f 100644 --- a/wagmi-project/package.json +++ b/wagmi-project/package.json @@ -24,6 +24,6 @@ "@wagmi/cli": "latest", "buffer": "^6.0.3", "typescript": "^5.4.5", - "vite": "^5.2.11" + "vite": "^7.3.2" } } From f31d04bc803e6aea9872e7f6436b293cd41c145b Mon Sep 17 00:00:00 2001 From: Dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Sat, 9 May 2026 02:21:31 +0700 Subject: [PATCH 3/6] 3.0.9 (#542) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * Update wagmi-project/package.json Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update wagmi-project/package.json Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update wagmi-project/src/App.tsx Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Create FUNDING.json (#90) Enhancements: Include FUNDING.json to display GitHub sponsorship options in the repository Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Create config.yml (#91) Add initial CircleCI configuration to enable automated builds using a custom Docker executor and a defined workflow. Build: Add .circleci/config.yml with version 2.1 specification and custom Docker executor. CI: Define web3-defi-game-project job with checkout step. Set up my-custom-workflow to run the job. Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update App.tsx (#92) Summary by Sourcery Overhaul App.tsx to build a comprehensive Sequence Wallet demo application, replacing wagmi with Sequence SDK integration, adding environment/configuration management, rich wallet operations, and a structured UI with console output for interactive testing New Features: Replace wagmi-based hooks with @0xsequence wallet initialization and integration Add environment selection and dynamic wallet URLs via query parameters Implement connect, disconnect, open/close wallet and customizable connection settings Provide extensive demo actions including chain/network switching, account/balance queries, message signing, typed data signing, and transaction sending Introduce a console component and logging for viewing function outputs Add email-based auto-login via modal with validation Enhancements: Refactor UI to use design-system components and group actions thematically Initialize logger and configure default chain/network Memoize and listen to wallet events such as chain changes Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update relayer.gen.ts and TransactionPrecondition interface * Support multiple identity signers in sessions configuration * Device signers can approve implicit sessions * Remove invalid test * Fix recursion * Fix comment * Improve test stability by reducing race conditions * Do not set passkey signer as identity signer * Use length checks * Throw on missing identity signer * Encoding requires identity signer to encode * Fix test * Refactor/types namings tsdoc redundant code (#880) * refactor types, namings, ts doc * fix session response payload * change parameter name * change parameter name * change type in tests * improve types and dapp client methods * fix session test to use new types * refactor * refactor implicit sessions array in chain session manager * remove unused types * remove unused types and add ConnectionError * update pnpm lock * move reusable session types to wallet-core * Update some imports and update some response type names --------- Co-authored-by: Tolgahan Arikan * Fix check for explicit session for the updated type in dapp-client * Update api.gen.ts and relayer.gen.ts * Add missing chainId for dapp client event * Fix initializing new chain session manager on redirect * Add support for non-viem, custom Sequence chains (#882) * Provider sent to prepareBlankEnvelope * Add session signature decoding * const for node length * Clearer blacklist size encoding * identity signer node length * Add feeTokens endpoint to relayer (#885) * add getFeeTokens to dapp client (#889) * add getFeeTokens to dapp client * fix typo * make getFeeTokens independent of chain session manager and initialize state (#890) * make getFeeTokens independent of chain session manager and initialized state * remove getFeeTokens from chain session manager * Throw specific error when trying to sign with an expired session (#887) * Throw when supported session signer is expired * Fix tests * Make dapp-client implicit sessions chain agnostic (#893) * Add Monad, remove LAOS and Root Network * Add support for sessionless dapp connection (#896) * Refactor relayer package & update dependant packages (#891) * refactor exports for relayer (#900) * Add Arc Testnet * Fix changelog config * Sessionless connection upgrade and error handling in DappClient (#902) * dapp-client: add sessionless snapshot restore flow * Allow to logout a wallet with skipRemoveDevice even if the wallet is not in a ready state to allow force removing of wallets (#906) * Pass request to PromptCodeHandler in guard registerUI (#909) * Pass request to PromptCodeHandler in guard registerUI * Fixing guard registerUI test * guard: allow using recovery code as 2FA token (#910) * guard: allow using recovery code as 2FA token * Cleanup types of ResponseFn --------- Co-authored-by: Corban Riley * Add a way to reset 2fa when using a backup code (#911) * Add a way to reset 2fa when using a backup code * use the GuardToken type instead of breaking out the props * Add rc4 contracts * Set rc4 as default and add it to lists * Session enhanced replay protection * New sessions replay protection hashes payload * Use the 4337 factory wrapper * Update keymachine url in dapp-client constants * Update keymachine url in Provider constructor * SSR safety (#915) * Guard dapp-client for SSR (lazy transport, browser checks, gated storage) * Fix guard topology (#918) * Use proper guard topology * Test and fixes * login and setup tests * Switch prod manager settings (#917) * Add prod guard and identity instrument info * Remove completed TODOs * Small JS tweaks (#919) * Fix type exports to built declarations * Update repository links to current package paths * Improve Next app tooling and React typings * Expose primitives CLI bin and use base lint config * Update relayer.gen.ts and TransactionPrecondition interface * [AUTOMATED] Update: proto/clients/indexer*.gen.ts * [AUTOMATED] Update: proto/clients/indexer*.gen.ts * [AUTOMATED] Update: proto/clients/indexer*.gen.ts * [AUTOMATED] Update: proto/clients/indexer*.gen.ts * [AUTOMATED] Update: proto/clients/indexer*.gen.ts * [AUTOMATED] Update: proto/clients/indexer*.gen.ts * [AUTOMATED] Update: proto/clients/indexer*.gen.ts * [AUTOMATED] Update: proto/clients/indexer*.gen.ts * Update SECURITY.md Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update wagmi-project/package.json Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update wagmi-project/package.json Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update config.yml (#102) * Update config.yml Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update .circleci/config.yml Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> --------- Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com> * Update config.yml (#103) * Update config.yml Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update .circleci/config.yml Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> --------- Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com> * fix: extras/web/package.json to reduce vulnerabilities (#101) The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JS-NEXT-14173355 Co-authored-by: snyk-io[bot] <141718529+snyk-io[bot]@users.noreply.github.com> * fix: extras/docs/package.json to reduce vulnerabilities (#100) The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JS-NEXT-14173355 Co-authored-by: snyk-io[bot] <141718529+snyk-io[bot]@users.noreply.github.com> * fix: package.json to reduce vulnerabilities (#104) The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JS-BABELHELPERS-9397697 - https://snyk.io/vuln/SNYK-JS-BABELRUNTIME-10044504 - https://snyk.io/vuln/SNYK-JS-BRACEEXPANSION-9789073 - https://snyk.io/vuln/SNYK-JS-CROSSSPAWN-8303230 - https://snyk.io/vuln/SNYK-JS-ELLIPTIC-7577916 - https://snyk.io/vuln/SNYK-JS-ELLIPTIC-7577917 - https://snyk.io/vuln/SNYK-JS-ELLIPTIC-7577918 - https://snyk.io/vuln/SNYK-JS-ELLIPTIC-8187303 - https://snyk.io/vuln/SNYK-JS-ELLIPTIC-8720086 - https://snyk.io/vuln/SNYK-JS-IMAGESIZE-9634164 - https://snyk.io/vuln/SNYK-JS-INFLIGHT-6095116 - https://snyk.io/vuln/SNYK-JS-JSYAML-13961110 - https://snyk.io/vuln/SNYK-JS-MICROMATCH-6838728 - https://snyk.io/vuln/SNYK-JS-NODEFORGE-14114940 - https://snyk.io/vuln/SNYK-JS-NODEFORGE-14125097 - https://snyk.io/vuln/SNYK-JS-NODEFORGE-14125745 - https://snyk.io/vuln/SNYK-JS-ONHEADERS-10773729 - https://snyk.io/vuln/SNYK-JS-ROLLUP-8073097 - https://snyk.io/vuln/SNYK-JS-SECP256K1-8237220 - https://snyk.io/vuln/SNYK-JS-SEND-7926862 - https://snyk.io/vuln/SNYK-JS-SERVESTATIC-7926865 - https://snyk.io/vuln/SNYK-JS-SHAJS-12089400 Co-authored-by: snyk-io[bot] <141718529+snyk-io[bot]@users.noreply.github.com> * Revert "Merge remote-tracking branch 'origin/dependabot/npm_and_yarn/npm_and_yarn-318c02e2da'" This reverts commit fd0fdf9ecc6ad9056447e381de7fc5bb19f78e47, reversing changes made to cba78943db9942a4635bb530b7a43fc5d18b0ab4. * fix: extras/web/package.json to reduce vulnerabilities (#109) The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JS-NEXT-14173355 Co-authored-by: snyk-bot * fix: extras/docs/package.json to reduce vulnerabilities (#106) The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JS-NEXT-14400636 - https://snyk.io/vuln/SNYK-JS-NEXT-14400644 Co-authored-by: snyk-bot * Bump next in the npm_and_yarn group across 1 directory (#110) Bumps the npm_and_yarn group with 1 update in the / directory: [next](https://github.com/vercel/next.js). Updates `next` from 15.5.7 to 15.5.9 - [Release notes](https://github.com/vercel/next.js/releases) - [Changelog](https://github.com/vercel/next.js/blob/canary/release.js) - [Commits](https://github.com/vercel/next.js/compare/v15.5.7...v15.5.9) --- updated-dependencies: - dependency-name: next dependency-version: 15.5.9 dependency-type: direct:production dependency-group: npm_and_yarn ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Delete .github/workflows/fortify.yml (#111) Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * fix: extras/web/package.json to reduce vulnerabilities (#107) The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JS-NEXT-14400636 - https://snyk.io/vuln/SNYK-JS-NEXT-14400644 Co-authored-by: snyk-bot * Bump the npm_and_yarn group across 1 directory with 3 updates (#115) Bumps the npm_and_yarn group with 1 update in the / directory: [next](https://github.com/vercel/next.js). Updates `next` from 15.5.5 to 15.5.9 - [Release notes](https://github.com/vercel/next.js/releases) - [Changelog](https://github.com/vercel/next.js/blob/canary/release.js) - [Commits](https://github.com/vercel/next.js/compare/v15.5.5...v15.5.9) Updates `happy-dom` from 17.6.3 to 20.0.11 - [Release notes](https://github.com/capricorn86/happy-dom/releases) - [Commits](https://github.com/capricorn86/happy-dom/compare/v17.6.3...v20.0.11) Updates `vite` from 7.1.10 to 7.2.7 - [Release notes](https://github.com/vitejs/vite/releases) - [Changelog](https://github.com/vitejs/vite/blob/v7.2.7/packages/vite/CHANGELOG.md) - [Commits](https://github.com/vitejs/vite/commits/v7.2.7/packages/vite) --- updated-dependencies: - dependency-name: next dependency-version: 15.5.9 dependency-type: direct:production dependency-group: npm_and_yarn - dependency-name: happy-dom dependency-version: 20.0.11 dependency-type: direct:development dependency-group: npm_and_yarn - dependency-name: vite dependency-version: 7.2.7 dependency-type: indirect dependency-group: npm_and_yarn ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Update tests.yml (#119) Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update config.yml (#120) Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update packages/services/identity-instrument/src/index.ts Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * feat: upgrade @wagmi/cli from 0.1.15 to 2.8.0 (#126) Snyk has created this PR to upgrade @wagmi/cli from 0.1.15 to 2.8.0. See this package in npm: @wagmi/cli See this project in Snyk: https://app.snyk.io/org/dargon789/project/bb845543-cbee-4e11-8cf9-8bfdf9205bf1?utm_source=github&utm_medium=referral&page=upgrade-pr Co-authored-by: snyk-bot * Potential fix for code scanning alert no. 82: Workflow does not contain permissions Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Potential fix for code scanning alert no. 62: Information exposure through a stack trace Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * 2.3.7 (#131) * fix broken guard private key * Expose access to passkey credential list * Dapp client direct txn request (#856) * Signature request refactor * WIP * Refactor * Update dapp-client exports (#858) * Add hasPermission method to DappClient (#859) * Save discovered passkey credentials upon login * Expose name property in PasskeySignupArgs * Fix blacklist sort * Add multi server script * relayer: /SimulateV3 (#857) * Add await for handleOpenDB scheduleExpiration * Update increment to always include native once used * Fix session tests * Adding lastLoginAt to PasskeyCredential * LoginToPasskeyArgs now accept a credentialId which is used to specify which credential to use * Adding onSignatureRequestStatus function to register single use callbacks for when a request reaches a terminal state of completed or cancelled * When a login is cancelled we can remove the wallet which is logging-in * Add RC3 contracts * Sessions space restriction * Dedupe signers for encoding * Support RC3 sessions * Tightly increment call validation * CLI defaults to RC3 wallet code * Rc3 address test * Fix hashing tests * Add deprecated encoding test * wdk: throw errors from otp respond callback (#864) * wdk: throw errors from otp respond callback * wdk: otp auth error and handler refactor * Handle guard 2FA (#861) * guard: return a specific error when auth required * core: pass guard token to the service * wdk: handle prompting for guard 2FA code * dapp-client: handle prompting for guard 2FA code * guard 2fa tests * wdk: separate wallet and sessions guards * dapp-client: remove guard 2fa * dapp-client: fix imports * fix guard tests * wdk: remove unneeded promise resolve * Update relayer and api gen.ts, force public packages * Add standalone fetch queued payloads * Replacing GuardRole enum with string union type, as well as replacing guardAddresses Map with Record * Fallback to chain for non-logged in recovery * Add Katana, Sandbox Tesnet, Incentiv Testnet v2 (#873) * Update a few remaining dev1 contract addresses to rc3 (#874) * Remove unnecessary console.error where we already throw error * Improve DappClient hasPermission method * Wallet db try checksum and lowercase * Update dapp client json utils to include Map reviver and replacer * Bump next in the npm_and_yarn group across 1 directory Bumps the npm_and_yarn group with 1 update in the / directory: [next](https://github.com/vercel/next.js). Updates `next` from 15.4.2 to 15.4.7 - [Release notes](https://github.com/vercel/next.js/releases) - [Changelog](https://github.com/vercel/next.js/blob/canary/release.js) - [Commits](https://github.com/vercel/next.js/compare/v15.4.2...v15.4.7) --- updated-dependencies: - dependency-name: next dependency-version: 15.4.7 dependency-type: direct:production dependency-group: npm_and_yarn ... Signed-off-by: dependabot[bot] * Update type name, update exports for dapp client * Expired explicit sessions can't sign * Improve session validity test * session isValid returns invalid reason * InvalidReason is typed * Support multiple identity signers in sessions configuration * Device signers can approve implicit sessions * Remove invalid test * Fix recursion * Fix comment * Improve test stability by reducing race conditions * Do not set passkey signer as identity signer * Use length checks * Throw on missing identity signer * Encoding requires identity signer to encode * Fix test * Refactor/types namings tsdoc redundant code (#880) * refactor types, namings, ts doc * fix session response payload * change parameter name * change parameter name * change type in tests * improve types and dapp client methods * fix session test to use new types * refactor * refactor implicit sessions array in chain session manager * remove unused types * remove unused types and add ConnectionError * update pnpm lock * move reusable session types to wallet-core * Update some imports and update some response type names --------- Co-authored-by: Tolgahan Arikan * Fix check for explicit session for the updated type in dapp-client * Update api.gen.ts and relayer.gen.ts * Add missing chainId for dapp client event * Fix initializing new chain session manager on redirect * Add support for non-viem, custom Sequence chains (#882) * Update issue templates * Provider sent to prepareBlankEnvelope * Add session signature decoding * Add feeTokens endpoint to relayer (#885) * const for node length * Clearer blacklist size encoding * identity signer node length * Potential fix for code scanning alert no. 84: Insecure randomness Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> * add getFeeTokens to dapp client (#889) * add getFeeTokens to dapp client * fix typo * make getFeeTokens independent of chain session manager and initialize state (#890) * make getFeeTokens independent of chain session manager and initialized state * remove getFeeTokens from chain session manager * Throw specific error when trying to sign with an expired session (#887) * Throw when supported session signer is expired * Fix tests * Make dapp-client implicit sessions chain agnostic (#893) * Add Monad, remove LAOS and Root Network * Bump the npm_and_yarn group across 3 directories with 1 update Bumps the npm_and_yarn group with 1 update in the / directory: [happy-dom](https://github.com/capricorn86/happy-dom). Bumps the npm_and_yarn group with 1 update in the /packages/wallet/dapp-client directory: [happy-dom](https://github.com/capricorn86/happy-dom). Bumps the npm_and_yarn group with 1 update in the /packages/wallet/wdk directory: [happy-dom](https://github.com/capricorn86/happy-dom). Updates `happy-dom` from 17.6.3 to 20.0.0 - [Release notes](https://github.com/capricorn86/happy-dom/releases) - [Commits](https://github.com/capricorn86/happy-dom/compare/v17.6.3...v20.0.0) Updates `happy-dom` from 17.6.3 to 20.0.0 - [Release notes](https://github.com/capricorn86/happy-dom/releases) - [Commits](https://github.com/capricorn86/happy-dom/compare/v17.6.3...v20.0.0) Updates `happy-dom` from 17.6.3 to 20.0.0 - [Release notes](https://github.com/capricorn86/happy-dom/releases) - [Commits](https://github.com/capricorn86/happy-dom/compare/v17.6.3...v20.0.0) --- updated-dependencies: - dependency-name: happy-dom dependency-version: 20.0.0 dependency-type: direct:development dependency-group: npm_and_yarn - dependency-name: happy-dom dependency-version: 20.0.0 dependency-type: direct:development dependency-group: npm_and_yarn - dependency-name: happy-dom dependency-version: 20.0.0 dependency-type: direct:development dependency-group: npm_and_yarn ... Signed-off-by: dependabot[bot] * Bump happy-dom in the npm_and_yarn group across 1 directory (#69) Bumps the npm_and_yarn group with 1 update in the / directory: [happy-dom](https://github.com/capricorn86/happy-dom). Updates `happy-dom` from 20.0.0 to 20.0.2 - [Release notes](https://github.com/capricorn86/happy-dom/releases) - [Commits](https://github.com/capricorn86/happy-dom/compare/v20.0.0...v20.0.2) --- updated-dependencies: - dependency-name: happy-dom dependency-version: 20.0.2 dependency-type: direct:development dependency-group: npm_and_yarn ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Create SECURITY.md for security policy (#70) * Create SECURITY.md for security policy Add a security policy document outlining supported versions and vulnerability reporting. Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> * Update SECURITY.md Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> * Update SECURITY.md Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> --------- Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> * Update SECURITY.md Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> * Add support for sessionless dapp connection (#896) * Refactor relayer package & update dependant packages (#891) * refactor exports for relayer (#900) * Add Arc Testnet * Fix changelog config * Sessionless connection upgrade and error handling in DappClient (#902) * dapp-client: add sessionless snapshot restore flow * Bump the npm_and_yarn group across 3 directories with 1 update Bumps the npm_and_yarn group with 1 update in the / directory: [happy-dom](https://github.com/capricorn86/happy-dom). Bumps the npm_and_yarn group with 1 update in the /packages/wallet/dapp-client directory: [happy-dom](https://github.com/capricorn86/happy-dom). Bumps the npm_and_yarn group with 1 update in the /packages/wallet/wdk directory: [happy-dom](https://github.com/capricorn86/happy-dom). Updates `happy-dom` from 17.6.3 to 20.0.2 - [Release notes](https://github.com/capricorn86/happy-dom/releases) - [Commits](https://github.com/capricorn86/happy-dom/compare/v17.6.3...v20.0.2) Updates `happy-dom` from 17.6.3 to 20.0.2 - [Release notes](https://github.com/capricorn86/happy-dom/releases) - [Commits](https://github.com/capricorn86/happy-dom/compare/v17.6.3...v20.0.2) Updates `happy-dom` from 17.6.3 to 20.0.2 - [Release notes](https://github.com/capricorn86/happy-dom/releases) - [Commits](https://github.com/capricorn86/happy-dom/compare/v17.6.3...v20.0.2) --- updated-dependencies: - dependency-name: happy-dom dependency-version: 20.0.2 dependency-type: direct:development dependency-group: npm_and_yarn - dependency-name: happy-dom dependency-version: 20.0.2 dependency-type: direct:development dependency-group: npm_and_yarn - dependency-name: happy-dom dependency-version: 20.0.2 dependency-type: direct:development dependency-group: npm_and_yarn ... Signed-off-by: dependabot[bot] * Allow to logout a wallet with skipRemoveDevice even if the wallet is not in a ready state to allow force removing of wallets (#906) * Pass request to PromptCodeHandler in guard registerUI (#909) * Pass request to PromptCodeHandler in guard registerUI * Fixing guard registerUI test * guard: allow using recovery code as 2FA token (#910) * guard: allow using recovery code as 2FA token * Cleanup types of ResponseFn --------- Co-authored-by: Corban Riley * Add a way to reset 2fa when using a backup code (#911) * Add a way to reset 2fa when using a backup code * use the GuardToken type instead of breaking out the props * Update SECURITY.md Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update packages/wallet/dapp-client/src/DappTransport.ts Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update package.json Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update SECURITY.md Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update wagmi-project/package.json Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update wagmi-project/package.json Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update wagmi-project/src/App.tsx Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Create FUNDING.json (#90) Enhancements: Include FUNDING.json to display GitHub sponsorship options in the repository Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Create config.yml (#91) Add initial CircleCI configuration to enable automated builds using a custom Docker executor and a defined workflow. Build: Add .circleci/config.yml with version 2.1 specification and custom Docker executor. CI: Define web3-defi-game-project job with checkout step. Set up my-custom-workflow to run the job. Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Add rc4 contracts * Set rc4 as default and add it to lists * Session enhanced replay protection * New sessions replay protection hashes payload * Use the 4337 factory wrapper * Update keymachine url in dapp-client constants * Update keymachine url in Provider constructor * SSR safety (#915) * SSR safety test * Fix CI job * Guard dapp-client for SSR (lazy transport, browser checks, gated storage) * Fix guard topology (#918) * Use proper guard topology * Test and fixes * login and setup tests * Switch prod manager settings (#917) * Add prod guard and identity instrument info * Remove completed TODOs * Small JS tweaks (#919) * Fix type exports to built declarations * Update repository links to current package paths * Improve Next app tooling and React typings * Expose primitives CLI bin and use base lint config * Update relayer.gen.ts and TransactionPrecondition interface * Update api.gen.ts * Update metadata.gen.ts * Update marketplace.gen.ts * Update guard.gen.ts * Support multiple identity signers in sessions configuration * Device signers can approve implicit sessions * Remove invalid test * Fix recursion * Fix comment * Improve test stability by reducing race conditions * Do not set passkey signer as identity signer * Use length checks * Throw on missing identity signer * Encoding requires identity signer to encode * Fix test * Refactor/types namings tsdoc redundant code (#880) * refactor types, namings, ts doc * fix session response payload * change parameter name * change parameter name * change type in tests * improve types and dapp client methods * fix session test to use new types * refactor * refactor implicit sessions array in chain session manager * remove unused types * remove unused types and add ConnectionError * update pnpm lock * move reusable session types to wallet-core * Update some imports and update some response type names --------- Co-authored-by: Tolgahan Arikan * Fix check for explicit session for the updated type in dapp-client * Update api.gen.ts and relayer.gen.ts * Add missing chainId for dapp client event * Fix initializing new chain session manager on redirect * Add support for non-viem, custom Sequence chains (#882) * Provider sent to prepareBlankEnvelope * Add session signature decoding * const for node length * Clearer blacklist size encoding * identity signer node length * Add feeTokens endpoint to relayer (#885) * add getFeeTokens to dapp client (#889) * add getFeeTokens to dapp client * fix typo * make getFeeTokens independent of chain session manager and initialize state (#890) * make getFeeTokens independent of chain session manager and initialized state * remove getFeeTokens from chain session manager * Throw specific error when trying to sign with an expired session (#887) * Throw when supported session signer is expired * Fix tests * Make dapp-client implicit sessions chain agnostic (#893) * Add Monad, remove LAOS and Root Network * Add support for sessionless dapp connection (#896) * Refactor relayer package & update dependant packages (#891) * refactor exports for relayer (#900) * Add Arc Testnet * Fix changelog config * Sessionless connection upgrade and error handling in DappClient (#902) * dapp-client: add sessionless snapshot restore flow * Allow to logout a wallet with skipRemoveDevice even if the wallet is not in a ready state to allow force removing of wallets (#906) * Pass request to PromptCodeHandler in guard registerUI (#909) * Pass request to PromptCodeHandler in guard registerUI * Fixing guard registerUI test * guard: allow using recovery code as 2FA token (#910) * guard: allow using recovery code as 2FA token * Cleanup types of ResponseFn --------- Co-authored-by: Corban Riley * Add a way to reset 2fa when using a backup code (#911) * Add a way to reset 2fa when using a backup code * use the GuardToken type instead of breaking out the props * Add rc4 contracts * Set rc4 as default and add it to lists * Session enhanced replay protection * New sessions replay protection hashes payload * Use the 4337 factory wrapper * Update keymachine url in dapp-client constants * Update keymachine url in Provider constructor * SSR safety (#915) * Guard dapp-client for SSR (lazy transport, browser checks, gated storage) * Fix guard topology (#918) * Use proper guard topology * Test and fixes * login and setup tests * Switch prod manager settings (#917) * Add prod guard and identity instrument info * Remove completed TODOs * Small JS tweaks (#919) * Fix type exports to built declarations * Update repository links to current package paths * Improve Next app tooling and React typings * Expose primitives CLI bin and use base lint config * Update relayer.gen.ts and TransactionPrecondition interface * Update relayer.gen.ts and TransactionPrecondition interface (#920) * 3.0.0-beta.1 * identity-instrument: generate nonce from current time (#921) * Remove publish-dists.yml github action (#923) * 3.0.0-beta.2 * Clean up changeset config * Improve test stability by removing race conditions * Ensure build before test * Updating happy-dom to 20.0.10 (#926) * Add support for custom auth providers (authcode & authcode-pkce only) (#894) * Add support for custom auth providers (authcode & authcode-pkce only) * fix authcode tests * Updating Deps November 2025 (#927) * Updating deps for the workspace root * Updating deps for wallet/wdk * Fixing sessions test for latest vitest * Lets not upgrade to the latest typescript quite yet * Updating to latest vitest * Updating deps for wallet/core * Updating deps for wallet/primitives-cli * Updating deps for wallet/dapp-client * Adding syncpack to check for dep version inconsistencies * Setup syncpack versionGroups for pnpm workspace:^ * Fixing dep versions mismatches * Fixing @types/node mismatches * Adding syncpack to pre commit hook * Remove the syncpack format script. * Update ox to v9.17.0 (#928) * Upgrading ox to 9.17.0 * WrappedSignature renamed to SignatureErc6492 * Fixing PasskeySignatureValidator interface * Lock ox lib dep to use the same version with pnpm overrides and update viem to latest * Fix explicitSessionRequested check in dapp client * Typescript 5.9.3 (#930) * Upgrading to typescript v5.9.3 * Fix type errors that arose from typescript upgrade related to Bytes and Buffer source typings. * Don't catch errors thrown by Guard 2FA or reject early to allow multiple attempts on incorrect TOTP (#931) * Update pnpm * Mark @0xsequence/wallet-primitives-cli as private * 3.0.0-beta.3 * changeset cleanup * Fix rc4 4337 factory (#933) * Add rc5 and set it as default (#934) * 3.0.0-beta.4 * Update SECURITY.md Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update wagmi-project/package.json Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update wagmi-project/package.json Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Bump next from 15.5.5 to 15.5.7 (#936) Bumps [next](https://github.com/vercel/next.js) from 15.5.5 to 15.5.7. - [Release notes](https://github.com/vercel/next.js/releases) - [Changelog](https://github.com/vercel/next.js/blob/canary/release.js) - [Commits](https://github.com/vercel/next.js/compare/v15.5.5...v15.5.7) --- updated-dependencies: - dependency-name: next dependency-version: 15.5.7 dependency-type: direct:production ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * add userdata service client (#940) * Skip LocalDevice identity signers not on current device (#942) * Skip LocalDevice identity signers not on current device * Update log * 3.0.0-beta.5 * Update config.yml (#102) * Update config.yml Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update .circleci/config.yml Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> --------- Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com> * Update config.yml (#103) * Update config.yml Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update .circleci/config.yml Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> --------- Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com> * fix: extras/web/package.json to reduce vulnerabilities (#101) The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JS-NEXT-14173355 Co-authored-by: snyk-io[bot] <141718529+snyk-io[bot]@users.noreply.github.com> * fix: extras/docs/package.json to reduce vulnerabilities (#100) The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JS-NEXT-14173355 Co-authored-by: snyk-io[bot] <141718529+snyk-io[bot]@users.noreply.github.com> * fix: package.json to reduce vulnerabilities (#104) The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JS-BABELHELPERS-9397697 - https://snyk.io/vuln/SNYK-JS-BABELRUNTIME-10044504 - https://snyk.io/vuln/SNYK-JS-BRACEEXPANSION-9789073 - https://snyk.io/vuln/SNYK-JS-CROSSSPAWN-8303230 - https://snyk.io/vuln/SNYK-JS-ELLIPTIC-7577916 - https://snyk.io/vuln/SNYK-JS-ELLIPTIC-7577917 - https://snyk.io/vuln/SNYK-JS-ELLIPTIC-7577918 - https://snyk.io/vuln/SNYK-JS-ELLIPTIC-8187303 - https://snyk.io/vuln/SNYK-JS-ELLIPTIC-8720086 - https://snyk.io/vuln/SNYK-JS-IMAGESIZE-9634164 - https://snyk.io/vuln/SNYK-JS-INFLIGHT-6095116 - https://snyk.io/vuln/SNYK-JS-JSYAML-13961110 - https://snyk.io/vuln/SNYK-JS-MICROMATCH-6838728 - https://snyk.io/vuln/SNYK-JS-NODEFORGE-14114940 - https://snyk.io/vuln/SNYK-JS-NODEFORGE-14125097 - https://snyk.io/vuln/SNYK-JS-NODEFORGE-14125745 - https://snyk.io/vuln/SNYK-JS-ONHEADERS-10773729 - https://snyk.io/vuln/SNYK-JS-ROLLUP-8073097 - https://snyk.io/vuln/SNYK-JS-SECP256K1-8237220 - https://snyk.io/vuln/SNYK-JS-SEND-7926862 - https://snyk.io/vuln/SNYK-JS-SERVESTATIC-7926865 - https://snyk.io/vuln/SNYK-JS-SHAJS-12089400 Co-authored-by: snyk-io[bot] <141718529+snyk-io[bot]@users.noreply.github.com> * Revert "Merge remote-tracking branch 'origin/dependabot/npm_and_yarn/npm_and_yarn-318c02e2da'" This reverts commit fd0fdf9ecc6ad9056447e381de7fc5bb19f78e47, reversing changes made to cba78943db9942a4635bb530b7a43fc5d18b0ab4. * fix: extras/web/package.json to reduce vulnerabilities (#109) The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JS-NEXT-14173355 Co-authored-by: snyk-bot * fix: extras/docs/package.json to reduce vulnerabilities (#106) The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JS-NEXT-14400636 - https://snyk.io/vuln/SNYK-JS-NEXT-14400644 Co-authored-by: snyk-bot * Bump next in the npm_and_yarn group across 1 directory (#110) Bumps the npm_and_yarn group with 1 update in the / directory: [next](https://github.com/vercel/next.js). Updates `next` from 15.5.7 to 15.5.9 - [Release notes](https://github.com/vercel/next.js/releases) - [Changelog](https://github.com/vercel/next.js/blob/canary/release.js) - [Commits](https://github.com/vercel/next.js/compare/v15.5.7...v15.5.9) --- updated-dependencies: - dependency-name: next dependency-version: 15.5.9 dependency-type: direct:production dependency-group: npm_and_yarn ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Delete .github/workflows/fortify.yml (#111) Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * fix: extras/web/package.json to reduce vulnerabilities (#107) The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JS-NEXT-14400636 - https://snyk.io/vuln/SNYK-JS-NEXT-14400644 Co-authored-by: snyk-bot * Bump the npm_and_yarn group across 1 directory with 3 updates (#115) Bumps the npm_and_yarn group with 1 update in the / directory: [next](https://github.com/vercel/next.js). Updates `next` from 15.5.5 to 15.5.9 - [Release notes](https://github.com/vercel/next.js/releases) - [Changelog](https://github.com/vercel/next.js/blob/canary/release.js) - [Commits](https://github.com/vercel/next.js/compare/v15.5.5...v15.5.9) Updates `happy-dom` from 17.6.3 to 20.0.11 - [Release notes](https://github.com/capricorn86/happy-dom/releases) - [Commits](https://github.com/capricorn86/happy-dom/compare/v17.6.3...v20.0.11) Updates `vite` from 7.1.10 to 7.2.7 - [Release notes](https://github.com/vitejs/vite/releases) - [Changelog](https://github.com/vitejs/vite/blob/v7.2.7/packages/vite/CHANGELOG.md) - [Commits](https://github.com/vitejs/vite/commits/v7.2.7/packages/vite) --- updated-dependencies: - dependency-name: next dependency-version: 15.5.9 dependency-type: direct:production dependency-group: npm_and_yarn - dependency-name: happy-dom dependency-version: 20.0.11 dependency-type: direct:development dependency-group: npm_and_yarn - dependency-name: vite dependency-version: 7.2.7 dependency-type: indirect dependency-group: npm_and_yarn ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Bump next from 15.5.7 to 15.5.9 (#944) Bumps [next](https://github.com/vercel/next.js) from 15.5.7 to 15.5.9. - [Release notes](https://github.com/vercel/next.js/releases) - [Changelog](https://github.com/vercel/next.js/blob/canary/release.js) - [Commits](https://github.com/vercel/next.js/compare/v15.5.7...v15.5.9) --- updated-dependencies: - dependency-name: next dependency-version: 15.5.9 dependency-type: direct:production ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Pin foundry to v1.5.0 instead of nightly (#947) * Include repo and extras in syncpack config to ensure deps are synced (#945) * Include repo and extras in syncpack config to ensure deps are synced across all * Updating support deps * Updating deps * Updating pnpm lock * Fixing type errors within wdk tests * Short circuit 404s (#949) * skip witness on signers that don't support it * add passkey to test * 3.0.0-beta.6 * Update tests.yml (#119) Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update config.yml (#120) Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update packages/services/identity-instrument/src/index.ts Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * feat: upgrade @wagmi/cli from 0.1.15 to 2.8.0 (#126) Snyk has created this PR to upgrade @wagmi/cli from 0.1.15 to 2.8.0. See this package in npm: @wagmi/cli See this project in Snyk: https://app.snyk.io/org/dargon789/project/bb845543-cbee-4e11-8cf9-8bfdf9205bf1?utm_source=github&utm_medium=referral&page=upgrade-pr Co-authored-by: snyk-bot * Potential fix for code scanning alert no. 82: Workflow does not contain permissions Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Potential fix for code scanning alert no. 62: Information exposure through a stack trace Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> --------- Signed-off-by: dependabot[bot] Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> Co-authored-by: Patryk Kalinowski Co-authored-by: Corban Riley Co-authored-by: tolgahan-arikan Co-authored-by: Agusx1211 Co-authored-by: Michael Standen Co-authored-by: William Hua Co-authored-by: Michael Standen Co-authored-by: Patryk Kalinowski Co-authored-by: Taylan Pince Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Gabi <56271768+VGabriel45@users.noreply.github.com> Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com> Co-authored-by: snyk-io[bot] <141718529+snyk-io[bot]@users.noreply.github.com> Co-authored-by: snyk-bot * Update extras/docs/package.json Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update extras/web/package.json Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * [Snyk] Upgrade @tanstack/react-query from 5.64.2 to 5.90.11 (#125) * fix: upgrade @tanstack/react-query from 5.64.2 to 5.90.11 Snyk has created this PR to upgrade @tanstack/react-query from 5.64.2 to 5.90.11. See this package in npm: @tanstack/react-query See this project in Snyk: https://app.snyk.io/org/dargon789/project/bb845543-cbee-4e11-8cf9-8bfdf9205bf1?utm_source=github&utm_medium=referral&page=upgrade-pr * Update wagmi-project/package.json Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> --------- Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> Co-authored-by: snyk-bot Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> * feat: upgrade vite from 5.4.21 to 7.2.4 (#124) Snyk has created this PR to upgrade vite from 5.4.21 to 7.2.4. See this package in npm: vite See this project in Snyk: https://app.snyk.io/org/dargon789/project/bb845543-cbee-4e11-8cf9-8bfdf9205bf1?utm_source=github&utm_medium=referral&page=upgrade-pr Co-authored-by: snyk-bot * feat: upgrade wagmi from 0.12.19 to 3.0.2 (#123) Snyk has created this PR to upgrade wagmi from 0.12.19 to 3.0.2. See this package in npm: wagmi See this project in Snyk: https://app.snyk.io/org/dargon789/project/bb845543-cbee-4e11-8cf9-8bfdf9205bf1?utm_source=github&utm_medium=referral&page=upgrade-pr Co-authored-by: snyk-bot * feat: upgrade react-dom from 18.3.1 to 19.2.0 (#122) Snyk has created this PR to upgrade react-dom from 18.3.1 to 19.2.0. See this package in npm: react-dom See this project in Snyk: https://app.snyk.io/org/dargon789/project/bb845543-cbee-4e11-8cf9-8bfdf9205bf1?utm_source=github&utm_medium=referral&page=upgrade-pr Co-authored-by: snyk-bot * Pin foundry to v1.5.0 instead of nightly (0xsequence#947) (#134) * Bump next from 15.5.7 to 15.5.9 (#944) Bumps [next](https://github.com/vercel/next.js) from 15.5.7 to 15.5.9. - [Release notes](https://github.com/vercel/next.js/releases) - [Changelog](https://github.com/vercel/next.js/blob/canary/release.js) - [Commits](https://github.com/vercel/next.js/compare/v15.5.7...v15.5.9) --- updated-dependencies: - dependency-name: next dependency-version: 15.5.9 dependency-type: direct:production ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Pin foundry to v1.5.0 instead of nightly (#947) * Include repo and extras in syncpack config to ensure deps are synced (#945) * Include repo and extras in syncpack config to ensure deps are synced across all * Updating support deps * Updating deps * Updating pnpm lock * Fixing type errors within wdk tests * Short circuit 404s (#949) * skip witness on signers that don't support it * add passkey to test * 3.0.0-beta.6 --------- Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Taylan Pince Co-authored-by: Corban Riley Co-authored-by: Agusx1211 * Update packages/wallet/wdk/test/wallets.test.ts Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update packages/wallet/wdk/test/wallets.test.ts Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * fix: extras/docs/package.json to reduce vulnerabilities (#136) The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JS-NEXT-14173355 Co-authored-by: snyk-io[bot] <141718529+snyk-io[bot]@users.noreply.github.com> * [Snyk] Upgrade @types/react from 18.3.27 to 19.2.7 (#127) * feat: upgrade @types/react from 18.3.27 to 19.2.7 Snyk has created this PR to upgrade @types/react from 18.3.27 to 19.2.7. See this package in npm: @types/react See this project in Snyk: https://app.snyk.io/org/dargon789/project/bb845543-cbee-4e11-8cf9-8bfdf9205bf1?utm_source=github&utm_medium=referral&page=upgrade-pr * Update wagmi-project/package.json Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> --------- Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> Co-authored-by: snyk-bot Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> * Master ceb95d4 (#129) * Update issue templates (#128) * Bump the npm_and_yarn group across 1 directory with 1 update Bumps the npm_and_yarn group with 1 update in the / directory: [express](https://github.com/expressjs/express). Updates `express` from 4.18.2 to 4.19.2 - [Release notes](https://github.com/expressjs/express/releases) - [Changelog](https://github.com/expressjs/express/blob/master/History.md) - [Commits](https://github.com/expressjs/express/compare/4.18.2...4.19.2) --- updated-dependencies: - dependency-name: express dependency-type: direct:development dependency-group: npm_and_yarn-security-group ... Signed-off-by: dependabot[bot] * Create SECURITY.md * Set up CI with Azure Pipelines [skip ci] * Create CNAME * Create fortify.yml * Update issue templates * Update CNAME * fix: upgrade @tanstack/react-query from 5.45.1 to 5.64.2 Snyk has created this PR to upgrade @tanstack/react-query from 5.45.1 to 5.64.2. See this package in npm: @tanstack/react-query See this project in Snyk: https://app.snyk.io/org/dargon789/project/bb845543-cbee-4e11-8cf9-8bfdf9205bf1?utm_source=github&utm_medium=referral&page=upgrade-pr * Create config.yml (#46) Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> * Support multiple identity signers in sessions configuration * Device signers can approve implicit sessions * Remove invalid test * Fix recursion * Fix comment * Improve test stability by reducing race conditions * Do not set passkey signer as identity signer * Use length checks * Throw on missing identity signer * Encoding requires identity signer to encode * Fix test * Refactor/types namings tsdoc redundant code (#880) * refactor types, namings, ts doc * fix session response payload * change parameter name * change parameter name * change type in tests * improve types and dapp client methods * fix session test to use new types * refactor * refactor implicit sessions array in chain session manager * remove unused types * remove unused types and add ConnectionError * update pnpm lock * move reusable session types to wallet-core * Update some imports and update some response type names --------- Co-authored-by: Tolgahan Arikan * Fix check for explicit session for the updated type in dapp-client * Update api.gen.ts and relayer.gen.ts * Add missing chainId for dapp client event * Fix initializing new chain session manager on redirect * Add support for non-viem, custom Sequence chains (#882) * Provider sent to prepareBlankEnvelope * Update fortify.yml Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> * Add session signature decoding * Add feeTokens endpoint to relayer (#885) * const for node length * Clearer blacklist size encoding * identity signer node length * add getFeeTokens to dapp client (#889) * add getFeeTokens to dapp client * fix typo * make getFeeTokens independent of chain session manager and initialize state (#890) * make getFeeTokens independent of chain session manager and initialized state * remove getFeeTokens from chain session manager * Throw specific error when trying to sign with an expired session (#887) * Throw when supported session signer is expired * Fix tests * Make dapp-client implicit sessions chain agnostic (#893) * Add Monad, remove LAOS and Root Network * Add support for sessionless dapp connection (#896) * Refactor relayer package & update dependant packages (#891) * refactor exports for relayer (#900) * Add Arc Testnet * Fix changelog config * Sessionless connection upgrade and error handling in DappClient (#902) * dapp-client: add sessionless snapshot restore flow * Bump the npm_and_yarn group across 3 directories with 1 update Bumps the npm_and_yarn group with 1 update in the / directory: [happy-dom](https://github.com/capricorn86/happy-dom). Bumps the npm_and_yarn group with 1 update in the /packages/wallet/dapp-client directory: [happy-dom](https://github.com/capricorn86/happy-dom). Bumps the npm_and_yarn group with 1 update in the /packages/wallet/wdk directory: [happy-dom](https://github.com/capricorn86/happy-dom). Updates `happy-dom` from 17.6.3 to 20.0.2 - [Release notes](https://github.com/capricorn86/happy-dom/releases) - [Commits](https://github.com/capricorn86/happy-dom/compare/v17.6.3...v20.0.2) Updates `happy-dom` from 17.6.3 to 20.0.2 - [Release notes](https://github.com/capricorn86/happy-dom/releases) - [Commits](https://github.com/capricorn86/happy-dom/compare/v17.6.3...v20.0.2) Updates `happy-dom` from 17.6.3 to 20.0.2 - [Release notes](https://github.com/capricorn86/happy-dom/releases) - [Commits](https://github.com/capricorn86/happy-dom/compare/v17.6.3...v20.0.2) --- updated-dependencies: - dependency-name: happy-dom dependency-version: 20.0.2 dependency-type: direct:development dependency-group: npm_and_yarn - dependency-name: happy-dom dependency-version: 20.0.2 dependency-type: direct:development dependency-group: npm_and_yarn - dependency-name: happy-dom dependency-version: 20.0.2 dependency-type: direct:development dependency-group: npm_and_yarn ... Signed-off-by: dependabot[bot] * Allow to logout a wallet with skipRemoveDevice even if the wallet is not in a ready state to allow force removing of wallets (#906) * Pass request to PromptCodeHandler in guard registerUI (#909) * Pass request to PromptCodeHandler in guard registerUI * Fixing guard registerUI test * guard: allow using recovery code as 2FA token (#910) * guard: allow using recovery code as 2FA token * Cleanup types of ResponseFn --------- Co-authored-by: Corban Riley * Add a way to reset 2fa when using a backup code (#911) * Add a way to reset 2fa when using a backup code * use the GuardToken type instead of breaking out the props * Update package.json Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update SECURITY.md Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update wagmi-project/package.json Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update wagmi-project/package.json Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update wagmi-project/src/App.tsx Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Create FUNDING.json (#90) Enhancements: Include FUNDING.json to display GitHub sponsorship options in the repository Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Create config.yml (#91) Add initial CircleCI configuration to enable automated builds using a custom Docker executor and a defined workflow. Build: Add .circleci/config.yml with version 2.1 specification and custom Docker executor. CI: Define web3-defi-game-project job with checkout step. Set up my-custom-workflow to run the job. Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Add rc4 contracts * Set rc4 as default and add it to lists * Session enhanced replay protection * New sessions replay protection hashes payload * Use the 4337 factory wrapper * Update keymachine url in dapp-client constants * Update keymachine url in Provider constructor * SSR safety (#915) * SSR safety test * Fix CI job * Guard dapp-client for SSR (lazy transport, browser checks, gated storage) * Fix guard topology (#918) * Use proper guard topology * Test and fixes * login and setup tests * Switch prod manager settings (#917) * Add prod guard and identity instrument info * Remove completed TODOs * Small JS tweaks (#919) * Fix type exports to built declarations * Update repository links to current package paths * Improve Next app tooling and React typings * Expose primitives CLI bin and use base lint config * Update relayer.gen.ts and TransactionPrecondition interface * Update api.gen.ts * Update metadata.gen.ts * Update marketplace.gen.ts * Update guard.gen.ts * Support multiple identity signers in sessions configuration * Device signers can approve implicit sessions * Remove invalid test * Fix recursion * Fix comment * Improve test stability by reducing race conditions * Do not set passkey signer as identity signer * Use length checks * Throw on missing identity signer * Encoding requires identity signer to encode * Fix test * Refactor/types namings tsdoc redundant code (#880) * refactor types, namings, ts doc * fix session response payload * change parameter name * change parameter name * change type in tests * improve types and dapp client methods * fix session test to use new types * refactor * refactor implicit sessions array in chain session manager * remove unused types * remove unused types and add ConnectionError * update pnpm lock * move reusable session types to wallet-core * Update some imports and update some response type names --------- Co-authored-by: Tolgahan Arikan * Fix check for explicit session for the updated type in dapp-client * Update api.gen.ts and relayer.gen.ts * Add missing chainId for dapp client event * Fix initializing new chain session manager on redirect * Add support for non-viem, custom Sequence chains (#882) * Provider sent to prepareBlankEnvelope * Add session signature decoding * const for node length * Clearer blacklist size encoding * identity signer node length * Add feeTokens endpoint to relayer (#885) * add getFeeTokens to dapp client (#889) * add getFeeTokens to dapp client * fix typo * make getFeeTokens independent of chain session manager and initialize state (#890) * make getFeeTokens independent of chain session manager and initialized state * remove getFeeTokens from chain session manager * Throw specific error when trying to sign with an expired session (#887) * Throw when supported session signer is expired * Fix tests * Make dapp-client implicit sessions chain agnostic (#893) * Add Monad, remove LAOS and Root Network * Add support for sessionless dapp connection (#896) * Refactor relayer package & update dependant packages (#891) * refactor exports for relayer (#900) * Add Arc Testnet * Fix changelog config * Sessionless connection upgrade and error handling in DappClient (#902) * dapp-client: add sessionless snapshot restore flow * Allow to logout a wallet with skipRemoveDevice even if the wallet is not in a ready state to allow force removing of wallets (#906) * Pass request to PromptCodeHandler in guard registerUI (#909) * Pass request to PromptCodeHandler in guard registerUI * Fixing guard registerUI test * guard: allow using recovery code as 2FA token (#910) * guard: allow using recovery code as 2FA token * Cleanup types of ResponseFn --------- Co-authored-by: Corban Riley * Add a way to reset 2fa when using a backup code (#911) * Add a way to reset 2fa when using a backup code * use the GuardToken type instead of breaking out the props * Add rc4 contracts * Set rc4 as default and add it to lists * Session enhanced replay protection * New sessions replay protection hashes payload * Use the 4337 factory wrapper * Update keymachine url in dapp-client constants * Update keymachine url in Provider constructor * SSR safety (#915) * Guard dapp-client for SSR (lazy transport, browser checks, gated storage) * Fix guard topology (#918) * Use proper guard topology * Test and fixes * login and setup tests * Switch prod manager settings (#917) * Add prod guard and identity instrument info * Remove completed TODOs * Small JS tweaks (#919) * Fix type exports to built declarations * Update repository links to current package paths * Improve Next app tooling and React typings * Expose primitives CLI bin and use base lint config * Update relayer.gen.ts and TransactionPrecondition interface * Update relayer.gen.ts and TransactionPrecondition interface (#920) * 3.0.0-beta.1 * identity-instrument: generate nonce from current time (#921) * Remove publish-dists.yml github action (#923) * 3.0.0-beta.2 * Clean up changeset config * Improve test stability by removing race conditions * Ensure build before test * Updating happy-dom to 20.0.10 (#926) * Add support for custom auth providers (authcode & authcode-pkce only) (#894) * Add support for custom auth providers (authcode & authcode-pkce only) * fix authcode tests * Updating Deps November 2025 (#927) * Updating deps for the workspace root * Updating deps for wallet/wdk * Fixing sessions test for latest vitest * Lets not upgrade to the latest typescript quite yet * Updating to latest vitest * Updating deps for wallet/core * Updating deps for wallet/primitives-cli * Updating deps for wallet/dapp-client * Adding syncpack to check for dep version inconsistencies * Setup syncpack versionGroups for pnpm workspace:^ * Fixing dep versions mismatches * Fixing @types/node mismatches * Adding syncpack to pre commit hook * Remove the syncpack format script. * Update ox to v9.17.0 (#928) * Upgrading ox to 9.17.0 * WrappedSignature renamed to SignatureErc6492 * Fixing PasskeySignatureValidator interface * Lock ox lib dep to use the same version with pnpm overrides and update viem to latest * Fix explicitSessionRequested check in dapp client * Typescript 5.9.3 (#930) * Upgrading to typescript v5.9.3 * Fix type errors that arose from typescript upgrade related to Bytes and Buffer source typings. * Don't catch errors thrown by Guard 2FA or reject early to allow multiple attempts on incorrect TOTP (#931) * Update pnpm * Mark @0xsequence/wallet-primitives-cli as private * 3.0.0-beta.3 * changeset cleanup * Fix rc4 4337 factory (#933) * Add rc5 and set it as default (#934) * 3.0.0-beta.4 * Update SECURITY.md Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update wagmi-project/package.json Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update wagmi-project/package.json Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Bump next from 15.5.5 to 15.5.7 (#936) Bumps [next](https://github.com/vercel/next.js) from 15.5.5 to 15.5.7. - [Release notes](https://github.com/vercel/next.js/releases) - [Changelog](https://github.com/vercel/next.js/blob/canary/release.js) - [Commits](https://github.com/vercel/next.js/compare/v15.5.5...v15.5.7) --- updated-dependencies: - dependency-name: next dependency-version: 15.5.7 dependency-type: direct:production ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * add userdata service client (#940) * Skip LocalDevice identity signers not on current device (#942) * Skip LocalDevice identity signers not on current device * Update log * 3.0.0-beta.5 * Update config.yml (#102) * Update config.yml Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update .circleci/config.yml Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> --------- Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com> * Update config.yml (#103) * Update config.yml Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update .circleci/config.yml Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> --------- Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com> * fix: extras/web/package.json to reduce vulnerabilities (#101) The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JS-NEXT-14173355 Co-authored-by: snyk-io[bot] <141718529+snyk-io[bot]@users.noreply.github.com> * fix: extras/docs/package.json to reduce vulnerabilities (#100) The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JS-NEXT-14173355 Co-authored-by: snyk-io[bot] <141718529+snyk-io[bot]@users.noreply.github.com> * fix: package.json to reduce vulnerabilities (#104) The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JS-BABELHELPERS-9397697 - https://snyk.io/vuln/SNYK-JS-BABELRUNTIME-10044504 - https://snyk.io/vuln/SNYK-JS-BRACEEXPANSION-9789073 - https://snyk.io/vuln/SNYK-JS-CROSSSPAWN-8303230 - https://snyk.io/vuln/SNYK-JS-ELLIPTIC-7577916 - https://snyk.io/vuln/SNYK-JS-ELLIPTIC-7577917 - https://snyk.io/vuln/SNYK-JS-ELLIPTIC-7577918 - https://snyk.io/vuln/SNYK-JS-ELLIPTIC-8187303 - https://snyk.io/vuln/SNYK-JS-ELLIPTIC-8720086 - https://snyk.io/vuln/SNYK-JS-IMAGESIZE-9634164 - https://snyk.io/vuln/SNYK-JS-INFLIGHT-6095116 - https://snyk.io/vuln/SNYK-JS-JSYAML-13961110 - https://snyk.io/vuln/SNYK-JS-MICROMATCH-6838728 - https://snyk.io/vuln/SNYK-JS-NODEFORGE-14114940 - https://snyk.io/vuln/SNYK-JS-NODEFORGE-14125097 - https://snyk.io/vuln/SNYK-JS-NODEFORGE-14125745 - https://snyk.io/vuln/SNYK-JS-ONHEADERS-10773729 - https://snyk.io/vuln/SNYK-JS-ROLLUP-8073097 - https://snyk.io/vuln/SNYK-JS-SECP256K1-8237220 - https://snyk.io/vuln/SNYK-JS-SEND-7926862 - https://snyk.io/vuln/SNYK-JS-SERVESTATIC-7926865 - https://snyk.io/vuln/SNYK-JS-SHAJS-12089400 Co-authored-by: snyk-io[bot] <141718529+snyk-io[bot]@users.noreply.github.com> * Revert "Merge remote-tracking branch 'origin/dependabot/npm_and_yarn/npm_and_yarn-318c02e2da'" This reverts commit fd0fdf9ecc6ad9056447e381de7fc5bb19f78e47, reversing changes made to cba78943db9942a4635bb530b7a43fc5d18b0ab4. * fix: extras/web/package.json to reduce vulnerabilities (#109) The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JS-NEXT-14173355 Co-authored-by: snyk-bot * fix: extras/docs/package.json to reduce vulnerabilities (#106) The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JS-NEXT-14400636 - https://snyk.io/vuln/SNYK-JS-NEXT-14400644 Co-authored-by: snyk-bot * Bump next in the npm_and_yarn group across 1 directory (#110) Bumps the npm_and_yarn group with 1 update in the / directory: [next](https://github.com/vercel/next.js). Updates `next` from 15.5.7 to 15.5.9 - [Release notes](https://github.com/vercel/next.js/releases) - [Changelog](https://github.com/vercel/next.js/blob/canary/release.js) - [Commits](https://github.com/vercel/next.js/compare/v15.5.7...v15.5.9) --- updated-dependencies: - dependency-name: next dependency-version: 15.5.9 dependency-type: direct:production dependency-group: npm_and_yarn ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Delete .github/workflows/fortify.yml (#111) Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * fix: extras/web/package.json to reduce vulnerabilities (#107) The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JS-NEXT-14400636 - https://snyk.io/vuln/SNYK-JS-NEXT-14400644 Co-authored-by: snyk-bot * Bump the npm_and_yarn group across 1 directory with 3 updates (#115) Bumps the npm_and_yarn group with 1 update in the / directory: [next](https://github.com/vercel/next.js). Updates `next` from 15.5.5 to 15.5.9 - [Release notes](https://github.com/vercel/next.js/releases) - [Changelog](https://github.com/vercel/next.js/blob/canary/release.js) - [Commits](https://github.com/vercel/next.js/compare/v15.5.5...v15.5.9) Updates `happy-dom` from 17.6.3 to 20.0.11 - [Release notes](https://github.com/capricorn86/happy-dom/releases) - [Commits](https://github.com/capricorn86/happy-dom/compare/v17.6.3...v20.0.11) Updates `vite` from 7.1.10 to 7.2.7 - [Release notes](https://github.com/vitejs/vite/releases) - [Changelog](https://github.com/vitejs/vite/blob/v7.2.7/packages/vite/CHANGELOG.md) - [Commits](https://github.com/vitejs/vite/commits/v7.2.7/packages/vite) --- updated-dependencies: - dependency-name: next dependency-version: 15.5.9 dependency-type: direct:production dependency-group: npm_and_yarn - dependency-name: happy-dom dependency-version: 20.0.11 dependency-type: direct:development dependency-group: npm_and_yarn - dependency-name: vite dependency-version: 7.2.7 dependency-type: indirect dependency-group: npm_and_yarn ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Bump next from 15.5.7 to 15.5.9 (#944) Bumps [next](https://github.com/vercel/next.js) from 15.5.7 to 15.5.9. - [Release notes](https://github.com/vercel/next.js/releases) - [Changelog](https://github.com/vercel/next.js/blob/canary/release.js) - [Commits](https://github.com/vercel/next.js/compare/v15.5.7...v15.5.9) --- updated-dependencies: - dependency-name: next dependency-version: 15.5.9 dependency-type: direct:production ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Pin foundry to v1.5.0 instead of nightly (#947) * Include repo and extras in syncpack config to ensure deps are synced (#945) * Include repo and extras in syncpack config to ensure deps are synced across all * Updating support deps * Updating deps * Updating pnpm lock * Fixing type errors within wdk tests * Short circuit 404s (#949) * skip witness on signers that don't support it * add passkey to test * 3.0.0-beta.6 * Update tests.yml (#119) Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update config.yml (#120) Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update packages/services/identity-instrument/src/index.ts Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> --------- Signed-off-by: dependabot[bot] Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: snyk-bot Co-authored-by: Michael Standen Co-authored-by: Gabi <56271768+VGabriel45@users.noreply.github.com> Co-authored-by: Tolgahan Arikan Co-authored-by: Taylan Pince Co-authored-by: Corban Brook Co-authored-by: Patryk Kalinowski Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Co-authored-by: Agusx1211 Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com> Co-authored-by: snyk-io[bot] <141718529+snyk-io[bot]@users.noreply.github.com> * Update wagmi-project/src/main.tsx Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update wagmi-project/package.json Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update wagmi-project/package.json Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * fix: extras/docs/package.json to reduce vulnerabilities (#116) The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JS-NEXT-14400636 - https://snyk.io/vuln/SNYK-JS-NEXT-14400644 Co-authored-by: snyk-io[bot] <141718529+snyk-io[bot]@users.noreply.github.com> Co-authored-by: dargon789 <64915515+Dargon789@users.noreply.github.com> --------- Signed-off-by: dependabot[bot] Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: snyk-bot Co-authored-by: Michael Standen Co-authored-by: Gabi <56271768+VGabriel45@users.noreply.github.com> Co-authored-by: Tolgahan Arikan Co-authored-by: Taylan Pince Co-authored-by: Corban Brook Co-authored-by: Patryk Kalinowski Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Co-authored-by: Agusx1211 Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com> Co-authored-by: snyk-io[bot] <141718529+snyk-io[bot]@users.noreply.github.com> * Update wagmi-project/src/App.tsx Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update wagmi-project/src/App.tsx Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update wagmi-project/src/App.tsx Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update wagmi-project/src/App.tsx Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * 2.3.7 (#131) (#132) * 2.3.7 (#131) * fix broken guard private key * Expose access to passkey credential list * Dapp client direct txn request (#856) * Signature request refactor * WIP * Refactor * Update dapp-client exports (#858) * Add hasPermission method to DappClient (#859) * Save discovered passkey credentials upon login * Expose name property in PasskeySignupArgs * Fix blacklist sort * Add multi server script * relayer: /SimulateV3 (#857) * Add await for handleOpenDB scheduleExpiration * Update increment to always include native once used * Fix session tests * Adding lastLoginAt to PasskeyCredential * LoginToPasskeyArgs now accept a credentialId which is used to specify which credential to use * Adding onSignatureRequestStatus function to register single use callbacks for when a request reaches a terminal state of completed or cancelled * When a login is cancelled we can remove the wallet which is logging-in * Add RC3 contracts * Sessions space restriction * Dedupe signers for encoding * Support RC3 sessions * Tightly increment call validation * CLI defaults to RC3 wallet code * Rc3 address test * Fix hashing tests * Add deprecated encoding test * wdk: throw errors from otp respond callback (#864) * wdk: throw errors from otp respond callback * wdk: otp auth error and handler refactor * Handle guard 2FA (#861) * guard: return a specific error when auth required * core: pass guard token to the service * wdk: handle prompting for guard 2FA code * dapp-client: handle prompting for guard 2FA code * guard 2fa tests * wdk: separate wallet and sessions guards * dapp-client: remove guard 2fa * dapp-client: fix imports * fix guard tests * wdk: remove unneeded promise resolve * Update relayer and api gen.ts, force public packages * Add standalone fetch queued payloads * Replacing GuardRole enum with string union type, as well as replacing guardAddresses Map with Record * Fallback to chain for non-logged in recovery * Add Katana, Sandbox Tesnet, Incentiv Testnet v2 (#873) * Update a few remaining dev1 contract addresses to rc3 (#874) * Remove unnecessary console.error where we already throw error * Improve DappClient hasPermission method * Wallet db try checksum and lowercase * Update dapp client json utils to include Map reviver and replacer * Bump next in the npm_and_yarn group across 1 directory Bumps the npm_and_yarn group with 1 update in the / directory: [next](https://github.com/vercel/next.js). Updates `next` from 15.4.2 to 15.4.7 - [Release notes](https://github.com/vercel/next.js/releases) - [Changelog](https://github.com/vercel/next.js/blob/canary/release.js) - [Commits](https://github.com/vercel/next.js/compare/v15.4.2...v15.4.7) --- updated-dependencies: - dependency-name: next dependency-version: 15.4.7 dependency-type: direct:production dependency-group: npm_and_yarn ... Signed-off-by: dependabot[bot] * Update type name, update exports for dapp client * Expired explicit sessions can't sign * Improve session validity test * session isValid returns invalid reason * InvalidReason is typed * Support multiple identity signers in sessions configuration * Device signers can approve implicit sessions * Remove invalid test * Fix recursion * Fix comment * Improve test stability by reducing race conditions * Do not set passkey signer as identity signer * Use length checks * Throw on missing identity signer * Encoding requires identity signer to encode * Fix test * Refactor/types namings tsdoc redundant code (#880) * refactor types, namings, ts doc * fix session response payload * change parameter name * change parameter name * change type in tests * improve types and dapp client methods * fix session test to use new types * refactor * refactor implicit sessions array in chain session manager * remove unused types * remove unused types and add ConnectionError * update pnpm lock * move reusable session types to wallet-core * Update some imports and update some response type names --------- Co-authored-by: Tolgahan Arikan * Fix check for explicit session for the updated type in dapp-client * Update api.gen.ts and relayer.gen.ts * Add missing chainId for dapp client event * Fix initializing new chain session manager on redirect * Add support for non-viem, custom Sequence chains (#882) * Update issue templates * Provider sent to prepareBlankEnvelope * Add session signature decoding * Add feeTokens endpoint to relayer (#885) * const for node length * Clearer blacklist size encoding * identity signer node length * Potential fix for code scanning alert no. 84: Insecure randomness Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> * add getFeeTokens to dapp client (#889) * add getFeeTokens to dapp client * fix typo * make getFeeTokens independent of chain session manager and initialize state (#890) * make getFeeTokens independent of chain session manager and initialized state * remove getFeeTokens from chain session manager * Throw specific error when trying to sign with an expired session (#887) * Throw when supported session signer is expired * Fix tests * Make dapp-client implicit sessions chain agnostic (#893) * Add Monad, remove LAOS and Root Network * Bump the npm_and_yarn group across 3 directories with 1 update Bumps the npm_and_yarn group with 1 update in the / directory: [happy-dom](https://github.com/capricorn86/happy-dom). Bumps the npm_and_yarn group with 1 update in the /packages/wallet/dapp-client directory: [happy-dom](https://github.com/capricorn86/happy-dom). Bumps the npm_and_yarn group with 1 update in the /packages/wallet/wdk directory: [happy-dom](https://github.com/capricorn86/happy-dom). Updates `happy-dom` from 17.6.3 to 20.0.0 - [Release notes](https://github.com/capricorn86/happy-dom/releases) - [Commits](https://github.com/capricorn86/happy-dom/compare/v17.6.3...v20.0.0) Updates `happy-dom` from 17.6.3 to 20.0.0 - [Release notes](https://github.com/capricorn86/happy-dom/releases) - [Commits](https://github.com/capricorn86/happy-dom/compare/v17.6.3...v20.0.0) Updates `happy-dom` from 17.6.3 to 20.0.0 - [Release notes](https://github.com/capricorn86/happy-dom/releases) - [Commits](https://github.com/capricorn86/happy-dom/compare/v17.6.3...v20.0.0) --- updated-dependencies: - dependency-name: happy-dom dependency-version: 20.0.0 dependency-type: direct:development dependency-group: npm_and_yarn - dependency-name: happy-dom dependency-version: 20.0.0 dependency-type: direct:development dependency-group: npm_and_yarn - dependency-name: happy-dom dependency-version: 20.0.0 dependency-type: direct:development dependency-group: npm_and_yarn ... Signed-off-by: dependabot[bot] * Bump happy-dom in the npm_and_yarn group across 1 directory (#69) Bumps the npm_and_yarn group with 1 update in the / directory: [happy-dom](https://github.com/capricorn86/happy-dom). Updates `happy-dom` from 20.0.0 to 20.0.2 - [Release notes](https://github.com/capricorn86/happy-dom/releases) - [Commits](https://github.com/capricorn86/happy-dom/compare/v20.0.0...v20.0.2) --- updated-dependencies: - dependency-name: happy-dom dependency-version: 20.0.2 dependency-type: direct:development dependency-group: npm_and_yarn ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Create SECURITY.md for security policy (#70) * Create SECURITY.md for security policy Add a security policy document outlining supported versions and vulnerability reporting. Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> * Update SECURITY.md Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> * Update SECURITY.md Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> --------- Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> * Update SECURITY.md Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> * Add support for sessionless dapp connection (#896) * Refactor relayer package & update dependant packages (#891) * refactor exports for relayer (#900) * Add Arc Testnet * Fix changelog config * Sessionless connection upgrade and error handling in DappClient (#902) * dapp-client: add sessionless snapshot restore flow * Bump the npm_and_yarn group across 3 directories with 1 update Bumps the npm_and_yarn group with 1 update in the / directory: [happy-dom](https://github.com/capricorn86/happy-dom). Bumps the npm_and_yarn group with 1 update in the /packages/wallet/dapp-client directory: [happy-dom](https://github.com/capricorn86/happy-dom). Bumps the npm_and_yarn group with 1 update in the /packages/wallet/wdk directory: [happy-dom](https://github.com/capricorn86/happy-dom). Updates `happy-dom` from 17.6.3 to 20.0.2 - [Release notes](https://github.com/capricorn86/happy-dom/releases) - [Commits](https://github.com/capricorn86/happy-dom/compare/v17.6.3...v20.0.2) Updates `happy-dom` from 17.6.3 to 20.0.2 - [Release notes](https://github.com/capricorn86/happy-dom/releases) - [Commits](https://github.com/capricorn86/happy-dom/compare/v17.6.3...v20.0.2) Updates `happy-dom` from 17.6.3 to 20.0.2 - [Release notes](https://github.com/capricorn86/happy-dom/releases) - [Commits](https://github.com/capricorn86/happy-dom/compare/v17.6.3...v20.0.2) --- updated-dependencies: - dependency-name: happy-dom dependency-version: 20.0.2 dependency-type: direct:development dependency-group: npm_and_yarn - dependency-name: happy-dom dependency-version: 20.0.2 dependency-type: direct:development dependency-group: npm_and_yarn - dependency-name: happy-dom dependency-version: 20.0.2 dependency-type: direct:development dependency-group: npm_and_yarn ... Signed-off-by: dependabot[bot] * Allow to logout a wallet with skipRemoveDevice even if the wallet is not in a ready state to allow force removing of wallets (#906) * Pass request to PromptCodeHandler in guard registerUI (#909) * Pass request to PromptCodeHandler in guard registerUI * Fixing guard registerUI test * guard: allow using recovery code as 2FA token (#910) * guard: allow using recovery code as 2FA token * Cleanup types of ResponseFn --------- Co-authored-by: Corban Riley * Add a way to reset 2fa when using a backup code (#911) * Add a way to reset 2fa when using a backup code * use the GuardToken type instead of breaking out the props * Update SECURITY.md Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update packages/wallet/dapp-client/src/DappTransport.ts Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update package.json Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update SECURITY.md Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update wagmi-project/package.json Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update wagmi-project/package.json Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update wagmi-project/src/App.tsx Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Create FUNDING.json (#90) Enhancements: Include FUNDING.json to display GitHub sponsorship options in the repository Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Create config.yml (#91) Add initial CircleCI configuration to enable automated builds using a custom Docker executor and a defined workflow. Build: Add .circleci/config.yml with version 2.1 specification and custom Docker executor. CI: Define web3-defi-game-project job with checkout step. Set up my-custom-workflow to run the job. Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Add rc4 contracts * Set rc4 as default and add it to lists * Session enhanced replay protection * New sessions replay protection hashes payload * Use the 4337 factory wrapper * Update keymachine url in dapp-client constants * Update keymachine url in Provider constructor * SSR safety (#915) * SSR safety test * Fix CI job * Guard dapp-client for SSR (lazy transport, browser checks, gated storage) * Fix guard topology (#918) * Use proper guard topology * Test and fixes * login and setup tests * Switch prod manager settings (#917) * Add prod guard and identity instrument info * Remove completed TODOs * Small JS tweaks (#919) * Fix type exports to built declarations * Update repository links to current package paths * Improve Next app tooling and React typings * Expose primitives CLI bin and use base lint config * Update relayer.gen.ts and TransactionPrecondition interface * Update api.gen.ts * Update metadata.gen.ts * Update marketplace.gen.ts * Update guard.gen.ts * Support multiple identity signers in sessions configuration * Device signers can approve implicit sessions * Remove invalid test * Fix recursion * Fix comment * Improve test stability by reducing race conditions * Do not set passkey signer as identity signer * Use length checks * Throw on missing identity signer * Encoding requires identity signer to encode * Fix test * Refactor/types namings tsdoc redundant code (#880) * refactor types, namings, ts doc * fix session response payload * change parameter name * change parameter name * change type in tests * improve types and dapp client methods * fix session test to use new types * refactor * refactor implicit sessions array in chain session manager * remove unused types * remove unused types and add ConnectionError * update pnpm lock * move reusable session types to wallet-core * Update some imports and update some response type names --------- Co-authored-by: Tolgahan Arikan * Fix check for explicit session for the updated type in dapp-client * Update api.gen.ts and relayer.gen.ts * Add missing chainId for dapp client event * Fix initializing new chain session manager on redirect * Add support for non-viem, custom Sequence chains (#882) * Provider sent to prepareBlankEnvelope * Add session signature decoding * const for node length * Clearer blacklist size encoding * identity signer node length * Add feeTokens endpoint to relayer (#885) * add getFeeTokens to dapp client (#889) * add getFeeTokens to dapp client * fix typo * make getFeeTokens independent of chain session manager and initialize state (#890) * make getFeeTokens independent of chain session manager and initialized state * remove getFeeTokens from chain session manager * Throw specific error when trying to sign with an expired session (#887) * Throw when supported session signer is expired * Fix tests * Make dapp-client implicit sessions chain agnostic (#893) * Add Monad, remove LAOS and Root Network * Add support for sessionless dapp connection (#896) * Refactor relayer package & update dependant packages (#891) * refactor exports for relayer (#900) * Add Arc Testnet * Fix changelog config * Sessionless connection upgrade and error handling in DappClient (#902) * dapp-client: add sessionless snapshot restore flow * Allow to logout a wallet with skipRemoveDevice even if the wallet is not in a ready state to allow force removing of wallets (#906) * Pass request to PromptCodeHandler in guard registerUI (#909) * Pass request to PromptCodeHandler in guard registerUI * Fixing guard registerUI test * guard: allow using recovery code as 2FA token (#910) * guard: allow using recovery code as 2FA token * Cleanup types of ResponseFn --------- Co-authored-by: Corban Riley * Add a way to reset 2fa when using a backup code (#911) * Add a way to reset 2fa when using a backup code * use the GuardToken type instead of breaking out the props * Add rc4 contracts * Set rc4 as default and add it to lists * Session enhanced replay protection * New sessions replay protection hashes payload * Use the 4337 factory wrapper * Update keymachine url in dapp-client constants * Update keymachine url in Provider constructor * SSR safety (#915) * Guard dapp-client for SSR (lazy transport, browser checks, gated storage) * Fix guard topology (#918) * Use proper guard topology * Test and fixes * login and setup tests * Switch prod manager settings (#917) * Add prod guard and identity instrument info * Remove completed TODOs * Small JS tweaks (#919) * Fix type exports to built declarations * Update repository links to current package paths * Improve Next app tooling and React typings * Expose primitives CLI bin and use base lint config * Update relayer.gen.ts and TransactionPrecondition interface * Update relayer.gen.ts and TransactionPrecondition interface (#920) * 3.0.0-beta.1 * identity-instrument: generate nonce from current time (#921) * Remove publish-dists.yml github action (#923) * 3.0.0-beta.2 * Clean up changeset config * Improve test stability by removing race conditions * Ensure build before test * Updating happy-dom to 20.0.10 (#926) * Add support for custom auth providers (authcode & authcode-pkce only) (#894) * Add support for custom auth providers (authcode & authcode-pkce only) * fix authcode tests * Updating Deps November 2025 (#927) * Updating deps for the workspace root * Updating deps for wallet/wdk * Fixing sessions test for latest vitest * Lets not upgrade to the latest typescript quite yet * Updating to latest vitest * Updating deps for wallet/core * Updating deps for wallet/primitives-cli * Updating deps for wallet/dapp-client * Adding syncpack to check for dep version inconsistencies * Setup syncpack versionGroups for pnpm workspace:^ * Fixing dep versions mismatches * Fixing @types/node mismatches * Adding syncpack to pre commit hook * Remove the syncpack format script. * Update ox to v9.17.0 (#928) * Upgrading ox to 9.17.0 * WrappedSignature renamed to SignatureErc6492 * Fixing PasskeySignatureValidator interface * Lock ox lib dep to use the same version with pnpm overrides and update viem to latest * Fix explicitSessionRequested check in dapp client * Typescript 5.9.3 (#930) * Upgrading to typescript v5.9.3 * Fix type errors that arose from typescript upgrade related to Bytes and Buffer source typings. * Don't catch errors thrown by Guard 2FA or reject early to allow multiple attempts on incorrect TOTP (#931) * Update pnpm * Mark @0xsequence/wallet-primitives-cli as private * 3.0.0-beta.3 * changeset cleanup * Fix rc4 4337 factory (#933) * Add rc5 and set it as default (#934) * 3.0.0-beta.4 * Update SECURITY.md Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update wagmi-project/package.json Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update wagmi-project/package.json Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Bump next from 15.5.5 to 15.5.7 (#936) Bumps [next](https://github.com/vercel/next.js) from 15.5.5 to 15.5.7. - [Release notes](https://github.com/vercel/next.js/releases) - [Changelog](https://github.com/vercel/next.js/blob/canary/release.js) - [Commits](https://github.com/vercel/next.js/compare/v15.5.5...v15.5.7) --- updated-dependencies: - dependency-name: next dependency-version: 15.5.7 dependency-type: direct:production ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * add userdata service client (#940) * Skip LocalDevice identity signers not on current device (#942) * Skip LocalDevice identity signers not on current device * Update log * 3.0.0-beta.5 * Update config.yml (#102) * Update config.yml Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update .circleci/config.yml Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> --------- Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com> * Update config.yml (#103) * Update config.yml Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update .circleci/config.yml Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> --------- Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com> * fix: extras/web/package.json to reduce vulnerabilities (#101) The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JS-NEXT-14173355 Co-authored-by: snyk-io[bot] <141718529+snyk-io[bot]@users.noreply.github.com> * fix: extras/docs/package.json to reduce vulnerabilities (#100) The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JS-NEXT-14173355 Co-authored-by: snyk-io[bot] <141718529+snyk-io[bot]@users.noreply.github.com> * fix: package.json to reduce vulnerabilities (#104) The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JS-BABELHELPERS-9397697 - https://snyk.io/vuln/SNYK-JS-BABELRUNTIME-10044504 - https://snyk.io/vuln/SNYK-JS-BRACEEXPANSION-9789073 - https://snyk.io/vuln/SNYK-JS-CROSSSPAWN-8303230 - https://snyk.io/vuln/SNYK-JS-ELLIPTIC-7577916 - https://snyk.io/vuln/SNYK-JS-ELLIPTIC-7577917 - https://snyk.io/vuln/SNYK-JS-ELLIPTIC-7577918 - https://snyk.io/vuln/SNYK-JS-ELLIPTIC-8187303 - https://snyk.io/vuln/SNYK-JS-ELLIPTIC-8720086 - https://snyk.io/vuln/SNYK-JS-IMAGESIZE-9634164 - https://snyk.io/vuln/SNYK-JS-INFLIGHT-6095116 - https://snyk.io/vuln/SNYK-JS-JSYAML-13961110 - https://snyk.io/vuln/SNYK-JS-MICROMATCH-6838728 - https://snyk.io/vuln/SNYK-JS-NODEFORGE-14114940 - https://snyk.io/vuln/SNYK-JS-NODEFORGE-14125097 - https://snyk.io/vuln/SNYK-JS-NODEFORGE-14125745 - https://snyk.io/vuln/SNYK-JS-ONHEADERS-10773729 - https://snyk.io/vuln/SNYK-JS-ROLLUP-8073097 - https://snyk.io/vuln/SNYK-JS-SECP256K1-8237220 - https://snyk.io/vuln/SNYK-JS-SEND-7926862 - https://snyk.io/vuln/SNYK-JS-SERVESTATIC-7926865 - https://snyk.io/vuln/SNYK-JS-SHAJS-12089400 Co-authored-by: snyk-io[bot] <141718529+snyk-io[bot]@users.noreply.github.com> * Revert "Merge remote-tracking branch 'origin/dependabot/npm_and_yarn/npm_and_yarn-318c02e2da'" This reverts commit fd0fdf9ecc6ad9056447e381de7fc5bb19f78e47, reversing changes made to cba78943db9942a4635bb530b7a43fc5d18b0ab4. * fix: extras/web/package.json to reduce vulnerabilities (#109) The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JS-NEXT-14173355 Co-authored-by: snyk-bot * fix: extras/docs/package.json to reduce vulnerabilities (#106) The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JS-NEXT-14400636 - https://snyk.io/vuln/SNYK-JS-NEXT-14400644 Co-authored-by: snyk-bot * Bump next in the npm_and_yarn group across 1 directory (#110) Bumps the npm_and_yarn group with 1 update in the / directory: [next](https://github.com/vercel/next.js). Updates `next` from 15.5.7 to 15.5.9 - [Release notes](https://github.com/vercel/next.js/releases) - [Changelog](https://github.com/vercel/next.js/blob/canary/release.js) - [Commits](https://github.com/vercel/next.js/compare/v15.5.7...v15.5.9) --- updated-dependencies: - dependency-name: next dependency-version: 15.5.9 dependency-type: direct:production dependency-group: npm_and_yarn ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Delete .github/workflows/fortify.yml (#111) Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * fix: extras/web/package.json to reduce vulnerabilities (#107) The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JS-NEXT-14400636 - https://snyk.io/vuln/SNYK-JS-NEXT-14400644 Co-authored-by: snyk-bot * Bump the npm_and_yarn group across 1 directory with 3 updates (#115) Bumps the npm_and_yarn group with 1 update in the / directory: [next](https://github.com/vercel/next.js). Updates `next` from 15.5.5 to 15.5.9 - [Release notes](https://github.com/vercel/next.js/releases) - [Changelog](https://github.com/vercel/next.js/blob/canary/release.js) - [Commits](https://github.com/vercel/next.js/compare/v15.5.5...v15.5.9) Updates `happy-dom` from 17.6.3 to 20.0.11 - [Release notes](https://github.com/capricorn86/happy-dom/releases) - [Commits](https://github.com/capricorn86/happy-dom/compare/v17.6.3...v20.0.11) Updates `vite` from 7.1.10 to 7.2.7 - [Release notes](https://github.com/vitejs/vite/releases) - [Changelog](https://github.com/vitejs/vite/blob/v7.2.7/packages/vite/CHANGELOG.md) - [Commits](https://github.com/vitejs/vite/commits/v7.2.7/packages/vite) --- updated-dependencies: - dependency-name: next dependency-version: 15.5.9 dependency-type: direct:production dependency-group: npm_and_yarn - dependency-name: happy-dom dependency-version: 20.0.11 dependency-type: direct:development dependency-group: npm_and_yarn - dependency-name: vite dependency-version: 7.2.7 dependency-type: indirect dependency-group: npm_and_yarn ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Bump next from 15.5.7 to 15.5.9 (#944) Bumps [next](https://github.com/vercel/next.js) from 15.5.7 to 15.5.9. - [Release notes](https://github.com/vercel/next.js/releases) - [Changelog](https://github.com/vercel/next.js/blob/canary/release.js) - [Commits](https://github.com/vercel/next.js/compare/v15.5.7...v15.5.9) --- updated-dependencies: - dependency-name: next dependency-version: 15.5.9 dependency-type: direct:production ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Pin foundry to v1.5.0 instead of nightly (#947) * Include repo and extras in syncpack config to ensure deps are synced (#945) * Include repo and extras in syncpack config to ensure deps are synced across all * Updating support deps * Updating deps * Updating pnpm lock * Fixing type errors within wdk tests * Short circuit 404s (#949) * skip witness on signers that don't support it * add passkey to test * 3.0.0-beta.6 * Update tests.yml (#119) Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update config.yml (#120) Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update packages/services/identity-instrument/src/index.ts Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * feat: upgrade @wagmi/cli from 0.1.15 to 2.8.0 (#126) Snyk has created this PR to upgrade @wagmi/cli from 0.1.15 to 2.8.0. See this package in npm: @wagmi/cli See this project in Snyk: https://app.snyk.io/org/dargon789/project/bb845543-cbee-4e11-8cf9-8bfdf9205bf1?utm_source=github&utm_medium=referral&page=upgrade-pr Co-authored-by: snyk-bot * Potential fix for code scanning alert no. 82: Workflow does not contain permissions Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Potential fix for code scanning alert no. 62: Information exposure through a stack trace Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> --------- Signed-off-by: dependabot[bot] Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> Co-authored-by: Patryk Kalinowski Co-authored-by: Corban Riley Co-authored-by: tolgahan-arikan Co-authored-by: Agusx1211 Co-authored-by: Michael Standen Co-authored-by: William Hua Co-authored-by: Michael Standen Co-authored-by: Patryk Kalinowski Co-authored-by: Taylan Pince Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Gabi <56271768+VGabriel45@users.noreply.github.com> Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com> Co-authored-by: snyk-io[bot] <141718529+snyk-io[bot]@users.noreply.github.com> Co-authored-by: snyk-bot * Update extras/docs/package.json Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update extras/web/package.json Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> --------- Signed-off-by: dependabot[bot] Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> Co-authored-by: Patryk Kalinowski Co-authored-by: Corban Riley Co-authored-by: tolgahan-arikan Co-authored-by: Agusx1211 Co-authored-by: Michael Standen Co-authored-by: William Hua Co-authored-by: Michael Standen Co-authored-by: Patryk Kalinowski Co-authored-by: Taylan Pince Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Gabi <56271768+VGabriel45@users.noreply.github.com> Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com> Co-authored-by: snyk-io[bot] <141718529+snyk-io[bot]@users.noreply.github.com> Co-authored-by: snyk-bot * Pin foundry to v1.5.0 instead of nightly (0xsequence#947) (#134) (#135) * Pin foundry to v1.5.0 instead of nightly (0xsequence#947) (#134) * Bump next from 15.5.7 to 15.5.9 (#944) Bumps [next](https://github.com/vercel/next.js) from 15.5.7 to 15.5.9. - [Release notes](https://github.com/vercel/next.js/releases) - [Changelog](https://github.com/vercel/next.js/blob/canary/release.js) - [Commits](https://github.com/vercel/next.js/compare/v15.5.7...v15.5.9) --- updated-dependencies: - dependency-name: next dependency-version: 15.5.9 dependency-type: direct:production ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Pin foundry to v1.5.0 instead of nightly (#947) * Include repo and extras in syncpack config to ensure deps are synced (#945) * Include repo and extras in syncpack config to ensure deps are synced across all * Updating support deps * Updating deps * Updating pnpm lock * Fixing type errors within wdk tests * Short circuit 404s (#949) * skip witness on signers that don't support it * add passkey to test * 3.0.0-beta.6 --------- Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Taylan Pince Co-authored-by: Corban Riley Co-authored-by: Agusx1211 * Update packages/wallet/wdk/test/wallets.test.ts Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update packages/wallet/wdk/test/wallets.test.ts Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> --------- Signed-off-by: dependabot[bot] Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Taylan Pince Co-authored-by: Corban Riley Co-authored-by: Agusx1211 Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> * feat: upgrade react from 18.3.1 to 19.2.0 (#121) Snyk has created this PR to upgrade react from 18.3.1 to 19.2.0. See this package in npm: react See this project in Snyk: https://app.snyk.io/org/dargon789/project/bb845543-cbee-4e11-8cf9-8bfdf9205bf1?utm_source=github&utm_medium=referral&page=upgrade-pr Co-authored-by: snyk-bot * fix: extras/web/package.json to reduce vulnerabilities (#117) The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JS-NEXT-14400636 - https://snyk.io/vuln/SNYK-JS-NEXT-14400644 Co-authored-by: snyk-io[bot] <141718529+snyk-io[bot]@users.noreply.github.com> Co-authored-by: dargon789 <64915515+Dargon789@users.noreply.github.com> * Initial project structure and core packages Add initial monorepo structure for wagmi-project, including CLI, connectors, and core packages with source code, tests, configuration, and CI/CD workflows. This sets up the foundation for further development and collaboration. * sequence-core-1.0.0 * Revise README structure and add sponsorship details (#146) * Revise README structure and add sponsorship details Updated README to include new sections and sponsorship information. https://sequence.xyz/ Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update README.md Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update README.md Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update README.md Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> --------- Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> * Update GitHub Actions workflow for tests (#149) Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Bump the npm_and_yarn group across 4 directories with 7 updates (#144) Bumps the npm_and_yarn group with 4 updates in the /wagmi-project directory: [next](https://github.com/vercel/next.js), [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite), [@metamask/sdk](https://github.com/MetaMask/metamask-sdk/tree/HEAD/packages/sdk) and [nuxt](https://github.com/nuxt/nuxt/tree/HEAD/packages/nuxt). Bumps the npm_and_yarn group with 1 update in the /wagmi-project/packages/connectors directory: [@metamask/sdk](https://github.com/MetaMask/metamask-sdk/tree/HEAD/packages/sdk). Bumps the npm_and_yarn group with 1 update in the /wagmi-project/packages/create-wagmi/templates/next directory: [next](https://github.com/vercel/next.js). Bumps the npm_and_yarn group with 1 update in the /wagmi-project/playgrounds/next directory: [next](https://github.com/vercel/next.js). Updates `next` from 15.3.3 to 15.4.10 - [Release notes](https://github.com/vercel/next.js/releases) - [Changelog](https://github.com/vercel/next.js/blob/canary/release.js) - [Commits](https://github.com/vercel/next.js/compare/v15.3.3...v15.4.10) Updates `happy-dom` from 15.10.2 to 18.0.1 - [Release notes](https://github.com/capricorn86/happy-dom/releases) - [Commits](https://github.com/capricorn86/happy-dom/compare/v15.10.2...v18.0.1) Updates `vite` from 5.4.19 to 5.4.21 - [Release notes](https://github.com/vitejs/vite/releases) - [Changelog](https://github.com/vitejs/vite/blob/v5.4.21/packages/vite/CHANGELOG.md) - [Commits](https://github.com/vitejs/vite/commits/v5.4.21/packages/vite) Updates `@metamask/sdk` from 0.32.1 to 0.33.1 - [Release notes](https://github.com/MetaMask/metamask-sdk/releases) - [Changelog](https://github.com/MetaMask/metamask-sdk/blob/main/packages/sdk/CHANGELOG.md) - [Commits](https://github.com/MetaMask/metamask-sdk/commits/@metamask/sdk@0.33.1/packages/sdk) Updates `nuxt` from 3.16.0 to 3.19.0 - [Release notes](https://github.com/nuxt/nuxt/releases) - [Commits](https://github.com/nuxt/nuxt/commits/v3.19.0/packages/nuxt) Updates `@nuxt/devtools` from 2.4.1 to 2.7.0 - [Release notes](https://github.com/nuxt/devtools/releases) - [Changelog](https://github.com/nuxt/devtools/blob/main/CHANGELOG.md) - [Commits](https://github.com/nuxt/devtools/commits/v2.7.0/packages/devtools) Updates `devalue` from 5.1.1 to 5.6.1 - [Release notes](https://github.com/sveltejs/devalue/releases) - [Changelog](https://github.com/sveltejs/devalue/blob/main/CHANGELOG.md) - [Commits](https://github.com/sveltejs/devalue/compare/v5.1.1...v5.6.1) Updates `@metamask/sdk` from 0.32.1 to 0.33.1 - [Release notes](https://github.com/MetaMask/metamask-sdk/releases) - [Changelog](https://github.com/MetaMask/metamask-sdk/blob/main/packages/sdk/CHANGELOG.md) - [Commits](https://github.com/MetaMask/metamask-sdk/commits/@metamask/sdk@0.33.1/packages/sdk) Updates `next` from 15.2.4 to 15.4.10 - [Release notes](https://github.com/vercel/next.js/releases) - [Changelog](https://github.com/vercel/next.js/blob/canary/release.js) - [Commits](https://github.com/vercel/next.js/compare/v15.3.3...v15.4.10) Updates `next` from 15.3.3 to 15.4.10 - [Release notes](https://github.com/vercel/next.js/releases) - [Changelog](https://github.com/vercel/next.js/blob/canary/release.js) - [Commits](https://github.com/vercel/next.js/compare/v15.3.3...v15.4.10) --- updated-dependencies: - dependency-name: next dependency-version: 15.4.10 dependency-type: direct:production dependency-group: npm_and_yarn - dependency-name: happy-dom dependency-version: 18.0.1 dependency-type: direct:development dependency-group: npm_and_yarn - dependency-name: vite dependency-version: 5.4.21 dependency-type: direct:development dependency-group: npm_and_yarn - dependency-name: "@metamask/sdk" dependency-version: 0.33.1 dependency-type: direct:production dependency-group: npm_and_yarn - dependency-name: nuxt dependency-version: 3.19.0 dependency-type: direct:production dependency-group: npm_and_yarn - dependency-name: "@nuxt/devtools" dependency-version: 2.7.0 dependency-type: indirect dependency-group: npm_and_yarn - dependency-name: devalue dependency-version: 5.6.1 dependency-type: indirect dependency-group: npm_and_yarn - dependency-name: "@metamask/sdk" dependency-version: 0.33.1 dependency-type: direct:production dependency-group: npm_and_yarn - dependency-name: next dependency-version: 15.4.10 dependency-type: direct:production dependency-group: npm_and_yarn - dependency-name: next dependency-version: 15.4.10 dependency-type: direct:production dependency-group: npm_and_yarn ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Fix Docker Hub credentials comment in config.yml (#148) Updated CircleCI config to reflect correct environment variable settings. Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Add workflow to publish package distributions (#152) * Add workflow to publish package distributions Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Potential fix for code scanning alert no. 107: Workflow does not contain permissions Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update .github/workflows/Publish-Dists.yml Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update .github/workflows/Publish-Dists.yml Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> --------- Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com> * Remove permissions from pnpm-format-label workflow (#151) Removed permissions section from the workflow. Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Bump happy-dom (#150) Bumps the npm_and_yarn group with 1 update in the /wagmi-project directory: [happy-dom](https://github.com/capricorn86/happy-dom). Updates `happy-dom` from 18.0.1 to 20.0.2 - [Release notes](https://github.com/capricorn86/happy-dom/releases) - [Commits](https://github.com/capricorn86/happy-dom/compare/v18.0.1...v20.0.2) --- updated-dependencies: - dependency-name: happy-dom dependency-version: 20.0.2 dependency-type: direct:development dependency-group: npm_and_yarn ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Update Anvil fork URL for testing workflow (#154) Build: Switch the Anvil fork URL in the GitHub Actions test workflow to a new mainnet RPC endpoint. Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * fix: package.json to reduce vulnerabilities (#157) The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JS-BABELHELPERS-9397697 - https://snyk.io/vuln/SNYK-JS-BABELRUNTIME-10044504 - https://snyk.io/vuln/SNYK-JS-BRACEEXPANSION-9789073 - https://snyk.io/vuln/SNYK-JS-ELLIPTIC-8187303 - https://snyk.io/vuln/SNYK-JS-IMAGESIZE-9634164 - https://snyk.io/vuln/SNYK-JS-INFLIGHT-6095116 - https://snyk.io/vuln/SNYK-JS-JSYAML-13961110 - https://snyk.io/vuln/SNYK-JS-NODEFORGE-14114940 - https://snyk.io/vuln/SNYK-JS-NODEFORGE-14125097 - https://snyk.io/vuln/SNYK-JS-NODEFORGE-14125745 - https://snyk.io/vuln/SNYK-JS-SHAJS-12089400 - https://snyk.io/vuln/SNYK-JS-TMP-11501554 Co-authored-by: snyk-bot * Proto (#163) * [AUTOMATED] Update: proto/clients/indexer*.gen.ts * [AUTOMATED] Update: proto/clients/indexer*.gen.ts * [AUTOMATED] Update: proto/clients/indexer*.gen.ts * [AUTOMATED] Update: proto/clients/indexer*.gen.ts * [AUTOMATED] Update: proto/clients/indexer*.gen.ts * [AUTOMATED] Update: proto/clients/indexer*.gen.ts * [AUTOMATED] Update: proto/clients/indexer*.gen.ts * [AUTOMATED] Update: proto/clients/indexer*.gen.ts --------- Co-authored-by: marino39 <722509+marino39@users.noreply.github.com> Co-authored-by: pkieltyka <18831+pkieltyka@users.noreply.github.com> Co-authored-by: xiam <385670+xiam@users.noreply.github.com> * Update CNAME to new domain (#164) sequence.app Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Bump the npm_and_yarn group across 2 directories with 4 updates (#161) Bumps the npm_and_yarn group with 1 update in the / directory: [webpack-dev-server](https://github.com/webpack/webpack-dev-server). Bumps the npm_and_yarn group with 1 update in the /packages/0xsequence directory: [webpack-dev-server](https://github.com/webpack/webpack-dev-server). Updates `webpack-dev-server` from 3.11.3 to 5.2.1 - [Release notes](https://github.com/webpack/webpack-dev-server/releases) - [Changelog](https://github.com/webpack/webpack-dev-server/blob/main/CHANGELOG.md) - [Commits](https://github.com/webpack/webpack-dev-server/compare/v3.11.3...v5.2.1) Updates `http-proxy-middleware` from 0.19.1 to 2.0.9 - [Release notes](https://github.com/chimurai/http-proxy-middleware/releases) - [Changelog](https://github.com/chimurai/http-proxy-middleware/blob/v2.0.9/CHANGELOG.md) - [Commits](https://github.com/chimurai/http-proxy-middleware/compare/v0.19.1...v2.0.9) Updates `micromatch` from 3.1.10 to 4.0.8 - [Release notes](https://github.com/micromatch/micromatch/releases) - [Changelog](https://github.com/micromatch/micromatch/blob/master/CHANGELOG.md) - [Commits](https://github.com/micromatch/micromatch/compare/3.1.10...4.0.8) Updates `on-headers` from 1.0.2 to 1.1.0 - [Release notes](https://github.com/jshttp/on-headers/releases) - [Changelog](https://github.com/jshttp/on-headers/blob/master/HISTORY.md) - [Commits](https://github.com/jshttp/on-headers/compare/v1.0.2...v1.1.0) Updates `webpack-dev-server` from 3.11.3 to 5.2.1 - [Release notes](https://github.com/webpack/webpack-dev-server/releases) - [Changelog](https://github.com/webpack/webpack-dev-server/blob/main/CHANGELOG.md) - [Commits](https://github.com/webpack/webpack-dev-server/compare/v3.11.3...v5.2.1) Updates `http-proxy-middleware` from 0.19.1 to 2.0.9 - [Release notes](https://github.com/chimurai/http-proxy-middleware/releases) - [Changelog](https://github.com/chimurai/http-proxy-middleware/blob/v2.0.9/CHANGELOG.md) - [Commits](https://github.com/chimurai/http-proxy-middleware/compare/v0.19.1...v2.0.9) Updates `micromatch` from 3.1.10 to 4.0.8 - [Release notes](https://github.com/micromatch/micromatch/releases) - [Changelog](https://github.com/micromatch/micromatch/blob/master/CHANGELOG.md) - [Commits](https://github.com/micromatch/micromatch/compare/3.1.10...4.0.8) Updates `on-headers` from 1.0.2 to 1.1.0 - [Release notes](https://github.com/jshttp/on-headers/releases) - [Changelog](https://github.com/jshttp/on-headers/blob/master/HISTORY.md) - [Commits](https://github.com/jshttp/on-headers/compare/v1.0.2...v1.1.0) Updates `webpack-dev-server` from 3.11.3 to 5.2.1 - [Release notes](https://github.com/webpack/webpack-dev-server/releases) - [Changelog](https://github.com/webpack/webpack-dev-server/blob/main/CHANGELOG.md) - [Commits](https://github.com/webpack/webpack-dev-server/compare/v3.11.3...v5.2.1) --- updated-dependencies: - dependency-name: webpack-dev-server dependency-version: 5.2.1 dependency-type: direct:development dependency-group: npm_and_yarn - dependency-name: http-proxy-middleware dependency-version: 2.0.9 dependency-type: indirect dependency-group: npm_and_yarn - dependency-name: micromatch dependency-version: 4.0.8 dependency-type: indirect dependency-group: npm_and_yarn - dependency-name: on-headers dependency-version: 1.1.0 dependency-type: indirect dependency-group: npm_and_yarn - dependency-name: webpack-dev-server dependency-version: 5.2.1 dependency-type: direct:development dependency-group: npm_and_yarn - dependency-name: http-proxy-middleware dependency-version: 2.0.9 dependency-type: indirect dependency-group: npm_and_yarn - dependency-name: micromatch dependency-version: 4.0.8 dependency-type: indirect dependency-group: npm_and_yarn - dependency-name: on-headers dependency-version: 1.1.0 dependency-type: indirect dependency-group: npm_and_yarn - dependency-name: webpack-dev-server dependency-version: 5.2.1 dependency-type: direct:development dependency-group: npm_and_yarn ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Bump happy-dom in the npm_and_yarn group across 1 directory (#167) Bumps the npm_and_yarn group with 1 update in the /wagmi-project directory: [happy-dom](https://github.com/capricorn86/happy-dom). Updates `happy-dom` from 18.0.1 to 20.0.2 - [Release notes](https://github.com/capricorn86/happy-dom/releases) - [Commits](https://github.com/capricorn86/happy-dom/compare/v18.0.1...v20.0.2) --- updated-dependencies: - dependency-name: happy-dom dependency-version: 20.0.2 dependency-type: direct:development dependency-group: npm_and_yarn ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Potential fix for code scanning alert no. 94: Insecure randomness Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Potential fix for code scanning alert no. 95: Information exposure through a stack trace Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Revise security policy for reporting vulnerabilities (#173) * Revise security policy for reporting vulnerabilities Updated contact information for vulnerability reporting. https://github.com/Dargon789/sequence.js/commit/e90b2e6395fb14c6463a02e88f65dc23ce455d6d Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update SECURITY.md Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> --------- Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> * V2 (#174) * Updating DefaultGuest address * Update tests.yml (#51) Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> * Update tests.yml (#52) Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> * Update tests.yml Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> * Update tests.yml (#55) Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> * Update tests.yml (#56) Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> * Update tests.yml Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> --------- Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> Co-authored-by: Corban Riley * Create web-sdk.yml (#175) https://github.com/Dargon789/Web3-Onboard/commit/fb66abf9ef6c55706a1dab2198db715f2588f1d1 https://github.com/Dargon789/web-sdk/commit/d26f62241ed85e6108a481f7a74ba7573c6c4c95 Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * sequence-core-dapp-1.0.0 * Create nextjs.yml (#176) CI: Introduce a Next.js GitHub Actions workflow that detects the package manager, builds the app, caches Next.js artifacts, and deploys the static output to GitHub Pages. Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * 0xsequence-1.9.19 # 0xsequence-#1.9.19 * Update config.json (#185) Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Potential fix for code scanning alert no. 108: Incomplete regular expression for hostnames (#186) * Potential fix for code scanning alert no. 108: Incomplete regular expression for hostnames Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/certora/run.js Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> --------- Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> * 0xsequence 1.9.19 (#179) * 1.9.17 * Update packages/0xsequence/CHANGELOG.md Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update packages/account/CHANGELOG.md Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update packages/auth/CHANGELOG.md Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update packages/multicall/CHANGELOG.md Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update packages/provider/CHANGELOG.md Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update packages/wallet/CHANGELOG.md Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * 1.9.19 * Update packages/waas/src/networks.ts Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Squashed commit of the following: commit dafd2eda59d728355ab9028d03b0e10b014f2818 Author: Dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Wed Jan 7 06:30:16 2026 +0700 Create nextjs.yml (#176) CI: Introduce a Next.js GitHub Actions workflow that detects the package manager, builds the app, caches Next.js artifacts, and deploys the static output to GitHub Pages. Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> commit e6efe1f5b8e19fcd47714aa1417a9a01a16343a9 Author: dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Wed Jan 7 06:06:13 2026 +0700 sequence-core-dapp-1.0.0 commit cd4a860bbe5d27a96fd2a091cb6d074ff1c92331 Author: Dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Tue Jan 6 01:37:52 2026 +0700 Create web-sdk.yml (#175) https://github.com/Dargon789/Web3-Onboard/commit/fb66abf9ef6c55706a1dab2198db715f2588f1d1 https://github.com/Dargon789/web-sdk/commit/d26f62241ed85e6108a481f7a74ba7573c6c4c95 Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> commit f2fd08bd5c463fc1c154c0fb26d8286bfcde01fa Author: Dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Wed Dec 31 01:11:33 2025 +0700 V2 (#174) * Updating DefaultGuest address * Update tests.yml (#51) Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> * Update tests.yml (#52) Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> * Update tests.yml Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> * Update tests.yml (#55) Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> * Update tests.yml (#56) Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> * Update tests.yml Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> --------- Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> Co-authored-by: Corban Riley commit e7b277e79c7fe27c3cb129627d9f70e5bea9a25c Author: Dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Wed Dec 31 00:17:52 2025 +0700 Revise security policy for reporting vulnerabilities (#173) * Revise security policy for reporting vulnerabilities Updated contact information for vulnerability reporting. https://github.com/Dargon789/sequence.js/commit/e90b2e6395fb14c6463a02e88f65dc23ce455d6d Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update SECURITY.md Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> --------- Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> commit 70208b1b85034bada6c5f8f858cc11bfd1a11241 Author: Dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Tue Dec 30 21:50:23 2025 +0700 Potential fix for code scanning alert no. 95: Information exposure through a stack trace Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> commit 4c696d0e57d8ec45057b111bfb551ab497d0f93a Author: Dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Tue Dec 30 21:47:34 2025 +0700 Potential fix for code scanning alert no. 94: Insecure randomness Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> commit c62e5ddc2818a6b0624d63be3089c5ad7d08bd72 Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue Dec 30 21:42:22 2025 +0700 Bump happy-dom in the npm_and_yarn group across 1 directory (#167) Bumps the npm_and_yarn group with 1 update in the /wagmi-project directory: [happy-dom](https://github.com/capricorn86/happy-dom). Updates `happy-dom` from 18.0.1 to 20.0.2 - [Release notes](https://github.com/capricorn86/happy-dom/releases) - [Commits](https://github.com/capricorn86/happy-dom/compare/v18.0.1...v20.0.2) --- updated-dependencies: - dependency-name: happy-dom dependency-version: 20.0.2 dependency-type: direct:development dependency-group: npm_and_yarn ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> commit e13fe5a71769b6d325b9cc3185c4a0519205f7b1 Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue Dec 30 21:19:24 2025 +0700 Bump the npm_and_yarn group across 2 directories with 4 updates (#161) Bumps the npm_and_yarn group with 1 update in the / directory: [webpack-dev-server](https://github.com/webpack/webpack-dev-server). Bumps the npm_and_yarn group with 1 update in the /packages/0xsequence directory: [webpack-dev-server](https://github.com/webpack/webpack-dev-server). Updates `webpack-dev-server` from 3.11.3 to 5.2.1 - [Release notes](https://github.com/webpack/webpack-dev-server/releases) - [Changelog](https://github.com/webpack/webpack-dev-server/blob/main/CHANGELOG.md) - [Commits](https://github.com/webpack/webpack-dev-server/compare/v3.11.3...v5.2.1) Updates `http-proxy-middleware` from 0.19.1 to 2.0.9 - [Release notes](https://github.com/chimurai/http-proxy-middleware/releases) - [Changelog](https://github.com/chimurai/http-proxy-middleware/blob/v2.0.9/CHANGELOG.md) - [Commits](https://github.com/chimurai/http-proxy-middleware/compare/v0.19.1...v2.0.9) Updates `micromatch` from 3.1.10 to 4.0.8 - [Release notes](https://github.com/micromatch/micromatch/releases) - [Changelog](https://github.com/micromatch/micromatch/blob/master/CHANGELOG.md) - [Commits](https://github.com/micromatch/micromatch/compare/3.1.10...4.0.8) Updates `on-headers` from 1.0.2 to 1.1.0 - [Release notes](https://github.com/jshttp/on-headers/releases) - [Changelog](https://github.com/jshttp/on-headers/blob/master/HISTORY.md) - [Commits](https://github.com/jshttp/on-headers/compare/v1.0.2...v1.1.0) Updates `webpack-dev-server` from 3.11.3 to 5.2.1 - [Release notes](https://github.com/webpack/webpack-dev-server/releases) - [Changelog](https://github.com/webpack/webpack-dev-server/blob/main/CHANGELOG.md) - [Commits](https://github.com/webpack/webpack-dev-server/compare/v3.11.3...v5.2.1) Updates `http-proxy-middleware` from 0.19.1 to 2.0.9 - [Release notes](https://github.com/chimurai/http-proxy-middleware/releases) - [Changelog](https://github.com/chimurai/http-proxy-middleware/blob/v2.0.9/CHANGELOG.md) - [Commits](https://github.com/chimurai/http-proxy-middleware/compare/v0.19.1...v2.0.9) Updates `micromatch` from 3.1.10 to 4.0.8 - [Release notes](https://github.com/micromatch/micromatch/releases) - [Changelog](https://github.com/micromatch/micromatch/blob/master/CHANGELOG.md) - [Commits](https://github.com/micromatch/micromatch/compare/3.1.10...4.0.8) Updates `on-headers` from 1.0.2 to 1.1.0 - [Release notes](https://github.com/jshttp/on-headers/releases) - [Changelog](https://github.com/jshttp/on-headers/blob/master/HISTORY.md) - [Commits](https://github.com/jshttp/on-headers/compare/v1.0.2...v1.1.0) Updates `webpack-dev-server` from 3.11.3 to 5.2.1 - [Release notes](https://github.com/webpack/webpack-dev-server/releases) - [Changelog](https://github.com/webpack/webpack-dev-server/blob/main/CHANGELOG.md) - [Commits](https://github.com/webpack/webpack-dev-server/compare/v3.11.3...v5.2.1) --- updated-dependencies: - dependency-name: webpack-dev-server dependency-version: 5.2.1 dependency-type: direct:development dependency-group: npm_and_yarn - dependency-name: http-proxy-middleware dependency-version: 2.0.9 dependency-type: indirect dependency-group: npm_and_yarn - dependency-name: micromatch dependency-version: 4.0.8 dependency-type: indirect dependency-group: npm_and_yarn - dependency-name: on-headers dependency-version: 1.1.0 dependency-type: indirect dependency-group: npm_and_yarn - dependency-name: webpack-dev-server dependency-version: 5.2.1 dependency-type: direct:development dependency-group: npm_and_yarn - dependency-name: http-proxy-middleware dependency-version: 2.0.9 dependency-type: indirect dependency-group: npm_and_yarn - dependency-name: micromatch dependency-version: 4.0.8 dependency-type: indirect dependency-group: npm_and_yarn - dependency-name: on-headers dependency-version: 1.1.0 dependency-type: indirect dependency-group: npm_and_yarn - dependency-name: webpack-dev-server dependency-version: 5.2.1 dependency-type: direct:development dependency-group: npm_and_yarn ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> commit b9d25688cb184f4b5ec1d0aba07bd36351efc65b Author: Dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Mon Dec 29 15:35:25 2025 +0700 Update CNAME to new domain (#164) sequence.app Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> commit 4a81a2c4338191c93915c3101f3c24f0c468ae03 Author: Dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Mon Dec 29 14:08:44 2025 +0700 Proto (#163) * [AUTOMATED] Update: proto/clients/indexer*.gen.ts * [AUTOMATED] Update: proto/clients/indexer*.gen.ts * [AUTOMATED] Update: proto/clients/indexer*.gen.ts * [AUTOMATED] Update: proto/clients/indexer*.gen.ts * [AUTOMATED] Update: proto/clients/indexer*.gen.ts * [AUTOMATED] Update: proto/clients/indexer*.gen.ts * [AUTOMATED] Update: proto/clients/indexer*.gen.ts * [AUTOMATED] Update: proto/clients/indexer*.gen.ts --------- Co-authored-by: marino39 <722509+marino39@users.noreply.github.com> Co-authored-by: pkieltyka <18831+pkieltyka@users.noreply.github.com> Co-authored-by: xiam <385670+xiam@users.noreply.github.com> commit c4d0fdc33cd1ccf9cfc996b351959ae4d004a7e6 Merge: 7c547fcdd 269972a1d Author: dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Mon Dec 29 13:38:33 2025 +0700 Merge branch 'master' of https://github.com/Dargon789/sequence.js commit 269972a1dad423f67c0262149e46e7d8b3c3b10d Author: Dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Mon Dec 29 09:58:04 2025 +0700 fix: package.json to reduce vulnerabilities (#157) The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JS-BABELHELPERS-9397697 - https://snyk.io/vuln/SNYK-JS-BABELRUNTIME-10044504 - https://snyk.io/vuln/SNYK-JS-BRACEEXPANSION-9789073 - https://snyk.io/vuln/SNYK-JS-ELLIPTIC-8187303 - https://snyk.io/vuln/SNYK-JS-IMAGESIZE-9634164 - https://snyk.io/vuln/SNYK-JS-INFLIGHT-6095116 - https://snyk.io/vuln/SNYK-JS-JSYAML-13961110 - https://snyk.io/vuln/SNYK-JS-NODEFORGE-14114940 - https://snyk.io/vuln/SNYK-JS-NODEFORGE-14125097 - https://snyk.io/vuln/SNYK-JS-NODEFORGE-14125745 - https://snyk.io/vuln/SNYK-JS-SHAJS-12089400 - https://snyk.io/vuln/SNYK-JS-TMP-11501554 Co-authored-by: snyk-bot commit 7c547fcdd75774e39120241d16bf64c86e243355 Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Date: Sat Dec 27 02:34:25 2025 +0700 Bump the npm_and_yarn group across 4 directories with 7 updates (#144) Bumps the npm_and_yarn group with 4 updates in the /wagmi-project directory: [next](https://github.com/vercel/next.js), [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite), [@metamask/sdk](https://github.com/MetaMask/metamask-sdk/tree/HEAD/packages/sdk) and [nuxt](https://github.com/nuxt/nuxt/tree/HEAD/packages/nuxt). Bumps the npm_and_yarn group with 1 update in the /wagmi-project/packages/connectors directory: [@metamask/sdk](https://github.com/MetaMask/metamask-sdk/tree/HEAD/packages/sdk). Bumps the npm_and_yarn group with 1 update in the /wagmi-project/packages/create-wagmi/templates/next directory: [next](https://github.com/vercel/next.js). Bumps the npm_and_yarn group with 1 update in the /wagmi-project/playgrounds/next directory: [next](https://github.com/vercel/next.js). Updates `next` from 15.3.3 to 15.4.10 - [Release notes](https://github.com/vercel/next.js/releases) - [Changelog](https://github.com/vercel/next.js/blob/canary/release.js) - [Commits](https://github.com/vercel/next.js/compare/v15.3.3...v15.4.10) Updates `happy-dom` from 15.10.2 to 18.0.1 - [Release notes](https://github.com/capricorn86/happy-dom/releases) - [Commits](https://github.com/capricorn86/happy-dom/compare/v15.10.2...v18.0.1) Updates `vite` from 5.4.19 to 5.4.21 - [Release notes](https://github.com/vitejs/vite/releases) - [Changelog](https://github.com/vitejs/vite/blob/v5.4.21/packages/vite/CHANGELOG.md) - [Commits](https://github.com/vitejs/vite/commits/v5.4.21/packages/vite) Updates `@metamask/sdk` from 0.32.1 to 0.33.1 - [Release notes](https://github.com/MetaMask/metamask-sdk/releases) - [Changelog](https://github.com/MetaMask/metamask-sdk/blob/main/packages/sdk/CHANGELOG.md) - [Commits](https://github.com/MetaMask/metamask-sdk/commits/@metamask/sdk@0.33.1/packages/sdk) Updates `nuxt` from 3.16.0 to 3.19.0 - [Release notes](https://github.com/nuxt/nuxt/releases) - [Commits](https://github.com/nuxt/nuxt/commits/v3.19.0/packages/nuxt) Updates `@nuxt/devtools` from 2.4.1 to 2.7.0 - [Release notes](https://github.com/nuxt/devtools/releases) - [Changelog](https://github.com/nuxt/devtools/blob/main/CHANGELOG.md) - [Commits](https://github.com/nuxt/devtools/commits/v2.7.0/packages/devtools) Updates `devalue` from 5.1.1 to 5.6.1 - [Release notes](https://github.com/sveltejs/devalue/releases) - [Changelog](https://github.com/sveltejs/devalue/blob/main/CHANGELOG.md) - [Commits](https://github.com/sveltejs/devalue/compare/v5.1.1...v5.6.1) Updates `@metamask/sdk` from 0.32.1 to 0.33.1 - [Release notes](https://github.com/MetaMask/metamask-sdk/releases) - [Changelog](https://github.com/MetaMask/metamask-sdk/blob/main/packages/sdk/CHANGELOG.md) - [Commits](https://github.com/MetaMask/metamask-sdk/commits/@metamask/sdk@0.33.1/packages/sdk) Updates `next` from 15.2.4 to 15.4.10 - [Release notes](https://github.com/vercel/next.js/releases) - [Changelog](https://github.com/vercel/next.js/blob/canary/release.js) - [Commits](https://github.com/vercel/next.js/compare/v15.3.3...v15.4.10) Updates `next` from 15.3.3 to 15.4.10 - [Release notes](https://github.com/vercel/next.js/releases) - [Changelog](https://github.com/vercel/next.js/blob/canary/release.js) - [Commits](https://github.com/vercel/next.js/compare/v15.3.3...v15.4.10) --- updated-dependencies: - dependency-name: next dependency-version: 15.4.10 dependency-type: direct:production dependency-group: npm_and_yarn - dependency-name: happy-dom dependency-version: 18.0.1 dependency-type: direct:development dependency-group: npm_and_yarn - dependency-name: vite dependency-version: 5.4.21 dependency-type: direct:development dependency-group: npm_and_yarn - dependency-name: "@metamask/sdk" dependency-version: 0.33.1 dependency-type: direct:production dependency-group: npm_and_yarn - dependency-name: nuxt dependency-version: 3.19.0 dependency-type: direct:production dependency-group: npm_and_yarn - dependency-name: "@nuxt/devtools" dependency-version: 2.7.0 dependency-type: indirect dependency-group: npm_and_yarn - dependency-name: devalue dependency-version: 5.6.1 dependency-type: indirect dependency-group: npm_and_yarn - dependency-name: "@metamask/sdk" dependency-version: 0.33.1 dependency-type: direct:production dependency-group: npm_and_yarn - dependency-name: next dependency-version: 15.4.10 dependency-type: direct:production dependency-group: npm_and_yarn - dependency-name: next dependency-version: 15.4.10 dependency-type: direct:production dependency-group: npm_and_yarn ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> commit 977998758f93df492849cb55e7208864677515ef Author: Dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Sat Dec 27 02:10:27 2025 +0700 Update GitHub Actions workflow for tests (#149) Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> commit 9c420a789831c3affe0881d732bb95bd2bb075db Author: Dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Fri Dec 26 04:55:34 2025 +0700 Revise README structure and add sponsorship details (#146) * Revise README structure and add sponsorship details Updated README to include new sections and sponsorship information. https://sequence.xyz/ Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update README.md Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update README.md Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update README.md Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> --------- Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> commit 224f7612cd574849b75e17056859f0a208a24aa1 Author: dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Fri Dec 26 03:19:19 2025 +0700 sequence-core-1.0.0 commit e90b2e6395fb14c6463a02e88f65dc23ce455d6d Author: dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Thu Dec 25 14:15:53 2025 +0700 Initial project structure and core packages Add initial monorepo structure for wagmi-project, including CLI, connectors, and core packages with source code, tests, configuration, and CI/CD workflows. This sets up the foundation for further development and collaboration. commit 1f452493d6ac5f23e20def94b7edf207bc2ce40a Author: snyk-io[bot] <141718529+snyk-io[bot]@users.noreply.github.com> Date: Wed Dec 24 21:11:40 2025 +0700 fix: extras/web/package.json to reduce vulnerabilities (#117) The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JS-NEXT-14400636 - https://snyk.io/vuln/SNYK-JS-NEXT-14400644 Co-authored-by: snyk-io[bot] <141718529+snyk-io[bot]@users.noreply.github.com> Co-authored-by: dargon789 <64915515+Dargon789@users.noreply.github.com> commit 8bad845d94b7ca97a1d01a255eb8b41357eaf38d Author: Dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Wed Dec 24 19:35:49 2025 +0700 feat: upgrade react from 18.3.1 to 19.2.0 (#121) Snyk has created this PR to upgrade react from 18.3.1 to 19.2.0. See this package in npm: react See this project in Snyk: https://app.snyk.io/org/dargon789/project/bb845543-cbee-4e11-8cf9-8bfdf9205bf1?utm_source=github&utm_medium=referral&page=upgrade-pr Co-authored-by: snyk-bot commit 5e6dca3ce44d2e8d5b00b1182ba9d6eae7855b23 Author: Dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Tue Dec 23 21:23:47 2025 +0700 Pin foundry to v1.5.0 instead of nightly (0xsequence#947) (#134) (#135) * Pin foundry to v1.5.0 instead of nightly (0xsequence#947) (#134) * Bump next from 15.5.7 to 15.5.9 (#944) Bumps [next](https://github.com/vercel/next.js) from 15.5.7 to 15.5.9. - [Release notes](https://github.com/vercel/next.js/releases) - [Changelog](https://github.com/vercel/next.js/blob/canary/release.js) - [Commits](https://github.com/vercel/next.js/compare/v15.5.7...v15.5.9) --- updated-dependencies: - dependency-name: next dependency-version: 15.5.9 dependency-type: direct:production ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Pin foundry to v1.5.0 instead of nightly (#947) * Include repo and extras in syncpack config to ensure deps are synced (#945) * Include repo and extras in syncpack config to ensure deps are synced across all * Updating support deps * Updating deps * Updating pnpm lock * Fixing type errors within wdk tests * Short circuit 404s (#949) * skip witness on signers that don't support it * add passkey to test * 3.0.0-beta.6 --------- Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Taylan Pince Co-authored-by: Corban Riley Co-authored-by: Agusx1211 * Update packages/wallet/wdk/test/wallets.test.ts Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update packages/wallet/wdk/test/wallets.test.ts Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> --------- Signed-off-by: dependabot[bot] Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Taylan Pince Co-authored-by: Corban Riley Co-authored-by: Agusx1211 Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> commit 802829cc116d9656dfb166beba03a1e77c8d556b Author: Dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Tue Dec 23 21:15:56 2025 +0700 2.3.7 (#131) (#132) * 2.3.7 (#131) * fix broken guard private key * Expose access to passkey credential list * Dapp client direct txn request (#856) * Signature request refactor * WIP * Refactor * Update dapp-client exports (#858) * Add hasPermission method to DappClient (#859) * Save discovered passkey credentials upon login * Expose name property in PasskeySignupArgs * Fix blacklist sort * Add multi server script * relayer: /SimulateV3 (#857) * Add await for handleOpenDB scheduleExpiration * Update increment to always include native once used * Fix session tests * Adding lastLoginAt to PasskeyCredential * LoginToPasskeyArgs now accept a credentialId which is used to specify which credential to use * Adding onSignatureRequestStatus function to register single use callbacks for when a request reaches a terminal state of completed or cancelled * When a login is cancelled we can remove the wallet which is logging-in * Add RC3 contracts * Sessions space restriction * Dedupe signers for encoding * Support RC3 sessions * Tightly increment call validation * CLI defaults to RC3 wallet code * Rc3 address test * Fix hashing tests * Add deprecated encoding test * wdk: throw errors from otp respond callback (#864) * wdk: throw errors from otp respond callback * wdk: otp auth error and handler refactor * Handle guard 2FA (#861) * guard: return a specific error when auth required * core: pass guard token to the service * wdk: handle prompting for guard 2FA code * dapp-client: handle prompting for guard 2FA code * guard 2fa tests * wdk: separate wallet and sessions guards * dapp-client: remove guard 2fa * dapp-client: fix imports * fix guard tests * wdk: remove unneeded promise resolve * Update relayer and api gen.ts, force public packages * Add standalone fetch queued payloads * Replacing GuardRole enum with string union type, as well as replacing guardAddresses Map with Record * Fallback to chain for non-logged in recovery * Add Katana, Sandbox Tesnet, Incentiv Testnet v2 (#873) * Update a few remaining dev1 contract addresses to rc3 (#874) * Remove unnecessary console.error where we already throw error * Improve DappClient hasPermission method * Wallet db try checksum and lowercase * Update dapp client json utils to include Map reviver and replacer * Bump next in the npm_and_yarn group across 1 directory Bumps the npm_and_yarn group with 1 update in the / directory: [next](https://github.com/vercel/next.js). Updates `next` from 15.4.2 to 15.4.7 - [Release notes](https://github.com/vercel/next.js/releases) - [Changelog](https://github.com/vercel/next.js/blob/canary/release.js) - [Commits](https://github.com/vercel/next.js/compare/v15.4.2...v15.4.7) --- updated-dependencies: - dependency-name: next dependency-version: 15.4.7 dependency-type: direct:production dependency-group: npm_and_yarn ... Signed-off-by: dependabot[bot] * Update type name, update exports for dapp client * Expired explicit sessions can't sign * Improve session validity test * session isValid returns invalid reason * InvalidReason is typed * Support multiple identity signers in sessions configuration * Device signers can approve implicit sessions * Remove invalid test * Fix recursion * Fix comment * Improve test stability by reducing race conditions * Do not set passkey signer as identity signer * Use length checks * Throw on missing identity signer * Encoding requires identity signer to encode * Fix test * Refactor/types namings tsdoc redundant code (#880) * refactor types, namings, ts doc * fix session response payload * change parameter name * change parameter name * change type in tests * improve types and dapp client methods * fix session test to use new types * refactor * refactor implicit sessions array in chain session manager * remove unused types * remove unused types and add ConnectionError * update pnpm lock * move reusable session types to wallet-core * Update some imports and update some response type names --------- Co-authored-by: Tolgahan Arikan * Fix check for explicit session for the updated type in dapp-client * Update api.gen.ts and relayer.gen.ts * Add missing chainId for dapp client event * Fix initializing new chain session manager on redirect * Add support for non-viem, custom Sequence chains (#882) * Update issue templates * Provider sent to prepareBlankEnvelope * Add session signature decoding * Add feeTokens endpoint to relayer (#885) * const for node length * Clearer blacklist size encoding * identity signer node length * Potential fix for code scanning alert no. 84: Insecure randomness Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> * add getFeeTokens to dapp client (#889) * add getFeeTokens to dapp client * fix typo * make getFeeTokens independent of chain session manager and initialize state (#890) * make getFeeTokens independent of chain session manager and initialized state * remove getFeeTokens from chain session manager * Throw specific error when trying to sign with an expired session (#887) * Throw when supported session signer is expired * Fix tests * Make dapp-client implicit sessions chain agnostic (#893) * Add Monad, remove LAOS and Root Network * Bump the npm_and_yarn group across 3 directories with 1 update Bumps the npm_and_yarn group with 1 update in the / directory: [happy-dom](https://github.com/capricorn86/happy-dom). Bumps the npm_and_yarn group with 1 update in the /packages/wallet/dapp-client directory: [happy-dom](https://github.com/capricorn86/happy-dom). Bumps the npm_and_yarn group with 1 update in the /packages/wallet/wdk directory: [happy-dom](https://github.com/capricorn86/happy-dom). Updates `happy-dom` from 17.6.3 to 20.0.0 - [Release notes](https://github.com/capricorn86/happy-dom/releases) - [Commits](https://github.com/capricorn86/happy-dom/compare/v17.6.3...v20.0.0) Updates `happy-dom` from 17.6.3 to 20.0.0 - [Release notes](https://github.com/capricorn86/happy-dom/releases) - [Commits](https://github.com/capricorn86/happy-dom/compare/v17.6.3...v20.0.0) Updates `happy-dom` from 17.6.3 to 20.0.0 - [Release notes](https://github.com/capricorn86/happy-dom/releases) - [Commits](https://github.com/capricorn86/happy-dom/compare/v17.6.3...v20.0.0) --- updated-dependencies: - dependency-name: happy-dom dependency-version: 20.0.0 dependency-type: direct:development dependency-group: npm_and_yarn - dependency-name: happy-dom dependency-version: 20.0.0 dependency-type: direct:development dependency-group: npm_and_yarn - dependency-name: happy-dom dependency-version: 20.0.0 dependency-type: direct:development dependency-group: npm_and_yarn ... Signed-off-by: dependabot[bot] * Bump happy-dom in the npm_and_yarn group across 1 directory (#69) Bumps the npm_and_yarn group with 1 update in the / directory: [happy-dom](https://github.com/capricorn86/happy-dom). Updates `happy-dom` from 20.0.0 to 20.0.2 - [Release notes](https://github.com/capricorn86/happy-dom/releases) - [Commits](https://github.com/capricorn86/happy-dom/compare/v20.0.0...v20.0.2) --- updated-dependencies: - dependency-name: happy-dom dependency-version: 20.0.2 dependency-type: direct:development dependency-group: npm_and_yarn ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Create SECURITY.md for security policy (#70) * Create SECURITY.md for security policy Add a security policy document outlining supported versions and vulnerability reporting. Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> * Update SECURITY.md Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> * Update SECURITY.md Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> --------- Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> * Update SECURITY.md Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> * Add support for sessionless dapp connection (#896) * Refactor relayer package & update dependant packages (#891) * refactor exports for relayer (#900) * Add Arc Testnet * Fix changelog config * Sessionless connection upgrade and error handling in DappClient (#902) * dapp-client: add sessionless snapshot restore flow * Bump the npm_and_yarn group across 3 directories with 1 update Bumps the npm_and_yarn group with 1 update in the / directory: [happy-dom](https://github.com/capricorn86/happy-dom). Bumps the npm_and_yarn group with 1 update in the /packages/wallet/dapp-client directory: [happy-dom](https://github.com/capricorn86/happy-dom). Bumps the npm_and_yarn group with 1 update in the /packages/wallet/wdk directory: [happy-dom](https://github.com/capricorn86/happy-dom). Updates `happy-dom` from 17.6.3 to 20.0.2 - [Release notes](https://github.com/capricorn86/happy-dom/releases) - [Commits](https://github.com/capricorn86/happy-dom/compare/v17.6.3...v20.0.2) Updates `happy-dom` from 17.6.3 to 20.0.2 - [Release notes](https://github.com/capricorn86/happy-dom/releases) - [Commits](https://github.com/capricorn86/happy-dom/compare/v17.6.3...v20.0.2) Updates `happy-dom` from 17.6.3 to 20.0.2 - [Release notes](https://github.com/capricorn86/happy-dom/releases) - [Commits](https://github.com/capricorn86/happy-dom/compare/v17.6.3...v20.0.2) --- updated-dependencies: - dependency-name: happy-dom dependency-version: 20.0.2 dependency-type: direct:development dependency-group: npm_and_yarn - dependency-name: happy-dom dependency-version: 20.0.2 dependency-type: direct:development dependency-group: npm_and_yarn - dependency-name: happy-dom dependency-version: 20.0.2 dependency-type: direct:development dependency-group: npm_and_yarn ... Signed-off-by: dependabot[bot] * Allow to logout a wallet with skipRemoveDevice even if the wallet is not in a ready state to allow force removing of wallets (#906) * Pass request to PromptCodeHandler in guard registerUI (#909) * Pass request to PromptCodeHandler in guard registerUI * Fixing guard registerUI test * guard: allow using recovery code as 2FA token (#910) * guard: allow using recovery code as 2FA token * Cleanup types of ResponseFn --------- Co-authored-by: Corban Riley * Add a way to reset 2fa when using a backup code (#911) * Add a way to reset 2fa when using a backup code * use the GuardToken type instead of breaking out the props * Update SECURITY.md Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update packages/wallet/dapp-client/src/DappTransport.ts Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update package.json Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update SECURITY.md Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update wagmi-project/package.json Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update wagmi-project/package.json Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update wagmi-project/src/App.tsx Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Create FUNDING.json (#90) Enhancements: Include FUNDING.json to display GitHub sponsorship options in the repository Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Create config.yml (#91) Add initial CircleCI configuration to enable automated builds using a custom Docker executor and a defined workflow. Build: Add .circleci/config.yml with version 2.1 specification and custom Docker executor. CI: Define web3-defi-game-project job with checkout step. Set up my-custom-workflow to run the job. Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Add rc4 contracts * Set rc4 as default and add it to lists * Session enhanced replay protection * New sessions replay protection hashes payload * Use the 4337 factory wrapper * Update keymachine url in dapp-client constants * Update keymachine url in Provider constructor * SSR safety (#915) * SSR safety test * Fix CI job * Guard dapp-client for SSR (lazy transport, browser checks, gated storage) * Fix guard topology (#918) * Use proper guard topology * Test and fixes * login and setup tests * Switch prod manager settings (#917) * Add prod guard and identity instrument info * Remove completed TODOs * Small JS tweaks (#919) * Fix type exports to built declarations * Update repository links to current package paths * Improve Next app tooling and React typings * Expose primitives CLI bin and use base lint config * Update relayer.gen.ts and TransactionPrecondition interface * Update api.gen.ts * Update metadata.gen.ts * Update marketplace.gen.ts * Update guard.gen.ts * Support multiple identity signers in sessions configuration * Device signers can approve implicit sessions * Remove invalid test * Fix recursion * Fix comment * Improve test stability by reducing race conditions * Do not set passkey signer as identity signer * Use length checks * Throw on missing identity signer * Encoding requires identity signer to encode * Fix test * Refactor/types namings tsdoc redundant code (#880) * refactor types, namings, ts doc * fix session response payload * change parameter name * change parameter name * change type in tests * improve types and dapp client methods * fix session test to use new types * refactor * refactor implicit sessions array in chain session manager * remove unused types * remove unused types and add ConnectionError * update pnpm lock * move reusable session types to wallet-core * Update some imports and update some response type names --------- Co-authored-by: Tolgahan Arikan * Fix check for explicit session for the updated type in dapp-client * Update api.gen.ts and relayer.gen.ts * Add missing chainId for dapp client event * Fix initializing new chain session manager on redirect * Add support for non-viem, custom Sequence chains (#882) * Provider sent to prepareBlankEnvelope * Add session signature decoding * const for node length * Clearer blacklist size encoding * identity signer node length * Add feeTokens endpoint to relayer (#885) * add getFeeTokens to dapp client (#889) * add getFeeTokens to dapp client * fix typo * make getFeeTokens independent of chain session manager and initialize state (#890) * make getFeeTokens independent of chain session manager and initialized state * remove getFeeTokens from chain session manager * Throw specific error when trying to sign with an expired session (#887) * Throw when supported session signer is expired * Fix tests * Make dapp-client implicit sessions chain agnostic (#893) * Add Monad, remove LAOS and Root Network * Add support for sessionless dapp connection (#896) * Refactor relayer package & update dependant packages (#891) * refactor exports for relayer (#900) * Add Arc Testnet * Fix changelog config * Sessionless connection upgrade and error handling in DappClient (#902) * dapp-client: add sessionless snapshot restore flow * Allow to logout a wallet with skipRemoveDevice even if the wallet is not in a ready state to allow force removing of wallets (#906) * Pass request to PromptCodeHandler in guard registerUI (#909) * Pass request to PromptCodeHandler in guard registerUI * Fixing guard registerUI test * guard: allow using recovery code as 2FA token (#910) * guard: allow using recovery code as 2FA token * Cleanup types of ResponseFn --------- Co-authored-by: Corban Riley * Add a way to reset 2fa when using a backup code (#911) * Add a way to reset 2fa when using a backup code * use the GuardToken type instead of breaking out the props * Add rc4 contracts * Set rc4 as default and add it to lists * Session enhanced replay protection * New sessions replay protection hashes payload * Use the 4337 factory wrapper * Update keymachine url in dapp-client constants * Update keymachine url in Provider constructor * SSR safety (#915) * Guard dapp-client for SSR (lazy transport, browser checks, gated storage) * Fix guard topology (#918) * Use proper guard topology * Test and fixes * login and setup tests * Switch prod manager settings (#917) * Add prod guard and identity instrument info * Remove completed TODOs * Small JS tweaks (#919) * Fix type exports to built declarations * Update repository links to current package paths * Improve Next app tooling and React typings * Expose primitives CLI bin and use base lint config * Update relayer.gen.ts and TransactionPrecondition interface * Update relayer.gen.ts and TransactionPrecondition interface (#920) * 3.0.0-beta.1 * identity-instrument: generate nonce from current time (#921) * Remove publish-dists.yml github action (#923) * 3.0.0-beta.2 * Clean up changeset config * Improve test stability by removing race conditions * Ensure build before test * Updating happy-dom to 20.0.10 (#926) * Add support for custom auth providers (authcode & authcode-pkce only) (#894) * Add support for custom auth providers (authcode & authcode-pkce only) * fix authcode tests * Updating Deps November 2025 (#927) * Updating deps for the workspace root * Updating deps for wallet/wdk * Fixing sessions test for latest vitest * Lets not upgrade to the latest typescript quite yet * Updating to latest vitest * Updating deps for wallet/core * Updating deps for wallet/primitives-cli * Updating deps for wallet/dapp-client * Adding syncpack to check for dep version inconsistencies * Setup syncpack versionGroups for pnpm workspace:^ * Fixing dep versions mismatches * Fixing @types/node mismatches * Adding syncpack to pre commit hook * Remove the syncpack format script. * Update ox to v9.17.0 (#928) * Upgrading ox to 9.17.0 * WrappedSignature renamed to SignatureErc6492 * Fixing PasskeySignatureValidator interface * Lock ox lib dep to use the same version with pnpm overrides and update viem to latest * Fix explicitSessionRequested check in dapp client * Typescript 5.9.3 (#930) * Upgrading to typescript v5.9.3 * Fix type errors that arose from typescript upgrade related to Bytes and Buffer source typings. * Don't catch errors thrown by Guard 2FA or reject early to allow multiple attempts on incorrect TOTP (#931) * Update pnpm * Mark @0xsequence/wallet-primitives-cli as private * 3.0.0-beta.3 * changeset cleanup * Fix rc4 4337 factory (#933) * Add rc5 and set it as default (#934) * 3.0.0-beta.4 * Update SECURITY.md Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update wagmi-project/package.json Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update wagmi-project/package.json Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Bump next from 15.5.5 to 15.5.7 (#936) Bumps [next](https://github.com/vercel/next.js) from 15.5.5 to 15.5.7. - [Release notes](https://github.com/vercel/next.js/releases) - [Changelog](https://github.com/vercel/next.js/blob/canary/release.js) - [Commits](https://github.com/vercel/next.js/compare/v15.5.5...v15.5.7) --- updated-dependencies: - dependency-name: next dependency-version: 15.5.7 dependency-type: direct:production ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * add userdata service client (#940) * Skip LocalDevice identity signers not on current device (#942) * Skip LocalDevice identity signers not on current device * Update log * 3.0.0-beta.5 * Update config.yml (#102) * Update config.yml Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update .circleci/config.yml Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> --------- Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com> * Update config.yml (#103) * Update config.yml Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update .circleci/config.yml Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> --------- Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com> * fix: extras/web/package.json to reduce vulnerabilities (#101) The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JS-NEXT-14173355 Co-authored-by: snyk-io[bot] <141718529+snyk-io[bot]@users.noreply.github.com> * fix: extras/docs/package.json to reduce vulnerabilities (#100) The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JS-NEXT-14173355 Co-authored-by: snyk-io[bot] <141718529+snyk-io[bot]@users.noreply.github.com> * fix: package.json to reduce vulnerabilities (#104) The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JS-BABELHELPERS-9397697 - https://snyk.io/vuln/SNYK-JS-BABELRUNTIME-10044504 - https://snyk.io/vuln/SNYK-JS-BRACEEXPANSION-9789073 - https://snyk.io/vuln/SNYK-JS-CROSSSPAWN-8303230 - https://snyk.io/vuln/SNYK-JS-ELLIPTIC-7577916 - https://snyk.io/vuln/SNYK-JS-ELLIPTIC-7577917 - https://snyk.io/vuln/SNYK-JS-ELLIPTIC-7577918 - https://snyk.io/vuln/SNYK-JS-ELLIPTIC-8187303 - https://snyk.io/vuln/SNYK-JS-ELLIPTIC-8720086 - https://snyk.io/vuln/SNYK-JS-IMAGESIZE-9634164 - https://snyk.io/vuln/SNYK-JS-INFLIGHT-6095116 - https://snyk.io/vuln/SNYK-JS-JSYAML-13961110 - https://snyk.io/vuln/SNYK-JS-MICROMATCH-6838728 - https://snyk.io/vuln/SNYK-JS-NODEFORGE-14114940 - https://snyk.io/vuln/SNYK-JS-NODEFORGE-14125097 - https://snyk.io/vuln/SNYK-JS-NODEFORGE-14125745 - https://snyk.io/vuln/SNYK-JS-ONHEADERS-10773729 - https://snyk.io/vuln/SNYK-JS-ROLLUP-8073097 - https://snyk.io/vuln/SNYK-JS-SECP256K1-8237220 - https://snyk.io/vuln/SNYK-JS-SEND-7926862 - https://snyk.io/vuln/SNYK-JS-SERVESTATIC-7926865 - https://snyk.io/vuln/SNYK-JS-SHAJS-12089400 Co-authored-by: snyk-io[bot] <141718529+snyk-io[bot]@users.noreply.github.com> * Revert "Merge remote-tracking branch 'origin/dependabot/npm_and_yarn/npm_and_yarn-318c02e2da'" This reverts commit fd0fdf9ecc6ad9056447e381de7fc5bb19f78e47, reversing changes made to cba78943db9942a4635bb530b7a43fc5d18b0ab4. * fix: extras/web/package.json to reduce vulnerabilities (#109) The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JS-NEXT-14173355 Co-authored-by: snyk-bot * fix: extras/docs/package.json to reduce vulnerabilities (#106) The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JS-NEXT-14400636 - https://snyk.io/vuln/SNYK-JS-NEXT-14400644 Co-authored-by: snyk-bot * Bump next in the npm_and_yarn group across 1 directory (#110) Bumps the npm_and_yarn group with 1 update in the / directory: [next](https://github.com/vercel/next.js). Updates `next` from 15.5.7 to 15.5.9 - [Release notes](https://github.com/vercel/next.js/releases) - [Changelog](https://github.com/vercel/next.js/blob/canary/release.js) - [Commits](https://github.com/vercel/next.js/compare/v15.5.7...v15.5.9) --- updated-dependencies: - dependency-name: next dependency-version: 15.5.9 dependency-type: direct:production dependency-group: npm_and_yarn ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Delete .github/workflows/fortify.yml (#111) Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * fix: extras/web/package.json to reduce vulnerabilities (#107) The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JS-NEXT-14400636 - https://snyk.io/vuln/SNYK-JS-NEXT-14400644 Co-authored-by: snyk-bot * Bump the npm_and_yarn group across 1 directory with 3 updates (#115) Bumps the npm_and_yarn group with 1 update in the / directory: [next](https://github.com/vercel/next.js). Updates `next` from 15.5.5 to 15.5.9 - [Release notes](https://github.com/vercel/next.js/releases) - [Changelog](https://github.com/vercel/next.js/blob/canary/release.js) - [Commits](https://github.com/vercel/next.js/compare/v15.5.5...v15.5.9) Updates `happy-dom` from 17.6.3 to 20.0.11 - [Release notes](https://github.com/capricorn86/happy-dom/releases) - [Commits](https://github.com/capricorn86/happy-dom/compare/v17.6.3...v20.0.11) Updates `vite` from 7.1.10 to 7.2.7 - [Release notes](https://github.com/vitejs/vite/releases) - [Changelog](https://github.com/vitejs/vite/blob/v7.2.7/packages/vite/CHANGELOG.md) - [Commits](https://github.com/vitejs/vite/commits/v7.2.7/packages/vite) --- updated-dependencies: - dependency-name: next dependency-version: 15.5.9 dependency-type: direct:production dependency-group: npm_and_yarn - dependency-name: happy-dom dependency-version: 20.0.11 dependency-type: direct:development dependency-group: npm_and_yarn - dependency-name: vite dependency-version: 7.2.7 dependency-type: indirect dependency-group: npm_and_yarn ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Bump next from 15.5.7 to 15.5.9 (#944) Bumps [next](https://github.com/vercel/next.js) from 15.5.7 to 15.5.9. - [Release notes](https://github.com/vercel/next.js/releases) - [Changelog](https://github.com/vercel/next.js/blob/canary/release.js) - [Commits](https://github.com/vercel/next.js/compare/v15.5.7...v15.5.9) --- updated-dependencies: - dependency-name: next dependency-version: 15.5.9 dependency-type: direct:production ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Pin foundry to v1.5.0 instead of nightly (#947) * Include repo and extras in syncpack config to ensure deps are synced (#945) * Include repo and extras in syncpack config to ensure deps are synced across all * Updating support deps * Updating deps * Updating pnpm lock * Fixing type errors within wdk tests * Short circuit 404s (#949) * skip witness on signers that don't support it * add passkey to test * 3.0.0-beta.6 * Update tests.yml (#119) Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update config.yml (#120) Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update packages/services/identity-instrument/src/index.ts Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * feat: upgrade @wagmi/cli from 0.1.15 to 2.8.0 (#126) Snyk has created this PR to upgrade @wagmi/cli from 0.1.15 to 2.8.0. See this package in npm: @wagmi/cli See this project in Snyk: https://app.snyk.io/org/dargon789/project/bb845543-cbee-4e11-8cf9-8bfdf9205bf1?utm_source=github&utm_medium=referral&page=upgrade-pr Co-authored-by: snyk-bot * Potential fix for code scanning alert no. 82: Workflow does not contain permissions Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Potential fix for code scanning alert no. 62: Information exposure through a stack trace Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> --------- Signed-off-by: dependabot[bot] Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> Co-authored-by: Patryk Kalinowski Co-authored-by: Corban Riley Co-authored-by: tolgahan-arikan Co-authored-by: Agusx1211 Co-authored-by: Michael Standen Co-authored-by: William Hua Co-authored-by: Michael Standen Co-authored-by: Patryk Kalinowski Co-authored-by: Taylan Pince Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Gabi <56271768+VGabriel45@users.noreply.github.com> Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com> Co-authored-by: snyk-io[bot] <141718529+snyk-io[bot]@users.noreply.github.com> Co-authored-by: snyk-bot * Update extras/docs/package.json Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update extras/web/package.json Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> --------- Signed-off-by: dependabot[bot] Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> Co-authored-by: Patryk Kalinowski Co-authored-by: Corban Riley Co-authored-by: tolgahan-arikan Co-authored-by: Agusx1211 Co-authored-by: Michael Standen Co-authored-by: William Hua Co-authored-by: Michael Standen Co-authored-by: Patryk Kalinowski Co-authored-by: Taylan Pince Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Gabi <56271768+VGabriel45@users.noreply.github.com> Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com> Co-authored-by: snyk-io[bot] <141718529+snyk-io[bot]@users.noreply.github.com> Co-authored-by: snyk-bot commit 893eedbb1a99db6736a157fed7d73a0196f30778 Merge: bc418b171 7fe4a922d Author: dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Tue Dec 23 18:50:09 2025 +0700 Merge remote-tracking branch 'origin/v1' into v1 commit 7fe4a922dfbd817fa76b8e30e9be184e6f38ddb1 Author: Dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Tue Dec 23 18:16:10 2025 +0700 Update wagmi-project/src/App.tsx Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> commit 640be8ffe175c762828aded47cc76e8d2c404b56 Author: Dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Tue Dec 23 18:15:48 2025 +0700 Update wagmi-project/src/App.tsx Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> commit 51a64321d3c0b91c9bd43c1e7e693f974c045dbb Author: Dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Tue Dec 23 18:15:24 2025 +0700 Update wagmi-project/src/App.tsx Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> commit 28a268eef9f36a4bcf257d175c49c31f55f8008b Author: Dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Tue Dec 23 18:14:59 2025 +0700 Update wagmi-project/src/App.tsx Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> commit bc418b171da95091d834f3a21141780169818db3 Author: Dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Tue Dec 23 00:27:24 2025 +0700 Master ceb95d4 (#129) * Update issue templates (#128) * Bump the npm_and_yarn group across 1 directory with 1 update Bumps the npm_and_yarn group with 1 update in the / directory: [express](https://github.com/expressjs/express). Updates `express` from 4.18.2 to 4.19.2 - [Release notes](https://github.com/expressjs/express/releases) - [Changelog](https://github.com/expressjs/express/blob/master/History.md) - [Commits](https://github.com/expressjs/express/compare/4.18.2...4.19.2) --- updated-dependencies: - dependency-name: express dependency-type: direct:development dependency-group: npm_and_yarn-security-group ... Signed-off-by: dependabot[bot] * Create SECURITY.md * Set up CI with Azure Pipelines [skip ci] * Create CNAME * Create fortify.yml * Update issue templates * Update CNAME * fix: upgrade @tanstack/react-query from 5.45.1 to 5.64.2 Snyk has created this PR to upgrade @tanstack/react-query from 5.45.1 to 5.64.2. See this package in npm: @tanstack/react-query See this project in Snyk: https://app.snyk.io/org/dargon789/project/bb845543-cbee-4e11-8cf9-8bfdf9205bf1?utm_source=github&utm_medium=referral&page=upgrade-pr * Create config.yml (#46) Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> * Support multiple identity signers in sessions configuration * Device signers can approve implicit sessions * Remove invalid test * Fix recursion * Fix comment * Improve test stability by reducing race conditions * Do not set passkey signer as identity signer * Use length checks * Throw on missing identity signer * Encoding requires identity signer to encode * Fix test * Refactor/types namings tsdoc redundant code (#880) * refactor types, namings, ts doc * fix session response payload * change parameter name * change parameter name * change type in tests * improve types and dapp client methods * fix session test to use new types * refactor * refactor implicit sessions array in chain session manager * remove unused types * remove unused types and add ConnectionError * update pnpm lock * move reusable session types to wallet-core * Update some imports and update some response type names --------- Co-authored-by: Tolgahan Arikan * Fix check for explicit session for the updated type in dapp-client * Update api.gen.ts and relayer.gen.ts * Add missing chainId for dapp client event * Fix initializing new chain session manager on redirect * Add support for non-viem, custom Sequence chains (#882) * Provider sent to prepareBlankEnvelope * Update fortify.yml Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> * Add session signature decoding * Add feeTokens endpoint to relayer (#885) * const for node length * Clearer blacklist size encoding * identity signer node length * add getFeeTokens to dapp client (#889) * add getFeeTokens to dapp client * fix typo * make getFeeTokens independent of chain session manager and initialize state (#890) * make getFeeTokens independent of chain session manager and initialized state * remove getFeeTokens from chain session manager * Throw specific error when trying to sign with an expired session (#887) * Throw when supported session signer is expired * Fix tests * Make dapp-client implicit sessions chain agnostic (#893) * Add Mona… * Update packages/0xsequence/tests/browser/wallet-provider/dapp.test.ts Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update packages/auth/src/session.ts Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update tests.yml (#187) https://github.com/Dargon789/sequence.js/commit/ea7e889bdca6ab92991b03a34eb3e2002806b5a5 Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * 1.9.19 (#189) * 1.9.17 * Update packages/0xsequence/CHANGELOG.md Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update packages/account/CHANGELOG.md Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update packages/auth/CHANGELOG.md Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update packages/multicall/CHANGELOG.md Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update packages/provider/CHANGELOG.md Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update packages/wallet/CHANGELOG.md Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * 1.9.19 * Update packages/waas/src/networks.ts Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Squashed commit of the following: commit dafd2eda59d728355ab9028d03b0e10b014f2818 Author: Dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Wed Jan 7 06:30:16 2026 +0700 Create nextjs.yml (#176) CI: Introduce a Next.js GitHub Actions workflow that detects the package manager, builds the app, caches Next.js artifacts, and deploys the static output to GitHub Pages. Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> commit e6efe1f5b8e19fcd47714aa1417a9a01a16343a9 Author: dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Wed Jan 7 06:06:13 2026 +0700 sequence-core-dapp-1.0.0 commit cd4a860bbe5d27a96fd2a091cb6d074ff1c92331 Author: Dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Tue Jan 6 01:37:52 2026 +0700 Create web-sdk.yml (#175) https://github.com/Dargon789/Web3-Onboard/commit/fb66abf9ef6c55706a1dab2198db715f2588f1d1 https://github.com/Dargon789/web-sdk/commit/d26f62241ed85e6108a481f7a74ba7573c6c4c95 Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> commit f2fd08bd5c463fc1c154c0fb26d8286bfcde01fa Author: Dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Wed Dec 31 01:11:33 2025 +0700 V2 (#174) * Updating DefaultGuest address * Update tests.yml (#51) Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> * Update tests.yml (#52) Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> * Update tests.yml Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> * Update tests.yml (#55) Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> * Update tests.yml (#56) Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> * Update tests.yml Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> --------- Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> Co-authored-by: Corban Riley commit e7b277e79c7fe27c3cb129627d9f70e5bea9a25c Author: Dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Wed Dec 31 00:17:52 2025 +0700 Revise security policy for reporting vulnerabilities (#173) * Revise security policy for reporting vulnerabilities Updated contact information for vulnerability reporting. https://github.com/Dargon789/sequence.js/commit/e90b2e6395fb14c6463a02e88f65dc23ce455d6d Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update SECURITY.md Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> --------- Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> commit 70208b1b85034bada6c5f8f858cc11bfd1a11241 Author: Dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Tue Dec 30 21:50:23 2025 +0700 Potential fix for code scanning alert no. 95: Information exposure through a stack trace Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> commit 4c696d0e57d8ec45057b111bfb551ab497d0f93a Author: Dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Tue Dec 30 21:47:34 2025 +0700 Potential fix for code scanning alert no. 94: Insecure randomness Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> commit c62e5ddc2818a6b0624d63be3089c5ad7d08bd72 Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue Dec 30 21:42:22 2025 +0700 Bump happy-dom in the npm_and_yarn group across 1 directory (#167) Bumps the npm_and_yarn group with 1 update in the /wagmi-project directory: [happy-dom](https://github.com/capricorn86/happy-dom). Updates `happy-dom` from 18.0.1 to 20.0.2 - [Release notes](https://github.com/capricorn86/happy-dom/releases) - [Commits](https://github.com/capricorn86/happy-dom/compare/v18.0.1...v20.0.2) --- updated-dependencies: - dependency-name: happy-dom dependency-version: 20.0.2 dependency-type: direct:development dependency-group: npm_and_yarn ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> commit e13fe5a71769b6d325b9cc3185c4a0519205f7b1 Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue Dec 30 21:19:24 2025 +0700 Bump the npm_and_yarn group across 2 directories with 4 updates (#161) Bumps the npm_and_yarn group with 1 update in the / directory: [webpack-dev-server](https://github.com/webpack/webpack-dev-server). Bumps the npm_and_yarn group with 1 update in the /packages/0xsequence directory: [webpack-dev-server](https://github.com/webpack/webpack-dev-server). Updates `webpack-dev-server` from 3.11.3 to 5.2.1 - [Release notes](https://github.com/webpack/webpack-dev-server/releases) - [Changelog](https://github.com/webpack/webpack-dev-server/blob/main/CHANGELOG.md) - [Commits](https://github.com/webpack/webpack-dev-server/compare/v3.11.3...v5.2.1) Updates `http-proxy-middleware` from 0.19.1 to 2.0.9 - [Release notes](https://github.com/chimurai/http-proxy-middleware/releases) - [Changelog](https://github.com/chimurai/http-proxy-middleware/blob/v2.0.9/CHANGELOG.md) - [Commits](https://github.com/chimurai/http-proxy-middleware/compare/v0.19.1...v2.0.9) Updates `micromatch` from 3.1.10 to 4.0.8 - [Release notes](https://github.com/micromatch/micromatch/releases) - [Changelog](https://github.com/micromatch/micromatch/blob/master/CHANGELOG.md) - [Commits](https://github.com/micromatch/micromatch/compare/3.1.10...4.0.8) Updates `on-headers` from 1.0.2 to 1.1.0 - [Release notes](https://github.com/jshttp/on-headers/releases) - [Changelog](https://github.com/jshttp/on-headers/blob/master/HISTORY.md) - [Commits](https://github.com/jshttp/on-headers/compare/v1.0.2...v1.1.0) Updates `webpack-dev-server` from 3.11.3 to 5.2.1 - [Release notes](https://github.com/webpack/webpack-dev-server/releases) - [Changelog](https://github.com/webpack/webpack-dev-server/blob/main/CHANGELOG.md) - [Commits](https://github.com/webpack/webpack-dev-server/compare/v3.11.3...v5.2.1) Updates `http-proxy-middleware` from 0.19.1 to 2.0.9 - [Release notes](https://github.com/chimurai/http-proxy-middleware/releases) - [Changelog](https://github.com/chimurai/http-proxy-middleware/blob/v2.0.9/CHANGELOG.md) - [Commits](https://github.com/chimurai/http-proxy-middleware/compare/v0.19.1...v2.0.9) Updates `micromatch` from 3.1.10 to 4.0.8 - [Release notes](https://github.com/micromatch/micromatch/releases) - [Changelog](https://github.com/micromatch/micromatch/blob/master/CHANGELOG.md) - [Commits](https://github.com/micromatch/micromatch/compare/3.1.10...4.0.8) Updates `on-headers` from 1.0.2 to 1.1.0 - [Release notes](https://github.com/jshttp/on-headers/releases) - [Changelog](https://github.com/jshttp/on-headers/blob/master/HISTORY.md) - [Commits](https://github.com/jshttp/on-headers/compare/v1.0.2...v1.1.0) Updates `webpack-dev-server` from 3.11.3 to 5.2.1 - [Release notes](https://github.com/webpack/webpack-dev-server/releases) - [Changelog](https://github.com/webpack/webpack-dev-server/blob/main/CHANGELOG.md) - [Commits](https://github.com/webpack/webpack-dev-server/compare/v3.11.3...v5.2.1) --- updated-dependencies: - dependency-name: webpack-dev-server dependency-version: 5.2.1 dependency-type: direct:development dependency-group: npm_and_yarn - dependency-name: http-proxy-middleware dependency-version: 2.0.9 dependency-type: indirect dependency-group: npm_and_yarn - dependency-name: micromatch dependency-version: 4.0.8 dependency-type: indirect dependency-group: npm_and_yarn - dependency-name: on-headers dependency-version: 1.1.0 dependency-type: indirect dependency-group: npm_and_yarn - dependency-name: webpack-dev-server dependency-version: 5.2.1 dependency-type: direct:development dependency-group: npm_and_yarn - dependency-name: http-proxy-middleware dependency-version: 2.0.9 dependency-type: indirect dependency-group: npm_and_yarn - dependency-name: micromatch dependency-version: 4.0.8 dependency-type: indirect dependency-group: npm_and_yarn - dependency-name: on-headers dependency-version: 1.1.0 dependency-type: indirect dependency-group: npm_and_yarn - dependency-name: webpack-dev-server dependency-version: 5.2.1 dependency-type: direct:development dependency-group: npm_and_yarn ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> commit b9d25688cb184f4b5ec1d0aba07bd36351efc65b Author: Dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Mon Dec 29 15:35:25 2025 +0700 Update CNAME to new domain (#164) sequence.app Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> commit 4a81a2c4338191c93915c3101f3c24f0c468ae03 Author: Dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Mon Dec 29 14:08:44 2025 +0700 Proto (#163) * [AUTOMATED] Update: proto/clients/indexer*.gen.ts * [AUTOMATED] Update: proto/clients/indexer*.gen.ts * [AUTOMATED] Update: proto/clients/indexer*.gen.ts * [AUTOMATED] Update: proto/clients/indexer*.gen.ts * [AUTOMATED] Update: proto/clients/indexer*.gen.ts * [AUTOMATED] Update: proto/clients/indexer*.gen.ts * [AUTOMATED] Update: proto/clients/indexer*.gen.ts * [AUTOMATED] Update: proto/clients/indexer*.gen.ts --------- Co-authored-by: marino39 <722509+marino39@users.noreply.github.com> Co-authored-by: pkieltyka <18831+pkieltyka@users.noreply.github.com> Co-authored-by: xiam <385670+xiam@users.noreply.github.com> commit c4d0fdc33cd1ccf9cfc996b351959ae4d004a7e6 Merge: 7c547fcdd 269972a1d Author: dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Mon Dec 29 13:38:33 2025 +0700 Merge branch 'master' of https://github.com/Dargon789/sequence.js commit 269972a1dad423f67c0262149e46e7d8b3c3b10d Author: Dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Mon Dec 29 09:58:04 2025 +0700 fix: package.json to reduce vulnerabilities (#157) The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JS-BABELHELPERS-9397697 - https://snyk.io/vuln/SNYK-JS-BABELRUNTIME-10044504 - https://snyk.io/vuln/SNYK-JS-BRACEEXPANSION-9789073 - https://snyk.io/vuln/SNYK-JS-ELLIPTIC-8187303 - https://snyk.io/vuln/SNYK-JS-IMAGESIZE-9634164 - https://snyk.io/vuln/SNYK-JS-INFLIGHT-6095116 - https://snyk.io/vuln/SNYK-JS-JSYAML-13961110 - https://snyk.io/vuln/SNYK-JS-NODEFORGE-14114940 - https://snyk.io/vuln/SNYK-JS-NODEFORGE-14125097 - https://snyk.io/vuln/SNYK-JS-NODEFORGE-14125745 - https://snyk.io/vuln/SNYK-JS-SHAJS-12089400 - https://snyk.io/vuln/SNYK-JS-TMP-11501554 Co-authored-by: snyk-bot commit 7c547fcdd75774e39120241d16bf64c86e243355 Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Date: Sat Dec 27 02:34:25 2025 +0700 Bump the npm_and_yarn group across 4 directories with 7 updates (#144) Bumps the npm_and_yarn group with 4 updates in the /wagmi-project directory: [next](https://github.com/vercel/next.js), [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite), [@metamask/sdk](https://github.com/MetaMask/metamask-sdk/tree/HEAD/packages/sdk) and [nuxt](https://github.com/nuxt/nuxt/tree/HEAD/packages/nuxt). Bumps the npm_and_yarn group with 1 update in the /wagmi-project/packages/connectors directory: [@metamask/sdk](https://github.com/MetaMask/metamask-sdk/tree/HEAD/packages/sdk). Bumps the npm_and_yarn group with 1 update in the /wagmi-project/packages/create-wagmi/templates/next directory: [next](https://github.com/vercel/next.js). Bumps the npm_and_yarn group with 1 update in the /wagmi-project/playgrounds/next directory: [next](https://github.com/vercel/next.js). Updates `next` from 15.3.3 to 15.4.10 - [Release notes](https://github.com/vercel/next.js/releases) - [Changelog](https://github.com/vercel/next.js/blob/canary/release.js) - [Commits](https://github.com/vercel/next.js/compare/v15.3.3...v15.4.10) Updates `happy-dom` from 15.10.2 to 18.0.1 - [Release notes](https://github.com/capricorn86/happy-dom/releases) - [Commits](https://github.com/capricorn86/happy-dom/compare/v15.10.2...v18.0.1) Updates `vite` from 5.4.19 to 5.4.21 - [Release notes](https://github.com/vitejs/vite/releases) - [Changelog](https://github.com/vitejs/vite/blob/v5.4.21/packages/vite/CHANGELOG.md) - [Commits](https://github.com/vitejs/vite/commits/v5.4.21/packages/vite) Updates `@metamask/sdk` from 0.32.1 to 0.33.1 - [Release notes](https://github.com/MetaMask/metamask-sdk/releases) - [Changelog](https://github.com/MetaMask/metamask-sdk/blob/main/packages/sdk/CHANGELOG.md) - [Commits](https://github.com/MetaMask/metamask-sdk/commits/@metamask/sdk@0.33.1/packages/sdk) Updates `nuxt` from 3.16.0 to 3.19.0 - [Release notes](https://github.com/nuxt/nuxt/releases) - [Commits](https://github.com/nuxt/nuxt/commits/v3.19.0/packages/nuxt) Updates `@nuxt/devtools` from 2.4.1 to 2.7.0 - [Release notes](https://github.com/nuxt/devtools/releases) - [Changelog](https://github.com/nuxt/devtools/blob/main/CHANGELOG.md) - [Commits](https://github.com/nuxt/devtools/commits/v2.7.0/packages/devtools) Updates `devalue` from 5.1.1 to 5.6.1 - [Release notes](https://github.com/sveltejs/devalue/releases) - [Changelog](https://github.com/sveltejs/devalue/blob/main/CHANGELOG.md) - [Commits](https://github.com/sveltejs/devalue/compare/v5.1.1...v5.6.1) Updates `@metamask/sdk` from 0.32.1 to 0.33.1 - [Release notes](https://github.com/MetaMask/metamask-sdk/releases) - [Changelog](https://github.com/MetaMask/metamask-sdk/blob/main/packages/sdk/CHANGELOG.md) - [Commits](https://github.com/MetaMask/metamask-sdk/commits/@metamask/sdk@0.33.1/packages/sdk) Updates `next` from 15.2.4 to 15.4.10 - [Release notes](https://github.com/vercel/next.js/releases) - [Changelog](https://github.com/vercel/next.js/blob/canary/release.js) - [Commits](https://github.com/vercel/next.js/compare/v15.3.3...v15.4.10) Updates `next` from 15.3.3 to 15.4.10 - [Release notes](https://github.com/vercel/next.js/releases) - [Changelog](https://github.com/vercel/next.js/blob/canary/release.js) - [Commits](https://github.com/vercel/next.js/compare/v15.3.3...v15.4.10) --- updated-dependencies: - dependency-name: next dependency-version: 15.4.10 dependency-type: direct:production dependency-group: npm_and_yarn - dependency-name: happy-dom dependency-version: 18.0.1 dependency-type: direct:development dependency-group: npm_and_yarn - dependency-name: vite dependency-version: 5.4.21 dependency-type: direct:development dependency-group: npm_and_yarn - dependency-name: "@metamask/sdk" dependency-version: 0.33.1 dependency-type: direct:production dependency-group: npm_and_yarn - dependency-name: nuxt dependency-version: 3.19.0 dependency-type: direct:production dependency-group: npm_and_yarn - dependency-name: "@nuxt/devtools" dependency-version: 2.7.0 dependency-type: indirect dependency-group: npm_and_yarn - dependency-name: devalue dependency-version: 5.6.1 dependency-type: indirect dependency-group: npm_and_yarn - dependency-name: "@metamask/sdk" dependency-version: 0.33.1 dependency-type: direct:production dependency-group: npm_and_yarn - dependency-name: next dependency-version: 15.4.10 dependency-type: direct:production dependency-group: npm_and_yarn - dependency-name: next dependency-version: 15.4.10 dependency-type: direct:production dependency-group: npm_and_yarn ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> commit 977998758f93df492849cb55e7208864677515ef Author: Dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Sat Dec 27 02:10:27 2025 +0700 Update GitHub Actions workflow for tests (#149) Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> commit 9c420a789831c3affe0881d732bb95bd2bb075db Author: Dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Fri Dec 26 04:55:34 2025 +0700 Revise README structure and add sponsorship details (#146) * Revise README structure and add sponsorship details Updated README to include new sections and sponsorship information. https://sequence.xyz/ Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update README.md Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update README.md Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update README.md Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> --------- Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> commit 224f7612cd574849b75e17056859f0a208a24aa1 Author: dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Fri Dec 26 03:19:19 2025 +0700 sequence-core-1.0.0 commit e90b2e6395fb14c6463a02e88f65dc23ce455d6d Author: dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Thu Dec 25 14:15:53 2025 +0700 Initial project structure and core packages Add initial monorepo structure for wagmi-project, including CLI, connectors, and core packages with source code, tests, configuration, and CI/CD workflows. This sets up the foundation for further development and collaboration. commit 1f452493d6ac5f23e20def94b7edf207bc2ce40a Author: snyk-io[bot] <141718529+snyk-io[bot]@users.noreply.github.com> Date: Wed Dec 24 21:11:40 2025 +0700 fix: extras/web/package.json to reduce vulnerabilities (#117) The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JS-NEXT-14400636 - https://snyk.io/vuln/SNYK-JS-NEXT-14400644 Co-authored-by: snyk-io[bot] <141718529+snyk-io[bot]@users.noreply.github.com> Co-authored-by: dargon789 <64915515+Dargon789@users.noreply.github.com> commit 8bad845d94b7ca97a1d01a255eb8b41357eaf38d Author: Dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Wed Dec 24 19:35:49 2025 +0700 feat: upgrade react from 18.3.1 to 19.2.0 (#121) Snyk has created this PR to upgrade react from 18.3.1 to 19.2.0. See this package in npm: react See this project in Snyk: https://app.snyk.io/org/dargon789/project/bb845543-cbee-4e11-8cf9-8bfdf9205bf1?utm_source=github&utm_medium=referral&page=upgrade-pr Co-authored-by: snyk-bot commit 5e6dca3ce44d2e8d5b00b1182ba9d6eae7855b23 Author: Dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Tue Dec 23 21:23:47 2025 +0700 Pin foundry to v1.5.0 instead of nightly (0xsequence#947) (#134) (#135) * Pin foundry to v1.5.0 instead of nightly (0xsequence#947) (#134) * Bump next from 15.5.7 to 15.5.9 (#944) Bumps [next](https://github.com/vercel/next.js) from 15.5.7 to 15.5.9. - [Release notes](https://github.com/vercel/next.js/releases) - [Changelog](https://github.com/vercel/next.js/blob/canary/release.js) - [Commits](https://github.com/vercel/next.js/compare/v15.5.7...v15.5.9) --- updated-dependencies: - dependency-name: next dependency-version: 15.5.9 dependency-type: direct:production ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Pin foundry to v1.5.0 instead of nightly (#947) * Include repo and extras in syncpack config to ensure deps are synced (#945) * Include repo and extras in syncpack config to ensure deps are synced across all * Updating support deps * Updating deps * Updating pnpm lock * Fixing type errors within wdk tests * Short circuit 404s (#949) * skip witness on signers that don't support it * add passkey to test * 3.0.0-beta.6 --------- Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Taylan Pince Co-authored-by: Corban Riley Co-authored-by: Agusx1211 * Update packages/wallet/wdk/test/wallets.test.ts Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update packages/wallet/wdk/test/wallets.test.ts Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> --------- Signed-off-by: dependabot[bot] Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Taylan Pince Co-authored-by: Corban Riley Co-authored-by: Agusx1211 Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> commit 802829cc116d9656dfb166beba03a1e77c8d556b Author: Dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Tue Dec 23 21:15:56 2025 +0700 2.3.7 (#131) (#132) * 2.3.7 (#131) * fix broken guard private key * Expose access to passkey credential list * Dapp client direct txn request (#856) * Signature request refactor * WIP * Refactor * Update dapp-client exports (#858) * Add hasPermission method to DappClient (#859) * Save discovered passkey credentials upon login * Expose name property in PasskeySignupArgs * Fix blacklist sort * Add multi server script * relayer: /SimulateV3 (#857) * Add await for handleOpenDB scheduleExpiration * Update increment to always include native once used * Fix session tests * Adding lastLoginAt to PasskeyCredential * LoginToPasskeyArgs now accept a credentialId which is used to specify which credential to use * Adding onSignatureRequestStatus function to register single use callbacks for when a request reaches a terminal state of completed or cancelled * When a login is cancelled we can remove the wallet which is logging-in * Add RC3 contracts * Sessions space restriction * Dedupe signers for encoding * Support RC3 sessions * Tightly increment call validation * CLI defaults to RC3 wallet code * Rc3 address test * Fix hashing tests * Add deprecated encoding test * wdk: throw errors from otp respond callback (#864) * wdk: throw errors from otp respond callback * wdk: otp auth error and handler refactor * Handle guard 2FA (#861) * guard: return a specific error when auth required * core: pass guard token to the service * wdk: handle prompting for guard 2FA code * dapp-client: handle prompting for guard 2FA code * guard 2fa tests * wdk: separate wallet and sessions guards * dapp-client: remove guard 2fa * dapp-client: fix imports * fix guard tests * wdk: remove unneeded promise resolve * Update relayer and api gen.ts, force public packages * Add standalone fetch queued payloads * Replacing GuardRole enum with string union type, as well as replacing guardAddresses Map with Record * Fallback to chain for non-logged in recovery * Add Katana, Sandbox Tesnet, Incentiv Testnet v2 (#873) * Update a few remaining dev1 contract addresses to rc3 (#874) * Remove unnecessary console.error where we already throw error * Improve DappClient hasPermission method * Wallet db try checksum and lowercase * Update dapp client json utils to include Map reviver and replacer * Bump next in the npm_and_yarn group across 1 directory Bumps the npm_and_yarn group with 1 update in the / directory: [next](https://github.com/vercel/next.js). Updates `next` from 15.4.2 to 15.4.7 - [Release notes](https://github.com/vercel/next.js/releases) - [Changelog](https://github.com/vercel/next.js/blob/canary/release.js) - [Commits](https://github.com/vercel/next.js/compare/v15.4.2...v15.4.7) --- updated-dependencies: - dependency-name: next dependency-version: 15.4.7 dependency-type: direct:production dependency-group: npm_and_yarn ... Signed-off-by: dependabot[bot] * Update type name, update exports for dapp client * Expired explicit sessions can't sign * Improve session validity test * session isValid returns invalid reason * InvalidReason is typed * Support multiple identity signers in sessions configuration * Device signers can approve implicit sessions * Remove invalid test * Fix recursion * Fix comment * Improve test stability by reducing race conditions * Do not set passkey signer as identity signer * Use length checks * Throw on missing identity signer * Encoding requires identity signer to encode * Fix test * Refactor/types namings tsdoc redundant code (#880) * refactor types, namings, ts doc * fix session response payload * change parameter name * change parameter name * change type in tests * improve types and dapp client methods * fix session test to use new types * refactor * refactor implicit sessions array in chain session manager * remove unused types * remove unused types and add ConnectionError * update pnpm lock * move reusable session types to wallet-core * Update some imports and update some response type names --------- Co-authored-by: Tolgahan Arikan * Fix check for explicit session for the updated type in dapp-client * Update api.gen.ts and relayer.gen.ts * Add missing chainId for dapp client event * Fix initializing new chain session manager on redirect * Add support for non-viem, custom Sequence chains (#882) * Update issue templates * Provider sent to prepareBlankEnvelope * Add session signature decoding * Add feeTokens endpoint to relayer (#885) * const for node length * Clearer blacklist size encoding * identity signer node length * Potential fix for code scanning alert no. 84: Insecure randomness Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> * add getFeeTokens to dapp client (#889) * add getFeeTokens to dapp client * fix typo * make getFeeTokens independent of chain session manager and initialize state (#890) * make getFeeTokens independent of chain session manager and initialized state * remove getFeeTokens from chain session manager * Throw specific error when trying to sign with an expired session (#887) * Throw when supported session signer is expired * Fix tests * Make dapp-client implicit sessions chain agnostic (#893) * Add Monad, remove LAOS and Root Network * Bump the npm_and_yarn group across 3 directories with 1 update Bumps the npm_and_yarn group with 1 update in the / directory: [happy-dom](https://github.com/capricorn86/happy-dom). Bumps the npm_and_yarn group with 1 update in the /packages/wallet/dapp-client directory: [happy-dom](https://github.com/capricorn86/happy-dom). Bumps the npm_and_yarn group with 1 update in the /packages/wallet/wdk directory: [happy-dom](https://github.com/capricorn86/happy-dom). Updates `happy-dom` from 17.6.3 to 20.0.0 - [Release notes](https://github.com/capricorn86/happy-dom/releases) - [Commits](https://github.com/capricorn86/happy-dom/compare/v17.6.3...v20.0.0) Updates `happy-dom` from 17.6.3 to 20.0.0 - [Release notes](https://github.com/capricorn86/happy-dom/releases) - [Commits](https://github.com/capricorn86/happy-dom/compare/v17.6.3...v20.0.0) Updates `happy-dom` from 17.6.3 to 20.0.0 - [Release notes](https://github.com/capricorn86/happy-dom/releases) - [Commits](https://github.com/capricorn86/happy-dom/compare/v17.6.3...v20.0.0) --- updated-dependencies: - dependency-name: happy-dom dependency-version: 20.0.0 dependency-type: direct:development dependency-group: npm_and_yarn - dependency-name: happy-dom dependency-version: 20.0.0 dependency-type: direct:development dependency-group: npm_and_yarn - dependency-name: happy-dom dependency-version: 20.0.0 dependency-type: direct:development dependency-group: npm_and_yarn ... Signed-off-by: dependabot[bot] * Bump happy-dom in the npm_and_yarn group across 1 directory (#69) Bumps the npm_and_yarn group with 1 update in the / directory: [happy-dom](https://github.com/capricorn86/happy-dom). Updates `happy-dom` from 20.0.0 to 20.0.2 - [Release notes](https://github.com/capricorn86/happy-dom/releases) - [Commits](https://github.com/capricorn86/happy-dom/compare/v20.0.0...v20.0.2) --- updated-dependencies: - dependency-name: happy-dom dependency-version: 20.0.2 dependency-type: direct:development dependency-group: npm_and_yarn ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Create SECURITY.md for security policy (#70) * Create SECURITY.md for security policy Add a security policy document outlining supported versions and vulnerability reporting. Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> * Update SECURITY.md Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> * Update SECURITY.md Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> --------- Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> * Update SECURITY.md Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> * Add support for sessionless dapp connection (#896) * Refactor relayer package & update dependant packages (#891) * refactor exports for relayer (#900) * Add Arc Testnet * Fix changelog config * Sessionless connection upgrade and error handling in DappClient (#902) * dapp-client: add sessionless snapshot restore flow * Bump the npm_and_yarn group across 3 directories with 1 update Bumps the npm_and_yarn group with 1 update in the / directory: [happy-dom](https://github.com/capricorn86/happy-dom). Bumps the npm_and_yarn group with 1 update in the /packages/wallet/dapp-client directory: [happy-dom](https://github.com/capricorn86/happy-dom). Bumps the npm_and_yarn group with 1 update in the /packages/wallet/wdk directory: [happy-dom](https://github.com/capricorn86/happy-dom). Updates `happy-dom` from 17.6.3 to 20.0.2 - [Release notes](https://github.com/capricorn86/happy-dom/releases) - [Commits](https://github.com/capricorn86/happy-dom/compare/v17.6.3...v20.0.2) Updates `happy-dom` from 17.6.3 to 20.0.2 - [Release notes](https://github.com/capricorn86/happy-dom/releases) - [Commits](https://github.com/capricorn86/happy-dom/compare/v17.6.3...v20.0.2) Updates `happy-dom` from 17.6.3 to 20.0.2 - [Release notes](https://github.com/capricorn86/happy-dom/releases) - [Commits](https://github.com/capricorn86/happy-dom/compare/v17.6.3...v20.0.2) --- updated-dependencies: - dependency-name: happy-dom dependency-version: 20.0.2 dependency-type: direct:development dependency-group: npm_and_yarn - dependency-name: happy-dom dependency-version: 20.0.2 dependency-type: direct:development dependency-group: npm_and_yarn - dependency-name: happy-dom dependency-version: 20.0.2 dependency-type: direct:development dependency-group: npm_and_yarn ... Signed-off-by: dependabot[bot] * Allow to logout a wallet with skipRemoveDevice even if the wallet is not in a ready state to allow force removing of wallets (#906) * Pass request to PromptCodeHandler in guard registerUI (#909) * Pass request to PromptCodeHandler in guard registerUI * Fixing guard registerUI test * guard: allow using recovery code as 2FA token (#910) * guard: allow using recovery code as 2FA token * Cleanup types of ResponseFn --------- Co-authored-by: Corban Riley * Add a way to reset 2fa when using a backup code (#911) * Add a way to reset 2fa when using a backup code * use the GuardToken type instead of breaking out the props * Update SECURITY.md Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update packages/wallet/dapp-client/src/DappTransport.ts Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update package.json Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update SECURITY.md Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update wagmi-project/package.json Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update wagmi-project/package.json Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update wagmi-project/src/App.tsx Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Create FUNDING.json (#90) Enhancements: Include FUNDING.json to display GitHub sponsorship options in the repository Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Create config.yml (#91) Add initial CircleCI configuration to enable automated builds using a custom Docker executor and a defined workflow. Build: Add .circleci/config.yml with version 2.1 specification and custom Docker executor. CI: Define web3-defi-game-project job with checkout step. Set up my-custom-workflow to run the job. Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Add rc4 contracts * Set rc4 as default and add it to lists * Session enhanced replay protection * New sessions replay protection hashes payload * Use the 4337 factory wrapper * Update keymachine url in dapp-client constants * Update keymachine url in Provider constructor * SSR safety (#915) * SSR safety test * Fix CI job * Guard dapp-client for SSR (lazy transport, browser checks, gated storage) * Fix guard topology (#918) * Use proper guard topology * Test and fixes * login and setup tests * Switch prod manager settings (#917) * Add prod guard and identity instrument info * Remove completed TODOs * Small JS tweaks (#919) * Fix type exports to built declarations * Update repository links to current package paths * Improve Next app tooling and React typings * Expose primitives CLI bin and use base lint config * Update relayer.gen.ts and TransactionPrecondition interface * Update api.gen.ts * Update metadata.gen.ts * Update marketplace.gen.ts * Update guard.gen.ts * Support multiple identity signers in sessions configuration * Device signers can approve implicit sessions * Remove invalid test * Fix recursion * Fix comment * Improve test stability by reducing race conditions * Do not set passkey signer as identity signer * Use length checks * Throw on missing identity signer * Encoding requires identity signer to encode * Fix test * Refactor/types namings tsdoc redundant code (#880) * refactor types, namings, ts doc * fix session response payload * change parameter name * change parameter name * change type in tests * improve types and dapp client methods * fix session test to use new types * refactor * refactor implicit sessions array in chain session manager * remove unused types * remove unused types and add ConnectionError * update pnpm lock * move reusable session types to wallet-core * Update some imports and update some response type names --------- Co-authored-by: Tolgahan Arikan * Fix check for explicit session for the updated type in dapp-client * Update api.gen.ts and relayer.gen.ts * Add missing chainId for dapp client event * Fix initializing new chain session manager on redirect * Add support for non-viem, custom Sequence chains (#882) * Provider sent to prepareBlankEnvelope * Add session signature decoding * const for node length * Clearer blacklist size encoding * identity signer node length * Add feeTokens endpoint to relayer (#885) * add getFeeTokens to dapp client (#889) * add getFeeTokens to dapp client * fix typo * make getFeeTokens independent of chain session manager and initialize state (#890) * make getFeeTokens independent of chain session manager and initialized state * remove getFeeTokens from chain session manager * Throw specific error when trying to sign with an expired session (#887) * Throw when supported session signer is expired * Fix tests * Make dapp-client implicit sessions chain agnostic (#893) * Add Monad, remove LAOS and Root Network * Add support for sessionless dapp connection (#896) * Refactor relayer package & update dependant packages (#891) * refactor exports for relayer (#900) * Add Arc Testnet * Fix changelog config * Sessionless connection upgrade and error handling in DappClient (#902) * dapp-client: add sessionless snapshot restore flow * Allow to logout a wallet with skipRemoveDevice even if the wallet is not in a ready state to allow force removing of wallets (#906) * Pass request to PromptCodeHandler in guard registerUI (#909) * Pass request to PromptCodeHandler in guard registerUI * Fixing guard registerUI test * guard: allow using recovery code as 2FA token (#910) * guard: allow using recovery code as 2FA token * Cleanup types of ResponseFn --------- Co-authored-by: Corban Riley * Add a way to reset 2fa when using a backup code (#911) * Add a way to reset 2fa when using a backup code * use the GuardToken type instead of breaking out the props * Add rc4 contracts * Set rc4 as default and add it to lists * Session enhanced replay protection * New sessions replay protection hashes payload * Use the 4337 factory wrapper * Update keymachine url in dapp-client constants * Update keymachine url in Provider constructor * SSR safety (#915) * Guard dapp-client for SSR (lazy transport, browser checks, gated storage) * Fix guard topology (#918) * Use proper guard topology * Test and fixes * login and setup tests * Switch prod manager settings (#917) * Add prod guard and identity instrument info * Remove completed TODOs * Small JS tweaks (#919) * Fix type exports to built declarations * Update repository links to current package paths * Improve Next app tooling and React typings * Expose primitives CLI bin and use base lint config * Update relayer.gen.ts and TransactionPrecondition interface * Update relayer.gen.ts and TransactionPrecondition interface (#920) * 3.0.0-beta.1 * identity-instrument: generate nonce from current time (#921) * Remove publish-dists.yml github action (#923) * 3.0.0-beta.2 * Clean up changeset config * Improve test stability by removing race conditions * Ensure build before test * Updating happy-dom to 20.0.10 (#926) * Add support for custom auth providers (authcode & authcode-pkce only) (#894) * Add support for custom auth providers (authcode & authcode-pkce only) * fix authcode tests * Updating Deps November 2025 (#927) * Updating deps for the workspace root * Updating deps for wallet/wdk * Fixing sessions test for latest vitest * Lets not upgrade to the latest typescript quite yet * Updating to latest vitest * Updating deps for wallet/core * Updating deps for wallet/primitives-cli * Updating deps for wallet/dapp-client * Adding syncpack to check for dep version inconsistencies * Setup syncpack versionGroups for pnpm workspace:^ * Fixing dep versions mismatches * Fixing @types/node mismatches * Adding syncpack to pre commit hook * Remove the syncpack format script. * Update ox to v9.17.0 (#928) * Upgrading ox to 9.17.0 * WrappedSignature renamed to SignatureErc6492 * Fixing PasskeySignatureValidator interface * Lock ox lib dep to use the same version with pnpm overrides and update viem to latest * Fix explicitSessionRequested check in dapp client * Typescript 5.9.3 (#930) * Upgrading to typescript v5.9.3 * Fix type errors that arose from typescript upgrade related to Bytes and Buffer source typings. * Don't catch errors thrown by Guard 2FA or reject early to allow multiple attempts on incorrect TOTP (#931) * Update pnpm * Mark @0xsequence/wallet-primitives-cli as private * 3.0.0-beta.3 * changeset cleanup * Fix rc4 4337 factory (#933) * Add rc5 and set it as default (#934) * 3.0.0-beta.4 * Update SECURITY.md Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update wagmi-project/package.json Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update wagmi-project/package.json Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Bump next from 15.5.5 to 15.5.7 (#936) Bumps [next](https://github.com/vercel/next.js) from 15.5.5 to 15.5.7. - [Release notes](https://github.com/vercel/next.js/releases) - [Changelog](https://github.com/vercel/next.js/blob/canary/release.js) - [Commits](https://github.com/vercel/next.js/compare/v15.5.5...v15.5.7) --- updated-dependencies: - dependency-name: next dependency-version: 15.5.7 dependency-type: direct:production ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * add userdata service client (#940) * Skip LocalDevice identity signers not on current device (#942) * Skip LocalDevice identity signers not on current device * Update log * 3.0.0-beta.5 * Update config.yml (#102) * Update config.yml Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update .circleci/config.yml Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> --------- Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com> * Update config.yml (#103) * Update config.yml Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update .circleci/config.yml Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> --------- Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com> * fix: extras/web/package.json to reduce vulnerabilities (#101) The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JS-NEXT-14173355 Co-authored-by: snyk-io[bot] <141718529+snyk-io[bot]@users.noreply.github.com> * fix: extras/docs/package.json to reduce vulnerabilities (#100) The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JS-NEXT-14173355 Co-authored-by: snyk-io[bot] <141718529+snyk-io[bot]@users.noreply.github.com> * fix: package.json to reduce vulnerabilities (#104) The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JS-BABELHELPERS-9397697 - https://snyk.io/vuln/SNYK-JS-BABELRUNTIME-10044504 - https://snyk.io/vuln/SNYK-JS-BRACEEXPANSION-9789073 - https://snyk.io/vuln/SNYK-JS-CROSSSPAWN-8303230 - https://snyk.io/vuln/SNYK-JS-ELLIPTIC-7577916 - https://snyk.io/vuln/SNYK-JS-ELLIPTIC-7577917 - https://snyk.io/vuln/SNYK-JS-ELLIPTIC-7577918 - https://snyk.io/vuln/SNYK-JS-ELLIPTIC-8187303 - https://snyk.io/vuln/SNYK-JS-ELLIPTIC-8720086 - https://snyk.io/vuln/SNYK-JS-IMAGESIZE-9634164 - https://snyk.io/vuln/SNYK-JS-INFLIGHT-6095116 - https://snyk.io/vuln/SNYK-JS-JSYAML-13961110 - https://snyk.io/vuln/SNYK-JS-MICROMATCH-6838728 - https://snyk.io/vuln/SNYK-JS-NODEFORGE-14114940 - https://snyk.io/vuln/SNYK-JS-NODEFORGE-14125097 - https://snyk.io/vuln/SNYK-JS-NODEFORGE-14125745 - https://snyk.io/vuln/SNYK-JS-ONHEADERS-10773729 - https://snyk.io/vuln/SNYK-JS-ROLLUP-8073097 - https://snyk.io/vuln/SNYK-JS-SECP256K1-8237220 - https://snyk.io/vuln/SNYK-JS-SEND-7926862 - https://snyk.io/vuln/SNYK-JS-SERVESTATIC-7926865 - https://snyk.io/vuln/SNYK-JS-SHAJS-12089400 Co-authored-by: snyk-io[bot] <141718529+snyk-io[bot]@users.noreply.github.com> * Revert "Merge remote-tracking branch 'origin/dependabot/npm_and_yarn/npm_and_yarn-318c02e2da'" This reverts commit fd0fdf9ecc6ad9056447e381de7fc5bb19f78e47, reversing changes made to cba78943db9942a4635bb530b7a43fc5d18b0ab4. * fix: extras/web/package.json to reduce vulnerabilities (#109) The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JS-NEXT-14173355 Co-authored-by: snyk-bot * fix: extras/docs/package.json to reduce vulnerabilities (#106) The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JS-NEXT-14400636 - https://snyk.io/vuln/SNYK-JS-NEXT-14400644 Co-authored-by: snyk-bot * Bump next in the npm_and_yarn group across 1 directory (#110) Bumps the npm_and_yarn group with 1 update in the / directory: [next](https://github.com/vercel/next.js). Updates `next` from 15.5.7 to 15.5.9 - [Release notes](https://github.com/vercel/next.js/releases) - [Changelog](https://github.com/vercel/next.js/blob/canary/release.js) - [Commits](https://github.com/vercel/next.js/compare/v15.5.7...v15.5.9) --- updated-dependencies: - dependency-name: next dependency-version: 15.5.9 dependency-type: direct:production dependency-group: npm_and_yarn ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Delete .github/workflows/fortify.yml (#111) Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * fix: extras/web/package.json to reduce vulnerabilities (#107) The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JS-NEXT-14400636 - https://snyk.io/vuln/SNYK-JS-NEXT-14400644 Co-authored-by: snyk-bot * Bump the npm_and_yarn group across 1 directory with 3 updates (#115) Bumps the npm_and_yarn group with 1 update in the / directory: [next](https://github.com/vercel/next.js). Updates `next` from 15.5.5 to 15.5.9 - [Release notes](https://github.com/vercel/next.js/releases) - [Changelog](https://github.com/vercel/next.js/blob/canary/release.js) - [Commits](https://github.com/vercel/next.js/compare/v15.5.5...v15.5.9) Updates `happy-dom` from 17.6.3 to 20.0.11 - [Release notes](https://github.com/capricorn86/happy-dom/releases) - [Commits](https://github.com/capricorn86/happy-dom/compare/v17.6.3...v20.0.11) Updates `vite` from 7.1.10 to 7.2.7 - [Release notes](https://github.com/vitejs/vite/releases) - [Changelog](https://github.com/vitejs/vite/blob/v7.2.7/packages/vite/CHANGELOG.md) - [Commits](https://github.com/vitejs/vite/commits/v7.2.7/packages/vite) --- updated-dependencies: - dependency-name: next dependency-version: 15.5.9 dependency-type: direct:production dependency-group: npm_and_yarn - dependency-name: happy-dom dependency-version: 20.0.11 dependency-type: direct:development dependency-group: npm_and_yarn - dependency-name: vite dependency-version: 7.2.7 dependency-type: indirect dependency-group: npm_and_yarn ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Bump next from 15.5.7 to 15.5.9 (#944) Bumps [next](https://github.com/vercel/next.js) from 15.5.7 to 15.5.9. - [Release notes](https://github.com/vercel/next.js/releases) - [Changelog](https://github.com/vercel/next.js/blob/canary/release.js) - [Commits](https://github.com/vercel/next.js/compare/v15.5.7...v15.5.9) --- updated-dependencies: - dependency-name: next dependency-version: 15.5.9 dependency-type: direct:production ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Pin foundry to v1.5.0 instead of nightly (#947) * Include repo and extras in syncpack config to ensure deps are synced (#945) * Include repo and extras in syncpack config to ensure deps are synced across all * Updating support deps * Updating deps * Updating pnpm lock * Fixing type errors within wdk tests * Short circuit 404s (#949) * skip witness on signers that don't support it * add passkey to test * 3.0.0-beta.6 * Update tests.yml (#119) Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update config.yml (#120) Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update packages/services/identity-instrument/src/index.ts Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * feat: upgrade @wagmi/cli from 0.1.15 to 2.8.0 (#126) Snyk has created this PR to upgrade @wagmi/cli from 0.1.15 to 2.8.0. See this package in npm: @wagmi/cli See this project in Snyk: https://app.snyk.io/org/dargon789/project/bb845543-cbee-4e11-8cf9-8bfdf9205bf1?utm_source=github&utm_medium=referral&page=upgrade-pr Co-authored-by: snyk-bot * Potential fix for code scanning alert no. 82: Workflow does not contain permissions Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Potential fix for code scanning alert no. 62: Information exposure through a stack trace Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> --------- Signed-off-by: dependabot[bot] Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> Co-authored-by: Patryk Kalinowski Co-authored-by: Corban Riley Co-authored-by: tolgahan-arikan Co-authored-by: Agusx1211 Co-authored-by: Michael Standen Co-authored-by: William Hua Co-authored-by: Michael Standen Co-authored-by: Patryk Kalinowski Co-authored-by: Taylan Pince Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Gabi <56271768+VGabriel45@users.noreply.github.com> Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com> Co-authored-by: snyk-io[bot] <141718529+snyk-io[bot]@users.noreply.github.com> Co-authored-by: snyk-bot * Update extras/docs/package.json Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update extras/web/package.json Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> --------- Signed-off-by: dependabot[bot] Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> Co-authored-by: Patryk Kalinowski Co-authored-by: Corban Riley Co-authored-by: tolgahan-arikan Co-authored-by: Agusx1211 Co-authored-by: Michael Standen Co-authored-by: William Hua Co-authored-by: Michael Standen Co-authored-by: Patryk Kalinowski Co-authored-by: Taylan Pince Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Gabi <56271768+VGabriel45@users.noreply.github.com> Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com> Co-authored-by: snyk-io[bot] <141718529+snyk-io[bot]@users.noreply.github.com> Co-authored-by: snyk-bot commit 893eedbb1a99db6736a157fed7d73a0196f30778 Merge: bc418b171 7fe4a922d Author: dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Tue Dec 23 18:50:09 2025 +0700 Merge remote-tracking branch 'origin/v1' into v1 commit 7fe4a922dfbd817fa76b8e30e9be184e6f38ddb1 Author: Dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Tue Dec 23 18:16:10 2025 +0700 Update wagmi-project/src/App.tsx Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> commit 640be8ffe175c762828aded47cc76e8d2c404b56 Author: Dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Tue Dec 23 18:15:48 2025 +0700 Update wagmi-project/src/App.tsx Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> commit 51a64321d3c0b91c9bd43c1e7e693f974c045dbb Author: Dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Tue Dec 23 18:15:24 2025 +0700 Update wagmi-project/src/App.tsx Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> commit 28a268eef9f36a4bcf257d175c49c31f55f8008b Author: Dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Tue Dec 23 18:14:59 2025 +0700 Update wagmi-project/src/App.tsx Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> commit bc418b171da95091d834f3a21141780169818db3 Author: Dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Tue Dec 23 00:27:24 2025 +0700 Master ceb95d4 (#129) * Update issue templates (#128) * Bump the npm_and_yarn group across 1 directory with 1 update Bumps the npm_and_yarn group with 1 update in the / directory: [express](https://github.com/expressjs/express). Updates `express` from 4.18.2 to 4.19.2 - [Release notes](https://github.com/expressjs/express/releases) - [Changelog](https://github.com/expressjs/express/blob/master/History.md) - [Commits](https://github.com/expressjs/express/compare/4.18.2...4.19.2) --- updated-dependencies: - dependency-name: express dependency-type: direct:development dependency-group: npm_and_yarn-security-group ... Signed-off-by: dependabot[bot] * Create SECURITY.md * Set up CI with Azure Pipelines [skip ci] * Create CNAME * Create fortify.yml * Update issue templates * Update CNAME * fix: upgrade @tanstack/react-query from 5.45.1 to 5.64.2 Snyk has created this PR to upgrade @tanstack/react-query from 5.45.1 to 5.64.2. See this package in npm: @tanstack/react-query See this project in Snyk: https://app.snyk.io/org/dargon789/project/bb845543-cbee-4e11-8cf9-8bfdf9205bf1?utm_source=github&utm_medium=referral&page=upgrade-pr * Create config.yml (#46) Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> * Support multiple identity signers in sessions configuration * Device signers can approve implicit sessions * Remove invalid test * Fix recursion * Fix comment * Improve test stability by reducing race conditions * Do not set passkey signer as identity signer * Use length checks * Throw on missing identity signer * Encoding requires identity signer to encode * Fix test * Refactor/types namings tsdoc redundant code (#880) * refactor types, namings, ts doc * fix session response payload * change parameter name * change parameter name * change type in tests * improve types and dapp client methods * fix session test to use new types * refactor * refactor implicit sessions array in chain session manager * remove unused types * remove unused types and add ConnectionError * update pnpm lock * move reusable session types to wallet-core * Update some imports and update some response type names --------- Co-authored-by: Tolgahan Arikan * Fix check for explicit session for the updated type in dapp-client * Update api.gen.ts and relayer.gen.ts * Add missing chainId for dapp client event * Fix initializing new chain session manager on redirect * Add support for non-viem, custom Sequence chains (#882) * Provider sent to prepareBlankEnvelope * Update fortify.yml Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> * Add session signature decoding * Add feeTokens endpoint to relayer (#885) * const for node length * Clearer blacklist size encoding * identity signer node length * add getFeeTokens to dapp client (#889) * add getFeeTokens to dapp client * fix typo * make getFeeTokens independent of chain session manager and initialize state (#890) * make getFeeTokens independent of chain session manager and initialized state * remove getFeeTokens from chain session manager * Throw specific error when trying to sign with an expired session (#887) * Throw when supported session signer is expired * Fix tests * Make dapp-client implicit sessions chain agnostic (#893) * Add Monad, remove L… * Potential fix for code scanning alert no. 61: Cross-window communication with unrestricted target origin Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Bump the npm_and_yarn group across 2 directories with 25 updates (#177) Bumps the npm_and_yarn group with 11 updates in the /lib/signals-implicit-mode/lib/sequence-v3/lib/account-abstraction directory: | Package | From | To | | --- | --- | --- | | [express](https://github.com/expressjs/express) | `4.18.2` | `4.22.1` | | [base-x](https://github.com/cryptocoinjs/base-x) | `3.0.9` | `3.0.11` | | [cipher-base](https://github.com/crypto-browserify/cipher-base) | `1.0.4` | `1.0.7` | | [follow-redirects](https://github.com/follow-redirects/follow-redirects) | `1.15.3` | `1.15.11` | | [min-document](https://github.com/Raynos/min-document) | `2.19.0` | `2.19.2` | | [pbkdf2](https://github.com/browserify/pbkdf2) | `3.1.2` | `3.1.5` | | [secp256k1](https://github.com/cryptocoinjs/secp256k1-node) | `4.0.3` | `4.0.4` | | [sha.js](https://github.com/crypto-browserify/sha.js) | `2.4.11` | `2.4.12` | | [undici](https://github.com/nodejs/undici) | `5.26.3` | `5.29.0` | | [@openzeppelin/contracts](https://github.com/OpenZeppelin/openzeppelin-contracts) | `5.0.0` | `5.0.2` | | [browserify-sign](https://github.com/crypto-browserify/browserify-sign) | `4.2.1` | `4.2.5` | Bumps the npm_and_yarn group with 11 updates in the /lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts directory: | Package | From | To | | --- | --- | --- | | [axios](https://github.com/axios/axios) | `1.7.4` | `1.13.2` | | [base-x](https://github.com/cryptocoinjs/base-x) | `3.0.9` | `3.0.11` | | [brace-expansion](https://github.com/juliangruber/brace-expansion) | `1.1.11` | `1.1.12` | | [cipher-base](https://github.com/crypto-browserify/cipher-base) | `1.0.4` | `1.0.7` | | [glob](https://github.com/isaacs/node-glob) | `11.0.0` | `11.1.0` | | [glob](https://github.com/isaacs/node-glob) | `10.4.5` | `10.5.0` | | [js-yaml](https://github.com/nodeca/js-yaml) | `3.14.1` | `3.14.2` | | [micromatch](https://github.com/micromatch/micromatch) | `4.0.5` | `4.0.8` | | [nanoid](https://github.com/ai/nanoid) | `3.3.3` | `removed` | | [pbkdf2](https://github.com/browserify/pbkdf2) | `3.1.2` | `3.1.5` | | [undici](https://github.com/nodejs/undici) | `5.28.4` | `5.29.0` | | [undici](https://github.com/nodejs/undici) | `6.12.0` | `6.23.0` | | [ws](https://github.com/websockets/ws) | `7.5.9` | `7.5.10` | Updates `form-data` from 2.3.3 to 4.0.2 - [Release notes](https://github.com/form-data/form-data/releases) - [Changelog](https://github.com/form-data/form-data/blob/master/CHANGELOG.md) - [Commits](https://github.com/form-data/form-data/commits/v4.0.2) Updates `qs` from 6.5.3 to 6.13.0 - [Changelog](https://github.com/ljharb/qs/blob/main/CHANGELOG.md) - [Commits](https://github.com/ljharb/qs/compare/v6.5.3...v6.13.0) Updates `undici` from 5.28.5 to 5.28.4 - [Release notes](https://github.com/nodejs/undici/releases) - [Commits](https://github.com/nodejs/undici/compare/v5.26.3...v5.29.0) Updates `vite` from 5.4.14 to 7.3.0 - [Release notes](https://github.com/vitejs/vite/releases) - [Changelog](https://github.com/vitejs/vite/blob/v7.3.0/packages/vite/CHANGELOG.md) - [Commits](https://github.com/vitejs/vite/commits/v7.3.0/packages/vite) Updates `express` from 4.18.2 to 4.22.1 - [Release notes](https://github.com/expressjs/express/releases) - [Changelog](https://github.com/expressjs/express/blob/v4.22.1/History.md) - [Commits](https://github.com/expressjs/express/compare/4.18.2...v4.22.1) Updates `base-x` from 3.0.9 to 3.0.11 - [Commits](https://github.com/cryptocoinjs/base-x/compare/v3.0.9...v3.0.11) Updates `body-parser` from 1.20.1 to 1.20.2 - [Release notes](https://github.com/expressjs/body-parser/releases) - [Changelog](https://github.com/expressjs/body-parser/blob/master/HISTORY.md) - [Commits](https://github.com/expressjs/body-parser/compare/1.20.1...1.20.2) Updates `cipher-base` from 1.0.4 to 1.0.7 - [Changelog](https://github.com/browserify/cipher-base/blob/master/CHANGELOG.md) - [Commits](https://github.com/crypto-browserify/cipher-base/compare/v1.0.4...v1.0.7) Updates `follow-redirects` from 1.15.3 to 1.15.11 - [Release notes](https://github.com/follow-redirects/follow-redirects/releases) - [Commits](https://github.com/follow-redirects/follow-redirects/compare/v1.15.3...v1.15.11) Updates `min-document` from 2.19.0 to 2.19.2 - [Commits](https://github.com/Raynos/min-document/compare/v2.19.0...v2.19.2) Updates `pbkdf2` from 3.1.2 to 3.1.5 - [Changelog](https://github.com/browserify/pbkdf2/blob/master/CHANGELOG.md) - [Commits](https://github.com/browserify/pbkdf2/compare/v3.1.2...v3.1.5) Updates `secp256k1` from 4.0.3 to 4.0.4 - [Release notes](https://github.com/cryptocoinjs/secp256k1-node/releases) - [Commits](https://github.com/cryptocoinjs/secp256k1-node/compare/v4.0.3...v4.0.4) Updates `send` from 0.18.0 to 0.19.2 - [Release notes](https://github.com/pillarjs/send/releases) - [Changelog](https://github.com/pillarjs/send/blob/master/HISTORY.md) - [Commits](https://github.com/pillarjs/send/compare/0.18.0...0.19.2) Updates `serve-static` from 1.15.0 to 1.16.3 - [Release notes](https://github.com/expressjs/serve-static/releases) - [Changelog](https://github.com/expressjs/serve-static/blob/master/HISTORY.md) - [Commits](https://github.com/expressjs/serve-static/compare/v1.15.0...v1.16.3) Updates `sha.js` from 2.4.11 to 2.4.12 - [Changelog](https://github.com/browserify/sha.js/blob/master/CHANGELOG.md) - [Commits](https://github.com/crypto-browserify/sha.js/compare/v2.4.11...v2.4.12) Updates `undici` from 5.26.3 to 5.29.0 - [Release notes](https://github.com/nodejs/undici/releases) - [Commits](https://github.com/nodejs/undici/compare/v5.26.3...v5.29.0) Updates `@openzeppelin/contracts` from 5.0.0 to 5.0.2 - [Release notes](https://github.com/OpenZeppelin/openzeppelin-contracts/releases) - [Changelog](https://github.com/OpenZeppelin/openzeppelin-contracts/blob/master/CHANGELOG.md) - [Commits](https://github.com/OpenZeppelin/openzeppelin-contracts/compare/v5.0.0...v5.0.2) Updates `browserify-sign` from 4.2.1 to 4.2.5 - [Changelog](https://github.com/browserify/browserify-sign/blob/main/CHANGELOG.md) - [Commits](https://github.com/crypto-browserify/browserify-sign/compare/v4.2.1...v4.2.5) Updates `axios` from 1.7.4 to 1.13.2 - [Release notes](https://github.com/axios/axios/releases) - [Changelog](https://github.com/axios/axios/blob/v1.x/CHANGELOG.md) - [Commits](https://github.com/axios/axios/compare/v1.7.4...v1.13.2) Updates `base-x` from 3.0.9 to 3.0.11 - [Commits](https://github.com/cryptocoinjs/base-x/compare/v3.0.9...v3.0.11) Updates `brace-expansion` from 1.1.11 to 1.1.12 - [Release notes](https://github.com/juliangruber/brace-expansion/releases) - [Commits](https://github.com/juliangruber/brace-expansion/compare/1.1.11...v1.1.12) Updates `cipher-base` from 1.0.4 to 1.0.7 - [Changelog](https://github.com/browserify/cipher-base/blob/master/CHANGELOG.md) - [Commits](https://github.com/crypto-browserify/cipher-base/compare/v1.0.4...v1.0.7) Updates `form-data` from 4.0.0 to 4.0.5 - [Release notes](https://github.com/form-data/form-data/releases) - [Changelog](https://github.com/form-data/form-data/blob/master/CHANGELOG.md) - [Commits](https://github.com/form-data/form-data/commits/v4.0.2) Updates `glob` from 11.0.0 to 11.1.0 - [Changelog](https://github.com/isaacs/node-glob/blob/main/changelog.md) - [Commits](https://github.com/isaacs/node-glob/compare/v11.0.0...v11.1.0) Updates `glob` from 10.4.5 to 10.5.0 - [Changelog](https://github.com/isaacs/node-glob/blob/main/changelog.md) - [Commits](https://github.com/isaacs/node-glob/compare/v11.0.0...v11.1.0) Updates `js-yaml` from 3.14.1 to 3.14.2 - [Changelog](https://github.com/nodeca/js-yaml/blob/master/CHANGELOG.md) - [Commits](https://github.com/nodeca/js-yaml/compare/3.14.1...3.14.2) Updates `micromatch` from 4.0.5 to 4.0.8 - [Release notes](https://github.com/micromatch/micromatch/releases) - [Changelog](https://github.com/micromatch/micromatch/blob/master/CHANGELOG.md) - [Commits](https://github.com/micromatch/micromatch/compare/4.0.5...4.0.8) Removes `nanoid` Updates `pbkdf2` from 3.1.2 to 3.1.5 - [Changelog](https://github.com/browserify/pbkdf2/blob/master/CHANGELOG.md) - [Commits](https://github.com/browserify/pbkdf2/compare/v3.1.2...v3.1.5) Updates `serialize-javascript` from 6.0.0 to 6.0.2 - [Release notes](https://github.com/yahoo/serialize-javascript/releases) - [Commits](https://github.com/yahoo/serialize-javascript/compare/v6.0.0...v6.0.2) Updates `sha.js` from 2.4.11 to 2.4.12 - [Changelog](https://github.com/browserify/sha.js/blob/master/CHANGELOG.md) - [Commits](https://github.com/crypto-browserify/sha.js/compare/v2.4.11...v2.4.12) Updates `undici` from 5.28.4 to 5.29.0 - [Release notes](https://github.com/nodejs/undici/releases) - [Commits](https://github.com/nodejs/undici/compare/v5.26.3...v5.29.0) Updates `undici` from 6.12.0 to 6.23.0 - [Release notes](https://github.com/nodejs/undici/releases) - [Commits](https://github.com/nodejs/undici/compare/v5.26.3...v5.29.0) Updates `ws` from 7.5.9 to 7.5.10 - [Release notes](https://github.com/websockets/ws/releases) - [Commits](https://github.com/websockets/ws/compare/7.5.9...7.5.10) --- updated-dependencies: - dependency-name: form-data dependency-version: 4.0.2 dependency-type: indirect dependency-group: npm_and_yarn - dependency-name: qs dependency-version: 6.13.0 dependency-type: indirect dependency-group: npm_and_yarn - dependency-name: undici dependency-version: 5.28.4 dependency-type: indirect dependency-group: npm_and_yarn - dependency-name: vite dependency-version: 7.3.0 dependency-type: indirect dependency-group: npm_and_yarn - dependency-name: express dependency-version: 4.22.1 dependency-type: indirect dependency-group: npm_and_yarn - dependency-name: base-x dependency-version: 3.0.11 dependency-type: indirect dependency-group: npm_and_yarn - dependency-name: body-parser dependency-version: 1.20.2 dependency-type: indirect dependency-group: npm_and_yarn - dependency-name: cipher-base dependency-version: 1.0.7 dependency-type: indirect dependency-group: npm_and_yarn - dependency-name: follow-redirects dependency-version: 1.15.11 dependency-type: indirect dependency-group: npm_and_yarn - dependency-name: min-document dependency-version: 2.19.2 dependency-type: indirect dependency-group: npm_and_yarn - dependency-name: pbkdf2 dependency-version: 3.1.5 dependency-type: indirect dependency-group: npm_and_yarn - dependency-name: secp256k1 dependency-version: 4.0.4 dependency-type: indirect dependency-group: npm_and_yarn - dependency-name: send dependency-version: 0.19.2 dependency-type: indirect dependency-group: npm_and_yarn - dependency-name: serve-static dependency-version: 1.16.3 dependency-type: indirect dependency-group: npm_and_yarn - dependency-name: sha.js dependency-version: 2.4.12 dependency-type: indirect dependency-group: npm_and_yarn - dependency-name: undici dependency-version: 5.29.0 dependency-type: indirect dependency-group: npm_and_yarn - dependency-name: "@openzeppelin/contracts" dependency-version: 5.0.2 dependency-type: direct:production dependency-group: npm_and_yarn - dependency-name: browserify-sign dependency-version: 4.2.5 dependency-type: indirect dependency-group: npm_and_yarn - dependency-name: axios dependency-version: 1.13.2 dependency-type: indirect dependency-group: npm_and_yarn - dependency-name: base-x dependency-version: 3.0.11 dependency-type: indirect dependency-group: npm_and_yarn - dependency-name: brace-expansion dependency-version: 1.1.12 dependency-type: indirect dependency-group: npm_and_yarn - dependency-name: cipher-base dependency-version: 1.0.7 dependency-type: indirect dependency-group: npm_and_yarn - dependency-name: form-data dependency-version: 4.0.5 dependency-type: indirect dependency-group: npm_and_yarn - dependency-name: glob dependency-version: 11.1.0 dependency-type: direct:development dependency-group: npm_and_yarn - dependency-name: glob dependency-version: 10.5.0 dependency-type: indirect dependency-group: npm_and_yarn - dependency-name: js-yaml dependency-version: 3.14.2 dependency-type: indirect dependency-group: npm_and_yarn - dependency-name: micromatch dependency-version: 4.0.8 dependency-type: direct:development dependency-group: npm_and_yarn - dependency-name: nanoid dependency-version: dependency-type: indirect dependency-group: npm_and_yarn - dependency-name: pbkdf2 dependency-version: 3.1.5 dependency-type: indirect dependency-group: npm_and_yarn - dependency-name: serialize-javascript dependency-version: 6.0.2 dependency-type: indirect dependency-group: npm_and_yarn - dependency-name: sha.js dependency-version: 2.4.12 dependency-type: indirect dependency-group: npm_and_yarn - dependency-name: undici dependency-version: 5.29.0 dependency-type: indirect dependency-group: npm_and_yarn - dependency-name: undici dependency-version: 6.23.0 dependency-type: direct:development dependency-group: npm_and_yarn - dependency-name: ws dependency-version: 7.5.10 dependency-type: indirect dependency-group: npm_and_yarn ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Potential fix for code scanning alert no. 73: Workflow does not contain permissions Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update lib/signals-implicit-mode/foundry.toml Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * demo dapp (#191) (#192) * Revise security policy for reporting vulnerabilities (#173) * Revise security policy for reporting vulnerabilities Updated contact information for vulnerability reporting. https://github.com/Dargon789/sequence.js/commit/e90b2e6395fb14c6463a02e88f65dc23ce455d6d * Update SECURITY.md --------- * V2 (#174) * Updating DefaultGuest address * Update tests.yml (#51) * Update tests.yml (#52) * Update tests.yml * Update tests.yml (#55) * Update tests.yml (#56) * Update tests.yml --------- * Create web-sdk.yml (#175) https://github.com/Dargon789/Web3-Onboard/commit/fb66abf9ef6c55706a1dab2198db715f2588f1d1 https://github.com/Dargon789/web-sdk/commit/d26f62241ed85e6108a481f7a74ba7573c6c4c95 * sequence-core-dapp-1.0.0 * Create nextjs.yml (#176) CI: Introduce a Next.js GitHub Actions workflow that detects the package manager, builds the app, caches Next.js artifacts, and deploys the static output to GitHub Pages. * Update config.json (#185) * Potential fix for code scanning alert no. 108: Incomplete regular expression for hostnames (#186) * Potential fix for code scanning alert no. 108: Incomplete regular expression for hostnames * Update lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/certora/run.js --------- * 0xsequence 1.9.19 (#179) * 1.9.17 * Update packages/0xsequence/CHANGELOG.md * Update packages/account/CHANGELOG.md * Update packages/auth/CHANGELOG.md * Update packages/multicall/CHANGELOG.md * Update packages/provider/CHANGELOG.md * Update packages/wallet/CHANGELOG.md * 1.9.19 * Update packages/waas/src/networks.ts * Squashed commit of the following: commit dafd2eda59d728355ab9028d03b0e10b014f2818 Author: Dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Wed Jan 7 06:30:16 2026 +0700 Create nextjs.yml (#176) CI: Introduce a Next.js GitHub Actions workflow that detects the package manager, builds the app, caches Next.js artifacts, and deploys the static output to GitHub Pages. Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> commit e6efe1f5b8e19fcd47714aa1417a9a01a16343a9 Author: dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Wed Jan 7 06:06:13 2026 +0700 sequence-core-dapp-1.0.0 commit cd4a860bbe5d27a96fd2a091cb6d074ff1c92331 Author: Dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Tue Jan 6 01:37:52 2026 +0700 Create web-sdk.yml (#175) https://github.com/Dargon789/Web3-Onboard/commit/fb66abf9ef6c55706a1dab2198db715f2588f1d1 https://github.com/Dargon789/web-sdk/commit/d26f62241ed85e6108a481f7a74ba7573c6c4c95 Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> commit f2fd08bd5c463fc1c154c0fb26d8286bfcde01fa Author: Dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Wed Dec 31 01:11:33 2025 +0700 V2 (#174) * Updating DefaultGuest address * Update tests.yml (#51) Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> * Update tests.yml (#52) Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> * Update tests.yml Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> * Update tests.yml (#55) Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> * Update tests.yml (#56) Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> * Update tests.yml Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> --------- Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> Co-authored-by: Corban Riley commit e7b277e79c7fe27c3cb129627d9f70e5bea9a25c Author: Dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Wed Dec 31 00:17:52 2025 +0700 Revise security policy for reporting vulnerabilities (#173) * Revise security policy for reporting vulnerabilities Updated contact information for vulnerability reporting. https://github.com/Dargon789/sequence.js/commit/e90b2e6395fb14c6463a02e88f65dc23ce455d6d Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update SECURITY.md Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> --------- Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> commit 70208b1b85034bada6c5f8f858cc11bfd1a11241 Author: Dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Tue Dec 30 21:50:23 2025 +0700 Potential fix for code scanning alert no. 95: Information exposure through a stack trace Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> commit 4c696d0e57d8ec45057b111bfb551ab497d0f93a Author: Dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Tue Dec 30 21:47:34 2025 +0700 Potential fix for code scanning alert no. 94: Insecure randomness Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> commit c62e5ddc2818a6b0624d63be3089c5ad7d08bd72 Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue Dec 30 21:42:22 2025 +0700 Bump happy-dom in the npm_and_yarn group across 1 directory (#167) Bumps the npm_and_yarn group with 1 update in the /wagmi-project directory: [happy-dom](https://github.com/capricorn86/happy-dom). Updates `happy-dom` from 18.0.1 to 20.0.2 - [Release notes](https://github.com/capricorn86/happy-dom/releases) - [Commits](https://github.com/capricorn86/happy-dom/compare/v18.0.1...v20.0.2) --- updated-dependencies: - dependency-name: happy-dom dependency-version: 20.0.2 dependency-type: direct:development dependency-group: npm_and_yarn ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> commit e13fe5a71769b6d325b9cc3185c4a0519205f7b1 Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue Dec 30 21:19:24 2025 +0700 Bump the npm_and_yarn group across 2 directories with 4 updates (#161) Bumps the npm_and_yarn group with 1 update in the / directory: [webpack-dev-server](https://github.com/webpack/webpack-dev-server). Bumps the npm_and_yarn group with 1 update in the /packages/0xsequence directory: [webpack-dev-server](https://github.com/webpack/webpack-dev-server). Updates `webpack-dev-server` from 3.11.3 to 5.2.1 - [Release notes](https://github.com/webpack/webpack-dev-server/releases) - [Changelog](https://github.com/webpack/webpack-dev-server/blob/main/CHANGELOG.md) - [Commits](https://github.com/webpack/webpack-dev-server/compare/v3.11.3...v5.2.1) Updates `http-proxy-middleware` from 0.19.1 to 2.0.9 - [Release notes](https://github.com/chimurai/http-proxy-middleware/releases) - [Changelog](https://github.com/chimurai/http-proxy-middleware/blob/v2.0.9/CHANGELOG.md) - [Commits](https://github.com/chimurai/http-proxy-middleware/compare/v0.19.1...v2.0.9) Updates `micromatch` from 3.1.10 to 4.0.8 - [Release notes](https://github.com/micromatch/micromatch/releases) - [Changelog](https://github.com/micromatch/micromatch/blob/master/CHANGELOG.md) - [Commits](https://github.com/micromatch/micromatch/compare/3.1.10...4.0.8) Updates `on-headers` from 1.0.2 to 1.1.0 - [Release notes](https://github.com/jshttp/on-headers/releases) - [Changelog](https://github.com/jshttp/on-headers/blob/master/HISTORY.md) - [Commits](https://github.com/jshttp/on-headers/compare/v1.0.2...v1.1.0) Updates `webpack-dev-server` from 3.11.3 to 5.2.1 - [Release notes](https://github.com/webpack/webpack-dev-server/releases) - [Changelog](https://github.com/webpack/webpack-dev-server/blob/main/CHANGELOG.md) - [Commits](https://github.com/webpack/webpack-dev-server/compare/v3.11.3...v5.2.1) Updates `http-proxy-middleware` from 0.19.1 to 2.0.9 - [Release notes](https://github.com/chimurai/http-proxy-middleware/releases) - [Changelog](https://github.com/chimurai/http-proxy-middleware/blob/v2.0.9/CHANGELOG.md) - [Commits](https://github.com/chimurai/http-proxy-middleware/compare/v0.19.1...v2.0.9) Updates `micromatch` from 3.1.10 to 4.0.8 - [Release notes](https://github.com/micromatch/micromatch/releases) - [Changelog](https://github.com/micromatch/micromatch/blob/master/CHANGELOG.md) - [Commits](https://github.com/micromatch/micromatch/compare/3.1.10...4.0.8) Updates `on-headers` from 1.0.2 to 1.1.0 - [Release notes](https://github.com/jshttp/on-headers/releases) - [Changelog](https://github.com/jshttp/on-headers/blob/master/HISTORY.md) - [Commits](https://github.com/jshttp/on-headers/compare/v1.0.2...v1.1.0) Updates `webpack-dev-server` from 3.11.3 to 5.2.1 - [Release notes](https://github.com/webpack/webpack-dev-server/releases) - [Changelog](https://github.com/webpack/webpack-dev-server/blob/main/CHANGELOG.md) - [Commits](https://github.com/webpack/webpack-dev-server/compare/v3.11.3...v5.2.1) --- updated-dependencies: - dependency-name: webpack-dev-server dependency-version: 5.2.1 dependency-type: direct:development dependency-group: npm_and_yarn - dependency-name: http-proxy-middleware dependency-version: 2.0.9 dependency-type: indirect dependency-group: npm_and_yarn - dependency-name: micromatch dependency-version: 4.0.8 dependency-type: indirect dependency-group: npm_and_yarn - dependency-name: on-headers dependency-version: 1.1.0 dependency-type: indirect dependency-group: npm_and_yarn - dependency-name: webpack-dev-server dependency-version: 5.2.1 dependency-type: direct:development dependency-group: npm_and_yarn - dependency-name: http-proxy-middleware dependency-version: 2.0.9 dependency-type: indirect dependency-group: npm_and_yarn - dependency-name: micromatch dependency-version: 4.0.8 dependency-type: indirect dependency-group: npm_and_yarn - dependency-name: on-headers dependency-version: 1.1.0 dependency-type: indirect dependency-group: npm_and_yarn - dependency-name: webpack-dev-server dependency-version: 5.2.1 dependency-type: direct:development dependency-group: npm_and_yarn ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> commit b9d25688cb184f4b5ec1d0aba07bd36351efc65b Author: Dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Mon Dec 29 15:35:25 2025 +0700 Update CNAME to new domain (#164) sequence.app Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> commit 4a81a2c4338191c93915c3101f3c24f0c468ae03 Author: Dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Mon Dec 29 14:08:44 2025 +0700 Proto (#163) * [AUTOMATED] Update: proto/clients/indexer*.gen.ts * [AUTOMATED] Update: proto/clients/indexer*.gen.ts * [AUTOMATED] Update: proto/clients/indexer*.gen.ts * [AUTOMATED] Update: proto/clients/indexer*.gen.ts * [AUTOMATED] Update: proto/clients/indexer*.gen.ts * [AUTOMATED] Update: proto/clients/indexer*.gen.ts * [AUTOMATED] Update: proto/clients/indexer*.gen.ts * [AUTOMATED] Update: proto/clients/indexer*.gen.ts --------- Co-authored-by: marino39 <722509+marino39@users.noreply.github.com> Co-authored-by: pkieltyka <18831+pkieltyka@users.noreply.github.com> Co-authored-by: xiam <385670+xiam@users.noreply.github.com> commit c4d0fdc33cd1ccf9cfc996b351959ae4d004a7e6 Merge: 7c547fcdd 269972a1d Author: dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Mon Dec 29 13:38:33 2025 +0700 Merge branch 'master' of https://github.com/Dargon789/sequence.js commit 269972a1dad423f67c0262149e46e7d8b3c3b10d Author: Dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Mon Dec 29 09:58:04 2025 +0700 fix: package.json to reduce vulnerabilities (#157) The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JS-BABELHELPERS-9397697 - https://snyk.io/vuln/SNYK-JS-BABELRUNTIME-10044504 - https://snyk.io/vuln/SNYK-JS-BRACEEXPANSION-9789073 - https://snyk.io/vuln/SNYK-JS-ELLIPTIC-8187303 - https://snyk.io/vuln/SNYK-JS-IMAGESIZE-9634164 - https://snyk.io/vuln/SNYK-JS-INFLIGHT-6095116 - https://snyk.io/vuln/SNYK-JS-JSYAML-13961110 - https://snyk.io/vuln/SNYK-JS-NODEFORGE-14114940 - https://snyk.io/vuln/SNYK-JS-NODEFORGE-14125097 - https://snyk.io/vuln/SNYK-JS-NODEFORGE-14125745 - https://snyk.io/vuln/SNYK-JS-SHAJS-12089400 - https://snyk.io/vuln/SNYK-JS-TMP-11501554 Co-authored-by: snyk-bot commit 7c547fcdd75774e39120241d16bf64c86e243355 Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Date: Sat Dec 27 02:34:25 2025 +0700 Bump the npm_and_yarn group across 4 directories with 7 updates (#144) Bumps the npm_and_yarn group with 4 updates in the /wagmi-project directory: [next](https://github.com/vercel/next.js), [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite), [@metamask/sdk](https://github.com/MetaMask/metamask-sdk/tree/HEAD/packages/sdk) and [nuxt](https://github.com/nuxt/nuxt/tree/HEAD/packages/nuxt). Bumps the npm_and_yarn group with 1 update in the /wagmi-project/packages/connectors directory: [@metamask/sdk](https://github.com/MetaMask/metamask-sdk/tree/HEAD/packages/sdk). Bumps the npm_and_yarn group with 1 update in the /wagmi-project/packages/create-wagmi/templates/next directory: [next](https://github.com/vercel/next.js). Bumps the npm_and_yarn group with 1 update in the /wagmi-project/playgrounds/next directory: [next](https://github.com/vercel/next.js). Updates `next` from 15.3.3 to 15.4.10 - [Release notes](https://github.com/vercel/next.js/releases) - [Changelog](https://github.com/vercel/next.js/blob/canary/release.js) - [Commits](https://github.com/vercel/next.js/compare/v15.3.3...v15.4.10) Updates `happy-dom` from 15.10.2 to 18.0.1 - [Release notes](https://github.com/capricorn86/happy-dom/releases) - [Commits](https://github.com/capricorn86/happy-dom/compare/v15.10.2...v18.0.1) Updates `vite` from 5.4.19 to 5.4.21 - [Release notes](https://github.com/vitejs/vite/releases) - [Changelog](https://github.com/vitejs/vite/blob/v5.4.21/packages/vite/CHANGELOG.md) - [Commits](https://github.com/vitejs/vite/commits/v5.4.21/packages/vite) Updates `@metamask/sdk` from 0.32.1 to 0.33.1 - [Release notes](https://github.com/MetaMask/metamask-sdk/releases) - [Changelog](https://github.com/MetaMask/metamask-sdk/blob/main/packages/sdk/CHANGELOG.md) - [Commits](https://github.com/MetaMask/metamask-sdk/commits/@metamask/sdk@0.33.1/packages/sdk) Updates `nuxt` from 3.16.0 to 3.19.0 - [Release notes](https://github.com/nuxt/nuxt/releases) - [Commits](https://github.com/nuxt/nuxt/commits/v3.19.0/packages/nuxt) Updates `@nuxt/devtools` from 2.4.1 to 2.7.0 - [Release notes](https://github.com/nuxt/devtools/releases) - [Changelog](https://github.com/nuxt/devtools/blob/main/CHANGELOG.md) - [Commits](https://github.com/nuxt/devtools/commits/v2.7.0/packages/devtools) Updates `devalue` from 5.1.1 to 5.6.1 - [Release notes](https://github.com/sveltejs/devalue/releases) - [Changelog](https://github.com/sveltejs/devalue/blob/main/CHANGELOG.md) - [Commits](https://github.com/sveltejs/devalue/compare/v5.1.1...v5.6.1) Updates `@metamask/sdk` from 0.32.1 to 0.33.1 - [Release notes](https://github.com/MetaMask/metamask-sdk/releases) - [Changelog](https://github.com/MetaMask/metamask-sdk/blob/main/packages/sdk/CHANGELOG.md) - [Commits](https://github.com/MetaMask/metamask-sdk/commits/@metamask/sdk@0.33.1/packages/sdk) Updates `next` from 15.2.4 to 15.4.10 - [Release notes](https://github.com/vercel/next.js/releases) - [Changelog](https://github.com/vercel/next.js/blob/canary/release.js) - [Commits](https://github.com/vercel/next.js/compare/v15.3.3...v15.4.10) Updates `next` from 15.3.3 to 15.4.10 - [Release notes](https://github.com/vercel/next.js/releases) - [Changelog](https://github.com/vercel/next.js/blob/canary/release.js) - [Commits](https://github.com/vercel/next.js/compare/v15.3.3...v15.4.10) --- updated-dependencies: - dependency-name: next dependency-version: 15.4.10 dependency-type: direct:production dependency-group: npm_and_yarn - dependency-name: happy-dom dependency-version: 18.0.1 dependency-type: direct:development dependency-group: npm_and_yarn - dependency-name: vite dependency-version: 5.4.21 dependency-type: direct:development dependency-group: npm_and_yarn - dependency-name: "@metamask/sdk" dependency-version: 0.33.1 dependency-type: direct:production dependency-group: npm_and_yarn - dependency-name: nuxt dependency-version: 3.19.0 dependency-type: direct:production dependency-group: npm_and_yarn - dependency-name: "@nuxt/devtools" dependency-version: 2.7.0 dependency-type: indirect dependency-group: npm_and_yarn - dependency-name: devalue dependency-version: 5.6.1 dependency-type: indirect dependency-group: npm_and_yarn - dependency-name: "@metamask/sdk" dependency-version: 0.33.1 dependency-type: direct:production dependency-group: npm_and_yarn - dependency-name: next dependency-version: 15.4.10 dependency-type: direct:production dependency-group: npm_and_yarn - dependency-name: next dependency-version: 15.4.10 dependency-type: direct:production dependency-group: npm_and_yarn ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> commit 977998758f93df492849cb55e7208864677515ef Author: Dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Sat Dec 27 02:10:27 2025 +0700 Update GitHub Actions workflow for tests (#149) Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> commit 9c420a789831c3affe0881d732bb95bd2bb075db Author: Dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Fri Dec 26 04:55:34 2025 +0700 Revise README structure and add sponsorship details (#146) * Revise README structure and add sponsorship details Updated README to include new sections and sponsorship information. https://sequence.xyz/ Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update README.md Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update README.md Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update README.md Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> --------- Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> commit 224f7612cd574849b75e17056859f0a208a24aa1 Author: dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Fri Dec 26 03:19:19 2025 +0700 sequence-core-1.0.0 commit e90b2e6395fb14c6463a02e88f65dc23ce455d6d Author: dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Thu Dec 25 14:15:53 2025 +0700 Initial project structure and core packages Add initial monorepo structure for wagmi-project, including CLI, connectors, and core packages with source code, tests, configuration, and CI/CD workflows. This sets up the foundation for further development and collaboration. commit 1f452493d6ac5f23e20def94b7edf207bc2ce40a Author: snyk-io[bot] <141718529+snyk-io[bot]@users.noreply.github.com> Date: Wed Dec 24 21:11:40 2025 +0700 fix: extras/web/package.json to reduce vulnerabilities (#117) The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JS-NEXT-14400636 - https://snyk.io/vuln/SNYK-JS-NEXT-14400644 Co-authored-by: snyk-io[bot] <141718529+snyk-io[bot]@users.noreply.github.com> Co-authored-by: dargon789 <64915515+Dargon789@users.noreply.github.com> commit 8bad845d94b7ca97a1d01a255eb8b41357eaf38d Author: Dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Wed Dec 24 19:35:49 2025 +0700 feat: upgrade react from 18.3.1 to 19.2.0 (#121) Snyk has created this PR to upgrade react from 18.3.1 to 19.2.0. See this package in npm: react See this project in Snyk: https://app.snyk.io/org/dargon789/project/bb845543-cbee-4e11-8cf9-8bfdf9205bf1?utm_source=github&utm_medium=referral&page=upgrade-pr Co-authored-by: snyk-bot commit 5e6dca3ce44d2e8d5b00b1182ba9d6eae7855b23 Author: Dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Tue Dec 23 21:23:47 2025 +0700 Pin foundry to v1.5.0 instead of nightly (0xsequence#947) (#134) (#135) * Pin foundry to v1.5.0 instead of nightly (0xsequence#947) (#134) * Bump next from 15.5.7 to 15.5.9 (#944) Bumps [next](https://github.com/vercel/next.js) from 15.5.7 to 15.5.9. - [Release notes](https://github.com/vercel/next.js/releases) - [Changelog](https://github.com/vercel/next.js/blob/canary/release.js) - [Commits](https://github.com/vercel/next.js/compare/v15.5.7...v15.5.9) --- updated-dependencies: - dependency-name: next dependency-version: 15.5.9 dependency-type: direct:production ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Pin foundry to v1.5.0 instead of nightly (#947) * Include repo and extras in syncpack config to ensure deps are synced (#945) * Include repo and extras in syncpack config to ensure deps are synced across all * Updating support deps * Updating deps * Updating pnpm lock * Fixing type errors within wdk tests * Short circuit 404s (#949) * skip witness on signers that don't support it * add passkey to test * 3.0.0-beta.6 --------- Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Taylan Pince Co-authored-by: Corban Riley Co-authored-by: Agusx1211 * Update packages/wallet/wdk/test/wallets.test.ts Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update packages/wallet/wdk/test/wallets.test.ts Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> --------- Signed-off-by: dependabot[bot] Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Taylan Pince Co-authored-by: Corban Riley Co-authored-by: Agusx1211 Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> commit 802829cc116d9656dfb166beba03a1e77c8d556b Author: Dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Tue Dec 23 21:15:56 2025 +0700 2.3.7 (#131) (#132) * 2.3.7 (#131) * fix broken guard private key * Expose access to passkey credential list * Dapp client direct txn request (#856) * Signature request refactor * WIP * Refactor * Update dapp-client exports (#858) * Add hasPermission method to DappClient (#859) * Save discovered passkey credentials upon login * Expose name property in PasskeySignupArgs * Fix blacklist sort * Add multi server script * relayer: /SimulateV3 (#857) * Add await for handleOpenDB scheduleExpiration * Update increment to always include native once used * Fix session tests * Adding lastLoginAt to PasskeyCredential * LoginToPasskeyArgs now accept a credentialId which is used to specify which credential to use * Adding onSignatureRequestStatus function to register single use callbacks for when a request reaches a terminal state of completed or cancelled * When a login is cancelled we can remove the wallet which is logging-in * Add RC3 contracts * Sessions space restriction * Dedupe signers for encoding * Support RC3 sessions * Tightly increment call validation * CLI defaults to RC3 wallet code * Rc3 address test * Fix hashing tests * Add deprecated encoding test * wdk: throw errors from otp respond callback (#864) * wdk: throw errors from otp respond callback * wdk: otp auth error and handler refactor * Handle guard 2FA (#861) * guard: return a specific error when auth required * core: pass guard token to the service * wdk: handle prompting for guard 2FA code * dapp-client: handle prompting for guard 2FA code * guard 2fa tests * wdk: separate wallet and sessions guards * dapp-client: remove guard 2fa * dapp-client: fix imports * fix guard tests * wdk: remove unneeded promise resolve * Update relayer and api gen.ts, force public packages * Add standalone fetch queued payloads * Replacing GuardRole enum with string union type, as well as replacing guardAddresses Map with Record * Fallback to chain for non-logged in recovery * Add Katana, Sandbox Tesnet, Incentiv Testnet v2 (#873) * Update a few remaining dev1 contract addresses to rc3 (#874) * Remove unnecessary console.error where we already throw error * Improve DappClient hasPermission method * Wallet db try checksum and lowercase * Update dapp client json utils to include Map reviver and replacer * Bump next in the npm_and_yarn group across 1 directory Bumps the npm_and_yarn group with 1 update in the / directory: [next](https://github.com/vercel/next.js). Updates `next` from 15.4.2 to 15.4.7 - [Release notes](https://github.com/vercel/next.js/releases) - [Changelog](https://github.com/vercel/next.js/blob/canary/release.js) - [Commits](https://github.com/vercel/next.js/compare/v15.4.2...v15.4.7) --- updated-dependencies: - dependency-name: next dependency-version: 15.4.7 dependency-type: direct:production dependency-group: npm_and_yarn ... Signed-off-by: dependabot[bot] * Update type name, update exports for dapp client * Expired explicit sessions can't sign * Improve session validity test * session isValid returns invalid reason * InvalidReason is typed * Support multiple identity signers in sessions configuration * Device signers can approve implicit sessions * Remove invalid test * Fix recursion * Fix comment * Improve test stability by reducing race conditions * Do not set passkey signer as identity signer * Use length checks * Throw on missing identity signer * Encoding requires identity signer to encode * Fix test * Refactor/types namings tsdoc redundant code (#880) * refactor types, namings, ts doc * fix session response payload * change parameter name * change parameter name * change type in tests * improve types and dapp client methods * fix session test to use new types * refactor * refactor implicit sessions array in chain session manager * remove unused types * remove unused types and add ConnectionError * update pnpm lock * move reusable session types to wallet-core * Update some imports and update some response type names --------- Co-authored-by: Tolgahan Arikan * Fix check for explicit session for the updated type in dapp-client * Update api.gen.ts and relayer.gen.ts * Add missing chainId for dapp client event * Fix initializing new chain session manager on redirect * Add support for non-viem, custom Sequence chains (#882) * Update issue templates * Provider sent to prepareBlankEnvelope * Add session signature decoding * Add feeTokens endpoint to relayer (#885) * const for node length * Clearer blacklist size encoding * identity signer node length * Potential fix for code scanning alert no. 84: Insecure randomness Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> * add getFeeTokens to dapp client (#889) * add getFeeTokens to dapp client * fix typo * make getFeeTokens independent of chain session manager and initialize state (#890) * make getFeeTokens independent of chain session manager and initialized state * remove getFeeTokens from chain session manager * Throw specific error when trying to sign with an expired session (#887) * Throw when supported session signer is expired * Fix tests * Make dapp-client implicit sessions chain agnostic (#893) * Add Monad, remove LAOS and Root Network * Bump the npm_and_yarn group across 3 directories with 1 update Bumps the npm_and_yarn group with 1 update in the / directory: [happy-dom](https://github.com/capricorn86/happy-dom). Bumps the npm_and_yarn group with 1 update in the /packages/wallet/dapp-client directory: [happy-dom](https://github.com/capricorn86/happy-dom). Bumps the npm_and_yarn group with 1 update in the /packages/wallet/wdk directory: [happy-dom](https://github.com/capricorn86/happy-dom). Updates `happy-dom` from 17.6.3 to 20.0.0 - [Release notes](https://github.com/capricorn86/happy-dom/releases) - [Commits](https://github.com/capricorn86/happy-dom/compare/v17.6.3...v20.0.0) Updates `happy-dom` from 17.6.3 to 20.0.0 - [Release notes](https://github.com/capricorn86/happy-dom/releases) - [Commits](https://github.com/capricorn86/happy-dom/compare/v17.6.3...v20.0.0) Updates `happy-dom` from 17.6.3 to 20.0.0 - [Release notes](https://github.com/capricorn86/happy-dom/releases) - [Commits](https://github.com/capricorn86/happy-dom/compare/v17.6.3...v20.0.0) --- updated-dependencies: - dependency-name: happy-dom dependency-version: 20.0.0 dependency-type: direct:development dependency-group: npm_and_yarn - dependency-name: happy-dom dependency-version: 20.0.0 dependency-type: direct:development dependency-group: npm_and_yarn - dependency-name: happy-dom dependency-version: 20.0.0 dependency-type: direct:development dependency-group: npm_and_yarn ... Signed-off-by: dependabot[bot] * Bump happy-dom in the npm_and_yarn group across 1 directory (#69) Bumps the npm_and_yarn group with 1 update in the / directory: [happy-dom](https://github.com/capricorn86/happy-dom). Updates `happy-dom` from 20.0.0 to 20.0.2 - [Release notes](https://github.com/capricorn86/happy-dom/releases) - [Commits](https://github.com/capricorn86/happy-dom/compare/v20.0.0...v20.0.2) --- updated-dependencies: - dependency-name: happy-dom dependency-version: 20.0.2 dependency-type: direct:development dependency-group: npm_and_yarn ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Create SECURITY.md for security policy (#70) * Create SECURITY.md for security policy Add a security policy document outlining supported versions and vulnerability reporting. Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> * Update SECURITY.md Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> * Update SECURITY.md Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> --------- Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> * Update SECURITY.md Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> * Add support for sessionless dapp connection (#896) * Refactor relayer package & update dependant packages (#891) * refactor exports for relayer (#900) * Add Arc Testnet * Fix changelog config * Sessionless connection upgrade and error handling in DappClient (#902) * dapp-client: add sessionless snapshot restore flow * Bump the npm_and_yarn group across 3 directories with 1 update Bumps the npm_and_yarn group with 1 update in the / directory: [happy-dom](https://github.com/capricorn86/happy-dom). Bumps the npm_and_yarn group with 1 update in the /packages/wallet/dapp-client directory: [happy-dom](https://github.com/capricorn86/happy-dom). Bumps the npm_and_yarn group with 1 update in the /packages/wallet/wdk directory: [happy-dom](https://github.com/capricorn86/happy-dom). Updates `happy-dom` from 17.6.3 to 20.0.2 - [Release notes](https://github.com/capricorn86/happy-dom/releases) - [Commits](https://github.com/capricorn86/happy-dom/compare/v17.6.3...v20.0.2) Updates `happy-dom` from 17.6.3 to 20.0.2 - [Release notes](https://github.com/capricorn86/happy-dom/releases) - [Commits](https://github.com/capricorn86/happy-dom/compare/v17.6.3...v20.0.2) Updates `happy-dom` from 17.6.3 to 20.0.2 - [Release notes](https://github.com/capricorn86/happy-dom/releases) - [Commits](https://github.com/capricorn86/happy-dom/compare/v17.6.3...v20.0.2) --- updated-dependencies: - dependency-name: happy-dom dependency-version: 20.0.2 dependency-type: direct:development dependency-group: npm_and_yarn - dependency-name: happy-dom dependency-version: 20.0.2 dependency-type: direct:development dependency-group: npm_and_yarn - dependency-name: happy-dom dependency-version: 20.0.2 dependency-type: direct:development dependency-group: npm_and_yarn ... Signed-off-by: dependabot[bot] * Allow to logout a wallet with skipRemoveDevice even if the wallet is not in a ready state to allow force removing of wallets (#906) * Pass request to PromptCodeHandler in guard registerUI (#909) * Pass request to PromptCodeHandler in guard registerUI * Fixing guard registerUI test * guard: allow using recovery code as 2FA token (#910) * guard: allow using recovery code as 2FA token * Cleanup types of ResponseFn --------- Co-authored-by: Corban Riley * Add a way to reset 2fa when using a backup code (#911) * Add a way to reset 2fa when using a backup code * use the GuardToken type instead of breaking out the props * Update SECURITY.md Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update packages/wallet/dapp-client/src/DappTransport.ts Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update package.json Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update SECURITY.md Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update wagmi-project/package.json Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update wagmi-project/package.json Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update wagmi-project/src/App.tsx Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Create FUNDING.json (#90) Enhancements: Include FUNDING.json to display GitHub sponsorship options in the repository Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Create config.yml (#91) Add initial CircleCI configuration to enable automated builds using a custom Docker executor and a defined workflow. Build: Add .circleci/config.yml with version 2.1 specification and custom Docker executor. CI: Define web3-defi-game-project job with checkout step. Set up my-custom-workflow to run the job. Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Add rc4 contracts * Set rc4 as default and add it to lists * Session enhanced replay protection * New sessions replay protection hashes payload * Use the 4337 factory wrapper * Update keymachine url in dapp-client constants * Update keymachine url in Provider constructor * SSR safety (#915) * SSR safety test * Fix CI job * Guard dapp-client for SSR (lazy transport, browser checks, gated storage) * Fix guard topology (#918) * Use proper guard topology * Test and fixes * login and setup tests * Switch prod manager settings (#917) * Add prod guard and identity instrument info * Remove completed TODOs * Small JS tweaks (#919) * Fix type exports to built declarations * Update repository links to current package paths * Improve Next app tooling and React typings * Expose primitives CLI bin and use base lint config * Update relayer.gen.ts and TransactionPrecondition interface * Update api.gen.ts * Update metadata.gen.ts * Update marketplace.gen.ts * Update guard.gen.ts * Support multiple identity signers in sessions configuration * Device signers can approve implicit sessions * Remove invalid test * Fix recursion * Fix comment * Improve test stability by reducing race conditions * Do not set passkey signer as identity signer * Use length checks * Throw on missing identity signer * Encoding requires identity signer to encode * Fix test * Refactor/types namings tsdoc redundant code (#880) * refactor types, namings, ts doc * fix session response payload * change parameter name * change parameter name * change type in tests * improve types and dapp client methods * fix session test to use new types * refactor * refactor implicit sessions array in chain session manager * remove unused types * remove unused types and add ConnectionError * update pnpm lock * move reusable session types to wallet-core * Update some imports and update some response type names --------- Co-authored-by: Tolgahan Arikan * Fix check for explicit session for the updated type in dapp-client * Update api.gen.ts and relayer.gen.ts * Add missing chainId for dapp client event * Fix initializing new chain session manager on redirect * Add support for non-viem, custom Sequence chains (#882) * Provider sent to prepareBlankEnvelope * Add session signature decoding * const for node length * Clearer blacklist size encoding * identity signer node length * Add feeTokens endpoint to relayer (#885) * add getFeeTokens to dapp client (#889) * add getFeeTokens to dapp client * fix typo * make getFeeTokens independent of chain session manager and initialize state (#890) * make getFeeTokens independent of chain session manager and initialized state * remove getFeeTokens from chain session manager * Throw specific error when trying to sign with an expired session (#887) * Throw when supported session signer is expired * Fix tests * Make dapp-client implicit sessions chain agnostic (#893) * Add Monad, remove LAOS and Root Network * Add support for sessionless dapp connection (#896) * Refactor relayer package & update dependant packages (#891) * refactor exports for relayer (#900) * Add Arc Testnet * Fix changelog config * Sessionless connection upgrade and error handling in DappClient (#902) * dapp-client: add sessionless snapshot restore flow * Allow to logout a wallet with skipRemoveDevice even if the wallet is not in a ready state to allow force removing of wallets (#906) * Pass request to PromptCodeHandler in guard registerUI (#909) * Pass request to PromptCodeHandler in guard registerUI * Fixing guard registerUI test * guard: allow using recovery code as 2FA token (#910) * guard: allow using recovery code as 2FA token * Cleanup types of ResponseFn --------- Co-authored-by: Corban Riley * Add a way to reset 2fa when using a backup code (#911) * Add a way to reset 2fa when using a backup code * use the GuardToken type instead of breaking out the props * Add rc4 contracts * Set rc4 as default and add it to lists * Session enhanced replay protection * New sessions replay protection hashes payload * Use the 4337 factory wrapper * Update keymachine url in dapp-client constants * Update keymachine url in Provider constructor * SSR safety (#915) * Guard dapp-client for SSR (lazy transport, browser checks, gated storage) * Fix guard topology (#918) * Use proper guard topology * Test and fixes * login and setup tests * Switch prod manager settings (#917) * Add prod guard and identity instrument info * Remove completed TODOs * Small JS tweaks (#919) * Fix type exports to built declarations * Update repository links to current package paths * Improve Next app tooling and React typings * Expose primitives CLI bin and use base lint config * Update relayer.gen.ts and TransactionPrecondition interface * Update relayer.gen.ts and TransactionPrecondition interface (#920) * 3.0.0-beta.1 * identity-instrument: generate nonce from current time (#921) * Remove publish-dists.yml github action (#923) * 3.0.0-beta.2 * Clean up changeset config * Improve test stability by removing race conditions * Ensure build before test * Updating happy-dom to 20.0.10 (#926) * Add support for custom auth providers (authcode & authcode-pkce only) (#894) * Add support for custom auth providers (authcode & authcode-pkce only) * fix authcode tests * Updating Deps November 2025 (#927) * Updating deps for the workspace root * Updating deps for wallet/wdk * Fixing sessions test for latest vitest * Lets not upgrade to the latest typescript quite yet * Updating to latest vitest * Updating deps for wallet/core * Updating deps for wallet/primitives-cli * Updating deps for wallet/dapp-client * Adding syncpack to check for dep version inconsistencies * Setup syncpack versionGroups for pnpm workspace:^ * Fixing dep versions mismatches * Fixing @types/node mismatches * Adding syncpack to pre commit hook * Remove the syncpack format script. * Update ox to v9.17.0 (#928) * Upgrading ox to 9.17.0 * WrappedSignature renamed to SignatureErc6492 * Fixing PasskeySignatureValidator interface * Lock ox lib dep to use the same version with pnpm overrides and update viem to latest * Fix explicitSessionRequested check in dapp client * Typescript 5.9.3 (#930) * Upgrading to typescript v5.9.3 * Fix type errors that arose from typescript upgrade related to Bytes and Buffer source typings. * Don't catch errors thrown by Guard 2FA or reject early to allow multiple attempts on incorrect TOTP (#931) * Update pnpm * Mark @0xsequence/wallet-primitives-cli as private * 3.0.0-beta.3 * changeset cleanup * Fix rc4 4337 factory (#933) * Add rc5 and set it as default (#934) * 3.0.0-beta.4 * Update SECURITY.md Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update wagmi-project/package.json Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update wagmi-project/package.json Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Bump next from 15.5.5 to 15.5.7 (#936) Bumps [next](https://github.com/vercel/next.js) from 15.5.5 to 15.5.7. - [Release notes](https://github.com/vercel/next.js/releases) - [Changelog](https://github.com/vercel/next.js/blob/canary/release.js) - [Commits](https://github.com/vercel/next.js/compare/v15.5.5...v15.5.7) --- updated-dependencies: - dependency-name: next dependency-version: 15.5.7 dependency-type: direct:production ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * add userdata service client (#940) * Skip LocalDevice identity signers not on current device (#942) * Skip LocalDevice identity signers not on current device * Update log * 3.0.0-beta.5 * Update config.yml (#102) * Update config.yml Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update .circleci/config.yml Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> --------- Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com> * Update config.yml (#103) * Update config.yml Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update .circleci/config.yml Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> --------- Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com> * fix: extras/web/package.json to reduce vulnerabilities (#101) The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JS-NEXT-14173355 Co-authored-by: snyk-io[bot] <141718529+snyk-io[bot]@users.noreply.github.com> * fix: extras/docs/package.json to reduce vulnerabilities (#100) The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JS-NEXT-14173355 Co-authored-by: snyk-io[bot] <141718529+snyk-io[bot]@users.noreply.github.com> * fix: package.json to reduce vulnerabilities (#104) The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JS-BABELHELPERS-9397697 - https://snyk.io/vuln/SNYK-JS-BABELRUNTIME-10044504 - https://snyk.io/vuln/SNYK-JS-BRACEEXPANSION-9789073 - https://snyk.io/vuln/SNYK-JS-CROSSSPAWN-8303230 - https://snyk.io/vuln/SNYK-JS-ELLIPTIC-7577916 - https://snyk.io/vuln/SNYK-JS-ELLIPTIC-7577917 - https://snyk.io/vuln/SNYK-JS-ELLIPTIC-7577918 - https://snyk.io/vuln/SNYK-JS-ELLIPTIC-8187303 - https://snyk.io/vuln/SNYK-JS-ELLIPTIC-8720086 - https://snyk.io/vuln/SNYK-JS-IMAGESIZE-9634164 - https://snyk.io/vuln/SNYK-JS-INFLIGHT-6095116 - https://snyk.io/vuln/SNYK-JS-JSYAML-13961110 - https://snyk.io/vuln/SNYK-JS-MICROMATCH-6838728 - https://snyk.io/vuln/SNYK-JS-NODEFORGE-14114940 - https://snyk.io/vuln/SNYK-JS-NODEFORGE-14125097 - https://snyk.io/vuln/SNYK-JS-NODEFORGE-14125745 - https://snyk.io/vuln/SNYK-JS-ONHEADERS-10773729 - https://snyk.io/vuln/SNYK-JS-ROLLUP-8073097 - https://snyk.io/vuln/SNYK-JS-SECP256K1-8237220 - https://snyk.io/vuln/SNYK-JS-SEND-7926862 - https://snyk.io/vuln/SNYK-JS-SERVESTATIC-7926865 - https://snyk.io/vuln/SNYK-JS-SHAJS-12089400 Co-authored-by: snyk-io[bot] <141718529+snyk-io[bot]@users.noreply.github.com> * Revert "Merge remote-tracking branch 'origin/dependabot/npm_and_yarn/npm_and_yarn-318c02e2da'" This reverts commit fd0fdf9ecc6ad9056447e381de7fc5bb19f78e47, reversing changes made to cba78943db9942a4635bb530b7a43fc5d18b0ab4. * fix: extras/web/package.json to reduce vulnerabilities (#109) The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JS-NEXT-14173355 Co-authored-by: snyk-bot * fix: extras/docs/package.json to reduce vulnerabilities (#106) The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JS-NEXT-14400636 - https://snyk.io/vuln/SNYK-JS-NEXT-14400644 Co-authored-by: snyk-bot * Bump next in the npm_and_yarn group across 1 directory (#110) Bumps the npm_and_yarn group with 1 update in the / directory: [next](https://github.com/vercel/next.js). Updates `next` from 15.5.7 to 15.5.9 - [Release notes](https://github.com/vercel/next.js/releases) - [Changelog](https://github.com/vercel/next.js/blob/canary/release.js) - [Commits](https://github.com/vercel/next.js/compare/v15.5.7...v15.5.9) --- updated-dependencies: - dependency-name: next dependency-version: 15.5.9 dependency-type: direct:production dependency-group: npm_and_yarn ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Delete .github/workflows/fortify.yml (#111) Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * fix: extras/web/package.json to reduce vulnerabilities (#107) The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JS-NEXT-14400636 - https://snyk.io/vuln/SNYK-JS-NEXT-14400644 Co-authored-by: snyk-bot * Bump the npm_and_yarn group across 1 directory with 3 updates (#115) Bumps the npm_and_yarn group with 1 update in the / directory: [next](https://github.com/vercel/next.js). Updates `next` from 15.5.5 to 15.5.9 - [Release notes](https://github.com/vercel/next.js/releases) - [Changelog](https://github.com/vercel/next.js/blob/canary/release.js) - [Commits](https://github.com/vercel/next.js/compare/v15.5.5...v15.5.9) Updates `happy-dom` from 17.6.3 to 20.0.11 - [Release notes](https://github.com/capricorn86/happy-dom/releases) - [Commits](https://github.com/capricorn86/happy-dom/compare/v17.6.3...v20.0.11) Updates `vite` from 7.1.10 to 7.2.7 - [Release notes](https://github.com/vitejs/vite/releases) - [Changelog](https://github.com/vitejs/vite/blob/v7.2.7/packages/vite/CHANGELOG.md) - [Commits](https://github.com/vitejs/vite/commits/v7.2.7/packages/vite) --- updated-dependencies: - dependency-name: next dependency-version: 15.5.9 dependency-type: direct:production dependency-group: npm_and_yarn - dependency-name: happy-dom dependency-version: 20.0.11 dependency-type: direct:development dependency-group: npm_and_yarn - dependency-name: vite dependency-version: 7.2.7 dependency-type: indirect dependency-group: npm_and_yarn ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Bump next from 15.5.7 to 15.5.9 (#944) Bumps [next](https://github.com/vercel/next.js) from 15.5.7 to 15.5.9. - [Release notes](https://github.com/vercel/next.js/releases) - [Changelog](https://github.com/vercel/next.js/blob/canary/release.js) - [Commits](https://github.com/vercel/next.js/compare/v15.5.7...v15.5.9) --- updated-dependencies: - dependency-name: next dependency-version: 15.5.9 dependency-type: direct:production ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Pin foundry to v1.5.0 instead of nightly (#947) * Include repo and extras in syncpack config to ensure deps are synced (#945) * Include repo and extras in syncpack config to ensure deps are synced across all * Updating support deps * Updating deps * Updating pnpm lock * Fixing type errors within wdk tests * Short circuit 404s (#949) * skip witness on signers that don't support it * add passkey to test * 3.0.0-beta.6 * Update tests.yml (#119) Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update config.yml (#120) Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update packages/services/identity-instrument/src/index.ts Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * feat: upgrade @wagmi/cli from 0.1.15 to 2.8.0 (#126) Snyk has created this PR to upgrade @wagmi/cli from 0.1.15 to 2.8.0. See this package in npm: @wagmi/cli See this project in Snyk: https://app.snyk.io/org/dargon789/project/bb845543-cbee-4e11-8cf9-8bfdf9205bf1?utm_source=github&utm_medium=referral&page=upgrade-pr Co-authored-by: snyk-bot * Potential fix for code scanning alert no. 82: Workflow does not contain permissions Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Potential fix for code scanning alert no. 62: Information exposure through a stack trace Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> --------- Signed-off-by: dependabot[bot] Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> Co-authored-by: Patryk Kalinowski Co-authored-by: Corban Riley Co-authored-by: tolgahan-arikan Co-authored-by: Agusx1211 Co-authored-by: Michael Standen Co-authored-by: William Hua Co-authored-by: Michael Standen Co-authored-by: Patryk Kalinowski Co-authored-by: Taylan Pince Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Gabi <56271768+VGabriel45@users.noreply.github.com> Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com> Co-authored-by: snyk-io[bot] <141718529+snyk-io[bot]@users.noreply.github.com> Co-authored-by: snyk-bot * Update extras/docs/package.json Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update extras/web/package.json Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> --------- Signed-off-by: dependabot[bot] Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> Co-authored-by: Patryk Kalinowski Co-authored-by: Corban Riley Co-authored-by: tolgahan-arikan Co-authored-by: Agusx1211 Co-authored-by: Michael Standen Co-authored-by: William Hua Co-authored-by: Michael Standen Co-authored-by: Patryk Kalinowski Co-authored-by: Taylan Pince Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Gabi <56271768+VGabriel45@users.noreply.github.com> Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com> Co-authored-by: snyk-io[bot] <141718529+snyk-io[bot]@users.noreply.github.com> Co-authored-by: snyk-bot commit 893eedbb1a99db6736a157fed7d73a0196f30778 Merge: bc418b171 7fe4a922d Author: dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Tue Dec 23 18:50:09 2025 +0700 Merge remote-tracking branch 'origin/v1' into v1 commit 7fe4a922dfbd817fa76b8e30e9be184e6f38ddb1 Author: Dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Tue Dec 23 18:16:10 2025 +0700 Update wagmi-project/src/App.tsx Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> commit 640be8ffe175c762828aded47cc76e8d2c404b56 Author: Dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Tue Dec 23 18:15:48 2025 +0700 Update wagmi-project/src/App.tsx Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> commit 51a64321d3c0b91c9bd43c1e7e693f974c045dbb Author: Dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Tue Dec 23 18:15:24 2025 +0700 Update wagmi-project/src/App.tsx Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> commit 28a268eef9f36a4bcf257d175c49c31f55f8008b Author: Dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Tue Dec 23 18:14:59 2025 +0700 Update wagmi-project/src/App.tsx Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> commit bc418b171da95091d834f3a21141780169818db3 Author: Dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Tue Dec 23 00:27:24 2025 +0700 Master ceb95d4 (#129) * Update issue templates (#128) * Bump the npm_and_yarn group across 1 directory with 1 update Bumps the npm_and_yarn group with 1 update in the / directory: [express](https://github.com/expressjs/express). Updates `express` from 4.18.2 to 4.19.2 - [Release notes](https://github.com/expressjs/express/releases) - [Changelog](https://github.com/expressjs/express/blob/master/History.md) - [Commits](https://github.com/expressjs/express/compare/4.18.2...4.19.2) --- updated-dependencies: - dependency-name… Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> Signed-off-by: dependabot[bot] Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Co-authored-by: Corban Riley Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> Co-authored-by: spongeboi Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Update publish-dists.yml (#184) * 1.9.17 * Update packages/0xsequence/CHANGELOG.md Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update packages/account/CHANGELOG.md Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update packages/auth/CHANGELOG.md Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update packages/multicall/CHANGELOG.md Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update packages/provider/CHANGELOG.md Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update packages/wallet/CHANGELOG.md Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * 1.9.19 * Update packages/waas/src/networks.ts Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Squashed commit of the following: commit dafd2eda59d728355ab9028d03b0e10b014f2818 Author: Dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Wed Jan 7 06:30:16 2026 +0700 Create nextjs.yml (#176) CI: Introduce a Next.js GitHub Actions workflow that detects the package manager, builds the app, caches Next.js artifacts, and deploys the static output to GitHub Pages. Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> commit e6efe1f5b8e19fcd47714aa1417a9a01a16343a9 Author: dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Wed Jan 7 06:06:13 2026 +0700 sequence-core-dapp-1.0.0 commit cd4a860bbe5d27a96fd2a091cb6d074ff1c92331 Author: Dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Tue Jan 6 01:37:52 2026 +0700 Create web-sdk.yml (#175) https://github.com/Dargon789/Web3-Onboard/commit/fb66abf9ef6c55706a1dab2198db715f2588f1d1 https://github.com/Dargon789/web-sdk/commit/d26f62241ed85e6108a481f7a74ba7573c6c4c95 Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> commit f2fd08bd5c463fc1c154c0fb26d8286bfcde01fa Author: Dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Wed Dec 31 01:11:33 2025 +0700 V2 (#174) * Updating DefaultGuest address * Update tests.yml (#51) Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> * Update tests.yml (#52) Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> * Update tests.yml Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> * Update tests.yml (#55) Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> * Update tests.yml (#56) Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> * Update tests.yml Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> --------- Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> Co-authored-by: Corban Riley commit e7b277e79c7fe27c3cb129627d9f70e5bea9a25c Author: Dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Wed Dec 31 00:17:52 2025 +0700 Revise security policy for reporting vulnerabilities (#173) * Revise security policy for reporting vulnerabilities Updated contact information for vulnerability reporting. https://github.com/Dargon789/sequence.js/commit/e90b2e6395fb14c6463a02e88f65dc23ce455d6d Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update SECURITY.md Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> --------- Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> commit 70208b1b85034bada6c5f8f858cc11bfd1a11241 Author: Dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Tue Dec 30 21:50:23 2025 +0700 Potential fix for code scanning alert no. 95: Information exposure through a stack trace Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> commit 4c696d0e57d8ec45057b111bfb551ab497d0f93a Author: Dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Tue Dec 30 21:47:34 2025 +0700 Potential fix for code scanning alert no. 94: Insecure randomness Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> commit c62e5ddc2818a6b0624d63be3089c5ad7d08bd72 Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue Dec 30 21:42:22 2025 +0700 Bump happy-dom in the npm_and_yarn group across 1 directory (#167) Bumps the npm_and_yarn group with 1 update in the /wagmi-project directory: [happy-dom](https://github.com/capricorn86/happy-dom). Updates `happy-dom` from 18.0.1 to 20.0.2 - [Release notes](https://github.com/capricorn86/happy-dom/releases) - [Commits](https://github.com/capricorn86/happy-dom/compare/v18.0.1...v20.0.2) --- updated-dependencies: - dependency-name: happy-dom dependency-version: 20.0.2 dependency-type: direct:development dependency-group: npm_and_yarn ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> commit e13fe5a71769b6d325b9cc3185c4a0519205f7b1 Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue Dec 30 21:19:24 2025 +0700 Bump the npm_and_yarn group across 2 directories with 4 updates (#161) Bumps the npm_and_yarn group with 1 update in the / directory: [webpack-dev-server](https://github.com/webpack/webpack-dev-server). Bumps the npm_and_yarn group with 1 update in the /packages/0xsequence directory: [webpack-dev-server](https://github.com/webpack/webpack-dev-server). Updates `webpack-dev-server` from 3.11.3 to 5.2.1 - [Release notes](https://github.com/webpack/webpack-dev-server/releases) - [Changelog](https://github.com/webpack/webpack-dev-server/blob/main/CHANGELOG.md) - [Commits](https://github.com/webpack/webpack-dev-server/compare/v3.11.3...v5.2.1) Updates `http-proxy-middleware` from 0.19.1 to 2.0.9 - [Release notes](https://github.com/chimurai/http-proxy-middleware/releases) - [Changelog](https://github.com/chimurai/http-proxy-middleware/blob/v2.0.9/CHANGELOG.md) - [Commits](https://github.com/chimurai/http-proxy-middleware/compare/v0.19.1...v2.0.9) Updates `micromatch` from 3.1.10 to 4.0.8 - [Release notes](https://github.com/micromatch/micromatch/releases) - [Changelog](https://github.com/micromatch/micromatch/blob/master/CHANGELOG.md) - [Commits](https://github.com/micromatch/micromatch/compare/3.1.10...4.0.8) Updates `on-headers` from 1.0.2 to 1.1.0 - [Release notes](https://github.com/jshttp/on-headers/releases) - [Changelog](https://github.com/jshttp/on-headers/blob/master/HISTORY.md) - [Commits](https://github.com/jshttp/on-headers/compare/v1.0.2...v1.1.0) Updates `webpack-dev-server` from 3.11.3 to 5.2.1 - [Release notes](https://github.com/webpack/webpack-dev-server/releases) - [Changelog](https://github.com/webpack/webpack-dev-server/blob/main/CHANGELOG.md) - [Commits](https://github.com/webpack/webpack-dev-server/compare/v3.11.3...v5.2.1) Updates `http-proxy-middleware` from 0.19.1 to 2.0.9 - [Release notes](https://github.com/chimurai/http-proxy-middleware/releases) - [Changelog](https://github.com/chimurai/http-proxy-middleware/blob/v2.0.9/CHANGELOG.md) - [Commits](https://github.com/chimurai/http-proxy-middleware/compare/v0.19.1...v2.0.9) Updates `micromatch` from 3.1.10 to 4.0.8 - [Release notes](https://github.com/micromatch/micromatch/releases) - [Changelog](https://github.com/micromatch/micromatch/blob/master/CHANGELOG.md) - [Commits](https://github.com/micromatch/micromatch/compare/3.1.10...4.0.8) Updates `on-headers` from 1.0.2 to 1.1.0 - [Release notes](https://github.com/jshttp/on-headers/releases) - [Changelog](https://github.com/jshttp/on-headers/blob/master/HISTORY.md) - [Commits](https://github.com/jshttp/on-headers/compare/v1.0.2...v1.1.0) Updates `webpack-dev-server` from 3.11.3 to 5.2.1 - [Release notes](https://github.com/webpack/webpack-dev-server/releases) - [Changelog](https://github.com/webpack/webpack-dev-server/blob/main/CHANGELOG.md) - [Commits](https://github.com/webpack/webpack-dev-server/compare/v3.11.3...v5.2.1) --- updated-dependencies: - dependency-name: webpack-dev-server dependency-version: 5.2.1 dependency-type: direct:development dependency-group: npm_and_yarn - dependency-name: http-proxy-middleware dependency-version: 2.0.9 dependency-type: indirect dependency-group: npm_and_yarn - dependency-name: micromatch dependency-version: 4.0.8 dependency-type: indirect dependency-group: npm_and_yarn - dependency-name: on-headers dependency-version: 1.1.0 dependency-type: indirect dependency-group: npm_and_yarn - dependency-name: webpack-dev-server dependency-version: 5.2.1 dependency-type: direct:development dependency-group: npm_and_yarn - dependency-name: http-proxy-middleware dependency-version: 2.0.9 dependency-type: indirect dependency-group: npm_and_yarn - dependency-name: micromatch dependency-version: 4.0.8 dependency-type: indirect dependency-group: npm_and_yarn - dependency-name: on-headers dependency-version: 1.1.0 dependency-type: indirect dependency-group: npm_and_yarn - dependency-name: webpack-dev-server dependency-version: 5.2.1 dependency-type: direct:development dependency-group: npm_and_yarn ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> commit b9d25688cb184f4b5ec1d0aba07bd36351efc65b Author: Dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Mon Dec 29 15:35:25 2025 +0700 Update CNAME to new domain (#164) sequence.app Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> commit 4a81a2c4338191c93915c3101f3c24f0c468ae03 Author: Dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Mon Dec 29 14:08:44 2025 +0700 Proto (#163) * [AUTOMATED] Update: proto/clients/indexer*.gen.ts * [AUTOMATED] Update: proto/clients/indexer*.gen.ts * [AUTOMATED] Update: proto/clients/indexer*.gen.ts * [AUTOMATED] Update: proto/clients/indexer*.gen.ts * [AUTOMATED] Update: proto/clients/indexer*.gen.ts * [AUTOMATED] Update: proto/clients/indexer*.gen.ts * [AUTOMATED] Update: proto/clients/indexer*.gen.ts * [AUTOMATED] Update: proto/clients/indexer*.gen.ts --------- Co-authored-by: marino39 <722509+marino39@users.noreply.github.com> Co-authored-by: pkieltyka <18831+pkieltyka@users.noreply.github.com> Co-authored-by: xiam <385670+xiam@users.noreply.github.com> commit c4d0fdc33cd1ccf9cfc996b351959ae4d004a7e6 Merge: 7c547fcdd 269972a1d Author: dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Mon Dec 29 13:38:33 2025 +0700 Merge branch 'master' of https://github.com/Dargon789/sequence.js commit 269972a1dad423f67c0262149e46e7d8b3c3b10d Author: Dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Mon Dec 29 09:58:04 2025 +0700 fix: package.json to reduce vulnerabilities (#157) The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JS-BABELHELPERS-9397697 - https://snyk.io/vuln/SNYK-JS-BABELRUNTIME-10044504 - https://snyk.io/vuln/SNYK-JS-BRACEEXPANSION-9789073 - https://snyk.io/vuln/SNYK-JS-ELLIPTIC-8187303 - https://snyk.io/vuln/SNYK-JS-IMAGESIZE-9634164 - https://snyk.io/vuln/SNYK-JS-INFLIGHT-6095116 - https://snyk.io/vuln/SNYK-JS-JSYAML-13961110 - https://snyk.io/vuln/SNYK-JS-NODEFORGE-14114940 - https://snyk.io/vuln/SNYK-JS-NODEFORGE-14125097 - https://snyk.io/vuln/SNYK-JS-NODEFORGE-14125745 - https://snyk.io/vuln/SNYK-JS-SHAJS-12089400 - https://snyk.io/vuln/SNYK-JS-TMP-11501554 Co-authored-by: snyk-bot commit 7c547fcdd75774e39120241d16bf64c86e243355 Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Date: Sat Dec 27 02:34:25 2025 +0700 Bump the npm_and_yarn group across 4 directories with 7 updates (#144) Bumps the npm_and_yarn group with 4 updates in the /wagmi-project directory: [next](https://github.com/vercel/next.js), [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite), [@metamask/sdk](https://github.com/MetaMask/metamask-sdk/tree/HEAD/packages/sdk) and [nuxt](https://github.com/nuxt/nuxt/tree/HEAD/packages/nuxt). Bumps the npm_and_yarn group with 1 update in the /wagmi-project/packages/connectors directory: [@metamask/sdk](https://github.com/MetaMask/metamask-sdk/tree/HEAD/packages/sdk). Bumps the npm_and_yarn group with 1 update in the /wagmi-project/packages/create-wagmi/templates/next directory: [next](https://github.com/vercel/next.js). Bumps the npm_and_yarn group with 1 update in the /wagmi-project/playgrounds/next directory: [next](https://github.com/vercel/next.js). Updates `next` from 15.3.3 to 15.4.10 - [Release notes](https://github.com/vercel/next.js/releases) - [Changelog](https://github.com/vercel/next.js/blob/canary/release.js) - [Commits](https://github.com/vercel/next.js/compare/v15.3.3...v15.4.10) Updates `happy-dom` from 15.10.2 to 18.0.1 - [Release notes](https://github.com/capricorn86/happy-dom/releases) - [Commits](https://github.com/capricorn86/happy-dom/compare/v15.10.2...v18.0.1) Updates `vite` from 5.4.19 to 5.4.21 - [Release notes](https://github.com/vitejs/vite/releases) - [Changelog](https://github.com/vitejs/vite/blob/v5.4.21/packages/vite/CHANGELOG.md) - [Commits](https://github.com/vitejs/vite/commits/v5.4.21/packages/vite) Updates `@metamask/sdk` from 0.32.1 to 0.33.1 - [Release notes](https://github.com/MetaMask/metamask-sdk/releases) - [Changelog](https://github.com/MetaMask/metamask-sdk/blob/main/packages/sdk/CHANGELOG.md) - [Commits](https://github.com/MetaMask/metamask-sdk/commits/@metamask/sdk@0.33.1/packages/sdk) Updates `nuxt` from 3.16.0 to 3.19.0 - [Release notes](https://github.com/nuxt/nuxt/releases) - [Commits](https://github.com/nuxt/nuxt/commits/v3.19.0/packages/nuxt) Updates `@nuxt/devtools` from 2.4.1 to 2.7.0 - [Release notes](https://github.com/nuxt/devtools/releases) - [Changelog](https://github.com/nuxt/devtools/blob/main/CHANGELOG.md) - [Commits](https://github.com/nuxt/devtools/commits/v2.7.0/packages/devtools) Updates `devalue` from 5.1.1 to 5.6.1 - [Release notes](https://github.com/sveltejs/devalue/releases) - [Changelog](https://github.com/sveltejs/devalue/blob/main/CHANGELOG.md) - [Commits](https://github.com/sveltejs/devalue/compare/v5.1.1...v5.6.1) Updates `@metamask/sdk` from 0.32.1 to 0.33.1 - [Release notes](https://github.com/MetaMask/metamask-sdk/releases) - [Changelog](https://github.com/MetaMask/metamask-sdk/blob/main/packages/sdk/CHANGELOG.md) - [Commits](https://github.com/MetaMask/metamask-sdk/commits/@metamask/sdk@0.33.1/packages/sdk) Updates `next` from 15.2.4 to 15.4.10 - [Release notes](https://github.com/vercel/next.js/releases) - [Changelog](https://github.com/vercel/next.js/blob/canary/release.js) - [Commits](https://github.com/vercel/next.js/compare/v15.3.3...v15.4.10) Updates `next` from 15.3.3 to 15.4.10 - [Release notes](https://github.com/vercel/next.js/releases) - [Changelog](https://github.com/vercel/next.js/blob/canary/release.js) - [Commits](https://github.com/vercel/next.js/compare/v15.3.3...v15.4.10) --- updated-dependencies: - dependency-name: next dependency-version: 15.4.10 dependency-type: direct:production dependency-group: npm_and_yarn - dependency-name: happy-dom dependency-version: 18.0.1 dependency-type: direct:development dependency-group: npm_and_yarn - dependency-name: vite dependency-version: 5.4.21 dependency-type: direct:development dependency-group: npm_and_yarn - dependency-name: "@metamask/sdk" dependency-version: 0.33.1 dependency-type: direct:production dependency-group: npm_and_yarn - dependency-name: nuxt dependency-version: 3.19.0 dependency-type: direct:production dependency-group: npm_and_yarn - dependency-name: "@nuxt/devtools" dependency-version: 2.7.0 dependency-type: indirect dependency-group: npm_and_yarn - dependency-name: devalue dependency-version: 5.6.1 dependency-type: indirect dependency-group: npm_and_yarn - dependency-name: "@metamask/sdk" dependency-version: 0.33.1 dependency-type: direct:production dependency-group: npm_and_yarn - dependency-name: next dependency-version: 15.4.10 dependency-type: direct:production dependency-group: npm_and_yarn - dependency-name: next dependency-version: 15.4.10 dependency-type: direct:production dependency-group: npm_and_yarn ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> commit 977998758f93df492849cb55e7208864677515ef Author: Dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Sat Dec 27 02:10:27 2025 +0700 Update GitHub Actions workflow for tests (#149) Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> commit 9c420a789831c3affe0881d732bb95bd2bb075db Author: Dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Fri Dec 26 04:55:34 2025 +0700 Revise README structure and add sponsorship details (#146) * Revise README structure and add sponsorship details Updated README to include new sections and sponsorship information. https://sequence.xyz/ Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update README.md Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update README.md Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update README.md Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> --------- Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> commit 224f7612cd574849b75e17056859f0a208a24aa1 Author: dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Fri Dec 26 03:19:19 2025 +0700 sequence-core-1.0.0 commit e90b2e6395fb14c6463a02e88f65dc23ce455d6d Author: dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Thu Dec 25 14:15:53 2025 +0700 Initial project structure and core packages Add initial monorepo structure for wagmi-project, including CLI, connectors, and core packages with source code, tests, configuration, and CI/CD workflows. This sets up the foundation for further development and collaboration. commit 1f452493d6ac5f23e20def94b7edf207bc2ce40a Author: snyk-io[bot] <141718529+snyk-io[bot]@users.noreply.github.com> Date: Wed Dec 24 21:11:40 2025 +0700 fix: extras/web/package.json to reduce vulnerabilities (#117) The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JS-NEXT-14400636 - https://snyk.io/vuln/SNYK-JS-NEXT-14400644 Co-authored-by: snyk-io[bot] <141718529+snyk-io[bot]@users.noreply.github.com> Co-authored-by: dargon789 <64915515+Dargon789@users.noreply.github.com> commit 8bad845d94b7ca97a1d01a255eb8b41357eaf38d Author: Dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Wed Dec 24 19:35:49 2025 +0700 feat: upgrade react from 18.3.1 to 19.2.0 (#121) Snyk has created this PR to upgrade react from 18.3.1 to 19.2.0. See this package in npm: react See this project in Snyk: https://app.snyk.io/org/dargon789/project/bb845543-cbee-4e11-8cf9-8bfdf9205bf1?utm_source=github&utm_medium=referral&page=upgrade-pr Co-authored-by: snyk-bot commit 5e6dca3ce44d2e8d5b00b1182ba9d6eae7855b23 Author: Dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Tue Dec 23 21:23:47 2025 +0700 Pin foundry to v1.5.0 instead of nightly (0xsequence#947) (#134) (#135) * Pin foundry to v1.5.0 instead of nightly (0xsequence#947) (#134) * Bump next from 15.5.7 to 15.5.9 (#944) Bumps [next](https://github.com/vercel/next.js) from 15.5.7 to 15.5.9. - [Release notes](https://github.com/vercel/next.js/releases) - [Changelog](https://github.com/vercel/next.js/blob/canary/release.js) - [Commits](https://github.com/vercel/next.js/compare/v15.5.7...v15.5.9) --- updated-dependencies: - dependency-name: next dependency-version: 15.5.9 dependency-type: direct:production ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Pin foundry to v1.5.0 instead of nightly (#947) * Include repo and extras in syncpack config to ensure deps are synced (#945) * Include repo and extras in syncpack config to ensure deps are synced across all * Updating support deps * Updating deps * Updating pnpm lock * Fixing type errors within wdk tests * Short circuit 404s (#949) * skip witness on signers that don't support it * add passkey to test * 3.0.0-beta.6 --------- Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Taylan Pince Co-authored-by: Corban Riley Co-authored-by: Agusx1211 * Update packages/wallet/wdk/test/wallets.test.ts Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update packages/wallet/wdk/test/wallets.test.ts Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> --------- Signed-off-by: dependabot[bot] Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Taylan Pince Co-authored-by: Corban Riley Co-authored-by: Agusx1211 Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> commit 802829cc116d9656dfb166beba03a1e77c8d556b Author: Dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Tue Dec 23 21:15:56 2025 +0700 2.3.7 (#131) (#132) * 2.3.7 (#131) * fix broken guard private key * Expose access to passkey credential list * Dapp client direct txn request (#856) * Signature request refactor * WIP * Refactor * Update dapp-client exports (#858) * Add hasPermission method to DappClient (#859) * Save discovered passkey credentials upon login * Expose name property in PasskeySignupArgs * Fix blacklist sort * Add multi server script * relayer: /SimulateV3 (#857) * Add await for handleOpenDB scheduleExpiration * Update increment to always include native once used * Fix session tests * Adding lastLoginAt to PasskeyCredential * LoginToPasskeyArgs now accept a credentialId which is used to specify which credential to use * Adding onSignatureRequestStatus function to register single use callbacks for when a request reaches a terminal state of completed or cancelled * When a login is cancelled we can remove the wallet which is logging-in * Add RC3 contracts * Sessions space restriction * Dedupe signers for encoding * Support RC3 sessions * Tightly increment call validation * CLI defaults to RC3 wallet code * Rc3 address test * Fix hashing tests * Add deprecated encoding test * wdk: throw errors from otp respond callback (#864) * wdk: throw errors from otp respond callback * wdk: otp auth error and handler refactor * Handle guard 2FA (#861) * guard: return a specific error when auth required * core: pass guard token to the service * wdk: handle prompting for guard 2FA code * dapp-client: handle prompting for guard 2FA code * guard 2fa tests * wdk: separate wallet and sessions guards * dapp-client: remove guard 2fa * dapp-client: fix imports * fix guard tests * wdk: remove unneeded promise resolve * Update relayer and api gen.ts, force public packages * Add standalone fetch queued payloads * Replacing GuardRole enum with string union type, as well as replacing guardAddresses Map with Record * Fallback to chain for non-logged in recovery * Add Katana, Sandbox Tesnet, Incentiv Testnet v2 (#873) * Update a few remaining dev1 contract addresses to rc3 (#874) * Remove unnecessary console.error where we already throw error * Improve DappClient hasPermission method * Wallet db try checksum and lowercase * Update dapp client json utils to include Map reviver and replacer * Bump next in the npm_and_yarn group across 1 directory Bumps the npm_and_yarn group with 1 update in the / directory: [next](https://github.com/vercel/next.js). Updates `next` from 15.4.2 to 15.4.7 - [Release notes](https://github.com/vercel/next.js/releases) - [Changelog](https://github.com/vercel/next.js/blob/canary/release.js) - [Commits](https://github.com/vercel/next.js/compare/v15.4.2...v15.4.7) --- updated-dependencies: - dependency-name: next dependency-version: 15.4.7 dependency-type: direct:production dependency-group: npm_and_yarn ... Signed-off-by: dependabot[bot] * Update type name, update exports for dapp client * Expired explicit sessions can't sign * Improve session validity test * session isValid returns invalid reason * InvalidReason is typed * Support multiple identity signers in sessions configuration * Device signers can approve implicit sessions * Remove invalid test * Fix recursion * Fix comment * Improve test stability by reducing race conditions * Do not set passkey signer as identity signer * Use length checks * Throw on missing identity signer * Encoding requires identity signer to encode * Fix test * Refactor/types namings tsdoc redundant code (#880) * refactor types, namings, ts doc * fix session response payload * change parameter name * change parameter name * change type in tests * improve types and dapp client methods * fix session test to use new types * refactor * refactor implicit sessions array in chain session manager * remove unused types * remove unused types and add ConnectionError * update pnpm lock * move reusable session types to wallet-core * Update some imports and update some response type names --------- Co-authored-by: Tolgahan Arikan * Fix check for explicit session for the updated type in dapp-client * Update api.gen.ts and relayer.gen.ts * Add missing chainId for dapp client event * Fix initializing new chain session manager on redirect * Add support for non-viem, custom Sequence chains (#882) * Update issue templates * Provider sent to prepareBlankEnvelope * Add session signature decoding * Add feeTokens endpoint to relayer (#885) * const for node length * Clearer blacklist size encoding * identity signer node length * Potential fix for code scanning alert no. 84: Insecure randomness Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> * add getFeeTokens to dapp client (#889) * add getFeeTokens to dapp client * fix typo * make getFeeTokens independent of chain session manager and initialize state (#890) * make getFeeTokens independent of chain session manager and initialized state * remove getFeeTokens from chain session manager * Throw specific error when trying to sign with an expired session (#887) * Throw when supported session signer is expired * Fix tests * Make dapp-client implicit sessions chain agnostic (#893) * Add Monad, remove LAOS and Root Network * Bump the npm_and_yarn group across 3 directories with 1 update Bumps the npm_and_yarn group with 1 update in the / directory: [happy-dom](https://github.com/capricorn86/happy-dom). Bumps the npm_and_yarn group with 1 update in the /packages/wallet/dapp-client directory: [happy-dom](https://github.com/capricorn86/happy-dom). Bumps the npm_and_yarn group with 1 update in the /packages/wallet/wdk directory: [happy-dom](https://github.com/capricorn86/happy-dom). Updates `happy-dom` from 17.6.3 to 20.0.0 - [Release notes](https://github.com/capricorn86/happy-dom/releases) - [Commits](https://github.com/capricorn86/happy-dom/compare/v17.6.3...v20.0.0) Updates `happy-dom` from 17.6.3 to 20.0.0 - [Release notes](https://github.com/capricorn86/happy-dom/releases) - [Commits](https://github.com/capricorn86/happy-dom/compare/v17.6.3...v20.0.0) Updates `happy-dom` from 17.6.3 to 20.0.0 - [Release notes](https://github.com/capricorn86/happy-dom/releases) - [Commits](https://github.com/capricorn86/happy-dom/compare/v17.6.3...v20.0.0) --- updated-dependencies: - dependency-name: happy-dom dependency-version: 20.0.0 dependency-type: direct:development dependency-group: npm_and_yarn - dependency-name: happy-dom dependency-version: 20.0.0 dependency-type: direct:development dependency-group: npm_and_yarn - dependency-name: happy-dom dependency-version: 20.0.0 dependency-type: direct:development dependency-group: npm_and_yarn ... Signed-off-by: dependabot[bot] * Bump happy-dom in the npm_and_yarn group across 1 directory (#69) Bumps the npm_and_yarn group with 1 update in the / directory: [happy-dom](https://github.com/capricorn86/happy-dom). Updates `happy-dom` from 20.0.0 to 20.0.2 - [Release notes](https://github.com/capricorn86/happy-dom/releases) - [Commits](https://github.com/capricorn86/happy-dom/compare/v20.0.0...v20.0.2) --- updated-dependencies: - dependency-name: happy-dom dependency-version: 20.0.2 dependency-type: direct:development dependency-group: npm_and_yarn ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Create SECURITY.md for security policy (#70) * Create SECURITY.md for security policy Add a security policy document outlining supported versions and vulnerability reporting. Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> * Update SECURITY.md Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> * Update SECURITY.md Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> --------- Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> * Update SECURITY.md Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> * Add support for sessionless dapp connection (#896) * Refactor relayer package & update dependant packages (#891) * refactor exports for relayer (#900) * Add Arc Testnet * Fix changelog config * Sessionless connection upgrade and error handling in DappClient (#902) * dapp-client: add sessionless snapshot restore flow * Bump the npm_and_yarn group across 3 directories with 1 update Bumps the npm_and_yarn group with 1 update in the / directory: [happy-dom](https://github.com/capricorn86/happy-dom). Bumps the npm_and_yarn group with 1 update in the /packages/wallet/dapp-client directory: [happy-dom](https://github.com/capricorn86/happy-dom). Bumps the npm_and_yarn group with 1 update in the /packages/wallet/wdk directory: [happy-dom](https://github.com/capricorn86/happy-dom). Updates `happy-dom` from 17.6.3 to 20.0.2 - [Release notes](https://github.com/capricorn86/happy-dom/releases) - [Commits](https://github.com/capricorn86/happy-dom/compare/v17.6.3...v20.0.2) Updates `happy-dom` from 17.6.3 to 20.0.2 - [Release notes](https://github.com/capricorn86/happy-dom/releases) - [Commits](https://github.com/capricorn86/happy-dom/compare/v17.6.3...v20.0.2) Updates `happy-dom` from 17.6.3 to 20.0.2 - [Release notes](https://github.com/capricorn86/happy-dom/releases) - [Commits](https://github.com/capricorn86/happy-dom/compare/v17.6.3...v20.0.2) --- updated-dependencies: - dependency-name: happy-dom dependency-version: 20.0.2 dependency-type: direct:development dependency-group: npm_and_yarn - dependency-name: happy-dom dependency-version: 20.0.2 dependency-type: direct:development dependency-group: npm_and_yarn - dependency-name: happy-dom dependency-version: 20.0.2 dependency-type: direct:development dependency-group: npm_and_yarn ... Signed-off-by: dependabot[bot] * Allow to logout a wallet with skipRemoveDevice even if the wallet is not in a ready state to allow force removing of wallets (#906) * Pass request to PromptCodeHandler in guard registerUI (#909) * Pass request to PromptCodeHandler in guard registerUI * Fixing guard registerUI test * guard: allow using recovery code as 2FA token (#910) * guard: allow using recovery code as 2FA token * Cleanup types of ResponseFn --------- Co-authored-by: Corban Riley * Add a way to reset 2fa when using a backup code (#911) * Add a way to reset 2fa when using a backup code * use the GuardToken type instead of breaking out the props * Update SECURITY.md Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update packages/wallet/dapp-client/src/DappTransport.ts Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update package.json Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update SECURITY.md Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update wagmi-project/package.json Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update wagmi-project/package.json Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update wagmi-project/src/App.tsx Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Create FUNDING.json (#90) Enhancements: Include FUNDING.json to display GitHub sponsorship options in the repository Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Create config.yml (#91) Add initial CircleCI configuration to enable automated builds using a custom Docker executor and a defined workflow. Build: Add .circleci/config.yml with version 2.1 specification and custom Docker executor. CI: Define web3-defi-game-project job with checkout step. Set up my-custom-workflow to run the job. Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Add rc4 contracts * Set rc4 as default and add it to lists * Session enhanced replay protection * New sessions replay protection hashes payload * Use the 4337 factory wrapper * Update keymachine url in dapp-client constants * Update keymachine url in Provider constructor * SSR safety (#915) * SSR safety test * Fix CI job * Guard dapp-client for SSR (lazy transport, browser checks, gated storage) * Fix guard topology (#918) * Use proper guard topology * Test and fixes * login and setup tests * Switch prod manager settings (#917) * Add prod guard and identity instrument info * Remove completed TODOs * Small JS tweaks (#919) * Fix type exports to built declarations * Update repository links to current package paths * Improve Next app tooling and React typings * Expose primitives CLI bin and use base lint config * Update relayer.gen.ts and TransactionPrecondition interface * Update api.gen.ts * Update metadata.gen.ts * Update marketplace.gen.ts * Update guard.gen.ts * Support multiple identity signers in sessions configuration * Device signers can approve implicit sessions * Remove invalid test * Fix recursion * Fix comment * Improve test stability by reducing race conditions * Do not set passkey signer as identity signer * Use length checks * Throw on missing identity signer * Encoding requires identity signer to encode * Fix test * Refactor/types namings tsdoc redundant code (#880) * refactor types, namings, ts doc * fix session response payload * change parameter name * change parameter name * change type in tests * improve types and dapp client methods * fix session test to use new types * refactor * refactor implicit sessions array in chain session manager * remove unused types * remove unused types and add ConnectionError * update pnpm lock * move reusable session types to wallet-core * Update some imports and update some response type names --------- Co-authored-by: Tolgahan Arikan * Fix check for explicit session for the updated type in dapp-client * Update api.gen.ts and relayer.gen.ts * Add missing chainId for dapp client event * Fix initializing new chain session manager on redirect * Add support for non-viem, custom Sequence chains (#882) * Provider sent to prepareBlankEnvelope * Add session signature decoding * const for node length * Clearer blacklist size encoding * identity signer node length * Add feeTokens endpoint to relayer (#885) * add getFeeTokens to dapp client (#889) * add getFeeTokens to dapp client * fix typo * make getFeeTokens independent of chain session manager and initialize state (#890) * make getFeeTokens independent of chain session manager and initialized state * remove getFeeTokens from chain session manager * Throw specific error when trying to sign with an expired session (#887) * Throw when supported session signer is expired * Fix tests * Make dapp-client implicit sessions chain agnostic (#893) * Add Monad, remove LAOS and Root Network * Add support for sessionless dapp connection (#896) * Refactor relayer package & update dependant packages (#891) * refactor exports for relayer (#900) * Add Arc Testnet * Fix changelog config * Sessionless connection upgrade and error handling in DappClient (#902) * dapp-client: add sessionless snapshot restore flow * Allow to logout a wallet with skipRemoveDevice even if the wallet is not in a ready state to allow force removing of wallets (#906) * Pass request to PromptCodeHandler in guard registerUI (#909) * Pass request to PromptCodeHandler in guard registerUI * Fixing guard registerUI test * guard: allow using recovery code as 2FA token (#910) * guard: allow using recovery code as 2FA token * Cleanup types of ResponseFn --------- Co-authored-by: Corban Riley * Add a way to reset 2fa when using a backup code (#911) * Add a way to reset 2fa when using a backup code * use the GuardToken type instead of breaking out the props * Add rc4 contracts * Set rc4 as default and add it to lists * Session enhanced replay protection * New sessions replay protection hashes payload * Use the 4337 factory wrapper * Update keymachine url in dapp-client constants * Update keymachine url in Provider constructor * SSR safety (#915) * Guard dapp-client for SSR (lazy transport, browser checks, gated storage) * Fix guard topology (#918) * Use proper guard topology * Test and fixes * login and setup tests * Switch prod manager settings (#917) * Add prod guard and identity instrument info * Remove completed TODOs * Small JS tweaks (#919) * Fix type exports to built declarations * Update repository links to current package paths * Improve Next app tooling and React typings * Expose primitives CLI bin and use base lint config * Update relayer.gen.ts and TransactionPrecondition interface * Update relayer.gen.ts and TransactionPrecondition interface (#920) * 3.0.0-beta.1 * identity-instrument: generate nonce from current time (#921) * Remove publish-dists.yml github action (#923) * 3.0.0-beta.2 * Clean up changeset config * Improve test stability by removing race conditions * Ensure build before test * Updating happy-dom to 20.0.10 (#926) * Add support for custom auth providers (authcode & authcode-pkce only) (#894) * Add support for custom auth providers (authcode & authcode-pkce only) * fix authcode tests * Updating Deps November 2025 (#927) * Updating deps for the workspace root * Updating deps for wallet/wdk * Fixing sessions test for latest vitest * Lets not upgrade to the latest typescript quite yet * Updating to latest vitest * Updating deps for wallet/core * Updating deps for wallet/primitives-cli * Updating deps for wallet/dapp-client * Adding syncpack to check for dep version inconsistencies * Setup syncpack versionGroups for pnpm workspace:^ * Fixing dep versions mismatches * Fixing @types/node mismatches * Adding syncpack to pre commit hook * Remove the syncpack format script. * Update ox to v9.17.0 (#928) * Upgrading ox to 9.17.0 * WrappedSignature renamed to SignatureErc6492 * Fixing PasskeySignatureValidator interface * Lock ox lib dep to use the same version with pnpm overrides and update viem to latest * Fix explicitSessionRequested check in dapp client * Typescript 5.9.3 (#930) * Upgrading to typescript v5.9.3 * Fix type errors that arose from typescript upgrade related to Bytes and Buffer source typings. * Don't catch errors thrown by Guard 2FA or reject early to allow multiple attempts on incorrect TOTP (#931) * Update pnpm * Mark @0xsequence/wallet-primitives-cli as private * 3.0.0-beta.3 * changeset cleanup * Fix rc4 4337 factory (#933) * Add rc5 and set it as default (#934) * 3.0.0-beta.4 * Update SECURITY.md Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update wagmi-project/package.json Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update wagmi-project/package.json Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Bump next from 15.5.5 to 15.5.7 (#936) Bumps [next](https://github.com/vercel/next.js) from 15.5.5 to 15.5.7. - [Release notes](https://github.com/vercel/next.js/releases) - [Changelog](https://github.com/vercel/next.js/blob/canary/release.js) - [Commits](https://github.com/vercel/next.js/compare/v15.5.5...v15.5.7) --- updated-dependencies: - dependency-name: next dependency-version: 15.5.7 dependency-type: direct:production ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * add userdata service client (#940) * Skip LocalDevice identity signers not on current device (#942) * Skip LocalDevice identity signers not on current device * Update log * 3.0.0-beta.5 * Update config.yml (#102) * Update config.yml Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update .circleci/config.yml Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> --------- Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com> * Update config.yml (#103) * Update config.yml Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update .circleci/config.yml Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> --------- Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com> * fix: extras/web/package.json to reduce vulnerabilities (#101) The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JS-NEXT-14173355 Co-authored-by: snyk-io[bot] <141718529+snyk-io[bot]@users.noreply.github.com> * fix: extras/docs/package.json to reduce vulnerabilities (#100) The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JS-NEXT-14173355 Co-authored-by: snyk-io[bot] <141718529+snyk-io[bot]@users.noreply.github.com> * fix: package.json to reduce vulnerabilities (#104) The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JS-BABELHELPERS-9397697 - https://snyk.io/vuln/SNYK-JS-BABELRUNTIME-10044504 - https://snyk.io/vuln/SNYK-JS-BRACEEXPANSION-9789073 - https://snyk.io/vuln/SNYK-JS-CROSSSPAWN-8303230 - https://snyk.io/vuln/SNYK-JS-ELLIPTIC-7577916 - https://snyk.io/vuln/SNYK-JS-ELLIPTIC-7577917 - https://snyk.io/vuln/SNYK-JS-ELLIPTIC-7577918 - https://snyk.io/vuln/SNYK-JS-ELLIPTIC-8187303 - https://snyk.io/vuln/SNYK-JS-ELLIPTIC-8720086 - https://snyk.io/vuln/SNYK-JS-IMAGESIZE-9634164 - https://snyk.io/vuln/SNYK-JS-INFLIGHT-6095116 - https://snyk.io/vuln/SNYK-JS-JSYAML-13961110 - https://snyk.io/vuln/SNYK-JS-MICROMATCH-6838728 - https://snyk.io/vuln/SNYK-JS-NODEFORGE-14114940 - https://snyk.io/vuln/SNYK-JS-NODEFORGE-14125097 - https://snyk.io/vuln/SNYK-JS-NODEFORGE-14125745 - https://snyk.io/vuln/SNYK-JS-ONHEADERS-10773729 - https://snyk.io/vuln/SNYK-JS-ROLLUP-8073097 - https://snyk.io/vuln/SNYK-JS-SECP256K1-8237220 - https://snyk.io/vuln/SNYK-JS-SEND-7926862 - https://snyk.io/vuln/SNYK-JS-SERVESTATIC-7926865 - https://snyk.io/vuln/SNYK-JS-SHAJS-12089400 Co-authored-by: snyk-io[bot] <141718529+snyk-io[bot]@users.noreply.github.com> * Revert "Merge remote-tracking branch 'origin/dependabot/npm_and_yarn/npm_and_yarn-318c02e2da'" This reverts commit fd0fdf9ecc6ad9056447e381de7fc5bb19f78e47, reversing changes made to cba78943db9942a4635bb530b7a43fc5d18b0ab4. * fix: extras/web/package.json to reduce vulnerabilities (#109) The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JS-NEXT-14173355 Co-authored-by: snyk-bot * fix: extras/docs/package.json to reduce vulnerabilities (#106) The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JS-NEXT-14400636 - https://snyk.io/vuln/SNYK-JS-NEXT-14400644 Co-authored-by: snyk-bot * Bump next in the npm_and_yarn group across 1 directory (#110) Bumps the npm_and_yarn group with 1 update in the / directory: [next](https://github.com/vercel/next.js). Updates `next` from 15.5.7 to 15.5.9 - [Release notes](https://github.com/vercel/next.js/releases) - [Changelog](https://github.com/vercel/next.js/blob/canary/release.js) - [Commits](https://github.com/vercel/next.js/compare/v15.5.7...v15.5.9) --- updated-dependencies: - dependency-name: next dependency-version: 15.5.9 dependency-type: direct:production dependency-group: npm_and_yarn ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Delete .github/workflows/fortify.yml (#111) Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * fix: extras/web/package.json to reduce vulnerabilities (#107) The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JS-NEXT-14400636 - https://snyk.io/vuln/SNYK-JS-NEXT-14400644 Co-authored-by: snyk-bot * Bump the npm_and_yarn group across 1 directory with 3 updates (#115) Bumps the npm_and_yarn group with 1 update in the / directory: [next](https://github.com/vercel/next.js). Updates `next` from 15.5.5 to 15.5.9 - [Release notes](https://github.com/vercel/next.js/releases) - [Changelog](https://github.com/vercel/next.js/blob/canary/release.js) - [Commits](https://github.com/vercel/next.js/compare/v15.5.5...v15.5.9) Updates `happy-dom` from 17.6.3 to 20.0.11 - [Release notes](https://github.com/capricorn86/happy-dom/releases) - [Commits](https://github.com/capricorn86/happy-dom/compare/v17.6.3...v20.0.11) Updates `vite` from 7.1.10 to 7.2.7 - [Release notes](https://github.com/vitejs/vite/releases) - [Changelog](https://github.com/vitejs/vite/blob/v7.2.7/packages/vite/CHANGELOG.md) - [Commits](https://github.com/vitejs/vite/commits/v7.2.7/packages/vite) --- updated-dependencies: - dependency-name: next dependency-version: 15.5.9 dependency-type: direct:production dependency-group: npm_and_yarn - dependency-name: happy-dom dependency-version: 20.0.11 dependency-type: direct:development dependency-group: npm_and_yarn - dependency-name: vite dependency-version: 7.2.7 dependency-type: indirect dependency-group: npm_and_yarn ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Bump next from 15.5.7 to 15.5.9 (#944) Bumps [next](https://github.com/vercel/next.js) from 15.5.7 to 15.5.9. - [Release notes](https://github.com/vercel/next.js/releases) - [Changelog](https://github.com/vercel/next.js/blob/canary/release.js) - [Commits](https://github.com/vercel/next.js/compare/v15.5.7...v15.5.9) --- updated-dependencies: - dependency-name: next dependency-version: 15.5.9 dependency-type: direct:production ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Pin foundry to v1.5.0 instead of nightly (#947) * Include repo and extras in syncpack config to ensure deps are synced (#945) * Include repo and extras in syncpack config to ensure deps are synced across all * Updating support deps * Updating deps * Updating pnpm lock * Fixing type errors within wdk tests * Short circuit 404s (#949) * skip witness on signers that don't support it * add passkey to test * 3.0.0-beta.6 * Update tests.yml (#119) Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update config.yml (#120) Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update packages/services/identity-instrument/src/index.ts Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * feat: upgrade @wagmi/cli from 0.1.15 to 2.8.0 (#126) Snyk has created this PR to upgrade @wagmi/cli from 0.1.15 to 2.8.0. See this package in npm: @wagmi/cli See this project in Snyk: https://app.snyk.io/org/dargon789/project/bb845543-cbee-4e11-8cf9-8bfdf9205bf1?utm_source=github&utm_medium=referral&page=upgrade-pr Co-authored-by: snyk-bot * Potential fix for code scanning alert no. 82: Workflow does not contain permissions Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Potential fix for code scanning alert no. 62: Information exposure through a stack trace Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> --------- Signed-off-by: dependabot[bot] Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> Co-authored-by: Patryk Kalinowski Co-authored-by: Corban Riley Co-authored-by: tolgahan-arikan Co-authored-by: Agusx1211 Co-authored-by: Michael Standen Co-authored-by: William Hua Co-authored-by: Michael Standen Co-authored-by: Patryk Kalinowski Co-authored-by: Taylan Pince Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Gabi <56271768+VGabriel45@users.noreply.github.com> Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com> Co-authored-by: snyk-io[bot] <141718529+snyk-io[bot]@users.noreply.github.com> Co-authored-by: snyk-bot * Update extras/docs/package.json Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update extras/web/package.json Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> --------- Signed-off-by: dependabot[bot] Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> Co-authored-by: Patryk Kalinowski Co-authored-by: Corban Riley Co-authored-by: tolgahan-arikan Co-authored-by: Agusx1211 Co-authored-by: Michael Standen Co-authored-by: William Hua Co-authored-by: Michael Standen Co-authored-by: Patryk Kalinowski Co-authored-by: Taylan Pince Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Gabi <56271768+VGabriel45@users.noreply.github.com> Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com> Co-authored-by: snyk-io[bot] <141718529+snyk-io[bot]@users.noreply.github.com> Co-authored-by: snyk-bot commit 893eedbb1a99db6736a157fed7d73a0196f30778 Merge: bc418b171 7fe4a922d Author: dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Tue Dec 23 18:50:09 2025 +0700 Merge remote-tracking branch 'origin/v1' into v1 commit 7fe4a922dfbd817fa76b8e30e9be184e6f38ddb1 Author: Dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Tue Dec 23 18:16:10 2025 +0700 Update wagmi-project/src/App.tsx Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> commit 640be8ffe175c762828aded47cc76e8d2c404b56 Author: Dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Tue Dec 23 18:15:48 2025 +0700 Update wagmi-project/src/App.tsx Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> commit 51a64321d3c0b91c9bd43c1e7e693f974c045dbb Author: Dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Tue Dec 23 18:15:24 2025 +0700 Update wagmi-project/src/App.tsx Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> commit 28a268eef9f36a4bcf257d175c49c31f55f8008b Author: Dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Tue Dec 23 18:14:59 2025 +0700 Update wagmi-project/src/App.tsx Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> commit bc418b171da95091d834f3a21141780169818db3 Author: Dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Tue Dec 23 00:27:24 2025 +0700 Master ceb95d4 (#129) * Update issue templates (#128) * Bump the npm_and_yarn group across 1 directory with 1 update Bumps the npm_and_yarn group with 1 update in the / directory: [express](https://github.com/expressjs/express). Updates `express` from 4.18.2 to 4.19.2 - [Release notes](https://github.com/expressjs/express/releases) - [Changelog](https://github.com/expressjs/express/blob/master/History.md) - [Commits](https://github.com/expressjs/express/compare/4.18.2...4.19.2) --- updated-dependencies: - dependency-name: express dependency-type: direct:development dependency-group: npm_and_yarn-security-group ... Signed-off-by: dependabot[bot] * Create SECURITY.md * Set up CI with Azure Pipelines [skip ci] * Create CNAME * Create fortify.yml * Update issue templates * Update CNAME * fix: upgrade @tanstack/react-query from 5.45.1 to 5.64.2 Snyk has created this PR to upgrade @tanstack/react-query from 5.45.1 to 5.64.2. See this package in npm: @tanstack/react-query See this project in Snyk: https://app.snyk.io/org/dargon789/project/bb845543-cbee-4e11-8cf9-8bfdf9205bf1?utm_source=github&utm_medium=referral&page=upgrade-pr * Create config.yml (#46) Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> * Support multiple identity signers in sessions configuration * Device signers can approve implicit sessions * Remove invalid test * Fix recursion * Fix comment * Improve test stability by reducing race conditions * Do not set passkey signer as identity signer * Use length checks * Throw on missing identity signer * Encoding requires identity signer to encode * Fix test * Refactor/types namings tsdoc redundant code (#880) * refactor types, namings, ts doc * fix session response payload * change parameter name * change parameter name * change type in tests * improve types and dapp client methods * fix session test to use new types * refactor * refactor implicit sessions array in chain session manager * remove unused types * remove unused types and add ConnectionError * update pnpm lock * move reusable session types to wallet-core * Update some imports and update some response type names --------- Co-authored-by: Tolgahan Arikan * Fix check for explicit session for the updated type in dapp-client * Update api.gen.ts and relayer.gen.ts * Add missing chainId for dapp client event * Fix initializing new chain session manager on redirect * Add support for non-viem, custom Sequence chains (#882) * Provider sent to prepareBlankEnvelope * Update fortify.yml Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> * Add session signature decoding * Add feeTokens endpoint to relayer (#885) * const for node length * Clearer blacklist size encoding * identity signer node length * add getFeeTokens to dapp client (#889) * add getFeeTokens to dapp client * fix typo * make getFeeTokens independent of chain session manager and initialize state (#890) * make getFeeTokens independent of chain session manager and initialized state * remove getFeeTokens from chain session manager * Throw specific error when trying to sign with an expired session (#887) * Throw when supported session signer is expired * Fix tests * Make dapp-client implicit sessions chain agnostic (#893) * A… * Bump body-parser in the npm_and_yarn group across 1 directory (#190) Bumps the npm_and_yarn group with 1 update in the /lib/signals-implicit-mode/lib/sequence-v3/lib/account-abstraction directory: [body-parser](https://github.com/expressjs/body-parser). Updates `body-parser` from 1.20.2 to 1.20.4 - [Release notes](https://github.com/expressjs/body-parser/releases) - [Changelog](https://github.com/expressjs/body-parser/blob/master/HISTORY.md) - [Commits](https://github.com/expressjs/body-parser/compare/1.20.2...1.20.4) --- updated-dependencies: - dependency-name: body-parser dependency-version: 1.20.4 dependency-type: indirect dependency-group: npm_and_yarn ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Potential fix for code scanning alert no. 92: Insecure randomness Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Potential fix for code scanning alert no. 94: Insecure randomness Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Potential fix for code scanning alert no. 93: Incomplete regular expression for hostnames Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Potential fix for code scanning alert no. 95: Information exposure through a stack trace Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Delete lib/signals-implicit-mode/lib/sequence-v3/lib/erc2470-libs directory (#202) erc2470-libs directory non forge std remove and clean Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Delete lib/signals-implicit-mode/lib/sequence-v3/script/DeployMocks.s.sol (#203) erc2470-libs directory non forge std remove and clean all env Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Delete wagmi-project/packages/sequence-core-1.0.0/lib/signals-implicit-mode/lib/sequence-v3/lib/erc2470-libs directory (#204) erc2470-libs directory non forge std remove and clean all env Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Delete wagmi-project/packages/sequence-core-1.0.0/lib/signals-implicit-mode/lib/sequence-v3/script/DeployMocks.s.sol (#205) Chores: Delete the erc2470-libs directory and its contents, including forge-std sources, tests, scripts, and related configuration files, to reduce duplicated tooling and dependencies. Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Fix React Server Components CVE vulnerabilities (#209) Updated dependencies to fix Next.js and React CVE vulnerabilities. The fix-react2shell-next tool automatically updated the following packages to their secure versions: - next - react-server-dom-webpack - react-server-dom-parcel - react-server-dom-turbopack All package.json files have been scanned and vulnerable versions have been patched to the correct fixed versions based on the official React advisory. Co-authored-by: Vercel * Create Docker.yml (#210) CI: Introduce a Docker GitHub Actions workflow that authenticates to Docker Hub, builds images with Buildx, tags them using metadata, and pushes or locally loads them depending on the event type. Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * move circleci docker to github * Fix React Server Components CVE vulnerabilities (#211) Updated dependencies to fix Next.js and React CVE vulnerabilities. The fix-react2shell-next tool automatically updated the following packages to their secure versions: - next - react-server-dom-webpack - react-server-dom-parcel - react-server-dom-turbopack All package.json files have been scanned and vulnerable versions have been patched to the correct fixed versions based on the official React advisory. Co-authored-by: Vercel * Potential fix for code scanning alert no. 92: Insecure randomness Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Potential fix for code scanning alert no. 93: Incomplete regular expression for hostnames Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update lib/signals-implicit-mode/foundry.toml Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Delete .github/.circleci directory (#216) Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Delete .github/workflows/publish-dists.yml (#217) Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Revert "Delete lib/signals-implicit-mode/lib/sequence-v3/script/DeployMocks.s…" (#218) This reverts commit f9123e43459040f24b7f29fd7e8f74d1a920ce51. * Revert "Delete lib/signals-implicit-mode/lib/sequence-v3/lib/erc2470-libs dir…" (#219) * Revert "Delete lib/signals-implicit-mode/lib/sequence-v3/lib/erc2470-libs dir…" This reverts commit 75ae648720ba6c85cc9597348550ff522cbde832. * Update lib/signals-implicit-mode/lib/sequence-v3/lib/erc2470-libs/.githooks/pre-commit Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update lib/signals-implicit-mode/lib/sequence-v3/lib/erc2470-libs/README.md Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update lib/signals-implicit-mode/lib/sequence-v3/lib/erc2470-libs/lib/forge-std/README.md Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update lib/signals-implicit-mode/lib/sequence-v3/lib/erc2470-libs/lib/forge-std/scripts/vm.py Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> --------- Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> * Sequence.js/master (#222) * Fix apple auth scope (#950) * Fix apple auth scope * Fix Apple auth scope test * 3.0.0-beta.7 * Update apple auth scope (#951) * 3.0.0-beta.8 * dapp-client: export TransportMessage and MessageType * Adding eoa LoginMethod to dapp-client --------- Co-authored-by: tolgahan-arikan Co-authored-by: Taylan Pince Co-authored-by: Corban Riley * Wagmi project (#199) * 0xsequence/sequence.js/master (#166) * Pin foundry to v1.5.0 instead of nightly (0xsequence#947) (#134) * Bump next from 15.5.7 to 15.5.9 (#944) Bumps [next](https://github.com/vercel/next.js) from 15.5.7 to 15.5.9. - [Release notes](https://github.com/vercel/next.js/releases) - [Changelog](https://github.com/vercel/next.js/blob/canary/release.js) - [Commits](https://github.com/vercel/next.js/compare/v15.5.7...v15.5.9) --- updated-dependencies: - dependency-name: next dependency-version: 15.5.9 dependency-type: direct:production ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Pin foundry to v1.5.0 instead of nightly (#947) * Include repo and extras in syncpack config to ensure deps are synced (#945) * Include repo and extras in syncpack config to ensure deps are synced across all * Updating support deps * Updating deps * Updating pnpm lock * Fixing type errors within wdk tests * Short circuit 404s (#949) * skip witness on signers that don't support it * add passkey to test * 3.0.0-beta.6 --------- Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Taylan Pince Co-authored-by: Corban Riley Co-authored-by: Agusx1211 * Update packages/wallet/wdk/test/wallets.test.ts Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update packages/wallet/wdk/test/wallets.test.ts Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> --------- Signed-off-by: dependabot[bot] Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Taylan Pince Co-authored-by: Corban Riley Co-authored-by: Agusx1211 Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> * Fix apple auth scope (#950) * Fix apple auth scope * Fix Apple auth scope test * 3.0.0-beta.7 * Update apple auth scope (#951) * 3.0.0-beta.8 * dapp-client: export TransportMessage and MessageType * Update indexer client (#207) * [AUTOMATED] Update: proto/clients/indexer*.gen.ts * [AUTOMATED] Update: proto/clients/indexer*.gen.ts * [AUTOMATED] Update: proto/clients/indexer*.gen.ts * [AUTOMATED] Update: proto/clients/indexer*.gen.ts * [AUTOMATED] Update: proto/clients/indexer*.gen.ts * [AUTOMATED] Update: proto/clients/indexer*.gen.ts * [AUTOMATED] Update: proto/clients/indexer*.gen.ts * [AUTOMATED] Update: proto/clients/indexer*.gen.ts --------- Co-authored-by: marino39 <722509+marino39@users.noreply.github.com> Co-authored-by: pkieltyka <18831+pkieltyka@users.noreply.github.com> Co-authored-by: xiam <385670+xiam@users.noreply.github.com> --------- Signed-off-by: dependabot[bot] Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Taylan Pince Co-authored-by: Corban Riley Co-authored-by: Agusx1211 Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Co-authored-by: tolgahan-arikan Co-authored-by: marino39 <722509+marino39@users.noreply.github.com> Co-authored-by: pkieltyka <18831+pkieltyka@users.noreply.github.com> Co-authored-by: xiam <385670+xiam@users.noreply.github.com> * Wagmi project (#225) * 0xsequence/sequence.js/master (#166) * Pin foundry to v1.5.0 instead of nightly (0xsequence#947) (#134) * Bump next from 15.5.7 to 15.5.9 (#944) Bumps [next](https://github.com/vercel/next.js) from 15.5.7 to 15.5.9. - [Release notes](https://github.com/vercel/next.js/releases) - [Changelog](https://github.com/vercel/next.js/blob/canary/release.js) - [Commits](https://github.com/vercel/next.js/compare/v15.5.7...v15.5.9) --- updated-dependencies: - dependency-name: next dependency-version: 15.5.9 dependency-type: direct:production ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Pin foundry to v1.5.0 instead of nightly (#947) * Include repo and extras in syncpack config to ensure deps are synced (#945) * Include repo and extras in syncpack config to ensure deps are synced across all * Updating support deps * Updating deps * Updating pnpm lock * Fixing type errors within wdk tests * Short circuit 404s (#949) * skip witness on signers that don't support it * add passkey to test * 3.0.0-beta.6 --------- Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Taylan Pince Co-authored-by: Corban Riley Co-authored-by: Agusx1211 * Update packages/wallet/wdk/test/wallets.test.ts Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update packages/wallet/wdk/test/wallets.test.ts Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> --------- Signed-off-by: dependabot[bot] Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Taylan Pince Co-authored-by: Corban Riley Co-authored-by: Agusx1211 Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> * Fix apple auth scope (#950) * Fix apple auth scope * Fix Apple auth scope test * 3.0.0-beta.7 * Update apple auth scope (#951) * 3.0.0-beta.8 * dapp-client: export TransportMessage and MessageType * Update indexer client (#207) * [AUTOMATED] Update: proto/clients/indexer*.gen.ts * [AUTOMATED] Update: proto/clients/indexer*.gen.ts * [AUTOMATED] Update: proto/clients/indexer*.gen.ts * [AUTOMATED] Update: proto/clients/indexer*.gen.ts * [AUTOMATED] Update: proto/clients/indexer*.gen.ts * [AUTOMATED] Update: proto/clients/indexer*.gen.ts * [AUTOMATED] Update: proto/clients/indexer*.gen.ts * [AUTOMATED] Update: proto/clients/indexer*.gen.ts --------- Co-authored-by: marino39 <722509+marino39@users.noreply.github.com> Co-authored-by: pkieltyka <18831+pkieltyka@users.noreply.github.com> Co-authored-by: xiam <385670+xiam@users.noreply.github.com> --------- Signed-off-by: dependabot[bot] Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Taylan Pince Co-authored-by: Corban Riley Co-authored-by: Agusx1211 Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Co-authored-by: tolgahan-arikan Co-authored-by: marino39 <722509+marino39@users.noreply.github.com> Co-authored-by: pkieltyka <18831+pkieltyka@users.noreply.github.com> Co-authored-by: xiam <385670+xiam@users.noreply.github.com> * 1.10.15 (#229) * Fix apple auth scope (#950) * Fix apple auth scope * Fix Apple auth scope test * 3.0.0-beta.7 * Update apple auth scope (#951) * 3.0.0-beta.8 * dapp-client: export TransportMessage and MessageType * Adding eoa LoginMethod to dapp-client * 3.0.0-beta.9 * chore(dapp-client): re-export network/util helpers and add explicit session config helper --------- Co-authored-by: tolgahan-arikan Co-authored-by: Taylan Pince Co-authored-by: Corban Riley * 0xsequence 1.9.19 (#194) * 1.9.17 * Update packages/0xsequence/CHANGELOG.md Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update packages/account/CHANGELOG.md Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update packages/auth/CHANGELOG.md Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update packages/multicall/CHANGELOG.md Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update packages/provider/CHANGELOG.md Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update packages/wallet/CHANGELOG.md Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * 1.9.19 * Update packages/waas/src/networks.ts Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Squashed commit of the following: commit dafd2eda59d728355ab9028d03b0e10b014f2818 Author: Dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Wed Jan 7 06:30:16 2026 +0700 Create nextjs.yml (#176) CI: Introduce a Next.js GitHub Actions workflow that detects the package manager, builds the app, caches Next.js artifacts, and deploys the static output to GitHub Pages. Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> commit e6efe1f5b8e19fcd47714aa1417a9a01a16343a9 Author: dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Wed Jan 7 06:06:13 2026 +0700 sequence-core-dapp-1.0.0 commit cd4a860bbe5d27a96fd2a091cb6d074ff1c92331 Author: Dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Tue Jan 6 01:37:52 2026 +0700 Create web-sdk.yml (#175) https://github.com/Dargon789/Web3-Onboard/commit/fb66abf9ef6c55706a1dab2198db715f2588f1d1 https://github.com/Dargon789/web-sdk/commit/d26f62241ed85e6108a481f7a74ba7573c6c4c95 Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> commit f2fd08bd5c463fc1c154c0fb26d8286bfcde01fa Author: Dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Wed Dec 31 01:11:33 2025 +0700 V2 (#174) * Updating DefaultGuest address * Update tests.yml (#51) Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> * Update tests.yml (#52) Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> * Update tests.yml Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> * Update tests.yml (#55) Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> * Update tests.yml (#56) Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> * Update tests.yml Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> --------- Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> Co-authored-by: Corban Riley commit e7b277e79c7fe27c3cb129627d9f70e5bea9a25c Author: Dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Wed Dec 31 00:17:52 2025 +0700 Revise security policy for reporting vulnerabilities (#173) * Revise security policy for reporting vulnerabilities Updated contact information for vulnerability reporting. https://github.com/Dargon789/sequence.js/commit/e90b2e6395fb14c6463a02e88f65dc23ce455d6d Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update SECURITY.md Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> --------- Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> commit 70208b1b85034bada6c5f8f858cc11bfd1a11241 Author: Dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Tue Dec 30 21:50:23 2025 +0700 Potential fix for code scanning alert no. 95: Information exposure through a stack trace Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> commit 4c696d0e57d8ec45057b111bfb551ab497d0f93a Author: Dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Tue Dec 30 21:47:34 2025 +0700 Potential fix for code scanning alert no. 94: Insecure randomness Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> commit c62e5ddc2818a6b0624d63be3089c5ad7d08bd72 Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue Dec 30 21:42:22 2025 +0700 Bump happy-dom in the npm_and_yarn group across 1 directory (#167) Bumps the npm_and_yarn group with 1 update in the /wagmi-project directory: [happy-dom](https://github.com/capricorn86/happy-dom). Updates `happy-dom` from 18.0.1 to 20.0.2 - [Release notes](https://github.com/capricorn86/happy-dom/releases) - [Commits](https://github.com/capricorn86/happy-dom/compare/v18.0.1...v20.0.2) --- updated-dependencies: - dependency-name: happy-dom dependency-version: 20.0.2 dependency-type: direct:development dependency-group: npm_and_yarn ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> commit e13fe5a71769b6d325b9cc3185c4a0519205f7b1 Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue Dec 30 21:19:24 2025 +0700 Bump the npm_and_yarn group across 2 directories with 4 updates (#161) Bumps the npm_and_yarn group with 1 update in the / directory: [webpack-dev-server](https://github.com/webpack/webpack-dev-server). Bumps the npm_and_yarn group with 1 update in the /packages/0xsequence directory: [webpack-dev-server](https://github.com/webpack/webpack-dev-server). Updates `webpack-dev-server` from 3.11.3 to 5.2.1 - [Release notes](https://github.com/webpack/webpack-dev-server/releases) - [Changelog](https://github.com/webpack/webpack-dev-server/blob/main/CHANGELOG.md) - [Commits](https://github.com/webpack/webpack-dev-server/compare/v3.11.3...v5.2.1) Updates `http-proxy-middleware` from 0.19.1 to 2.0.9 - [Release notes](https://github.com/chimurai/http-proxy-middleware/releases) - [Changelog](https://github.com/chimurai/http-proxy-middleware/blob/v2.0.9/CHANGELOG.md) - [Commits](https://github.com/chimurai/http-proxy-middleware/compare/v0.19.1...v2.0.9) Updates `micromatch` from 3.1.10 to 4.0.8 - [Release notes](https://github.com/micromatch/micromatch/releases) - [Changelog](https://github.com/micromatch/micromatch/blob/master/CHANGELOG.md) - [Commits](https://github.com/micromatch/micromatch/compare/3.1.10...4.0.8) Updates `on-headers` from 1.0.2 to 1.1.0 - [Release notes](https://github.com/jshttp/on-headers/releases) - [Changelog](https://github.com/jshttp/on-headers/blob/master/HISTORY.md) - [Commits](https://github.com/jshttp/on-headers/compare/v1.0.2...v1.1.0) Updates `webpack-dev-server` from 3.11.3 to 5.2.1 - [Release notes](https://github.com/webpack/webpack-dev-server/releases) - [Changelog](https://github.com/webpack/webpack-dev-server/blob/main/CHANGELOG.md) - [Commits](https://github.com/webpack/webpack-dev-server/compare/v3.11.3...v5.2.1) Updates `http-proxy-middleware` from 0.19.1 to 2.0.9 - [Release notes](https://github.com/chimurai/http-proxy-middleware/releases) - [Changelog](https://github.com/chimurai/http-proxy-middleware/blob/v2.0.9/CHANGELOG.md) - [Commits](https://github.com/chimurai/http-proxy-middleware/compare/v0.19.1...v2.0.9) Updates `micromatch` from 3.1.10 to 4.0.8 - [Release notes](https://github.com/micromatch/micromatch/releases) - [Changelog](https://github.com/micromatch/micromatch/blob/master/CHANGELOG.md) - [Commits](https://github.com/micromatch/micromatch/compare/3.1.10...4.0.8) Updates `on-headers` from 1.0.2 to 1.1.0 - [Release notes](https://github.com/jshttp/on-headers/releases) - [Changelog](https://github.com/jshttp/on-headers/blob/master/HISTORY.md) - [Commits](https://github.com/jshttp/on-headers/compare/v1.0.2...v1.1.0) Updates `webpack-dev-server` from 3.11.3 to 5.2.1 - [Release notes](https://github.com/webpack/webpack-dev-server/releases) - [Changelog](https://github.com/webpack/webpack-dev-server/blob/main/CHANGELOG.md) - [Commits](https://github.com/webpack/webpack-dev-server/compare/v3.11.3...v5.2.1) --- updated-dependencies: - dependency-name: webpack-dev-server dependency-version: 5.2.1 dependency-type: direct:development dependency-group: npm_and_yarn - dependency-name: http-proxy-middleware dependency-version: 2.0.9 dependency-type: indirect dependency-group: npm_and_yarn - dependency-name: micromatch dependency-version: 4.0.8 dependency-type: indirect dependency-group: npm_and_yarn - dependency-name: on-headers dependency-version: 1.1.0 dependency-type: indirect dependency-group: npm_and_yarn - dependency-name: webpack-dev-server dependency-version: 5.2.1 dependency-type: direct:development dependency-group: npm_and_yarn - dependency-name: http-proxy-middleware dependency-version: 2.0.9 dependency-type: indirect dependency-group: npm_and_yarn - dependency-name: micromatch dependency-version: 4.0.8 dependency-type: indirect dependency-group: npm_and_yarn - dependency-name: on-headers dependency-version: 1.1.0 dependency-type: indirect dependency-group: npm_and_yarn - dependency-name: webpack-dev-server dependency-version: 5.2.1 dependency-type: direct:development dependency-group: npm_and_yarn ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> commit b9d25688cb184f4b5ec1d0aba07bd36351efc65b Author: Dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Mon Dec 29 15:35:25 2025 +0700 Update CNAME to new domain (#164) sequence.app Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> commit 4a81a2c4338191c93915c3101f3c24f0c468ae03 Author: Dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Mon Dec 29 14:08:44 2025 +0700 Proto (#163) * [AUTOMATED] Update: proto/clients/indexer*.gen.ts * [AUTOMATED] Update: proto/clients/indexer*.gen.ts * [AUTOMATED] Update: proto/clients/indexer*.gen.ts * [AUTOMATED] Update: proto/clients/indexer*.gen.ts * [AUTOMATED] Update: proto/clients/indexer*.gen.ts * [AUTOMATED] Update: proto/clients/indexer*.gen.ts * [AUTOMATED] Update: proto/clients/indexer*.gen.ts * [AUTOMATED] Update: proto/clients/indexer*.gen.ts --------- Co-authored-by: marino39 <722509+marino39@users.noreply.github.com> Co-authored-by: pkieltyka <18831+pkieltyka@users.noreply.github.com> Co-authored-by: xiam <385670+xiam@users.noreply.github.com> commit c4d0fdc33cd1ccf9cfc996b351959ae4d004a7e6 Merge: 7c547fcdd 269972a1d Author: dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Mon Dec 29 13:38:33 2025 +0700 Merge branch 'master' of https://github.com/Dargon789/sequence.js commit 269972a1dad423f67c0262149e46e7d8b3c3b10d Author: Dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Mon Dec 29 09:58:04 2025 +0700 fix: package.json to reduce vulnerabilities (#157) The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JS-BABELHELPERS-9397697 - https://snyk.io/vuln/SNYK-JS-BABELRUNTIME-10044504 - https://snyk.io/vuln/SNYK-JS-BRACEEXPANSION-9789073 - https://snyk.io/vuln/SNYK-JS-ELLIPTIC-8187303 - https://snyk.io/vuln/SNYK-JS-IMAGESIZE-9634164 - https://snyk.io/vuln/SNYK-JS-INFLIGHT-6095116 - https://snyk.io/vuln/SNYK-JS-JSYAML-13961110 - https://snyk.io/vuln/SNYK-JS-NODEFORGE-14114940 - https://snyk.io/vuln/SNYK-JS-NODEFORGE-14125097 - https://snyk.io/vuln/SNYK-JS-NODEFORGE-14125745 - https://snyk.io/vuln/SNYK-JS-SHAJS-12089400 - https://snyk.io/vuln/SNYK-JS-TMP-11501554 Co-authored-by: snyk-bot commit 7c547fcdd75774e39120241d16bf64c86e243355 Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Date: Sat Dec 27 02:34:25 2025 +0700 Bump the npm_and_yarn group across 4 directories with 7 updates (#144) Bumps the npm_and_yarn group with 4 updates in the /wagmi-project directory: [next](https://github.com/vercel/next.js), [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite), [@metamask/sdk](https://github.com/MetaMask/metamask-sdk/tree/HEAD/packages/sdk) and [nuxt](https://github.com/nuxt/nuxt/tree/HEAD/packages/nuxt). Bumps the npm_and_yarn group with 1 update in the /wagmi-project/packages/connectors directory: [@metamask/sdk](https://github.com/MetaMask/metamask-sdk/tree/HEAD/packages/sdk). Bumps the npm_and_yarn group with 1 update in the /wagmi-project/packages/create-wagmi/templates/next directory: [next](https://github.com/vercel/next.js). Bumps the npm_and_yarn group with 1 update in the /wagmi-project/playgrounds/next directory: [next](https://github.com/vercel/next.js). Updates `next` from 15.3.3 to 15.4.10 - [Release notes](https://github.com/vercel/next.js/releases) - [Changelog](https://github.com/vercel/next.js/blob/canary/release.js) - [Commits](https://github.com/vercel/next.js/compare/v15.3.3...v15.4.10) Updates `happy-dom` from 15.10.2 to 18.0.1 - [Release notes](https://github.com/capricorn86/happy-dom/releases) - [Commits](https://github.com/capricorn86/happy-dom/compare/v15.10.2...v18.0.1) Updates `vite` from 5.4.19 to 5.4.21 - [Release notes](https://github.com/vitejs/vite/releases) - [Changelog](https://github.com/vitejs/vite/blob/v5.4.21/packages/vite/CHANGELOG.md) - [Commits](https://github.com/vitejs/vite/commits/v5.4.21/packages/vite) Updates `@metamask/sdk` from 0.32.1 to 0.33.1 - [Release notes](https://github.com/MetaMask/metamask-sdk/releases) - [Changelog](https://github.com/MetaMask/metamask-sdk/blob/main/packages/sdk/CHANGELOG.md) - [Commits](https://github.com/MetaMask/metamask-sdk/commits/@metamask/sdk@0.33.1/packages/sdk) Updates `nuxt` from 3.16.0 to 3.19.0 - [Release notes](https://github.com/nuxt/nuxt/releases) - [Commits](https://github.com/nuxt/nuxt/commits/v3.19.0/packages/nuxt) Updates `@nuxt/devtools` from 2.4.1 to 2.7.0 - [Release notes](https://github.com/nuxt/devtools/releases) - [Changelog](https://github.com/nuxt/devtools/blob/main/CHANGELOG.md) - [Commits](https://github.com/nuxt/devtools/commits/v2.7.0/packages/devtools) Updates `devalue` from 5.1.1 to 5.6.1 - [Release notes](https://github.com/sveltejs/devalue/releases) - [Changelog](https://github.com/sveltejs/devalue/blob/main/CHANGELOG.md) - [Commits](https://github.com/sveltejs/devalue/compare/v5.1.1...v5.6.1) Updates `@metamask/sdk` from 0.32.1 to 0.33.1 - [Release notes](https://github.com/MetaMask/metamask-sdk/releases) - [Changelog](https://github.com/MetaMask/metamask-sdk/blob/main/packages/sdk/CHANGELOG.md) - [Commits](https://github.com/MetaMask/metamask-sdk/commits/@metamask/sdk@0.33.1/packages/sdk) Updates `next` from 15.2.4 to 15.4.10 - [Release notes](https://github.com/vercel/next.js/releases) - [Changelog](https://github.com/vercel/next.js/blob/canary/release.js) - [Commits](https://github.com/vercel/next.js/compare/v15.3.3...v15.4.10) Updates `next` from 15.3.3 to 15.4.10 - [Release notes](https://github.com/vercel/next.js/releases) - [Changelog](https://github.com/vercel/next.js/blob/canary/release.js) - [Commits](https://github.com/vercel/next.js/compare/v15.3.3...v15.4.10) --- updated-dependencies: - dependency-name: next dependency-version: 15.4.10 dependency-type: direct:production dependency-group: npm_and_yarn - dependency-name: happy-dom dependency-version: 18.0.1 dependency-type: direct:development dependency-group: npm_and_yarn - dependency-name: vite dependency-version: 5.4.21 dependency-type: direct:development dependency-group: npm_and_yarn - dependency-name: "@metamask/sdk" dependency-version: 0.33.1 dependency-type: direct:production dependency-group: npm_and_yarn - dependency-name: nuxt dependency-version: 3.19.0 dependency-type: direct:production dependency-group: npm_and_yarn - dependency-name: "@nuxt/devtools" dependency-version: 2.7.0 dependency-type: indirect dependency-group: npm_and_yarn - dependency-name: devalue dependency-version: 5.6.1 dependency-type: indirect dependency-group: npm_and_yarn - dependency-name: "@metamask/sdk" dependency-version: 0.33.1 dependency-type: direct:production dependency-group: npm_and_yarn - dependency-name: next dependency-version: 15.4.10 dependency-type: direct:production dependency-group: npm_and_yarn - dependency-name: next dependency-version: 15.4.10 dependency-type: direct:production dependency-group: npm_and_yarn ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> commit 977998758f93df492849cb55e7208864677515ef Author: Dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Sat Dec 27 02:10:27 2025 +0700 Update GitHub Actions workflow for tests (#149) Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> commit 9c420a789831c3affe0881d732bb95bd2bb075db Author: Dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Fri Dec 26 04:55:34 2025 +0700 Revise README structure and add sponsorship details (#146) * Revise README structure and add sponsorship details Updated README to include new sections and sponsorship information. https://sequence.xyz/ Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update README.md Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update README.md Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update README.md Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> --------- Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> commit 224f7612cd574849b75e17056859f0a208a24aa1 Author: dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Fri Dec 26 03:19:19 2025 +0700 sequence-core-1.0.0 commit e90b2e6395fb14c6463a02e88f65dc23ce455d6d Author: dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Thu Dec 25 14:15:53 2025 +0700 Initial project structure and core packages Add initial monorepo structure for wagmi-project, including CLI, connectors, and core packages with source code, tests, configuration, and CI/CD workflows. This sets up the foundation for further development and collaboration. commit 1f452493d6ac5f23e20def94b7edf207bc2ce40a Author: snyk-io[bot] <141718529+snyk-io[bot]@users.noreply.github.com> Date: Wed Dec 24 21:11:40 2025 +0700 fix: extras/web/package.json to reduce vulnerabilities (#117) The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JS-NEXT-14400636 - https://snyk.io/vuln/SNYK-JS-NEXT-14400644 Co-authored-by: snyk-io[bot] <141718529+snyk-io[bot]@users.noreply.github.com> Co-authored-by: dargon789 <64915515+Dargon789@users.noreply.github.com> commit 8bad845d94b7ca97a1d01a255eb8b41357eaf38d Author: Dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Wed Dec 24 19:35:49 2025 +0700 feat: upgrade react from 18.3.1 to 19.2.0 (#121) Snyk has created this PR to upgrade react from 18.3.1 to 19.2.0. See this package in npm: react See this project in Snyk: https://app.snyk.io/org/dargon789/project/bb845543-cbee-4e11-8cf9-8bfdf9205bf1?utm_source=github&utm_medium=referral&page=upgrade-pr Co-authored-by: snyk-bot commit 5e6dca3ce44d2e8d5b00b1182ba9d6eae7855b23 Author: Dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Tue Dec 23 21:23:47 2025 +0700 Pin foundry to v1.5.0 instead of nightly (0xsequence#947) (#134) (#135) * Pin foundry to v1.5.0 instead of nightly (0xsequence#947) (#134) * Bump next from 15.5.7 to 15.5.9 (#944) Bumps [next](https://github.com/vercel/next.js) from 15.5.7 to 15.5.9. - [Release notes](https://github.com/vercel/next.js/releases) - [Changelog](https://github.com/vercel/next.js/blob/canary/release.js) - [Commits](https://github.com/vercel/next.js/compare/v15.5.7...v15.5.9) --- updated-dependencies: - dependency-name: next dependency-version: 15.5.9 dependency-type: direct:production ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Pin foundry to v1.5.0 instead of nightly (#947) * Include repo and extras in syncpack config to ensure deps are synced (#945) * Include repo and extras in syncpack config to ensure deps are synced across all * Updating support deps * Updating deps * Updating pnpm lock * Fixing type errors within wdk tests * Short circuit 404s (#949) * skip witness on signers that don't support it * add passkey to test * 3.0.0-beta.6 --------- Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Taylan Pince Co-authored-by: Corban Riley Co-authored-by: Agusx1211 * Update packages/wallet/wdk/test/wallets.test.ts Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update packages/wallet/wdk/test/wallets.test.ts Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> --------- Signed-off-by: dependabot[bot] Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Taylan Pince Co-authored-by: Corban Riley Co-authored-by: Agusx1211 Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> commit 802829cc116d9656dfb166beba03a1e77c8d556b Author: Dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Tue Dec 23 21:15:56 2025 +0700 2.3.7 (#131) (#132) * 2.3.7 (#131) * fix broken guard private key * Expose access to passkey credential list * Dapp client direct txn request (#856) * Signature request refactor * WIP * Refactor * Update dapp-client exports (#858) * Add hasPermission method to DappClient (#859) * Save discovered passkey credentials upon login * Expose name property in PasskeySignupArgs * Fix blacklist sort * Add multi server script * relayer: /SimulateV3 (#857) * Add await for handleOpenDB scheduleExpiration * Update increment to always include native once used * Fix session tests * Adding lastLoginAt to PasskeyCredential * LoginToPasskeyArgs now accept a credentialId which is used to specify which credential to use * Adding onSignatureRequestStatus function to register single use callbacks for when a request reaches a terminal state of completed or cancelled * When a login is cancelled we can remove the wallet which is logging-in * Add RC3 contracts * Sessions space restriction * Dedupe signers for encoding * Support RC3 sessions * Tightly increment call validation * CLI defaults to RC3 wallet code * Rc3 address test * Fix hashing tests * Add deprecated encoding test * wdk: throw errors from otp respond callback (#864) * wdk: throw errors from otp respond callback * wdk: otp auth error and handler refactor * Handle guard 2FA (#861) * guard: return a specific error when auth required * core: pass guard token to the service * wdk: handle prompting for guard 2FA code * dapp-client: handle prompting for guard 2FA code * guard 2fa tests * wdk: separate wallet and sessions guards * dapp-client: remove guard 2fa * dapp-client: fix imports * fix guard tests * wdk: remove unneeded promise resolve * Update relayer and api gen.ts, force public packages * Add standalone fetch queued payloads * Replacing GuardRole enum with string union type, as well as replacing guardAddresses Map with Record * Fallback to chain for non-logged in recovery * Add Katana, Sandbox Tesnet, Incentiv Testnet v2 (#873) * Update a few remaining dev1 contract addresses to rc3 (#874) * Remove unnecessary console.error where we already throw error * Improve DappClient hasPermission method * Wallet db try checksum and lowercase * Update dapp client json utils to include Map reviver and replacer * Bump next in the npm_and_yarn group across 1 directory Bumps the npm_and_yarn group with 1 update in the / directory: [next](https://github.com/vercel/next.js). Updates `next` from 15.4.2 to 15.4.7 - [Release notes](https://github.com/vercel/next.js/releases) - [Changelog](https://github.com/vercel/next.js/blob/canary/release.js) - [Commits](https://github.com/vercel/next.js/compare/v15.4.2...v15.4.7) --- updated-dependencies: - dependency-name: next dependency-version: 15.4.7 dependency-type: direct:production dependency-group: npm_and_yarn ... Signed-off-by: dependabot[bot] * Update type name, update exports for dapp client * Expired explicit sessions can't sign * Improve session validity test * session isValid returns invalid reason * InvalidReason is typed * Support multiple identity signers in sessions configuration * Device signers can approve implicit sessions * Remove invalid test * Fix recursion * Fix comment * Improve test stability by reducing race conditions * Do not set passkey signer as identity signer * Use length checks * Throw on missing identity signer * Encoding requires identity signer to encode * Fix test * Refactor/types namings tsdoc redundant code (#880) * refactor types, namings, ts doc * fix session response payload * change parameter name * change parameter name * change type in tests * improve types and dapp client methods * fix session test to use new types * refactor * refactor implicit sessions array in chain session manager * remove unused types * remove unused types and add ConnectionError * update pnpm lock * move reusable session types to wallet-core * Update some imports and update some response type names --------- Co-authored-by: Tolgahan Arikan * Fix check for explicit session for the updated type in dapp-client * Update api.gen.ts and relayer.gen.ts * Add missing chainId for dapp client event * Fix initializing new chain session manager on redirect * Add support for non-viem, custom Sequence chains (#882) * Update issue templates * Provider sent to prepareBlankEnvelope * Add session signature decoding * Add feeTokens endpoint to relayer (#885) * const for node length * Clearer blacklist size encoding * identity signer node length * Potential fix for code scanning alert no. 84: Insecure randomness Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> * add getFeeTokens to dapp client (#889) * add getFeeTokens to dapp client * fix typo * make getFeeTokens independent of chain session manager and initialize state (#890) * make getFeeTokens independent of chain session manager and initialized state * remove getFeeTokens from chain session manager * Throw specific error when trying to sign with an expired session (#887) * Throw when supported session signer is expired * Fix tests * Make dapp-client implicit sessions chain agnostic (#893) * Add Monad, remove LAOS and Root Network * Bump the npm_and_yarn group across 3 directories with 1 update Bumps the npm_and_yarn group with 1 update in the / directory: [happy-dom](https://github.com/capricorn86/happy-dom). Bumps the npm_and_yarn group with 1 update in the /packages/wallet/dapp-client directory: [happy-dom](https://github.com/capricorn86/happy-dom). Bumps the npm_and_yarn group with 1 update in the /packages/wallet/wdk directory: [happy-dom](https://github.com/capricorn86/happy-dom). Updates `happy-dom` from 17.6.3 to 20.0.0 - [Release notes](https://github.com/capricorn86/happy-dom/releases) - [Commits](https://github.com/capricorn86/happy-dom/compare/v17.6.3...v20.0.0) Updates `happy-dom` from 17.6.3 to 20.0.0 - [Release notes](https://github.com/capricorn86/happy-dom/releases) - [Commits](https://github.com/capricorn86/happy-dom/compare/v17.6.3...v20.0.0) Updates `happy-dom` from 17.6.3 to 20.0.0 - [Release notes](https://github.com/capricorn86/happy-dom/releases) - [Commits](https://github.com/capricorn86/happy-dom/compare/v17.6.3...v20.0.0) --- updated-dependencies: - dependency-name: happy-dom dependency-version: 20.0.0 dependency-type: direct:development dependency-group: npm_and_yarn - dependency-name: happy-dom dependency-version: 20.0.0 dependency-type: direct:development dependency-group: npm_and_yarn - dependency-name: happy-dom dependency-version: 20.0.0 dependency-type: direct:development dependency-group: npm_and_yarn ... Signed-off-by: dependabot[bot] * Bump happy-dom in the npm_and_yarn group across 1 directory (#69) Bumps the npm_and_yarn group with 1 update in the / directory: [happy-dom](https://github.com/capricorn86/happy-dom). Updates `happy-dom` from 20.0.0 to 20.0.2 - [Release notes](https://github.com/capricorn86/happy-dom/releases) - [Commits](https://github.com/capricorn86/happy-dom/compare/v20.0.0...v20.0.2) --- updated-dependencies: - dependency-name: happy-dom dependency-version: 20.0.2 dependency-type: direct:development dependency-group: npm_and_yarn ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Create SECURITY.md for security policy (#70) * Create SECURITY.md for security policy Add a security policy document outlining supported versions and vulnerability reporting. Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> * Update SECURITY.md Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> * Update SECURITY.md Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> --------- Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> * Update SECURITY.md Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> * Add support for sessionless dapp connection (#896) * Refactor relayer package & update dependant packages (#891) * refactor exports for relayer (#900) * Add Arc Testnet * Fix changelog config * Sessionless connection upgrade and error handling in DappClient (#902) * dapp-client: add sessionless snapshot restore flow * Bump the npm_and_yarn group across 3 directories with 1 update Bumps the npm_and_yarn group with 1 update in the / directory: [happy-dom](https://github.com/capricorn86/happy-dom). Bumps the npm_and_yarn group with 1 update in the /packages/wallet/dapp-client directory: [happy-dom](https://github.com/capricorn86/happy-dom). Bumps the npm_and_yarn group with 1 update in the /packages/wallet/wdk directory: [happy-dom](https://github.com/capricorn86/happy-dom). Updates `happy-dom` from 17.6.3 to 20.0.2 - [Release notes](https://github.com/capricorn86/happy-dom/releases) - [Commits](https://github.com/capricorn86/happy-dom/compare/v17.6.3...v20.0.2) Updates `happy-dom` from 17.6.3 to 20.0.2 - [Release notes](https://github.com/capricorn86/happy-dom/releases) - [Commits](https://github.com/capricorn86/happy-dom/compare/v17.6.3...v20.0.2) Updates `happy-dom` from 17.6.3 to 20.0.2 - [Release notes](https://github.com/capricorn86/happy-dom/releases) - [Commits](https://github.com/capricorn86/happy-dom/compare/v17.6.3...v20.0.2) --- updated-dependencies: - dependency-name: happy-dom dependency-version: 20.0.2 dependency-type: direct:development dependency-group: npm_and_yarn - dependency-name: happy-dom dependency-version: 20.0.2 dependency-type: direct:development dependency-group: npm_and_yarn - dependency-name: happy-dom dependency-version: 20.0.2 dependency-type: direct:development dependency-group: npm_and_yarn ... Signed-off-by: dependabot[bot] * Allow to logout a wallet with skipRemoveDevice even if the wallet is not in a ready state to allow force removing of wallets (#906) * Pass request to PromptCodeHandler in guard registerUI (#909) * Pass request to PromptCodeHandler in guard registerUI * Fixing guard registerUI test * guard: allow using recovery code as 2FA token (#910) * guard: allow using recovery code as 2FA token * Cleanup types of ResponseFn --------- Co-authored-by: Corban Riley * Add a way to reset 2fa when using a backup code (#911) * Add a way to reset 2fa when using a backup code * use the GuardToken type instead of breaking out the props * Update SECURITY.md Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update packages/wallet/dapp-client/src/DappTransport.ts Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update package.json Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update SECURITY.md Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update wagmi-project/package.json Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update wagmi-project/package.json Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update wagmi-project/src/App.tsx Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Create FUNDING.json (#90) Enhancements: Include FUNDING.json to display GitHub sponsorship options in the repository Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Create config.yml (#91) Add initial CircleCI configuration to enable automated builds using a custom Docker executor and a defined workflow. Build: Add .circleci/config.yml with version 2.1 specification and custom Docker executor. CI: Define web3-defi-game-project job with checkout step. Set up my-custom-workflow to run the job. Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Add rc4 contracts * Set rc4 as default and add it to lists * Session enhanced replay protection * New sessions replay protection hashes payload * Use the 4337 factory wrapper * Update keymachine url in dapp-client constants * Update keymachine url in Provider constructor * SSR safety (#915) * SSR safety test * Fix CI job * Guard dapp-client for SSR (lazy transport, browser checks, gated storage) * Fix guard topology (#918) * Use proper guard topology * Test and fixes * login and setup tests * Switch prod manager settings (#917) * Add prod guard and identity instrument info * Remove completed TODOs * Small JS tweaks (#919) * Fix type exports to built declarations * Update repository links to current package paths * Improve Next app tooling and React typings * Expose primitives CLI bin and use base lint config * Update relayer.gen.ts and TransactionPrecondition interface * Update api.gen.ts * Update metadata.gen.ts * Update marketplace.gen.ts * Update guard.gen.ts * Support multiple identity signers in sessions configuration * Device signers can approve implicit sessions * Remove invalid test * Fix recursion * Fix comment * Improve test stability by reducing race conditions * Do not set passkey signer as identity signer * Use length checks * Throw on missing identity signer * Encoding requires identity signer to encode * Fix test * Refactor/types namings tsdoc redundant code (#880) * refactor types, namings, ts doc * fix session response payload * change parameter name * change parameter name * change type in tests * improve types and dapp client methods * fix session test to use new types * refactor * refactor implicit sessions array in chain session manager * remove unused types * remove unused types and add ConnectionError * update pnpm lock * move reusable session types to wallet-core * Update some imports and update some response type names --------- Co-authored-by: Tolgahan Arikan * Fix check for explicit session for the updated type in dapp-client * Update api.gen.ts and relayer.gen.ts * Add missing chainId for dapp client event * Fix initializing new chain session manager on redirect * Add support for non-viem, custom Sequence chains (#882) * Provider sent to prepareBlankEnvelope * Add session signature decoding * const for node length * Clearer blacklist size encoding * identity signer node length * Add feeTokens endpoint to relayer (#885) * add getFeeTokens to dapp client (#889) * add getFeeTokens to dapp client * fix typo * make getFeeTokens independent of chain session manager and initialize state (#890) * make getFeeTokens independent of chain session manager and initialized state * remove getFeeTokens from chain session manager * Throw specific error when trying to sign with an expired session (#887) * Throw when supported session signer is expired * Fix tests * Make dapp-client implicit sessions chain agnostic (#893) * Add Monad, remove LAOS and Root Network * Add support for sessionless dapp connection (#896) * Refactor relayer package & update dependant packages (#891) * refactor exports for relayer (#900) * Add Arc Testnet * Fix changelog config * Sessionless connection upgrade and error handling in DappClient (#902) * dapp-client: add sessionless snapshot restore flow * Allow to logout a wallet with skipRemoveDevice even if the wallet is not in a ready state to allow force removing of wallets (#906) * Pass request to PromptCodeHandler in guard registerUI (#909) * Pass request to PromptCodeHandler in guard registerUI * Fixing guard registerUI test * guard: allow using recovery code as 2FA token (#910) * guard: allow using recovery code as 2FA token * Cleanup types of ResponseFn --------- Co-authored-by: Corban Riley * Add a way to reset 2fa when using a backup code (#911) * Add a way to reset 2fa when using a backup code * use the GuardToken type instead of breaking out the props * Add rc4 contracts * Set rc4 as default and add it to lists * Session enhanced replay protection * New sessions replay protection hashes payload * Use the 4337 factory wrapper * Update keymachine url in dapp-client constants * Update keymachine url in Provider constructor * SSR safety (#915) * Guard dapp-client for SSR (lazy transport, browser checks, gated storage) * Fix guard topology (#918) * Use proper guard topology * Test and fixes * login and setup tests * Switch prod manager settings (#917) * Add prod guard and identity instrument info * Remove completed TODOs * Small JS tweaks (#919) * Fix type exports to built declarations * Update repository links to current package paths * Improve Next app tooling and React typings * Expose primitives CLI bin and use base lint config * Update relayer.gen.ts and TransactionPrecondition interface * Update relayer.gen.ts and TransactionPrecondition interface (#920) * 3.0.0-beta.1 * identity-instrument: generate nonce from current time (#921) * Remove publish-dists.yml github action (#923) * 3.0.0-beta.2 * Clean up changeset config * Improve test stability by removing race conditions * Ensure build before test * Updating happy-dom to 20.0.10 (#926) * Add support for custom auth providers (authcode & authcode-pkce only) (#894) * Add support for custom auth providers (authcode & authcode-pkce only) * fix authcode tests * Updating Deps November 2025 (#927) * Updating deps for the workspace root * Updating deps for wallet/wdk * Fixing sessions test for latest vitest * Lets not upgrade to the latest typescript quite yet * Updating to latest vitest * Updating deps for wallet/core * Updating deps for wallet/primitives-cli * Updating deps for wallet/dapp-client * Adding syncpack to check for dep version inconsistencies * Setup syncpack versionGroups for pnpm workspace:^ * Fixing dep versions mismatches * Fixing @types/node mismatches * Adding syncpack to pre commit hook * Remove the syncpack format script. * Update ox to v9.17.0 (#928) * Upgrading ox to 9.17.0 * WrappedSignature renamed to SignatureErc6492 * Fixing PasskeySignatureValidator interface * Lock ox lib dep to use the same version with pnpm overrides and update viem to latest * Fix explicitSessionRequested check in dapp client * Typescript 5.9.3 (#930) * Upgrading to typescript v5.9.3 * Fix type errors that arose from typescript upgrade related to Bytes and Buffer source typings. * Don't catch errors thrown by Guard 2FA or reject early to allow multiple attempts on incorrect TOTP (#931) * Update pnpm * Mark @0xsequence/wallet-primitives-cli as private * 3.0.0-beta.3 * changeset cleanup * Fix rc4 4337 factory (#933) * Add rc5 and set it as default (#934) * 3.0.0-beta.4 * Update SECURITY.md Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update wagmi-project/package.json Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update wagmi-project/package.json Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Bump next from 15.5.5 to 15.5.7 (#936) Bumps [next](https://github.com/vercel/next.js) from 15.5.5 to 15.5.7. - [Release notes](https://github.com/vercel/next.js/releases) - [Changelog](https://github.com/vercel/next.js/blob/canary/release.js) - [Commits](https://github.com/vercel/next.js/compare/v15.5.5...v15.5.7) --- updated-dependencies: - dependency-name: next dependency-version: 15.5.7 dependency-type: direct:production ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * add userdata service client (#940) * Skip LocalDevice identity signers not on current device (#942) * Skip LocalDevice identity signers not on current device * Update log * 3.0.0-beta.5 * Update config.yml (#102) * Update config.yml Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update .circleci/config.yml Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> --------- Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com> * Update config.yml (#103) * Update config.yml Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update .circleci/config.yml Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> --------- Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com> * fix: extras/web/package.json to reduce vulnerabilities (#101) The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JS-NEXT-14173355 Co-authored-by: snyk-io[bot] <141718529+snyk-io[bot]@users.noreply.github.com> * fix: extras/docs/package.json to reduce vulnerabilities (#100) The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JS-NEXT-14173355 Co-authored-by: snyk-io[bot] <141718529+snyk-io[bot]@users.noreply.github.com> * fix: package.json to reduce vulnerabilities (#104) The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JS-BABELHELPERS-9397697 - https://snyk.io/vuln/SNYK-JS-BABELRUNTIME-10044504 - https://snyk.io/vuln/SNYK-JS-BRACEEXPANSION-9789073 - https://snyk.io/vuln/SNYK-JS-CROSSSPAWN-8303230 - https://snyk.io/vuln/SNYK-JS-ELLIPTIC-7577916 - https://snyk.io/vuln/SNYK-JS-ELLIPTIC-7577917 - https://snyk.io/vuln/SNYK-JS-ELLIPTIC-7577918 - https://snyk.io/vuln/SNYK-JS-ELLIPTIC-8187303 - https://snyk.io/vuln/SNYK-JS-ELLIPTIC-8720086 - https://snyk.io/vuln/SNYK-JS-IMAGESIZE-9634164 - https://snyk.io/vuln/SNYK-JS-INFLIGHT-6095116 - https://snyk.io/vuln/SNYK-JS-JSYAML-13961110 - https://snyk.io/vuln/SNYK-JS-MICROMATCH-6838728 - https://snyk.io/vuln/SNYK-JS-NODEFORGE-14114940 - https://snyk.io/vuln/SNYK-JS-NODEFORGE-14125097 - https://snyk.io/vuln/SNYK-JS-NODEFORGE-14125745 - https://snyk.io/vuln/SNYK-JS-ONHEADERS-10773729 - https://snyk.io/vuln/SNYK-JS-ROLLUP-8073097 - https://snyk.io/vuln/SNYK-JS-SECP256K1-8237220 - https://snyk.io/vuln/SNYK-JS-SEND-7926862 - https://snyk.io/vuln/SNYK-JS-SERVESTATIC-7926865 - https://snyk.io/vuln/SNYK-JS-SHAJS-12089400 Co-authored-by: snyk-io[bot] <141718529+snyk-io[bot]@users.noreply.github.com> * Revert "Merge remote-tracking branch 'origin/dependabot/npm_and_yarn/npm_and_yarn-318c02e2da'" This reverts commit fd0fdf9ecc6ad9056447e381de7fc5bb19f78e47, reversing changes made to cba78943db9942a4635bb530b7a43fc5d18b0ab4. * fix: extras/web/package.json to reduce vulnerabilities (#109) The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JS-NEXT-14173355 Co-authored-by: snyk-bot * fix: extras/docs/package.json to reduce vulnerabilities (#106) The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JS-NEXT-14400636 - https://snyk.io/vuln/SNYK-JS-NEXT-14400644 Co-authored-by: snyk-bot * Bump next in the npm_and_yarn group across 1 directory (#110) Bumps the npm_and_yarn group with 1 update in the / directory: [next](https://github.com/vercel/next.js). Updates `next` from 15.5.7 to 15.5.9 - [Release notes](https://github.com/vercel/next.js/releases) - [Changelog](https://github.com/vercel/next.js/blob/canary/release.js) - [Commits](https://github.com/vercel/next.js/compare/v15.5.7...v15.5.9) --- updated-dependencies: - dependency-name: next dependency-version: 15.5.9 dependency-type: direct:production dependency-group: npm_and_yarn ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Delete .github/workflows/fortify.yml (#111) Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * fix: extras/web/package.json to reduce vulnerabilities (#107) The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JS-NEXT-14400636 - https://snyk.io/vuln/SNYK-JS-NEXT-14400644 Co-authored-by: snyk-bot * Bump the npm_and_yarn group across 1 directory with 3 updates (#115) Bumps the npm_and_yarn group with 1 update in the / directory: [next](https://github.com/vercel/next.js). Updates `next` from 15.5.5 to 15.5.9 - [Release notes](https://github.com/vercel/next.js/releases) - [Changelog](https://github.com/vercel/next.js/blob/canary/release.js) - [Commits](https://github.com/vercel/next.js/compare/v15.5.5...v15.5.9) Updates `happy-dom` from 17.6.3 to 20.0.11 - [Release notes](https://github.com/capricorn86/happy-dom/releases) - [Commits](https://github.com/capricorn86/happy-dom/compare/v17.6.3...v20.0.11) Updates `vite` from 7.1.10 to 7.2.7 - [Release notes](https://github.com/vitejs/vite/releases) - [Changelog](https://github.com/vitejs/vite/blob/v7.2.7/packages/vite/CHANGELOG.md) - [Commits](https://github.com/vitejs/vite/commits/v7.2.7/packages/vite) --- updated-dependencies: - dependency-name: next dependency-version: 15.5.9 dependency-type: direct:production dependency-group: npm_and_yarn - dependency-name: happy-dom dependency-version: 20.0.11 dependency-type: direct:development dependency-group: npm_and_yarn - dependency-name: vite dependency-version: 7.2.7 dependency-type: indirect dependency-group: npm_and_yarn ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Bump next from 15.5.7 to 15.5.9 (#944) Bumps [next](https://github.com/vercel/next.js) from 15.5.7 to 15.5.9. - [Release notes](https://github.com/vercel/next.js/releases) - [Changelog](https://github.com/vercel/next.js/blob/canary/release.js) - [Commits](https://github.com/vercel/next.js/compare/v15.5.7...v15.5.9) --- updated-dependencies: - dependency-name: next dependency-version: 15.5.9 dependency-type: direct:production ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Pin foundry to v1.5.0 instead of nightly (#947) * Include repo and extras in syncpack config to ensure deps are synced (#945) * Include repo and extras in syncpack config to ensure deps are synced across all * Updating support deps * Updating deps * Updating pnpm lock * Fixing type errors within wdk tests * Short circuit 404s (#949) * skip witness on signers that don't support it * add passkey to test * 3.0.0-beta.6 * Update tests.yml (#119) Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update config.yml (#120) Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update packages/services/identity-instrument/src/index.ts Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * feat: upgrade @wagmi/cli from 0.1.15 to 2.8.0 (#126) Snyk has created this PR to upgrade @wagmi/cli from 0.1.15 to 2.8.0. See this package in npm: @wagmi/cli See this project in Snyk: https://app.snyk.io/org/dargon789/project/bb845543-cbee-4e11-8cf9-8bfdf9205bf1?utm_source=github&utm_medium=referral&page=upgrade-pr Co-authored-by: snyk-bot * Potential fix for code scanning alert no. 82: Workflow does not contain permissions Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Potential fix for code scanning alert no. 62: Information exposure through a stack trace Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> --------- Signed-off-by: dependabot[bot] Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> Co-authored-by: Patryk Kalinowski Co-authored-by: Corban Riley Co-authored-by: tolgahan-arikan Co-authored-by: Agusx1211 Co-authored-by: Michael Standen Co-authored-by: William Hua Co-authored-by: Michael Standen Co-authored-by: Patryk Kalinowski Co-authored-by: Taylan Pince Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Gabi <56271768+VGabriel45@users.noreply.github.com> Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com> Co-authored-by: snyk-io[bot] <141718529+snyk-io[bot]@users.noreply.github.com> Co-authored-by: snyk-bot * Update extras/docs/package.json Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update extras/web/package.json Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> --------- Signed-off-by: dependabot[bot] Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> Co-authored-by: Patryk Kalinowski Co-authored-by: Corban Riley Co-authored-by: tolgahan-arikan Co-authored-by: Agusx1211 Co-authored-by: Michael Standen Co-authored-by: William Hua Co-authored-by: Michael Standen Co-authored-by: Patryk Kalinowski Co-authored-by: Taylan Pince Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Gabi <56271768+VGabriel45@users.noreply.github.com> Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com> Co-authored-by: snyk-io[bot] <141718529+snyk-io[bot]@users.noreply.github.com> Co-authored-by: snyk-bot commit 893eedbb1a99db6736a157fed7d73a0196f30778 Merge: bc418b171 7fe4a922d Author: dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Tue Dec 23 18:50:09 2025 +0700 Merge remote-tracking branch 'origin/v1' into v1 commit 7fe4a922dfbd817fa76b8e30e9be184e6f38ddb1 Author: Dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Tue Dec 23 18:16:10 2025 +0700 Update wagmi-project/src/App.tsx Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> commit 640be8ffe175c762828aded47cc76e8d2c404b56 Author: Dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Tue Dec 23 18:15:48 2025 +0700 Update wagmi-project/src/App.tsx Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> commit 51a64321d3c0b91c9bd43c1e7e693f974c045dbb Author: Dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Tue Dec 23 18:15:24 2025 +0700 Update wagmi-project/src/App.tsx Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> commit 28a268eef9f36a4bcf257d175c49c31f55f8008b Author: Dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Tue Dec 23 18:14:59 2025 +0700 Update wagmi-project/src/App.tsx Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> commit bc418b171da95091d834f3a21141780169818db3 Author: Dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Tue Dec 23 00:27:24 2025 +0700 Master ceb95d4 (#129) * Update issue templates (#128) * Bump the npm_and_yarn group across 1 directory with 1 update Bumps the npm_and_yarn group with 1 update in the / directory: [express](https://github.com/expressjs/express). Updates `express` from 4.18.2 to 4.19.2 - [Release notes](https://github.com/expressjs/express/releases) - [Changelog](https://github.com/expressjs/express/blob/master/History.md) - [Commits](https://github.com/expressjs/express/compare/4.18.2...4.19.2) --- updated-dependencies: - dependency-name: express dependency-type: direct:development dependency-group: npm_and_yarn-security-group ... Signed-off-by: dependabot[bot] * Create SECURITY.md * Set up CI with Azure Pipelines [skip ci] * Create CNAME * Create fortify.yml * Update issue templates * Update CNAME * fix: upgrade @tanstack/react-query from 5.45.1 to 5.64.2 Snyk has created this PR to upgrade @tanstack/react-query from 5.45.1 to 5.64.2. See this package in npm: @tanstack/react-query See this project in Snyk: https://app.snyk.io/org/dargon789/project/bb845543-cbee-4e11-8cf9-8bfdf9205bf1?utm_source=github&utm_medium=referral&page=upgrade-pr * Create config.yml (#46) Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> * Support multiple identity signers in sessions configuration * Device signers can approve implicit sessions * Remove invalid test * Fix recursion * Fix comment * Improve test stability by reducing race conditions * Do not set passkey signer as identity signer * Use length checks * Throw on missing identity signer * Encoding requires identity signer to encode * Fix test * Refactor/types namings tsdoc redundant code (#880) * refactor types, namings, ts doc * fix session response payload * change parameter name * change parameter name * change type in tests * improve types and dapp client methods * fix session test to use new types * refactor * refactor implicit sessions array in chain session manager * remove unused types * remove unused types and add ConnectionError * update pnpm lock * move reusable session types to wallet-core * Update some imports and update some response type names --------- Co-authored-by: Tolgahan Arikan * Fix check for explicit session for the updated type in dapp-client * Update api.gen.ts and relayer.gen.ts * Add missing chainId for dapp client event * Fix initializing new chain session manager on redirect * Add support for non-viem, custom Sequence chains (#882) * Provider sent to prepareBlankEnvelope * Update fortify.yml Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> * Add session signature decoding * Add feeTokens endpoint to relayer (#885) * const for node length * Clearer blacklist size encoding * identity signer node length * add getFeeTokens to dapp client (#889) * add getFeeTokens to dapp client * fix typo * make getFeeTokens independent of chain session manager and initialize state (#890) * make getFeeTokens independent of chain session manager and initialized state * remove getFeeTokens from chain session manager * Throw specific error when trying to sign with an expired session (#887) * Throw when supported session signer is expired * Fix tests * Make dapp-client implicit sessions chain agnostic (#893) * Add Mona… * 0xsequence/master (#180) * 2.3.7 (#131) * fix broken guard private key * Expose access to passkey credential list * Dapp client direct txn request (#856) * Signature request refactor * WIP * Refactor * Update dapp-client exports (#858) * Add hasPermission method to DappClient (#859) * Save discovered passkey credentials upon login * Expose name property in PasskeySignupArgs * Fix blacklist sort * Add multi server script * relayer: /SimulateV3 (#857) * Add await for handleOpenDB scheduleExpiration * Update increment to always include native once used * Fix session tests * Adding lastLoginAt to PasskeyCredential * LoginToPasskeyArgs now accept a credentialId which is used to specify which credential to use * Adding onSignatureRequestStatus function to register single use callbacks for when a request reaches a terminal state of completed or cancelled * When a login is cancelled we can remove the wallet which is logging-in * Add RC3 contracts * Sessions space restriction * Dedupe signers for encoding * Support RC3 sessions * Tightly increment call validation * CLI defaults to RC3 wallet code * Rc3 address test * Fix hashing tests * Add deprecated encoding test * wdk: throw errors from otp respond callback (#864) * wdk: throw errors from otp respond callback * wdk: otp auth error and handler refactor * Handle guard 2FA (#861) * guard: return a specific error when auth required * core: pass guard token to the service * wdk: handle prompting for guard 2FA code * dapp-client: handle prompting for guard 2FA code * guard 2fa tests * wdk: separate wallet and sessions guards * dapp-client: remove guard 2fa * dapp-client: fix imports * fix guard tests * wdk: remove unneeded promise resolve * Update relayer and api gen.ts, force public packages * Add standalone fetch queued payloads * Replacing GuardRole enum with string union type, as well as replacing guardAddresses Map with Record * Fallback to chain for non-logged in recovery * Add Katana, Sandbox Tesnet, Incentiv Testnet v2 (#873) * Update a few remaining dev1 contract addresses to rc3 (#874) * Remove unnecessary console.error where we already throw error * Improve DappClient hasPermission method * Wallet db try checksum and lowercase * Update dapp client json utils to include Map reviver and replacer * Bump next in the npm_and_yarn group across 1 directory Bumps the npm_and_yarn group with 1 update in the / directory: [next](https://github.com/vercel/next.js). Updates `next` from 15.4.2 to 15.4.7 - [Release notes](https://github.com/vercel/next.js/releases) - [Changelog](https://github.com/vercel/next.js/blob/canary/release.js) - [Commits](https://github.com/vercel/next.js/compare/v15.4.2...v15.4.7) --- updated-dependencies: - dependency-name: next dependency-version: 15.4.7 dependency-type: direct:production dependency-group: npm_and_yarn ... Signed-off-by: dependabot[bot] * Update type name, update exports for dapp client * Expired explicit sessions can't sign * Improve session validity test * session isValid returns invalid reason * InvalidReason is typed * Support multiple identity signers in sessions configuration * Device signers can approve implicit sessions * Remove invalid test * Fix recursion * Fix comment * Improve test stability by reducing race conditions * Do not set passkey signer as identity signer * Use length checks * Throw on missing identity signer * Encoding requires identity signer to encode * Fix test * Refactor/types namings tsdoc redundant code (#880) * refactor types, namings, ts doc * fix session response payload * change parameter name * change parameter name * change type in tests * improve types and dapp client methods * fix session test to use new types * refactor * refactor implicit sessions array in chain session manager * remove unused types * remove unused types and add ConnectionError * update pnpm lock * move reusable session types to wallet-core * Update some imports and update some response type names --------- Co-authored-by: Tolgahan Arikan * Fix check for explicit session for the updated type in dapp-client * Update api.gen.ts and relayer.gen.ts * Add missing chainId for dapp client event * Fix initializing new chain session manager on redirect * Add support for non-viem, custom Sequence chains (#882) * Update issue templates * Provider sent to prepareBlankEnvelope * Add session signature decoding * Add feeTokens endpoint to relayer (#885) * const for node length * Clearer blacklist size encoding * identity signer node length * Potential fix for code scanning alert no. 84: Insecure randomness Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> * add getFeeTokens to dapp client (#889) * add getFeeTokens to dapp client * fix typo * make getFeeTokens independent of chain session manager and initialize state (#890) * make getFeeTokens independent of chain session manager and initialized state * remove getFeeTokens from chain session manager * Throw specific error when trying to sign with an expired session (#887) * Throw when supported session signer is expired * Fix tests * Make dapp-client implicit sessions chain agnostic (#893) * Add Monad, remove LAOS and Root Network * Bump the npm_and_yarn group across 3 directories with 1 update Bumps the npm_and_yarn group with 1 update in the / directory: [happy-dom](https://github.com/capricorn86/happy-dom). Bumps the npm_and_yarn group with 1 update in the /packages/wallet/dapp-client directory: [happy-dom](https://github.com/capricorn86/happy-dom). Bumps the npm_and_yarn group with 1 update in the /packages/wallet/wdk directory: [happy-dom](https://github.com/capricorn86/happy-dom). Updates `happy-dom` from 17.6.3 to 20.0.0 - [Release notes](https://github.com/capricorn86/happy-dom/releases) - [Commits](https://github.com/capricorn86/happy-dom/compare/v17.6.3...v20.0.0) Updates `happy-dom` from 17.6.3 to 20.0.0 - [Release notes](https://github.com/capricorn86/happy-dom/releases) - [Commits](https://github.com/capricorn86/happy-dom/compare/v17.6.3...v20.0.0) Updates `happy-dom` from 17.6.3 to 20.0.0 - [Release notes](https://github.com/capricorn86/happy-dom/releases) - [Commits](https://github.com/capricorn86/happy-dom/compare/v17.6.3...v20.0.0) --- updated-dependencies: - dependency-name: happy-dom dependency-version: 20.0.0 dependency-type: direct:development dependency-group: npm_and_yarn - dependency-name: happy-dom dependency-version: 20.0.0 dependency-type: direct:development dependency-group: npm_and_yarn - dependency-name: happy-dom dependency-version: 20.0.0 dependency-type: direct:development dependency-group: npm_and_yarn ... Signed-off-by: dependabot[bot] * Bump happy-dom in the npm_and_yarn group across 1 directory (#69) Bumps the npm_and_yarn group with 1 update in the / directory: [happy-dom](https://github.com/capricorn86/happy-dom). Updates `happy-dom` from 20.0.0 to 20.0.2 - [Release notes](https://github.com/capricorn86/happy-dom/releases) - [Commits](https://github.com/capricorn86/happy-dom/compare/v20.0.0...v20.0.2) --- updated-dependencies: - dependency-name: happy-dom dependency-version: 20.0.2 dependency-type: direct:development dependency-group: npm_and_yarn ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Create SECURITY.md for security policy (#70) * Create SECURITY.md for security policy Add a security policy document outlining supported versions and vulnerability reporting. Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> * Update SECURITY.md Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> * Update SECURITY.md Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> --------- Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> * Update SECURITY.md Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> * Add support for sessionless dapp connection (#896) * Refactor relayer package & update dependant packages (#891) * refactor exports for relayer (#900) * Add Arc Testnet * Fix changelog config * Sessionless connection upgrade and error handling in DappClient (#902) * dapp-client: add sessionless snapshot restore flow * Bump the npm_and_yarn group across 3 directories with 1 update Bumps the npm_and_yarn group with 1 update in the / directory: [happy-dom](https://github.com/capricorn86/happy-dom). Bumps the npm_and_yarn group with 1 update in the /packages/wallet/dapp-client directory: [happy-dom](https://github.com/capricorn86/happy-dom). Bumps the npm_and_yarn group with 1 update in the /packages/wallet/wdk directory: [happy-dom](https://github.com/capricorn86/happy-dom). Updates `happy-dom` from 17.6.3 to 20.0.2 - [Release notes](https://github.com/capricorn86/happy-dom/releases) - [Commits](https://github.com/capricorn86/happy-dom/compare/v17.6.3...v20.0.2) Updates `happy-dom` from 17.6.3 to 20.0.2 - [Release notes](https://github.com/capricorn86/happy-dom/releases) - [Commits](https://github.com/capricorn86/happy-dom/compare/v17.6.3...v20.0.2) Updates `happy-dom` from 17.6.3 to 20.0.2 - [Release notes](https://github.com/capricorn86/happy-dom/releases) - [Commits](https://github.com/capricorn86/happy-dom/compare/v17.6.3...v20.0.2) --- updated-dependencies: - dependency-name: happy-dom dependency-version: 20.0.2 dependency-type: direct:development dependency-group: npm_and_yarn - dependency-name: happy-dom dependency-version: 20.0.2 dependency-type: direct:development dependency-group: npm_and_yarn - dependency-name: happy-dom dependency-version: 20.0.2 dependency-type: direct:development dependency-group: npm_and_yarn ... Signed-off-by: dependabot[bot] * Allow to logout a wallet with skipRemoveDevice even if the wallet is not in a ready state to allow force removing of wallets (#906) * Pass request to PromptCodeHandler in guard registerUI (#909) * Pass request to PromptCodeHandler in guard registerUI * Fixing guard registerUI test * guard: allow using recovery code as 2FA token (#910) * guard: allow using recovery code as 2FA token * Cleanup types of ResponseFn --------- Co-authored-by: Corban Riley * Add a way to reset 2fa when using a backup code (#911) * Add a way to reset 2fa when using a backup code * use the GuardToken type instead of breaking out the props * Update SECURITY.md Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update packages/wallet/dapp-client/src/DappTransport.ts Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update package.json Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update SECURITY.md Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update wagmi-project/package.json Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update wagmi-project/package.json Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update wagmi-project/src/App.tsx Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Create FUNDING.json (#90) Enhancements: Include FUNDING.json to display GitHub sponsorship options in the repository Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Create config.yml (#91) Add initial CircleCI configuration to enable automated builds using a custom Docker executor and a defined workflow. Build: Add .circleci/config.yml with version 2.1 specification and custom Docker executor. CI: Define web3-defi-game-project job with checkout step. Set up my-custom-workflow to run the job. Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Add rc4 contracts * Set rc4 as default and add it to lists * Session enhanced replay protection * New sessions replay protection hashes payload * Use the 4337 factory wrapper * Update keymachine url in dapp-client constants * Update keymachine url in Provider constructor * SSR safety (#915) * SSR safety test * Fix CI job * Guard dapp-client for SSR (lazy transport, browser checks, gated storage) * Fix guard topology (#918) * Use proper guard topology * Test and fixes * login and setup tests * Switch prod manager settings (#917) * Add prod guard and identity instrument info * Remove completed TODOs * Small JS tweaks (#919) * Fix type exports to built declarations * Update repository links to current package paths * Improve Next app tooling and React typings * Expose primitives CLI bin and use base lint config * Update relayer.gen.ts and TransactionPrecondition interface * Update api.gen.ts * Update metadata.gen.ts * Update marketplace.gen.ts * Update guard.gen.ts * Support multiple identity signers in sessions configuration * Device signers can approve implicit sessions * Remove invalid test * Fix recursion * Fix comment * Improve test stability by reducing race conditions * Do not set passkey signer as identity signer * Use length checks * Throw on missing identity signer * Encoding requires identity signer to encode * Fix test * Refactor/types namings tsdoc redundant code (#880) * refactor types, namings, ts doc * fix session response payload * change parameter name * change parameter name * change type in tests * improve types and dapp client methods * fix session test to use new types * refactor * refactor implicit sessions array in chain session manager * remove unused types * remove unused types and add ConnectionError * update pnpm lock * move reusable session types to wallet-core * Update some imports and update some response type names --------- Co-authored-by: Tolgahan Arikan * Fix check for explicit session for the updated type in dapp-client * Update api.gen.ts and relayer.gen.ts * Add missing chainId for dapp client event * Fix initializing new chain session manager on redirect * Add support for non-viem, custom Sequence chains (#882) * Provider sent to prepareBlankEnvelope * Add session signature decoding * const for node length * Clearer blacklist size encoding * identity signer node length * Add feeTokens endpoint to relayer (#885) * add getFeeTokens to dapp client (#889) * add getFeeTokens to dapp client * fix typo * make getFeeTokens independent of chain session manager and initialize state (#890) * make getFeeTokens independent of chain session manager and initialized state * remove getFeeTokens from chain session manager * Throw specific error when trying to sign with an expired session (#887) * Throw when supported session signer is expired * Fix tests * Make dapp-client implicit sessions chain agnostic (#893) * Add Monad, remove LAOS and Root Network * Add support for sessionless dapp connection (#896) * Refactor relayer package & update dependant packages (#891) * refactor exports for relayer (#900) * Add Arc Testnet * Fix changelog config * Sessionless connection upgrade and error handling in DappClient (#902) * dapp-client: add sessionless snapshot restore flow * Allow to logout a wallet with skipRemoveDevice even if the wallet is not in a ready state to allow force removing of wallets (#906) * Pass request to PromptCodeHandler in guard registerUI (#909) * Pass request to PromptCodeHandler in guard registerUI * Fixing guard registerUI test * guard: allow using recovery code as 2FA token (#910) * guard: allow using recovery code as 2FA token * Cleanup types of ResponseFn --------- Co-authored-by: Corban Riley * Add a way to reset 2fa when using a backup code (#911) * Add a way to reset 2fa when using a backup code * use the GuardToken type instead of breaking out the props * Add rc4 contracts * Set rc4 as default and add it to lists * Session enhanced replay protection * New sessions replay protection hashes payload * Use the 4337 factory wrapper * Update keymachine url in dapp-client constants * Update keymachine url in Provider constructor * SSR safety (#915) * Guard dapp-client for SSR (lazy transport, browser checks, gated storage) * Fix guard topology (#918) * Use proper guard topology * Test and fixes * login and setup tests * Switch prod manager settings (#917) * Add prod guard and identity instrument info * Remove completed TODOs * Small JS tweaks (#919) * Fix type exports to built declarations * Update repository links to current package paths * Improve Next app tooling and React typings * Expose primitives CLI bin and use base lint config * Update relayer.gen.ts and TransactionPrecondition interface * Update relayer.gen.ts and TransactionPrecondition interface (#920) * 3.0.0-beta.1 * identity-instrument: generate nonce from current time (#921) * Remove publish-dists.yml github action (#923) * 3.0.0-beta.2 * Clean up changeset config * Improve test stability by removing race conditions * Ensure build before test * Updating happy-dom to 20.0.10 (#926) * Add support for custom auth providers (authcode & authcode-pkce only) (#894) * Add support for custom auth providers (authcode & authcode-pkce only) * fix authcode tests * Updating Deps November 2025 (#927) * Updating deps for the workspace root * Updating deps for wallet/wdk * Fixing sessions test for latest vitest * Lets not upgrade to the latest typescript quite yet * Updating to latest vitest * Updating deps for wallet/core * Updating deps for wallet/primitives-cli * Updating deps for wallet/dapp-client * Adding syncpack to check for dep version inconsistencies * Setup syncpack versionGroups for pnpm workspace:^ * Fixing dep versions mismatches * Fixing @types/node mismatches * Adding syncpack to pre commit hook * Remove the syncpack format script. * Update ox to v9.17.0 (#928) * Upgrading ox to 9.17.0 * WrappedSignature renamed to SignatureErc6492 * Fixing PasskeySignatureValidator interface * Lock ox lib dep to use the same version with pnpm overrides and update viem to latest * Fix explicitSessionRequested check in dapp client * Typescript 5.9.3 (#930) * Upgrading to typescript v5.9.3 * Fix type errors that arose from typescript upgrade related to Bytes and Buffer source typings. * Don't catch errors thrown by Guard 2FA or reject early to allow multiple attempts on incorrect TOTP (#931) * Update pnpm * Mark @0xsequence/wallet-primitives-cli as private * 3.0.0-beta.3 * changeset cleanup * Fix rc4 4337 factory (#933) * Add rc5 and set it as default (#934) * 3.0.0-beta.4 * Update SECURITY.md Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update wagmi-project/package.json Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update wagmi-project/package.json Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Bump next from 15.5.5 to 15.5.7 (#936) Bumps [next](https://github.com/vercel/next.js) from 15.5.5 to 15.5.7. - [Release notes](https://github.com/vercel/next.js/releases) - [Changelog](https://github.com/vercel/next.js/blob/canary/release.js) - [Commits](https://github.com/vercel/next.js/compare/v15.5.5...v15.5.7) --- updated-dependencies: - dependency-name: next dependency-version: 15.5.7 dependency-type: direct:production ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * add userdata service client (#940) * Skip LocalDevice identity signers not on current device (#942) * Skip LocalDevice identity signers not on current device * Update log * 3.0.0-beta.5 * Update config.yml (#102) * Update config.yml Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update .circleci/config.yml Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> --------- Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com> * Update config.yml (#103) * Update config.yml Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update .circleci/config.yml Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> --------- Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com> * fix: extras/web/package.json to reduce vulnerabilities (#101) The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JS-NEXT-14173355 Co-authored-by: snyk-io[bot] <141718529+snyk-io[bot]@users.noreply.github.com> * fix: extras/docs/package.json to reduce vulnerabilities (#100) The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JS-NEXT-14173355 Co-authored-by: snyk-io[bot] <141718529+snyk-io[bot]@users.noreply.github.com> * fix: package.json to reduce vulnerabilities (#104) The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JS-BABELHELPERS-9397697 - https://snyk.io/vuln/SNYK-JS-BABELRUNTIME-10044504 - https://snyk.io/vuln/SNYK-JS-BRACEEXPANSION-9789073 - https://snyk.io/vuln/SNYK-JS-CROSSSPAWN-8303230 - https://snyk.io/vuln/SNYK-JS-ELLIPTIC-7577916 - https://snyk.io/vuln/SNYK-JS-ELLIPTIC-7577917 - https://snyk.io/vuln/SNYK-JS-ELLIPTIC-7577918 - https://snyk.io/vuln/SNYK-JS-ELLIPTIC-8187303 - https://snyk.io/vuln/SNYK-JS-ELLIPTIC-8720086 - https://snyk.io/vuln/SNYK-JS-IMAGESIZE-9634164 - https://snyk.io/vuln/SNYK-JS-INFLIGHT-6095116 - https://snyk.io/vuln/SNYK-JS-JSYAML-13961110 - https://snyk.io/vuln/SNYK-JS-MICROMATCH-6838728 - https://snyk.io/vuln/SNYK-JS-NODEFORGE-14114940 - https://snyk.io/vuln/SNYK-JS-NODEFORGE-14125097 - https://snyk.io/vuln/SNYK-JS-NODEFORGE-14125745 - https://snyk.io/vuln/SNYK-JS-ONHEADERS-10773729 - https://snyk.io/vuln/SNYK-JS-ROLLUP-8073097 - https://snyk.io/vuln/SNYK-JS-SECP256K1-8237220 - https://snyk.io/vuln/SNYK-JS-SEND-7926862 - https://snyk.io/vuln/SNYK-JS-SERVESTATIC-7926865 - https://snyk.io/vuln/SNYK-JS-SHAJS-12089400 Co-authored-by: snyk-io[bot] <141718529+snyk-io[bot]@users.noreply.github.com> * Revert "Merge remote-tracking branch 'origin/dependabot/npm_and_yarn/npm_and_yarn-318c02e2da'" This reverts commit fd0fdf9ecc6ad9056447e381de7fc5bb19f78e47, reversing changes made to cba78943db9942a4635bb530b7a43fc5d18b0ab4. * fix: extras/web/package.json to reduce vulnerabilities (#109) The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JS-NEXT-14173355 Co-authored-by: snyk-bot * fix: extras/docs/package.json to reduce vulnerabilities (#106) The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JS-NEXT-14400636 - https://snyk.io/vuln/SNYK-JS-NEXT-14400644 Co-authored-by: snyk-bot * Bump next in the npm_and_yarn group across 1 directory (#110) Bumps the npm_and_yarn group with 1 update in the / directory: [next](https://github.com/vercel/next.js). Updates `next` from 15.5.7 to 15.5.9 - [Release notes](https://github.com/vercel/next.js/releases) - [Changelog](https://github.com/vercel/next.js/blob/canary/release.js) - [Commits](https://github.com/vercel/next.js/compare/v15.5.7...v15.5.9) --- updated-dependencies: - dependency-name: next dependency-version: 15.5.9 dependency-type: direct:production dependency-group: npm_and_yarn ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Delete .github/workflows/fortify.yml (#111) Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * fix: extras/web/package.json to reduce vulnerabilities (#107) The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JS-NEXT-14400636 - https://snyk.io/vuln/SNYK-JS-NEXT-14400644 Co-authored-by: snyk-bot * Bump the npm_and_yarn group across 1 directory with 3 updates (#115) Bumps the npm_and_yarn group with 1 update in the / directory: [next](https://github.com/vercel/next.js). Updates `next` from 15.5.5 to 15.5.9 - [Release notes](https://github.com/vercel/next.js/releases) - [Changelog](https://github.com/vercel/next.js/blob/canary/release.js) - [Commits](https://github.com/vercel/next.js/compare/v15.5.5...v15.5.9) Updates `happy-dom` from 17.6.3 to 20.0.11 - [Release notes](https://github.com/capricorn86/happy-dom/releases) - [Commits](https://github.com/capricorn86/happy-dom/compare/v17.6.3...v20.0.11) Updates `vite` from 7.1.10 to 7.2.7 - [Release notes](https://github.com/vitejs/vite/releases) - [Changelog](https://github.com/vitejs/vite/blob/v7.2.7/packages/vite/CHANGELOG.md) - [Commits](https://github.com/vitejs/vite/commits/v7.2.7/packages/vite) --- updated-dependencies: - dependency-name: next dependency-version: 15.5.9 dependency-type: direct:production dependency-group: npm_and_yarn - dependency-name: happy-dom dependency-version: 20.0.11 dependency-type: direct:development dependency-group: npm_and_yarn - dependency-name: vite dependency-version: 7.2.7 dependency-type: indirect dependency-group: npm_and_yarn ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Bump next from 15.5.7 to 15.5.9 (#944) Bumps [next](https://github.com/vercel/next.js) from 15.5.7 to 15.5.9. - [Release notes](https://github.com/vercel/next.js/releases) - [Changelog](https://github.com/vercel/next.js/blob/canary/release.js) - [Commits](https://github.com/vercel/next.js/compare/v15.5.7...v15.5.9) --- updated-dependencies: - dependency-name: next dependency-version: 15.5.9 dependency-type: direct:production ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Pin foundry to v1.5.0 instead of nightly (#947) * Include repo and extras in syncpack config to ensure deps are synced (#945) * Include repo and extras in syncpack config to ensure deps are synced across all * Updating support deps * Updating deps * Updating pnpm lock * Fixing type errors within wdk tests * Short circuit 404s (#949) * skip witness on signers that don't support it * add passkey to test * 3.0.0-beta.6 * Update tests.yml (#119) Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update config.yml (#120) Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update packages/services/identity-instrument/src/index.ts Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * feat: upgrade @wagmi/cli from 0.1.15 to 2.8.0 (#126) Snyk has created this PR to upgrade @wagmi/cli from 0.1.15 to 2.8.0. See this package in npm: @wagmi/cli See this project in Snyk: https://app.snyk.io/org/dargon789/project/bb845543-cbee-4e11-8cf9-8bfdf9205bf1?utm_source=github&utm_medium=referral&page=upgrade-pr Co-authored-by: snyk-bot * Potential fix for code scanning alert no. 82: Workflow does not contain permissions Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Potential fix for code scanning alert no. 62: Information exposure through a stack trace Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> --------- Signed-off-by: dependabot[bot] Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> Co-authored-by: Patryk Kalinowski Co-authored-by: Corban Riley Co-authored-by: tolgahan-arikan Co-authored-by: Agusx1211 Co-authored-by: Michael Standen Co-authored-by: William Hua Co-authored-by: Michael Standen Co-authored-by: Patryk Kalinowski Co-authored-by: Taylan Pince Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Gabi <56271768+VGabriel45@users.noreply.github.com> Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com> Co-authored-by: snyk-io[bot] <141718529+snyk-io[bot]@users.noreply.github.com> Co-authored-by: snyk-bot * Update extras/docs/package.json Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update extras/web/package.json Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * 0xsequence-1.9.19 # 0xsequence-#1.9.19 * Update packages/0xsequence/tests/browser/wallet-provider/dapp.test.ts Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update packages/auth/src/session.ts Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update tests.yml (#187) https://github.com/Dargon789/sequence.js/commit/ea7e889bdca6ab92991b03a34eb3e2002806b5a5 Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Potential fix for code scanning alert no. 61: Cross-window communication with unrestricted target origin Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> --------- Signed-off-by: dependabot[bot] Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> Co-authored-by: Patryk Kalinowski Co-authored-by: Corban Riley Co-authored-by: tolgahan-arikan Co-authored-by: Agusx1211 Co-authored-by: Michael Standen Co-authored-by: William Hua Co-authored-by: Michael Standen Co-authored-by: Patryk Kalinowski Co-authored-by: Taylan Pince Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Gabi <56271768+VGabriel45@users.noreply.github.com> Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com> Co-authored-by: snyk-io[bot] <141718529+snyk-io[bot]@users.noreply.github.com> Co-authored-by: snyk-bot * Delete .github/workflows/Docker.yml (#233) CI: Remove the Docker GitHub Actions workflow configuration file. Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * 1.0.8 (#234) * Merge remote-tracking branch 'origin/v1' into v1 * # 1.10.8 # 0xsequence ## 1.10.8 * 0xsequence [Sequence](https://sequence.xyz): a modular web3 stack and smart wallet for Ethereum chains * Update lefthook.yml Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update turbo.json Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update package.json Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update package.json Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update package.json Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update package.json Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update CHANGELOG.md Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update package.json Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update package.json Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update package.json Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update package.json Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update package.json Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update package.json Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update package.json Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update api.gen.ts Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update guard.gen.ts Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update CHANGELOG.md Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update CHANGELOG.md Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Delete packages/services directory Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update tests.yml Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update .eslintrc.js Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update .eslintrc.js Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> --------- Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> * 0xsequence-core wagmi-project-playgrounds-0xsequence-core * Potential fix for code scanning alert no. 40: Workflow does not contain permissions (#242) Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> * Bump diff (#235) Bumps the npm_and_yarn group with 1 update in the /lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts directory: [diff](https://github.com/kpdecker/jsdiff). Updates `diff` from 5.2.0 to 5.2.2 - [Changelog](https://github.com/kpdecker/jsdiff/blob/master/release-notes.md) - [Commits](https://github.com/kpdecker/jsdiff/compare/v5.2.0...v5.2.2) --- updated-dependencies: - dependency-name: diff dependency-version: 5.2.2 dependency-type: indirect dependency-group: npm_and_yarn ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Delete wagmi-project/.circleci directory (#245) CI: Delete the obsolete .circleci/config.yml configuration from wagmi-project. Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Revert "Delete lib/signals-implicit-mode/lib/sequence-v3/script/DeployMocks.s…" (#248) This reverts commit f9123e43459040f24b7f29fd7e8f74d1a920ce51. * Install Vercel Web Analytics in Next.js (#249) Implemented Vercel Web Analytics for Next.js Applications ## Summary Successfully configured Vercel Web Analytics for two Next.js App Router projects in the repository. ## Changes Made ### 1. Added @vercel/analytics Dependency Modified package.json files to include the @vercel/analytics package: - `extras/docs/package.json` - Added "@vercel/analytics": "^1.5.0" - `extras/web/package.json` - Added "@vercel/analytics": "^1.5.0" ### 2. Updated Root Layout Files Modified both App Router layout.tsx files to integrate the Analytics component: **Files Modified:** - `extras/docs/app/layout.tsx` - `extras/web/app/layout.tsx` **Changes Applied:** - Added import statement: `import { Analytics } from '@vercel/analytics/next'` - Added `` component inside the `` tag, placed after `{children}` - Preserved all existing code structure, styling, and functionality ## Implementation Details Both Next.js applications use the App Router pattern with TypeScript. The Analytics component was added following the official Vercel Analytics documentation: 1. Imported the Analytics component from '@vercel/analytics/next' 2. Placed the component at the end of the body element in the root layout 3. Maintained proper formatting and code style consistency ## Notes - The root package.json already had @vercel/analytics installed at version ^1.5.0 - Both applications are configured identically for consistent analytics tracking - The workspace has pre-existing dependency issues unrelated to these changes (missing @0xsequence/identity-instrument package), which prevents running `pnpm install` successfully - Once the workspace dependency issues are resolved, running `pnpm install` will pull in the analytics package for both apps - The changes are syntactically correct and follow Next.js best practices for App Router projects ## Testing Recommendations Once dependencies are installed: 1. Run `pnpm build` in both extras/docs and extras/web directories 2. Start the development server with `pnpm dev` 3. Verify analytics are being tracked in your Vercel dashboard 4. Check browser console for any errors related to analytics Co-authored-by: Vercel * 0xsequence 1.9.19 (#252) * 1.9.17 * Update packages/0xsequence/CHANGELOG.md Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update packages/account/CHANGELOG.md Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update packages/auth/CHANGELOG.md Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update packages/multicall/CHANGELOG.md Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update packages/provider/CHANGELOG.md Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update packages/wallet/CHANGELOG.md Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * 1.9.19 * Update packages/waas/src/networks.ts Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Squashed commit of the following: commit dafd2eda59d728355ab9028d03b0e10b014f2818 Author: Dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Wed Jan 7 06:30:16 2026 +0700 Create nextjs.yml (#176) CI: Introduce a Next.js GitHub Actions workflow that detects the package manager, builds the app, caches Next.js artifacts, and deploys the static output to GitHub Pages. Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> commit e6efe1f5b8e19fcd47714aa1417a9a01a16343a9 Author: dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Wed Jan 7 06:06:13 2026 +0700 sequence-core-dapp-1.0.0 commit cd4a860bbe5d27a96fd2a091cb6d074ff1c92331 Author: Dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Tue Jan 6 01:37:52 2026 +0700 Create web-sdk.yml (#175) https://github.com/Dargon789/Web3-Onboard/commit/fb66abf9ef6c55706a1dab2198db715f2588f1d1 https://github.com/Dargon789/web-sdk/commit/d26f62241ed85e6108a481f7a74ba7573c6c4c95 Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> commit f2fd08bd5c463fc1c154c0fb26d8286bfcde01fa Author: Dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Wed Dec 31 01:11:33 2025 +0700 V2 (#174) * Updating DefaultGuest address * Update tests.yml (#51) Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> * Update tests.yml (#52) Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> * Update tests.yml Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> * Update tests.yml (#55) Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> * Update tests.yml (#56) Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> * Update tests.yml Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> --------- Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> Co-authored-by: Corban Riley commit e7b277e79c7fe27c3cb129627d9f70e5bea9a25c Author: Dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Wed Dec 31 00:17:52 2025 +0700 Revise security policy for reporting vulnerabilities (#173) * Revise security policy for reporting vulnerabilities Updated contact information for vulnerability reporting. https://github.com/Dargon789/sequence.js/commit/e90b2e6395fb14c6463a02e88f65dc23ce455d6d Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update SECURITY.md Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> --------- Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> commit 70208b1b85034bada6c5f8f858cc11bfd1a11241 Author: Dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Tue Dec 30 21:50:23 2025 +0700 Potential fix for code scanning alert no. 95: Information exposure through a stack trace Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> commit 4c696d0e57d8ec45057b111bfb551ab497d0f93a Author: Dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Tue Dec 30 21:47:34 2025 +0700 Potential fix for code scanning alert no. 94: Insecure randomness Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> commit c62e5ddc2818a6b0624d63be3089c5ad7d08bd72 Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue Dec 30 21:42:22 2025 +0700 Bump happy-dom in the npm_and_yarn group across 1 directory (#167) Bumps the npm_and_yarn group with 1 update in the /wagmi-project directory: [happy-dom](https://github.com/capricorn86/happy-dom). Updates `happy-dom` from 18.0.1 to 20.0.2 - [Release notes](https://github.com/capricorn86/happy-dom/releases) - [Commits](https://github.com/capricorn86/happy-dom/compare/v18.0.1...v20.0.2) --- updated-dependencies: - dependency-name: happy-dom dependency-version: 20.0.2 dependency-type: direct:development dependency-group: npm_and_yarn ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> commit e13fe5a71769b6d325b9cc3185c4a0519205f7b1 Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue Dec 30 21:19:24 2025 +0700 Bump the npm_and_yarn group across 2 directories with 4 updates (#161) Bumps the npm_and_yarn group with 1 update in the / directory: [webpack-dev-server](https://github.com/webpack/webpack-dev-server). Bumps the npm_and_yarn group with 1 update in the /packages/0xsequence directory: [webpack-dev-server](https://github.com/webpack/webpack-dev-server). Updates `webpack-dev-server` from 3.11.3 to 5.2.1 - [Release notes](https://github.com/webpack/webpack-dev-server/releases) - [Changelog](https://github.com/webpack/webpack-dev-server/blob/main/CHANGELOG.md) - [Commits](https://github.com/webpack/webpack-dev-server/compare/v3.11.3...v5.2.1) Updates `http-proxy-middleware` from 0.19.1 to 2.0.9 - [Release notes](https://github.com/chimurai/http-proxy-middleware/releases) - [Changelog](https://github.com/chimurai/http-proxy-middleware/blob/v2.0.9/CHANGELOG.md) - [Commits](https://github.com/chimurai/http-proxy-middleware/compare/v0.19.1...v2.0.9) Updates `micromatch` from 3.1.10 to 4.0.8 - [Release notes](https://github.com/micromatch/micromatch/releases) - [Changelog](https://github.com/micromatch/micromatch/blob/master/CHANGELOG.md) - [Commits](https://github.com/micromatch/micromatch/compare/3.1.10...4.0.8) Updates `on-headers` from 1.0.2 to 1.1.0 - [Release notes](https://github.com/jshttp/on-headers/releases) - [Changelog](https://github.com/jshttp/on-headers/blob/master/HISTORY.md) - [Commits](https://github.com/jshttp/on-headers/compare/v1.0.2...v1.1.0) Updates `webpack-dev-server` from 3.11.3 to 5.2.1 - [Release notes](https://github.com/webpack/webpack-dev-server/releases) - [Changelog](https://github.com/webpack/webpack-dev-server/blob/main/CHANGELOG.md) - [Commits](https://github.com/webpack/webpack-dev-server/compare/v3.11.3...v5.2.1) Updates `http-proxy-middleware` from 0.19.1 to 2.0.9 - [Release notes](https://github.com/chimurai/http-proxy-middleware/releases) - [Changelog](https://github.com/chimurai/http-proxy-middleware/blob/v2.0.9/CHANGELOG.md) - [Commits](https://github.com/chimurai/http-proxy-middleware/compare/v0.19.1...v2.0.9) Updates `micromatch` from 3.1.10 to 4.0.8 - [Release notes](https://github.com/micromatch/micromatch/releases) - [Changelog](https://github.com/micromatch/micromatch/blob/master/CHANGELOG.md) - [Commits](https://github.com/micromatch/micromatch/compare/3.1.10...4.0.8) Updates `on-headers` from 1.0.2 to 1.1.0 - [Release notes](https://github.com/jshttp/on-headers/releases) - [Changelog](https://github.com/jshttp/on-headers/blob/master/HISTORY.md) - [Commits](https://github.com/jshttp/on-headers/compare/v1.0.2...v1.1.0) Updates `webpack-dev-server` from 3.11.3 to 5.2.1 - [Release notes](https://github.com/webpack/webpack-dev-server/releases) - [Changelog](https://github.com/webpack/webpack-dev-server/blob/main/CHANGELOG.md) - [Commits](https://github.com/webpack/webpack-dev-server/compare/v3.11.3...v5.2.1) --- updated-dependencies: - dependency-name: webpack-dev-server dependency-version: 5.2.1 dependency-type: direct:development dependency-group: npm_and_yarn - dependency-name: http-proxy-middleware dependency-version: 2.0.9 dependency-type: indirect dependency-group: npm_and_yarn - dependency-name: micromatch dependency-version: 4.0.8 dependency-type: indirect dependency-group: npm_and_yarn - dependency-name: on-headers dependency-version: 1.1.0 dependency-type: indirect dependency-group: npm_and_yarn - dependency-name: webpack-dev-server dependency-version: 5.2.1 dependency-type: direct:development dependency-group: npm_and_yarn - dependency-name: http-proxy-middleware dependency-version: 2.0.9 dependency-type: indirect dependency-group: npm_and_yarn - dependency-name: micromatch dependency-version: 4.0.8 dependency-type: indirect dependency-group: npm_and_yarn - dependency-name: on-headers dependency-version: 1.1.0 dependency-type: indirect dependency-group: npm_and_yarn - dependency-name: webpack-dev-server dependency-version: 5.2.1 dependency-type: direct:development dependency-group: npm_and_yarn ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> commit b9d25688cb184f4b5ec1d0aba07bd36351efc65b Author: Dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Mon Dec 29 15:35:25 2025 +0700 Update CNAME to new domain (#164) sequence.app Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> commit 4a81a2c4338191c93915c3101f3c24f0c468ae03 Author: Dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Mon Dec 29 14:08:44 2025 +0700 Proto (#163) * [AUTOMATED] Update: proto/clients/indexer*.gen.ts * [AUTOMATED] Update: proto/clients/indexer*.gen.ts * [AUTOMATED] Update: proto/clients/indexer*.gen.ts * [AUTOMATED] Update: proto/clients/indexer*.gen.ts * [AUTOMATED] Update: proto/clients/indexer*.gen.ts * [AUTOMATED] Update: proto/clients/indexer*.gen.ts * [AUTOMATED] Update: proto/clients/indexer*.gen.ts * [AUTOMATED] Update: proto/clients/indexer*.gen.ts --------- Co-authored-by: marino39 <722509+marino39@users.noreply.github.com> Co-authored-by: pkieltyka <18831+pkieltyka@users.noreply.github.com> Co-authored-by: xiam <385670+xiam@users.noreply.github.com> commit c4d0fdc33cd1ccf9cfc996b351959ae4d004a7e6 Merge: 7c547fcdd 269972a1d Author: dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Mon Dec 29 13:38:33 2025 +0700 Merge branch 'master' of https://github.com/Dargon789/sequence.js commit 269972a1dad423f67c0262149e46e7d8b3c3b10d Author: Dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Mon Dec 29 09:58:04 2025 +0700 fix: package.json to reduce vulnerabilities (#157) The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JS-BABELHELPERS-9397697 - https://snyk.io/vuln/SNYK-JS-BABELRUNTIME-10044504 - https://snyk.io/vuln/SNYK-JS-BRACEEXPANSION-9789073 - https://snyk.io/vuln/SNYK-JS-ELLIPTIC-8187303 - https://snyk.io/vuln/SNYK-JS-IMAGESIZE-9634164 - https://snyk.io/vuln/SNYK-JS-INFLIGHT-6095116 - https://snyk.io/vuln/SNYK-JS-JSYAML-13961110 - https://snyk.io/vuln/SNYK-JS-NODEFORGE-14114940 - https://snyk.io/vuln/SNYK-JS-NODEFORGE-14125097 - https://snyk.io/vuln/SNYK-JS-NODEFORGE-14125745 - https://snyk.io/vuln/SNYK-JS-SHAJS-12089400 - https://snyk.io/vuln/SNYK-JS-TMP-11501554 Co-authored-by: snyk-bot commit 7c547fcdd75774e39120241d16bf64c86e243355 Author: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Date: Sat Dec 27 02:34:25 2025 +0700 Bump the npm_and_yarn group across 4 directories with 7 updates (#144) Bumps the npm_and_yarn group with 4 updates in the /wagmi-project directory: [next](https://github.com/vercel/next.js), [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite), [@metamask/sdk](https://github.com/MetaMask/metamask-sdk/tree/HEAD/packages/sdk) and [nuxt](https://github.com/nuxt/nuxt/tree/HEAD/packages/nuxt). Bumps the npm_and_yarn group with 1 update in the /wagmi-project/packages/connectors directory: [@metamask/sdk](https://github.com/MetaMask/metamask-sdk/tree/HEAD/packages/sdk). Bumps the npm_and_yarn group with 1 update in the /wagmi-project/packages/create-wagmi/templates/next directory: [next](https://github.com/vercel/next.js). Bumps the npm_and_yarn group with 1 update in the /wagmi-project/playgrounds/next directory: [next](https://github.com/vercel/next.js). Updates `next` from 15.3.3 to 15.4.10 - [Release notes](https://github.com/vercel/next.js/releases) - [Changelog](https://github.com/vercel/next.js/blob/canary/release.js) - [Commits](https://github.com/vercel/next.js/compare/v15.3.3...v15.4.10) Updates `happy-dom` from 15.10.2 to 18.0.1 - [Release notes](https://github.com/capricorn86/happy-dom/releases) - [Commits](https://github.com/capricorn86/happy-dom/compare/v15.10.2...v18.0.1) Updates `vite` from 5.4.19 to 5.4.21 - [Release notes](https://github.com/vitejs/vite/releases) - [Changelog](https://github.com/vitejs/vite/blob/v5.4.21/packages/vite/CHANGELOG.md) - [Commits](https://github.com/vitejs/vite/commits/v5.4.21/packages/vite) Updates `@metamask/sdk` from 0.32.1 to 0.33.1 - [Release notes](https://github.com/MetaMask/metamask-sdk/releases) - [Changelog](https://github.com/MetaMask/metamask-sdk/blob/main/packages/sdk/CHANGELOG.md) - [Commits](https://github.com/MetaMask/metamask-sdk/commits/@metamask/sdk@0.33.1/packages/sdk) Updates `nuxt` from 3.16.0 to 3.19.0 - [Release notes](https://github.com/nuxt/nuxt/releases) - [Commits](https://github.com/nuxt/nuxt/commits/v3.19.0/packages/nuxt) Updates `@nuxt/devtools` from 2.4.1 to 2.7.0 - [Release notes](https://github.com/nuxt/devtools/releases) - [Changelog](https://github.com/nuxt/devtools/blob/main/CHANGELOG.md) - [Commits](https://github.com/nuxt/devtools/commits/v2.7.0/packages/devtools) Updates `devalue` from 5.1.1 to 5.6.1 - [Release notes](https://github.com/sveltejs/devalue/releases) - [Changelog](https://github.com/sveltejs/devalue/blob/main/CHANGELOG.md) - [Commits](https://github.com/sveltejs/devalue/compare/v5.1.1...v5.6.1) Updates `@metamask/sdk` from 0.32.1 to 0.33.1 - [Release notes](https://github.com/MetaMask/metamask-sdk/releases) - [Changelog](https://github.com/MetaMask/metamask-sdk/blob/main/packages/sdk/CHANGELOG.md) - [Commits](https://github.com/MetaMask/metamask-sdk/commits/@metamask/sdk@0.33.1/packages/sdk) Updates `next` from 15.2.4 to 15.4.10 - [Release notes](https://github.com/vercel/next.js/releases) - [Changelog](https://github.com/vercel/next.js/blob/canary/release.js) - [Commits](https://github.com/vercel/next.js/compare/v15.3.3...v15.4.10) Updates `next` from 15.3.3 to 15.4.10 - [Release notes](https://github.com/vercel/next.js/releases) - [Changelog](https://github.com/vercel/next.js/blob/canary/release.js) - [Commits](https://github.com/vercel/next.js/compare/v15.3.3...v15.4.10) --- updated-dependencies: - dependency-name: next dependency-version: 15.4.10 dependency-type: direct:production dependency-group: npm_and_yarn - dependency-name: happy-dom dependency-version: 18.0.1 dependency-type: direct:development dependency-group: npm_and_yarn - dependency-name: vite dependency-version: 5.4.21 dependency-type: direct:development dependency-group: npm_and_yarn - dependency-name: "@metamask/sdk" dependency-version: 0.33.1 dependency-type: direct:production dependency-group: npm_and_yarn - dependency-name: nuxt dependency-version: 3.19.0 dependency-type: direct:production dependency-group: npm_and_yarn - dependency-name: "@nuxt/devtools" dependency-version: 2.7.0 dependency-type: indirect dependency-group: npm_and_yarn - dependency-name: devalue dependency-version: 5.6.1 dependency-type: indirect dependency-group: npm_and_yarn - dependency-name: "@metamask/sdk" dependency-version: 0.33.1 dependency-type: direct:production dependency-group: npm_and_yarn - dependency-name: next dependency-version: 15.4.10 dependency-type: direct:production dependency-group: npm_and_yarn - dependency-name: next dependency-version: 15.4.10 dependency-type: direct:production dependency-group: npm_and_yarn ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> commit 977998758f93df492849cb55e7208864677515ef Author: Dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Sat Dec 27 02:10:27 2025 +0700 Update GitHub Actions workflow for tests (#149) Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> commit 9c420a789831c3affe0881d732bb95bd2bb075db Author: Dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Fri Dec 26 04:55:34 2025 +0700 Revise README structure and add sponsorship details (#146) * Revise README structure and add sponsorship details Updated README to include new sections and sponsorship information. https://sequence.xyz/ Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update README.md Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update README.md Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update README.md Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> --------- Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> commit 224f7612cd574849b75e17056859f0a208a24aa1 Author: dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Fri Dec 26 03:19:19 2025 +0700 sequence-core-1.0.0 commit e90b2e6395fb14c6463a02e88f65dc23ce455d6d Author: dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Thu Dec 25 14:15:53 2025 +0700 Initial project structure and core packages Add initial monorepo structure for wagmi-project, including CLI, connectors, and core packages with source code, tests, configuration, and CI/CD workflows. This sets up the foundation for further development and collaboration. commit 1f452493d6ac5f23e20def94b7edf207bc2ce40a Author: snyk-io[bot] <141718529+snyk-io[bot]@users.noreply.github.com> Date: Wed Dec 24 21:11:40 2025 +0700 fix: extras/web/package.json to reduce vulnerabilities (#117) The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JS-NEXT-14400636 - https://snyk.io/vuln/SNYK-JS-NEXT-14400644 Co-authored-by: snyk-io[bot] <141718529+snyk-io[bot]@users.noreply.github.com> Co-authored-by: dargon789 <64915515+Dargon789@users.noreply.github.com> commit 8bad845d94b7ca97a1d01a255eb8b41357eaf38d Author: Dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Wed Dec 24 19:35:49 2025 +0700 feat: upgrade react from 18.3.1 to 19.2.0 (#121) Snyk has created this PR to upgrade react from 18.3.1 to 19.2.0. See this package in npm: react See this project in Snyk: https://app.snyk.io/org/dargon789/project/bb845543-cbee-4e11-8cf9-8bfdf9205bf1?utm_source=github&utm_medium=referral&page=upgrade-pr Co-authored-by: snyk-bot commit 5e6dca3ce44d2e8d5b00b1182ba9d6eae7855b23 Author: Dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Tue Dec 23 21:23:47 2025 +0700 Pin foundry to v1.5.0 instead of nightly (0xsequence#947) (#134) (#135) * Pin foundry to v1.5.0 instead of nightly (0xsequence#947) (#134) * Bump next from 15.5.7 to 15.5.9 (#944) Bumps [next](https://github.com/vercel/next.js) from 15.5.7 to 15.5.9. - [Release notes](https://github.com/vercel/next.js/releases) - [Changelog](https://github.com/vercel/next.js/blob/canary/release.js) - [Commits](https://github.com/vercel/next.js/compare/v15.5.7...v15.5.9) --- updated-dependencies: - dependency-name: next dependency-version: 15.5.9 dependency-type: direct:production ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Pin foundry to v1.5.0 instead of nightly (#947) * Include repo and extras in syncpack config to ensure deps are synced (#945) * Include repo and extras in syncpack config to ensure deps are synced across all * Updating support deps * Updating deps * Updating pnpm lock * Fixing type errors within wdk tests * Short circuit 404s (#949) * skip witness on signers that don't support it * add passkey to test * 3.0.0-beta.6 --------- Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Taylan Pince Co-authored-by: Corban Riley Co-authored-by: Agusx1211 * Update packages/wallet/wdk/test/wallets.test.ts Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update packages/wallet/wdk/test/wallets.test.ts Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> --------- Signed-off-by: dependabot[bot] Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Taylan Pince Co-authored-by: Corban Riley Co-authored-by: Agusx1211 Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> commit 802829cc116d9656dfb166beba03a1e77c8d556b Author: Dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Tue Dec 23 21:15:56 2025 +0700 2.3.7 (#131) (#132) * 2.3.7 (#131) * fix broken guard private key * Expose access to passkey credential list * Dapp client direct txn request (#856) * Signature request refactor * WIP * Refactor * Update dapp-client exports (#858) * Add hasPermission method to DappClient (#859) * Save discovered passkey credentials upon login * Expose name property in PasskeySignupArgs * Fix blacklist sort * Add multi server script * relayer: /SimulateV3 (#857) * Add await for handleOpenDB scheduleExpiration * Update increment to always include native once used * Fix session tests * Adding lastLoginAt to PasskeyCredential * LoginToPasskeyArgs now accept a credentialId which is used to specify which credential to use * Adding onSignatureRequestStatus function to register single use callbacks for when a request reaches a terminal state of completed or cancelled * When a login is cancelled we can remove the wallet which is logging-in * Add RC3 contracts * Sessions space restriction * Dedupe signers for encoding * Support RC3 sessions * Tightly increment call validation * CLI defaults to RC3 wallet code * Rc3 address test * Fix hashing tests * Add deprecated encoding test * wdk: throw errors from otp respond callback (#864) * wdk: throw errors from otp respond callback * wdk: otp auth error and handler refactor * Handle guard 2FA (#861) * guard: return a specific error when auth required * core: pass guard token to the service * wdk: handle prompting for guard 2FA code * dapp-client: handle prompting for guard 2FA code * guard 2fa tests * wdk: separate wallet and sessions guards * dapp-client: remove guard 2fa * dapp-client: fix imports * fix guard tests * wdk: remove unneeded promise resolve * Update relayer and api gen.ts, force public packages * Add standalone fetch queued payloads * Replacing GuardRole enum with string union type, as well as replacing guardAddresses Map with Record * Fallback to chain for non-logged in recovery * Add Katana, Sandbox Tesnet, Incentiv Testnet v2 (#873) * Update a few remaining dev1 contract addresses to rc3 (#874) * Remove unnecessary console.error where we already throw error * Improve DappClient hasPermission method * Wallet db try checksum and lowercase * Update dapp client json utils to include Map reviver and replacer * Bump next in the npm_and_yarn group across 1 directory Bumps the npm_and_yarn group with 1 update in the / directory: [next](https://github.com/vercel/next.js). Updates `next` from 15.4.2 to 15.4.7 - [Release notes](https://github.com/vercel/next.js/releases) - [Changelog](https://github.com/vercel/next.js/blob/canary/release.js) - [Commits](https://github.com/vercel/next.js/compare/v15.4.2...v15.4.7) --- updated-dependencies: - dependency-name: next dependency-version: 15.4.7 dependency-type: direct:production dependency-group: npm_and_yarn ... Signed-off-by: dependabot[bot] * Update type name, update exports for dapp client * Expired explicit sessions can't sign * Improve session validity test * session isValid returns invalid reason * InvalidReason is typed * Support multiple identity signers in sessions configuration * Device signers can approve implicit sessions * Remove invalid test * Fix recursion * Fix comment * Improve test stability by reducing race conditions * Do not set passkey signer as identity signer * Use length checks * Throw on missing identity signer * Encoding requires identity signer to encode * Fix test * Refactor/types namings tsdoc redundant code (#880) * refactor types, namings, ts doc * fix session response payload * change parameter name * change parameter name * change type in tests * improve types and dapp client methods * fix session test to use new types * refactor * refactor implicit sessions array in chain session manager * remove unused types * remove unused types and add ConnectionError * update pnpm lock * move reusable session types to wallet-core * Update some imports and update some response type names --------- Co-authored-by: Tolgahan Arikan * Fix check for explicit session for the updated type in dapp-client * Update api.gen.ts and relayer.gen.ts * Add missing chainId for dapp client event * Fix initializing new chain session manager on redirect * Add support for non-viem, custom Sequence chains (#882) * Update issue templates * Provider sent to prepareBlankEnvelope * Add session signature decoding * Add feeTokens endpoint to relayer (#885) * const for node length * Clearer blacklist size encoding * identity signer node length * Potential fix for code scanning alert no. 84: Insecure randomness Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> * add getFeeTokens to dapp client (#889) * add getFeeTokens to dapp client * fix typo * make getFeeTokens independent of chain session manager and initialize state (#890) * make getFeeTokens independent of chain session manager and initialized state * remove getFeeTokens from chain session manager * Throw specific error when trying to sign with an expired session (#887) * Throw when supported session signer is expired * Fix tests * Make dapp-client implicit sessions chain agnostic (#893) * Add Monad, remove LAOS and Root Network * Bump the npm_and_yarn group across 3 directories with 1 update Bumps the npm_and_yarn group with 1 update in the / directory: [happy-dom](https://github.com/capricorn86/happy-dom). Bumps the npm_and_yarn group with 1 update in the /packages/wallet/dapp-client directory: [happy-dom](https://github.com/capricorn86/happy-dom). Bumps the npm_and_yarn group with 1 update in the /packages/wallet/wdk directory: [happy-dom](https://github.com/capricorn86/happy-dom). Updates `happy-dom` from 17.6.3 to 20.0.0 - [Release notes](https://github.com/capricorn86/happy-dom/releases) - [Commits](https://github.com/capricorn86/happy-dom/compare/v17.6.3...v20.0.0) Updates `happy-dom` from 17.6.3 to 20.0.0 - [Release notes](https://github.com/capricorn86/happy-dom/releases) - [Commits](https://github.com/capricorn86/happy-dom/compare/v17.6.3...v20.0.0) Updates `happy-dom` from 17.6.3 to 20.0.0 - [Release notes](https://github.com/capricorn86/happy-dom/releases) - [Commits](https://github.com/capricorn86/happy-dom/compare/v17.6.3...v20.0.0) --- updated-dependencies: - dependency-name: happy-dom dependency-version: 20.0.0 dependency-type: direct:development dependency-group: npm_and_yarn - dependency-name: happy-dom dependency-version: 20.0.0 dependency-type: direct:development dependency-group: npm_and_yarn - dependency-name: happy-dom dependency-version: 20.0.0 dependency-type: direct:development dependency-group: npm_and_yarn ... Signed-off-by: dependabot[bot] * Bump happy-dom in the npm_and_yarn group across 1 directory (#69) Bumps the npm_and_yarn group with 1 update in the / directory: [happy-dom](https://github.com/capricorn86/happy-dom). Updates `happy-dom` from 20.0.0 to 20.0.2 - [Release notes](https://github.com/capricorn86/happy-dom/releases) - [Commits](https://github.com/capricorn86/happy-dom/compare/v20.0.0...v20.0.2) --- updated-dependencies: - dependency-name: happy-dom dependency-version: 20.0.2 dependency-type: direct:development dependency-group: npm_and_yarn ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Create SECURITY.md for security policy (#70) * Create SECURITY.md for security policy Add a security policy document outlining supported versions and vulnerability reporting. Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> * Update SECURITY.md Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> * Update SECURITY.md Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> --------- Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> * Update SECURITY.md Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> * Add support for sessionless dapp connection (#896) * Refactor relayer package & update dependant packages (#891) * refactor exports for relayer (#900) * Add Arc Testnet * Fix changelog config * Sessionless connection upgrade and error handling in DappClient (#902) * dapp-client: add sessionless snapshot restore flow * Bump the npm_and_yarn group across 3 directories with 1 update Bumps the npm_and_yarn group with 1 update in the / directory: [happy-dom](https://github.com/capricorn86/happy-dom). Bumps the npm_and_yarn group with 1 update in the /packages/wallet/dapp-client directory: [happy-dom](https://github.com/capricorn86/happy-dom). Bumps the npm_and_yarn group with 1 update in the /packages/wallet/wdk directory: [happy-dom](https://github.com/capricorn86/happy-dom). Updates `happy-dom` from 17.6.3 to 20.0.2 - [Release notes](https://github.com/capricorn86/happy-dom/releases) - [Commits](https://github.com/capricorn86/happy-dom/compare/v17.6.3...v20.0.2) Updates `happy-dom` from 17.6.3 to 20.0.2 - [Release notes](https://github.com/capricorn86/happy-dom/releases) - [Commits](https://github.com/capricorn86/happy-dom/compare/v17.6.3...v20.0.2) Updates `happy-dom` from 17.6.3 to 20.0.2 - [Release notes](https://github.com/capricorn86/happy-dom/releases) - [Commits](https://github.com/capricorn86/happy-dom/compare/v17.6.3...v20.0.2) --- updated-dependencies: - dependency-name: happy-dom dependency-version: 20.0.2 dependency-type: direct:development dependency-group: npm_and_yarn - dependency-name: happy-dom dependency-version: 20.0.2 dependency-type: direct:development dependency-group: npm_and_yarn - dependency-name: happy-dom dependency-version: 20.0.2 dependency-type: direct:development dependency-group: npm_and_yarn ... Signed-off-by: dependabot[bot] * Allow to logout a wallet with skipRemoveDevice even if the wallet is not in a ready state to allow force removing of wallets (#906) * Pass request to PromptCodeHandler in guard registerUI (#909) * Pass request to PromptCodeHandler in guard registerUI * Fixing guard registerUI test * guard: allow using recovery code as 2FA token (#910) * guard: allow using recovery code as 2FA token * Cleanup types of ResponseFn --------- Co-authored-by: Corban Riley * Add a way to reset 2fa when using a backup code (#911) * Add a way to reset 2fa when using a backup code * use the GuardToken type instead of breaking out the props * Update SECURITY.md Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update packages/wallet/dapp-client/src/DappTransport.ts Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update package.json Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update SECURITY.md Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update wagmi-project/package.json Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update wagmi-project/package.json Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update wagmi-project/src/App.tsx Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Create FUNDING.json (#90) Enhancements: Include FUNDING.json to display GitHub sponsorship options in the repository Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Create config.yml (#91) Add initial CircleCI configuration to enable automated builds using a custom Docker executor and a defined workflow. Build: Add .circleci/config.yml with version 2.1 specification and custom Docker executor. CI: Define web3-defi-game-project job with checkout step. Set up my-custom-workflow to run the job. Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Add rc4 contracts * Set rc4 as default and add it to lists * Session enhanced replay protection * New sessions replay protection hashes payload * Use the 4337 factory wrapper * Update keymachine url in dapp-client constants * Update keymachine url in Provider constructor * SSR safety (#915) * SSR safety test * Fix CI job * Guard dapp-client for SSR (lazy transport, browser checks, gated storage) * Fix guard topology (#918) * Use proper guard topology * Test and fixes * login and setup tests * Switch prod manager settings (#917) * Add prod guard and identity instrument info * Remove completed TODOs * Small JS tweaks (#919) * Fix type exports to built declarations * Update repository links to current package paths * Improve Next app tooling and React typings * Expose primitives CLI bin and use base lint config * Update relayer.gen.ts and TransactionPrecondition interface * Update api.gen.ts * Update metadata.gen.ts * Update marketplace.gen.ts * Update guard.gen.ts * Support multiple identity signers in sessions configuration * Device signers can approve implicit sessions * Remove invalid test * Fix recursion * Fix comment * Improve test stability by reducing race conditions * Do not set passkey signer as identity signer * Use length checks * Throw on missing identity signer * Encoding requires identity signer to encode * Fix test * Refactor/types namings tsdoc redundant code (#880) * refactor types, namings, ts doc * fix session response payload * change parameter name * change parameter name * change type in tests * improve types and dapp client methods * fix session test to use new types * refactor * refactor implicit sessions array in chain session manager * remove unused types * remove unused types and add ConnectionError * update pnpm lock * move reusable session types to wallet-core * Update some imports and update some response type names --------- Co-authored-by: Tolgahan Arikan * Fix check for explicit session for the updated type in dapp-client * Update api.gen.ts and relayer.gen.ts * Add missing chainId for dapp client event * Fix initializing new chain session manager on redirect * Add support for non-viem, custom Sequence chains (#882) * Provider sent to prepareBlankEnvelope * Add session signature decoding * const for node length * Clearer blacklist size encoding * identity signer node length * Add feeTokens endpoint to relayer (#885) * add getFeeTokens to dapp client (#889) * add getFeeTokens to dapp client * fix typo * make getFeeTokens independent of chain session manager and initialize state (#890) * make getFeeTokens independent of chain session manager and initialized state * remove getFeeTokens from chain session manager * Throw specific error when trying to sign with an expired session (#887) * Throw when supported session signer is expired * Fix tests * Make dapp-client implicit sessions chain agnostic (#893) * Add Monad, remove LAOS and Root Network * Add support for sessionless dapp connection (#896) * Refactor relayer package & update dependant packages (#891) * refactor exports for relayer (#900) * Add Arc Testnet * Fix changelog config * Sessionless connection upgrade and error handling in DappClient (#902) * dapp-client: add sessionless snapshot restore flow * Allow to logout a wallet with skipRemoveDevice even if the wallet is not in a ready state to allow force removing of wallets (#906) * Pass request to PromptCodeHandler in guard registerUI (#909) * Pass request to PromptCodeHandler in guard registerUI * Fixing guard registerUI test * guard: allow using recovery code as 2FA token (#910) * guard: allow using recovery code as 2FA token * Cleanup types of ResponseFn --------- Co-authored-by: Corban Riley * Add a way to reset 2fa when using a backup code (#911) * Add a way to reset 2fa when using a backup code * use the GuardToken type instead of breaking out the props * Add rc4 contracts * Set rc4 as default and add it to lists * Session enhanced replay protection * New sessions replay protection hashes payload * Use the 4337 factory wrapper * Update keymachine url in dapp-client constants * Update keymachine url in Provider constructor * SSR safety (#915) * Guard dapp-client for SSR (lazy transport, browser checks, gated storage) * Fix guard topology (#918) * Use proper guard topology * Test and fixes * login and setup tests * Switch prod manager settings (#917) * Add prod guard and identity instrument info * Remove completed TODOs * Small JS tweaks (#919) * Fix type exports to built declarations * Update repository links to current package paths * Improve Next app tooling and React typings * Expose primitives CLI bin and use base lint config * Update relayer.gen.ts and TransactionPrecondition interface * Update relayer.gen.ts and TransactionPrecondition interface (#920) * 3.0.0-beta.1 * identity-instrument: generate nonce from current time (#921) * Remove publish-dists.yml github action (#923) * 3.0.0-beta.2 * Clean up changeset config * Improve test stability by removing race conditions * Ensure build before test * Updating happy-dom to 20.0.10 (#926) * Add support for custom auth providers (authcode & authcode-pkce only) (#894) * Add support for custom auth providers (authcode & authcode-pkce only) * fix authcode tests * Updating Deps November 2025 (#927) * Updating deps for the workspace root * Updating deps for wallet/wdk * Fixing sessions test for latest vitest * Lets not upgrade to the latest typescript quite yet * Updating to latest vitest * Updating deps for wallet/core * Updating deps for wallet/primitives-cli * Updating deps for wallet/dapp-client * Adding syncpack to check for dep version inconsistencies * Setup syncpack versionGroups for pnpm workspace:^ * Fixing dep versions mismatches * Fixing @types/node mismatches * Adding syncpack to pre commit hook * Remove the syncpack format script. * Update ox to v9.17.0 (#928) * Upgrading ox to 9.17.0 * WrappedSignature renamed to SignatureErc6492 * Fixing PasskeySignatureValidator interface * Lock ox lib dep to use the same version with pnpm overrides and update viem to latest * Fix explicitSessionRequested check in dapp client * Typescript 5.9.3 (#930) * Upgrading to typescript v5.9.3 * Fix type errors that arose from typescript upgrade related to Bytes and Buffer source typings. * Don't catch errors thrown by Guard 2FA or reject early to allow multiple attempts on incorrect TOTP (#931) * Update pnpm * Mark @0xsequence/wallet-primitives-cli as private * 3.0.0-beta.3 * changeset cleanup * Fix rc4 4337 factory (#933) * Add rc5 and set it as default (#934) * 3.0.0-beta.4 * Update SECURITY.md Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update wagmi-project/package.json Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update wagmi-project/package.json Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Bump next from 15.5.5 to 15.5.7 (#936) Bumps [next](https://github.com/vercel/next.js) from 15.5.5 to 15.5.7. - [Release notes](https://github.com/vercel/next.js/releases) - [Changelog](https://github.com/vercel/next.js/blob/canary/release.js) - [Commits](https://github.com/vercel/next.js/compare/v15.5.5...v15.5.7) --- updated-dependencies: - dependency-name: next dependency-version: 15.5.7 dependency-type: direct:production ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * add userdata service client (#940) * Skip LocalDevice identity signers not on current device (#942) * Skip LocalDevice identity signers not on current device * Update log * 3.0.0-beta.5 * Update config.yml (#102) * Update config.yml Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update .circleci/config.yml Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> --------- Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com> * Update config.yml (#103) * Update config.yml Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update .circleci/config.yml Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> --------- Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com> * fix: extras/web/package.json to reduce vulnerabilities (#101) The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JS-NEXT-14173355 Co-authored-by: snyk-io[bot] <141718529+snyk-io[bot]@users.noreply.github.com> * fix: extras/docs/package.json to reduce vulnerabilities (#100) The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JS-NEXT-14173355 Co-authored-by: snyk-io[bot] <141718529+snyk-io[bot]@users.noreply.github.com> * fix: package.json to reduce vulnerabilities (#104) The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JS-BABELHELPERS-9397697 - https://snyk.io/vuln/SNYK-JS-BABELRUNTIME-10044504 - https://snyk.io/vuln/SNYK-JS-BRACEEXPANSION-9789073 - https://snyk.io/vuln/SNYK-JS-CROSSSPAWN-8303230 - https://snyk.io/vuln/SNYK-JS-ELLIPTIC-7577916 - https://snyk.io/vuln/SNYK-JS-ELLIPTIC-7577917 - https://snyk.io/vuln/SNYK-JS-ELLIPTIC-7577918 - https://snyk.io/vuln/SNYK-JS-ELLIPTIC-8187303 - https://snyk.io/vuln/SNYK-JS-ELLIPTIC-8720086 - https://snyk.io/vuln/SNYK-JS-IMAGESIZE-9634164 - https://snyk.io/vuln/SNYK-JS-INFLIGHT-6095116 - https://snyk.io/vuln/SNYK-JS-JSYAML-13961110 - https://snyk.io/vuln/SNYK-JS-MICROMATCH-6838728 - https://snyk.io/vuln/SNYK-JS-NODEFORGE-14114940 - https://snyk.io/vuln/SNYK-JS-NODEFORGE-14125097 - https://snyk.io/vuln/SNYK-JS-NODEFORGE-14125745 - https://snyk.io/vuln/SNYK-JS-ONHEADERS-10773729 - https://snyk.io/vuln/SNYK-JS-ROLLUP-8073097 - https://snyk.io/vuln/SNYK-JS-SECP256K1-8237220 - https://snyk.io/vuln/SNYK-JS-SEND-7926862 - https://snyk.io/vuln/SNYK-JS-SERVESTATIC-7926865 - https://snyk.io/vuln/SNYK-JS-SHAJS-12089400 Co-authored-by: snyk-io[bot] <141718529+snyk-io[bot]@users.noreply.github.com> * Revert "Merge remote-tracking branch 'origin/dependabot/npm_and_yarn/npm_and_yarn-318c02e2da'" This reverts commit fd0fdf9ecc6ad9056447e381de7fc5bb19f78e47, reversing changes made to cba78943db9942a4635bb530b7a43fc5d18b0ab4. * fix: extras/web/package.json to reduce vulnerabilities (#109) The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JS-NEXT-14173355 Co-authored-by: snyk-bot * fix: extras/docs/package.json to reduce vulnerabilities (#106) The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JS-NEXT-14400636 - https://snyk.io/vuln/SNYK-JS-NEXT-14400644 Co-authored-by: snyk-bot * Bump next in the npm_and_yarn group across 1 directory (#110) Bumps the npm_and_yarn group with 1 update in the / directory: [next](https://github.com/vercel/next.js). Updates `next` from 15.5.7 to 15.5.9 - [Release notes](https://github.com/vercel/next.js/releases) - [Changelog](https://github.com/vercel/next.js/blob/canary/release.js) - [Commits](https://github.com/vercel/next.js/compare/v15.5.7...v15.5.9) --- updated-dependencies: - dependency-name: next dependency-version: 15.5.9 dependency-type: direct:production dependency-group: npm_and_yarn ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Delete .github/workflows/fortify.yml (#111) Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * fix: extras/web/package.json to reduce vulnerabilities (#107) The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JS-NEXT-14400636 - https://snyk.io/vuln/SNYK-JS-NEXT-14400644 Co-authored-by: snyk-bot * Bump the npm_and_yarn group across 1 directory with 3 updates (#115) Bumps the npm_and_yarn group with 1 update in the / directory: [next](https://github.com/vercel/next.js). Updates `next` from 15.5.5 to 15.5.9 - [Release notes](https://github.com/vercel/next.js/releases) - [Changelog](https://github.com/vercel/next.js/blob/canary/release.js) - [Commits](https://github.com/vercel/next.js/compare/v15.5.5...v15.5.9) Updates `happy-dom` from 17.6.3 to 20.0.11 - [Release notes](https://github.com/capricorn86/happy-dom/releases) - [Commits](https://github.com/capricorn86/happy-dom/compare/v17.6.3...v20.0.11) Updates `vite` from 7.1.10 to 7.2.7 - [Release notes](https://github.com/vitejs/vite/releases) - [Changelog](https://github.com/vitejs/vite/blob/v7.2.7/packages/vite/CHANGELOG.md) - [Commits](https://github.com/vitejs/vite/commits/v7.2.7/packages/vite) --- updated-dependencies: - dependency-name: next dependency-version: 15.5.9 dependency-type: direct:production dependency-group: npm_and_yarn - dependency-name: happy-dom dependency-version: 20.0.11 dependency-type: direct:development dependency-group: npm_and_yarn - dependency-name: vite dependency-version: 7.2.7 dependency-type: indirect dependency-group: npm_and_yarn ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Bump next from 15.5.7 to 15.5.9 (#944) Bumps [next](https://github.com/vercel/next.js) from 15.5.7 to 15.5.9. - [Release notes](https://github.com/vercel/next.js/releases) - [Changelog](https://github.com/vercel/next.js/blob/canary/release.js) - [Commits](https://github.com/vercel/next.js/compare/v15.5.7...v15.5.9) --- updated-dependencies: - dependency-name: next dependency-version: 15.5.9 dependency-type: direct:production ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Pin foundry to v1.5.0 instead of nightly (#947) * Include repo and extras in syncpack config to ensure deps are synced (#945) * Include repo and extras in syncpack config to ensure deps are synced across all * Updating support deps * Updating deps * Updating pnpm lock * Fixing type errors within wdk tests * Short circuit 404s (#949) * skip witness on signers that don't support it * add passkey to test * 3.0.0-beta.6 * Update tests.yml (#119) Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update config.yml (#120) Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update packages/services/identity-instrument/src/index.ts Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * feat: upgrade @wagmi/cli from 0.1.15 to 2.8.0 (#126) Snyk has created this PR to upgrade @wagmi/cli from 0.1.15 to 2.8.0. See this package in npm: @wagmi/cli See this project in Snyk: https://app.snyk.io/org/dargon789/project/bb845543-cbee-4e11-8cf9-8bfdf9205bf1?utm_source=github&utm_medium=referral&page=upgrade-pr Co-authored-by: snyk-bot * Potential fix for code scanning alert no. 82: Workflow does not contain permissions Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Potential fix for code scanning alert no. 62: Information exposure through a stack trace Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> --------- Signed-off-by: dependabot[bot] Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> Co-authored-by: Patryk Kalinowski Co-authored-by: Corban Riley Co-authored-by: tolgahan-arikan Co-authored-by: Agusx1211 Co-authored-by: Michael Standen Co-authored-by: William Hua Co-authored-by: Michael Standen Co-authored-by: Patryk Kalinowski Co-authored-by: Taylan Pince Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Gabi <56271768+VGabriel45@users.noreply.github.com> Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com> Co-authored-by: snyk-io[bot] <141718529+snyk-io[bot]@users.noreply.github.com> Co-authored-by: snyk-bot * Update extras/docs/package.json Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update extras/web/package.json Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> --------- Signed-off-by: dependabot[bot] Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> Co-authored-by: Patryk Kalinowski Co-authored-by: Corban Riley Co-authored-by: tolgahan-arikan Co-authored-by: Agusx1211 Co-authored-by: Michael Standen Co-authored-by: William Hua Co-authored-by: Michael Standen Co-authored-by: Patryk Kalinowski Co-authored-by: Taylan Pince Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Gabi <56271768+VGabriel45@users.noreply.github.com> Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com> Co-authored-by: snyk-io[bot] <141718529+snyk-io[bot]@users.noreply.github.com> Co-authored-by: snyk-bot commit 893eedbb1a99db6736a157fed7d73a0196f30778 Merge: bc418b171 7fe4a922d Author: dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Tue Dec 23 18:50:09 2025 +0700 Merge remote-tracking branch 'origin/v1' into v1 commit 7fe4a922dfbd817fa76b8e30e9be184e6f38ddb1 Author: Dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Tue Dec 23 18:16:10 2025 +0700 Update wagmi-project/src/App.tsx Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> commit 640be8ffe175c762828aded47cc76e8d2c404b56 Author: Dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Tue Dec 23 18:15:48 2025 +0700 Update wagmi-project/src/App.tsx Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> commit 51a64321d3c0b91c9bd43c1e7e693f974c045dbb Author: Dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Tue Dec 23 18:15:24 2025 +0700 Update wagmi-project/src/App.tsx Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> commit 28a268eef9f36a4bcf257d175c49c31f55f8008b Author: Dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Tue Dec 23 18:14:59 2025 +0700 Update wagmi-project/src/App.tsx Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> commit bc418b171da95091d834f3a21141780169818db3 Author: Dargon789 <64915515+Dargon789@users.noreply.github.com> Date: Tue Dec 23 00:27:24 2025 +0700 Master ceb95d4 (#129) * Update issue templates (#128) * Bump the npm_and_yarn group across 1 directory with 1 update Bumps the npm_and_yarn group with 1 update in the / directory: [express](https://github.com/expressjs/express). Updates `express` from 4.18.2 to 4.19.2 - [Release notes](https://github.com/expressjs/express/releases) - [Changelog](https://github.com/expressjs/express/blob/master/History.md) - [Commits](https://github.com/expressjs/express/compare/4.18.2...4.19.2) --- updated-dependencies: - dependency-name: express dependency-type: direct:development dependency-group: npm_and_yarn-security-group ... Signed-off-by: dependabot[bot] * Create SECURITY.md * Set up CI with Azure Pipelines [skip ci] * Create CNAME * Create fortify.yml * Update issue templates * Update CNAME * fix: upgrade @tanstack/react-query from 5.45.1 to 5.64.2 Snyk has created this PR to upgrade @tanstack/react-query from 5.45.1 to 5.64.2. See this package in npm: @tanstack/react-query See this project in Snyk: https://app.snyk.io/org/dargon789/project/bb845543-cbee-4e11-8cf9-8bfdf9205bf1?utm_source=github&utm_medium=referral&page=upgrade-pr * Create config.yml (#46) Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> * Support multiple identity signers in sessions configuration * Device signers can approve implicit sessions * Remove invalid test * Fix recursion * Fix comment * Improve test stability by reducing race conditions * Do not set passkey signer as identity signer * Use length checks * Throw on missing identity signer * Encoding requires identity signer to encode * Fix test * Refactor/types namings tsdoc redundant code (#880) * refactor types, namings, ts doc * fix session response payload * change parameter name * change parameter name * change type in tests * improve types and dapp client methods * fix session test to use new types * refactor * refactor implicit sessions array in chain session manager * remove unused types * remove unused types and add ConnectionError * update pnpm lock * move reusable session types to wallet-core * Update some imports and update some response type names --------- Co-authored-by: Tolgahan Arikan * Fix check for explicit session for the updated type in dapp-client * Update api.gen.ts and relayer.gen.ts * Add missing chainId for dapp client event * Fix initializing new chain session manager on redirect * Add support for non-viem, custom Sequence chains (#882) * Provider sent to prepareBlankEnvelope * Update fortify.yml Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> * Add session signature decoding * Add feeTokens endpoint to relayer (#885) * const for node length * Clearer blacklist size encoding * identity signer node length * add getFeeTokens to dapp client (#889) * add getFeeTokens to dapp client * fix typo * make getFeeTokens independent of chain session manager and initialize state (#890) * make getFeeTokens independent of chain session manager and initialized state * remove getFeeTokens from chain session manager * Throw specific error when trying to sign with an expired session (#887) * Throw when supported session signer is expired * Fix tests * Make dapp-client implicit sessions chain agnostic (#893) * Add Mona… * fix: extras/docs/package.json to reduce vulnerabilities (#250) The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JS-NEXT-15104645 - https://snyk.io/vuln/SNYK-JS-NEXT-15105315 Co-authored-by: snyk-io[bot] <141718529+snyk-io[bot]@users.noreply.github.com> * fix: extras/web/package.json to reduce vulnerabilities (#251) The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JS-NEXT-15104645 - https://snyk.io/vuln/SNYK-JS-NEXT-15105315 Co-authored-by: snyk-io[bot] <141718529+snyk-io[bot]@users.noreply.github.com> * 0xsequence 1.9.19 (#253) * Improve test stability by reducing race conditions * Do not set passkey signer as identity signer * Use length checks * Throw on missing identity signer * Encoding requires identity signer to encode * Fix test * Refactor/types namings tsdoc redundant code (#880) * refactor types, namings, ts doc * fix session response payload * change parameter name * change parameter name * change type in tests * improve types and dapp client methods * fix session test to use new types * refactor * refactor implicit sessions array in chain session manager * remove unused types * remove unused types and add ConnectionError * update pnpm lock * move reusable session types to wallet-core * Update some imports and update some response type names --------- Co-authored-by: Tolgahan Arikan * Fix check for explicit session for the updated type in dapp-client * Update api.gen.ts and relayer.gen.ts * Add missing chainId for dapp client event * Fix initializing new chain session manager on redirect * Add support for non-viem, custom Sequence chains (#882) * Provider sent to prepareBlankEnvelope * Add session signature decoding * const for node length * Clearer blacklist size encoding * identity signer node length * Add feeTokens endpoint to relayer (#885) * add getFeeTokens to dapp client (#889) * add getFeeTokens to dapp client * fix typo * make getFeeTokens independent of chain session manager and initialize state (#890) * make getFeeTokens independent of chain session manager and initialized state * remove getFeeTokens from chain session manager * Throw specific error when trying to sign with an expired session (#887) * Throw when supported session signer is expired * Fix tests * Make dapp-client implicit sessions chain agnostic (#893) * Add Monad, remove LAOS and Root Network * Add support for sessionless dapp connection (#896) * Refactor relayer package & update dependant packages (#891) * refactor exports for relayer (#900) * Add Arc Testnet * Fix changelog config * Sessionless connection upgrade and error handling in DappClient (#902) * dapp-client: add sessionless snapshot restore flow * Allow to logout a wallet with skipRemoveDevice even if the wallet is not in a ready state to allow force removing of wallets (#906) * Pass request to PromptCodeHandler in guard registerUI (#909) * Pass request to PromptCodeHandler in guard registerUI * Fixing guard registerUI test * guard: allow using recovery code as 2FA token (#910) * guard: allow using recovery code as 2FA token * Cleanup types of ResponseFn --------- Co-authored-by: Corban Riley * Add a way to reset 2fa when using a backup code (#911) * Add a way to reset 2fa when using a backup code * use the GuardToken type instead of breaking out the props * Add rc4 contracts * Set rc4 as default and add it to lists * Session enhanced replay protection * New sessions replay protection hashes payload * Use the 4337 factory wrapper * Update keymachine url in dapp-client constants * Update keymachine url in Provider constructor * SSR safety (#915) * Guard dapp-client for SSR (lazy transport, browser checks, gated storage) * Fix guard topology (#918) * Use proper guard topology * Test and fixes * login and setup tests * Switch prod manager settings (#917) * Add prod guard and identity instrument info * Remove completed TODOs * Small JS tweaks (#919) * Fix type exports to built declarations * Update repository links to current package paths * Improve Next app tooling and React typings * Expose primitives CLI bin and use base lint config * Update relayer.gen.ts and TransactionPrecondition interface * Update relayer.gen.ts and TransactionPrecondition interface (#920) * 3.0.0-beta.1 * identity-instrument: generate nonce from current time (#921) * Remove publish-dists.yml github action (#923) * 3.0.0-beta.2 * Clean up changeset config * Improve test stability by removing race conditions * Ensure build before test * Updating happy-dom to 20.0.10 (#926) * Add support for custom auth providers (authcode & authcode-pkce only) (#894) * Add support for custom auth providers (authcode & authcode-pkce only) * fix authcode tests * Updating Deps November 2025 (#927) * Updating deps for the workspace root * Updating deps for wallet/wdk * Fixing sessions test for latest vitest * Lets not upgrade to the latest typescript quite yet * Updating to latest vitest * Updating deps for wallet/core * Updating deps for wallet/primitives-cli * Updating deps for wallet/dapp-client * Adding syncpack to check for dep version inconsistencies * Setup syncpack versionGroups for pnpm workspace:^ * Fixing dep versions mismatches * Fixing @types/node mismatches * Adding syncpack to pre commit hook * Remove the syncpack format script. * Update ox to v9.17.0 (#928) * Upgrading ox to 9.17.0 * WrappedSignature renamed to SignatureErc6492 * Fixing PasskeySignatureValidator interface * Lock ox lib dep to use the same version with pnpm overrides and update viem to latest * Fix explicitSessionRequested check in dapp client * Typescript 5.9.3 (#930) * Upgrading to typescript v5.9.3 * Fix type errors that arose from typescript upgrade related to Bytes and Buffer source typings. * Don't catch errors thrown by Guard 2FA or reject early to allow multiple attempts on incorrect TOTP (#931) * Update pnpm * Mark @0xsequence/wallet-primitives-cli as private * 3.0.0-beta.3 * changeset cleanup * [AUTOMATED] Update: proto/clients/indexer*.gen.ts * [AUTOMATED] Update: proto/clients/indexer*.gen.ts * [AUTOMATED] Update: proto/clients/indexer*.gen.ts * [AUTOMATED] Update: proto/clients/indexer*.gen.ts * [AUTOMATED] Update: proto/clients/indexer*.gen.ts * [AUTOMATED] Update: proto/clients/indexer*.gen.ts * [AUTOMATED] Update: proto/clients/indexer*.gen.ts * [AUTOMATED] Update: proto/clients/indexer*.gen.ts * Fix rc4 4337 factory (#933) * Add rc5 and set it as default (#934) * 3.0.0-beta.4 * Update SECURITY.md Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update wagmi-project/package.json Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update wagmi-project/package.json Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Bump next from 15.5.5 to 15.5.7 (#936) Bumps [next](https://github.com/vercel/next.js) from 15.5.5 to 15.5.7. - [Release notes](https://github.com/vercel/next.js/releases) - [Changelog](https://github.com/vercel/next.js/blob/canary/release.js) - [Commits](https://github.com/vercel/next.js/compare/v15.5.5...v15.5.7) --- updated-dependencies: - dependency-name: next dependency-version: 15.5.7 dependency-type: direct:production ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * add userdata service client (#940) * Skip LocalDevice identity signers not on current device (#942) * Skip LocalDevice identity signers not on current device * Update log * 3.0.0-beta.5 * Update config.yml (#102) * Update config.yml Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update .circleci/config.yml Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> --------- Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com> * Update config.yml (#103) * Update config.yml Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update .circleci/config.yml Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> --------- Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com> * fix: extras/web/package.json to reduce vulnerabilities (#101) The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JS-NEXT-14173355 Co-authored-by: snyk-io[bot] <141718529+snyk-io[bot]@users.noreply.github.com> * fix: extras/docs/package.json to reduce vulnerabilities (#100) The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JS-NEXT-14173355 Co-authored-by: snyk-io[bot] <141718529+snyk-io[bot]@users.noreply.github.com> * fix: package.json to reduce vulnerabilities (#104) The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JS-BABELHELPERS-9397697 - https://snyk.io/vuln/SNYK-JS-BABELRUNTIME-10044504 - https://snyk.io/vuln/SNYK-JS-BRACEEXPANSION-9789073 - https://snyk.io/vuln/SNYK-JS-CROSSSPAWN-8303230 - https://snyk.io/vuln/SNYK-JS-ELLIPTIC-7577916 - https://snyk.io/vuln/SNYK-JS-ELLIPTIC-7577917 - https://snyk.io/vuln/SNYK-JS-ELLIPTIC-7577918 - https://snyk.io/vuln/SNYK-JS-ELLIPTIC-8187303 - https://snyk.io/vuln/SNYK-JS-ELLIPTIC-8720086 - https://snyk.io/vuln/SNYK-JS-IMAGESIZE-9634164 - https://snyk.io/vuln/SNYK-JS-INFLIGHT-6095116 - https://snyk.io/vuln/SNYK-JS-JSYAML-13961110 - https://snyk.io/vuln/SNYK-JS-MICROMATCH-6838728 - https://snyk.io/vuln/SNYK-JS-NODEFORGE-14114940 - https://snyk.io/vuln/SNYK-JS-NODEFORGE-14125097 - https://snyk.io/vuln/SNYK-JS-NODEFORGE-14125745 - https://snyk.io/vuln/SNYK-JS-ONHEADERS-10773729 - https://snyk.io/vuln/SNYK-JS-ROLLUP-8073097 - https://snyk.io/vuln/SNYK-JS-SECP256K1-8237220 - https://snyk.io/vuln/SNYK-JS-SEND-7926862 - https://snyk.io/vuln/SNYK-JS-SERVESTATIC-7926865 - https://snyk.io/vuln/SNYK-JS-SHAJS-12089400 Co-authored-by: snyk-io[bot] <141718529+snyk-io[bot]@users.noreply.github.com> * Revert "Merge remote-tracking branch 'origin/dependabot/npm_and_yarn/npm_and_yarn-318c02e2da'" This reverts commit fd0fdf9ecc6ad9056447e381de7fc5bb19f78e47, reversing changes made to cba78943db9942a4635bb530b7a43fc5d18b0ab4. * fix: extras/web/package.json to reduce vulnerabilities (#109) The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JS-NEXT-14173355 Co-authored-by: snyk-bot * fix: extras/docs/package.json to reduce vulnerabilities (#106) The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JS-NEXT-14400636 - https://snyk.io/vuln/SNYK-JS-NEXT-14400644 Co-authored-by: snyk-bot * Bump next in the npm_and_yarn group across 1 directory (#110) Bumps the npm_and_yarn group with 1 update in the / directory: [next](https://github.com/vercel/next.js). Updates `next` from 15.5.7 to 15.5.9 - [Release notes](https://github.com/vercel/next.js/releases) - [Changelog](https://github.com/vercel/next.js/blob/canary/release.js) - [Commits](https://github.com/vercel/next.js/compare/v15.5.7...v15.5.9) --- updated-dependencies: - dependency-name: next dependency-version: 15.5.9 dependency-type: direct:production dependency-group: npm_and_yarn ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Delete .github/workflows/fortify.yml (#111) Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * fix: extras/web/package.json to reduce vulnerabilities (#107) The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JS-NEXT-14400636 - https://snyk.io/vuln/SNYK-JS-NEXT-14400644 Co-authored-by: snyk-bot * Bump the npm_and_yarn group across 1 directory with 3 updates (#115) Bumps the npm_and_yarn group with 1 update in the / directory: [next](https://github.com/vercel/next.js). Updates `next` from 15.5.5 to 15.5.9 - [Release notes](https://github.com/vercel/next.js/releases) - [Changelog](https://github.com/vercel/next.js/blob/canary/release.js) - [Commits](https://github.com/vercel/next.js/compare/v15.5.5...v15.5.9) Updates `happy-dom` from 17.6.3 to 20.0.11 - [Release notes](https://github.com/capricorn86/happy-dom/releases) - [Commits](https://github.com/capricorn86/happy-dom/compare/v17.6.3...v20.0.11) Updates `vite` from 7.1.10 to 7.2.7 - [Release notes](https://github.com/vitejs/vite/releases) - [Changelog](https://github.com/vitejs/vite/blob/v7.2.7/packages/vite/CHANGELOG.md) - [Commits](https://github.com/vitejs/vite/commits/v7.2.7/packages/vite) --- updated-dependencies: - dependency-name: next dependency-version: 15.5.9 dependency-type: direct:production dependency-group: npm_and_yarn - dependency-name: happy-dom dependency-version: 20.0.11 dependency-type: direct:development dependency-group: npm_and_yarn - dependency-name: vite dependency-version: 7.2.7 dependency-type: indirect dependency-group: npm_and_yarn ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Bump next from 15.5.7 to 15.5.9 (#944) Bumps [next](https://github.com/vercel/next.js) from 15.5.7 to 15.5.9. - [Release notes](https://github.com/vercel/next.js/releases) - [Changelog](https://github.com/vercel/next.js/blob/canary/release.js) - [Commits](https://github.com/vercel/next.js/compare/v15.5.7...v15.5.9) --- updated-dependencies: - dependency-name: next dependency-version: 15.5.9 dependency-type: direct:production ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Pin foundry to v1.5.0 instead of nightly (#947) * Include repo and extras in syncpack config to ensure deps are synced (#945) * Include repo and extras in syncpack config to ensure deps are synced across all * Updating support deps * Updating deps * Updating pnpm lock * Fixing type errors within wdk tests * Short circuit 404s (#949) * skip witness on signers that don't support it * add passkey to test * 3.0.0-beta.6 * Update tests.yml (#119) Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update config.yml (#120) Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update packages/services/identity-instrument/src/index.ts Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * feat: upgrade @wagmi/cli from 0.1.15 to 2.8.0 (#126) Snyk has created this PR to upgrade @wagmi/cli from 0.1.15 to 2.8.0. See this package in npm: @wagmi/cli See this project in Snyk: https://app.snyk.io/org/dargon789/project/bb845543-cbee-4e11-8cf9-8bfdf9205bf1?utm_source=github&utm_medium=referral&page=upgrade-pr Co-authored-by: snyk-bot * Potential fix for code scanning alert no. 82: Workflow does not contain permissions Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Potential fix for code scanning alert no. 62: Information exposure through a stack trace Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * [Snyk] Upgrade @tanstack/react-query from 5.64.2 to 5.90.11 (#125) * fix: upgrade @tanstack/react-query from 5.64.2 to 5.90.11 Snyk has created this PR to upgrade @tanstack/react-query from 5.64.2 to 5.90.11. See this package in npm: @tanstack/react-query See this project in Snyk: https://app.snyk.io/org/dargon789/project/bb845543-cbee-4e11-8cf9-8bfdf9205bf1?utm_source=github&utm_medium=referral&page=upgrade-pr * Update wagmi-project/package.json Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> --------- Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> Co-authored-by: snyk-bot Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> * feat: upgrade vite from 5.4.21 to 7.2.4 (#124) Snyk has created this PR to upgrade vite from 5.4.21 to 7.2.4. See this package in npm: vite See this project in Snyk: https://app.snyk.io/org/dargon789/project/bb845543-cbee-4e11-8cf9-8bfdf9205bf1?utm_source=github&utm_medium=referral&page=upgrade-pr Co-authored-by: snyk-bot * feat: upgrade wagmi from 0.12.19 to 3.0.2 (#123) Snyk has created this PR to upgrade wagmi from 0.12.19 to 3.0.2. See this package in npm: wagmi See this project in Snyk: https://app.snyk.io/org/dargon789/project/bb845543-cbee-4e11-8cf9-8bfdf9205bf1?utm_source=github&utm_medium=referral&page=upgrade-pr Co-authored-by: snyk-bot * feat: upgrade react-dom from 18.3.1 to 19.2.0 (#122) Snyk has created this PR to upgrade react-dom from 18.3.1 to 19.2.0. See this package in npm: react-dom See this project in Snyk: https://app.snyk.io/org/dargon789/project/bb845543-cbee-4e11-8cf9-8bfdf9205bf1?utm_source=github&utm_medium=referral&page=upgrade-pr Co-authored-by: snyk-bot * fix: extras/docs/package.json to reduce vulnerabilities (#136) The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JS-NEXT-14173355 Co-authored-by: snyk-io[bot] <141718529+snyk-io[bot]@users.noreply.github.com> * [Snyk] Upgrade @types/react from 18.3.27 to 19.2.7 (#127) * feat: upgrade @types/react from 18.3.27 to 19.2.7 Snyk has created this PR to upgrade @types/react from 18.3.27 to 19.2.7. See this package in npm: @types/react See this project in Snyk: https://app.snyk.io/org/dargon789/project/bb845543-cbee-4e11-8cf9-8bfdf9205bf1?utm_source=github&utm_medium=referral&page=upgrade-pr * Update wagmi-project/package.json Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> --------- Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> Co-authored-by: snyk-bot Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> * Master ceb95d4 (#129) * Update issue templates (#128) * Bump the npm_and_yarn group across 1 directory with 1 update Bumps the npm_and_yarn group with 1 update in the / directory: [express](https://github.com/expressjs/express). Updates `express` from 4.18.2 to 4.19.2 - [Release notes](https://github.com/expressjs/express/releases) - [Changelog](https://github.com/expressjs/express/blob/master/History.md) - [Commits](https://github.com/expressjs/express/compare/4.18.2...4.19.2) --- updated-dependencies: - dependency-name: express dependency-type: direct:development dependency-group: npm_and_yarn-security-group ... Signed-off-by: dependabot[bot] * Create SECURITY.md * Set up CI with Azure Pipelines [skip ci] * Create CNAME * Create fortify.yml * Update issue templates * Update CNAME * fix: upgrade @tanstack/react-query from 5.45.1 to 5.64.2 Snyk has created this PR to upgrade @tanstack/react-query from 5.45.1 to 5.64.2. See this package in npm: @tanstack/react-query See this project in Snyk: https://app.snyk.io/org/dargon789/project/bb845543-cbee-4e11-8cf9-8bfdf9205bf1?utm_source=github&utm_medium=referral&page=upgrade-pr * Create config.yml (#46) Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> * Support multiple identity signers in sessions configuration * Device signers can approve implicit sessions * Remove invalid test * Fix recursion * Fix comment * Improve test stability by reducing race conditions * Do not set passkey signer as identity signer * Use length checks * Throw on missing identity signer * Encoding requires identity signer to encode * Fix test * Refactor/types namings tsdoc redundant code (#880) * refactor types, namings, ts doc * fix session response payload * change parameter name * change parameter name * change type in tests * improve types and dapp client methods * fix session test to use new types * refactor * refactor implicit sessions array in chain session manager * remove unused types * remove unused types and add ConnectionError * update pnpm lock * move reusable session types to wallet-core * Update some imports and update some response type names --------- Co-authored-by: Tolgahan Arikan * Fix check for explicit session for the updated type in dapp-client * Update api.gen.ts and relayer.gen.ts * Add missing chainId for dapp client event * Fix initializing new chain session manager on redirect * Add support for non-viem, custom Sequence chains (#882) * Provider sent to prepareBlankEnvelope * Update fortify.yml Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> * Add session signature decoding * Add feeTokens endpoint to relayer (#885) * const for node length * Clearer blacklist size encoding * identity signer node length * add getFeeTokens to dapp client (#889) * add getFeeTokens to dapp client * fix typo * make getFeeTokens independent of chain session manager and initialize state (#890) * make getFeeTokens independent of chain session manager and initialized state * remove getFeeTokens from chain session manager * Throw specific error when trying to sign with an expired session (#887) * Throw when supported session signer is expired * Fix tests * Make dapp-client implicit sessions chain agnostic (#893) * Add Monad, remove LAOS and Root Network * Add support for sessionless dapp connection (#896) * Refactor relayer package & update dependant packages (#891) * refactor exports for relayer (#900) * Add Arc Testnet * Fix changelog config * Sessionless connection upgrade and error handling in DappClient (#902) * dapp-client: add sessionless snapshot restore flow * Bump the npm_and_yarn group across 3 directories with 1 update Bumps the npm_and_yarn group with 1 update in the / directory: [happy-dom](https://github.com/capricorn86/happy-dom). Bumps the npm_and_yarn group with 1 update in the /packages/wallet/dapp-client directory: [happy-dom](https://github.com/capricorn86/happy-dom). Bumps the npm_and_yarn group with 1 update in the /packages/wallet/wdk directory: [happy-dom](https://github.com/capricorn86/happy-dom). Updates `happy-dom` from 17.6.3 to 20.0.2 - [Release notes](https://github.com/capricorn86/happy-dom/releases) - [Commits](https://github.com/capricorn86/happy-dom/compare/v17.6.3...v20.0.2) Updates `happy-dom` from 17.6.3 to 20.0.2 - [Release notes](https://github.com/capricorn86/happy-dom/releases) - [Commits](https://github.com/capricorn86/happy-dom/compare/v17.6.3...v20.0.2) Updates `happy-dom` from 17.6.3 to 20.0.2 - [Release notes](https://github.com/capricorn86/happy-dom/releases) - [Commits](https://github.com/capricorn86/happy-dom/compare/v17.6.3...v20.0.2) --- updated-dependencies: - dependency-name: happy-dom dependency-version: 20.0.2 dependency-type: direct:development dependency-group: npm_and_yarn - dependency-name: happy-dom dependency-version: 20.0.2 dependency-type: direct:development dependency-group: npm_and_yarn - dependency-name: happy-dom dependency-version: 20.0.2 dependency-type: direct:development dependency-group: npm_and_yarn ... Signed-off-by: dependabot[bot] * Allow to logout a wallet with skipRemoveDevice even if the wallet is not in a ready state to allow force removing of wallets (#906) * Pass request to PromptCodeHandler in guard registerUI (#909) * Pass request to PromptCodeHandler in guard registerUI * Fixing guard registerUI test * guard: allow using recovery code as 2FA token (#910) * guard: allow using recovery code as 2FA token * Cleanup types of ResponseFn --------- Co-authored-by: Corban Riley * Add a way to reset 2fa when using a backup code (#911) * Add a way to reset 2fa when using a backup code * use the GuardToken type instead of breaking out the props * Update package.json Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update SECURITY.md Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update wagmi-project/package.json Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update wagmi-project/package.json Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update wagmi-project/src/App.tsx Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Create FUNDING.json (#90) Enhancements: Include FUNDING.json to display GitHub sponsorship options in the repository Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Create config.yml (#91) Add initial CircleCI configuration to enable automated builds using a custom Docker executor and a defined workflow. Build: Add .circleci/config.yml with version 2.1 specification and custom Docker executor. CI: Define web3-defi-game-project job with checkout step. Set up my-custom-workflow to run the job. Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Add rc4 contracts * Set rc4 as default and add it to lists * Session enhanced replay protection * New sessions replay protection hashes payload * Use the 4337 factory wrapper * Update keymachine url in dapp-client constants * Update keymachine url in Provider constructor * SSR safety (#915) * SSR safety test * Fix CI job * Guard dapp-client for SSR (lazy transport, browser checks, gated storage) * Fix guard topology (#918) * Use proper guard topology * Test and fixes * login and setup tests * Switch prod manager settings (#917) * Add prod guard and identity instrument info * Remove completed TODOs * Small JS tweaks (#919) * Fix type exports to built declarations * Update repository links to current package paths * Improve Next app tooling and React typings * Expose primitives CLI bin and use base lint config * Update relayer.gen.ts and TransactionPrecondition interface * Update api.gen.ts * Update metadata.gen.ts * Update marketplace.gen.ts * Update guard.gen.ts * Support multiple identity signers in sessions configuration * Device signers can approve implicit sessions * Remove invalid test * Fix recursion * Fix comment * Improve test stability by reducing race conditions * Do not set passkey signer as identity signer * Use length checks * Throw on missing identity signer * Encoding requires identity signer to encode * Fix test * Refactor/types namings tsdoc redundant code (#880) * refactor types, namings, ts doc * fix session response payload * change parameter name * change parameter name * change type in tests * improve types and dapp client methods * fix session test to use new types * refactor * refactor implicit sessions array in chain session manager * remove unused types * remove unused types and add ConnectionError * update pnpm lock * move reusable session types to wallet-core * Update some imports and update some response type names --------- Co-authored-by: Tolgahan Arikan * Fix check for explicit session for the updated type in dapp-client * Update api.gen.ts and relayer.gen.ts * Add missing chainId for dapp client event * Fix initializing new chain session manager on redirect * Add support for non-viem, custom Sequence chains (#882) * Provider sent to prepareBlankEnvelope * Add session signature decoding * const for node length * Clearer blacklist size encoding * identity signer node length * Add feeTokens endpoint to relayer (#885) * add getFeeTokens to dapp client (#889) * add getFeeTokens to dapp client * fix typo * make getFeeTokens independent of chain session manager and initialize state (#890) * make getFeeTokens independent of chain session manager and initialized state * remove getFeeTokens from chain session manager * Throw specific error when trying to sign with an expired session (#887) * Throw when supported session signer is expired * Fix tests * Make dapp-client implicit sessions chain agnostic (#893) * Add Monad, remove LAOS and Root Network * Add support for sessionless dapp connection (#896) * Refactor relayer package & update dependant packages (#891) * refactor exports for relayer (#900) * Add Arc Testnet * Fix changelog config * Sessionless connection upgrade and error handling in DappClient (#902) * dapp-client: add sessionless snapshot restore flow * Allow to logout a wallet with skipRemoveDevice even if the wallet is not in a ready state to allow force removing of wallets (#906) * Pass request to PromptCodeHandler in guard registerUI (#909) * Pass request to PromptCodeHandler in guard registerUI * Fixing guard registerUI test * guard: allow using recovery code as 2FA token (#910) * guard: allow using recovery code as 2FA token * Cleanup types of ResponseFn --------- Co-authored-by: Corban Riley * Add a way to reset 2fa when using a backup code (#911) * Add a way to reset 2fa when using a backup code * use the GuardToken type instead of breaking out the props * Add rc4 contracts * Set rc4 as default and add it to lists * Session enhanced replay protection * New sessions replay protection hashes payload * Use the 4337 factory wrapper * Update keymachine url in dapp-client constants * Update keymachine url in Provider constructor * SSR safety (#915) * Guard dapp-client for SSR (lazy transport, browser checks, gated storage) * Fix guard topology (#918) * Use proper guard topology * Test and fixes * login and setup tests * Switch prod manager settings (#917) * Add prod guard and identity instrument info * Remove completed TODOs * Small JS tweaks (#919) * Fix type exports to built declarations * Update repository links to current package paths * Improve Next app tooling and React typings * Expose primitives CLI bin and use base lint config * Update relayer.gen.ts and TransactionPrecondition interface * Update relayer.gen.ts and TransactionPrecondition interface (#920) * 3.0.0-beta.1 * identity-instrument: generate nonce from current time (#921) * Remove publish-dists.yml github action (#923) * 3.0.0-beta.2 * Clean up changeset config * Improve test stability by removing race conditions * Ensure build before test * Updating happy-dom to 20.0.10 (#926) * Add support for custom auth providers (authcode & authcode-pkce only) (#894) * Add support for custom auth providers (authcode & authcode-pkce only) * fix authcode tests * Updating Deps November 2025 (#927) * Updating deps for the workspace root * Updating deps for wallet/wdk * Fixing sessions test for latest vitest * Lets not upgrade to the latest typescript quite yet * Updating to latest vitest * Updating deps for wallet/core * Updating deps for wallet/primitives-cli * Updating deps for wallet/dapp-client * Adding syncpack to check for dep version inconsistencies * Setup syncpack versionGroups for pnpm workspace:^ * Fixing dep versions mismatches * Fixing @types/node mismatches * Adding syncpack to pre commit hook * Remove the syncpack format script. * Update ox to v9.17.0 (#928) * Upgrading ox to 9.17.0 * WrappedSignature renamed to SignatureErc6492 * Fixing PasskeySignatureValidator interface * Lock ox lib dep to use the same version with pnpm overrides and update viem to latest * Fix explicitSessionRequested check in dapp client * Typescript 5.9.3 (#930) * Upgrading to typescript v5.9.3 * Fix type errors that arose from typescript upgrade related to Bytes and Buffer source typings. * Don't catch errors thrown by Guard 2FA or reject early to allow multiple attempts on incorrect TOTP (#931) * Update pnpm * Mark @0xsequence/wallet-primitives-cli as private * 3.0.0-beta.3 * changeset cleanup * Fix rc4 4337 factory (#933) * Add rc5 and set it as default (#934) * 3.0.0-beta.4 * Update SECURITY.md Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update wagmi-project/package.json Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update wagmi-project/package.json Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Bump next from 15.5.5 to 15.5.7 (#936) Bumps [next](https://github.com/vercel/next.js) from 15.5.5 to 15.5.7. - [Release notes](https://github.com/vercel/next.js/releases) - [Changelog](https://github.com/vercel/next.js/blob/canary/release.js) - [Commits](https://github.com/vercel/next.js/compare/v15.5.5...v15.5.7) --- updated-dependencies: - dependency-name: next dependency-version: 15.5.7 dependency-type: direct:production ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * add userdata service client (#940) * Skip LocalDevice identity signers not on current device (#942) * Skip LocalDevice identity signers not on current device * Update log * 3.0.0-beta.5 * Update config.yml (#102) * Update config.yml Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update .circleci/config.yml Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> --------- Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com> * Update config.yml (#103) * Update config.yml Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update .circleci/config.yml Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> --------- Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com> * fix: extras/web/package.json to reduce vulnerabilities (#101) The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JS-NEXT-14173355 Co-authored-by: snyk-io[bot] <141718529+snyk-io[bot]@users.noreply.github.com> * fix: extras/docs/package.json to reduce vulnerabilities (#100) The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JS-NEXT-14173355 Co-authored-by: snyk-io[bot] <141718529+snyk-io[bot]@users.noreply.github.com> * fix: package.json to reduce vulnerabilities (#104) The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JS-BABELHELPERS-9397697 - https://snyk.io/vuln/SNYK-JS-BABELRUNTIME-10044504 - https://snyk.io/vuln/SNYK-JS-BRACEEXPANSION-9789073 - https://snyk.io/vuln/SNYK-JS-CROSSSPAWN-8303230 - https://snyk.io/vuln/SNYK-JS-ELLIPTIC-7577916 - https://snyk.io/vuln/SNYK-JS-ELLIPTIC-7577917 - https://snyk.io/vuln/SNYK-JS-ELLIPTIC-7577918 - https://snyk.io/vuln/SNYK-JS-ELLIPTIC-8187303 - https://snyk.io/vuln/SNYK-JS-ELLIPTIC-8720086 - https://snyk.io/vuln/SNYK-JS-IMAGESIZE-9634164 - https://snyk.io/vuln/SNYK-JS-INFLIGHT-6095116 - https://snyk.io/vuln/SNYK-JS-JSYAML-13961110 - https://snyk.io/vuln/SNYK-JS-MICROMATCH-6838728 - https://snyk.io/vuln/SNYK-JS-NODEFORGE-14114940 - https://snyk.io/vuln/SNYK-JS-NODEFORGE-14125097 - https://snyk.io/vuln/SNYK-JS-NODEFORGE-14125745 - https://snyk.io/vuln/SNYK-JS-ONHEADERS-10773729 - https://snyk.io/vuln/SNYK-JS-ROLLUP-8073097 - https://snyk.io/vuln/SNYK-JS-SECP256K1-8237220 - https://snyk.io/vuln/SNYK-JS-SEND-7926862 - https://snyk.io/vuln/SNYK-JS-SERVESTATIC-7926865 - https://snyk.io/vuln/SNYK-JS-SHAJS-12089400 Co-authored-by: snyk-io[bot] <141718529+snyk-io[bot]@users.noreply.github.com> * Revert "Merge remote-tracking branch 'origin/dependabot/npm_and_yarn/npm_and_yarn-318c02e2da'" This reverts commit fd0fdf9ecc6ad9056447e381de7fc5bb19f78e47, reversing changes made to cba78943db9942a4635bb530b7a43fc5d18b0ab4. * fix: extras/web/package.json to reduce vulnerabilities (#109) The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JS-NEXT-14173355 Co-authored-by: snyk-bot * fix: extras/docs/package.json to reduce vulnerabilities (#106) The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JS-NEXT-14400636 - https://snyk.io/vuln/SNYK-JS-NEXT-14400644 Co-authored-by: snyk-bot * Bump next in the npm_and_yarn group across 1 directory (#110) Bumps the npm_and_yarn group with 1 update in the / directory: [next](https://github.com/vercel/next.js). Updates `next` from 15.5.7 to 15.5.9 - [Release notes](https://github.com/vercel/next.js/releases) - [Changelog](https://github.com/vercel/next.js/blob/canary/release.js) - [Commits](https://github.com/vercel/next.js/compare/v15.5.7...v15.5.9) --- updated-dependencies: - dependency-name: next dependency-version: 15.5.9 dependency-type: direct:production dependency-group: npm_and_yarn ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Delete .github/workflows/fortify.yml (#111) Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * fix: extras/web/package.json to reduce vulnerabilities (#107) The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JS-NEXT-14400636 - https://snyk.io/vuln/SNYK-JS-NEXT-14400644 Co-authored-by: snyk-bot * Bump the npm_and_yarn group across 1 directory with 3 updates (#115) Bumps the npm_and_yarn group with 1 update in the / directory: [next](https://github.com/vercel/next.js). Updates `next` from 15.5.5 to 15.5.9 - [Release notes](https://github.com/vercel/next.js/releases) - [Changelog](https://github.com/vercel/next.js/blob/canary/release.js) - [Commits](https://github.com/vercel/next.js/compare/v15.5.5...v15.5.9) Updates `happy-dom` from 17.6.3 to 20.0.11 - [Release notes](https://github.com/capricorn86/happy-dom/releases) - [Commits](https://github.com/capricorn86/happy-dom/compare/v17.6.3...v20.0.11) Updates `vite` from 7.1.10 to 7.2.7 - [Release notes](https://github.com/vitejs/vite/releases) - [Changelog](https://github.com/vitejs/vite/blob/v7.2.7/packages/vite/CHANGELOG.md) - [Commits](https://github.com/vitejs/vite/commits/v7.2.7/packages/vite) --- updated-dependencies: - dependency-name: next dependency-version: 15.5.9 dependency-type: direct:production dependency-group: npm_and_yarn - dependency-name: happy-dom dependency-version: 20.0.11 dependency-type: direct:development dependency-group: npm_and_yarn - dependency-name: vite dependency-version: 7.2.7 dependency-type: indirect dependency-group: npm_and_yarn ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Bump next from 15.5.7 to 15.5.9 (#944) Bumps [next](https://github.com/vercel/next.js) from 15.5.7 to 15.5.9. - [Release notes](https://github.com/vercel/next.js/releases) - [Changelog](https://github.com/vercel/next.js/blob/canary/release.js) - [Commits](https://github.com/vercel/next.js/compare/v15.5.7...v15.5.9) --- updated-dependencies: - dependency-name: next dependency-version: 15.5.9 dependency-type: direct:production ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Pin foundry to v1.5.0 instead of nightly (#947) * Include repo and extras in syncpack config to ensure deps are synced (#945) * Include repo and extras in syncpack config to ensure deps are synced across all * Updating support deps * Updating deps * Updating pnpm lock * Fixing type errors within wdk tests * Short circuit 404s (#949) * skip witness on signers that don't support it * add passkey to test * 3.0.0-beta.6 * Update tests.yml (#119) Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update config.yml (#120) Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update packages/services/identity-instrument/src/index.ts Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> --------- Signed-off-by: dependabot[bot] Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: snyk-bot Co-authored-by: Michael Standen Co-authored-by: Gabi <56271768+VGabriel45@users.noreply.github.com> Co-authored-by: Tolgahan Arikan Co-authored-by: Taylan Pince Co-authored-by: Corban Brook Co-authored-by: Patryk Kalinowski Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Co-authored-by: Agusx1211 Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com> Co-authored-by: snyk-io[bot] <141718529+snyk-io[bot]@users.noreply.github.com> * Update wagmi-project/src/main.tsx Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update wagmi-project/package.json Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update wagmi-project/package.json Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * fix: extras/docs/package.json to reduce vulnerabilities (#116) The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JS-NEXT-14400636 - https://snyk.io/vuln/SNYK-JS-NEXT-14400644 Co-authored-by: snyk-io[bot] <141718529+snyk-io[bot]@users.noreply.github.com> Co-authored-by: dargon789 <64915515+Dargon789@users.noreply.github.com> --------- Signed-off-by: dependabot[bot] Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: snyk-bot Co-authored-by: Michael Standen Co-authored-by: Gabi <56271768+VGabriel45@users.noreply.github.com> Co-authored-by: Tolgahan Arikan Co-authored-by: Taylan Pince Co-authored-by: Corban Brook Co-authored-by: Patryk Kalinowski Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Co-authored-by: Agusx1211 Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com> Co-authored-by: snyk-io[bot] <141718529+snyk-io[bot]@users.noreply.github.com> * Update wagmi-project/src/App.tsx Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update wagmi-project/src/App.tsx Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update wagmi-project/src/App.tsx Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update wagmi-project/src/App.tsx Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * 2.3.7 (#131) (#132) * 2.3.7 (#131) * fix broken guard private key * Expose access to passkey credential list * Dapp client direct txn request (#856) * Signature request refactor * WIP * Refactor * Update dapp-client exports (#858) * Add hasPermission method to DappClient (#859) * Save discovered passkey credentials upon login * Expose name property in PasskeySignupArgs * Fix blacklist sort * Add multi server script * relayer: /SimulateV3 (#857) * Add await for handleOpenDB scheduleExpiration * Update increment to always include native once used * Fix session tests * Adding lastLoginAt to PasskeyCredential * LoginToPasskeyArgs now accept a credentialId which is used to specify which credential to use * Adding onSignatureRequestStatus function to register single use callbacks for when a request reaches a terminal state of completed or cancelled * When a login is cancelled we can remove the wallet which is logging-in * Add RC3 contracts * Sessions space restriction * Dedupe signers for encoding * Support RC3 sessions * Tightly increment call validation * CLI defaults to RC3 wallet code * Rc3 address test * Fix hashing tests * Add deprecated encoding test * wdk: throw errors from otp respond callback (#864) * wdk: throw errors from otp respond callback * wdk: otp auth error and handler refactor * Handle guard 2FA (#861) * guard: return a specific error when auth required * core: pass guard token to the service * wdk: handle prompting for guard 2FA code * dapp-client: handle prompting for guard 2FA code * guard 2fa tests * wdk: separate wallet and sessions guards * dapp-client: remove guard 2fa * dapp-client: fix imports * fix guard tests * wdk: remove unneeded promise resolve * Update relayer and api gen.ts, force public packages * Add standalone fetch queued payloads * Replacing GuardRole enum with string union type, as well as replacing guardAddresses Map with Record * Fallback to chain for non-logged in recovery * Add Katana, Sandbox Tesnet, Incentiv Testnet v2 (#873) * Update a few remaining dev1 contract addresses to rc3 (#874) * Remove unnecessary console.error where we already throw error * Improve DappClient hasPermission method * Wallet db try checksum and lowercase * Update dapp client json utils to include Map reviver and replacer * Bump next in the npm_and_yarn group across 1 directory Bumps the npm_and_yarn group with 1 update in the / directory: [next](https://github.com/vercel/next.js). Updates `next` from 15.4.2 to 15.4.7 - [Release notes](https://github.com/vercel/next.js/releases) - [Changelog](https://github.com/vercel/next.js/blob/canary/release.js) - [Commits](https://github.com/vercel/next.js/compare/v15.4.2...v15.4.7) --- updated-dependencies: - dependency-name: next dependency-version: 15.4.7 dependency-type: direct:production dependency-group: npm_and_yarn ... Signed-off-by: dependabot[bot] * Update type name, update exports for dapp client * Expired explicit sessions can't sign * Improve session validity test * session isValid returns invalid reason * InvalidReason is typed * Support multiple identity signers in sessions configuration * Device signers can approve implicit sessions * Remove invalid test * Fix recursion * Fix comment * Improve test stability by reducing race conditions * Do not set passkey signer as identity signer * Use length checks * Throw on missing identity signer * Encoding requires identity signer to encode * Fix test * Refactor/types namings tsdoc redundant code (#880) * refactor types, namings, ts doc * fix session response payload * change parameter name * change parameter name * change type in tests * improve types and dapp client methods * fix session test to use new types * refactor * refactor implicit sessions array in chain session manager * remove unused types * remove unused types and add ConnectionError * update pnpm lock * move reusable session types to wallet-core * Update some imports and update some response type names --------- Co-authored-by: Tolgahan Arikan * Fix check for explicit session for the updated type in dapp-client * Update api.gen.ts and relayer.gen.ts * Add missing chainId for dapp client event * Fix initializing new chain session manager on redirect * Add support for non-viem, custom Sequence chains (#882) * Update issue templates * Provider sent to prepareBlankEnvelope * Add session signature decoding * Add feeTokens endpoint to relayer (#885) * const for node length * Clearer blacklist size encoding * identity signer node length * Potential fix for code scanning alert no. 84: Insecure randomness Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> * add getFeeTokens to dapp client (#889) * add getFeeTokens to dapp client * fix typo * make getFeeTokens independent of chain session manager and initialize state (#890) * make getFeeTokens independent of chain session manager and initialized state * remove getFeeTokens from chain session manager * Throw specific error when trying to sign with an expired session (#887) * Throw when supported session signer is expired * Fix tests * Make dapp-client implicit sessions chain agnostic (#893) * Add Monad, remove LAOS and Root Network * Bump the npm_and_yarn group across 3 directories with 1 update Bumps the npm_and_yarn group with 1 update in the / directory: [happy-dom](https://github.com/capricorn86/happy-dom). Bumps the npm_and_yarn group with 1 update in the /packages/wallet/dapp-client directory: [happy-dom](https://github.com/capricorn86/happy-dom). Bumps the npm_and_yarn group with 1 update in the /packages/wallet/wdk directory: [happy-dom](https://github.com/capricorn86/happy-dom). Updates `happy-dom` from 17.6.3 to 20.0.0 - [Release notes](https://github.com/capricorn86/happy-dom/releases) - [Commits](https://github.com/capricorn86/happy-dom/compare/v17.6.3...v20.0.0) Updates `happy-dom` from 17.6.3 to 20.0.0 - [Release notes](https://github.com/capricorn86/happy-dom/releases) - [Commits](https://github.com/capricorn86/happy-dom/compare/v17.6.3...v20.0.0) Updates `happy-dom` from 17.6.3 to 20.0.0 - [Release notes](https://github.com/capricorn86/happy-dom/releases) - [Commits](https://github.com/capricorn86/happy-dom/compare/v17.6.3...v20.0.0) --- updated-dependencies: - dependency-name: happy-dom dependency-version: 20.0.0 dependency-type: direct:development dependency-group: npm_and_yarn - dependency-name: happy-dom dependency-version: 20.0.0 dependency-type: direct:development dependency-group: npm_and_yarn - dependency-name: happy-dom dependency-version: 20.0.0 dependency-type: direct:development dependency-group: npm_and_yarn ... Signed-off-by: dependabot[bot] * Bump happy-dom in the npm_and_yarn group across 1 directory (#69) Bumps the npm_and_yarn group with 1 update in the / directory: [happy-dom](https://github.com/capricorn86/happy-dom). Updates `happy-dom` from 20.0.0 to 20.0.2 - [Release notes](https://github.com/capricorn86/happy-dom/releases) - [Commits](https://github.com/capricorn86/happy-dom/compare/v20.0.0...v20.0.2) --- updated-dependencies: - dependency-name: happy-dom dependency-version: 20.0.2 dependency-type: direct:development dependency-group: npm_and_yarn ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Create SECURITY.md for security policy (#70) * Create SECURITY.md for security policy Add a security policy document outlining supported versions and vulnerability reporting. Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> * Update SECURITY.md Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> * Update SECURITY.md Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> --------- Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> * Update SECURITY.md Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> * Add support for sessionless dapp connection (#896) * Refactor relayer package & update dependant packages (#891) * refactor exports for relayer (#900) * Add Arc Testnet * Fix changelog config * Sessionless connection upgrade and error handling in DappClient (#902) * dapp-client: add sessionless snapshot restore flow * Bump the npm_and_yarn group across 3 directories with 1 update Bumps the npm_and_yarn group with 1 update in the / directory: [happy-dom](https://github.com/capricorn86/happy-dom). Bumps the npm_and_yarn group with 1 update in the /packages/wallet/dapp-client directory: [happy-dom](https://github.com/capricorn86/happy-dom). Bumps the npm_and_yarn group with 1 update in the /packages/wallet/wdk directory: [happy-dom](https://github.com/capricorn86/happy-dom). Updates `happy-dom` from 17.6.3 to 20.0.2 - [Release notes](https://github.com/capricorn86/happy-dom/releases) - [Commits](https://github.com/capricorn86/happy-dom/compare/v17.6.3...v20.0.2) Updates `happy-dom` from 17.6.3 to 20.0.2 - [Release notes](https://github.com/capricorn86/happy-dom/releases) - [Commits](https://github.com/capricorn86/happy-dom/compare/v17.6.3...v20.0.2) Updates `happy-dom` from 17.6.3 to 20.0.2 - [Release notes](https://github.com/capricorn86/happy-dom/releases) - [Commits](https://github.com/capricorn86/happy-dom/compare/v17.6.3...v20.0.2) --- updated-dependencies: - dependency-name: happy-dom dependency-version: 20.0.2 dependency-type: direct:development dependency-group: npm_and_yarn - dependency-name: happy-dom dependency-version: 20.0.2 dependency-type: direct:development dependency-group: npm_and_yarn - dependency-name: happy-dom dependency-version: 20.0.2 dependency-type: direct:development dependency-group: npm_and_yarn ... Signed-off-by: dependabot[bot] * Allow to logout a wallet with skipRemoveDevice even if the wallet is not in a ready state to allow force removing of wallets (#906) * Pass request to PromptCodeHandler in guard registerUI (#909) * Pass request to PromptCodeHandler in guard registerUI * Fixing guard registerUI test * guard: allow using recovery code as 2FA token (#910) * guard: allow using recovery code as 2FA token * Cleanup types of ResponseFn --------- Co-authored-by: Corban Riley * Add a way to reset 2fa when using a backup code (#911) * Add a way to reset 2fa when using a backup code * use the GuardToken type instead of breaking out the props * Update SECURITY.md Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update packages/wallet/dapp-client/src/DappTransport.ts Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update package.json Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update SECURITY.md Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update wagmi-project/package.json Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update wagmi-project/package.json Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update wagmi-project/src/App.tsx Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Create FUNDING.json (#90) Enhancements: Include FUNDING.json to display GitHub sponsorship options in the repository Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Create config.yml (#91) Add initial CircleCI configuration to enable automated builds using a custom Docker executor and a defined workflow. Build: Add .circleci/config.yml with version 2.1 specification and custom Docker executor. CI: Define web3-defi-game-project job with checkout step. Set up my-custom-workflow to run the job. Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Add rc4 contracts * Set rc4 as default and add it to lists * Session enhanced replay protection * New sessions replay protection hashes payload * Use the 4337 factory wrapper * Update keymachine url in dapp-client constants * Update keymachine url in Provider constructor * SSR safety (#915) * SSR safety test * Fix CI job * Guard dapp-client for SSR (lazy transport, browser checks, gated storage) * Fix guard topology (#918) * Use proper guard topology * Test and fixes * login and setup tests * Switch prod manager settings (#917) * Add prod guard and identity instrument info * Remove completed TODOs * Small JS tweaks (#919) * Fix type exports to built declarations * Update repository links to current package paths * Improve Next app tooling and React typings * Expose primitives CLI bin and use base lint config * Update relayer.gen.ts and TransactionPrecondition interface * Update api.gen.ts * Update metadata.gen.ts * Update marketplace.gen.ts * Update guard.gen.ts * Support multiple identity signers in sessions configuration * Device signers can approve implicit sessions * Remove invalid test * Fix recursion * Fix comment * Improve test stability by reducing race conditions * Do not set passkey signer as identity signer * Use length checks * Throw on missing identity signer * Encoding requires identity signer to encode * Fix test * Refactor/types namings tsdoc redundant code (#880) * refactor types, namings, ts doc * fix session response payload * change parameter name * change parameter name * change type in tests * improve types and dapp client methods * fix session test to use new types * refactor * refactor implicit sessions array in chain session manager * remove unused types * remove unused types and add ConnectionError * update pnpm lock * move reusable session types to wallet-core * Update some imports and update some response type names --------- Co-authored-by: Tolgahan Arikan * Fix check for explicit session for the updated type in dapp-client * Update api.gen.ts and relayer.gen.ts * Add missing chainId for dapp client event * Fix initializing new chain session manager on redirect * Add support for non-viem, custom Sequence chains (#882) * Provider sent to prepareBlankEnvelope * Add session signature decoding * const for node length * Clearer blacklist size encoding * identity signer node length * Add feeTokens endpoint to relayer (#885) * add getFeeTokens to dapp client (#889) * add getFeeTokens to dapp client * fix typo * make getFeeTokens independent of chain session manager and initialize state (#890) * make getFeeTokens independent of chain session manager and initialized state * remove getFeeTokens from chain session manager * Throw specific error when trying to sign with an expired session (#887) * Throw when supported session signer is expired * Fix tests * Make dapp-client implicit sessions chain agnostic (#893) * Add Monad, remove LAOS and Root Network * Add support for sessionless dapp connection (#896) * Refactor relayer package & update dependant packages (#891) * refactor exports for relayer (#900) * Add Arc Testnet * Fix changelog config * Sessionless connection upgrade and error handling in DappClient (#902) * dapp-client: add sessionless snapshot restore flow * Allow to logout a wallet with skipRemoveDevice even if the wallet is not in a ready state to allow force removing of wallets (#906) * Pass request to PromptCodeHandler in guard registerUI (#909) * Pass request to PromptCodeHandler in guard registerUI * Fixing guard registerUI test * guard: allow using recovery code as 2FA token (#910) * guard: allow using recovery code as 2FA token * Cleanup types of ResponseFn --------- Co-authored-by: Corban Riley * Add a way to reset 2fa when using a backup code (#911) * Add a way to reset 2fa when using a backup code * use the GuardToken type instead of breaking out the props * Add rc4 contracts * Set rc4 as default and add it to lists * Session enhanced replay protection * New sessions replay protection hashes payload * Use the 4337 factory wrapper * Update keymachine url in dapp-client constants * Update keymachine url in Provider constructor * SSR safety (#915) * Guard dapp-client for SSR (lazy transport, browser checks, gated storage) * Fix guard topology (#918) * Use proper guard topology * Test and fixes * login and setup tests * Switch prod manager settings (#917) * Add prod guard and identity instrument info * Remove completed TODOs * Small JS tweaks (#919) * Fix type exports to built declarations * Update repository links to current package paths * Improve Next app tooling and React typings * Expose primitives CLI bin and use base lint config * Update relayer.gen.ts and TransactionPrecondition interface * Update relayer.gen.ts and TransactionPrecondition interface (#920) * 3.0.0-beta.1 * identity-instrument: generate nonce from current time (#921) * Remove publish-dists.yml github action (#923) * 3.0.0-beta.2 * Clean up changeset config * Improve test stability by removing race conditions * Ensure build before test * Updating happy-dom to 20.0.10 (#926) * Add support for custom auth providers (authcode & authcode-pkce only) (#894) * Add support for custom auth providers (authcode & authcode-pkce only) * fix authcode tests * Updating Deps November 2025 (#927) * Updating deps for the workspace root * Updating deps for wallet/wdk * Fixing sessions test for latest vitest * Lets not upgrade to the latest typescript quite yet * Updating to latest vitest * Updating deps for wallet/core * Updating deps for wallet/primitives-cli * Updating deps for wallet/dapp-client * Adding syncpack to check for dep version inconsistencies * Setup syncpack versionGroups for pnpm workspace:^ * Fixing dep versions mismatches * Fixing @types/node mismatches * Adding syncpack to pre commit hook * Remove the syncpack format script. * Update ox to v9.17.0 (#928) * Upgrading ox to 9.17.0 * WrappedSignature renamed to SignatureErc6492 * Fixing PasskeySignatureValidator interface * Lock ox lib dep to use the same version with pnpm overrides and update viem to latest * Fix explicitSessionRequested check in dapp client * Typescript 5.9.3 (#930) * Upgrading to typescript v5.9.3 * Fix type errors that arose from typescript upgrade related to Bytes and Buffer source typings. * Don't catch errors thrown by Guard 2FA or reject early to allow multiple attempts on incorrect TOTP (#931) * Update pnpm * Mark @0xsequence/wallet-primitives-cli as private * 3.0.0-beta.3 * changeset cleanu… * Vercel/react server components CVE vu qan1bu (#256) * Fix comment * Improve test stability by reducing race conditions * Do not set passkey signer as identity signer * Use length checks * Throw on missing identity signer * Encoding requires identity signer to encode * Fix test * Refactor/types namings tsdoc redundant code (#880) * refactor types, namings, ts doc * fix session response payload * change parameter name * change parameter name * change type in tests * improve types and dapp client methods * fix session test to use new types * refactor * refactor implicit sessions array in chain session manager * remove unused types * remove unused types and add ConnectionError * update pnpm lock * move reusable session types to wallet-core * Update some imports and update some response type names --------- Co-authored-by: Tolgahan Arikan * Fix check for explicit session for the updated type in dapp-client * Update api.gen.ts and relayer.gen.ts * Add missing chainId for dapp client event * Fix initializing new chain session manager on redirect * Add support for non-viem, custom Sequence chains (#882) * Provider sent to prepareBlankEnvelope * Update fortify.yml Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> * Add session signature decoding * Add feeTokens endpoint to relayer (#885) * const for node length * Clearer blacklist size encoding * identity signer node length * Potential fix for code scanning alert no. 84: Insecure randomness Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> * add getFeeTokens to dapp client (#889) * add getFeeTokens to dapp client * fix typo * make getFeeTokens independent of chain session manager and initialize state (#890) * make getFeeTokens independent of chain session manager and initialized state * remove getFeeTokens from chain session manager * Throw specific error when trying to sign with an expired session (#887) * Throw when supported session signer is expired * Fix tests * Make dapp-client implicit sessions chain agnostic (#893) * Add Monad, remove LAOS and Root Network * Bump the npm_and_yarn group across 3 directories with 1 update Bumps the npm_and_yarn group with 1 update in the / directory: [happy-dom](https://github.com/capricorn86/happy-dom). Bumps the npm_and_yarn group with 1 update in the /packages/wallet/dapp-client directory: [happy-dom](https://github.com/capricorn86/happy-dom). Bumps the npm_and_yarn group with 1 update in the /packages/wallet/wdk directory: [happy-dom](https://github.com/capricorn86/happy-dom). Updates `happy-dom` from 17.6.3 to 20.0.0 - [Release notes](https://github.com/capricorn86/happy-dom/releases) - [Commits](https://github.com/capricorn86/happy-dom/compare/v17.6.3...v20.0.0) Updates `happy-dom` from 17.6.3 to 20.0.0 - [Release notes](https://github.com/capricorn86/happy-dom/releases) - [Commits](https://github.com/capricorn86/happy-dom/compare/v17.6.3...v20.0.0) Updates `happy-dom` from 17.6.3 to 20.0.0 - [Release notes](https://github.com/capricorn86/happy-dom/releases) - [Commits](https://github.com/capricorn86/happy-dom/compare/v17.6.3...v20.0.0) --- updated-dependencies: - dependency-name: happy-dom dependency-version: 20.0.0 dependency-type: direct:development dependency-group: npm_and_yarn - dependency-name: happy-dom dependency-version: 20.0.0 dependency-type: direct:development dependency-group: npm_and_yarn - dependency-name: happy-dom dependency-version: 20.0.0 dependency-type: direct:development dependency-group: npm_and_yarn ... Signed-off-by: dependabot[bot] * Bump happy-dom in the npm_and_yarn group across 1 directory (#69) Bumps the npm_and_yarn group with 1 update in the / directory: [happy-dom](https://github.com/capricorn86/happy-dom). Updates `happy-dom` from 20.0.0 to 20.0.2 - [Release notes](https://github.com/capricorn86/happy-dom/releases) - [Commits](https://github.com/capricorn86/happy-dom/compare/v20.0.0...v20.0.2) --- updated-dependencies: - dependency-name: happy-dom dependency-version: 20.0.2 dependency-type: direct:development dependency-group: npm_and_yarn ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Create SECURITY.md for security policy (#70) * Create SECURITY.md for security policy Add a security policy document outlining supported versions and vulnerability reporting. Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> * Update SECURITY.md Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> * Update SECURITY.md Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> --------- Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> * Update SECURITY.md Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> * Add support for sessionless dapp connection (#896) * Refactor relayer package & update dependant packages (#891) * refactor exports for relayer (#900) * Add Arc Testnet * Fix changelog config * Sessionless connection upgrade and error handling in DappClient (#902) * dapp-client: add sessionless snapshot restore flow * 0xsequence/master (#79) * Create fortify.yml * Update issue templates * Update CNAME * fix: upgrade @tanstack/react-query from 5.45.1 to 5.64.2 Snyk has created this PR to upgrade @tanstack/react-query from 5.45.1 to 5.64.2. See this package in npm: @tanstack/react-query See this project in Snyk: https://app.snyk.io/org/dargon789/project/bb845543-cbee-4e11-8cf9-8bfdf9205bf1?utm_source=github&utm_medium=referral&page=upgrade-pr * Create config.yml (#46) Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> * Update fortify.yml Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> * Update .github/ISSUE_TEMPLATE/bug_report.md Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update .github/ISSUE_TEMPLATE/feature_request.md Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> --------- Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> Co-authored-by: snyk-bot Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> * Bump the npm_and_yarn group across 3 directories with 1 update Bumps the npm_and_yarn group with 1 update in the / directory: [happy-dom](https://github.com/capricorn86/happy-dom). Bumps the npm_and_yarn group with 1 update in the /packages/wallet/dapp-client directory: [happy-dom](https://github.com/capricorn86/happy-dom). Bumps the npm_and_yarn group with 1 update in the /packages/wallet/wdk directory: [happy-dom](https://github.com/capricorn86/happy-dom). Updates `happy-dom` from 17.6.3 to 20.0.2 - [Release notes](https://github.com/capricorn86/happy-dom/releases) - [Commits](https://github.com/capricorn86/happy-dom/compare/v17.6.3...v20.0.2) Updates `happy-dom` from 17.6.3 to 20.0.2 - [Release notes](https://github.com/capricorn86/happy-dom/releases) - [Commits](https://github.com/capricorn86/happy-dom/compare/v17.6.3...v20.0.2) Updates `happy-dom` from 17.6.3 to 20.0.2 - [Release notes](https://github.com/capricorn86/happy-dom/releases) - [Commits](https://github.com/capricorn86/happy-dom/compare/v17.6.3...v20.0.2) --- updated-dependencies: - dependency-name: happy-dom dependency-version: 20.0.2 dependency-type: direct:development dependency-group: npm_and_yarn - dependency-name: happy-dom dependency-version: 20.0.2 dependency-type: direct:development dependency-group: npm_and_yarn - dependency-name: happy-dom dependency-version: 20.0.2 dependency-type: direct:development dependency-group: npm_and_yarn ... Signed-off-by: dependabot[bot] * Allow to logout a wallet with skipRemoveDevice even if the wallet is not in a ready state to allow force removing of wallets (#906) * Pass request to PromptCodeHandler in guard registerUI (#909) * Pass request to PromptCodeHandler in guard registerUI * Fixing guard registerUI test * guard: allow using recovery code as 2FA token (#910) * guard: allow using recovery code as 2FA token * Cleanup types of ResponseFn --------- Co-authored-by: Corban Riley * Add a way to reset 2fa when using a backup code (#911) * Add a way to reset 2fa when using a backup code * use the GuardToken type instead of breaking out the props * Update tests.yml (#82) Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update SECURITY.md Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update packages/wallet/dapp-client/src/DappTransport.ts Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update package.json Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update SECURITY.md Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update wagmi-project/package.json Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update wagmi-project/package.json Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update wagmi-project/src/App.tsx Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Create FUNDING.json (#90) Enhancements: Include FUNDING.json to display GitHub sponsorship options in the repository Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Create config.yml (#91) Add initial CircleCI configuration to enable automated builds using a custom Docker executor and a defined workflow. Build: Add .circleci/config.yml with version 2.1 specification and custom Docker executor. CI: Define web3-defi-game-project job with checkout step. Set up my-custom-workflow to run the job. Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update App.tsx (#92) Summary by Sourcery Overhaul App.tsx to build a comprehensive Sequence Wallet demo application, replacing wagmi with Sequence SDK integration, adding environment/configuration management, rich wallet operations, and a structured UI with console output for interactive testing New Features: Replace wagmi-based hooks with @0xsequence wallet initialization and integration Add environment selection and dynamic wallet URLs via query parameters Implement connect, disconnect, open/close wallet and customizable connection settings Provide extensive demo actions including chain/network switching, account/balance queries, message signing, typed data signing, and transaction sending Introduce a console component and logging for viewing function outputs Add email-based auto-login via modal with validation Enhancements: Refactor UI to use design-system components and group actions thematically Initialize logger and configure default chain/network Memoize and listen to wallet events such as chain changes Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Add rc4 contracts * Set rc4 as default and add it to lists * Session enhanced replay protection * New sessions replay protection hashes payload * Use the 4337 factory wrapper * Update keymachine url in dapp-client constants * Update keymachine url in Provider constructor * SSR safety (#915) * SSR safety test * Fix CI job * Guard dapp-client for SSR (lazy transport, browser checks, gated storage) * Fix guard topology (#918) * Use proper guard topology * Test and fixes * login and setup tests * Switch prod manager settings (#917) * Add prod guard and identity instrument info * Remove completed TODOs * Small JS tweaks (#919) * Fix type exports to built declarations * Update repository links to current package paths * Improve Next app tooling and React typings * Expose primitives CLI bin and use base lint config * Update relayer.gen.ts and TransactionPrecondition interface * Update api.gen.ts * Update metadata.gen.ts * Update marketplace.gen.ts * Update guard.gen.ts * Support multiple identity signers in sessions configuration * Device signers can approve implicit sessions * Remove invalid test * Fix recursion * Fix comment * Improve test stability by reducing race conditions * Do not set passkey signer as identity signer * Use length checks * Throw on missing identity signer * Encoding requires identity signer to encode * Fix test * Refactor/types namings tsdoc redundant code (#880) * refactor types, namings, ts doc * fix session response payload * change parameter name * change parameter name * change type in tests * improve types and dapp client methods * fix session test to use new types * refactor * refactor implicit sessions array in chain session manager * remove unused types * remove unused types and add ConnectionError * update pnpm lock * move reusable session types to wallet-core * Update some imports and update some response type names --------- Co-authored-by: Tolgahan Arikan * Fix check for explicit session for the updated type in dapp-client * Update api.gen.ts and relayer.gen.ts * Add missing chainId for dapp client event * Fix initializing new chain session manager on redirect * Add support for non-viem, custom Sequence chains (#882) * Provider sent to prepareBlankEnvelope * Add session signature decoding * const for node length * Clearer blacklist size encoding * identity signer node length * Add feeTokens endpoint to relayer (#885) * add getFeeTokens to dapp client (#889) * add getFeeTokens to dapp client * fix typo * make getFeeTokens independent of chain session manager and initialize state (#890) * make getFeeTokens independent of chain session manager and initialized state * remove getFeeTokens from chain session manager * Throw specific error when trying to sign with an expired session (#887) * Throw when supported session signer is expired * Fix tests * Make dapp-client implicit sessions chain agnostic (#893) * Add Monad, remove LAOS and Root Network * Add support for sessionless dapp connection (#896) * Refactor relayer package & update dependant packages (#891) * refactor exports for relayer (#900) * Add Arc Testnet * Fix changelog config * Sessionless connection upgrade and error handling in DappClient (#902) * dapp-client: add sessionless snapshot restore flow * Allow to logout a wallet with skipRemoveDevice even if the wallet is not in a ready state to allow force removing of wallets (#906) * Pass request to PromptCodeHandler in guard registerUI (#909) * Pass request to PromptCodeHandler in guard registerUI * Fixing guard registerUI test * guard: allow using recovery code as 2FA token (#910) * guard: allow using recovery code as 2FA token * Cleanup types of ResponseFn --------- Co-authored-by: Corban Riley * Add a way to reset 2fa when using a backup code (#911) * Add a way to reset 2fa when using a backup code * use the GuardToken type instead of breaking out the props * Add rc4 contracts * Set rc4 as default and add it to lists * Session enhanced replay protection * New sessions replay protection hashes payload * Use the 4337 factory wrapper * Update keymachine url in dapp-client constants * Update keymachine url in Provider constructor * SSR safety (#915) * Guard dapp-client for SSR (lazy transport, browser checks, gated storage) * Fix guard topology (#918) * Use proper guard topology * Test and fixes * login and setup tests * Switch prod manager settings (#917) * Add prod guard and identity instrument info * Remove completed TODOs * Small JS tweaks (#919) * Fix type exports to built declarations * Update repository links to current package paths * Improve Next app tooling and React typings * Expose primitives CLI bin and use base lint config * Update relayer.gen.ts and TransactionPrecondition interface * Update relayer.gen.ts and TransactionPrecondition interface (#920) * 3.0.0-beta.1 * identity-instrument: generate nonce from current time (#921) * Remove publish-dists.yml github action (#923) * 3.0.0-beta.2 * Clean up changeset config * Improve test stability by removing race conditions * Ensure build before test * Updating happy-dom to 20.0.10 (#926) * Add support for custom auth providers (authcode & authcode-pkce only) (#894) * Add support for custom auth providers (authcode & authcode-pkce only) * fix authcode tests * Updating Deps November 2025 (#927) * Updating deps for the workspace root * Updating deps for wallet/wdk * Fixing sessions test for latest vitest * Lets not upgrade to the latest typescript quite yet * Updating to latest vitest * Updating deps for wallet/core * Updating deps for wallet/primitives-cli * Updating deps for wallet/dapp-client * Adding syncpack to check for dep version inconsistencies * Setup syncpack versionGroups for pnpm workspace:^ * Fixing dep versions mismatches * Fixing @types/node mismatches * Adding syncpack to pre commit hook * Remove the syncpack format script. * Update ox to v9.17.0 (#928) * Upgrading ox to 9.17.0 * WrappedSignature renamed to SignatureErc6492 * Fixing PasskeySignatureValidator interface * Lock ox lib dep to use the same version with pnpm overrides and update viem to latest * Fix explicitSessionRequested check in dapp client * Typescript 5.9.3 (#930) * Upgrading to typescript v5.9.3 * Fix type errors that arose from typescript upgrade related to Bytes and Buffer source typings. * Don't catch errors thrown by Guard 2FA or reject early to allow multiple attempts on incorrect TOTP (#931) * Update pnpm * Mark @0xsequence/wallet-primitives-cli as private * 3.0.0-beta.3 * changeset cleanup * Fix rc4 4337 factory (#933) * Add rc5 and set it as default (#934) * 3.0.0-beta.4 * Update SECURITY.md Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update wagmi-project/package.json Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update wagmi-project/package.json Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Bump next from 15.5.5 to 15.5.7 (#936) Bumps [next](https://github.com/vercel/next.js) from 15.5.5 to 15.5.7. - [Release notes](https://github.com/vercel/next.js/releases) - [Changelog](https://github.com/vercel/next.js/blob/canary/release.js) - [Commits](https://github.com/vercel/next.js/compare/v15.5.5...v15.5.7) --- updated-dependencies: - dependency-name: next dependency-version: 15.5.7 dependency-type: direct:production ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * add userdata service client (#940) * Skip LocalDevice identity signers not on current device (#942) * Skip LocalDevice identity signers not on current device * Update log * 3.0.0-beta.5 * Update config.yml (#102) * Update config.yml Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update .circleci/config.yml Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> --------- Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com> * Update config.yml (#103) * Update config.yml Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update .circleci/config.yml Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> --------- Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com> * fix: extras/web/package.json to reduce vulnerabilities (#101) The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JS-NEXT-14173355 Co-authored-by: snyk-io[bot] <141718529+snyk-io[bot]@users.noreply.github.com> * fix: extras/docs/package.json to reduce vulnerabilities (#100) The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JS-NEXT-14173355 Co-authored-by: snyk-io[bot] <141718529+snyk-io[bot]@users.noreply.github.com> * fix: package.json to reduce vulnerabilities (#104) The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JS-BABELHELPERS-9397697 - https://snyk.io/vuln/SNYK-JS-BABELRUNTIME-10044504 - https://snyk.io/vuln/SNYK-JS-BRACEEXPANSION-9789073 - https://snyk.io/vuln/SNYK-JS-CROSSSPAWN-8303230 - https://snyk.io/vuln/SNYK-JS-ELLIPTIC-7577916 - https://snyk.io/vuln/SNYK-JS-ELLIPTIC-7577917 - https://snyk.io/vuln/SNYK-JS-ELLIPTIC-7577918 - https://snyk.io/vuln/SNYK-JS-ELLIPTIC-8187303 - https://snyk.io/vuln/SNYK-JS-ELLIPTIC-8720086 - https://snyk.io/vuln/SNYK-JS-IMAGESIZE-9634164 - https://snyk.io/vuln/SNYK-JS-INFLIGHT-6095116 - https://snyk.io/vuln/SNYK-JS-JSYAML-13961110 - https://snyk.io/vuln/SNYK-JS-MICROMATCH-6838728 - https://snyk.io/vuln/SNYK-JS-NODEFORGE-14114940 - https://snyk.io/vuln/SNYK-JS-NODEFORGE-14125097 - https://snyk.io/vuln/SNYK-JS-NODEFORGE-14125745 - https://snyk.io/vuln/SNYK-JS-ONHEADERS-10773729 - https://snyk.io/vuln/SNYK-JS-ROLLUP-8073097 - https://snyk.io/vuln/SNYK-JS-SECP256K1-8237220 - https://snyk.io/vuln/SNYK-JS-SEND-7926862 - https://snyk.io/vuln/SNYK-JS-SERVESTATIC-7926865 - https://snyk.io/vuln/SNYK-JS-SHAJS-12089400 Co-authored-by: snyk-io[bot] <141718529+snyk-io[bot]@users.noreply.github.com> * Revert "Merge remote-tracking branch 'origin/dependabot/npm_and_yarn/npm_and_yarn-318c02e2da'" This reverts commit fd0fdf9ecc6ad9056447e381de7fc5bb19f78e47, reversing changes made to cba78943db9942a4635bb530b7a43fc5d18b0ab4. * fix: extras/web/package.json to reduce vulnerabilities (#109) The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JS-NEXT-14173355 Co-authored-by: snyk-bot * fix: extras/docs/package.json to reduce vulnerabilities (#106) The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JS-NEXT-14400636 - https://snyk.io/vuln/SNYK-JS-NEXT-14400644 Co-authored-by: snyk-bot * Bump next in the npm_and_yarn group across 1 directory (#110) Bumps the npm_and_yarn group with 1 update in the / directory: [next](https://github.com/vercel/next.js). Updates `next` from 15.5.7 to 15.5.9 - [Release notes](https://github.com/vercel/next.js/releases) - [Changelog](https://github.com/vercel/next.js/blob/canary/release.js) - [Commits](https://github.com/vercel/next.js/compare/v15.5.7...v15.5.9) --- updated-dependencies: - dependency-name: next dependency-version: 15.5.9 dependency-type: direct:production dependency-group: npm_and_yarn ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Delete .github/workflows/fortify.yml (#111) Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * fix: extras/web/package.json to reduce vulnerabilities (#107) The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JS-NEXT-14400636 - https://snyk.io/vuln/SNYK-JS-NEXT-14400644 Co-authored-by: snyk-bot * Bump the npm_and_yarn group across 1 directory with 3 updates (#115) Bumps the npm_and_yarn group with 1 update in the / directory: [next](https://github.com/vercel/next.js). Updates `next` from 15.5.5 to 15.5.9 - [Release notes](https://github.com/vercel/next.js/releases) - [Changelog](https://github.com/vercel/next.js/blob/canary/release.js) - [Commits](https://github.com/vercel/next.js/compare/v15.5.5...v15.5.9) Updates `happy-dom` from 17.6.3 to 20.0.11 - [Release notes](https://github.com/capricorn86/happy-dom/releases) - [Commits](https://github.com/capricorn86/happy-dom/compare/v17.6.3...v20.0.11) Updates `vite` from 7.1.10 to 7.2.7 - [Release notes](https://github.com/vitejs/vite/releases) - [Changelog](https://github.com/vitejs/vite/blob/v7.2.7/packages/vite/CHANGELOG.md) - [Commits](https://github.com/vitejs/vite/commits/v7.2.7/packages/vite) --- updated-dependencies: - dependency-name: next dependency-version: 15.5.9 dependency-type: direct:production dependency-group: npm_and_yarn - dependency-name: happy-dom dependency-version: 20.0.11 dependency-type: direct:development dependency-group: npm_and_yarn - dependency-name: vite dependency-version: 7.2.7 dependency-type: indirect dependency-group: npm_and_yarn ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Bump next from 15.5.7 to 15.5.9 (#944) Bumps [next](https://github.com/vercel/next.js) from 15.5.7 to 15.5.9. - [Release notes](https://github.com/vercel/next.js/releases) - [Changelog](https://github.com/vercel/next.js/blob/canary/release.js) - [Commits](https://github.com/vercel/next.js/compare/v15.5.7...v15.5.9) --- updated-dependencies: - dependency-name: next dependency-version: 15.5.9 dependency-type: direct:production ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Pin foundry to v1.5.0 instead of nightly (#947) * Include repo and extras in syncpack config to ensure deps are synced (#945) * Include repo and extras in syncpack config to ensure deps are synced across all * Updating support deps * Updating deps * Updating pnpm lock * Fixing type errors within wdk tests * Short circuit 404s (#949) * skip witness on signers that don't support it * add passkey to test * 3.0.0-beta.6 * Update tests.yml (#119) Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update config.yml (#120) Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update packages/services/identity-instrument/src/index.ts Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * feat: upgrade @wagmi/cli from 0.1.15 to 2.8.0 (#126) Snyk has created this PR to upgrade @wagmi/cli from 0.1.15 to 2.8.0. See this package in npm: @wagmi/cli See this project in Snyk: https://app.snyk.io/org/dargon789/project/bb845543-cbee-4e11-8cf9-8bfdf9205bf1?utm_source=github&utm_medium=referral&page=upgrade-pr Co-authored-by: snyk-bot * Potential fix for code scanning alert no. 82: Workflow does not contain permissions Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Potential fix for code scanning alert no. 62: Information exposure through a stack trace Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * [Snyk] Upgrade @tanstack/react-query from 5.64.2 to 5.90.11 (#125) * fix: upgrade @tanstack/react-query from 5.64.2 to 5.90.11 Snyk has created this PR to upgrade @tanstack/react-query from 5.64.2 to 5.90.11. See this package in npm: @tanstack/react-query See this project in Snyk: https://app.snyk.io/org/dargon789/project/bb845543-cbee-4e11-8cf9-8bfdf9205bf1?utm_source=github&utm_medium=referral&page=upgrade-pr * Update wagmi-project/package.json Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> --------- Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> Co-authored-by: snyk-bot Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> * feat: upgrade vite from 5.4.21 to 7.2.4 (#124) Snyk has created this PR to upgrade vite from 5.4.21 to 7.2.4. See this package in npm: vite See this project in Snyk: https://app.snyk.io/org/dargon789/project/bb845543-cbee-4e11-8cf9-8bfdf9205bf1?utm_source=github&utm_medium=referral&page=upgrade-pr Co-authored-by: snyk-bot * feat: upgrade wagmi from 0.12.19 to 3.0.2 (#123) Snyk has created this PR to upgrade wagmi from 0.12.19 to 3.0.2. See this package in npm: wagmi See this project in Snyk: https://app.snyk.io/org/dargon789/project/bb845543-cbee-4e11-8cf9-8bfdf9205bf1?utm_source=github&utm_medium=referral&page=upgrade-pr Co-authored-by: snyk-bot * feat: upgrade react-dom from 18.3.1 to 19.2.0 (#122) Snyk has created this PR to upgrade react-dom from 18.3.1 to 19.2.0. See this package in npm: react-dom See this project in Snyk: https://app.snyk.io/org/dargon789/project/bb845543-cbee-4e11-8cf9-8bfdf9205bf1?utm_source=github&utm_medium=referral&page=upgrade-pr Co-authored-by: snyk-bot * fix: extras/docs/package.json to reduce vulnerabilities (#136) The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JS-NEXT-14173355 Co-authored-by: snyk-io[bot] <141718529+snyk-io[bot]@users.noreply.github.com> * [Snyk] Upgrade @types/react from 18.3.27 to 19.2.7 (#127) * feat: upgrade @types/react from 18.3.27 to 19.2.7 Snyk has created this PR to upgrade @types/react from 18.3.27 to 19.2.7. See this package in npm: @types/react See this project in Snyk: https://app.snyk.io/org/dargon789/project/bb845543-cbee-4e11-8cf9-8bfdf9205bf1?utm_source=github&utm_medium=referral&page=upgrade-pr * Update wagmi-project/package.json Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> --------- Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> Co-authored-by: snyk-bot Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> * Master ceb95d4 (#129) * Update issue templates (#128) * Bump the npm_and_yarn group across 1 directory with 1 update Bumps the npm_and_yarn group with 1 update in the / directory: [express](https://github.com/expressjs/express). Updates `express` from 4.18.2 to 4.19.2 - [Release notes](https://github.com/expressjs/express/releases) - [Changelog](https://github.com/expressjs/express/blob/master/History.md) - [Commits](https://github.com/expressjs/express/compare/4.18.2...4.19.2) --- updated-dependencies: - dependency-name: express dependency-type: direct:development dependency-group: npm_and_yarn-security-group ... Signed-off-by: dependabot[bot] * Create SECURITY.md * Set up CI with Azure Pipelines [skip ci] * Create CNAME * Create fortify.yml * Update issue templates * Update CNAME * fix: upgrade @tanstack/react-query from 5.45.1 to 5.64.2 Snyk has created this PR to upgrade @tanstack/react-query from 5.45.1 to 5.64.2. See this package in npm: @tanstack/react-query See this project in Snyk: https://app.snyk.io/org/dargon789/project/bb845543-cbee-4e11-8cf9-8bfdf9205bf1?utm_source=github&utm_medium=referral&page=upgrade-pr * Create config.yml (#46) Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> * Support multiple identity signers in sessions configuration * Device signers can approve implicit sessions * Remove invalid test * Fix recursion * Fix comment * Improve test stability by reducing race conditions * Do not set passkey signer as identity signer * Use length checks * Throw on missing identity signer * Encoding requires identity signer to encode * Fix test * Refactor/types namings tsdoc redundant code (#880) * refactor types, namings, ts doc * fix session response payload * change parameter name * change parameter name * change type in tests * improve types and dapp client methods * fix session test to use new types * refactor * refactor implicit sessions array in chain session manager * remove unused types * remove unused types and add ConnectionError * update pnpm lock * move reusable session types to wallet-core * Update some imports and update some response type names --------- Co-authored-by: Tolgahan Arikan * Fix check for explicit session for the updated type in dapp-client * Update api.gen.ts and relayer.gen.ts * Add missing chainId for dapp client event * Fix initializing new chain session manager on redirect * Add support for non-viem, custom Sequence chains (#882) * Provider sent to prepareBlankEnvelope * Update fortify.yml Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> * Add session signature decoding * Add feeTokens endpoint to relayer (#885) * const for node length * Clearer blacklist size encoding * identity signer node length * add getFeeTokens to dapp client (#889) * add getFeeTokens to dapp client * fix typo * make getFeeTokens independent of chain session manager and initialize state (#890) * make getFeeTokens independent of chain session manager and initialized state * remove getFeeTokens from chain session manager * Throw specific error when trying to sign with an expired session (#887) * Throw when supported session signer is expired * Fix tests * Make dapp-client implicit sessions chain agnostic (#893) * Add Monad, remove LAOS and Root Network * Add support for sessionless dapp connection (#896) * Refactor relayer package & update dependant packages (#891) * refactor exports for relayer (#900) * Add Arc Testnet * Fix changelog config * Sessionless connection upgrade and error handling in DappClient (#902) * dapp-client: add sessionless snapshot restore flow * Bump the npm_and_yarn group across 3 directories with 1 update Bumps the npm_and_yarn group with 1 update in the / directory: [happy-dom](https://github.com/capricorn86/happy-dom). Bumps the npm_and_yarn group with 1 update in the /packages/wallet/dapp-client directory: [happy-dom](https://github.com/capricorn86/happy-dom). Bumps the npm_and_yarn group with 1 update in the /packages/wallet/wdk directory: [happy-dom](https://github.com/capricorn86/happy-dom). Updates `happy-dom` from 17.6.3 to 20.0.2 - [Release notes](https://github.com/capricorn86/happy-dom/releases) - [Commits](https://github.com/capricorn86/happy-dom/compare/v17.6.3...v20.0.2) Updates `happy-dom` from 17.6.3 to 20.0.2 - [Release notes](https://github.com/capricorn86/happy-dom/releases) - [Commits](https://github.com/capricorn86/happy-dom/compare/v17.6.3...v20.0.2) Updates `happy-dom` from 17.6.3 to 20.0.2 - [Release notes](https://github.com/capricorn86/happy-dom/releases) - [Commits](https://github.com/capricorn86/happy-dom/compare/v17.6.3...v20.0.2) --- updated-dependencies: - dependency-name: happy-dom dependency-version: 20.0.2 dependency-type: direct:development dependency-group: npm_and_yarn - dependency-name: happy-dom dependency-version: 20.0.2 dependency-type: direct:development dependency-group: npm_and_yarn - dependency-name: happy-dom dependency-version: 20.0.2 dependency-type: direct:development dependency-group: npm_and_yarn ... Signed-off-by: dependabot[bot] * Allow to logout a wallet with skipRemoveDevice even if the wallet is not in a ready state to allow force removing of wallets (#906) * Pass request to PromptCodeHandler in guard registerUI (#909) * Pass request to PromptCodeHandler in guard registerUI * Fixing guard registerUI test * guard: allow using recovery code as 2FA token (#910) * guard: allow using recovery code as 2FA token * Cleanup types of ResponseFn --------- Co-authored-by: Corban Riley * Add a way to reset 2fa when using a backup code (#911) * Add a way to reset 2fa when using a backup code * use the GuardToken type instead of breaking out the props * Update package.json Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update SECURITY.md Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update wagmi-project/package.json Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update wagmi-project/package.json Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update wagmi-project/src/App.tsx Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Create FUNDING.json (#90) Enhancements: Include FUNDING.json to display GitHub sponsorship options in the repository Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Create config.yml (#91) Add initial CircleCI configuration to enable automated builds using a custom Docker executor and a defined workflow. Build: Add .circleci/config.yml with version 2.1 specification and custom Docker executor. CI: Define web3-defi-game-project job with checkout step. Set up my-custom-workflow to run the job. Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Add rc4 contracts * Set rc4 as default and add it to lists * Session enhanced replay protection * New sessions replay protection hashes payload * Use the 4337 factory wrapper * Update keymachine url in dapp-client constants * Update keymachine url in Provider constructor * SSR safety (#915) * SSR safety test * Fix CI job * Guard dapp-client for SSR (lazy transport, browser checks, gated storage) * Fix guard topology (#918) * Use proper guard topology * Test and fixes * login and setup tests * Switch prod manager settings (#917) * Add prod guard and identity instrument info * Remove completed TODOs * Small JS tweaks (#919) * Fix type exports to built declarations * Update repository links to current package paths * Improve Next app tooling and React typings * Expose primitives CLI bin and use base lint config * Update relayer.gen.ts and TransactionPrecondition interface * Update api.gen.ts * Update metadata.gen.ts * Update marketplace.gen.ts * Update guard.gen.ts * Support multiple identity signers in sessions configuration * Device signers can approve implicit sessions * Remove invalid test * Fix recursion * Fix comment * Improve test stability by reducing race conditions * Do not set passkey signer as identity signer * Use length checks * Throw on missing identity signer * Encoding requires identity signer to encode * Fix test * Refactor/types namings tsdoc redundant code (#880) * refactor types, namings, ts doc * fix session response payload * change parameter name * change parameter name * change type in tests * improve types and dapp client methods * fix session test to use new types * refactor * refactor implicit sessions array in chain session manager * remove unused types * remove unused types and add ConnectionError * update pnpm lock * move reusable session types to wallet-core * Update some imports and update some response type names --------- Co-authored-by: Tolgahan Arikan * Fix check for explicit session for the updated type in dapp-client * Update api.gen.ts and relayer.gen.ts * Add missing chainId for dapp client event * Fix initializing new chain session manager on redirect * Add support for non-viem, custom Sequence chains (#882) * Provider sent to prepareBlankEnvelope * Add session signature decoding * const for node length * Clearer blacklist size encoding * identity signer node length * Add feeTokens endpoint to relayer (#885) * add getFeeTokens to dapp client (#889) * add getFeeTokens to dapp client * fix typo * make getFeeTokens independent of chain session manager and initialize state (#890) * make getFeeTokens independent of chain session manager and initialized state * remove getFeeTokens from chain session manager * Throw specific error when trying to sign with an expired session (#887) * Throw when supported session signer is expired * Fix tests * Make dapp-client implicit sessions chain agnostic (#893) * Add Monad, remove LAOS and Root Network * Add support for sessionless dapp connection (#896) * Refactor relayer package & update dependant packages (#891) * refactor exports for relayer (#900) * Add Arc Testnet * Fix changelog config * Sessionless connection upgrade and error handling in DappClient (#902) * dapp-client: add sessionless snapshot restore flow * Allow to logout a wallet with skipRemoveDevice even if the wallet is not in a ready state to allow force removing of wallets (#906) * Pass request to PromptCodeHandler in guard registerUI (#909) * Pass request to PromptCodeHandler in guard registerUI * Fixing guard registerUI test * guard: allow using recovery code as 2FA token (#910) * guard: allow using recovery code as 2FA token * Cleanup types of ResponseFn --------- Co-authored-by: Corban Riley * Add a way to reset 2fa when using a backup code (#911) * Add a way to reset 2fa when using a backup code * use the GuardToken type instead of breaking out the props * Add rc4 contracts * Set rc4 as default and add it to lists * Session enhanced replay protection * New sessions replay protection hashes payload * Use the 4337 factory wrapper * Update keymachine url in dapp-client constants * Update keymachine url in Provider constructor * SSR safety (#915) * Guard dapp-client for SSR (lazy transport, browser checks, gated storage) * Fix guard topology (#918) * Use proper guard topology * Test and fixes * login and setup tests * Switch prod manager settings (#917) * Add prod guard and identity instrument info * Remove completed TODOs * Small JS tweaks (#919) * Fix type exports to built declarations * Update repository links to current package paths * Improve Next app tooling and React typings * Expose primitives CLI bin and use base lint config * Update relayer.gen.ts and TransactionPrecondition interface * Update relayer.gen.ts and TransactionPrecondition interface (#920) * 3.0.0-beta.1 * identity-instrument: generate nonce from current time (#921) * Remove publish-dists.yml github action (#923) * 3.0.0-beta.2 * Clean up changeset config * Improve test stability by removing race conditions * Ensure build before test * Updating happy-dom to 20.0.10 (#926) * Add support for custom auth providers (authcode & authcode-pkce only) (#894) * Add support for custom auth providers (authcode & authcode-pkce only) * fix authcode tests * Updating Deps November 2025 (#927) * Updating deps for the workspace root * Updating deps for wallet/wdk * Fixing sessions test for latest vitest * Lets not upgrade to the latest typescript quite yet * Updating to latest vitest * Updating deps for wallet/core * Updating deps for wallet/primitives-cli * Updating deps for wallet/dapp-client * Adding syncpack to check for dep version inconsistencies * Setup syncpack versionGroups for pnpm workspace:^ * Fixing dep versions mismatches * Fixing @types/node mismatches * Adding syncpack to pre commit hook * Remove the syncpack format script. * Update ox to v9.17.0 (#928) * Upgrading ox to 9.17.0 * WrappedSignature renamed to SignatureErc6492 * Fixing PasskeySignatureValidator interface * Lock ox lib dep to use the same version with pnpm overrides and update viem to latest * Fix explicitSessionRequested check in dapp client * Typescript 5.9.3 (#930) * Upgrading to typescript v5.9.3 * Fix type errors that arose from typescript upgrade related to Bytes and Buffer source typings. * Don't catch errors thrown by Guard 2FA or reject early to allow multiple attempts on incorrect TOTP (#931) * Update pnpm * Mark @0xsequence/wallet-primitives-cli as private * 3.0.0-beta.3 * changeset cleanup * Fix rc4 4337 factory (#933) * Add rc5 and set it as default (#934) * 3.0.0-beta.4 * Update SECURITY.md Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update wagmi-project/package.json Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update wagmi-project/package.json Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Bump next from 15.5.5 to 15.5.7 (#936) Bumps [next](https://github.com/vercel/next.js) from 15.5.5 to 15.5.7. - [Release notes](https://github.com/vercel/next.js/releases) - [Changelog](https://github.com/vercel/next.js/blob/canary/release.js) - [Commits](https://github.com/vercel/next.js/compare/v15.5.5...v15.5.7) --- updated-dependencies: - dependency-name: next dependency-version: 15.5.7 dependency-type: direct:production ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * add userdata service client (#940) * Skip LocalDevice identity signers not on current device (#942) * Skip LocalDevice identity signers not on current device * Update log * 3.0.0-beta.5 * Update config.yml (#102) * Update config.yml Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update .circleci/config.yml Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> --------- Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com> * Update config.yml (#103) * Update config.yml Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update .circleci/config.yml Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> --------- Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com> * fix: extras/web/package.json to reduce vulnerabilities (#101) The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JS-NEXT-14173355 Co-authored-by: snyk-io[bot] <141718529+snyk-io[bot]@users.noreply.github.com> * fix: extras/docs/package.json to reduce vulnerabilities (#100) The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JS-NEXT-14173355 Co-authored-by: snyk-io[bot] <141718529+snyk-io[bot]@users.noreply.github.com> * fix: package.json to reduce vulnerabilities (#104) The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JS-BABELHELPERS-9397697 - https://snyk.io/vuln/SNYK-JS-BABELRUNTIME-10044504 - https://snyk.io/vuln/SNYK-JS-BRACEEXPANSION-9789073 - https://snyk.io/vuln/SNYK-JS-CROSSSPAWN-8303230 - https://snyk.io/vuln/SNYK-JS-ELLIPTIC-7577916 - https://snyk.io/vuln/SNYK-JS-ELLIPTIC-7577917 - https://snyk.io/vuln/SNYK-JS-ELLIPTIC-7577918 - https://snyk.io/vuln/SNYK-JS-ELLIPTIC-8187303 - https://snyk.io/vuln/SNYK-JS-ELLIPTIC-8720086 - https://snyk.io/vuln/SNYK-JS-IMAGESIZE-9634164 - https://snyk.io/vuln/SNYK-JS-INFLIGHT-6095116 - https://snyk.io/vuln/SNYK-JS-JSYAML-13961110 - https://snyk.io/vuln/SNYK-JS-MICROMATCH-6838728 - https://snyk.io/vuln/SNYK-JS-NODEFORGE-14114940 - https://snyk.io/vuln/SNYK-JS-NODEFORGE-14125097 - https://snyk.io/vuln/SNYK-JS-NODEFORGE-14125745 - https://snyk.io/vuln/SNYK-JS-ONHEADERS-10773729 - https://snyk.io/vuln/SNYK-JS-ROLLUP-8073097 - https://snyk.io/vuln/SNYK-JS-SECP256K1-8237220 - https://snyk.io/vuln/SNYK-JS-SEND-7926862 - https://snyk.io/vuln/SNYK-JS-SERVESTATIC-7926865 - https://snyk.io/vuln/SNYK-JS-SHAJS-12089400 Co-authored-by: snyk-io[bot] <141718529+snyk-io[bot]@users.noreply.github.com> * Revert "Merge remote-tracking branch 'origin/dependabot/npm_and_yarn/npm_and_yarn-318c02e2da'" This reverts commit fd0fdf9ecc6ad9056447e381de7fc5bb19f78e47, reversing changes made to cba78943db9942a4635bb530b7a43fc5d18b0ab4. * fix: extras/web/package.json to reduce vulnerabilities (#109) The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JS-NEXT-14173355 Co-authored-by: snyk-bot * fix: extras/docs/package.json to reduce vulnerabilities (#106) The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JS-NEXT-14400636 - https://snyk.io/vuln/SNYK-JS-NEXT-14400644 Co-authored-by: snyk-bot * Bump next in the npm_and_yarn group across 1 directory (#110) Bumps the npm_and_yarn group with 1 update in the / directory: [next](https://github.com/vercel/next.js). Updates `next` from 15.5.7 to 15.5.9 - [Release notes](https://github.com/vercel/next.js/releases) - [Changelog](https://github.com/vercel/next.js/blob/canary/release.js) - [Commits](https://github.com/vercel/next.js/compare/v15.5.7...v15.5.9) --- updated-dependencies: - dependency-name: next dependency-version: 15.5.9 dependency-type: direct:production dependency-group: npm_and_yarn ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Delete .github/workflows/fortify.yml (#111) Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * fix: extras/web/package.json to reduce vulnerabilities (#107) The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JS-NEXT-14400636 - https://snyk.io/vuln/SNYK-JS-NEXT-14400644 Co-authored-by: snyk-bot * Bump the npm_and_yarn group across 1 directory with 3 updates (#115) Bumps the npm_and_yarn group with 1 update in the / directory: [next](https://github.com/vercel/next.js). Updates `next` from 15.5.5 to 15.5.9 - [Release notes](https://github.com/vercel/next.js/releases) - [Changelog](https://github.com/vercel/next.js/blob/canary/release.js) - [Commits](https://github.com/vercel/next.js/compare/v15.5.5...v15.5.9) Updates `happy-dom` from 17.6.3 to 20.0.11 - [Release notes](https://github.com/capricorn86/happy-dom/releases) - [Commits](https://github.com/capricorn86/happy-dom/compare/v17.6.3...v20.0.11) Updates `vite` from 7.1.10 to 7.2.7 - [Release notes](https://github.com/vitejs/vite/releases) - [Changelog](https://github.com/vitejs/vite/blob/v7.2.7/packages/vite/CHANGELOG.md) - [Commits](https://github.com/vitejs/vite/commits/v7.2.7/packages/vite) --- updated-dependencies: - dependency-name: next dependency-version: 15.5.9 dependency-type: direct:production dependency-group: npm_and_yarn - dependency-name: happy-dom dependency-version: 20.0.11 dependency-type: direct:development dependency-group: npm_and_yarn - dependency-name: vite dependency-version: 7.2.7 dependency-type: indirect dependency-group: npm_and_yarn ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Bump next from 15.5.7 to 15.5.9 (#944) Bumps [next](https://github.com/vercel/next.js) from 15.5.7 to 15.5.9. - [Release notes](https://github.com/vercel/next.js/releases) - [Changelog](https://github.com/vercel/next.js/blob/canary/release.js) - [Commits](https://github.com/vercel/next.js/compare/v15.5.7...v15.5.9) --- updated-dependencies: - dependency-name: next dependency-version: 15.5.9 dependency-type: direct:production ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Pin foundry to v1.5.0 instead of nightly (#947) * Include repo and extras in syncpack config to ensure deps are synced (#945) * Include repo and extras in syncpack config to ensure deps are synced across all * Updating support deps * Updating deps * Updating pnpm lock * Fixing type errors within wdk tests * Short circuit 404s (#949) * skip witness on signers that don't support it * add passkey to test * 3.0.0-beta.6 * Update tests.yml (#119) Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update config.yml (#120) Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update packages/services/identity-instrument/src/index.ts Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> --------- Signed-off-by: dependabot[bot] Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: snyk-bot Co-authored-by: Michael Standen Co-authored-by: Gabi <56271768+VGabriel45@users.noreply.github.com> Co-authored-by: Tolgahan Arikan Co-authored-by: Taylan Pince Co-authored-by: Corban Brook Co-authored-by: Patryk Kalinowski Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Co-authored-by: Agusx1211 Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com> Co-authored-by: snyk-io[bot] <141718529+snyk-io[bot]@users.noreply.github.com> * Update wagmi-project/src/main.tsx Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update wagmi-project/package.json Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update wagmi-project/package.json Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * fix: extras/docs/package.json to reduce vulnerabilities (#116) The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JS-NEXT-14400636 - https://snyk.io/vuln/SNYK-JS-NEXT-14400644 Co-authored-by: snyk-io[bot] <141718529+snyk-io[bot]@users.noreply.github.com> Co-authored-by: dargon789 <64915515+Dargon789@users.noreply.github.com> --------- Signed-off-by: dependabot[bot] Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: snyk-bot Co-authored-by: Michael Standen Co-authored-by: Gabi <56271768+VGabriel45@users.noreply.github.com> Co-authored-by: Tolgahan Arikan Co-authored-by: Taylan Pince Co-authored-by: Corban Brook Co-authored-by: Patryk Kalinowski Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Co-authored-by: Agusx1211 Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com> Co-authored-by: snyk-io[bot] <141718529+snyk-io[bot]@users.noreply.github.com> * Update wagmi-project/src/App.tsx Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update wagmi-project/src/App.tsx Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update wagmi-project/src/App.tsx Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update wagmi-project/src/App.tsx Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * 2.3.7 (#131) (#132) * 2.3.7 (#131) * fix broken guard private key * Expose access to passkey credential list * Dapp client direct txn request (#856) * Signature request refactor * WIP * Refactor * Update dapp-client exports (#858) * Add hasPermission method to DappClient (#859) * Save discovered passkey credentials upon login * Expose name property in PasskeySignupArgs * Fix blacklist sort * Add multi server script * relayer: /SimulateV3 (#857) * Add await for handleOpenDB scheduleExpiration * Update increment to always include native once used * Fix session tests * Adding lastLoginAt to PasskeyCredential * LoginToPasskeyArgs now accept a credentialId which is used to specify which credential to use * Adding onSignatureRequestStatus function to register single use callbacks for when a request reaches a terminal state of completed or cancelled * When a login is cancelled we can remove the wallet which is logging-in * Add RC3 contracts * Sessions space restriction * Dedupe signers for encoding * Support RC3 sessions * Tightly increment call validation * CLI defaults to RC3 wallet code * Rc3 address test * Fix hashing tests * Add deprecated encoding test * wdk: throw errors from otp respond callback (#864) * wdk: throw errors from otp respond callback * wdk: otp auth error and handler refactor * Handle guard 2FA (#861) * guard: return a specific error when auth required * core: pass guard token to the service * wdk: handle prompting for guard 2FA code * dapp-client: handle prompting for guard 2FA code * guard 2fa tests * wdk: separate wallet and sessions guards * dapp-client: remove guard 2fa * dapp-client: fix imports * fix guard tests * wdk: remove unneeded promise resolve * Update relayer and api gen.ts, force public packages * Add standalone fetch queued payloads * Replacing GuardRole enum with string union type, as well as replacing guardAddresses Map with Record * Fallback to chain for non-logged in recovery * Add Katana, Sandbox Tesnet, Incentiv Testnet v2 (#873) * Update a few remaining dev1 contract addresses to rc3 (#874) * Remove unnecessary console.error where we already throw error * Improve DappClient hasPermission method * Wallet db try checksum and lowercase * Update dapp client json utils to include Map reviver and replacer * Bump next in the npm_and_yarn group across 1 directory Bumps the npm_and_yarn group with 1 update in the / directory: [next](https://github.com/vercel/next.js). Updates `next` from 15.4.2 to 15.4.7 - [Release notes](https://github.com/vercel/next.js/releases) - [Changelog](https://github.com/vercel/next.js/blob/canary/release.js) - [Commits](https://github.com/vercel/next.js/compare/v15.4.2...v15.4.7) --- updated-dependencies: - dependency-name: next dependency-version: 15.4.7 dependency-type: direct:production dependency-group: npm_and_yarn ... Signed-off-by: dependabot[bot] * Update type name, update exports for dapp client * Expired explicit sessions can't sign * Improve session validity test * session isValid returns invalid reason * InvalidReason is typed * Support multiple identity signers in sessions configuration * Device signers can approve implicit sessions * Remove invalid test * Fix recursion * Fix comment * Improve test stability by reducing race conditions * Do not set passkey signer as identity signer * Use length checks * Throw on missing identity signer * Encoding requires identity signer to encode * Fix test * Refactor/types namings tsdoc redundant code (#880) * refactor types, namings, ts doc * fix session response payload * change parameter name * change parameter name * change type in tests * improve types and dapp client methods * fix session test to use new types * refactor * refactor implicit sessions array in chain session manager * remove unused types * remove unused types and add ConnectionError * update pnpm lock * move reusable session types to wallet-core * Update some imports and update some response type names --------- Co-authored-by: Tolgahan Arikan * Fix check for explicit session for the updated type in dapp-client * Update api.gen.ts and relayer.gen.ts * Add missing chainId for dapp client event * Fix initializing new chain session manager on redirect * Add support for non-viem, custom Sequence chains (#882) * Update issue templates * Provider sent to prepareBlankEnvelope * Add session signature decoding * Add feeTokens endpoint to relayer (#885) * const for node length * Clearer blacklist size encoding * identity signer node length * Potential fix for code scanning alert no. 84: Insecure randomness Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> * add getFeeTokens to dapp client (#889) * add getFeeTokens to dapp client * fix typo * make getFeeTokens independent of chain session manager and initialize state (#890) * make getFeeTokens independent of chain session manager and initialized state * remove getFeeTokens from chain session manager * Throw specific error when trying to sign with an expired session (#887) * Throw when supported session signer is expired * Fix tests * Make dapp-client implicit sessions chain agnostic (#893) * Add Monad, remove LAOS and Root Network * Bump the npm_and_yarn group across 3 directories with 1 update Bumps the npm_and_yarn group with 1 update in the / directory: [happy-dom](https://github.com/capricorn86/happy-dom). Bumps the npm_and_yarn group with 1 update in the /packages/wallet/dapp-client directory: [happy-dom](https://github.com/capricorn86/happy-dom). Bumps the npm_and_yarn group with 1 update in the /packages/wallet/wdk directory: [happy-dom](https://github.com/capricorn86/happy-dom). Updates `happy-dom` from 17.6.3 to 20.0.0 - [Release notes](https://github.com/capricorn86/happy-dom/releases) - [Commits](https://github.com/capricorn86/happy-dom/compare/v17.6.3...v20.0.0) Updates `happy-dom` from 17.6.3 to 20.0.0 - [Release notes](https://github.com/capricorn86/happy-dom/releases) - [Commits](https://github.com/capricorn86/happy-dom/compare/v17.6.3...v20.0.0) Updates `happy-dom` from 17.6.3 to 20.0.0 - [Release notes](https://github.com/capricorn86/happy-dom/releases) - [Commits](https://github.com/capricorn86/happy-dom/compare/v17.6.3...v20.0.0) --- updated-dependencies: - dependency-name: happy-dom dependency-version: 20.0… * Potential fix for code scanning alert no. 83: Workflow does not contain permissions Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Potential fix for code scanning alert no. 82: Workflow does not contain permissions Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * extras docs extras\docs\next-env.d.ts * Update publish-dists.yml * Codesandbox (#258) * 0xsequence 1.9.19 (#253) * Improve test stability by reducing race conditions * Do not set passkey signer as identity signer * Use length checks * Throw on missing identity signer * Encoding requires identity signer to encode * Fix test * Refactor/types namings tsdoc redundant code (#880) * refactor types, namings, ts doc * fix session response payload * change parameter name * change parameter name * change type in tests * improve types and dapp client methods * fix session test to use new types * refactor * refactor implicit sessions array in chain session manager * remove unused types * remove unused types and add ConnectionError * update pnpm lock * move reusable session types to wallet-core * Update some imports and update some response type names --------- Co-authored-by: Tolgahan Arikan * Fix check for explicit session for the updated type in dapp-client * Update api.gen.ts and relayer.gen.ts * Add missing chainId for dapp client event * Fix initializing new chain session manager on redirect * Add support for non-viem, custom Sequence chains (#882) * Provider sent to prepareBlankEnvelope * Add session signature decoding * const for node length * Clearer blacklist size encoding * identity signer node length * Add feeTokens endpoint to relayer (#885) * add getFeeTokens to dapp client (#889) * add getFeeTokens to dapp client * fix typo * make getFeeTokens independent of chain session manager and initialize state (#890) * make getFeeTokens independent of chain session manager and initialized state * remove getFeeTokens from chain session manager * Throw specific error when trying to sign with an expired session (#887) * Throw when supported session signer is expired * Fix tests * Make dapp-client implicit sessions chain agnostic (#893) * Add Monad, remove LAOS and Root Network * Add support for sessionless dapp connection (#896) * Refactor relayer package & update dependant packages (#891) * refactor exports for relayer (#900) * Add Arc Testnet * Fix changelog config * Sessionless connection upgrade and error handling in DappClient (#902) * dapp-client: add sessionless snapshot restore flow * Allow to logout a wallet with skipRemoveDevice even if the wallet is not in a ready state to allow force removing of wallets (#906) * Pass request to PromptCodeHandler in guard registerUI (#909) * Pass request to PromptCodeHandler in guard registerUI * Fixing guard registerUI test * guard: allow using recovery code as 2FA token (#910) * guard: allow using recovery code as 2FA token * Cleanup types of ResponseFn --------- Co-authored-by: Corban Riley * Add a way to reset 2fa when using a backup code (#911) * Add a way to reset 2fa when using a backup code * use the GuardToken type instead of breaking out the props * Add rc4 contracts * Set rc4 as default and add it to lists * Session enhanced replay protection * New sessions replay protection hashes payload * Use the 4337 factory wrapper * Update keymachine url in dapp-client constants * Update keymachine url in Provider constructor * SSR safety (#915) * Guard dapp-client for SSR (lazy transport, browser checks, gated storage) * Fix guard topology (#918) * Use proper guard topology * Test and fixes * login and setup tests * Switch prod manager settings (#917) * Add prod guard and identity instrument info * Remove completed TODOs * Small JS tweaks (#919) * Fix type exports to built declarations * Update repository links to current package paths * Improve Next app tooling and React typings * Expose primitives CLI bin and use base lint config * Update relayer.gen.ts and TransactionPrecondition interface * Update relayer.gen.ts and TransactionPrecondition interface (#920) * 3.0.0-beta.1 * identity-instrument: generate nonce from current time (#921) * Remove publish-dists.yml github action (#923) * 3.0.0-beta.2 * Clean up changeset config * Improve test stability by removing race conditions * Ensure build before test * Updating happy-dom to 20.0.10 (#926) * Add support for custom auth providers (authcode & authcode-pkce only) (#894) * Add support for custom auth providers (authcode & authcode-pkce only) * fix authcode tests * Updating Deps November 2025 (#927) * Updating deps for the workspace root * Updating deps for wallet/wdk * Fixing sessions test for latest vitest * Lets not upgrade to the latest typescript quite yet * Updating to latest vitest * Updating deps for wallet/core * Updating deps for wallet/primitives-cli * Updating deps for wallet/dapp-client * Adding syncpack to check for dep version inconsistencies * Setup syncpack versionGroups for pnpm workspace:^ * Fixing dep versions mismatches * Fixing @types/node mismatches * Adding syncpack to pre commit hook * Remove the syncpack format script. * Update ox to v9.17.0 (#928) * Upgrading ox to 9.17.0 * WrappedSignature renamed to SignatureErc6492 * Fixing PasskeySignatureValidator interface * Lock ox lib dep to use the same version with pnpm overrides and update viem to latest * Fix explicitSessionRequested check in dapp client * Typescript 5.9.3 (#930) * Upgrading to typescript v5.9.3 * Fix type errors that arose from typescript upgrade related to Bytes and Buffer source typings. * Don't catch errors thrown by Guard 2FA or reject early to allow multiple attempts on incorrect TOTP (#931) * Update pnpm * Mark @0xsequence/wallet-primitives-cli as private * 3.0.0-beta.3 * changeset cleanup * [AUTOMATED] Update: proto/clients/indexer*.gen.ts * [AUTOMATED] Update: proto/clients/indexer*.gen.ts * [AUTOMATED] Update: proto/clients/indexer*.gen.ts * [AUTOMATED] Update: proto/clients/indexer*.gen.ts * [AUTOMATED] Update: proto/clients/indexer*.gen.ts * [AUTOMATED] Update: proto/clients/indexer*.gen.ts * [AUTOMATED] Update: proto/clients/indexer*.gen.ts * [AUTOMATED] Update: proto/clients/indexer*.gen.ts * Fix rc4 4337 factory (#933) * Add rc5 and set it as default (#934) * 3.0.0-beta.4 * Update SECURITY.md Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update wagmi-project/package.json Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update wagmi-project/package.json Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Bump next from 15.5.5 to 15.5.7 (#936) Bumps [next](https://github.com/vercel/next.js) from 15.5.5 to 15.5.7. - [Release notes](https://github.com/vercel/next.js/releases) - [Changelog](https://github.com/vercel/next.js/blob/canary/release.js) - [Commits](https://github.com/vercel/next.js/compare/v15.5.5...v15.5.7) --- updated-dependencies: - dependency-name: next dependency-version: 15.5.7 dependency-type: direct:production ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * add userdata service client (#940) * Skip LocalDevice identity signers not on current device (#942) * Skip LocalDevice identity signers not on current device * Update log * 3.0.0-beta.5 * Update config.yml (#102) * Update config.yml Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update .circleci/config.yml Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> --------- Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com> * Update config.yml (#103) * Update config.yml Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update .circleci/config.yml Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> --------- Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com> * fix: extras/web/package.json to reduce vulnerabilities (#101) The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JS-NEXT-14173355 Co-authored-by: snyk-io[bot] <141718529+snyk-io[bot]@users.noreply.github.com> * fix: extras/docs/package.json to reduce vulnerabilities (#100) The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JS-NEXT-14173355 Co-authored-by: snyk-io[bot] <141718529+snyk-io[bot]@users.noreply.github.com> * fix: package.json to reduce vulnerabilities (#104) The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JS-BABELHELPERS-9397697 - https://snyk.io/vuln/SNYK-JS-BABELRUNTIME-10044504 - https://snyk.io/vuln/SNYK-JS-BRACEEXPANSION-9789073 - https://snyk.io/vuln/SNYK-JS-CROSSSPAWN-8303230 - https://snyk.io/vuln/SNYK-JS-ELLIPTIC-7577916 - https://snyk.io/vuln/SNYK-JS-ELLIPTIC-7577917 - https://snyk.io/vuln/SNYK-JS-ELLIPTIC-7577918 - https://snyk.io/vuln/SNYK-JS-ELLIPTIC-8187303 - https://snyk.io/vuln/SNYK-JS-ELLIPTIC-8720086 - https://snyk.io/vuln/SNYK-JS-IMAGESIZE-9634164 - https://snyk.io/vuln/SNYK-JS-INFLIGHT-6095116 - https://snyk.io/vuln/SNYK-JS-JSYAML-13961110 - https://snyk.io/vuln/SNYK-JS-MICROMATCH-6838728 - https://snyk.io/vuln/SNYK-JS-NODEFORGE-14114940 - https://snyk.io/vuln/SNYK-JS-NODEFORGE-14125097 - https://snyk.io/vuln/SNYK-JS-NODEFORGE-14125745 - https://snyk.io/vuln/SNYK-JS-ONHEADERS-10773729 - https://snyk.io/vuln/SNYK-JS-ROLLUP-8073097 - https://snyk.io/vuln/SNYK-JS-SECP256K1-8237220 - https://snyk.io/vuln/SNYK-JS-SEND-7926862 - https://snyk.io/vuln/SNYK-JS-SERVESTATIC-7926865 - https://snyk.io/vuln/SNYK-JS-SHAJS-12089400 Co-authored-by: snyk-io[bot] <141718529+snyk-io[bot]@users.noreply.github.com> * Revert "Merge remote-tracking branch 'origin/dependabot/npm_and_yarn/npm_and_yarn-318c02e2da'" This reverts commit fd0fdf9ecc6ad9056447e381de7fc5bb19f78e47, reversing changes made to cba78943db9942a4635bb530b7a43fc5d18b0ab4. * fix: extras/web/package.json to reduce vulnerabilities (#109) The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JS-NEXT-14173355 Co-authored-by: snyk-bot * fix: extras/docs/package.json to reduce vulnerabilities (#106) The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JS-NEXT-14400636 - https://snyk.io/vuln/SNYK-JS-NEXT-14400644 Co-authored-by: snyk-bot * Bump next in the npm_and_yarn group across 1 directory (#110) Bumps the npm_and_yarn group with 1 update in the / directory: [next](https://github.com/vercel/next.js). Updates `next` from 15.5.7 to 15.5.9 - [Release notes](https://github.com/vercel/next.js/releases) - [Changelog](https://github.com/vercel/next.js/blob/canary/release.js) - [Commits](https://github.com/vercel/next.js/compare/v15.5.7...v15.5.9) --- updated-dependencies: - dependency-name: next dependency-version: 15.5.9 dependency-type: direct:production dependency-group: npm_and_yarn ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Delete .github/workflows/fortify.yml (#111) Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * fix: extras/web/package.json to reduce vulnerabilities (#107) The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JS-NEXT-14400636 - https://snyk.io/vuln/SNYK-JS-NEXT-14400644 Co-authored-by: snyk-bot * Bump the npm_and_yarn group across 1 directory with 3 updates (#115) Bumps the npm_and_yarn group with 1 update in the / directory: [next](https://github.com/vercel/next.js). Updates `next` from 15.5.5 to 15.5.9 - [Release notes](https://github.com/vercel/next.js/releases) - [Changelog](https://github.com/vercel/next.js/blob/canary/release.js) - [Commits](https://github.com/vercel/next.js/compare/v15.5.5...v15.5.9) Updates `happy-dom` from 17.6.3 to 20.0.11 - [Release notes](https://github.com/capricorn86/happy-dom/releases) - [Commits](https://github.com/capricorn86/happy-dom/compare/v17.6.3...v20.0.11) Updates `vite` from 7.1.10 to 7.2.7 - [Release notes](https://github.com/vitejs/vite/releases) - [Changelog](https://github.com/vitejs/vite/blob/v7.2.7/packages/vite/CHANGELOG.md) - [Commits](https://github.com/vitejs/vite/commits/v7.2.7/packages/vite) --- updated-dependencies: - dependency-name: next dependency-version: 15.5.9 dependency-type: direct:production dependency-group: npm_and_yarn - dependency-name: happy-dom dependency-version: 20.0.11 dependency-type: direct:development dependency-group: npm_and_yarn - dependency-name: vite dependency-version: 7.2.7 dependency-type: indirect dependency-group: npm_and_yarn ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Bump next from 15.5.7 to 15.5.9 (#944) Bumps [next](https://github.com/vercel/next.js) from 15.5.7 to 15.5.9. - [Release notes](https://github.com/vercel/next.js/releases) - [Changelog](https://github.com/vercel/next.js/blob/canary/release.js) - [Commits](https://github.com/vercel/next.js/compare/v15.5.7...v15.5.9) --- updated-dependencies: - dependency-name: next dependency-version: 15.5.9 dependency-type: direct:production ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Pin foundry to v1.5.0 instead of nightly (#947) * Include repo and extras in syncpack config to ensure deps are synced (#945) * Include repo and extras in syncpack config to ensure deps are synced across all * Updating support deps * Updating deps * Updating pnpm lock * Fixing type errors within wdk tests * Short circuit 404s (#949) * skip witness on signers that don't support it * add passkey to test * 3.0.0-beta.6 * Update tests.yml (#119) Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update config.yml (#120) Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update packages/services/identity-instrument/src/index.ts Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * feat: upgrade @wagmi/cli from 0.1.15 to 2.8.0 (#126) Snyk has created this PR to upgrade @wagmi/cli from 0.1.15 to 2.8.0. See this package in npm: @wagmi/cli See this project in Snyk: https://app.snyk.io/org/dargon789/project/bb845543-cbee-4e11-8cf9-8bfdf9205bf1?utm_source=github&utm_medium=referral&page=upgrade-pr Co-authored-by: snyk-bot * Potential fix for code scanning alert no. 82: Workflow does not contain permissions Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Potential fix for code scanning alert no. 62: Information exposure through a stack trace Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * [Snyk] Upgrade @tanstack/react-query from 5.64.2 to 5.90.11 (#125) * fix: upgrade @tanstack/react-query from 5.64.2 to 5.90.11 Snyk has created this PR to upgrade @tanstack/react-query from 5.64.2 to 5.90.11. See this package in npm: @tanstack/react-query See this project in Snyk: https://app.snyk.io/org/dargon789/project/bb845543-cbee-4e11-8cf9-8bfdf9205bf1?utm_source=github&utm_medium=referral&page=upgrade-pr * Update wagmi-project/package.json Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> --------- Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> Co-authored-by: snyk-bot Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> * feat: upgrade vite from 5.4.21 to 7.2.4 (#124) Snyk has created this PR to upgrade vite from 5.4.21 to 7.2.4. See this package in npm: vite See this project in Snyk: https://app.snyk.io/org/dargon789/project/bb845543-cbee-4e11-8cf9-8bfdf9205bf1?utm_source=github&utm_medium=referral&page=upgrade-pr Co-authored-by: snyk-bot * feat: upgrade wagmi from 0.12.19 to 3.0.2 (#123) Snyk has created this PR to upgrade wagmi from 0.12.19 to 3.0.2. See this package in npm: wagmi See this project in Snyk: https://app.snyk.io/org/dargon789/project/bb845543-cbee-4e11-8cf9-8bfdf9205bf1?utm_source=github&utm_medium=referral&page=upgrade-pr Co-authored-by: snyk-bot * feat: upgrade react-dom from 18.3.1 to 19.2.0 (#122) Snyk has created this PR to upgrade react-dom from 18.3.1 to 19.2.0. See this package in npm: react-dom See this project in Snyk: https://app.snyk.io/org/dargon789/project/bb845543-cbee-4e11-8cf9-8bfdf9205bf1?utm_source=github&utm_medium=referral&page=upgrade-pr Co-authored-by: snyk-bot * fix: extras/docs/package.json to reduce vulnerabilities (#136) The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JS-NEXT-14173355 Co-authored-by: snyk-io[bot] <141718529+snyk-io[bot]@users.noreply.github.com> * [Snyk] Upgrade @types/react from 18.3.27 to 19.2.7 (#127) * feat: upgrade @types/react from 18.3.27 to 19.2.7 Snyk has created this PR to upgrade @types/react from 18.3.27 to 19.2.7. See this package in npm: @types/react See this project in Snyk: https://app.snyk.io/org/dargon789/project/bb845543-cbee-4e11-8cf9-8bfdf9205bf1?utm_source=github&utm_medium=referral&page=upgrade-pr * Update wagmi-project/package.json Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> --------- Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> Co-authored-by: snyk-bot Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> * Master ceb95d4 (#129) * Update issue templates (#128) * Bump the npm_and_yarn group across 1 directory with 1 update Bumps the npm_and_yarn group with 1 update in the / directory: [express](https://github.com/expressjs/express). Updates `express` from 4.18.2 to 4.19.2 - [Release notes](https://github.com/expressjs/express/releases) - [Changelog](https://github.com/expressjs/express/blob/master/History.md) - [Commits](https://github.com/expressjs/express/compare/4.18.2...4.19.2) --- updated-dependencies: - dependency-name: express dependency-type: direct:development dependency-group: npm_and_yarn-security-group ... Signed-off-by: dependabot[bot] * Create SECURITY.md * Set up CI with Azure Pipelines [skip ci] * Create CNAME * Create fortify.yml * Update issue templates * Update CNAME * fix: upgrade @tanstack/react-query from 5.45.1 to 5.64.2 Snyk has created this PR to upgrade @tanstack/react-query from 5.45.1 to 5.64.2. See this package in npm: @tanstack/react-query See this project in Snyk: https://app.snyk.io/org/dargon789/project/bb845543-cbee-4e11-8cf9-8bfdf9205bf1?utm_source=github&utm_medium=referral&page=upgrade-pr * Create config.yml (#46) Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> * Support multiple identity signers in sessions configuration * Device signers can approve implicit sessions * Remove invalid test * Fix recursion * Fix comment * Improve test stability by reducing race conditions * Do not set passkey signer as identity signer * Use length checks * Throw on missing identity signer * Encoding requires identity signer to encode * Fix test * Refactor/types namings tsdoc redundant code (#880) * refactor types, namings, ts doc * fix session response payload * change parameter name * change parameter name * change type in tests * improve types and dapp client methods * fix session test to use new types * refactor * refactor implicit sessions array in chain session manager * remove unused types * remove unused types and add ConnectionError * update pnpm lock * move reusable session types to wallet-core * Update some imports and update some response type names --------- Co-authored-by: Tolgahan Arikan * Fix check for explicit session for the updated type in dapp-client * Update api.gen.ts and relayer.gen.ts * Add missing chainId for dapp client event * Fix initializing new chain session manager on redirect * Add support for non-viem, custom Sequence chains (#882) * Provider sent to prepareBlankEnvelope * Update fortify.yml Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> * Add session signature decoding * Add feeTokens endpoint to relayer (#885) * const for node length * Clearer blacklist size encoding * identity signer node length * add getFeeTokens to dapp client (#889) * add getFeeTokens to dapp client * fix typo * make getFeeTokens independent of chain session manager and initialize state (#890) * make getFeeTokens independent of chain session manager and initialized state * remove getFeeTokens from chain session manager * Throw specific error when trying to sign with an expired session (#887) * Throw when supported session signer is expired * Fix tests * Make dapp-client implicit sessions chain agnostic (#893) * Add Monad, remove LAOS and Root Network * Add support for sessionless dapp connection (#896) * Refactor relayer package & update dependant packages (#891) * refactor exports for relayer (#900) * Add Arc Testnet * Fix changelog config * Sessionless connection upgrade and error handling in DappClient (#902) * dapp-client: add sessionless snapshot restore flow * Bump the npm_and_yarn group across 3 directories with 1 update Bumps the npm_and_yarn group with 1 update in the / directory: [happy-dom](https://github.com/capricorn86/happy-dom). Bumps the npm_and_yarn group with 1 update in the /packages/wallet/dapp-client directory: [happy-dom](https://github.com/capricorn86/happy-dom). Bumps the npm_and_yarn group with 1 update in the /packages/wallet/wdk directory: [happy-dom](https://github.com/capricorn86/happy-dom). Updates `happy-dom` from 17.6.3 to 20.0.2 - [Release notes](https://github.com/capricorn86/happy-dom/releases) - [Commits](https://github.com/capricorn86/happy-dom/compare/v17.6.3...v20.0.2) Updates `happy-dom` from 17.6.3 to 20.0.2 - [Release notes](https://github.com/capricorn86/happy-dom/releases) - [Commits](https://github.com/capricorn86/happy-dom/compare/v17.6.3...v20.0.2) Updates `happy-dom` from 17.6.3 to 20.0.2 - [Release notes](https://github.com/capricorn86/happy-dom/releases) - [Commits](https://github.com/capricorn86/happy-dom/compare/v17.6.3...v20.0.2) --- updated-dependencies: - dependency-name: happy-dom dependency-version: 20.0.2 dependency-type: direct:development dependency-group: npm_and_yarn - dependency-name: happy-dom dependency-version: 20.0.2 dependency-type: direct:development dependency-group: npm_and_yarn - dependency-name: happy-dom dependency-version: 20.0.2 dependency-type: direct:development dependency-group: npm_and_yarn ... Signed-off-by: dependabot[bot] * Allow to logout a wallet with skipRemoveDevice even if the wallet is not in a ready state to allow force removing of wallets (#906) * Pass request to PromptCodeHandler in guard registerUI (#909) * Pass request to PromptCodeHandler in guard registerUI * Fixing guard registerUI test * guard: allow using recovery code as 2FA token (#910) * guard: allow using recovery code as 2FA token * Cleanup types of ResponseFn --------- Co-authored-by: Corban Riley * Add a way to reset 2fa when using a backup code (#911) * Add a way to reset 2fa when using a backup code * use the GuardToken type instead of breaking out the props * Update package.json Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update SECURITY.md Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update wagmi-project/package.json Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update wagmi-project/package.json Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update wagmi-project/src/App.tsx Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Create FUNDING.json (#90) Enhancements: Include FUNDING.json to display GitHub sponsorship options in the repository Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Create config.yml (#91) Add initial CircleCI configuration to enable automated builds using a custom Docker executor and a defined workflow. Build: Add .circleci/config.yml with version 2.1 specification and custom Docker executor. CI: Define web3-defi-game-project job with checkout step. Set up my-custom-workflow to run the job. Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Add rc4 contracts * Set rc4 as default and add it to lists * Session enhanced replay protection * New sessions replay protection hashes payload * Use the 4337 factory wrapper * Update keymachine url in dapp-client constants * Update keymachine url in Provider constructor * SSR safety (#915) * SSR safety test * Fix CI job * Guard dapp-client for SSR (lazy transport, browser checks, gated storage) * Fix guard topology (#918) * Use proper guard topology * Test and fixes * login and setup tests * Switch prod manager settings (#917) * Add prod guard and identity instrument info * Remove completed TODOs * Small JS tweaks (#919) * Fix type exports to built declarations * Update repository links to current package paths * Improve Next app tooling and React typings * Expose primitives CLI bin and use base lint config * Update relayer.gen.ts and TransactionPrecondition interface * Update api.gen.ts * Update metadata.gen.ts * Update marketplace.gen.ts * Update guard.gen.ts * Support multiple identity signers in sessions configuration * Device signers can approve implicit sessions * Remove invalid test * Fix recursion * Fix comment * Improve test stability by reducing race conditions * Do not set passkey signer as identity signer * Use length checks * Throw on missing identity signer * Encoding requires identity signer to encode * Fix test * Refactor/types namings tsdoc redundant code (#880) * refactor types, namings, ts doc * fix session response payload * change parameter name * change parameter name * change type in tests * improve types and dapp client methods * fix session test to use new types * refactor * refactor implicit sessions array in chain session manager * remove unused types * remove unused types and add ConnectionError * update pnpm lock * move reusable session types to wallet-core * Update some imports and update some response type names --------- Co-authored-by: Tolgahan Arikan * Fix check for explicit session for the updated type in dapp-client * Update api.gen.ts and relayer.gen.ts * Add missing chainId for dapp client event * Fix initializing new chain session manager on redirect * Add support for non-viem, custom Sequence chains (#882) * Provider sent to prepareBlankEnvelope * Add session signature decoding * const for node length * Clearer blacklist size encoding * identity signer node length * Add feeTokens endpoint to relayer (#885) * add getFeeTokens to dapp client (#889) * add getFeeTokens to dapp client * fix typo * make getFeeTokens independent of chain session manager and initialize state (#890) * make getFeeTokens independent of chain session manager and initialized state * remove getFeeTokens from chain session manager * Throw specific error when trying to sign with an expired session (#887) * Throw when supported session signer is expired * Fix tests * Make dapp-client implicit sessions chain agnostic (#893) * Add Monad, remove LAOS and Root Network * Add support for sessionless dapp connection (#896) * Refactor relayer package & update dependant packages (#891) * refactor exports for relayer (#900) * Add Arc Testnet * Fix changelog config * Sessionless connection upgrade and error handling in DappClient (#902) * dapp-client: add sessionless snapshot restore flow * Allow to logout a wallet with skipRemoveDevice even if the wallet is not in a ready state to allow force removing of wallets (#906) * Pass request to PromptCodeHandler in guard registerUI (#909) * Pass request to PromptCodeHandler in guard registerUI * Fixing guard registerUI test * guard: allow using recovery code as 2FA token (#910) * guard: allow using recovery code as 2FA token * Cleanup types of ResponseFn --------- Co-authored-by: Corban Riley * Add a way to reset 2fa when using a backup code (#911) * Add a way to reset 2fa when using a backup code * use the GuardToken type instead of breaking out the props * Add rc4 contracts * Set rc4 as default and add it to lists * Session enhanced replay protection * New sessions replay protection hashes payload * Use the 4337 factory wrapper * Update keymachine url in dapp-client constants * Update keymachine url in Provider constructor * SSR safety (#915) * Guard dapp-client for SSR (lazy transport, browser checks, gated storage) * Fix guard topology (#918) * Use proper guard topology * Test and fixes * login and setup tests * Switch prod manager settings (#917) * Add prod guard and identity instrument info * Remove completed TODOs * Small JS tweaks (#919) * Fix type exports to built declarations * Update repository links to current package paths * Improve Next app tooling and React typings * Expose primitives CLI bin and use base lint config * Update relayer.gen.ts and TransactionPrecondition interface * Update relayer.gen.ts and TransactionPrecondition interface (#920) * 3.0.0-beta.1 * identity-instrument: generate nonce from current time (#921) * Remove publish-dists.yml github action (#923) * 3.0.0-beta.2 * Clean up changeset config * Improve test stability by removing race conditions * Ensure build before test * Updating happy-dom to 20.0.10 (#926) * Add support for custom auth providers (authcode & authcode-pkce only) (#894) * Add support for custom auth providers (authcode & authcode-pkce only) * fix authcode tests * Updating Deps November 2025 (#927) * Updating deps for the workspace root * Updating deps for wallet/wdk * Fixing sessions test for latest vitest * Lets not upgrade to the latest typescript quite yet * Updating to latest vitest * Updating deps for wallet/core * Updating deps for wallet/primitives-cli * Updating deps for wallet/dapp-client * Adding syncpack to check for dep version inconsistencies * Setup syncpack versionGroups for pnpm workspace:^ * Fixing dep versions mismatches * Fixing @types/node mismatches * Adding syncpack to pre commit hook * Remove the syncpack format script. * Update ox to v9.17.0 (#928) * Upgrading ox to 9.17.0 * WrappedSignature renamed to SignatureErc6492 * Fixing PasskeySignatureValidator interface * Lock ox lib dep to use the same version with pnpm overrides and update viem to latest * Fix explicitSessionRequested check in dapp client * Typescript 5.9.3 (#930) * Upgrading to typescript v5.9.3 * Fix type errors that arose from typescript upgrade related to Bytes and Buffer source typings. * Don't catch errors thrown by Guard 2FA or reject early to allow multiple attempts on incorrect TOTP (#931) * Update pnpm * Mark @0xsequence/wallet-primitives-cli as private * 3.0.0-beta.3 * changeset cleanup * Fix rc4 4337 factory (#933) * Add rc5 and set it as default (#934) * 3.0.0-beta.4 * Update SECURITY.md Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update wagmi-project/package.json Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update wagmi-project/package.json Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Bump next from 15.5.5 to 15.5.7 (#936) Bumps [next](https://github.com/vercel/next.js) from 15.5.5 to 15.5.7. - [Release notes](https://github.com/vercel/next.js/releases) - [Changelog](https://github.com/vercel/next.js/blob/canary/release.js) - [Commits](https://github.com/vercel/next.js/compare/v15.5.5...v15.5.7) --- updated-dependencies: - dependency-name: next dependency-version: 15.5.7 dependency-type: direct:production ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * add userdata service client (#940) * Skip LocalDevice identity signers not on current device (#942) * Skip LocalDevice identity signers not on current device * Update log * 3.0.0-beta.5 * Update config.yml (#102) * Update config.yml Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update .circleci/config.yml Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> --------- Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com> * Update config.yml (#103) * Update config.yml Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update .circleci/config.yml Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> --------- Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com> * fix: extras/web/package.json to reduce vulnerabilities (#101) The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JS-NEXT-14173355 Co-authored-by: snyk-io[bot] <141718529+snyk-io[bot]@users.noreply.github.com> * fix: extras/docs/package.json to reduce vulnerabilities (#100) The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JS-NEXT-14173355 Co-authored-by: snyk-io[bot] <141718529+snyk-io[bot]@users.noreply.github.com> * fix: package.json to reduce vulnerabilities (#104) The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JS-BABELHELPERS-9397697 - https://snyk.io/vuln/SNYK-JS-BABELRUNTIME-10044504 - https://snyk.io/vuln/SNYK-JS-BRACEEXPANSION-9789073 - https://snyk.io/vuln/SNYK-JS-CROSSSPAWN-8303230 - https://snyk.io/vuln/SNYK-JS-ELLIPTIC-7577916 - https://snyk.io/vuln/SNYK-JS-ELLIPTIC-7577917 - https://snyk.io/vuln/SNYK-JS-ELLIPTIC-7577918 - https://snyk.io/vuln/SNYK-JS-ELLIPTIC-8187303 - https://snyk.io/vuln/SNYK-JS-ELLIPTIC-8720086 - https://snyk.io/vuln/SNYK-JS-IMAGESIZE-9634164 - https://snyk.io/vuln/SNYK-JS-INFLIGHT-6095116 - https://snyk.io/vuln/SNYK-JS-JSYAML-13961110 - https://snyk.io/vuln/SNYK-JS-MICROMATCH-6838728 - https://snyk.io/vuln/SNYK-JS-NODEFORGE-14114940 - https://snyk.io/vuln/SNYK-JS-NODEFORGE-14125097 - https://snyk.io/vuln/SNYK-JS-NODEFORGE-14125745 - https://snyk.io/vuln/SNYK-JS-ONHEADERS-10773729 - https://snyk.io/vuln/SNYK-JS-ROLLUP-8073097 - https://snyk.io/vuln/SNYK-JS-SECP256K1-8237220 - https://snyk.io/vuln/SNYK-JS-SEND-7926862 - https://snyk.io/vuln/SNYK-JS-SERVESTATIC-7926865 - https://snyk.io/vuln/SNYK-JS-SHAJS-12089400 Co-authored-by: snyk-io[bot] <141718529+snyk-io[bot]@users.noreply.github.com> * Revert "Merge remote-tracking branch 'origin/dependabot/npm_and_yarn/npm_and_yarn-318c02e2da'" This reverts commit fd0fdf9ecc6ad9056447e381de7fc5bb19f78e47, reversing changes made to cba78943db9942a4635bb530b7a43fc5d18b0ab4. * fix: extras/web/package.json to reduce vulnerabilities (#109) The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JS-NEXT-14173355 Co-authored-by: snyk-bot * fix: extras/docs/package.json to reduce vulnerabilities (#106) The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JS-NEXT-14400636 - https://snyk.io/vuln/SNYK-JS-NEXT-14400644 Co-authored-by: snyk-bot * Bump next in the npm_and_yarn group across 1 directory (#110) Bumps the npm_and_yarn group with 1 update in the / directory: [next](https://github.com/vercel/next.js). Updates `next` from 15.5.7 to 15.5.9 - [Release notes](https://github.com/vercel/next.js/releases) - [Changelog](https://github.com/vercel/next.js/blob/canary/release.js) - [Commits](https://github.com/vercel/next.js/compare/v15.5.7...v15.5.9) --- updated-dependencies: - dependency-name: next dependency-version: 15.5.9 dependency-type: direct:production dependency-group: npm_and_yarn ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Delete .github/workflows/fortify.yml (#111) Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * fix: extras/web/package.json to reduce vulnerabilities (#107) The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JS-NEXT-14400636 - https://snyk.io/vuln/SNYK-JS-NEXT-14400644 Co-authored-by: snyk-bot * Bump the npm_and_yarn group across 1 directory with 3 updates (#115) Bumps the npm_and_yarn group with 1 update in the / directory: [next](https://github.com/vercel/next.js). Updates `next` from 15.5.5 to 15.5.9 - [Release notes](https://github.com/vercel/next.js/releases) - [Changelog](https://github.com/vercel/next.js/blob/canary/release.js) - [Commits](https://github.com/vercel/next.js/compare/v15.5.5...v15.5.9) Updates `happy-dom` from 17.6.3 to 20.0.11 - [Release notes](https://github.com/capricorn86/happy-dom/releases) - [Commits](https://github.com/capricorn86/happy-dom/compare/v17.6.3...v20.0.11) Updates `vite` from 7.1.10 to 7.2.7 - [Release notes](https://github.com/vitejs/vite/releases) - [Changelog](https://github.com/vitejs/vite/blob/v7.2.7/packages/vite/CHANGELOG.md) - [Commits](https://github.com/vitejs/vite/commits/v7.2.7/packages/vite) --- updated-dependencies: - dependency-name: next dependency-version: 15.5.9 dependency-type: direct:production dependency-group: npm_and_yarn - dependency-name: happy-dom dependency-version: 20.0.11 dependency-type: direct:development dependency-group: npm_and_yarn - dependency-name: vite dependency-version: 7.2.7 dependency-type: indirect dependency-group: npm_and_yarn ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Bump next from 15.5.7 to 15.5.9 (#944) Bumps [next](https://github.com/vercel/next.js) from 15.5.7 to 15.5.9. - [Release notes](https://github.com/vercel/next.js/releases) - [Changelog](https://github.com/vercel/next.js/blob/canary/release.js) - [Commits](https://github.com/vercel/next.js/compare/v15.5.7...v15.5.9) --- updated-dependencies: - dependency-name: next dependency-version: 15.5.9 dependency-type: direct:production ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Pin foundry to v1.5.0 instead of nightly (#947) * Include repo and extras in syncpack config to ensure deps are synced (#945) * Include repo and extras in syncpack config to ensure deps are synced across all * Updating support deps * Updating deps * Updating pnpm lock * Fixing type errors within wdk tests * Short circuit 404s (#949) * skip witness on signers that don't support it * add passkey to test * 3.0.0-beta.6 * Update tests.yml (#119) Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update config.yml (#120) Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update packages/services/identity-instrument/src/index.ts Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> --------- Signed-off-by: dependabot[bot] Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: snyk-bot Co-authored-by: Michael Standen Co-authored-by: Gabi <56271768+VGabriel45@users.noreply.github.com> Co-authored-by: Tolgahan Arikan Co-authored-by: Taylan Pince Co-authored-by: Corban Brook Co-authored-by: Patryk Kalinowski Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Co-authored-by: Agusx1211 Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com> Co-authored-by: snyk-io[bot] <141718529+snyk-io[bot]@users.noreply.github.com> * Update wagmi-project/src/main.tsx Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update wagmi-project/package.json Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update wagmi-project/package.json Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * fix: extras/docs/package.json to reduce vulnerabilities (#116) The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JS-NEXT-14400636 - https://snyk.io/vuln/SNYK-JS-NEXT-14400644 Co-authored-by: snyk-io[bot] <141718529+snyk-io[bot]@users.noreply.github.com> Co-authored-by: dargon789 <64915515+Dargon789@users.noreply.github.com> --------- Signed-off-by: dependabot[bot] Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: snyk-bot Co-authored-by: Michael Standen Co-authored-by: Gabi <56271768+VGabriel45@users.noreply.github.com> Co-authored-by: Tolgahan Arikan Co-authored-by: Taylan Pince Co-authored-by: Corban Brook Co-authored-by: Patryk Kalinowski Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Co-authored-by: Agusx1211 Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com> Co-authored-by: snyk-io[bot] <141718529+snyk-io[bot]@users.noreply.github.com> * Update wagmi-project/src/App.tsx Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update wagmi-project/src/App.tsx Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update wagmi-project/src/App.tsx Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update wagmi-project/src/App.tsx Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * 2.3.7 (#131) (#132) * 2.3.7 (#131) * fix broken guard private key * Expose access to passkey credential list * Dapp client direct txn request (#856) * Signature request refactor * WIP * Refactor * Update dapp-client exports (#858) * Add hasPermission method to DappClient (#859) * Save discovered passkey credentials upon login * Expose name property in PasskeySignupArgs * Fix blacklist sort * Add multi server script * relayer: /SimulateV3 (#857) * Add await for handleOpenDB scheduleExpiration * Update increment to always include native once used * Fix session tests * Adding lastLoginAt to PasskeyCredential * LoginToPasskeyArgs now accept a credentialId which is used to specify which credential to use * Adding onSignatureRequestStatus function to register single use callbacks for when a request reaches a terminal state of completed or cancelled * When a login is cancelled we can remove the wallet which is logging-in * Add RC3 contracts * Sessions space restriction * Dedupe signers for encoding * Support RC3 sessions * Tightly increment call validation * CLI defaults to RC3 wallet code * Rc3 address test * Fix hashing tests * Add deprecated encoding test * wdk: throw errors from otp respond callback (#864) * wdk: throw errors from otp respond callback * wdk: otp auth error and handler refactor * Handle guard 2FA (#861) * guard: return a specific error when auth required * core: pass guard token to the service * wdk: handle prompting for guard 2FA code * dapp-client: handle prompting for guard 2FA code * guard 2fa tests * wdk: separate wallet and sessions guards * dapp-client: remove guard 2fa * dapp-client: fix imports * fix guard tests * wdk: remove unneeded promise resolve * Update relayer and api gen.ts, force public packages * Add standalone fetch queued payloads * Replacing GuardRole enum with string union type, as well as replacing guardAddresses Map with Record * Fallback to chain for non-logged in recovery * Add Katana, Sandbox Tesnet, Incentiv Testnet v2 (#873) * Update a few remaining dev1 contract addresses to rc3 (#874) * Remove unnecessary console.error where we already throw error * Improve DappClient hasPermission method * Wallet db try checksum and lowercase * Update dapp client json utils to include Map reviver and replacer * Bump next in the npm_and_yarn group across 1 directory Bumps the npm_and_yarn group with 1 update in the / directory: [next](https://github.com/vercel/next.js). Updates `next` from 15.4.2 to 15.4.7 - [Release notes](https://github.com/vercel/next.js/releases) - [Changelog](https://github.com/vercel/next.js/blob/canary/release.js) - [Commits](https://github.com/vercel/next.js/compare/v15.4.2...v15.4.7) --- updated-dependencies: - dependency-name: next dependency-version: 15.4.7 dependency-type: direct:production dependency-group: npm_and_yarn ... Signed-off-by: dependabot[bot] * Update type name, update exports for dapp client * Expired explicit sessions can't sign * Improve session validity test * session isValid returns invalid reason * InvalidReason is typed * Support multiple identity signers in sessions configuration * Device signers can approve implicit sessions * Remove invalid test * Fix recursion * Fix comment * Improve test stability by reducing race conditions * Do not set passkey signer as identity signer * Use length checks * Throw on missing identity signer * Encoding requires identity signer to encode * Fix test * Refactor/types namings tsdoc redundant code (#880) * refactor types, namings, ts doc * fix session response payload * change parameter name * change parameter name * change type in tests * improve types and dapp client methods * fix session test to use new types * refactor * refactor implicit sessions array in chain session manager * remove unused types * remove unused types and add ConnectionError * update pnpm lock * move reusable session types to wallet-core * Update some imports and update some response type names --------- Co-authored-by: Tolgahan Arikan * Fix check for explicit session for the updated type in dapp-client * Update api.gen.ts and relayer.gen.ts * Add missing chainId for dapp client event * Fix initializing new chain session manager on redirect * Add support for non-viem, custom Sequence chains (#882) * Update issue templates * Provider sent to prepareBlankEnvelope * Add session signature decoding * Add feeTokens endpoint to relayer (#885) * const for node length * Clearer blacklist size encoding * identity signer node length * Potential fix for code scanning alert no. 84: Insecure randomness Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> * add getFeeTokens to dapp client (#889) * add getFeeTokens to dapp client * fix typo * make getFeeTokens independent of chain session manager and initialize state (#890) * make getFeeTokens independent of chain session manager and initialized state * remove getFeeTokens from chain session manager * Throw specific error when trying to sign with an expired session (#887) * Throw when supported session signer is expired * Fix tests * Make dapp-client implicit sessions chain agnostic (#893) * Add Monad, remove LAOS and Root Network * Bump the npm_and_yarn group across 3 directories with 1 update Bumps the npm_and_yarn group with 1 update in the / directory: [happy-dom](https://github.com/capricorn86/happy-dom). Bumps the npm_and_yarn group with 1 update in the /packages/wallet/dapp-client directory: [happy-dom](https://github.com/capricorn86/happy-dom). Bumps the npm_and_yarn group with 1 update in the /packages/wallet/wdk directory: [happy-dom](https://github.com/capricorn86/happy-dom). Updates `happy-dom` from 17.6.3 to 20.0.0 - [Release notes](https://github.com/capricorn86/happy-dom/releases) - [Commits](https://github.com/capricorn86/happy-dom/compare/v17.6.3...v20.0.0) Updates `happy-dom` from 17.6.3 to 20.0.0 - [Release notes](https://github.com/capricorn86/happy-dom/releases) - [Commits](https://github.com/capricorn86/happy-dom/compare/v17.6.3...v20.0.0) Updates `happy-dom` from 17.6.3 to 20.0.0 - [Release notes](https://github.com/capricorn86/happy-dom/releases) - [Commits](https://github.com/capricorn86/happy-dom/compare/v17.6.3...v20.0.0) --- updated-dependencies: - dependency-name: happy-dom dependency-version: 20.0.0 dependency-type: direct:development dependency-group: npm_and_yarn - dependency-name: happy-dom dependency-version: 20.0.0 dependency-type: direct:development dependency-group: npm_and_yarn - dependency-name: happy-dom dependency-version: 20.0.0 dependency-type: direct:development dependency-group: npm_and_yarn ... Signed-off-by: dependabot[bot] * Bump happy-dom in the npm_and_yarn group across 1 directory (#69) Bumps the npm_and_yarn group with 1 update in the / directory: [happy-dom](https://github.com/capricorn86/happy-dom). Updates `happy-dom` from 20.0.0 to 20.0.2 - [Release notes](https://github.com/capricorn86/happy-dom/releases) - [Commits](https://github.com/capricorn86/happy-dom/compare/v20.0.0...v20.0.2) --- updated-dependencies: - dependency-name: happy-dom dependency-version: 20.0.2 dependency-type: direct:development dependency-group: npm_and_yarn ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Create SECURITY.md for security policy (#70) * Create SECURITY.md for security policy Add a security policy document outlining supported versions and vulnerability reporting. Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> * Update SECURITY.md Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> * Update SECURITY.md Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> --------- Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> * Update SECURITY.md Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> * Add support for sessionless dapp connection (#896) * Refactor relayer package & update dependant packages (#891) * refactor exports for relayer (#900) * Add Arc Testnet * Fix changelog config * Sessionless connection upgrade and error handling in DappClient (#902) * dapp-client: add sessionless snapshot restore flow * Bump the npm_and_yarn group across 3 directories with 1 update Bumps the npm_and_yarn group with 1 update in the / directory: [happy-dom](https://github.com/capricorn86/happy-dom). Bumps the npm_and_yarn group with 1 update in the /packages/wallet/dapp-client directory: [happy-dom](https://github.com/capricorn86/happy-dom). Bumps the npm_and_yarn group with 1 update in the /packages/wallet/wdk directory: [happy-dom](https://github.com/capricorn86/happy-dom). Updates `happy-dom` from 17.6.3 to 20.0.2 - [Release notes](https://github.com/capricorn86/happy-dom/releases) - [Commits](https://github.com/capricorn86/happy-dom/compare/v17.6.3...v20.0.2) Updates `happy-dom` from 17.6.3 to 20.0.2 - [Release notes](https://github.com/capricorn86/happy-dom/releases) - [Commits](https://github.com/capricorn86/happy-dom/compare/v17.6.3...v20.0.2) Updates `happy-dom` from 17.6.3 to 20.0.2 - [Release notes](https://github.com/capricorn86/happy-dom/releases) - [Commits](https://github.com/capricorn86/happy-dom/compare/v17.6.3...v20.0.2) --- updated-dependencies: - dependency-name: happy-dom dependency-version: 20.0.2 dependency-type: direct:development dependency-group: npm_and_yarn - dependency-name: happy-dom dependency-version: 20.0.2 dependency-type: direct:development dependency-group: npm_and_yarn - dependency-name: happy-dom dependency-version: 20.0.2 dependency-type: direct:development dependency-group: npm_and_yarn ... Signed-off-by: dependabot[bot] * Allow to logout a wallet with skipRemoveDevice even if the wallet is not in a ready state to allow force removing of wallets (#906) * Pass request to PromptCodeHandler in guard registerUI (#909) * Pass request to PromptCodeHandler in guard registerUI * Fixing guard registerUI test * guard: allow using recovery code as 2FA token (#910) * guard: allow using recovery code as 2FA token * Cleanup types of ResponseFn --------- Co-authored-by: Corban Riley * Add a way to reset 2fa when using a backup code (#911) * Add a way to reset 2fa when using a backup code * use the GuardToken type instead of breaking out the props * Update SECURITY.md Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update packages/wallet/dapp-client/src/DappTransport.ts Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update package.json Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update SECURITY.md Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update wagmi-project/package.json Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update wagmi-project/package.json Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update wagmi-project/src/App.tsx Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Create FUNDING.json (#90) Enhancements: Include FUNDING.json to display GitHub sponsorship options in the repository Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Create config.yml (#91) Add initial CircleCI configuration to enable automated builds using a custom Docker executor and a defined workflow. Build: Add .circleci/config.yml with version 2.1 specification and custom Docker executor. CI: Define web3-defi-game-project job with checkout step. Set up my-custom-workflow to run the job. Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Add rc4 contracts * Set rc4 as default and add it to lists * Session enhanced replay protection * New sessions replay protection hashes payload * Use the 4337 factory wrapper * Update keymachine url in dapp-client constants * Update keymachine url in Provider constructor * SSR safety (#915) * SSR safety test * Fix CI job * Guard dapp-client for SSR (lazy transport, browser checks, gated storage) * Fix guard topology (#918) * Use proper guard topology * Test and fixes * login and setup tests * Switch prod manager settings (#917) * Add prod guard and identity instrument info * Remove completed TODOs * Small JS tweaks (#919) * Fix type exports to built declarations * Update repository links to current package paths * Improve Next app tooling and React typings * Expose primitives CLI bin and use base lint config * Update relayer.gen.ts and TransactionPrecondition interface * Update api.gen.ts * Update metadata.gen.ts * Update marketplace.gen.ts * Update guard.gen.ts * Support multiple identity signers in sessions configuration * Device signers can approve implicit sessions * Remove invalid test * Fix recursion * Fix comment * Improve test stability by reducing race conditions * Do not set passkey signer as identity signer * Use length checks * Throw on missing identity signer * Encoding requires identity signer to encode * Fix test * Refactor/types namings tsdoc redundant code (#880) * refactor types, namings, ts doc * fix session response payload * change parameter name * change parameter name * change type in tests * improve types and dapp client methods * fix session test to use new types * refactor * refactor implicit sessions array in chain session manager * remove unused types * remove unused types and add ConnectionError * update pnpm lock * move reusable session types to wallet-core * Update some imports and update some response type names --------- Co-authored-by: Tolgahan Arikan * Fix check for explicit session for the updated type in dapp-client * Update api.gen.ts and relayer.gen.ts * Add missing chainId for dapp client event * Fix initializing new chain session manager on redirect * Add support for non-viem, custom Sequence chains (#882) * Provider sent to prepareBlankEnvelope * Add session signature decoding * const for node length * Clearer blacklist size encoding * identity signer node length * Add feeTokens endpoint to relayer (#885) * add getFeeTokens to dapp client (#889) * add getFeeTokens to dapp client * fix typo * make getFeeTokens independent of chain session manager and initialize state (#890) * make getFeeTokens independent of chain session manager and initialized state * remove getFeeTokens from chain session manager * Throw specific error when trying to sign with an expired session (#887) * Throw when supported session signer is expired * Fix tests * Make dapp-client implicit sessions chain agnostic (#893) * Add Monad, remove LAOS and Root Network * Add support for sessionless dapp connection (#896) * Refactor relayer package & update dependant packages (#891) * refactor exports for relayer (#900) * Add Arc Testnet * Fix changelog config * Sessionless connection upgrade and error handling in DappClient (#902) * dapp-client: add sessionless snapshot restore flow * Allow to logout a wallet with skipRemoveDevice even if the wallet is not in a ready state to allow force removing of wallets (#906) * Pass request to PromptCodeHandler in guard registerUI (#909) * Pass request to PromptCodeHandler in guard registerUI * Fixing guard registerUI test * guard: allow using recovery code as 2FA token (#910) * guard: allow using recovery code as 2FA token * Cleanup types of ResponseFn --------- Co-authored-by: Corban Riley * Add a way to reset 2fa when using a backup code (#911) * Add a way to reset 2fa when using a backup code * use the GuardToken type instead of breaking out the props * Add rc4 contracts * Set rc4 as default and add it to lists * Session enhanced replay protection * New sessions replay protection hashes payload * Use the 4337 factory wrapper * Update keymachine url in dapp-client constants * Update keymachine url in Provider constructor * SSR safety (#915) * Guard dapp-client for SSR (lazy transport, browser checks, gated storage) * Fix guard topology (#918) * Use proper guard topology * Test and fixes * login and setup tests * Switch prod manager settings (#917) * Add prod guard and identity instrument info * Remove completed TODOs * Small JS tweaks (#919) * Fix type exports to built declarations * Update repository links to current package paths * Improve Next app tooling and React typings * Expose primitives CLI bin and use base lint config * Update relayer.gen.ts and TransactionPrecondition interface * Update relayer.gen.ts and TransactionPrecondition interface (#920) * 3.0.0-beta.1 * identity-instrument: generate nonce from current time (#921) * Remove publish-dists.yml github action (#923) * 3.0.0-beta.2 * Clean up changeset config * Improve test stability by removing race conditions * Ensure build before test * Updating happy-dom to 20.0.10 (#926) * Add support for custom auth providers (authcode & authcode-pkce only) (#894) * Add support for custom auth providers (authcode & authcode-pkce only) * fix authcode tests * Updating Deps November 2025 (#927) * Updating deps for the workspace root * Updating deps for wallet/wdk * Fixing sessions test for latest vitest * Lets not upgrade to the latest typescript quite yet * Updating to latest vitest * Updating deps for wallet/core * Updating deps for wallet/primitives-cli * Updating deps for wallet/dapp-client * Adding syncpack to check for dep version inconsistencies * Setup syncpack versionGroups for pnpm workspace:^ * Fixing dep versions mismatches * Fixing @types/node mismatches * Adding syncpack to pre commit hook * Remove the syncpack format script. * Update ox to v9.17.0 (#928) * Upgrading ox to 9.17.0 * WrappedSignature renamed to SignatureErc6492 * Fixing PasskeySignatureValidator interface * Lock ox lib dep to use the same version with pnpm overrides and update viem to latest * Fix explicitSessionRequested check in dapp client * Typescript 5.9.3 (#930) * Upgrading to typescript v5.9.3 * Fix type errors that arose from typescript upgrade related to Bytes and Buffer source typings. * Don't catch errors thrown by Guard 2FA or reject early to allow multiple attempts on incorrect TOTP (#931) * Update pnpm * Mark @0xsequence/wallet-primitives-cli as private * 3.0.0-beta… * Create solidity-files-cache.json * 0xsequence/sequence.js/master (#255) * Pin foundry to v1.5.0 instead of nightly (0xsequence#947) (#134) * Bump next from 15.5.7 to 15.5.9 (#944) Bumps [next](https://github.com/vercel/next.js) from 15.5.7 to 15.5.9. - [Release notes](https://github.com/vercel/next.js/releases) - [Changelog](https://github.com/vercel/next.js/blob/canary/release.js) - [Commits](https://github.com/vercel/next.js/compare/v15.5.7...v15.5.9) --- updated-dependencies: - dependency-name: next dependency-version: 15.5.9 dependency-type: direct:production ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Pin foundry to v1.5.0 instead of nightly (#947) * Include repo and extras in syncpack config to ensure deps are synced (#945) * Include repo and extras in syncpack config to ensure deps are synced across all * Updating support deps * Updating deps * Updating pnpm lock * Fixing type errors within wdk tests * Short circuit 404s (#949) * skip witness on signers that don't support it * add passkey to test * 3.0.0-beta.6 --------- Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Taylan Pince Co-authored-by: Corban Riley Co-authored-by: Agusx1211 * Update packages/wallet/wdk/test/wallets.test.ts Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update packages/wallet/wdk/test/wallets.test.ts Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Create solidity-files-cache.json --------- Signed-off-by: dependabot[bot] Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Taylan Pince Co-authored-by: Corban Riley Co-authored-by: Agusx1211 Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> * Delete .circleci directory (#267) CI: Delete obsolete .circleci/config.yml to fully remove CircleCI configuration from the project. Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * 0xsequence/master (#270) * 2.3.7 (#131) * fix broken guard private key * Expose access to passkey credential list * Dapp client direct txn request (#856) * Signature request refactor * WIP * Refactor * Update dapp-client exports (#858) * Add hasPermission method to DappClient (#859) * Save discovered passkey credentials upon login * Expose name property in PasskeySignupArgs * Fix blacklist sort * Add multi server script * relayer: /SimulateV3 (#857) * Add await for handleOpenDB scheduleExpiration * Update increment to always include native once used * Fix session tests * Adding lastLoginAt to PasskeyCredential * LoginToPasskeyArgs now accept a credentialId which is used to specify which credential to use * Adding onSignatureRequestStatus function to register single use callbacks for when a request reaches a terminal state of completed or cancelled * When a login is cancelled we can remove the wallet which is logging-in * Add RC3 contracts * Sessions space restriction * Dedupe signers for encoding * Support RC3 sessions * Tightly increment call validation * CLI defaults to RC3 wallet code * Rc3 address test * Fix hashing tests * Add deprecated encoding test * wdk: throw errors from otp respond callback (#864) * wdk: throw errors from otp respond callback * wdk: otp auth error and handler refactor * Handle guard 2FA (#861) * guard: return a specific error when auth required * core: pass guard token to the service * wdk: handle prompting for guard 2FA code * dapp-client: handle prompting for guard 2FA code * guard 2fa tests * wdk: separate wallet and sessions guards * dapp-client: remove guard 2fa * dapp-client: fix imports * fix guard tests * wdk: remove unneeded promise resolve * Update relayer and api gen.ts, force public packages * Add standalone fetch queued payloads * Replacing GuardRole enum with string union type, as well as replacing guardAddresses Map with Record * Fallback to chain for non-logged in recovery * Add Katana, Sandbox Tesnet, Incentiv Testnet v2 (#873) * Update a few remaining dev1 contract addresses to rc3 (#874) * Remove unnecessary console.error where we already throw error * Improve DappClient hasPermission method * Wallet db try checksum and lowercase * Update dapp client json utils to include Map reviver and replacer * Bump next in the npm_and_yarn group across 1 directory Bumps the npm_and_yarn group with 1 update in the / directory: [next](https://github.com/vercel/next.js). Updates `next` from 15.4.2 to 15.4.7 - [Release notes](https://github.com/vercel/next.js/releases) - [Changelog](https://github.com/vercel/next.js/blob/canary/release.js) - [Commits](https://github.com/vercel/next.js/compare/v15.4.2...v15.4.7) --- updated-dependencies: - dependency-name: next dependency-version: 15.4.7 dependency-type: direct:production dependency-group: npm_and_yarn ... Signed-off-by: dependabot[bot] * Update type name, update exports for dapp client * Expired explicit sessions can't sign * Improve session validity test * session isValid returns invalid reason * InvalidReason is typed * Support multiple identity signers in sessions configuration * Device signers can approve implicit sessions * Remove invalid test * Fix recursion * Fix comment * Improve test stability by reducing race conditions * Do not set passkey signer as identity signer * Use length checks * Throw on missing identity signer * Encoding requires identity signer to encode * Fix test * Refactor/types namings tsdoc redundant code (#880) * refactor types, namings, ts doc * fix session response payload * change parameter name * change parameter name * change type in tests * improve types and dapp client methods * fix session test to use new types * refactor * refactor implicit sessions array in chain session manager * remove unused types * remove unused types and add ConnectionError * update pnpm lock * move reusable session types to wallet-core * Update some imports and update some response type names --------- Co-authored-by: Tolgahan Arikan * Fix check for explicit session for the updated type in dapp-client * Update api.gen.ts and relayer.gen.ts * Add missing chainId for dapp client event * Fix initializing new chain session manager on redirect * Add support for non-viem, custom Sequence chains (#882) * Update issue templates * Provider sent to prepareBlankEnvelope * Add session signature decoding * Add feeTokens endpoint to relayer (#885) * const for node length * Clearer blacklist size encoding * identity signer node length * Potential fix for code scanning alert no. 84: Insecure randomness Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> * add getFeeTokens to dapp client (#889) * add getFeeTokens to dapp client * fix typo * make getFeeTokens independent of chain session manager and initialize state (#890) * make getFeeTokens independent of chain session manager and initialized state * remove getFeeTokens from chain session manager * Throw specific error when trying to sign with an expired session (#887) * Throw when supported session signer is expired * Fix tests * Make dapp-client implicit sessions chain agnostic (#893) * Add Monad, remove LAOS and Root Network * Bump the npm_and_yarn group across 3 directories with 1 update Bumps the npm_and_yarn group with 1 update in the / directory: [happy-dom](https://github.com/capricorn86/happy-dom). Bumps the npm_and_yarn group with 1 update in the /packages/wallet/dapp-client directory: [happy-dom](https://github.com/capricorn86/happy-dom). Bumps the npm_and_yarn group with 1 update in the /packages/wallet/wdk directory: [happy-dom](https://github.com/capricorn86/happy-dom). Updates `happy-dom` from 17.6.3 to 20.0.0 - [Release notes](https://github.com/capricorn86/happy-dom/releases) - [Commits](https://github.com/capricorn86/happy-dom/compare/v17.6.3...v20.0.0) Updates `happy-dom` from 17.6.3 to 20.0.0 - [Release notes](https://github.com/capricorn86/happy-dom/releases) - [Commits](https://github.com/capricorn86/happy-dom/compare/v17.6.3...v20.0.0) Updates `happy-dom` from 17.6.3 to 20.0.0 - [Release notes](https://github.com/capricorn86/happy-dom/releases) - [Commits](https://github.com/capricorn86/happy-dom/compare/v17.6.3...v20.0.0) --- updated-dependencies: - dependency-name: happy-dom dependency-version: 20.0.0 dependency-type: direct:development dependency-group: npm_and_yarn - dependency-name: happy-dom dependency-version: 20.0.0 dependency-type: direct:development dependency-group: npm_and_yarn - dependency-name: happy-dom dependency-version: 20.0.0 dependency-type: direct:development dependency-group: npm_and_yarn ... Signed-off-by: dependabot[bot] * Bump happy-dom in the npm_and_yarn group across 1 directory (#69) Bumps the npm_and_yarn group with 1 update in the / directory: [happy-dom](https://github.com/capricorn86/happy-dom). Updates `happy-dom` from 20.0.0 to 20.0.2 - [Release notes](https://github.com/capricorn86/happy-dom/releases) - [Commits](https://github.com/capricorn86/happy-dom/compare/v20.0.0...v20.0.2) --- updated-dependencies: - dependency-name: happy-dom dependency-version: 20.0.2 dependency-type: direct:development dependency-group: npm_and_yarn ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Create SECURITY.md for security policy (#70) * Create SECURITY.md for security policy Add a security policy document outlining supported versions and vulnerability reporting. Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> * Update SECURITY.md Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> * Update SECURITY.md Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> --------- Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> * Update SECURITY.md Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> * Add support for sessionless dapp connection (#896) * Refactor relayer package & update dependant packages (#891) * refactor exports for relayer (#900) * Add Arc Testnet * Fix changelog config * Sessionless connection upgrade and error handling in DappClient (#902) * dapp-client: add sessionless snapshot restore flow * Bump the npm_and_yarn group across 3 directories with 1 update Bumps the npm_and_yarn group with 1 update in the / directory: [happy-dom](https://github.com/capricorn86/happy-dom). Bumps the npm_and_yarn group with 1 update in the /packages/wallet/dapp-client directory: [happy-dom](https://github.com/capricorn86/happy-dom). Bumps the npm_and_yarn group with 1 update in the /packages/wallet/wdk directory: [happy-dom](https://github.com/capricorn86/happy-dom). Updates `happy-dom` from 17.6.3 to 20.0.2 - [Release notes](https://github.com/capricorn86/happy-dom/releases) - [Commits](https://github.com/capricorn86/happy-dom/compare/v17.6.3...v20.0.2) Updates `happy-dom` from 17.6.3 to 20.0.2 - [Release notes](https://github.com/capricorn86/happy-dom/releases) - [Commits](https://github.com/capricorn86/happy-dom/compare/v17.6.3...v20.0.2) Updates `happy-dom` from 17.6.3 to 20.0.2 - [Release notes](https://github.com/capricorn86/happy-dom/releases) - [Commits](https://github.com/capricorn86/happy-dom/compare/v17.6.3...v20.0.2) --- updated-dependencies: - dependency-name: happy-dom dependency-version: 20.0.2 dependency-type: direct:development dependency-group: npm_and_yarn - dependency-name: happy-dom dependency-version: 20.0.2 dependency-type: direct:development dependency-group: npm_and_yarn - dependency-name: happy-dom dependency-version: 20.0.2 dependency-type: direct:development dependency-group: npm_and_yarn ... Signed-off-by: dependabot[bot] * Allow to logout a wallet with skipRemoveDevice even if the wallet is not in a ready state to allow force removing of wallets (#906) * Pass request to PromptCodeHandler in guard registerUI (#909) * Pass request to PromptCodeHandler in guard registerUI * Fixing guard registerUI test * guard: allow using recovery code as 2FA token (#910) * guard: allow using recovery code as 2FA token * Cleanup types of ResponseFn --------- Co-authored-by: Corban Riley * Add a way to reset 2fa when using a backup code (#911) * Add a way to reset 2fa when using a backup code * use the GuardToken type instead of breaking out the props * Update SECURITY.md Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update packages/wallet/dapp-client/src/DappTransport.ts Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update package.json Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update SECURITY.md Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update wagmi-project/package.json Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update wagmi-project/package.json Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update wagmi-project/src/App.tsx Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Create FUNDING.json (#90) Enhancements: Include FUNDING.json to display GitHub sponsorship options in the repository Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Create config.yml (#91) Add initial CircleCI configuration to enable automated builds using a custom Docker executor and a defined workflow. Build: Add .circleci/config.yml with version 2.1 specification and custom Docker executor. CI: Define web3-defi-game-project job with checkout step. Set up my-custom-workflow to run the job. Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Add rc4 contracts * Set rc4 as default and add it to lists * Session enhanced replay protection * New sessions replay protection hashes payload * Use the 4337 factory wrapper * Update keymachine url in dapp-client constants * Update keymachine url in Provider constructor * SSR safety (#915) * SSR safety test * Fix CI job * Guard dapp-client for SSR (lazy transport, browser checks, gated storage) * Fix guard topology (#918) * Use proper guard topology * Test and fixes * login and setup tests * Switch prod manager settings (#917) * Add prod guard and identity instrument info * Remove completed TODOs * Small JS tweaks (#919) * Fix type exports to built declarations * Update repository links to current package paths * Improve Next app tooling and React typings * Expose primitives CLI bin and use base lint config * Update relayer.gen.ts and TransactionPrecondition interface * Update api.gen.ts * Update metadata.gen.ts * Update marketplace.gen.ts * Update guard.gen.ts * Support multiple identity signers in sessions configuration * Device signers can approve implicit sessions * Remove invalid test * Fix recursion * Fix comment * Improve test stability by reducing race conditions * Do not set passkey signer as identity signer * Use length checks * Throw on missing identity signer * Encoding requires identity signer to encode * Fix test * Refactor/types namings tsdoc redundant code (#880) * refactor types, namings, ts doc * fix session response payload * change parameter name * change parameter name * change type in tests * improve types and dapp client methods * fix session test to use new types * refactor * refactor implicit sessions array in chain session manager * remove unused types * remove unused types and add ConnectionError * update pnpm lock * move reusable session types to wallet-core * Update some imports and update some response type names --------- Co-authored-by: Tolgahan Arikan * Fix check for explicit session for the updated type in dapp-client * Update api.gen.ts and relayer.gen.ts * Add missing chainId for dapp client event * Fix initializing new chain session manager on redirect * Add support for non-viem, custom Sequence chains (#882) * Provider sent to prepareBlankEnvelope * Add session signature decoding * const for node length * Clearer blacklist size encoding * identity signer node length * Add feeTokens endpoint to relayer (#885) * add getFeeTokens to dapp client (#889) * add getFeeTokens to dapp client * fix typo * make getFeeTokens independent of chain session manager and initialize state (#890) * make getFeeTokens independent of chain session manager and initialized state * remove getFeeTokens from chain session manager * Throw specific error when trying to sign with an expired session (#887) * Throw when supported session signer is expired * Fix tests * Make dapp-client implicit sessions chain agnostic (#893) * Add Monad, remove LAOS and Root Network * Add support for sessionless dapp connection (#896) * Refactor relayer package & update dependant packages (#891) * refactor exports for relayer (#900) * Add Arc Testnet * Fix changelog config * Sessionless connection upgrade and error handling in DappClient (#902) * dapp-client: add sessionless snapshot restore flow * Allow to logout a wallet with skipRemoveDevice even if the wallet is not in a ready state to allow force removing of wallets (#906) * Pass request to PromptCodeHandler in guard registerUI (#909) * Pass request to PromptCodeHandler in guard registerUI * Fixing guard registerUI test * guard: allow using recovery code as 2FA token (#910) * guard: allow using recovery code as 2FA token * Cleanup types of ResponseFn --------- Co-authored-by: Corban Riley * Add a way to reset 2fa when using a backup code (#911) * Add a way to reset 2fa when using a backup code * use the GuardToken type instead of breaking out the props * Add rc4 contracts * Set rc4 as default and add it to lists * Session enhanced replay protection * New sessions replay protection hashes payload * Use the 4337 factory wrapper * Update keymachine url in dapp-client constants * Update keymachine url in Provider constructor * SSR safety (#915) * Guard dapp-client for SSR (lazy transport, browser checks, gated storage) * Fix guard topology (#918) * Use proper guard topology * Test and fixes * login and setup tests * Switch prod manager settings (#917) * Add prod guard and identity instrument info * Remove completed TODOs * Small JS tweaks (#919) * Fix type exports to built declarations * Update repository links to current package paths * Improve Next app tooling and React typings * Expose primitives CLI bin and use base lint config * Update relayer.gen.ts and TransactionPrecondition interface * Update relayer.gen.ts and TransactionPrecondition interface (#920) * 3.0.0-beta.1 * identity-instrument: generate nonce from current time (#921) * Remove publish-dists.yml github action (#923) * 3.0.0-beta.2 * Clean up changeset config * Improve test stability by removing race conditions * Ensure build before test * Updating happy-dom to 20.0.10 (#926) * Add support for custom auth providers (authcode & authcode-pkce only) (#894) * Add support for custom auth providers (authcode & authcode-pkce only) * fix authcode tests * Updating Deps November 2025 (#927) * Updating deps for the workspace root * Updating deps for wallet/wdk * Fixing sessions test for latest vitest * Lets not upgrade to the latest typescript quite yet * Updating to latest vitest * Updating deps for wallet/core * Updating deps for wallet/primitives-cli * Updating deps for wallet/dapp-client * Adding syncpack to check for dep version inconsistencies * Setup syncpack versionGroups for pnpm workspace:^ * Fixing dep versions mismatches * Fixing @types/node mismatches * Adding syncpack to pre commit hook * Remove the syncpack format script. * Update ox to v9.17.0 (#928) * Upgrading ox to 9.17.0 * WrappedSignature renamed to SignatureErc6492 * Fixing PasskeySignatureValidator interface * Lock ox lib dep to use the same version with pnpm overrides and update viem to latest * Fix explicitSessionRequested check in dapp client * Typescript 5.9.3 (#930) * Upgrading to typescript v5.9.3 * Fix type errors that arose from typescript upgrade related to Bytes and Buffer source typings. * Don't catch errors thrown by Guard 2FA or reject early to allow multiple attempts on incorrect TOTP (#931) * Update pnpm * Mark @0xsequence/wallet-primitives-cli as private * 3.0.0-beta.3 * changeset cleanup * Fix rc4 4337 factory (#933) * Add rc5 and set it as default (#934) * 3.0.0-beta.4 * Update SECURITY.md Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update wagmi-project/package.json Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update wagmi-project/package.json Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Bump next from 15.5.5 to 15.5.7 (#936) Bumps [next](https://github.com/vercel/next.js) from 15.5.5 to 15.5.7. - [Release notes](https://github.com/vercel/next.js/releases) - [Changelog](https://github.com/vercel/next.js/blob/canary/release.js) - [Commits](https://github.com/vercel/next.js/compare/v15.5.5...v15.5.7) --- updated-dependencies: - dependency-name: next dependency-version: 15.5.7 dependency-type: direct:production ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * add userdata service client (#940) * Skip LocalDevice identity signers not on current device (#942) * Skip LocalDevice identity signers not on current device * Update log * 3.0.0-beta.5 * Update config.yml (#102) * Update config.yml Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update .circleci/config.yml Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> --------- Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com> * Update config.yml (#103) * Update config.yml Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update .circleci/config.yml Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> --------- Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com> * fix: extras/web/package.json to reduce vulnerabilities (#101) The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JS-NEXT-14173355 Co-authored-by: snyk-io[bot] <141718529+snyk-io[bot]@users.noreply.github.com> * fix: extras/docs/package.json to reduce vulnerabilities (#100) The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JS-NEXT-14173355 Co-authored-by: snyk-io[bot] <141718529+snyk-io[bot]@users.noreply.github.com> * fix: package.json to reduce vulnerabilities (#104) The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JS-BABELHELPERS-9397697 - https://snyk.io/vuln/SNYK-JS-BABELRUNTIME-10044504 - https://snyk.io/vuln/SNYK-JS-BRACEEXPANSION-9789073 - https://snyk.io/vuln/SNYK-JS-CROSSSPAWN-8303230 - https://snyk.io/vuln/SNYK-JS-ELLIPTIC-7577916 - https://snyk.io/vuln/SNYK-JS-ELLIPTIC-7577917 - https://snyk.io/vuln/SNYK-JS-ELLIPTIC-7577918 - https://snyk.io/vuln/SNYK-JS-ELLIPTIC-8187303 - https://snyk.io/vuln/SNYK-JS-ELLIPTIC-8720086 - https://snyk.io/vuln/SNYK-JS-IMAGESIZE-9634164 - https://snyk.io/vuln/SNYK-JS-INFLIGHT-6095116 - https://snyk.io/vuln/SNYK-JS-JSYAML-13961110 - https://snyk.io/vuln/SNYK-JS-MICROMATCH-6838728 - https://snyk.io/vuln/SNYK-JS-NODEFORGE-14114940 - https://snyk.io/vuln/SNYK-JS-NODEFORGE-14125097 - https://snyk.io/vuln/SNYK-JS-NODEFORGE-14125745 - https://snyk.io/vuln/SNYK-JS-ONHEADERS-10773729 - https://snyk.io/vuln/SNYK-JS-ROLLUP-8073097 - https://snyk.io/vuln/SNYK-JS-SECP256K1-8237220 - https://snyk.io/vuln/SNYK-JS-SEND-7926862 - https://snyk.io/vuln/SNYK-JS-SERVESTATIC-7926865 - https://snyk.io/vuln/SNYK-JS-SHAJS-12089400 Co-authored-by: snyk-io[bot] <141718529+snyk-io[bot]@users.noreply.github.com> * Revert "Merge remote-tracking branch 'origin/dependabot/npm_and_yarn/npm_and_yarn-318c02e2da'" This reverts commit fd0fdf9ecc6ad9056447e381de7fc5bb19f78e47, reversing changes made to cba78943db9942a4635bb530b7a43fc5d18b0ab4. * fix: extras/web/package.json to reduce vulnerabilities (#109) The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JS-NEXT-14173355 Co-authored-by: snyk-bot * fix: extras/docs/package.json to reduce vulnerabilities (#106) The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JS-NEXT-14400636 - https://snyk.io/vuln/SNYK-JS-NEXT-14400644 Co-authored-by: snyk-bot * Bump next in the npm_and_yarn group across 1 directory (#110) Bumps the npm_and_yarn group with 1 update in the / directory: [next](https://github.com/vercel/next.js). Updates `next` from 15.5.7 to 15.5.9 - [Release notes](https://github.com/vercel/next.js/releases) - [Changelog](https://github.com/vercel/next.js/blob/canary/release.js) - [Commits](https://github.com/vercel/next.js/compare/v15.5.7...v15.5.9) --- updated-dependencies: - dependency-name: next dependency-version: 15.5.9 dependency-type: direct:production dependency-group: npm_and_yarn ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Delete .github/workflows/fortify.yml (#111) Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * fix: extras/web/package.json to reduce vulnerabilities (#107) The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JS-NEXT-14400636 - https://snyk.io/vuln/SNYK-JS-NEXT-14400644 Co-authored-by: snyk-bot * Bump the npm_and_yarn group across 1 directory with 3 updates (#115) Bumps the npm_and_yarn group with 1 update in the / directory: [next](https://github.com/vercel/next.js). Updates `next` from 15.5.5 to 15.5.9 - [Release notes](https://github.com/vercel/next.js/releases) - [Changelog](https://github.com/vercel/next.js/blob/canary/release.js) - [Commits](https://github.com/vercel/next.js/compare/v15.5.5...v15.5.9) Updates `happy-dom` from 17.6.3 to 20.0.11 - [Release notes](https://github.com/capricorn86/happy-dom/releases) - [Commits](https://github.com/capricorn86/happy-dom/compare/v17.6.3...v20.0.11) Updates `vite` from 7.1.10 to 7.2.7 - [Release notes](https://github.com/vitejs/vite/releases) - [Changelog](https://github.com/vitejs/vite/blob/v7.2.7/packages/vite/CHANGELOG.md) - [Commits](https://github.com/vitejs/vite/commits/v7.2.7/packages/vite) --- updated-dependencies: - dependency-name: next dependency-version: 15.5.9 dependency-type: direct:production dependency-group: npm_and_yarn - dependency-name: happy-dom dependency-version: 20.0.11 dependency-type: direct:development dependency-group: npm_and_yarn - dependency-name: vite dependency-version: 7.2.7 dependency-type: indirect dependency-group: npm_and_yarn ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Bump next from 15.5.7 to 15.5.9 (#944) Bumps [next](https://github.com/vercel/next.js) from 15.5.7 to 15.5.9. - [Release notes](https://github.com/vercel/next.js/releases) - [Changelog](https://github.com/vercel/next.js/blob/canary/release.js) - [Commits](https://github.com/vercel/next.js/compare/v15.5.7...v15.5.9) --- updated-dependencies: - dependency-name: next dependency-version: 15.5.9 dependency-type: direct:production ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Pin foundry to v1.5.0 instead of nightly (#947) * Include repo and extras in syncpack config to ensure deps are synced (#945) * Include repo and extras in syncpack config to ensure deps are synced across all * Updating support deps * Updating deps * Updating pnpm lock * Fixing type errors within wdk tests * Short circuit 404s (#949) * skip witness on signers that don't support it * add passkey to test * 3.0.0-beta.6 * Update tests.yml (#119) Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update config.yml (#120) Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update packages/services/identity-instrument/src/index.ts Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * feat: upgrade @wagmi/cli from 0.1.15 to 2.8.0 (#126) Snyk has created this PR to upgrade @wagmi/cli from 0.1.15 to 2.8.0. See this package in npm: @wagmi/cli See this project in Snyk: https://app.snyk.io/org/dargon789/project/bb845543-cbee-4e11-8cf9-8bfdf9205bf1?utm_source=github&utm_medium=referral&page=upgrade-pr Co-authored-by: snyk-bot * Potential fix for code scanning alert no. 82: Workflow does not contain permissions Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Potential fix for code scanning alert no. 62: Information exposure through a stack trace Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> --------- Signed-off-by: dependabot[bot] Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> Co-authored-by: Patryk Kalinowski Co-authored-by: Corban Riley Co-authored-by: tolgahan-arikan Co-authored-by: Agusx1211 Co-authored-by: Michael Standen Co-authored-by: William Hua Co-authored-by: Michael Standen Co-authored-by: Patryk Kalinowski Co-authored-by: Taylan Pince Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Gabi <56271768+VGabriel45@users.noreply.github.com> Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com> Co-authored-by: snyk-io[bot] <141718529+snyk-io[bot]@users.noreply.github.com> Co-authored-by: snyk-bot * Update extras/docs/package.json Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update extras/web/package.json Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * 0xsequence-1.9.19 # 0xsequence-#1.9.19 * Update packages/0xsequence/tests/browser/wallet-provider/dapp.test.ts Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update packages/auth/src/session.ts Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update tests.yml (#187) https://github.com/Dargon789/sequence.js/commit/ea7e889bdca6ab92991b03a34eb3e2002806b5a5 Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Potential fix for code scanning alert no. 61: Cross-window communication with unrestricted target origin Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update packages/deployer/src/UniversalDeployer.ts Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> --------- Signed-off-by: dependabot[bot] Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> Co-authored-by: Patryk Kalinowski Co-authored-by: Corban Riley Co-authored-by: tolgahan-arikan Co-authored-by: Agusx1211 Co-authored-by: Michael Standen Co-authored-by: William Hua Co-authored-by: Michael Standen Co-authored-by: Patryk Kalinowski Co-authored-by: Taylan Pince Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Gabi <56271768+VGabriel45@users.noreply.github.com> Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com> Co-authored-by: snyk-io[bot] <141718529+snyk-io[bot]@users.noreply.github.com> Co-authored-by: snyk-bot * @0xsequence 2.3.8 wagmi-project - 0xsequence Demo Dapp Sequence Wallet is an Ethereum wallet supporting Ethereum mainnet, Polygon and more. Sequence will work * @0xsequence v3 SDK update submodule signals-implicit-mode @0xsequence * Update packages/wallet/core/src/signers/session-manager.ts Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Potential fix for pull request finding 'CodeQL / Workflow does not contain permissions' Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update .codesandbox/src/App.tsx Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update .codesandbox/src/App.tsx Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update .codesandbox/src/App.tsx Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update .codesandbox/src/App.tsx Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update .codesandbox/src/App.tsx Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Bump the npm_and_yarn group across 3 directories with 3 updates (#541) Bumps the npm_and_yarn group with 1 update in the /lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts directory: [axios](https://github.com/axios/axios). Bumps the npm_and_yarn group with 1 update in the /lib/signals-implicit-mode/lib/sequence-v3/lib/account-abstraction directory: [follow-redirects](https://github.com/follow-redirects/follow-redirects). Bumps the npm_and_yarn group with 1 update in the /.codesandbox directory: [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite). Updates `axios` from 1.7.4 to 1.16.0 - [Release notes](https://github.com/axios/axios/releases) - [Changelog](https://github.com/axios/axios/blob/v1.x/CHANGELOG.md) - [Commits](https://github.com/axios/axios/compare/v1.7.4...v1.16.0) Updates `follow-redirects` from 1.15.6 to 1.16.0 - [Release notes](https://github.com/follow-redirects/follow-redirects/releases) - [Commits](https://github.com/follow-redirects/follow-redirects/compare/v1.15.3...v1.16.0) Updates `follow-redirects` from 1.15.3 to 1.16.0 - [Release notes](https://github.com/follow-redirects/follow-redirects/releases) - [Commits](https://github.com/follow-redirects/follow-redirects/compare/v1.15.3...v1.16.0) Updates `vite` from 5.2.6 to 6.4.2 - [Release notes](https://github.com/vitejs/vite/releases) - [Changelog](https://github.com/vitejs/vite/blob/v6.4.2/packages/vite/CHANGELOG.md) - [Commits](https://github.com/vitejs/vite/commits/v6.4.2/packages/vite) --- updated-dependencies: - dependency-name: axios dependency-version: 1.16.0 dependency-type: indirect dependency-group: npm_and_yarn - dependency-name: follow-redirects dependency-version: 1.16.0 dependency-type: indirect dependency-group: npm_and_yarn - dependency-name: follow-redirects dependency-version: 1.16.0 dependency-type: indirect dependency-group: npm_and_yarn - dependency-name: vite dependency-version: 6.4.2 dependency-type: direct:development dependency-group: npm_and_yarn ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --------- Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> Signed-off-by: dependabot[bot] Signed-off-by: AU_gdev_19 <64915515+Dargon789@users.noreply.github.com> Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Co-authored-by: Taylan Pince Co-authored-by: Michael Standen Co-authored-by: Gabi <56271768+VGabriel45@users.noreply.github.com> Co-authored-by: Tolgahan Arikan Co-authored-by: Corban Brook Co-authored-by: Patryk Kalinowski Co-authored-by: Agusx1211 Co-authored-by: marino39 <722509+marino39@users.noreply.github.com> Co-authored-by: pkieltyka <18831+pkieltyka@users.noreply.github.com> Co-authored-by: xiam <385670+xiam@users.noreply.github.com> Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com> Co-authored-by: snyk-io[bot] <141718529+snyk-io[bot]@users.noreply.github.com> Co-authored-by: snyk-bot Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> Co-authored-by: Patryk Kalinowski Co-authored-by: Michael Standen Co-authored-by: William Hua Co-authored-by: spongeboi Co-authored-by: vercel[bot] <35613825+vercel[bot]@users.noreply.github.com> Co-authored-by: Vercel Co-authored-by: googleworkspace-bot --- .changeset/README.md | 2 +- .changeset/config.json | 4 +- .codesandbox/.github/workflows/build.yml | 32 + .codesandbox/.gitignore | 19 + .codesandbox/.prettierrc | 9 + .codesandbox/README.md | 49 + .codesandbox/index.html | 35 + .codesandbox/package.json | 60 + .codesandbox/pnpm-lock.yaml | 4111 + .codesandbox/public/favicon.ico | Bin 0 -> 1068 bytes .codesandbox/public/logo192.png | Bin 0 -> 16795 bytes .codesandbox/public/logo512.png | Bin 0 -> 159929 bytes .codesandbox/public/manifest.json | 25 + .codesandbox/public/robots.txt | 3 + .codesandbox/screenshots/screen-open.png | Bin 0 -> 90533 bytes .codesandbox/screenshots/screen-txn.png | Bin 0 -> 92730 bytes .codesandbox/src/App.tsx | 1349 + .codesandbox/src/README.md | 49 + .codesandbox/src/components/Console/index.tsx | 37 + .../src/components/Console/styles.css.ts | 11 + .codesandbox/src/components/Group/index.tsx | 42 + .../src/components/Group/styles.css.ts | 17 + .codesandbox/src/constants/abi.ts | 64 + .codesandbox/src/helpers.ts | 17 + .codesandbox/src/images/logo.svg | 61 + .../src/images/skyweaver-banner-large.png | Bin 0 -> 282630 bytes .../src/images/skyweaver-banner.old.png | Bin 0 -> 211421 bytes .codesandbox/src/images/skyweaver-banner.png | Bin 0 -> 668492 bytes .codesandbox/src/index.css | 9 + .codesandbox/src/index.tsx | 17 + .codesandbox/src/react-app-env.d.ts | 1 + .codesandbox/src/vite-env.d.ts | 1 + .codesandbox/tasks.json | 118 + .codesandbox/tsconfig.json | 27 + ...e_moduleszS@preconstructzSclizSbin.js.BLOB | Bin 0 -> 1584680 bytes ...e_moduleszS@preconstructzSclizSbin.js.BLOB | Bin 0 -> 1583672 bytes .codesandbox/vite.config.ts | 21 + .eslintignore | 2 + .eslintrc.js | 48 + .github/ISSUE_TEMPLATE/bug_report.md | 40 + .github/ISSUE_TEMPLATE/custom.md | 7 + .github/ISSUE_TEMPLATE/feature_request.md | 19 + .../actions/install-dependencies/action.yml | 16 +- .github/workflows/Publish-Dists.yml | 94 + .github/workflows/fortify.yml | 85 + .github/workflows/nextjs.yml | 93 + .github/workflows/on_pr_pnpm-format-label.yml | 3 + .github/workflows/tests.yml | 10 +- .github/workflows/web-sdk.yml | 137 + .gitmodules | 51 + .nycrc | 26 + CNAME | 1 + FUNDING.json | 10 + SECURITY.md | 20 + azure-pipelines.yml | 21 + babel.config.js | 19 + extras/docs/eslint.config.js | 7 +- extras/docs/next-env.d.ts | 6 + extras/docs/next.config.js | 12 +- extras/docs/package.json | 2 +- extras/web/eslint.config.js | 7 +- extras/web/next-env.d.ts | 6 + extras/web/next.config.js | 12 +- extras/web/package.json | 2 +- foundry.lock | 68 + foundry.toml | 10 + lib/signals-implicit-mode/.env.sample | 1 + lib/signals-implicit-mode/.gas-snapshot | 35 + .../.github/workflows/test.yml | 56 + lib/signals-implicit-mode/.gitmodules | 9 + lib/signals-implicit-mode/README.md | 84 + .../Deploy.s.sol/1/run-1770363485985.json | 58 + .../Deploy.s.sol/1/run-1770364554426.json | 58 + .../broadcast/Deploy.s.sol/1/run-latest.json | 58 + .../Deploy.s.sol/1/run-1770363485985.json | 7 + .../Deploy.s.sol/1/run-1770364554426.json | 7 + .../cache/Deploy.s.sol/1/run-latest.json | 7 + .../cache/solidity-files-cache.json | 1 + .../forge-std-1.14.0/.github/CODEOWNERS | 1 + .../forge-std-1.14.0/.github/dependabot.yml | 6 + .../forge-std-1.14.0/.github/workflows/ci.yml | 125 + .../.github/workflows/sync.yml | 36 + .../dependencies/forge-std-1.14.0/.gitignore | 4 + .../forge-std-1.14.0/CONTRIBUTING.md | 193 + .../forge-std-1.14.0/LICENSE-APACHE | 203 + .../dependencies/forge-std-1.14.0/LICENSE-MIT | 25 + .../dependencies/forge-std-1.14.0/README.md | 268 + .../forge-std-1.14.0/RELEASE_CHECKLIST.md | 12 + .../forge-std-1.14.0/scripts/vm.py | 636 + .../forge-std-1.14.0/src/Base.sol | 48 + .../forge-std-1.14.0/src/Config.sol | 60 + .../forge-std-1.14.0/src/LibVariable.sol | 477 + .../forge-std-1.14.0/src/Script.sol | 28 + .../forge-std-1.14.0/src/StdAssertions.sol | 779 + .../forge-std-1.14.0/src/StdChains.sol | 295 + .../forge-std-1.14.0/src/StdCheats.sol | 825 + .../forge-std-1.14.0/src/StdConfig.sol | 632 + .../forge-std-1.14.0/src/StdConstants.sol | 30 + .../forge-std-1.14.0/src/StdError.sol | 15 + .../forge-std-1.14.0/src/StdInvariant.sol | 120 + .../forge-std-1.14.0/src/StdJson.sol | 275 + .../forge-std-1.14.0/src/StdMath.sol | 47 + .../forge-std-1.14.0/src/StdStorage.sol | 475 + .../forge-std-1.14.0/src/StdStyle.sol | 333 + .../forge-std-1.14.0/src/StdToml.sol | 275 + .../forge-std-1.14.0/src/StdUtils.sol | 200 + .../forge-std-1.14.0/src/Test.sol | 32 + .../dependencies/forge-std-1.14.0/src/Vm.sol | 2500 + .../forge-std-1.14.0/src/console.sol | 1551 + .../forge-std-1.14.0/src/console2.sol | 4 + .../src/interfaces/IERC1155.sol | 105 + .../src/interfaces/IERC165.sol | 12 + .../src/interfaces/IERC20.sol | 43 + .../src/interfaces/IERC4626.sol | 190 + .../src/interfaces/IERC6909.sol | 72 + .../src/interfaces/IERC721.sol | 164 + .../src/interfaces/IERC7540.sol | 144 + .../src/interfaces/IERC7575.sol | 241 + .../src/interfaces/IMulticall3.sol | 68 + .../forge-std-1.14.0/src/safeconsole.sol | 13248 +++ .../forge-std-1.14.0/test/CommonBase.t.sol | 44 + .../forge-std-1.14.0/test/Config.t.sol | 381 + .../forge-std-1.14.0/test/LibVariable.t.sol | 452 + .../forge-std-1.14.0/test/StdAssertions.t.sol | 141 + .../forge-std-1.14.0/test/StdChains.t.sol | 227 + .../forge-std-1.14.0/test/StdCheats.t.sol | 638 + .../forge-std-1.14.0/test/StdConstants.t.sol | 38 + .../forge-std-1.14.0/test/StdError.t.sol | 119 + .../forge-std-1.14.0/test/StdJson.t.sol | 49 + .../forge-std-1.14.0/test/StdMath.t.sol | 202 + .../forge-std-1.14.0/test/StdStorage.t.sol | 485 + .../forge-std-1.14.0/test/StdStyle.t.sol | 110 + .../forge-std-1.14.0/test/StdToml.t.sol | 49 + .../forge-std-1.14.0/test/StdUtils.t.sol | 342 + .../forge-std-1.14.0/test/Vm.t.sol | 18 + .../test/compilation/CompilationScript.sol | 8 + .../compilation/CompilationScriptBase.sol | 8 + .../test/compilation/CompilationTest.sol | 8 + .../test/compilation/CompilationTestBase.sol | 8 + .../test/fixtures/broadcast.log.json | 187 + .../test/fixtures/config.toml | 81 + .../forge-std-1.14.0/test/fixtures/test.json | 8 + .../forge-std-1.14.0/test/fixtures/test.toml | 6 + lib/signals-implicit-mode/foundry.lock | 1 + lib/signals-implicit-mode/foundry.toml | 25 + .../lib/forge-std/.gitattributes | 1 + .../lib/forge-std/.github/CODEOWNERS | 1 + .../lib/forge-std/.github/workflows/ci.yml | 95 + .../lib/forge-std/.github/workflows/sync.yml | 31 + .../lib/forge-std/CONTRIBUTING.md | 193 + .../lib/forge-std/LICENSE-APACHE | 203 + .../lib/forge-std/LICENSE-MIT | 25 + .../lib/forge-std/README.md | 268 + .../lib/forge-std/RELEASE_CHECKLIST.md | 12 + .../lib/forge-std/foundry.toml | 27 + .../lib/forge-std/package.json | 16 + .../lib/forge-std/scripts/vm.py | 646 + .../lib/forge-std/src/Base.sol | 48 + .../lib/forge-std/src/Config.sol | 60 + .../lib/forge-std/src/LibVariable.sol | 477 + .../lib/forge-std/src/Script.sol | 28 + .../lib/forge-std/src/StdAssertions.sol | 764 + .../lib/forge-std/src/StdChains.sol | 287 + .../lib/forge-std/src/StdCheats.sol | 829 + .../lib/forge-std/src/StdConfig.sol | 612 + .../lib/forge-std/src/StdConstants.sol | 30 + .../lib/forge-std/src/StdError.sol | 15 + .../lib/forge-std/src/StdInvariant.sol | 122 + .../lib/forge-std/src/StdJson.sol | 283 + .../lib/forge-std/src/StdMath.sol | 43 + .../lib/forge-std/src/StdStorage.sol | 473 + .../lib/forge-std/src/StdStyle.sol | 333 + .../lib/forge-std/src/StdToml.sol | 283 + .../lib/forge-std/src/StdUtils.sol | 208 + .../lib/forge-std/src/Test.sol | 34 + .../lib/forge-std/src/Vm.sol | 2494 + .../lib/forge-std/src/console.sol | 1560 + .../lib/forge-std/src/console2.sol | 4 + .../lib/forge-std/src/interfaces/IERC1155.sol | 105 + .../lib/forge-std/src/interfaces/IERC165.sol | 12 + .../lib/forge-std/src/interfaces/IERC20.sol | 43 + .../lib/forge-std/src/interfaces/IERC4626.sol | 190 + .../lib/forge-std/src/interfaces/IERC6909.sol | 72 + .../lib/forge-std/src/interfaces/IERC721.sol | 164 + .../lib/forge-std/src/interfaces/IERC7540.sol | 150 + .../lib/forge-std/src/interfaces/IERC7575.sol | 241 + .../forge-std/src/interfaces/IMulticall3.sol | 73 + .../lib/forge-std/src/safeconsole.sol | 13937 +++ .../lib/forge-std/test/CommonBase.t.sol | 44 + .../lib/forge-std/test/Config.t.sol | 352 + .../lib/forge-std/test/LibVariable.t.sol | 434 + .../lib/forge-std/test/StdAssertions.t.sol | 141 + .../lib/forge-std/test/StdChains.t.sol | 227 + .../lib/forge-std/test/StdCheats.t.sol | 639 + .../lib/forge-std/test/StdConstants.t.sol | 38 + .../lib/forge-std/test/StdError.t.sol | 120 + .../lib/forge-std/test/StdJson.t.sol | 49 + .../lib/forge-std/test/StdMath.t.sol | 202 + .../lib/forge-std/test/StdStorage.t.sol | 488 + .../lib/forge-std/test/StdStyle.t.sol | 110 + .../lib/forge-std/test/StdToml.t.sol | 49 + .../lib/forge-std/test/StdUtils.t.sol | 342 + .../lib/forge-std/test/Vm.t.sol | 18 + .../test/compilation/CompilationScript.sol | 10 + .../compilation/CompilationScriptBase.sol | 10 + .../test/compilation/CompilationTest.sol | 10 + .../test/compilation/CompilationTestBase.sol | 10 + .../test/fixtures/broadcast.log.json | 187 + .../lib/forge-std/test/fixtures/config.toml | 81 + .../lib/forge-std/test/fixtures/test.json | 8 + .../lib/forge-std/test/fixtures/test.toml | 6 + .../lib/sequence-v3/.env.sample | 7 + .../sequence-v3/.github/workflows/tests.yml | 148 + .../lib/sequence-v3/.gitmodules | 12 + .../lib/sequence-v3/.prettierignore | 4 + .../lib/sequence-v3/.prettierrc | 7 + .../lib/sequence-v3/LICENSE | 201 + .../lib/sequence-v3/README.md | 53 + .../lib/sequence-v3/build_proxy.sh | 21 + .../lib/sequence-v3/docs/CHAINED.md | 450 + .../lib/sequence-v3/docs/CONFIGURATIONS.md | 279 + .../lib/sequence-v3/docs/PAYLOAD.md | 392 + .../lib/sequence-v3/docs/SESSIONS.md | 502 + .../lib/sequence-v3/docs/SIGNATURE.md | 367 + .../lib/sequence-v3/foundry.toml | 31 + .../lib/sequence-v3/lefthook.yml | 8 + .../lib/account-abstraction/.eslintrc.js | 79 + .../.github/workflows/build.yml | 89 + .../lib/account-abstraction/.solcover.js | 8 + .../lib/account-abstraction/.solhint.json | 12 + .../lib/account-abstraction/.solhintignore | 1 + .../lib/account-abstraction/LICENSE | 674 + .../lib/account-abstraction/README.md | 11 + ...bstraction_Incremental_Audit_Feb_2023.pdf" | Bin 0 -> 565821 bytes .../contracts/core/BaseAccount.sol | 113 + .../contracts/core/BasePaymaster.sol | 151 + .../contracts/core/EntryPoint.sol | 800 + .../contracts/core/EntryPointSimulations.sol | 190 + .../contracts/core/Helpers.sol | 106 + .../contracts/core/NonceManager.sol | 43 + .../contracts/core/SenderCreator.sol | 38 + .../contracts/core/StakeManager.sol | 145 + .../contracts/core/UserOperationLib.sol | 139 + .../contracts/interfaces/IAccount.sol | 39 + .../contracts/interfaces/IAccountExecute.sol | 20 + .../contracts/interfaces/IAggregator.sol | 44 + .../contracts/interfaces/IEntryPoint.sol | 223 + .../interfaces/IEntryPointSimulations.sol | 73 + .../contracts/interfaces/INonceManager.sol | 27 + .../contracts/interfaces/IPaymaster.sol | 63 + .../contracts/interfaces/IStakeManager.sol | 111 + .../interfaces/PackedUserOperation.sol | 28 + .../contracts/package.json | 29 + .../samples/LegacyTokenPaymaster.sol | 115 + .../contracts/samples/SimpleAccount.sol | 150 + .../samples/SimpleAccountFactory.sol | 52 + .../contracts/samples/TokenPaymaster.sol | 217 + .../contracts/samples/VerifyingPaymaster.sol | 96 + .../contracts/samples/bls/BLSAccount.sol | 65 + .../samples/bls/BLSAccountFactory.sol | 61 + .../contracts/samples/bls/BLSHelper.sol | 232 + .../samples/bls/BLSSignatureAggregator.sol | 171 + .../contracts/samples/bls/IBLSAccount.sol | 16 + .../contracts/samples/bls/lib/BLSOpen.sol | 64 + .../hubble-contracts/contracts/libs/BLS.sol | 440 + .../contracts/libs/ModExp.sol | 652 + .../samples/callback/TokenCallbackHandler.sol | 51 + .../contracts/samples/utils/IOracle.sol | 10 + .../contracts/samples/utils/OracleHelper.sol | 170 + .../contracts/samples/utils/UniswapHelper.sol | 111 + .../contracts/utils/Exec.sol | 70 + .../deploy/1_deploy_entrypoint.ts | 19 + .../deploy/2_deploy_SimpleAccountFactory.ts | 33 + .../deployments/arbitrum/.chainId | 1 + .../deployments/arbitrum/EntryPoint.json | 1318 + .../a4c52f0671aad8941c53d6ead2063803.json | 68 + .../deployments/gnosis/.chainId | 1 + .../deployments/gnosis/EntryPoint.json | 1318 + .../a4c52f0671aad8941c53d6ead2063803.json | 68 + .../deployments/goerli/.chainId | 1 + .../deployments/goerli/EntryPoint.json | 1318 + .../a4c52f0671aad8941c53d6ead2063803.json | 68 + .../deployments/kovan/.chainId | 1 + .../deployments/kovan/EntryPoint.json | 1073 + .../deployments/kovan/SimpleWallet.json | 338 + .../deployments/kovan/TestCounter.json | 118 + .../9255faacf3ae4e81db1326413027bfa0.json | 86 + .../deployments/mainnet/.chainId | 1 + .../deployments/mainnet/EntryPoint.json | 1318 + .../mainnet/SimpleAccountFactory.json | 107 + .../02113a2ed1850c3774563305ee607f11.json | 329 + .../a4c52f0671aad8941c53d6ead2063803.json | 68 + .../cfbebdf1101dd2bc0f310cb0b7d62cb7.json | 59 + .../deployments/matic/.chainId | 1 + .../deployments/matic/EntryPoint.json | 1318 + .../a4c52f0671aad8941c53d6ead2063803.json | 68 + .../cfbebdf1101dd2bc0f310cb0b7d62cb7.json | 59 + .../deployments/mumbai/.chainId | 1 + .../deployments/mumbai/EntryPoint.json | 1318 + .../a4c52f0671aad8941c53d6ead2063803.json | 68 + .../deployments/optimism/.chainId | 1 + .../deployments/optimism/EntryPoint.json | 1318 + .../a4c52f0671aad8941c53d6ead2063803.json | 68 + .../deployments/sepolia/.chainId | 1 + .../deployments/sepolia/EntryPoint.json | 1318 + .../a4c52f0671aad8941c53d6ead2063803.json | 68 + .../account-abstraction/erc/ERCS/erc-4337.md | 1017 + .../account-abstraction/erc/ERCS/erc-7562.md | 393 + .../erc/assets/erc-4337/bundle-seq-pm.svg | 1 + .../erc/assets/erc-4337/bundle-seq.svg | 1 + .../erc/assets/erc-4337/image1.png | Bin 0 -> 32181 bytes .../erc/assets/erc-4337/image2.png | Bin 0 -> 27514 bytes .../gascalc/0-init-gas-checker.ts | 12 + .../gascalc/1-simple-wallet.gas.ts | 17 + .../gascalc/2-paymaster.gas.ts | 59 + .../gascalc/3-huge-tx-gas.ts | 27 + .../gascalc/4-paymaster-postop.gas.ts | 62 + .../gascalc/5-token-paymaster.gas.ts | 159 + .../account-abstraction/gascalc/GasChecker.ts | 459 + .../lib/account-abstraction/hardhat.config.ts | 86 + .../lib/account-abstraction/package.json | 71 + .../reports/gas-checker.txt | 55 + .../scripts/check-gas-reports | 17 + .../scripts/docker-gascalc | 7 + .../scripts/docker-gascalc.yml | 20 + .../lib/account-abstraction/scripts/gascalc | 15 + .../account-abstraction/scripts/hh-wrapper | 5 + .../scripts/postpack-contracts-package.sh | 6 + .../scripts/prepack-contracts-package.sh | 17 + .../scripts/sample-script.js | 32 + .../account-abstraction/scripts/solcErrors | 12 + .../lib/account-abstraction/src/AASigner.ts | 458 + .../account-abstraction/src/Create2Factory.ts | 126 + .../lib/account-abstraction/src/Utils.ts | 15 + .../lib/account-abstraction/src/runop.ts | 158 + .../test/0-create2factory.test.ts | 43 + .../lib/account-abstraction/test/UserOp.ts | 364 + .../account-abstraction/test/UserOperation.ts | 30 + .../lib/account-abstraction/test/aa.init.ts | 8 + .../account-abstraction/test/chaiHelper.ts | 73 + .../lib/account-abstraction/test/debugTx.ts | 34 + .../test/entrypoint.test.ts | 1929 + .../test/entrypointsimulations.test.ts | 534 + .../account-abstraction/test/helpers.test.ts | 74 + .../test/paymaster.test.ts | 415 + .../test/samples/OracleHelper.test.ts | 287 + .../test/samples/TokenPaymaster.test.ts | 588 + .../test/simple-wallet.test.ts | 208 + .../account-abstraction/test/solidityTypes.ts | 11 + .../test/testExecAccount.test.ts | 61 + .../lib/account-abstraction/test/testutils.ts | 529 + .../test/verifying_paymaster.test.ts | 191 + .../account-abstraction/test/y.bls.test.ts | 249 + .../lib/account-abstraction/tsconfig.json | 31 + .../lib/account-abstraction/yarn.lock | 10171 ++ .../lib/erc2470-libs/.gitattributes | 1 + .../lib/erc2470-libs/.githooks/pre-commit | 30 + .../erc2470-libs/.github/workflows/test.yml | 34 + .../sequence-v3/lib/erc2470-libs/.gitmodules | 3 + .../lib/erc2470-libs/.solhint.json | 9 + .../sequence-v3/lib/erc2470-libs/README.md | 80 + .../sequence-v3/lib/erc2470-libs/foundry.toml | 6 + .../erc2470-libs/lib/forge-std/.gitattributes | 1 + .../lib/forge-std/.github/workflows/ci.yml | 128 + .../lib/forge-std/.github/workflows/sync.yml | 31 + .../erc2470-libs/lib/forge-std/LICENSE-APACHE | 203 + .../erc2470-libs/lib/forge-std/LICENSE-MIT | 25 + .../lib/erc2470-libs/lib/forge-std/README.md | 252 + .../erc2470-libs/lib/forge-std/foundry.toml | 21 + .../erc2470-libs/lib/forge-std/package.json | 16 + .../erc2470-libs/lib/forge-std/scripts/vm.py | 635 + .../erc2470-libs/lib/forge-std/src/Base.sol | 35 + .../erc2470-libs/lib/forge-std/src/Script.sol | 27 + .../lib/forge-std/src/StdAssertions.sol | 669 + .../lib/forge-std/src/StdChains.sol | 263 + .../lib/forge-std/src/StdCheats.sol | 817 + .../lib/forge-std/src/StdError.sol | 15 + .../lib/forge-std/src/StdInvariant.sol | 122 + .../lib/forge-std/src/StdJson.sol | 283 + .../lib/forge-std/src/StdMath.sol | 43 + .../lib/forge-std/src/StdStorage.sol | 473 + .../lib/forge-std/src/StdStyle.sol | 333 + .../lib/forge-std/src/StdToml.sol | 283 + .../lib/forge-std/src/StdUtils.sol | 226 + .../erc2470-libs/lib/forge-std/src/Test.sol | 33 + .../lib/erc2470-libs/lib/forge-std/src/Vm.sol | 1968 + .../lib/forge-std/src/console.sol | 1560 + .../lib/forge-std/src/console2.sol | 4 + .../lib/forge-std/src/interfaces/IERC1155.sol | 105 + .../lib/forge-std/src/interfaces/IERC165.sol | 12 + .../lib/forge-std/src/interfaces/IERC20.sol | 43 + .../lib/forge-std/src/interfaces/IERC4626.sol | 190 + .../lib/forge-std/src/interfaces/IERC721.sol | 164 + .../forge-std/src/interfaces/IMulticall3.sol | 73 + .../lib/forge-std/src/mocks/MockERC20.sol | 234 + .../lib/forge-std/src/mocks/MockERC721.sol | 231 + .../lib/forge-std/src/safeconsole.sol | 13937 +++ .../lib/forge-std/test/StdAssertions.t.sol | 145 + .../lib/forge-std/test/StdChains.t.sol | 228 + .../lib/forge-std/test/StdCheats.t.sol | 618 + .../lib/forge-std/test/StdError.t.sol | 120 + .../lib/forge-std/test/StdJson.t.sol | 49 + .../lib/forge-std/test/StdMath.t.sol | 202 + .../lib/forge-std/test/StdStorage.t.sol | 471 + .../lib/forge-std/test/StdStyle.t.sol | 110 + .../lib/forge-std/test/StdToml.t.sol | 49 + .../lib/forge-std/test/StdUtils.t.sol | 342 + .../erc2470-libs/lib/forge-std/test/Vm.t.sol | 18 + .../test/compilation/CompilationScript.sol | 10 + .../compilation/CompilationScriptBase.sol | 10 + .../test/compilation/CompilationTest.sol | 10 + .../test/compilation/CompilationTestBase.sol | 10 + .../test/fixtures/broadcast.log.json | 187 + .../lib/forge-std/test/fixtures/test.json | 8 + .../lib/forge-std/test/fixtures/test.toml | 6 + .../lib/forge-std/test/mocks/MockERC20.t.sol | 441 + .../lib/forge-std/test/mocks/MockERC721.t.sol | 721 + .../script/MockERC20Deployer.s.sol | 14 + .../script/SingletonDeployer.s.sol | 66 + .../erc2470-libs/src/ISingletonFactory.sol | 12 + .../sequence-v3/lib/forge-std/.gitattributes | 1 + .../lib/forge-std/.github/workflows/ci.yml | 128 + .../lib/forge-std/.github/workflows/sync.yml | 31 + .../sequence-v3/lib/forge-std/CONTRIBUTING.md | 193 + .../sequence-v3/lib/forge-std/LICENSE-APACHE | 203 + .../lib/sequence-v3/lib/forge-std/LICENSE-MIT | 25 + .../lib/sequence-v3/lib/forge-std/README.md | 268 + .../sequence-v3/lib/forge-std/foundry.toml | 23 + .../sequence-v3/lib/forge-std/package.json | 16 + .../sequence-v3/lib/forge-std/scripts/vm.py | 646 + .../sequence-v3/lib/forge-std/src/Base.sol | 42 + .../sequence-v3/lib/forge-std/src/Script.sol | 28 + .../lib/forge-std/src/StdAssertions.sol | 669 + .../lib/forge-std/src/StdChains.sol | 286 + .../lib/forge-std/src/StdCheats.sol | 829 + .../lib/forge-std/src/StdConstants.sol | 30 + .../lib/forge-std/src/StdError.sol | 15 + .../lib/forge-std/src/StdInvariant.sol | 122 + .../sequence-v3/lib/forge-std/src/StdJson.sol | 283 + .../sequence-v3/lib/forge-std/src/StdMath.sol | 43 + .../lib/forge-std/src/StdStorage.sol | 473 + .../lib/forge-std/src/StdStyle.sol | 333 + .../sequence-v3/lib/forge-std/src/StdToml.sol | 283 + .../lib/forge-std/src/StdUtils.sol | 209 + .../sequence-v3/lib/forge-std/src/Test.sol | 34 + .../lib/sequence-v3/lib/forge-std/src/Vm.sol | 2397 + .../sequence-v3/lib/forge-std/src/console.sol | 1560 + .../lib/forge-std/src/console2.sol | 4 + .../lib/forge-std/src/interfaces/IERC1155.sol | 105 + .../lib/forge-std/src/interfaces/IERC165.sol | 12 + .../lib/forge-std/src/interfaces/IERC20.sol | 43 + .../lib/forge-std/src/interfaces/IERC4626.sol | 190 + .../lib/forge-std/src/interfaces/IERC6909.sol | 72 + .../lib/forge-std/src/interfaces/IERC721.sol | 164 + .../lib/forge-std/src/interfaces/IERC7540.sol | 150 + .../lib/forge-std/src/interfaces/IERC7575.sol | 241 + .../forge-std/src/interfaces/IMulticall3.sol | 73 + .../lib/forge-std/src/safeconsole.sol | 13937 +++ .../lib/forge-std/test/CommonBase.t.sol | 44 + .../lib/forge-std/test/StdAssertions.t.sol | 141 + .../lib/forge-std/test/StdChains.t.sol | 227 + .../lib/forge-std/test/StdCheats.t.sol | 639 + .../lib/forge-std/test/StdConstants.t.sol | 38 + .../lib/forge-std/test/StdError.t.sol | 120 + .../lib/forge-std/test/StdJson.t.sol | 49 + .../lib/forge-std/test/StdMath.t.sol | 202 + .../lib/forge-std/test/StdStorage.t.sol | 488 + .../lib/forge-std/test/StdStyle.t.sol | 110 + .../lib/forge-std/test/StdToml.t.sol | 49 + .../lib/forge-std/test/StdUtils.t.sol | 342 + .../sequence-v3/lib/forge-std/test/Vm.t.sol | 18 + .../test/compilation/CompilationScript.sol | 10 + .../compilation/CompilationScriptBase.sol | 10 + .../test/compilation/CompilationTest.sol | 10 + .../test/compilation/CompilationTestBase.sol | 10 + .../test/fixtures/broadcast.log.json | 187 + .../lib/forge-std/test/fixtures/test.json | 8 + .../lib/forge-std/test/fixtures/test.toml | 6 + .../.changeset/config.json | 12 + .../lib/openzeppelin-contracts/.codecov.yml | 16 + .../lib/openzeppelin-contracts/.editorconfig | 21 + .../openzeppelin-contracts/.githooks/pre-push | 8 + .../.github/ISSUE_TEMPLATE/bug_report.md | 20 + .../.github/ISSUE_TEMPLATE/config.yml | 4 + .../.github/ISSUE_TEMPLATE/feature_request.md | 15 + .../.github/PULL_REQUEST_TEMPLATE.md | 19 + .../.github/actions/gas-compare/action.yml | 50 + .../.github/actions/setup/action.yml | 22 + .../.github/actions/storage-layout/action.yml | 56 + .../.github/workflows/actionlint.yml | 18 + .../.github/workflows/changeset.yml | 28 + .../.github/workflows/checks.yml | 136 + .../.github/workflows/docs.yml | 19 + .../.github/workflows/formal-verification.yml | 86 + .../.github/workflows/release-cycle.yml | 212 + .../.github/workflows/upgradeable.yml | 34 + .../lib/openzeppelin-contracts/.gitmodules | 10 + .../lib/openzeppelin-contracts/.mocharc.js | 4 + .../lib/openzeppelin-contracts/.prettierrc | 15 + .../lib/openzeppelin-contracts/.solcover.js | 21 + .../lib/openzeppelin-contracts/CHANGELOG.md | 1158 + .../openzeppelin-contracts/CODE_OF_CONDUCT.md | 73 + .../openzeppelin-contracts/CONTRIBUTING.md | 36 + .../lib/openzeppelin-contracts/FUNDING.json | 7 + .../lib/openzeppelin-contracts/GUIDELINES.md | 154 + .../lib/openzeppelin-contracts/LICENSE | 22 + .../lib/openzeppelin-contracts/README.md | 106 + .../lib/openzeppelin-contracts/RELEASING.md | 45 + .../lib/openzeppelin-contracts/SECURITY.md | 43 + .../openzeppelin-contracts/audits/2017-03.md | 293 + .../openzeppelin-contracts/audits/2018-10.pdf | Bin 0 -> 1000527 bytes .../audits/2022-10-Checkpoints.pdf | Bin 0 -> 155606 bytes .../audits/2022-10-ERC4626.pdf | Bin 0 -> 204184 bytes .../audits/2023-05-v4.9.pdf | Bin 0 -> 485395 bytes .../audits/2023-10-v5.0.pdf | Bin 0 -> 910284 bytes .../audits/2024-10-v5.1.pdf | Bin 0 -> 395831 bytes .../openzeppelin-contracts/audits/README.md | 18 + .../openzeppelin-contracts/certora/Makefile | 54 + .../openzeppelin-contracts/certora/README.md | 60 + .../access_manager_AccessManager.sol.patch | 97 + .../AccessControlDefaultAdminRulesHarness.sol | 46 + .../harnesses/AccessControlHarness.sol | 6 + .../harnesses/AccessManagedHarness.sol | 36 + .../harnesses/AccessManagerHarness.sol | 116 + .../harnesses/DoubleEndedQueueHarness.sol | 58 + .../harnesses/ERC20FlashMintHarness.sol | 36 + .../certora/harnesses/ERC20PermitHarness.sol | 16 + .../certora/harnesses/ERC20WrapperHarness.sol | 34 + .../harnesses/ERC3156FlashBorrowerHarness.sol | 13 + .../certora/harnesses/ERC721Harness.sol | 33 + .../harnesses/ERC721ReceiverHarness.sol | 11 + .../harnesses/EnumerableMapHarness.sol | 55 + .../harnesses/EnumerableSetHarness.sol | 35 + .../harnesses/InitializableHarness.sol | 23 + .../certora/harnesses/NoncesHarness.sol | 14 + .../certora/harnesses/Ownable2StepHarness.sol | 10 + .../certora/harnesses/OwnableHarness.sol | 10 + .../certora/harnesses/PausableHarness.sol | 18 + .../harnesses/TimelockControllerHarness.sol | 13 + .../certora/reports/2021-10.pdf | Bin 0 -> 92882 bytes .../certora/reports/2022-03.pdf | Bin 0 -> 199401 bytes .../certora/reports/2022-05.pdf | Bin 0 -> 132223 bytes .../lib/openzeppelin-contracts/certora/run.js | 160 + .../openzeppelin-contracts/certora/specs.json | 110 + .../certora/specs/AccessControl.spec | 119 + .../specs/AccessControlDefaultAdminRules.spec | 464 + .../certora/specs/AccessManaged.spec | 34 + .../certora/specs/AccessManager.spec | 826 + .../certora/specs/DoubleEndedQueue.spec | 300 + .../certora/specs/ERC20.spec | 352 + .../certora/specs/ERC20FlashMint.spec | 55 + .../certora/specs/ERC20Wrapper.spec | 198 + .../certora/specs/ERC721.spec | 679 + .../certora/specs/EnumerableMap.spec | 333 + .../certora/specs/EnumerableSet.spec | 246 + .../certora/specs/Initializable.spec | 165 + .../certora/specs/Nonces.spec | 92 + .../certora/specs/Ownable.spec | 77 + .../certora/specs/Ownable2Step.spec | 108 + .../certora/specs/Pausable.spec | 96 + .../certora/specs/TimelockController.spec | 274 + .../certora/specs/helpers/helpers.spec | 12 + .../certora/specs/methods/IAccessControl.spec | 8 + .../IAccessControlDefaultAdminRules.spec | 36 + .../certora/specs/methods/IAccessManaged.spec | 5 + .../certora/specs/methods/IAccessManager.spec | 33 + .../certora/specs/methods/IERC20.spec | 11 + .../certora/specs/methods/IERC2612.spec | 5 + .../specs/methods/IERC3156FlashBorrower.spec | 3 + .../specs/methods/IERC3156FlashLender.spec | 5 + .../certora/specs/methods/IERC5313.spec | 3 + .../certora/specs/methods/IERC721.spec | 17 + .../specs/methods/IERC721Receiver.spec | 3 + .../certora/specs/methods/IOwnable.spec | 5 + .../certora/specs/methods/IOwnable2Step.spec | 7 + .../contracts/access/AccessControl.sol | 209 + .../contracts/access/IAccessControl.sol | 98 + .../contracts/access/Ownable.sol | 100 + .../contracts/access/Ownable2Step.sol | 67 + .../contracts/access/README.adoc | 45 + .../AccessControlDefaultAdminRules.sol | 396 + .../extensions/AccessControlEnumerable.sol | 82 + .../IAccessControlDefaultAdminRules.sol | 192 + .../extensions/IAccessControlEnumerable.sol | 31 + .../access/manager/AccessManaged.sol | 113 + .../access/manager/AccessManager.sol | 740 + .../access/manager/AuthorityUtils.sol | 32 + .../access/manager/IAccessManaged.sol | 32 + .../access/manager/IAccessManager.sol | 401 + .../contracts/access/manager/IAuthority.sol | 14 + .../contracts/account/README.adoc | 12 + .../account/utils/draft-ERC4337Utils.sol | 170 + .../account/utils/draft-ERC7579Utils.sol | 278 + .../contracts/finance/README.adoc | 14 + .../contracts/finance/VestingWallet.sol | 159 + .../contracts/finance/VestingWalletCliff.sol | 54 + .../contracts/governance/Governor.sol | 833 + .../contracts/governance/IGovernor.sol | 441 + .../contracts/governance/README.adoc | 181 + .../governance/TimelockController.sol | 472 + .../extensions/GovernorCountingFractional.sol | 196 + .../GovernorCountingOverridable.sol | 225 + .../extensions/GovernorCountingSimple.sol | 102 + .../extensions/GovernorPreventLateQuorum.sol | 92 + .../extensions/GovernorSettings.sol | 112 + .../governance/extensions/GovernorStorage.sol | 125 + .../extensions/GovernorTimelockAccess.sol | 349 + .../extensions/GovernorTimelockCompound.sol | 167 + .../extensions/GovernorTimelockControl.sol | 170 + .../governance/extensions/GovernorVotes.sol | 64 + .../GovernorVotesQuorumFraction.sol | 110 + .../contracts/governance/utils/IVotes.sol | 59 + .../contracts/governance/utils/Votes.sol | 252 + .../governance/utils/VotesExtended.sol | 84 + .../contracts/interfaces/IERC1155.sol | 6 + .../interfaces/IERC1155MetadataURI.sol | 6 + .../contracts/interfaces/IERC1155Receiver.sol | 6 + .../contracts/interfaces/IERC1271.sol | 17 + .../contracts/interfaces/IERC1363.sol | 86 + .../contracts/interfaces/IERC1363Receiver.sol | 32 + .../contracts/interfaces/IERC1363Spender.sol | 26 + .../contracts/interfaces/IERC165.sol | 6 + .../interfaces/IERC1820Implementer.sol | 20 + .../contracts/interfaces/IERC1820Registry.sol | 112 + .../contracts/interfaces/IERC1967.sol | 24 + .../contracts/interfaces/IERC20.sol | 6 + .../contracts/interfaces/IERC20Metadata.sol | 6 + .../contracts/interfaces/IERC2309.sol | 19 + .../contracts/interfaces/IERC2612.sol | 8 + .../contracts/interfaces/IERC2981.sol | 26 + .../contracts/interfaces/IERC3156.sol | 7 + .../interfaces/IERC3156FlashBorrower.sol | 27 + .../interfaces/IERC3156FlashLender.sol | 41 + .../contracts/interfaces/IERC4626.sol | 230 + .../contracts/interfaces/IERC4906.sol | 20 + .../contracts/interfaces/IERC5267.sol | 28 + .../contracts/interfaces/IERC5313.sol | 16 + .../contracts/interfaces/IERC5805.sol | 9 + .../contracts/interfaces/IERC6372.sol | 17 + .../contracts/interfaces/IERC721.sol | 6 + .../interfaces/IERC721Enumerable.sol | 6 + .../contracts/interfaces/IERC721Metadata.sol | 6 + .../contracts/interfaces/IERC721Receiver.sol | 6 + .../contracts/interfaces/IERC777.sol | 200 + .../contracts/interfaces/IERC777Recipient.sol | 35 + .../contracts/interfaces/IERC777Sender.sol | 35 + .../contracts/interfaces/README.adoc | 85 + .../contracts/interfaces/draft-IERC1822.sol | 20 + .../contracts/interfaces/draft-IERC4337.sol | 253 + .../contracts/interfaces/draft-IERC6093.sol | 161 + .../contracts/interfaces/draft-IERC7579.sol | 226 + .../contracts/interfaces/draft-IERC7674.sol | 17 + .../contracts/metatx/ERC2771Context.sol | 86 + .../contracts/metatx/ERC2771Forwarder.sol | 369 + .../contracts/metatx/README.adoc | 17 + .../contracts/mocks/AccessManagedTarget.sol | 34 + .../contracts/mocks/AccessManagerMock.sol | 21 + .../contracts/mocks/ArraysMock.sol | 127 + .../contracts/mocks/AuthorityMock.sol | 69 + .../contracts/mocks/Base64Dirty.sol | 19 + .../contracts/mocks/BatchCaller.sol | 20 + .../contracts/mocks/CallReceiverMock.sol | 73 + .../contracts/mocks/ConstructorMock.sol | 34 + .../contracts/mocks/ContextMock.sol | 35 + .../contracts/mocks/DummyImplementation.sol | 65 + .../contracts/mocks/EIP712Verifier.sol | 16 + .../contracts/mocks/ERC1271WalletMock.sol | 24 + .../ERC165/ERC165InterfacesSupported.sol | 58 + .../mocks/ERC165/ERC165MaliciousData.sol | 12 + .../mocks/ERC165/ERC165MissingData.sol | 7 + .../mocks/ERC165/ERC165NotSupported.sol | 5 + .../mocks/ERC165/ERC165ReturnBomb.sol | 18 + .../contracts/mocks/ERC2771ContextMock.sol | 28 + .../mocks/ERC3156FlashBorrowerMock.sol | 53 + .../contracts/mocks/EtherReceiverMock.sol | 17 + .../contracts/mocks/InitializableMock.sol | 130 + .../mocks/MerkleProofCustomHashMock.sol | 62 + .../contracts/mocks/MerkleTreeMock.sol | 44 + .../contracts/mocks/MulticallHelper.sol | 23 + .../MultipleInheritanceInitializableMocks.sol | 131 + .../contracts/mocks/PausableMock.sol | 31 + .../contracts/mocks/ReentrancyAttack.sol | 12 + .../contracts/mocks/ReentrancyMock.sol | 50 + .../mocks/ReentrancyTransientMock.sol | 50 + .../mocks/RegressionImplementation.sol | 61 + .../SingleInheritanceInitializableMocks.sol | 49 + .../contracts/mocks/Stateless.sol | 49 + .../contracts/mocks/StorageSlotMock.sol | 87 + .../contracts/mocks/TimelockReentrant.sol | 26 + .../contracts/mocks/TransientSlotMock.sol | 61 + .../contracts/mocks/UpgradeableBeaconMock.sol | 27 + .../contracts/mocks/VotesExtendedMock.sol | 42 + .../contracts/mocks/VotesMock.sol | 42 + .../mocks/account/utils/ERC7579UtilsMock.sol | 23 + .../contracts/mocks/compound/CompTimelock.sol | 174 + .../mocks/docs/ERC20WithAutoMinerReward.sol | 22 + .../contracts/mocks/docs/ERC4626Fees.sol | 109 + .../contracts/mocks/docs/MyNFT.sol | 9 + .../AccessControlERC20MintBase.sol | 25 + .../AccessControlERC20MintMissing.sol | 24 + .../AccessControlERC20MintOnlyRole.sol | 23 + .../access-control/AccessControlModified.sol | 14 + .../AccessControlNonRevokableAdmin.sol | 17 + .../AccessManagedERC20MintBase.sol | 16 + .../docs/access-control/MyContractOwnable.sol | 17 + .../mocks/docs/governance/MyGovernor.sol | 81 + .../mocks/docs/governance/MyToken.sol | 21 + .../docs/governance/MyTokenTimestampBased.sol | 32 + .../mocks/docs/governance/MyTokenWrapped.sol | 28 + .../mocks/docs/token/ERC1155/GameItems.sol | 21 + .../token/ERC1155/MyERC115HolderContract.sol | 7 + .../mocks/docs/token/ERC20/GLDToken.sol | 11 + .../mocks/docs/token/ERC721/GameItem.sol | 19 + .../mocks/docs/utilities/Base64NFT.sol | 27 + .../mocks/docs/utilities/Multicall.sol | 15 + .../GovernorCountingOverridableMock.sol | 18 + .../governance/GovernorFractionalMock.sol | 14 + .../mocks/governance/GovernorMock.sol | 14 + .../GovernorPreventLateQuorumMock.sol | 40 + .../mocks/governance/GovernorStorageMock.sol | 79 + .../governance/GovernorTimelockAccessMock.sol | 70 + .../GovernorTimelockCompoundMock.sol | 69 + .../GovernorTimelockControlMock.sol | 69 + .../mocks/governance/GovernorVoteMock.sol | 20 + .../governance/GovernorWithParamsMock.sol | 51 + .../contracts/mocks/proxy/BadBeacon.sol | 11 + .../mocks/proxy/ClashingImplementation.sol | 19 + .../mocks/proxy/UUPSUpgradeableMock.sol | 35 + .../mocks/token/ERC1155ReceiverMock.sol | 74 + .../mocks/token/ERC1363ForceApproveMock.sol | 14 + .../mocks/token/ERC1363NoReturnMock.sol | 34 + .../mocks/token/ERC1363ReceiverMock.sol | 52 + .../mocks/token/ERC1363ReturnFalseMock.sol | 34 + .../mocks/token/ERC1363SpenderMock.sol | 47 + .../mocks/token/ERC20ApprovalMock.sol | 10 + .../mocks/token/ERC20DecimalsMock.sol | 17 + .../mocks/token/ERC20ExcessDecimalsMock.sol | 9 + .../mocks/token/ERC20FlashMintMock.sol | 26 + .../mocks/token/ERC20ForceApproveMock.sol | 13 + .../mocks/token/ERC20GetterHelper.sol | 38 + .../contracts/mocks/token/ERC20Mock.sol | 16 + .../mocks/token/ERC20MulticallMock.sol | 8 + .../mocks/token/ERC20NoReturnMock.sol | 28 + .../contracts/mocks/token/ERC20Reentrant.sol | 39 + .../mocks/token/ERC20ReturnFalseMock.sol | 19 + .../ERC20VotesAdditionalCheckpointsMock.sol | 31 + .../mocks/token/ERC20VotesLegacyMock.sol | 253 + .../mocks/token/ERC20VotesTimestampMock.sol | 29 + .../mocks/token/ERC4626LimitsMock.sol | 23 + .../contracts/mocks/token/ERC4626Mock.sol | 17 + .../mocks/token/ERC4626OffsetMock.sol | 17 + .../contracts/mocks/token/ERC4646FeesMock.sol | 40 + .../token/ERC721ConsecutiveEnumerableMock.sol | 42 + .../mocks/token/ERC721ConsecutiveMock.sol | 61 + .../mocks/token/ERC721ReceiverMock.sol | 47 + .../mocks/token/ERC721URIStorageMock.sol | 17 + .../contracts/package.json | 32 + .../contracts/proxy/Clones.sol | 262 + .../contracts/proxy/ERC1967/ERC1967Proxy.sol | 40 + .../contracts/proxy/ERC1967/ERC1967Utils.sol | 177 + .../contracts/proxy/Proxy.sol | 69 + .../contracts/proxy/README.adoc | 87 + .../contracts/proxy/beacon/BeaconProxy.sol | 57 + .../contracts/proxy/beacon/IBeacon.sol | 16 + .../proxy/beacon/UpgradeableBeacon.sol | 70 + .../proxy/transparent/ProxyAdmin.sol | 45 + .../TransparentUpgradeableProxy.sol | 118 + .../contracts/proxy/utils/Initializable.sol | 228 + .../contracts/proxy/utils/UUPSUpgradeable.sol | 147 + .../contracts/token/ERC1155/ERC1155.sol | 401 + .../contracts/token/ERC1155/IERC1155.sol | 123 + .../token/ERC1155/IERC1155Receiver.sol | 59 + .../contracts/token/ERC1155/README.adoc | 43 + .../ERC1155/extensions/ERC1155Burnable.sol | 28 + .../ERC1155/extensions/ERC1155Pausable.sol | 38 + .../ERC1155/extensions/ERC1155Supply.sol | 90 + .../ERC1155/extensions/ERC1155URIStorage.sol | 61 + .../extensions/IERC1155MetadataURI.sol | 20 + .../token/ERC1155/utils/ERC1155Holder.sol | 42 + .../token/ERC1155/utils/ERC1155Utils.sol | 88 + .../contracts/token/ERC20/ERC20.sol | 312 + .../contracts/token/ERC20/IERC20.sol | 79 + .../contracts/token/ERC20/README.adoc | 75 + .../token/ERC20/extensions/ERC1363.sol | 137 + .../token/ERC20/extensions/ERC20Burnable.sol | 39 + .../token/ERC20/extensions/ERC20Capped.sol | 56 + .../token/ERC20/extensions/ERC20FlashMint.sol | 134 + .../token/ERC20/extensions/ERC20Pausable.sol | 33 + .../token/ERC20/extensions/ERC20Permit.sol | 83 + .../token/ERC20/extensions/ERC20Votes.sol | 83 + .../token/ERC20/extensions/ERC20Wrapper.sol | 91 + .../token/ERC20/extensions/ERC4626.sol | 282 + .../token/ERC20/extensions/IERC20Metadata.sol | 26 + .../token/ERC20/extensions/IERC20Permit.sol | 90 + .../draft-ERC20TemporaryApproval.sol | 119 + .../token/ERC20/utils/ERC1363Utils.sol | 95 + .../contracts/token/ERC20/utils/SafeERC20.sol | 198 + .../contracts/token/ERC721/ERC721.sol | 456 + .../contracts/token/ERC721/IERC721.sol | 135 + .../token/ERC721/IERC721Receiver.sol | 28 + .../contracts/token/ERC721/README.adoc | 69 + .../ERC721/extensions/ERC721Burnable.sol | 26 + .../ERC721/extensions/ERC721Consecutive.sol | 176 + .../ERC721/extensions/ERC721Enumerable.sol | 174 + .../ERC721/extensions/ERC721Pausable.sol | 37 + .../token/ERC721/extensions/ERC721Royalty.sol | 27 + .../ERC721/extensions/ERC721URIStorage.sol | 61 + .../token/ERC721/extensions/ERC721Votes.sol | 47 + .../token/ERC721/extensions/ERC721Wrapper.sol | 102 + .../ERC721/extensions/IERC721Enumerable.sol | 29 + .../ERC721/extensions/IERC721Metadata.sol | 27 + .../token/ERC721/utils/ERC721Holder.sol | 24 + .../token/ERC721/utils/ERC721Utils.sol | 50 + .../contracts/token/common/ERC2981.sol | 143 + .../contracts/token/common/README.adoc | 10 + .../contracts/utils/Address.sol | 150 + .../contracts/utils/Arrays.sol | 482 + .../contracts/utils/Base64.sol | 123 + .../contracts/utils/Bytes.sol | 114 + .../contracts/utils/CAIP10.sol | 54 + .../contracts/utils/CAIP2.sol | 51 + .../contracts/utils/Comparators.sol | 19 + .../contracts/utils/Context.sol | 28 + .../contracts/utils/Create2.sol | 92 + .../contracts/utils/Errors.sol | 34 + .../contracts/utils/Multicall.sol | 37 + .../contracts/utils/Nonces.sol | 46 + .../contracts/utils/NoncesKeyed.sol | 74 + .../contracts/utils/Packing.sol | 1656 + .../contracts/utils/Panic.sol | 57 + .../contracts/utils/Pausable.sol | 119 + .../contracts/utils/README.adoc | 149 + .../contracts/utils/ReentrancyGuard.sol | 87 + .../utils/ReentrancyGuardTransient.sol | 61 + .../contracts/utils/ShortStrings.sol | 122 + .../contracts/utils/SlotDerivation.sol | 155 + .../contracts/utils/StorageSlot.sol | 143 + .../contracts/utils/Strings.sol | 441 + .../contracts/utils/TransientSlot.sol | 183 + .../contracts/utils/cryptography/ECDSA.sol | 180 + .../contracts/utils/cryptography/EIP712.sol | 160 + .../contracts/utils/cryptography/Hashes.sol | 31 + .../utils/cryptography/MerkleProof.sol | 514 + .../utils/cryptography/MessageHashUtils.sol | 84 + .../contracts/utils/cryptography/P256.sol | 370 + .../contracts/utils/cryptography/RSA.sol | 154 + .../utils/cryptography/SignatureChecker.sol | 50 + .../contracts/utils/introspection/ERC165.sol | 27 + .../utils/introspection/ERC165Checker.sol | 124 + .../contracts/utils/introspection/IERC165.sol | 25 + .../contracts/utils/math/Math.sol | 685 + .../contracts/utils/math/SafeCast.sol | 1162 + .../contracts/utils/math/SignedMath.sol | 68 + .../contracts/utils/structs/BitMaps.sol | 60 + .../contracts/utils/structs/Checkpoints.sol | 630 + .../utils/structs/CircularBuffer.sol | 140 + .../utils/structs/DoubleEndedQueue.sol | 156 + .../contracts/utils/structs/EnumerableMap.sol | 905 + .../contracts/utils/structs/EnumerableSet.sol | 375 + .../contracts/utils/structs/Heap.sol | 256 + .../contracts/utils/structs/MerkleTree.sol | 175 + .../contracts/utils/types/Time.sol | 133 + .../vendor/compound/ICompoundTimelock.sol | 86 + .../contracts/vendor/compound/LICENSE | 11 + .../lib/openzeppelin-contracts/docs/README.md | 16 + .../openzeppelin-contracts/docs/antora.yml | 7 + .../lib/openzeppelin-contracts/docs/config.js | 21 + .../ROOT/images/access-control-multiple.svg | 97 + .../ROOT/images/access-manager-functions.svg | 47 + .../modules/ROOT/images/access-manager.svg | 99 + .../modules/ROOT/images/erc4626-attack-3a.png | Bin 0 -> 60433 bytes .../modules/ROOT/images/erc4626-attack-3b.png | Bin 0 -> 66184 bytes .../modules/ROOT/images/erc4626-attack-6.png | Bin 0 -> 56290 bytes .../modules/ROOT/images/erc4626-attack.png | Bin 0 -> 58886 bytes .../modules/ROOT/images/erc4626-deposit.png | Bin 0 -> 115497 bytes .../docs/modules/ROOT/images/erc4626-mint.png | Bin 0 -> 112787 bytes .../ROOT/images/erc4626-rate-linear.png | Bin 0 -> 50813 bytes .../ROOT/images/erc4626-rate-loglog.png | Bin 0 -> 72818 bytes .../ROOT/images/erc4626-rate-loglogext.png | Bin 0 -> 109923 bytes .../docs/modules/ROOT/images/tally-exec.png | Bin 0 -> 231859 bytes .../docs/modules/ROOT/images/tally-vote.png | Bin 0 -> 40507 bytes .../docs/modules/ROOT/nav.adoc | 23 + .../modules/ROOT/pages/access-control.adoc | 288 + .../ROOT/pages/backwards-compatibility.adoc | 48 + .../docs/modules/ROOT/pages/crowdsales.adoc | 11 + .../docs/modules/ROOT/pages/drafts.adoc | 19 + .../docs/modules/ROOT/pages/erc1155.adoc | 118 + .../docs/modules/ROOT/pages/erc20-supply.adoc | 71 + .../docs/modules/ROOT/pages/erc20.adoc | 67 + .../docs/modules/ROOT/pages/erc4626.adoc | 214 + .../docs/modules/ROOT/pages/erc721.adoc | 58 + .../ROOT/pages/extending-contracts.adoc | 51 + .../docs/modules/ROOT/pages/faq.adoc | 13 + .../docs/modules/ROOT/pages/governance.adoc | 239 + .../docs/modules/ROOT/pages/index.adoc | 70 + .../docs/modules/ROOT/pages/tokens.adoc | 31 + .../docs/modules/ROOT/pages/upgradeable.adoc | 77 + .../docs/modules/ROOT/pages/utilities.adoc | 388 + .../docs/modules/ROOT/pages/wizard.adoc | 15 + .../docs/templates/contract.hbs | 137 + .../docs/templates/helpers.js | 46 + .../docs/templates/page.hbs | 4 + .../docs/templates/properties.js | 72 + .../openzeppelin-contracts/eslint.config.mjs | 26 + .../lib/openzeppelin-contracts/foundry.toml | 15 + .../fv-requirements.txt | 4 + .../openzeppelin-contracts/hardhat.config.js | 124 + .../hardhat/async-test-sanity.js | 3 + .../hardhat/env-artifacts.js | 29 + .../hardhat/ignore-unreachable-warnings.js | 45 + .../hardhat/remappings.js | 18 + .../hardhat/skip-foundry-tests.js | 6 + .../hardhat/task-test-get-files.js | 25 + .../lib/erc4626-tests/ERC4626.prop.sol | 404 + .../lib/erc4626-tests/ERC4626.test.sol | 349 + .../lib/erc4626-tests/LICENSE | 661 + .../lib/erc4626-tests/README.md | 121 + .../lib/forge-std/.gitattributes | 1 + .../lib/forge-std/.github/workflows/ci.yml | 128 + .../lib/forge-std/.github/workflows/sync.yml | 31 + .../lib/forge-std/LICENSE-APACHE | 203 + .../lib/forge-std/LICENSE-MIT | 25 + .../lib/forge-std/README.md | 235 + .../lib/forge-std/foundry.toml | 21 + .../lib/forge-std/package.json | 16 + .../lib/forge-std/scripts/vm.py | 635 + .../lib/forge-std/src/Base.sol | 35 + .../lib/forge-std/src/Script.sol | 27 + .../lib/forge-std/src/StdAssertions.sol | 669 + .../lib/forge-std/src/StdChains.sol | 263 + .../lib/forge-std/src/StdCheats.sol | 817 + .../lib/forge-std/src/StdError.sol | 15 + .../lib/forge-std/src/StdInvariant.sol | 122 + .../lib/forge-std/src/StdJson.sol | 283 + .../lib/forge-std/src/StdMath.sol | 43 + .../lib/forge-std/src/StdStorage.sol | 473 + .../lib/forge-std/src/StdStyle.sol | 333 + .../lib/forge-std/src/StdToml.sol | 283 + .../lib/forge-std/src/StdUtils.sol | 226 + .../lib/forge-std/src/Test.sol | 33 + .../lib/forge-std/src/Vm.sol | 1968 + .../lib/forge-std/src/console.sol | 1560 + .../lib/forge-std/src/console2.sol | 4 + .../lib/forge-std/src/interfaces/IERC1155.sol | 105 + .../lib/forge-std/src/interfaces/IERC165.sol | 12 + .../lib/forge-std/src/interfaces/IERC20.sol | 43 + .../lib/forge-std/src/interfaces/IERC4626.sol | 190 + .../lib/forge-std/src/interfaces/IERC721.sol | 164 + .../forge-std/src/interfaces/IMulticall3.sol | 73 + .../lib/forge-std/src/mocks/MockERC20.sol | 234 + .../lib/forge-std/src/mocks/MockERC721.sol | 231 + .../lib/forge-std/src/safeconsole.sol | 13937 +++ .../lib/forge-std/test/StdAssertions.t.sol | 145 + .../lib/forge-std/test/StdChains.t.sol | 228 + .../lib/forge-std/test/StdCheats.t.sol | 618 + .../lib/forge-std/test/StdError.t.sol | 120 + .../lib/forge-std/test/StdJson.t.sol | 49 + .../lib/forge-std/test/StdMath.t.sol | 202 + .../lib/forge-std/test/StdStorage.t.sol | 471 + .../lib/forge-std/test/StdStyle.t.sol | 110 + .../lib/forge-std/test/StdToml.t.sol | 49 + .../lib/forge-std/test/StdUtils.t.sol | 342 + .../lib/forge-std/test/Vm.t.sol | 18 + .../test/compilation/CompilationScript.sol | 10 + .../compilation/CompilationScriptBase.sol | 10 + .../test/compilation/CompilationTest.sol | 10 + .../test/compilation/CompilationTestBase.sol | 10 + .../test/fixtures/broadcast.log.json | 187 + .../lib/forge-std/test/fixtures/test.json | 8 + .../lib/forge-std/test/fixtures/test.toml | 6 + .../lib/forge-std/test/mocks/MockERC20.t.sol | 441 + .../lib/forge-std/test/mocks/MockERC721.t.sol | 721 + .../lib/halmos-cheatcodes/LICENSE | 661 + .../lib/halmos-cheatcodes/README.md | 100 + .../lib/halmos-cheatcodes/src/SVM.sol | 35 + .../lib/halmos-cheatcodes/src/SymTest.sol | 11 + .../lib/openzeppelin-contracts/logo.svg | 15 + .../lib/openzeppelin-contracts/netlify.toml | 3 + .../openzeppelin-contracts/package-lock.json | 11276 ++ .../lib/openzeppelin-contracts/package.json | 92 + .../lib/openzeppelin-contracts/remappings.txt | 1 + .../lib/openzeppelin-contracts/renovate.json | 4 + .../scripts/checks/compare-layout.js | 20 + .../scripts/checks/compareGasReports.js | 247 + .../scripts/checks/coverage.sh | 18 + .../scripts/checks/extract-layout.js | 38 + .../scripts/checks/generation.sh | 6 + .../scripts/checks/inheritance-ordering.js | 55 + .../scripts/checks/pragma-consistency.js | 49 + .../openzeppelin-contracts/scripts/gen-nav.js | 41 + .../scripts/generate/format-lines.js | 16 + .../scripts/generate/helpers/sanitize.js | 5 + .../scripts/generate/run.js | 58 + .../scripts/generate/templates/Arrays.js | 384 + .../scripts/generate/templates/Arrays.opts.js | 3 + .../scripts/generate/templates/Checkpoints.js | 242 + .../generate/templates/Checkpoints.opts.js | 17 + .../generate/templates/Checkpoints.t.js | 137 + .../generate/templates/EnumerableMap.js | 272 + .../generate/templates/EnumerableMap.opts.js | 19 + .../generate/templates/EnumerableSet.js | 247 + .../generate/templates/EnumerableSet.opts.js | 12 + .../scripts/generate/templates/MerkleProof.js | 187 + .../generate/templates/MerkleProof.opts.js | 11 + .../scripts/generate/templates/Packing.js | 92 + .../generate/templates/Packing.opts.js | 3 + .../scripts/generate/templates/Packing.t.js | 48 + .../scripts/generate/templates/SafeCast.js | 136 + .../scripts/generate/templates/Slot.opts.js | 15 + .../generate/templates/SlotDerivation.js | 119 + .../generate/templates/SlotDerivation.t.js | 127 + .../scripts/generate/templates/StorageSlot.js | 77 + .../generate/templates/StorageSlotMock.js | 57 + .../generate/templates/TransientSlot.js | 80 + .../generate/templates/TransientSlotMock.js | 35 + .../scripts/generate/templates/conversion.js | 30 + .../scripts/git-user-config.sh | 6 + .../openzeppelin-contracts/scripts/helpers.js | 7 + .../openzeppelin-contracts/scripts/prepack.sh | 23 + .../scripts/prepare-docs.sh | 26 + .../openzeppelin-contracts/scripts/prepare.sh | 5 + .../scripts/release/format-changelog.js | 33 + .../scripts/release/synchronize-versions.js | 15 + .../scripts/release/update-comment.js | 34 + .../scripts/release/version.sh | 11 + .../release/workflow/exit-prerelease.sh | 8 + .../release/workflow/github-release.js | 48 + .../release/workflow/integrity-check.sh | 20 + .../scripts/release/workflow/pack.sh | 26 + .../scripts/release/workflow/publish.sh | 26 + .../scripts/release/workflow/rerun.js | 7 + .../workflow/set-changesets-pr-title.js | 17 + .../scripts/release/workflow/start.sh | 35 + .../scripts/release/workflow/state.js | 112 + .../scripts/remove-ignored-artifacts.js | 45 + .../scripts/solhint-custom/index.js | 84 + .../scripts/solhint-custom/package.json | 5 + .../scripts/update-docs-branch.js | 65 + .../scripts/upgradeable/README.md | 21 + .../scripts/upgradeable/patch-apply.sh | 19 + .../scripts/upgradeable/patch-save.sh | 18 + .../scripts/upgradeable/transpile-onto.sh | 54 + .../scripts/upgradeable/transpile.sh | 50 + .../scripts/upgradeable/upgradeable.patch | 361 + .../slither.config.json | 5 + .../openzeppelin-contracts/solhint.config.js | 26 + .../openzeppelin-contracts/test/TESTING.md | 3 + .../test/access/AccessControl.behavior.js | 874 + .../test/access/AccessControl.test.js | 19 + .../test/access/Ownable.test.js | 79 + .../test/access/Ownable2Step.test.js | 102 + .../AccessControlDefaultAdminRules.test.js | 32 + .../AccessControlEnumerable.test.js | 24 + .../test/access/manager/AccessManaged.test.js | 146 + .../access/manager/AccessManager.behavior.js | 257 + .../access/manager/AccessManager.predicate.js | 456 + .../test/access/manager/AccessManager.test.js | 2489 + .../access/manager/AuthorityUtils.test.js | 102 + .../account/utils/draft-ERC4337Utils.test.js | 288 + .../account/utils/draft-ERC7579Utils.t.sol | 421 + .../account/utils/draft-ERC7579Utils.test.js | 353 + .../test/bin/EntryPoint070.abi | 1 + .../test/bin/EntryPoint070.bytecode | Bin 0 -> 16035 bytes .../test/bin/SenderCreator070.abi | 1 + .../test/bin/SenderCreator070.bytecode | Bin 0 -> 451 bytes .../test/finance/VestingWallet.behavior.js | 87 + .../test/finance/VestingWallet.test.js | 65 + .../test/finance/VestingWalletCliff.test.js | 70 + .../test/governance/Governor.t.sol | 55 + .../test/governance/Governor.test.js | 992 + .../governance/TimelockController.test.js | 1279 + .../GovernorCountingFractional.test.js | 248 + .../GovernorCountingOverridable.test.js | 346 + .../extensions/GovernorERC721.test.js | 131 + .../GovernorPreventLateQuorum.test.js | 185 + .../extensions/GovernorStorage.test.js | 155 + .../extensions/GovernorTimelockAccess.test.js | 864 + .../GovernorTimelockCompound.test.js | 448 + .../GovernorTimelockControl.test.js | 504 + .../GovernorVotesQuorumFraction.test.js | 165 + .../extensions/GovernorWithParams.test.js | 245 + .../test/governance/utils/ERC6372.behavior.js | 28 + .../test/governance/utils/Votes.behavior.js | 325 + .../test/governance/utils/Votes.test.js | 102 + .../governance/utils/VotesExtended.test.js | 152 + .../test/helpers/access-manager.js | 85 + .../test/helpers/account.js | 14 + .../test/helpers/chains.js | 109 + .../test/helpers/constants.js | 4 + .../test/helpers/deploy.js | 14 + .../test/helpers/eip712-types.js | 59 + .../test/helpers/eip712.js | 45 + .../test/helpers/enums.js | 12 + .../test/helpers/erc4337-entrypoint.js | 31 + .../test/helpers/erc4337.js | 111 + .../test/helpers/erc7579.js | 58 + .../test/helpers/governance.js | 215 + .../test/helpers/iterate.js | 36 + .../test/helpers/math.js | 33 + .../test/helpers/methods.js | 14 + .../test/helpers/random.js | 19 + .../test/helpers/storage.js | 48 + .../test/helpers/strings.js | 5 + .../test/helpers/time.js | 30 + .../test/helpers/txpool.js | 29 + .../test/metatx/ERC2771Context.test.js | 133 + .../test/metatx/ERC2771Forwarder.t.sol | 279 + .../test/metatx/ERC2771Forwarder.test.js | 384 + .../test/proxy/Clones.behaviour.js | 160 + .../test/proxy/Clones.t.sol | 91 + .../test/proxy/Clones.test.js | 175 + .../test/proxy/ERC1967/ERC1967Proxy.test.js | 23 + .../test/proxy/ERC1967/ERC1967Utils.test.js | 162 + .../test/proxy/Proxy.behaviour.js | 185 + .../test/proxy/beacon/BeaconProxy.test.js | 141 + .../proxy/beacon/UpgradeableBeacon.test.js | 55 + .../test/proxy/transparent/ProxyAdmin.test.js | 82 + .../TransparentUpgradeableProxy.behaviour.js | 357 + .../TransparentUpgradeableProxy.test.js | 28 + .../test/proxy/utils/Initializable.test.js | 216 + .../test/proxy/utils/UUPSUpgradeable.test.js | 120 + .../test/sanity.test.js | 27 + .../test/token/ERC1155/ERC1155.behavior.js | 763 + .../test/token/ERC1155/ERC1155.test.js | 213 + .../extensions/ERC1155Burnable.test.js | 66 + .../extensions/ERC1155Pausable.test.js | 105 + .../ERC1155/extensions/ERC1155Supply.test.js | 119 + .../extensions/ERC1155URIStorage.test.js | 70 + .../token/ERC1155/utils/ERC1155Holder.test.js | 56 + .../token/ERC1155/utils/ERC1155Utils.test.js | 299 + .../test/token/ERC20/ERC20.behavior.js | 269 + .../test/token/ERC20/ERC20.test.js | 199 + .../token/ERC20/extensions/ERC1363.test.js | 370 + .../ERC20/extensions/ERC20Burnable.test.js | 105 + .../ERC20/extensions/ERC20Capped.test.js | 55 + .../ERC20/extensions/ERC20FlashMint.test.js | 164 + .../ERC20/extensions/ERC20Pausable.test.js | 129 + .../ERC20/extensions/ERC20Permit.test.js | 109 + .../token/ERC20/extensions/ERC20Votes.test.js | 546 + .../ERC20/extensions/ERC20Wrapper.test.js | 203 + .../test/token/ERC20/extensions/ERC4626.t.sol | 41 + .../token/ERC20/extensions/ERC4626.test.js | 888 + .../draft-ERC20TemporaryApproval.test.js | 142 + .../test/token/ERC20/utils/SafeERC20.test.js | 427 + .../test/token/ERC721/ERC721.behavior.js | 972 + .../test/token/ERC721/ERC721.test.js | 23 + .../token/ERC721/ERC721Enumerable.test.js | 28 + .../ERC721/extensions/ERC721Burnable.test.js | 77 + .../ERC721/extensions/ERC721Consecutive.t.sol | 181 + .../extensions/ERC721Consecutive.test.js | 236 + .../ERC721/extensions/ERC721Pausable.test.js | 81 + .../ERC721/extensions/ERC721Royalty.test.js | 57 + .../extensions/ERC721URIStorage.test.js | 121 + .../ERC721/extensions/ERC721Votes.test.js | 194 + .../ERC721/extensions/ERC721Wrapper.test.js | 201 + .../token/ERC721/utils/ERC721Holder.test.js | 20 + .../token/ERC721/utils/ERC721Utils.test.js | 94 + .../test/token/common/ERC2981.behavior.js | 152 + .../test/utils/Address.test.js | 281 + .../test/utils/Arrays.t.sol | 31 + .../test/utils/Arrays.test.js | 223 + .../test/utils/Base64.t.sol | 34 + .../test/utils/Base64.test.js | 59 + .../test/utils/Bytes.test.js | 88 + .../test/utils/CAIP.test.js | 53 + .../test/utils/Context.behavior.js | 48 + .../test/utils/Context.test.js | 18 + .../test/utils/Create2.t.sol | 17 + .../test/utils/Create2.test.js | 190 + .../test/utils/Multicall.test.js | 72 + .../test/utils/Nonces.behavior.js | 189 + .../test/utils/Nonces.test.js | 16 + .../test/utils/NoncesKeyed.test.js | 17 + .../test/utils/Packing.t.sol | 993 + .../test/utils/Packing.test.js | 70 + .../test/utils/Panic.test.js | 37 + .../test/utils/Pausable.test.js | 90 + .../test/utils/ReentrancyGuard.test.js | 50 + .../test/utils/ShortStrings.t.sol | 109 + .../test/utils/ShortStrings.test.js | 64 + .../test/utils/SlotDerivation.t.sol | 248 + .../test/utils/SlotDerivation.test.js | 58 + .../test/utils/StorageSlot.test.js | 73 + .../test/utils/Strings.t.sol | 50 + .../test/utils/Strings.test.js | 342 + .../test/utils/TransientSlot.test.js | 59 + .../test/utils/cryptography/ECDSA.test.js | 211 + .../test/utils/cryptography/EIP712.test.js | 105 + .../utils/cryptography/MerkleProof.test.js | 213 + .../cryptography/MessageHashUtils.test.js | 68 + .../test/utils/cryptography/P256.t.sol | 44 + .../test/utils/cryptography/P256.test.js | 156 + .../test/utils/cryptography/RSA.helper.js | 17 + .../test/utils/cryptography/RSA.test.js | 102 + .../utils/cryptography/SigVer15_186-3.rsp | 3850 + .../cryptography/SignatureChecker.test.js | 61 + .../ecdsa_secp256r1_sha256_p1363_test.json | 3719 + .../test/utils/introspection/ERC165.test.js | 18 + .../utils/introspection/ERC165Checker.test.js | 245 + .../SupportsInterface.behavior.js | 145 + .../test/utils/math/Math.t.sol | 311 + .../test/utils/math/Math.test.js | 562 + .../test/utils/math/SafeCast.test.js | 159 + .../test/utils/math/SignedMath.t.sol | 80 + .../test/utils/math/SignedMath.test.js | 53 + .../test/utils/structs/BitMap.test.js | 149 + .../test/utils/structs/Checkpoints.t.sol | 332 + .../test/utils/structs/Checkpoints.test.js | 146 + .../test/utils/structs/CircularBuffer.test.js | 83 + .../utils/structs/DoubleEndedQueue.test.js | 102 + .../utils/structs/EnumerableMap.behavior.js | 151 + .../test/utils/structs/EnumerableMap.test.js | 65 + .../utils/structs/EnumerableSet.behavior.js | 116 + .../test/utils/structs/EnumerableSet.test.js | 61 + .../test/utils/structs/Heap.t.sol | 74 + .../test/utils/structs/Heap.test.js | 113 + .../test/utils/structs/MerkleTree.test.js | 100 + .../test/utils/types/Time.test.js | 135 + .../lib/sequence-v3/package.json | 13 + .../lib/sequence-v3/pnpm-lock.yaml | 157 + .../lib/sequence-v3/pnpm-workspace.yaml | 2 + .../lib/sequence-v3/script/Deploy.s.sol | 36 + .../lib/sequence-v3/script/DeployMocks.s.sol | 19 + .../lib/sequence-v3/src/Estimator.sol | 111 + .../lib/sequence-v3/src/Factory.sol | 28 + .../lib/sequence-v3/src/Guest.sol | 76 + .../lib/sequence-v3/src/Simulator.sol | 109 + .../lib/sequence-v3/src/Stage1Module.sol | 29 + .../lib/sequence-v3/src/Stage2Module.sol | 27 + .../lib/sequence-v3/src/Wallet.huff | 55 + .../lib/sequence-v3/src/Wallet.sol | 67 + .../src/extensions/passkeys/Passkeys.sol | 123 + .../src/extensions/recovery/Recovery.sol | 217 + .../src/extensions/sessions/SessionErrors.sol | 56 + .../extensions/sessions/SessionManager.sol | 133 + .../src/extensions/sessions/SessionSig.sol | 421 + .../explicit/ExplicitSessionManager.sol | 171 + .../explicit/IExplicitSessionManager.sol | 41 + .../sessions/explicit/Permission.sol | 112 + .../sessions/explicit/PermissionValidator.sol | 135 + .../sessions/implicit/Attestation.sol | 122 + .../implicit/ISignalsImplicitMode.sol | 26 + .../implicit/ImplicitSessionManager.sol | 83 + .../lib/sequence-v3/src/modules/Calls.sol | 124 + .../sequence-v3/src/modules/ERC4337v07.sol | 73 + .../lib/sequence-v3/src/modules/Hooks.sol | 124 + .../src/modules/Implementation.sol | 50 + .../lib/sequence-v3/src/modules/Nonce.sol | 48 + .../lib/sequence-v3/src/modules/Payload.sol | 278 + .../src/modules/ReentrancyGuard.sol | 38 + .../lib/sequence-v3/src/modules/Storage.sol | 37 + .../sequence-v3/src/modules/auth/BaseAuth.sol | 174 + .../sequence-v3/src/modules/auth/BaseSig.sol | 500 + .../sequence-v3/src/modules/auth/SelfAuth.sol | 19 + .../src/modules/auth/Stage1Auth.sol | 62 + .../src/modules/auth/Stage2Auth.sol | 45 + .../src/modules/interfaces/IAccount.sol | 65 + .../src/modules/interfaces/IAuth.sol | 17 + .../src/modules/interfaces/ICheckpointer.sol | 25 + .../interfaces/IDelegatedExtension.sol | 25 + .../modules/interfaces/IERC1155Receiver.sol | 38 + .../src/modules/interfaces/IERC1271.sol | 35 + .../modules/interfaces/IERC223Receiver.sol | 15 + .../modules/interfaces/IERC721Receiver.sol | 21 + .../modules/interfaces/IERC777Receiver.sol | 24 + .../src/modules/interfaces/IEntryPoint.sol | 10 + .../src/modules/interfaces/IPartialAuth.sol | 35 + .../src/modules/interfaces/ISapient.sol | 38 + .../lib/sequence-v3/src/utils/Base64.sol | 169 + .../lib/sequence-v3/src/utils/LibBytes.sol | 120 + .../lib/sequence-v3/src/utils/LibOptim.sol | 68 + .../lib/sequence-v3/src/utils/P256.sol | 153 + .../lib/sequence-v3/src/utils/WebAuthn.sol | 333 + .../lib/sequence-v3/test/Factory.t.sol | 32 + .../lib/sequence-v3/test/Guest.t.sol | 287 + .../lib/sequence-v3/test/Stage1Module.t.sol | 1305 + .../lib/sequence-v3/test/Wallet.t.sol | 110 + .../test/extensions/passkeys/Passkeys.t.sol | 540 + .../test/extensions/recovery/Recovery.t.sol | 595 + .../extensions/sessions/Attestation.t.sol | 51 + .../test/extensions/sessions/Permission.t.sol | 157 + .../extensions/sessions/SessionCalls.t.sol | 299 + .../extensions/sessions/SessionManager.t.sol | 855 + .../test/extensions/sessions/SessionSig.t.sol | 1020 + .../extensions/sessions/SessionTestBase.sol | 209 + .../explicit/ExplicitSessionManager.t.sol | 866 + .../explicit/PermissionValidator.t.sol | 323 + .../implicit/ImplicitSessionManager.t.sol | 221 + .../recovery/RecoveryDenialOfService.t.sol | 199 + .../sessions/ExtendedSessionTestBase.sol | 175 + .../sessions/SessionDenialOfService.t.sol | 191 + .../sessions/SessionLimitIncrementTest.t.sol | 76 + .../extensions/sessions/SessionSelfCall.t.sol | 72 + .../sessions/SessionSignatureAbuse.t.sol | 143 + .../sessions/SessionUsingERC4337.t.sol | 142 + .../sessions/SessionValueForwarding.t.sol | 295 + .../ERC4337v07/ERC4337Entrypoint.t.sol | 179 + .../lib/sequence-v3/test/mocks/AcceptAll.sol | 10 + .../lib/sequence-v3/test/mocks/CanReenter.sol | 11 + .../lib/sequence-v3/test/mocks/Emitter.sol | 39 + .../lib/sequence-v3/test/mocks/MockERC20.sol | 46 + .../test/mocks/MockPayableReceiver.sol | 8 + .../sequence-v3/test/mocks/ValueForwarder.sol | 14 + .../sequence-v3/test/modules/BaseSig.t.sol | 2550 + .../lib/sequence-v3/test/modules/Calls.t.sol | 457 + .../sequence-v3/test/modules/ERC4337v07.t.sol | 246 + .../lib/sequence-v3/test/modules/Hooks.t.sol | 174 + .../test/modules/Implementation.t.sol | 31 + .../lib/sequence-v3/test/modules/Nonce.t.sol | 50 + .../sequence-v3/test/modules/Payload.t.sol | 381 + .../lib/sequence-v3/test/utils/Base64.t.sol | 161 + .../lib/sequence-v3/test/utils/LibBytes.t.sol | 335 + .../sequence-v3/test/utils/PrimitivesRPC.sol | 581 + .../lib/sequence-v3/test/utils/TestUtils.sol | 129 + lib/signals-implicit-mode/remappings.txt | 1 + lib/signals-implicit-mode/script/Deploy.s.sol | 18 + lib/signals-implicit-mode/soldeer.lock | 6 + .../src/helper/SignalsImplicitMode.sol | 58 + .../src/registry/IImplicitProjectRegistry.sol | 79 + .../registry/IImplicitProjectValidation.sol | 25 + .../src/registry/ImplicitProjectRegistry.sol | 211 + .../test/ImplicitProjectRegistry.t.sol | 774 + .../test/SignalsImplicitMode.t.sol | 115 + lib/signals-implicit-mode/test/TestHelper.sol | 64 + .../test/mock/SignalsImplicitModeMock.sol | 15 + package-lock.json | 49400 ++++++++ packages/services/api/eslint.config.js | 4 +- packages/services/builder/eslint.config.js | 4 +- packages/services/guard/eslint.config.js | 4 +- .../services/guard/src/client/guard.gen.ts | 9 +- .../services/identity-instrument/CHANGELOG.md | 194 - .../services/identity-instrument/src/index.ts | 2 +- .../marketplace/src/marketplace.gen.ts | 1375 +- .../services/metadata/src/metadata.gen.ts | 2264 +- packages/services/relayer/hardhat.config.js | 15 + packages/services/relayer/src/index.ts | 4 +- .../services/relayer/src/local-relayer.ts | 125 + .../services/relayer/src/provider-relayer.ts | 284 + .../services/relayer/src/relayer/relayer.ts | 41 - .../src/relayer/rpc-relayer/relayer.gen.ts | 2500 - .../services/relayer/src/rpc-relayer/index.ts | 1 + .../relayer/src/rpc-relayer/relayer.gen.ts | 2037 + packages/services/userdata/CHANGELOG.md | 166 - packages/services/userdata/README.md | 3 - packages/services/userdata/package.json | 31 - packages/services/userdata/src/index.ts | 36 - .../services/userdata/src/userdata.gen.ts | 1862 - packages/services/userdata/tsconfig.json | 10 - packages/wallet/core/CHANGELOG.md | 329 - .../core}/src/preconditions/codec.ts | 71 +- .../core}/src/preconditions/index.ts | 0 .../core}/src/preconditions/selectors.ts | 19 +- .../core}/src/preconditions/types.ts | 0 .../core/src/{bundler => relayer}/bundler.ts | 4 +- .../{bundler => relayer}/bundlers/index.ts | 0 .../{bundler => relayer}/bundlers/pimlico.ts | 4 +- .../core/src/{bundler => relayer}/index.ts | 2 + .../core/src/relayer/relayer.ts} | 41 +- .../core}/src/relayer/standard/abi.ts | 0 .../core}/src/relayer/standard/eip6963.ts | 10 +- .../core}/src/relayer/standard/index.ts | 1 + .../core}/src/relayer/standard/local.ts | 0 .../core}/src/relayer/standard/pk-relayer.ts | 7 +- .../core/src/relayer/standard/rpc}/index.ts | 0 .../src/relayer/standard/rpc/relayer.gen.ts | 2037 + .../core}/src/relayer/standard/sequence.ts | 0 packages/wallet/core/src/signers/guard.ts | 7 +- .../wallet/core/src/signers/pk/encrypted.ts | 4 +- .../core/src/signers/session-manager.ts | 2 +- .../core/src/signers/session/explicit.ts | 5 +- .../core/src/signers/session/implicit.ts | 17 +- packages/wallet/core/src/state/local/index.ts | 2 +- .../src/utils/session/permission-builder.ts | 4 +- .../wallet/core/src/utils/session/types.ts | 33 - packages/wallet/core/src/wallet.ts | 8 +- .../core/test}/preconditions.test.ts | 0 .../core}/test/preconditions/codec.test.ts | 0 .../test/preconditions/selectors.test.ts | 0 .../core}/test/preconditions/types.test.ts | 0 .../wallet/core/test/relayer/bundler.test.ts | 6 +- .../core}/test/relayer/relayer.test.ts | 0 .../test/signers-session-implicit.test.ts | 4 +- packages/wallet/core/vitest.config.ts | 9 + packages/wallet/dapp-client/CHANGELOG.md | 358 - .../wallet/dapp-client/src/DappTransport.ts | 95 +- .../wallet/dapp-client/src/types/index.ts | 94 +- .../wallet/dapp-client/src/utils/constants.ts | 4 +- .../wallet/dapp-client/src/utils/index.ts | 50 +- .../primitives-cli/src/subcommands/address.ts | 2 +- .../primitives-cli/src/subcommands/server.ts | 3 +- .../primitives-cli/src/subcommands/session.ts | 20 +- packages/wallet/primitives/CHANGELOG.md | 194 - packages/wallet/primitives/src/config.ts | 46 - packages/wallet/primitives/src/constants.ts | 3 +- packages/wallet/primitives/src/context.ts | 42 - packages/wallet/primitives/src/erc-6492.ts | 14 +- .../wallet/primitives/src/extensions/index.ts | 12 - packages/wallet/primitives/src/payload.ts | 4 - packages/wallet/primitives/src/permission.ts | 4 +- .../wallet/primitives/src/session-config.ts | 243 +- .../primitives/src/session-signature.ts | 173 +- .../wallet/primitives/test/config.test.ts | 63 - .../wallet/primitives/test/erc-6492.test.ts | 14 +- .../primitives/test/session-config.test.ts | 297 +- .../primitives/test/session-signature.test.ts | 235 +- .../wallet/wallet-contracts/.eslintignore | 3 + packages/wallet/wallet-contracts/.eslintrc.js | 38 + .../wallet/wallet-contracts/.gitattributes | 1 + .../actions/install-dependencies/action.yml | 36 + .../wallet-contracts/.github/workflows/ci.yml | 108 + packages/wallet/wallet-contracts/.gitmodules | 6 + packages/wallet/wallet-contracts/.prettierrc | 9 + packages/wallet/wallet-contracts/.solcover.js | 3 + .../wallet/wallet-contracts/.solhint.json | 26 + .../0xsequence-wallet-contracts-3.0.1.tgz | Bin 0 -> 34322 bytes .../Counter/.github/workflows/test.yml | 38 + .../wallet-contracts/Counter/.gitmodules | 3 + .../wallet/wallet-contracts/Counter/README.md | 66 + .../Counter.s.sol/1/run-1763223074249.json | 47 + .../Counter.s.sol/1/run-1763223530987.json | 47 + .../broadcast/Counter.s.sol/1/run-latest.json | 47 + .../wallet-contracts/Counter/foundry.lock | 8 + .../wallet-contracts/Counter/foundry.toml | 6 + .../Counter/lib/forge-std/.gitattributes | 1 + .../Counter/lib/forge-std/.github/CODEOWNERS | 1 + .../lib/forge-std/.github/dependabot.yml | 6 + .../lib/forge-std/.github/workflows/ci.yml | 142 + .../lib/forge-std/.github/workflows/sync.yml | 36 + .../Counter/lib/forge-std/CONTRIBUTING.md | 193 + .../Counter/lib/forge-std/LICENSE-APACHE | 203 + .../Counter/lib/forge-std/LICENSE-MIT | 25 + .../Counter/lib/forge-std/README.md | 266 + .../lib/forge-std/RELEASE_CHECKLIST.md | 12 + .../Counter/lib/forge-std/foundry.toml | 27 + .../Counter/lib/forge-std/package.json | 16 + .../Counter/lib/forge-std/scripts/vm.py | 646 + .../Counter/lib/forge-std/src/Base.sol | 48 + .../Counter/lib/forge-std/src/Config.sol | 60 + .../Counter/lib/forge-std/src/LibVariable.sol | 477 + .../Counter/lib/forge-std/src/Script.sol | 28 + .../lib/forge-std/src/StdAssertions.sol | 764 + .../Counter/lib/forge-std/src/StdChains.sol | 287 + .../Counter/lib/forge-std/src/StdCheats.sol | 829 + .../Counter/lib/forge-std/src/StdConfig.sol | 612 + .../lib/forge-std/src/StdConstants.sol | 30 + .../Counter/lib/forge-std/src/StdError.sol | 15 + .../lib/forge-std/src/StdInvariant.sol | 122 + .../Counter/lib/forge-std/src/StdJson.sol | 283 + .../Counter/lib/forge-std/src/StdMath.sol | 43 + .../Counter/lib/forge-std/src/StdStorage.sol | 473 + .../Counter/lib/forge-std/src/StdStyle.sol | 333 + .../Counter/lib/forge-std/src/StdToml.sol | 283 + .../Counter/lib/forge-std/src/StdUtils.sol | 208 + .../Counter/lib/forge-std/src/Test.sol | 34 + .../Counter/lib/forge-std/src/Vm.sol | 2494 + .../Counter/lib/forge-std/src/console.sol | 1560 + .../Counter/lib/forge-std/src/console2.sol | 4 + .../lib/forge-std/src/interfaces/IERC1155.sol | 105 + .../lib/forge-std/src/interfaces/IERC165.sol | 12 + .../lib/forge-std/src/interfaces/IERC20.sol | 43 + .../lib/forge-std/src/interfaces/IERC4626.sol | 190 + .../lib/forge-std/src/interfaces/IERC6909.sol | 72 + .../lib/forge-std/src/interfaces/IERC721.sol | 164 + .../lib/forge-std/src/interfaces/IERC7540.sol | 150 + .../lib/forge-std/src/interfaces/IERC7575.sol | 241 + .../forge-std/src/interfaces/IMulticall3.sol | 73 + .../Counter/lib/forge-std/src/safeconsole.sol | 13937 +++ .../lib/forge-std/test/CommonBase.t.sol | 44 + .../Counter/lib/forge-std/test/Config.t.sol | 352 + .../lib/forge-std/test/LibVariable.t.sol | 434 + .../lib/forge-std/test/StdAssertions.t.sol | 141 + .../lib/forge-std/test/StdChains.t.sol | 227 + .../lib/forge-std/test/StdCheats.t.sol | 639 + .../lib/forge-std/test/StdConstants.t.sol | 38 + .../Counter/lib/forge-std/test/StdError.t.sol | 120 + .../Counter/lib/forge-std/test/StdJson.t.sol | 49 + .../Counter/lib/forge-std/test/StdMath.t.sol | 202 + .../lib/forge-std/test/StdStorage.t.sol | 488 + .../Counter/lib/forge-std/test/StdStyle.t.sol | 110 + .../Counter/lib/forge-std/test/StdToml.t.sol | 49 + .../Counter/lib/forge-std/test/StdUtils.t.sol | 342 + .../Counter/lib/forge-std/test/Vm.t.sol | 18 + .../test/compilation/CompilationScript.sol | 10 + .../compilation/CompilationScriptBase.sol | 10 + .../test/compilation/CompilationTest.sol | 10 + .../test/compilation/CompilationTestBase.sol | 10 + .../test/fixtures/broadcast.log.json | 187 + .../lib/forge-std/test/fixtures/config.toml | 81 + .../lib/forge-std/test/fixtures/test.json | 8 + .../lib/forge-std/test/fixtures/test.toml | 6 + .../Counter/script/Counter.s.sol | 19 + .../wallet-contracts/Counter/src/Counter.sol | 14 + .../Counter/test/Counter.t.sol | 24 + .../Counter/utils/JsonBindings.sol | 18 + packages/wallet/wallet-contracts/LICENSE | 219 + packages/wallet/wallet-contracts/README.md | 56 + .../audits/v1/Consensys_Diligence.md | 7 + .../v1/Quantstamp_Arcadeum_Report_Final.pdf | Bin 0 -> 399997 bytes .../v1/sequence_quantstamp_audit_feb_2021.pdf | Bin 0 -> 376935 bytes .../Sequence Wallet - Zellic Audit Report.pdf | Bin 0 -> 1669108 bytes ...-horizon-sequence-wallet-audit-2023-02.pdf | Bin 0 -> 1020223 bytes .../wallet-contracts/config/PROD.env.sample | 3 + .../wallet-contracts/contracts/Factory.sol | 23 + .../GuestModule-wallet/metadata.json | 1 + .../contracts/interfaces/IERC1271Wallet.sol | 38 + .../sources/contracts/modules/GuestModule.sol | 126 + .../modules/artifacts/GuestModule.json | 14655 +++ .../artifacts/GuestModule_metadata.json | 985 + .../c563de663c25f57de739af959840b24e.json | 96556 ++++++++++++++++ .../contracts/modules/commons/ModuleAuth.sol | 176 + .../contracts/modules/commons/ModuleCalls.sol | 156 + .../modules/commons/ModuleCreator.sol | 36 + .../modules/commons/ModuleERC165.sol | 18 + .../contracts/modules/commons/ModuleNonce.sol | 67 + .../commons/ModuleOnlyDelegatecall.sol | 23 + .../modules/commons/ModuleSelfAuth.sol | 14 + .../modules/commons/ModuleStorage.sol | 23 + .../commons/interfaces/IModuleAuth.sol | 53 + .../commons/interfaces/IModuleCalls.sol | 44 + .../commons/interfaces/IModuleCreator.sol | 14 + .../submodules/auth/SequenceBaseSig.sol | 276 + .../submodules/auth/SequenceChainedSig.sol | 129 + .../submodules/auth/SequenceDynamicSig.sol | 31 + .../submodules/auth/SequenceNoChainIdSig.sol | 23 + .../submodules/nonce/SubModuleNonce.sol | 30 + .../sources/contracts/utils/LibBytes.sol | 83 + .../contracts/utils/LibBytesPointer.sol | 161 + .../sources/contracts/utils/LibOptim.sol | 102 + .../contracts/utils/SignatureValidator.sol | 137 + .../wallet-contracts/contracts/Wallet.sol | 60 + .../contracts/hooks/WalletProxyHook.sol | 12 + .../hooks/interfaces/IWalletProxy.sol | 12 + .../contracts/interfaces/IERC1271Wallet.sol | 26 + .../interfaces/receivers/IERC1155Receiver.sol | 9 + .../interfaces/receivers/IERC223Receiver.sol | 6 + .../interfaces/receivers/IERC721Receiver.sol | 6 + .../interfaces/receivers/IERC777Receiver.sol | 6 + .../contracts/interfaces/tokens/IERC1155.sol | 27 + .../contracts/interfaces/tokens/IERC20.sol | 14 + .../contracts/interfaces/tokens/IERC721.sol | 18 + .../contracts/mocks/AlwaysRevertMock.sol | 8 + .../contracts/mocks/CallReceiverMock.sol | 22 + .../contracts/mocks/DelegateCallMock.sol | 23 + .../contracts/mocks/ERC1155Mock.sol | 63 + .../contracts/mocks/ERC165CheckerMock.sol | 53 + .../contracts/mocks/ERC20Mock.sol | 51 + .../contracts/mocks/ERC721Mock.sol | 86 + .../contracts/mocks/GasBurnerMock.sol | 17 + .../contracts/mocks/HookCallerMock.sol | 55 + .../contracts/mocks/HookMock.sol | 8 + .../contracts/mocks/LibBytesImpl.sol | 20 + .../contracts/mocks/LibBytesPointerImpl.sol | 24 + .../contracts/mocks/LibStringImp.sol | 24 + .../contracts/mocks/ModuleMock.sol | 10 + .../contracts/modules/GuestModule.sol | 103 + .../contracts/modules/MainModule.sol | 49 + .../modules/MainModuleGasEstimation.sol | 104 + .../modules/MainModuleUpgradable.sol | 61 + .../modules/commons/Implementation.sol | 31 + .../contracts/modules/commons/ModuleAuth.sol | 166 + .../modules/commons/ModuleAuthConvenience.sol | 43 + .../modules/commons/ModuleAuthFixed.sol | 74 + .../modules/commons/ModuleAuthUpgradable.sol | 50 + .../contracts/modules/commons/ModuleCalls.sol | 131 + .../modules/commons/ModuleCreator.sol | 35 + .../modules/commons/ModuleERC165.sol | 17 + .../modules/commons/ModuleERC5719.sol | 18 + .../modules/commons/ModuleExtraAuth.sol | 75 + .../contracts/modules/commons/ModuleHooks.sol | 142 + .../contracts/modules/commons/ModuleIPFS.sol | 37 + .../contracts/modules/commons/ModuleNonce.sol | 66 + .../commons/ModuleOnlyDelegatecall.sol | 22 + .../modules/commons/ModuleSelfAuth.sol | 13 + .../modules/commons/ModuleStorage.sol | 22 + .../modules/commons/ModuleUpdate.sol | 49 + .../ModuleIgnoreAuthUpgradable.sol | 20 + .../gas-estimation/ModuleIgnoreNonceCalls.sol | 34 + .../commons/interfaces/IModuleAuth.sol | 46 + .../interfaces/IModuleAuthUpgradable.sol | 9 + .../commons/interfaces/IModuleCalls.sol | 37 + .../commons/interfaces/IModuleCreator.sol | 13 + .../commons/interfaces/IModuleHooks.sol | 31 + .../commons/interfaces/IModuleUpdate.sol | 21 + .../submodules/auth/SequenceBaseSig.sol | 255 + .../submodules/auth/SequenceChainedSig.sol | 112 + .../submodules/auth/SequenceDynamicSig.sol | 25 + .../submodules/auth/SequenceNoChainIdSig.sol | 14 + .../submodules/nonce/SubModuleNonce.sol | 33 + .../contracts/modules/utils/GasEstimator.sol | 15 + .../modules/utils/MultiCallUtils.sol | 105 + .../contracts/modules/utils/RequireUtils.sol | 112 + .../contracts/modules/utils/SequenceUtils.sol | 7 + .../contracts/trust/Trust.sol | 160 + .../contracts/trust/TrustFactory.sol | 33 + .../contracts/utils/LibAddress.sol | 17 + .../contracts/utils/LibBytes.sol | 75 + .../contracts/utils/LibBytesPointer.sol | 150 + .../contracts/utils/LibOptim.sol | 74 + .../contracts/utils/LibString.sol | 87 + .../contracts/utils/SignatureValidator.sol | 127 + .../wallet/wallet-contracts/docs/book.css | 13 + .../wallet/wallet-contracts/docs/book.toml | 13 + .../wallet-contracts/docs/solidity.min.js | 74 + .../wallet-contracts/docs/src/README.md | 56 + .../wallet-contracts/docs/src/SUMMARY.md | 92 + .../contracts/Factory.sol/contract.Factory.md | 32 + .../docs/src/contracts/README.md | 11 + .../contracts/Wallet.sol/library.Wallet.md | 58 + .../docs/src/contracts/hooks/README.md | 5 + .../contract.WalletProxyHook.md | 15 + .../interface.IWalletProxy.md | 14 + .../src/contracts/hooks/interfaces/README.md | 4 + .../interface.IERC1271Wallet.md | 57 + .../docs/src/contracts/interfaces/README.md | 6 + .../interface.IERC1155Receiver.md | 21 + .../interface.IERC223Receiver.md | 12 + .../interface.IERC721Receiver.md | 12 + .../interface.IERC777Receiver.md | 12 + .../contracts/interfaces/receivers/README.md | 7 + .../tokens/IERC1155.sol/interface.IERC1155.md | 83 + .../tokens/IERC20.sol/interface.IERC20.md | 60 + .../tokens/IERC721.sol/interface.IERC721.md | 87 + .../src/contracts/interfaces/tokens/README.md | 6 + .../contract.AlwaysRevertMock.md | 12 + .../contract.CallReceiverMock.md | 48 + .../contract.DelegateCallMock.md | 48 + .../ERC1155Mock.sol/contract.ERC1155Mock.md | 110 + .../contract.ERC165CheckerMock.md | 37 + .../mocks/ERC20Mock.sol/contract.ERC20Mock.md | 103 + .../ERC721Mock.sol/contract.ERC721Mock.md | 151 + .../contract.GasBurnerMock.md | 19 + .../contract.HookCallerMock.md | 49 + .../mocks/HookMock.sol/contract.HookMock.md | 12 + .../LibBytesImpl.sol/contract.LibBytesImpl.md | 26 + .../contract.LibBytesPointerImpl.md | 33 + .../LibStringImp.sol/contract.LibStringImp.md | 33 + .../ModuleMock.sol/contract.ModuleMock.md | 19 + .../docs/src/contracts/mocks/README.md | 17 + .../GuestModule.sol/contract.GuestModule.md | 124 + .../MainModule.sol/contract.MainModule.md | 57 + .../contract.MainModuleGasEstimation.md | 85 + .../contract.MainModuleUpgradable.md | 63 + .../docs/src/contracts/modules/README.md | 9 + .../contract.Implementation.md | 42 + .../ModuleAuth.sol/abstract.ModuleAuth.md | 203 + .../abstract.ModuleAuthConvenience.md | 53 + .../abstract.ModuleAuthFixed.md | 108 + .../abstract.ModuleAuthUpgradable.md | 75 + .../ModuleCalls.sol/abstract.ModuleCalls.md | 104 + .../contract.ModuleCreator.md | 57 + .../ModuleERC165.sol/abstract.ModuleERC165.md | 31 + .../contract.ModuleERC5719.md | 15 + .../abstract.ModuleExtraAuth.md | 92 + .../ModuleHooks.sol/contract.ModuleHooks.md | 202 + .../ModuleIPFS.sol/contract.ModuleIPFS.md | 52 + .../ModuleNonce.sol/contract.ModuleNonce.md | 96 + .../contract.ModuleOnlyDelegatecall.md | 36 + .../contract.ModuleSelfAuth.md | 19 + .../library.ModuleStorage.md | 33 + .../ModuleUpdate.sol/contract.ModuleUpdate.md | 70 + .../src/contracts/modules/commons/README.md | 23 + .../abstract.ModuleIgnoreAuthUpgradable.md | 32 + .../abstract.ModuleIgnoreNonceCalls.md | 26 + .../modules/commons/gas-estimation/README.md | 5 + .../IModuleAuth.sol/abstract.IModuleAuth.md | 101 + .../interface.IModuleAuthUpgradable.md | 14 + .../interface.IModuleCalls.md | 78 + .../interface.IModuleCreator.md | 33 + .../interface.IModuleHooks.md | 77 + .../abstract.IModuleUpdate.md | 46 + .../modules/commons/interfaces/README.md | 9 + .../modules/commons/submodules/README.md | 5 + .../modules/commons/submodules/auth/README.md | 7 + .../library.SequenceBaseSig.md | 225 + .../abstract.SequenceChainedSig.md | 91 + .../library.SequenceDynamicSig.md | 35 + .../library.SequenceNoChainIdSig.md | 28 + .../commons/submodules/nonce/README.md | 4 + .../library.SubModuleNonce.md | 51 + .../GasEstimator.sol/contract.GasEstimator.md | 14 + .../contract.MultiCallUtils.md | 133 + .../src/contracts/modules/utils/README.md | 7 + .../RequireUtils.sol/contract.RequireUtils.md | 149 + .../contract.SequenceUtils.md | 7 + .../docs/src/contracts/trust/README.md | 6 + .../trust/Trust.sol/contract.Trust.md | 186 + .../trust/Trust.sol/function.absDiff.md | 8 + .../TrustFactory.sol/contract.TrustFactory.md | 26 + .../LibAddress.sol/library.LibAddress.md | 23 + .../utils/LibBytes.sol/library.LibBytes.md | 114 + .../library.LibBytesPointer.md | 201 + .../utils/LibOptim.sol/library.LibOptim.md | 100 + .../utils/LibString.sol/library.LibString.md | 106 + .../docs/src/contracts/utils/README.md | 9 + .../library.SignatureValidator.md | 130 + packages/wallet/wallet-contracts/foundry.lock | 8 + packages/wallet/wallet-contracts/foundry.toml | 11 + .../foundry_test/base/AdvTest.sol | 205 + .../foundry_test/hooks/WalletProxyHook.t.sol | 37 + .../modules/commons/Implementation.t.sol | 66 + .../modules/commons/ModuleCalls.t.sol | 351 + .../modules/commons/ModuleERC5719.t.sol | 42 + .../modules/commons/ModuleExtraAuth.t.sol | 175 + .../modules/commons/ModuleIPFS.t.sol | 46 + .../modules/commons/ModuleStorage.t.sol | 84 + .../submodules/auth/SequenceBaseSig.t.sol | 325 + .../submodules/auth/SequenceChainedSig.t.sol | 276 + .../submodules/auth/SequenceDynamicSig.t.sol | 57 + .../auth/SequenceNoChainIdSig.t.sol | 51 + .../submodules/nonce/SubModuleNonce.t.sol | 16 + .../modules/utils/L2CompressorEncoder.sol | 393 + .../modules/utils/L2CompressorHuff.t.sol | 284 + .../utils/L2CompressorHuffReadExecute.sol | 143 + .../utils/L2CompressorHuffReadFlag.t.sol | 1018 + .../utils/L2CompressorHuffReadNonce.sol | 55 + .../utils/L2CompressorHuffReadTx.t.sol | 93 + .../utils/L2CompressorHuffReadTxs.t.sol | 123 + .../modules/utils/RequireUtils.t.sol | 158 + .../foundry_test/trust/Trust.t.sol | 867 + .../foundry_test/trust/TrustFactory.t.sol | 53 + .../foundry_test/utils/LibAddress.t.sol | 15 + .../foundry_test/utils/LibBytes.t.sol | 100 + .../foundry_test/utils/LibBytesPointer.t.sol | 152 + .../foundry_test/utils/LibOptim.t.sol | 63 + .../utils/SignatureValidator.t.sol | 199 + packages/wallet/wallet-contracts/funding.json | 5 + .../wallet/wallet-contracts/hardhat.config.ts | 72 + .../lib/forge-std/.github/workflows/ci.yml | 92 + .../lib/forge-std/.github/workflows/sync.yml | 29 + .../lib/forge-std/.gitmodules | 3 + .../lib/forge-std/LICENSE-APACHE | 203 + .../lib/forge-std/LICENSE-MIT | 25 + .../wallet-contracts/lib/forge-std/README.md | 250 + .../lib/forge-std/foundry.toml | 21 + .../lib/ds-test/.github/workflows/build.yml | 41 + .../lib/forge-std/lib/ds-test/LICENSE | 674 + .../lib/forge-std/lib/ds-test/Makefile | 14 + .../lib/forge-std/lib/ds-test/default.nix | 4 + .../lib/forge-std/lib/ds-test/demo/demo.sol | 222 + .../lib/forge-std/lib/ds-test/package.json | 15 + .../lib/forge-std/lib/ds-test/src/test.sol | 592 + .../lib/forge-std/lib/ds-test/src/test.t.sol | 417 + .../lib/forge-std/package.json | 16 + .../lib/forge-std/src/Base.sol | 33 + .../lib/forge-std/src/Script.sol | 26 + .../lib/forge-std/src/StdAssertions.sol | 376 + .../lib/forge-std/src/StdChains.sol | 231 + .../lib/forge-std/src/StdCheats.sol | 639 + .../lib/forge-std/src/StdError.sol | 15 + .../lib/forge-std/src/StdInvariant.sol | 92 + .../lib/forge-std/src/StdJson.sol | 179 + .../lib/forge-std/src/StdMath.sol | 43 + .../lib/forge-std/src/StdStorage.sol | 327 + .../lib/forge-std/src/StdStyle.sol | 333 + .../lib/forge-std/src/StdUtils.sol | 192 + .../lib/forge-std/src/Test.sol | 32 + .../wallet-contracts/lib/forge-std/src/Vm.sol | 490 + .../lib/forge-std/src/console.sol | 1533 + .../lib/forge-std/src/console2.sol | 1546 + .../lib/forge-std/src/interfaces/IERC1155.sol | 105 + .../lib/forge-std/src/interfaces/IERC165.sol | 12 + .../lib/forge-std/src/interfaces/IERC20.sol | 43 + .../lib/forge-std/src/interfaces/IERC4626.sol | 190 + .../lib/forge-std/src/interfaces/IERC721.sol | 164 + .../forge-std/src/interfaces/IMulticall3.sol | 73 + .../lib/forge-std/test/StdAssertions.t.sol | 999 + .../lib/forge-std/test/StdChains.t.sol | 160 + .../lib/forge-std/test/StdCheats.t.sol | 418 + .../lib/forge-std/test/StdError.t.sol | 118 + .../lib/forge-std/test/StdMath.t.sol | 197 + .../lib/forge-std/test/StdStorage.t.sol | 283 + .../lib/forge-std/test/StdStyle.t.sol | 110 + .../lib/forge-std/test/StdUtils.t.sol | 297 + .../test/compilation/CompilationScript.sol | 10 + .../compilation/CompilationScriptBase.sol | 10 + .../test/compilation/CompilationTest.sol | 10 + .../test/compilation/CompilationTestBase.sol | 10 + .../test/fixtures/broadcast.log.json | 187 + .../lib/foundry-huff/.git-blame-ignore-revs | 2 + .../foundry-huff/.github/workflows/tests.yaml | 31 + .../lib/foundry-huff/.gitmodules | 6 + .../wallet-contracts/lib/foundry-huff/LICENSE | 201 + .../lib/foundry-huff/README.md | 167 + .../lib/foundry-huff/assets/Group 1.png | Bin 0 -> 23776 bytes .../lib/foundry-huff/assets/banner.jpg | Bin 0 -> 45536 bytes .../black_white_huff-removebg-preview.png | Bin 0 -> 5748 bytes .../foundry-huff/assets/black_white_huff.png | Bin 0 -> 8644 bytes .../lib/foundry-huff/assets/foundry.png | Bin 0 -> 14491 bytes .../assets/foundry_huff_banner.jpg | Bin 0 -> 45502 bytes .../assets/foundry_huff_banner.png | Bin 0 -> 23481 bytes .../lib/foundry-huff/assets/huff.png | Bin 0 -> 11820 bytes .../lib/foundry-huff/assets/inverted_huff.png | Bin 0 -> 14651 bytes .../assets/x-removebg-preview.png | Bin 0 -> 11985 bytes .../lib/foundry-huff/assets/x.jpg | Bin 0 -> 8013 bytes .../lib/foundry-huff/foundry.toml | 10 + .../lib/forge-std/.github/workflows/ci.yml | 134 + .../lib/forge-std/.github/workflows/sync.yml | 29 + .../foundry-huff/lib/forge-std/.gitmodules | 3 + .../foundry-huff/lib/forge-std/LICENSE-APACHE | 203 + .../foundry-huff/lib/forge-std/LICENSE-MIT | 25 + .../lib/foundry-huff/lib/forge-std/README.md | 250 + .../foundry-huff/lib/forge-std/foundry.toml | 21 + .../lib/ds-test/.github/workflows/build.yml | 41 + .../lib/forge-std/lib/ds-test/LICENSE | 674 + .../lib/forge-std/lib/ds-test/Makefile | 14 + .../lib/forge-std/lib/ds-test/default.nix | 4 + .../lib/forge-std/lib/ds-test/demo/demo.sol | 222 + .../lib/forge-std/lib/ds-test/package.json | 15 + .../lib/forge-std/lib/ds-test/src/test.sol | 592 + .../lib/forge-std/lib/ds-test/src/test.t.sol | 417 + .../foundry-huff/lib/forge-std/package.json | 16 + .../foundry-huff/lib/forge-std/src/Base.sol | 35 + .../foundry-huff/lib/forge-std/src/Script.sol | 27 + .../lib/forge-std/src/StdAssertions.sol | 376 + .../lib/forge-std/src/StdChains.sol | 234 + .../lib/forge-std/src/StdCheats.sol | 817 + .../lib/forge-std/src/StdError.sol | 15 + .../lib/forge-std/src/StdInvariant.sol | 92 + .../lib/forge-std/src/StdJson.sol | 179 + .../lib/forge-std/src/StdMath.sol | 43 + .../lib/forge-std/src/StdStorage.sol | 331 + .../lib/forge-std/src/StdStyle.sol | 333 + .../lib/forge-std/src/StdUtils.sol | 198 + .../foundry-huff/lib/forge-std/src/Test.sol | 33 + .../lib/foundry-huff/lib/forge-std/src/Vm.sol | 542 + .../lib/forge-std/src/console.sol | 1533 + .../lib/forge-std/src/console2.sol | 1558 + .../lib/forge-std/src/interfaces/IERC1155.sol | 105 + .../lib/forge-std/src/interfaces/IERC165.sol | 12 + .../lib/forge-std/src/interfaces/IERC20.sol | 43 + .../lib/forge-std/src/interfaces/IERC4626.sol | 190 + .../lib/forge-std/src/interfaces/IERC721.sol | 164 + .../forge-std/src/interfaces/IMulticall3.sol | 73 + .../lib/forge-std/src/safeconsole.sol | 13248 +++ .../lib/forge-std/test/StdAssertions.t.sol | 999 + .../lib/forge-std/test/StdChains.t.sol | 215 + .../lib/forge-std/test/StdCheats.t.sol | 610 + .../lib/forge-std/test/StdError.t.sol | 118 + .../lib/forge-std/test/StdMath.t.sol | 212 + .../lib/forge-std/test/StdStorage.t.sol | 293 + .../lib/forge-std/test/StdStyle.t.sol | 110 + .../lib/forge-std/test/StdUtils.t.sol | 342 + .../test/compilation/CompilationScript.sol | 10 + .../compilation/CompilationScriptBase.sol | 10 + .../test/compilation/CompilationTest.sol | 10 + .../test/compilation/CompilationTestBase.sol | 10 + .../test/fixtures/broadcast.log.json | 187 + .../lib/foundry-huff/scripts/binary_check.sh | 11 + .../lib/foundry-huff/scripts/file_writer.sh | 3 + .../lib/foundry-huff/scripts/rand_bytes.sh | 3 + .../foundry-huff/scripts/read_and_append.sh | 3 + .../lib/solidity-stringutils/.gitattributes | 1 + .../.github/workflows/ci.yml | 14 + .../lib/solidity-stringutils/.gitmodules | 3 + .../lib/solidity-stringutils/LICENSE | 201 + .../lib/solidity-stringutils/Makefile | 4 + .../lib/solidity-stringutils/README | 1 + .../lib/solidity-stringutils/README.md | 357 + .../lib/solidity-stringutils/dappfile | 8 + .../solidity-stringutils/lib/ds-test/LICENSE | 674 + .../solidity-stringutils/lib/ds-test/Makefile | 14 + .../lib/ds-test/default.nix | 4 + .../lib/ds-test/demo/demo.sol | 223 + .../lib/ds-test/src/test.sol | 434 + .../lib/solidity-stringutils/src/strings.sol | 727 + .../solidity-stringutils/src/strings.t.sol | 216 + .../lib/foundry-huff/remappings.txt | 2 + .../lib/foundry-huff/scripts/binary_check.sh | 11 + .../lib/foundry-huff/scripts/file_writer.sh | 3 + .../lib/foundry-huff/scripts/rand_bytes.sh | 3 + .../foundry-huff/scripts/read_and_append.sh | 3 + .../lib/foundry-huff/src/HuffConfig.sol | 247 + .../lib/foundry-huff/src/HuffDeployer.sol | 134 + .../src/depreciated/StatefulDeployer.sol | 73 + .../src/depreciated/StatefulDeployer.t.sol | 56 + .../foundry-huff/src/test/HuffConfig.t.sol | 55 + .../foundry-huff/src/test/HuffDeployer.t.sol | 276 + .../lib/foundry-huff/src/test/Logging.t.sol | 83 + .../src/test/contracts/ConstOverride.huff | 6 + .../src/test/contracts/Constructor.huff | 69 + .../test/contracts/ConstructorNeedsValue.huff | 16 + .../src/test/contracts/EVMVersionCheck.huff | 5 + .../src/test/contracts/LotsOfLogging.huff | 56 + .../src/test/contracts/NoConstructor.huff | 38 + .../src/test/contracts/Number.huff | 38 + .../src/test/contracts/RememberCreator.huff | 24 + .../src/test/interfaces/IConstructor.sol | 7 + .../src/test/interfaces/INumber.sol | 7 + .../src/test/interfaces/IRememberCreator.sol | 6 + .../wallet-contracts/networks/arbitrum.json | 22 + .../networks/arbitrumGoerli.json | 22 + .../networks/arbitrumNova.json | 22 + .../wallet-contracts/networks/avalanche.json | 22 + .../networks/avalancheFuji.json | 22 + .../wallet/wallet-contracts/networks/bnb.json | 22 + .../wallet-contracts/networks/bnbTestnet.json | 22 + .../wallet-contracts/networks/gnosis.json | 22 + .../wallet-contracts/networks/goerli.json | 22 + .../wallet-contracts/networks/hardhat.json | 22 + .../wallet-contracts/networks/mainnet.json | 22 + .../wallet-contracts/networks/mumbai.json | 22 + .../wallet-contracts/networks/optimism.json | 22 + .../wallet-contracts/networks/polygon.json | 26 + .../networks/polygonZkevm.json | 22 + .../wallet/wallet-contracts/package-lock.json | 24771 ++++ packages/wallet/wallet-contracts/package.json | 105 + .../wallet/wallet-contracts/pnpm-lock.yaml | 13554 +++ .../wallet/wallet-contracts/remappings.txt | 3 + .../wallet/wallet-contracts/run_huff_tests.sh | 17 + packages/wallet/wallet-contracts/soldeer.lock | 6 + .../wallet/wallet-contracts/src/Errors.huff | 158 + .../wallet-contracts/src/L2Compressor.huff | 140 + .../wallet-contracts/src/L2CompressorLib.huff | 2562 + ...jkqagwbukjfojatjegwtjmxhdL2Compressor.huff | 142 + ...vvfcuoxtlisicumgcpzqhgavjL2Compressor.huff | 142 + ...egfauooldcwyvlordhurwepivL2Compressor.huff | 142 + ...shkgzisywrbnkhcrodypkvbvyL2Compressor.huff | 142 + ...drtxibkzevmerruajxffksduvL2Compressor.huff | 142 + ...lnugcaogzpvcdfhvolsvzerleL2Compressor.huff | 142 + ...ovsnvnyyhadlushmcopgxtlcwL2Compressor.huff | 142 + ...sqtnysjlyfovitokyykvxttnoL2Compressor.huff | 142 + ...ufexucahwkkbkfdcmuiabvbfeL2Compressor.huff | 142 + ...gvfqaqtuxwpgejdnyqkualpwlL2Compressor.huff | 142 + ...orkxonmlujouewhlrvjjrmurcL2Compressor.huff | 142 + ...skwojupcsygtzovabokiotusaL2Compressor.huff | 142 + ...wzygdglttftvfnbgkuxhmtqwiL2Compressor.huff | 142 + ...aqrahclmuoszdisbtgmuppjvfL2Compressor.huff | 142 + ...kbktfjhzdpajytwhcpkhlmscqL2Compressor.huff | 142 + ...eweytjiloryhjilsqguaprwtwL2Compressor.huff | 142 + ...onlpbmziexnicojtlgsgfouyrL2Compressor.huff | 142 + ...zwlsndhjyagmukhxiugwadpxxL2Compressor.huff | 142 + ...kngjvjjjqfpzmxlycnvbslwevL2Compressor.huff | 142 + ...nijxlttsivcfgzleurbgpchhzL2Compressor.huff | 142 + ...fmyszewnycpzlqmcopsqccarqL2Compressor.huff | 142 + ...vbjyubdfmmdxzehdfcdiwufcrL2Compressor.huff | 142 + ...mhbdbiuueqxutuvcxicgrmnxwL2Compressor.huff | 142 + ...nxxrhkhfelgdrwmnbwwirribaL2Compressor.huff | 142 + ...yicdnumnesfhcjlgtqguwdpnpL2Compressor.huff | 142 + ...csyytsvygxsyhvyojjbqsghpbL2Compressor.huff | 142 + ...yvcmrjzhibkdksklxflvtfefdL2Compressor.huff | 142 + ...fcykqjxgggzptgdvokhmzcvamL2Compressor.huff | 142 + ...lozoqyyfvpcdqeanjxglmtzbbL2Compressor.huff | 142 + .../src/imps/L2CompressorImps.huff | 52 + .../src/imps/L2CompressorReadExecute.huff | 30 + .../src/imps/L2CompressorReadFlag.huff | 30 + .../src/imps/L2CompressorReadNonce.huff | 30 + .../src/imps/L2CompressorReadTx.huff | 30 + .../src/imps/L2CompressorReadTxs.huff | 30 + ...fvplniuqleqmglgpL2CompressorReadNonce.huff | 32 + ...brskpnttujfxlnsuqL2CompressorReadFlag.huff | 32 + ...kvygupcezykxnllxhooL2CompressorReadTx.huff | 32 + ...hmuynutuutdpetfmL2CompressorReadNonce.huff | 32 + ...ijkxkzjebeugweL2CompressorReadExecute.huff | 32 + ...vimfyeuyukrpkefkpjvL2CompressorReadTx.huff | 32 + ...xubslwqheqqdtpojdxL2CompressorReadTxs.huff | 32 + ...fpbluzvxgnvfnbjbvdL2CompressorReadTxs.huff | 32 + ...juvxauktfiveuhazL2CompressorReadNonce.huff | 32 + ...eablvdedlohtwcpgruiL2CompressorReadTx.huff | 32 + ...ujxdddmmbuqrzcvpqlL2CompressorReadTxs.huff | 32 + ...muiiddtfwsyytzwszL2CompressorReadFlag.huff | 32 + ...ecwtcwuiczrfadymzpwL2CompressorReadTx.huff | 32 + ...lfabzhyfjejoyhqoxvnL2CompressorReadTx.huff | 32 + ...licrbibyyssybguhL2CompressorReadNonce.huff | 32 + ...svglcrgoqbepkaL2CompressorReadExecute.huff | 32 + ...ksdozrardbmkofvggL2CompressorReadFlag.huff | 32 + ...zxedpzkrqkrxgpL2CompressorReadExecute.huff | 32 + ...ssijauhsotgyqtayygL2CompressorReadTxs.huff | 32 + ...dwrkmombuemzhicuirL2CompressorReadTxs.huff | 32 + ...tvptvgszvdeemgpomnL2CompressorReadTxs.huff | 32 + ...glrinqvkqirnywzkmmmL2CompressorReadTx.huff | 32 + ...sulrygitvkhredhzhL2CompressorReadFlag.huff | 32 + ...aalvdegpzaqhuqqhiasL2CompressorReadTx.huff | 32 + ...mdvycqormkvpykanxnL2CompressorReadTxs.huff | 32 + ...ucihkxihmonvdzfxL2CompressorReadNonce.huff | 32 + ...fcvecckcbuhhhpvpfL2CompressorReadFlag.huff | 32 + ...ftzbzzrxvcmizbL2CompressorReadExecute.huff | 32 + ...cwxtmeqbuwldxifmL2CompressorReadNonce.huff | 32 + ...jwbyxrediuokmghmftbL2CompressorReadTx.huff | 32 + ...rdpemqiejqiknsfiL2CompressorReadNonce.huff | 32 + ...foughzygdwrhxuzibL2CompressorReadFlag.huff | 32 + ...rixmvtxkffgwchL2CompressorReadExecute.huff | 32 + ...tqmujkoilcaudgL2CompressorReadExecute.huff | 32 + ...ycyuqniujobcpgjuysL2CompressorReadTxs.huff | 32 + ...ixyvzwfzordmogvuL2CompressorReadNonce.huff | 32 + ...yygzhjrvozrogmL2CompressorReadExecute.huff | 32 + ...epdhwqsahoduwcqrrpL2CompressorReadTxs.huff | 32 + ...izmyrwtgelqlacL2CompressorReadExecute.huff | 32 + ...dhdecpajexqefympmL2CompressorReadFlag.huff | 32 + ...xkesysithbtrbvqqL2CompressorReadNonce.huff | 32 + ...vwlvozjzwlctwrzrL2CompressorReadNonce.huff | 32 + ...rexbaruoucdulzvqvL2CompressorReadFlag.huff | 32 + ...zsmahiisgmgdjzfjxqL2CompressorReadTxs.huff | 32 + ...aqwygxkipfvshmgystL2CompressorReadTxs.huff | 32 + ...perstvmceseoukqtcL2CompressorReadFlag.huff | 32 + ...lvuclsezveuuexubagL2CompressorReadTxs.huff | 32 + ...pfceqpqhdfzbiiL2CompressorReadExecute.huff | 32 + ...pfucdlmsxiuwbhxrsL2CompressorReadFlag.huff | 32 + ...xcpetgqmymkladcanwtL2CompressorReadTx.huff | 32 + ...llmivwlrgrfhmdzslL2CompressorReadFlag.huff | 32 + ...rmebqsqsnoleofcgyciL2CompressorReadTx.huff | 32 + ...aqrlwcoejtxsysubcL2CompressorReadFlag.huff | 32 + ...saspukxeydggrhL2CompressorReadExecute.huff | 32 + ...qlpehxidlrhdvkcoyL2CompressorReadFlag.huff | 32 + ...bqyenjlfkzsbjkxcL2CompressorReadNonce.huff | 32 + ...rwmufefnibyzayqaaciL2CompressorReadTx.huff | 32 + ...suogqwefdorgsntvcxL2CompressorReadTxs.huff | 32 + ...ihfqfuruuvbxqbL2CompressorReadExecute.huff | 32 + ...medlqkqqhszmvuuxioL2CompressorReadTxs.huff | 32 + ...bouzrwkvkhpzncpjzsL2CompressorReadTxs.huff | 32 + ...kuiktwofhzwbszraL2CompressorReadNonce.huff | 32 + ...ntvdsgkeofzbhbhdsL2CompressorReadFlag.huff | 32 + ...obnextlfkyykzrdomL2CompressorReadFlag.huff | 32 + ...zdduewzkbcwlvsakcL2CompressorReadFlag.huff | 32 + ...fkhccrhufdhjjazeL2CompressorReadNonce.huff | 32 + ...htlarvljeqysguhoizaL2CompressorReadTx.huff | 32 + ...wrmogebamkqmhdvljmlL2CompressorReadTx.huff | 32 + ...dnlbnftvkuearfL2CompressorReadExecute.huff | 32 + ...stckycmjquytqlfsdxoL2CompressorReadTx.huff | 32 + ...rrpmypzdufaanmpuL2CompressorReadNonce.huff | 32 + ...asdtggpxqllpajsfgL2CompressorReadFlag.huff | 32 + ...tgrrlpmnzupwinL2CompressorReadExecute.huff | 32 + ...mbynuotwqkanwdlaqwpL2CompressorReadTx.huff | 32 + ...gzyejxobzrgvpizgfdL2CompressorReadTxs.huff | 32 + ...ihlkysfiliofczzxkhL2CompressorReadTxs.huff | 32 + ...eikmnrgvhavunciniubL2CompressorReadTx.huff | 32 + ...lvopyxfsbdteqegnyogL2CompressorReadTx.huff | 32 + ...mzpjfotpjfuqxtnqrznL2CompressorReadTx.huff | 32 + ...mayqquwflixlquuhfxhL2CompressorReadTx.huff | 32 + ...itanbofqxpeepnlpnL2CompressorReadFlag.huff | 32 + ...dekencowviukvlcrylcL2CompressorReadTx.huff | 32 + ...wbvymwfzttbygcbfmqL2CompressorReadTxs.huff | 32 + ...hrcqjmlolnoulkL2CompressorReadExecute.huff | 32 + ...ckjtrcwgaqmtqrL2CompressorReadExecute.huff | 32 + ...wzkubprcmgpexkL2CompressorReadExecute.huff | 32 + ...vfvlctpjeldqbrshL2CompressorReadNonce.huff | 32 + ...jpleorchotchzsecL2CompressorReadNonce.huff | 32 + ...wcvynodibgfqnidibL2CompressorReadFlag.huff | 32 + ...jvdzyjcjrsbhplpsL2CompressorReadNonce.huff | 32 + ...gxsfgldujuphcmuueL2CompressorReadFlag.huff | 32 + ...zffpwypehvvksjzbvnL2CompressorReadTxs.huff | 32 + ...klqlujjtzpxrejpmL2CompressorReadNonce.huff | 32 + ...sisgwnqqymvpjvskcL2CompressorReadFlag.huff | 32 + ...htgjgwawtaakhwL2CompressorReadExecute.huff | 32 + ...voiaurnusvgnrhusL2CompressorReadNonce.huff | 32 + ...wupwcjsnyherfswgsgcL2CompressorReadTx.huff | 32 + ...uaqyoulenyhrwfuvsiL2CompressorReadTxs.huff | 32 + ...prlkfulinnjttkL2CompressorReadExecute.huff | 32 + ...xerdftkvyxqwwiL2CompressorReadExecute.huff | 32 + ...hkmwlwmhlgvymnL2CompressorReadExecute.huff | 32 + ...vxsxrlsluymfdiL2CompressorReadExecute.huff | 32 + ...bwcqavoskmutltL2CompressorReadExecute.huff | 32 + ...gmtbremlhrxnejL2CompressorReadExecute.huff | 32 + ...bspndmkchcjaofllL2CompressorReadNonce.huff | 32 + ...dfbtyakjkbvehkjdbmgL2CompressorReadTx.huff | 32 + ...pekynjthxzellyhsxeL2CompressorReadTxs.huff | 32 + ...uggwhjnxbrgifehtxhfL2CompressorReadTx.huff | 32 + .../test/ChainedSignatures.spec.ts | 136 + .../wallet-contracts/test/ERC165.spec.ts | 73 + .../wallet-contracts/test/Factory.spec.ts | 65 + .../test/GasEstimation.spec.ts | 353 + .../wallet-contracts/test/GuestModule.spec.ts | 98 + .../wallet-contracts/test/LibBytes.spec.ts | 185 + .../wallet-contracts/test/LibString.spec.ts | 83 + .../wallet-contracts/test/MainModule.bench.ts | 198 + .../wallet-contracts/test/MainModule.spec.ts | 2247 + .../test/MerkleSignatures.spec.ts | 30 + .../test/MultiCallUtils.spec.ts | 282 + .../wallet-contracts/test/utils/contracts.ts | 87 + .../wallet-contracts/test/utils/imposter.ts | 43 + .../wallet-contracts/test/utils/index.ts | 118 + .../wallet-contracts/test/utils/sequence.ts | 613 + .../wallet-contracts/test/utils/wallet.ts | 329 + .../wallet/wallet-contracts/tsconfig.json | 37 + .../typings/chai-bignumber.d.ts | 16 + .../wallet-contracts/typings/chai-bn.ts | 19 + .../wallet-contracts/typings/truffle.d.ts | 12 + .../wallet-contracts/utils/JsonBindings.sol | 193 + .../wallet-contracts/utils/benchmarker.ts | 106 + .../wallet-contracts/utils/config-loader.ts | 159 + .../utils/deploy-contracts.ts | 207 + .../utils/workers/bench-worker.ts | 89 + packages/wallet/wdk/.env.test | 5 + packages/wallet/wdk/CHANGELOG.md | 387 - .../wallet/wdk/src/dbs/auth-commitments.ts | 2 +- packages/wallet/wdk/src/identity/signer.ts | 2 +- packages/wallet/wdk/src/sequence/guards.ts | 27 +- .../wallet/wdk/src/sequence/handlers/guard.ts | 33 +- .../wallet/wdk/src/sequence/handlers/otp.ts | 10 +- .../wallet/wdk/src/sequence/transactions.ts | 17 +- .../wallet/wdk/src/sequence/types/module.ts | 2 +- .../wallet/wdk/src/sequence/types/sessions.ts | 6 - .../wallet/wdk/src/sequence/types/signer.ts | 2 +- .../src/sequence/types/transaction-request.ts | 3 +- .../wallet/wdk/test/identity-auth-dbs.test.ts | 8 +- packages/wallet/wdk/test/messages.test.ts | 30 +- packages/wallet/wdk/test/passkeys.test.ts | 8 +- packages/wallet/wdk/test/recovery.test.ts | 12 +- packages/wallet/wdk/test/setup.ts | 2 +- .../wallet/wdk/test/signers-kindof.test.ts | 62 - packages/wallet/wdk/test/test-ssr-safety.js | 314 - packages/wallet/wdk/vitest.config.ts | 1 + pnpm-lock.yaml | 15342 ++- pnpm-workspace.yaml | 58 +- remappings.txt | 6 + repo/eslint-config/CHANGELOG.md | 20 - repo/typescript-config/CHANGELOG.md | 20 - repo/ui/CHANGELOG.md | 20 - tsconfig.json | 23 + tsconfig.test.json | 17 + 2109 files changed, 630581 insertions(+), 12576 deletions(-) create mode 100644 .codesandbox/.github/workflows/build.yml create mode 100644 .codesandbox/.gitignore create mode 100644 .codesandbox/.prettierrc create mode 100644 .codesandbox/README.md create mode 100644 .codesandbox/index.html create mode 100644 .codesandbox/package.json create mode 100644 .codesandbox/pnpm-lock.yaml create mode 100644 .codesandbox/public/favicon.ico create mode 100644 .codesandbox/public/logo192.png create mode 100644 .codesandbox/public/logo512.png create mode 100644 .codesandbox/public/manifest.json create mode 100644 .codesandbox/public/robots.txt create mode 100644 .codesandbox/screenshots/screen-open.png create mode 100644 .codesandbox/screenshots/screen-txn.png create mode 100644 .codesandbox/src/App.tsx create mode 100644 .codesandbox/src/README.md create mode 100644 .codesandbox/src/components/Console/index.tsx create mode 100644 .codesandbox/src/components/Console/styles.css.ts create mode 100644 .codesandbox/src/components/Group/index.tsx create mode 100644 .codesandbox/src/components/Group/styles.css.ts create mode 100644 .codesandbox/src/constants/abi.ts create mode 100644 .codesandbox/src/helpers.ts create mode 100644 .codesandbox/src/images/logo.svg create mode 100644 .codesandbox/src/images/skyweaver-banner-large.png create mode 100644 .codesandbox/src/images/skyweaver-banner.old.png create mode 100644 .codesandbox/src/images/skyweaver-banner.png create mode 100644 .codesandbox/src/index.css create mode 100644 .codesandbox/src/index.tsx create mode 100644 .codesandbox/src/react-app-env.d.ts create mode 100644 .codesandbox/src/vite-env.d.ts create mode 100644 .codesandbox/tasks.json create mode 100644 .codesandbox/tsconfig.json create mode 100644 .codesandbox/v8-compile-cache-0/x64/11.3.244.8-node.19/zSprojectzSsequence.jszSnode_moduleszS.pnpmzS@preconstruct+cli@2.8.7zSnode_moduleszS@preconstructzSclizSbin.js.BLOB create mode 100644 .codesandbox/v8-compile-cache-0/x64/11.3.244.8-node.19/zSprojectzSworkspacezSnode_moduleszS.pnpmzS@preconstruct+cli@2.8.7zSnode_moduleszS@preconstructzSclizSbin.js.BLOB create mode 100644 .codesandbox/vite.config.ts create mode 100644 .eslintignore create mode 100644 .eslintrc.js create mode 100644 .github/ISSUE_TEMPLATE/bug_report.md create mode 100644 .github/ISSUE_TEMPLATE/custom.md create mode 100644 .github/ISSUE_TEMPLATE/feature_request.md create mode 100644 .github/workflows/Publish-Dists.yml create mode 100644 .github/workflows/fortify.yml create mode 100644 .github/workflows/nextjs.yml create mode 100644 .github/workflows/web-sdk.yml create mode 100644 .gitmodules create mode 100644 .nycrc create mode 100644 CNAME create mode 100644 FUNDING.json create mode 100644 SECURITY.md create mode 100644 azure-pipelines.yml create mode 100644 babel.config.js create mode 100644 extras/docs/next-env.d.ts create mode 100644 extras/web/next-env.d.ts create mode 100644 foundry.lock create mode 100644 foundry.toml create mode 100644 lib/signals-implicit-mode/.env.sample create mode 100644 lib/signals-implicit-mode/.gas-snapshot create mode 100644 lib/signals-implicit-mode/.github/workflows/test.yml create mode 100644 lib/signals-implicit-mode/.gitmodules create mode 100644 lib/signals-implicit-mode/README.md create mode 100644 lib/signals-implicit-mode/broadcast/Deploy.s.sol/1/run-1770363485985.json create mode 100644 lib/signals-implicit-mode/broadcast/Deploy.s.sol/1/run-1770364554426.json create mode 100644 lib/signals-implicit-mode/broadcast/Deploy.s.sol/1/run-latest.json create mode 100644 lib/signals-implicit-mode/cache/Deploy.s.sol/1/run-1770363485985.json create mode 100644 lib/signals-implicit-mode/cache/Deploy.s.sol/1/run-1770364554426.json create mode 100644 lib/signals-implicit-mode/cache/Deploy.s.sol/1/run-latest.json create mode 100644 lib/signals-implicit-mode/cache/solidity-files-cache.json create mode 100644 lib/signals-implicit-mode/dependencies/forge-std-1.14.0/.github/CODEOWNERS create mode 100644 lib/signals-implicit-mode/dependencies/forge-std-1.14.0/.github/dependabot.yml create mode 100644 lib/signals-implicit-mode/dependencies/forge-std-1.14.0/.github/workflows/ci.yml create mode 100644 lib/signals-implicit-mode/dependencies/forge-std-1.14.0/.github/workflows/sync.yml create mode 100644 lib/signals-implicit-mode/dependencies/forge-std-1.14.0/.gitignore create mode 100644 lib/signals-implicit-mode/dependencies/forge-std-1.14.0/CONTRIBUTING.md create mode 100644 lib/signals-implicit-mode/dependencies/forge-std-1.14.0/LICENSE-APACHE create mode 100644 lib/signals-implicit-mode/dependencies/forge-std-1.14.0/LICENSE-MIT create mode 100644 lib/signals-implicit-mode/dependencies/forge-std-1.14.0/README.md create mode 100644 lib/signals-implicit-mode/dependencies/forge-std-1.14.0/RELEASE_CHECKLIST.md create mode 100644 lib/signals-implicit-mode/dependencies/forge-std-1.14.0/scripts/vm.py create mode 100644 lib/signals-implicit-mode/dependencies/forge-std-1.14.0/src/Base.sol create mode 100644 lib/signals-implicit-mode/dependencies/forge-std-1.14.0/src/Config.sol create mode 100644 lib/signals-implicit-mode/dependencies/forge-std-1.14.0/src/LibVariable.sol create mode 100644 lib/signals-implicit-mode/dependencies/forge-std-1.14.0/src/Script.sol create mode 100644 lib/signals-implicit-mode/dependencies/forge-std-1.14.0/src/StdAssertions.sol create mode 100644 lib/signals-implicit-mode/dependencies/forge-std-1.14.0/src/StdChains.sol create mode 100644 lib/signals-implicit-mode/dependencies/forge-std-1.14.0/src/StdCheats.sol create mode 100644 lib/signals-implicit-mode/dependencies/forge-std-1.14.0/src/StdConfig.sol create mode 100644 lib/signals-implicit-mode/dependencies/forge-std-1.14.0/src/StdConstants.sol create mode 100644 lib/signals-implicit-mode/dependencies/forge-std-1.14.0/src/StdError.sol create mode 100644 lib/signals-implicit-mode/dependencies/forge-std-1.14.0/src/StdInvariant.sol create mode 100644 lib/signals-implicit-mode/dependencies/forge-std-1.14.0/src/StdJson.sol create mode 100644 lib/signals-implicit-mode/dependencies/forge-std-1.14.0/src/StdMath.sol create mode 100644 lib/signals-implicit-mode/dependencies/forge-std-1.14.0/src/StdStorage.sol create mode 100644 lib/signals-implicit-mode/dependencies/forge-std-1.14.0/src/StdStyle.sol create mode 100644 lib/signals-implicit-mode/dependencies/forge-std-1.14.0/src/StdToml.sol create mode 100644 lib/signals-implicit-mode/dependencies/forge-std-1.14.0/src/StdUtils.sol create mode 100644 lib/signals-implicit-mode/dependencies/forge-std-1.14.0/src/Test.sol create mode 100644 lib/signals-implicit-mode/dependencies/forge-std-1.14.0/src/Vm.sol create mode 100644 lib/signals-implicit-mode/dependencies/forge-std-1.14.0/src/console.sol create mode 100644 lib/signals-implicit-mode/dependencies/forge-std-1.14.0/src/console2.sol create mode 100644 lib/signals-implicit-mode/dependencies/forge-std-1.14.0/src/interfaces/IERC1155.sol create mode 100644 lib/signals-implicit-mode/dependencies/forge-std-1.14.0/src/interfaces/IERC165.sol create mode 100644 lib/signals-implicit-mode/dependencies/forge-std-1.14.0/src/interfaces/IERC20.sol create mode 100644 lib/signals-implicit-mode/dependencies/forge-std-1.14.0/src/interfaces/IERC4626.sol create mode 100644 lib/signals-implicit-mode/dependencies/forge-std-1.14.0/src/interfaces/IERC6909.sol create mode 100644 lib/signals-implicit-mode/dependencies/forge-std-1.14.0/src/interfaces/IERC721.sol create mode 100644 lib/signals-implicit-mode/dependencies/forge-std-1.14.0/src/interfaces/IERC7540.sol create mode 100644 lib/signals-implicit-mode/dependencies/forge-std-1.14.0/src/interfaces/IERC7575.sol create mode 100644 lib/signals-implicit-mode/dependencies/forge-std-1.14.0/src/interfaces/IMulticall3.sol create mode 100644 lib/signals-implicit-mode/dependencies/forge-std-1.14.0/src/safeconsole.sol create mode 100644 lib/signals-implicit-mode/dependencies/forge-std-1.14.0/test/CommonBase.t.sol create mode 100644 lib/signals-implicit-mode/dependencies/forge-std-1.14.0/test/Config.t.sol create mode 100644 lib/signals-implicit-mode/dependencies/forge-std-1.14.0/test/LibVariable.t.sol create mode 100644 lib/signals-implicit-mode/dependencies/forge-std-1.14.0/test/StdAssertions.t.sol create mode 100644 lib/signals-implicit-mode/dependencies/forge-std-1.14.0/test/StdChains.t.sol create mode 100644 lib/signals-implicit-mode/dependencies/forge-std-1.14.0/test/StdCheats.t.sol create mode 100644 lib/signals-implicit-mode/dependencies/forge-std-1.14.0/test/StdConstants.t.sol create mode 100644 lib/signals-implicit-mode/dependencies/forge-std-1.14.0/test/StdError.t.sol create mode 100644 lib/signals-implicit-mode/dependencies/forge-std-1.14.0/test/StdJson.t.sol create mode 100644 lib/signals-implicit-mode/dependencies/forge-std-1.14.0/test/StdMath.t.sol create mode 100644 lib/signals-implicit-mode/dependencies/forge-std-1.14.0/test/StdStorage.t.sol create mode 100644 lib/signals-implicit-mode/dependencies/forge-std-1.14.0/test/StdStyle.t.sol create mode 100644 lib/signals-implicit-mode/dependencies/forge-std-1.14.0/test/StdToml.t.sol create mode 100644 lib/signals-implicit-mode/dependencies/forge-std-1.14.0/test/StdUtils.t.sol create mode 100644 lib/signals-implicit-mode/dependencies/forge-std-1.14.0/test/Vm.t.sol create mode 100644 lib/signals-implicit-mode/dependencies/forge-std-1.14.0/test/compilation/CompilationScript.sol create mode 100644 lib/signals-implicit-mode/dependencies/forge-std-1.14.0/test/compilation/CompilationScriptBase.sol create mode 100644 lib/signals-implicit-mode/dependencies/forge-std-1.14.0/test/compilation/CompilationTest.sol create mode 100644 lib/signals-implicit-mode/dependencies/forge-std-1.14.0/test/compilation/CompilationTestBase.sol create mode 100644 lib/signals-implicit-mode/dependencies/forge-std-1.14.0/test/fixtures/broadcast.log.json create mode 100644 lib/signals-implicit-mode/dependencies/forge-std-1.14.0/test/fixtures/config.toml create mode 100644 lib/signals-implicit-mode/dependencies/forge-std-1.14.0/test/fixtures/test.json create mode 100644 lib/signals-implicit-mode/dependencies/forge-std-1.14.0/test/fixtures/test.toml create mode 100644 lib/signals-implicit-mode/foundry.lock create mode 100644 lib/signals-implicit-mode/foundry.toml create mode 100644 lib/signals-implicit-mode/lib/forge-std/.gitattributes create mode 100644 lib/signals-implicit-mode/lib/forge-std/.github/CODEOWNERS create mode 100644 lib/signals-implicit-mode/lib/forge-std/.github/workflows/ci.yml create mode 100644 lib/signals-implicit-mode/lib/forge-std/.github/workflows/sync.yml create mode 100644 lib/signals-implicit-mode/lib/forge-std/CONTRIBUTING.md create mode 100644 lib/signals-implicit-mode/lib/forge-std/LICENSE-APACHE create mode 100644 lib/signals-implicit-mode/lib/forge-std/LICENSE-MIT create mode 100644 lib/signals-implicit-mode/lib/forge-std/README.md create mode 100644 lib/signals-implicit-mode/lib/forge-std/RELEASE_CHECKLIST.md create mode 100644 lib/signals-implicit-mode/lib/forge-std/foundry.toml create mode 100644 lib/signals-implicit-mode/lib/forge-std/package.json create mode 100644 lib/signals-implicit-mode/lib/forge-std/scripts/vm.py create mode 100644 lib/signals-implicit-mode/lib/forge-std/src/Base.sol create mode 100644 lib/signals-implicit-mode/lib/forge-std/src/Config.sol create mode 100644 lib/signals-implicit-mode/lib/forge-std/src/LibVariable.sol create mode 100644 lib/signals-implicit-mode/lib/forge-std/src/Script.sol create mode 100644 lib/signals-implicit-mode/lib/forge-std/src/StdAssertions.sol create mode 100644 lib/signals-implicit-mode/lib/forge-std/src/StdChains.sol create mode 100644 lib/signals-implicit-mode/lib/forge-std/src/StdCheats.sol create mode 100644 lib/signals-implicit-mode/lib/forge-std/src/StdConfig.sol create mode 100644 lib/signals-implicit-mode/lib/forge-std/src/StdConstants.sol create mode 100644 lib/signals-implicit-mode/lib/forge-std/src/StdError.sol create mode 100644 lib/signals-implicit-mode/lib/forge-std/src/StdInvariant.sol create mode 100644 lib/signals-implicit-mode/lib/forge-std/src/StdJson.sol create mode 100644 lib/signals-implicit-mode/lib/forge-std/src/StdMath.sol create mode 100644 lib/signals-implicit-mode/lib/forge-std/src/StdStorage.sol create mode 100644 lib/signals-implicit-mode/lib/forge-std/src/StdStyle.sol create mode 100644 lib/signals-implicit-mode/lib/forge-std/src/StdToml.sol create mode 100644 lib/signals-implicit-mode/lib/forge-std/src/StdUtils.sol create mode 100644 lib/signals-implicit-mode/lib/forge-std/src/Test.sol create mode 100644 lib/signals-implicit-mode/lib/forge-std/src/Vm.sol create mode 100644 lib/signals-implicit-mode/lib/forge-std/src/console.sol create mode 100644 lib/signals-implicit-mode/lib/forge-std/src/console2.sol create mode 100644 lib/signals-implicit-mode/lib/forge-std/src/interfaces/IERC1155.sol create mode 100644 lib/signals-implicit-mode/lib/forge-std/src/interfaces/IERC165.sol create mode 100644 lib/signals-implicit-mode/lib/forge-std/src/interfaces/IERC20.sol create mode 100644 lib/signals-implicit-mode/lib/forge-std/src/interfaces/IERC4626.sol create mode 100644 lib/signals-implicit-mode/lib/forge-std/src/interfaces/IERC6909.sol create mode 100644 lib/signals-implicit-mode/lib/forge-std/src/interfaces/IERC721.sol create mode 100644 lib/signals-implicit-mode/lib/forge-std/src/interfaces/IERC7540.sol create mode 100644 lib/signals-implicit-mode/lib/forge-std/src/interfaces/IERC7575.sol create mode 100644 lib/signals-implicit-mode/lib/forge-std/src/interfaces/IMulticall3.sol create mode 100644 lib/signals-implicit-mode/lib/forge-std/src/safeconsole.sol create mode 100644 lib/signals-implicit-mode/lib/forge-std/test/CommonBase.t.sol create mode 100644 lib/signals-implicit-mode/lib/forge-std/test/Config.t.sol create mode 100644 lib/signals-implicit-mode/lib/forge-std/test/LibVariable.t.sol create mode 100644 lib/signals-implicit-mode/lib/forge-std/test/StdAssertions.t.sol create mode 100644 lib/signals-implicit-mode/lib/forge-std/test/StdChains.t.sol create mode 100644 lib/signals-implicit-mode/lib/forge-std/test/StdCheats.t.sol create mode 100644 lib/signals-implicit-mode/lib/forge-std/test/StdConstants.t.sol create mode 100644 lib/signals-implicit-mode/lib/forge-std/test/StdError.t.sol create mode 100644 lib/signals-implicit-mode/lib/forge-std/test/StdJson.t.sol create mode 100644 lib/signals-implicit-mode/lib/forge-std/test/StdMath.t.sol create mode 100644 lib/signals-implicit-mode/lib/forge-std/test/StdStorage.t.sol create mode 100644 lib/signals-implicit-mode/lib/forge-std/test/StdStyle.t.sol create mode 100644 lib/signals-implicit-mode/lib/forge-std/test/StdToml.t.sol create mode 100644 lib/signals-implicit-mode/lib/forge-std/test/StdUtils.t.sol create mode 100644 lib/signals-implicit-mode/lib/forge-std/test/Vm.t.sol create mode 100644 lib/signals-implicit-mode/lib/forge-std/test/compilation/CompilationScript.sol create mode 100644 lib/signals-implicit-mode/lib/forge-std/test/compilation/CompilationScriptBase.sol create mode 100644 lib/signals-implicit-mode/lib/forge-std/test/compilation/CompilationTest.sol create mode 100644 lib/signals-implicit-mode/lib/forge-std/test/compilation/CompilationTestBase.sol create mode 100644 lib/signals-implicit-mode/lib/forge-std/test/fixtures/broadcast.log.json create mode 100644 lib/signals-implicit-mode/lib/forge-std/test/fixtures/config.toml create mode 100644 lib/signals-implicit-mode/lib/forge-std/test/fixtures/test.json create mode 100644 lib/signals-implicit-mode/lib/forge-std/test/fixtures/test.toml create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/.env.sample create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/.github/workflows/tests.yml create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/.gitmodules create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/.prettierignore create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/.prettierrc create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/LICENSE create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/README.md create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/build_proxy.sh create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/docs/CHAINED.md create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/docs/CONFIGURATIONS.md create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/docs/PAYLOAD.md create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/docs/SESSIONS.md create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/docs/SIGNATURE.md create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/foundry.toml create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lefthook.yml create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/account-abstraction/.eslintrc.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/account-abstraction/.github/workflows/build.yml create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/account-abstraction/.solcover.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/account-abstraction/.solhint.json create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/account-abstraction/.solhintignore create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/account-abstraction/LICENSE create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/account-abstraction/README.md create mode 100644 "lib/signals-implicit-mode/lib/sequence-v3/lib/account-abstraction/audits/EIP_4337_\342\200\223_Ethereum_Account_Abstraction_Incremental_Audit_Feb_2023.pdf" create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/account-abstraction/contracts/core/BaseAccount.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/account-abstraction/contracts/core/BasePaymaster.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/account-abstraction/contracts/core/EntryPoint.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/account-abstraction/contracts/core/EntryPointSimulations.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/account-abstraction/contracts/core/Helpers.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/account-abstraction/contracts/core/NonceManager.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/account-abstraction/contracts/core/SenderCreator.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/account-abstraction/contracts/core/StakeManager.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/account-abstraction/contracts/core/UserOperationLib.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/account-abstraction/contracts/interfaces/IAccount.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/account-abstraction/contracts/interfaces/IAccountExecute.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/account-abstraction/contracts/interfaces/IAggregator.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/account-abstraction/contracts/interfaces/IEntryPoint.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/account-abstraction/contracts/interfaces/IEntryPointSimulations.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/account-abstraction/contracts/interfaces/INonceManager.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/account-abstraction/contracts/interfaces/IPaymaster.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/account-abstraction/contracts/interfaces/IStakeManager.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/account-abstraction/contracts/interfaces/PackedUserOperation.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/account-abstraction/contracts/package.json create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/account-abstraction/contracts/samples/LegacyTokenPaymaster.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/account-abstraction/contracts/samples/SimpleAccount.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/account-abstraction/contracts/samples/SimpleAccountFactory.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/account-abstraction/contracts/samples/TokenPaymaster.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/account-abstraction/contracts/samples/VerifyingPaymaster.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/account-abstraction/contracts/samples/bls/BLSAccount.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/account-abstraction/contracts/samples/bls/BLSAccountFactory.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/account-abstraction/contracts/samples/bls/BLSHelper.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/account-abstraction/contracts/samples/bls/BLSSignatureAggregator.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/account-abstraction/contracts/samples/bls/IBLSAccount.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/account-abstraction/contracts/samples/bls/lib/BLSOpen.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/account-abstraction/contracts/samples/bls/lib/hubble-contracts/contracts/libs/BLS.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/account-abstraction/contracts/samples/bls/lib/hubble-contracts/contracts/libs/ModExp.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/account-abstraction/contracts/samples/callback/TokenCallbackHandler.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/account-abstraction/contracts/samples/utils/IOracle.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/account-abstraction/contracts/samples/utils/OracleHelper.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/account-abstraction/contracts/samples/utils/UniswapHelper.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/account-abstraction/contracts/utils/Exec.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/account-abstraction/deploy/1_deploy_entrypoint.ts create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/account-abstraction/deploy/2_deploy_SimpleAccountFactory.ts create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/account-abstraction/deployments/arbitrum/.chainId create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/account-abstraction/deployments/arbitrum/EntryPoint.json create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/account-abstraction/deployments/arbitrum/solcInputs/a4c52f0671aad8941c53d6ead2063803.json create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/account-abstraction/deployments/gnosis/.chainId create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/account-abstraction/deployments/gnosis/EntryPoint.json create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/account-abstraction/deployments/gnosis/solcInputs/a4c52f0671aad8941c53d6ead2063803.json create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/account-abstraction/deployments/goerli/.chainId create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/account-abstraction/deployments/goerli/EntryPoint.json create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/account-abstraction/deployments/goerli/solcInputs/a4c52f0671aad8941c53d6ead2063803.json create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/account-abstraction/deployments/kovan/.chainId create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/account-abstraction/deployments/kovan/EntryPoint.json create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/account-abstraction/deployments/kovan/SimpleWallet.json create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/account-abstraction/deployments/kovan/TestCounter.json create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/account-abstraction/deployments/kovan/solcInputs/9255faacf3ae4e81db1326413027bfa0.json create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/account-abstraction/deployments/mainnet/.chainId create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/account-abstraction/deployments/mainnet/EntryPoint.json create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/account-abstraction/deployments/mainnet/SimpleAccountFactory.json create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/account-abstraction/deployments/mainnet/solcInputs/02113a2ed1850c3774563305ee607f11.json create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/account-abstraction/deployments/mainnet/solcInputs/a4c52f0671aad8941c53d6ead2063803.json create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/account-abstraction/deployments/mainnet/solcInputs/cfbebdf1101dd2bc0f310cb0b7d62cb7.json create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/account-abstraction/deployments/matic/.chainId create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/account-abstraction/deployments/matic/EntryPoint.json create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/account-abstraction/deployments/matic/solcInputs/a4c52f0671aad8941c53d6ead2063803.json create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/account-abstraction/deployments/matic/solcInputs/cfbebdf1101dd2bc0f310cb0b7d62cb7.json create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/account-abstraction/deployments/mumbai/.chainId create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/account-abstraction/deployments/mumbai/EntryPoint.json create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/account-abstraction/deployments/mumbai/solcInputs/a4c52f0671aad8941c53d6ead2063803.json create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/account-abstraction/deployments/optimism/.chainId create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/account-abstraction/deployments/optimism/EntryPoint.json create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/account-abstraction/deployments/optimism/solcInputs/a4c52f0671aad8941c53d6ead2063803.json create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/account-abstraction/deployments/sepolia/.chainId create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/account-abstraction/deployments/sepolia/EntryPoint.json create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/account-abstraction/deployments/sepolia/solcInputs/a4c52f0671aad8941c53d6ead2063803.json create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/account-abstraction/erc/ERCS/erc-4337.md create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/account-abstraction/erc/ERCS/erc-7562.md create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/account-abstraction/erc/assets/erc-4337/bundle-seq-pm.svg create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/account-abstraction/erc/assets/erc-4337/bundle-seq.svg create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/account-abstraction/erc/assets/erc-4337/image1.png create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/account-abstraction/erc/assets/erc-4337/image2.png create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/account-abstraction/gascalc/0-init-gas-checker.ts create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/account-abstraction/gascalc/1-simple-wallet.gas.ts create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/account-abstraction/gascalc/2-paymaster.gas.ts create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/account-abstraction/gascalc/3-huge-tx-gas.ts create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/account-abstraction/gascalc/4-paymaster-postop.gas.ts create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/account-abstraction/gascalc/5-token-paymaster.gas.ts create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/account-abstraction/gascalc/GasChecker.ts create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/account-abstraction/hardhat.config.ts create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/account-abstraction/package.json create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/account-abstraction/reports/gas-checker.txt create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/account-abstraction/scripts/check-gas-reports create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/account-abstraction/scripts/docker-gascalc create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/account-abstraction/scripts/docker-gascalc.yml create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/account-abstraction/scripts/gascalc create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/account-abstraction/scripts/hh-wrapper create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/account-abstraction/scripts/postpack-contracts-package.sh create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/account-abstraction/scripts/prepack-contracts-package.sh create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/account-abstraction/scripts/sample-script.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/account-abstraction/scripts/solcErrors create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/account-abstraction/src/AASigner.ts create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/account-abstraction/src/Create2Factory.ts create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/account-abstraction/src/Utils.ts create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/account-abstraction/src/runop.ts create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/account-abstraction/test/0-create2factory.test.ts create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/account-abstraction/test/UserOp.ts create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/account-abstraction/test/UserOperation.ts create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/account-abstraction/test/aa.init.ts create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/account-abstraction/test/chaiHelper.ts create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/account-abstraction/test/debugTx.ts create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/account-abstraction/test/entrypoint.test.ts create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/account-abstraction/test/entrypointsimulations.test.ts create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/account-abstraction/test/helpers.test.ts create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/account-abstraction/test/paymaster.test.ts create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/account-abstraction/test/samples/OracleHelper.test.ts create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/account-abstraction/test/samples/TokenPaymaster.test.ts create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/account-abstraction/test/simple-wallet.test.ts create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/account-abstraction/test/solidityTypes.ts create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/account-abstraction/test/testExecAccount.test.ts create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/account-abstraction/test/testutils.ts create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/account-abstraction/test/verifying_paymaster.test.ts create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/account-abstraction/test/y.bls.test.ts create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/account-abstraction/tsconfig.json create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/account-abstraction/yarn.lock create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/erc2470-libs/.gitattributes create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/erc2470-libs/.githooks/pre-commit create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/erc2470-libs/.github/workflows/test.yml create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/erc2470-libs/.gitmodules create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/erc2470-libs/.solhint.json create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/erc2470-libs/README.md create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/erc2470-libs/foundry.toml create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/erc2470-libs/lib/forge-std/.gitattributes create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/erc2470-libs/lib/forge-std/.github/workflows/ci.yml create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/erc2470-libs/lib/forge-std/.github/workflows/sync.yml create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/erc2470-libs/lib/forge-std/LICENSE-APACHE create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/erc2470-libs/lib/forge-std/LICENSE-MIT create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/erc2470-libs/lib/forge-std/README.md create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/erc2470-libs/lib/forge-std/foundry.toml create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/erc2470-libs/lib/forge-std/package.json create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/erc2470-libs/lib/forge-std/scripts/vm.py create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/erc2470-libs/lib/forge-std/src/Base.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/erc2470-libs/lib/forge-std/src/Script.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/erc2470-libs/lib/forge-std/src/StdAssertions.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/erc2470-libs/lib/forge-std/src/StdChains.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/erc2470-libs/lib/forge-std/src/StdCheats.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/erc2470-libs/lib/forge-std/src/StdError.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/erc2470-libs/lib/forge-std/src/StdInvariant.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/erc2470-libs/lib/forge-std/src/StdJson.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/erc2470-libs/lib/forge-std/src/StdMath.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/erc2470-libs/lib/forge-std/src/StdStorage.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/erc2470-libs/lib/forge-std/src/StdStyle.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/erc2470-libs/lib/forge-std/src/StdToml.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/erc2470-libs/lib/forge-std/src/StdUtils.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/erc2470-libs/lib/forge-std/src/Test.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/erc2470-libs/lib/forge-std/src/Vm.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/erc2470-libs/lib/forge-std/src/console.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/erc2470-libs/lib/forge-std/src/console2.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/erc2470-libs/lib/forge-std/src/interfaces/IERC1155.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/erc2470-libs/lib/forge-std/src/interfaces/IERC165.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/erc2470-libs/lib/forge-std/src/interfaces/IERC20.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/erc2470-libs/lib/forge-std/src/interfaces/IERC4626.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/erc2470-libs/lib/forge-std/src/interfaces/IERC721.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/erc2470-libs/lib/forge-std/src/interfaces/IMulticall3.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/erc2470-libs/lib/forge-std/src/mocks/MockERC20.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/erc2470-libs/lib/forge-std/src/mocks/MockERC721.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/erc2470-libs/lib/forge-std/src/safeconsole.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/erc2470-libs/lib/forge-std/test/StdAssertions.t.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/erc2470-libs/lib/forge-std/test/StdChains.t.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/erc2470-libs/lib/forge-std/test/StdCheats.t.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/erc2470-libs/lib/forge-std/test/StdError.t.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/erc2470-libs/lib/forge-std/test/StdJson.t.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/erc2470-libs/lib/forge-std/test/StdMath.t.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/erc2470-libs/lib/forge-std/test/StdStorage.t.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/erc2470-libs/lib/forge-std/test/StdStyle.t.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/erc2470-libs/lib/forge-std/test/StdToml.t.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/erc2470-libs/lib/forge-std/test/StdUtils.t.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/erc2470-libs/lib/forge-std/test/Vm.t.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/erc2470-libs/lib/forge-std/test/compilation/CompilationScript.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/erc2470-libs/lib/forge-std/test/compilation/CompilationScriptBase.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/erc2470-libs/lib/forge-std/test/compilation/CompilationTest.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/erc2470-libs/lib/forge-std/test/compilation/CompilationTestBase.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/erc2470-libs/lib/forge-std/test/fixtures/broadcast.log.json create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/erc2470-libs/lib/forge-std/test/fixtures/test.json create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/erc2470-libs/lib/forge-std/test/fixtures/test.toml create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/erc2470-libs/lib/forge-std/test/mocks/MockERC20.t.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/erc2470-libs/lib/forge-std/test/mocks/MockERC721.t.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/erc2470-libs/script/MockERC20Deployer.s.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/erc2470-libs/script/SingletonDeployer.s.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/erc2470-libs/src/ISingletonFactory.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/forge-std/.gitattributes create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/forge-std/.github/workflows/ci.yml create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/forge-std/.github/workflows/sync.yml create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/forge-std/CONTRIBUTING.md create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/forge-std/LICENSE-APACHE create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/forge-std/LICENSE-MIT create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/forge-std/README.md create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/forge-std/foundry.toml create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/forge-std/package.json create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/forge-std/scripts/vm.py create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/forge-std/src/Base.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/forge-std/src/Script.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/forge-std/src/StdAssertions.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/forge-std/src/StdChains.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/forge-std/src/StdCheats.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/forge-std/src/StdConstants.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/forge-std/src/StdError.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/forge-std/src/StdInvariant.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/forge-std/src/StdJson.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/forge-std/src/StdMath.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/forge-std/src/StdStorage.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/forge-std/src/StdStyle.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/forge-std/src/StdToml.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/forge-std/src/StdUtils.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/forge-std/src/Test.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/forge-std/src/Vm.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/forge-std/src/console.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/forge-std/src/console2.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/forge-std/src/interfaces/IERC1155.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/forge-std/src/interfaces/IERC165.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/forge-std/src/interfaces/IERC20.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/forge-std/src/interfaces/IERC4626.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/forge-std/src/interfaces/IERC6909.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/forge-std/src/interfaces/IERC721.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/forge-std/src/interfaces/IERC7540.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/forge-std/src/interfaces/IERC7575.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/forge-std/src/interfaces/IMulticall3.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/forge-std/src/safeconsole.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/forge-std/test/CommonBase.t.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/forge-std/test/StdAssertions.t.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/forge-std/test/StdChains.t.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/forge-std/test/StdCheats.t.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/forge-std/test/StdConstants.t.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/forge-std/test/StdError.t.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/forge-std/test/StdJson.t.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/forge-std/test/StdMath.t.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/forge-std/test/StdStorage.t.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/forge-std/test/StdStyle.t.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/forge-std/test/StdToml.t.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/forge-std/test/StdUtils.t.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/forge-std/test/Vm.t.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/forge-std/test/compilation/CompilationScript.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/forge-std/test/compilation/CompilationScriptBase.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/forge-std/test/compilation/CompilationTest.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/forge-std/test/compilation/CompilationTestBase.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/forge-std/test/fixtures/broadcast.log.json create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/forge-std/test/fixtures/test.json create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/forge-std/test/fixtures/test.toml create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/.changeset/config.json create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/.codecov.yml create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/.editorconfig create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/.githooks/pre-push create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/.github/ISSUE_TEMPLATE/bug_report.md create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/.github/ISSUE_TEMPLATE/config.yml create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/.github/ISSUE_TEMPLATE/feature_request.md create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/.github/PULL_REQUEST_TEMPLATE.md create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/.github/actions/gas-compare/action.yml create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/.github/actions/setup/action.yml create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/.github/actions/storage-layout/action.yml create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/.github/workflows/actionlint.yml create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/.github/workflows/changeset.yml create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/.github/workflows/checks.yml create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/.github/workflows/docs.yml create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/.github/workflows/formal-verification.yml create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/.github/workflows/release-cycle.yml create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/.github/workflows/upgradeable.yml create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/.gitmodules create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/.mocharc.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/.prettierrc create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/.solcover.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/CHANGELOG.md create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/CODE_OF_CONDUCT.md create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/CONTRIBUTING.md create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/FUNDING.json create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/GUIDELINES.md create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/LICENSE create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/README.md create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/RELEASING.md create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/SECURITY.md create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/audits/2017-03.md create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/audits/2018-10.pdf create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/audits/2022-10-Checkpoints.pdf create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/audits/2022-10-ERC4626.pdf create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/audits/2023-05-v4.9.pdf create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/audits/2023-10-v5.0.pdf create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/audits/2024-10-v5.1.pdf create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/audits/README.md create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/certora/Makefile create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/certora/README.md create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/certora/diff/access_manager_AccessManager.sol.patch create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/certora/harnesses/AccessControlDefaultAdminRulesHarness.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/certora/harnesses/AccessControlHarness.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/certora/harnesses/AccessManagedHarness.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/certora/harnesses/AccessManagerHarness.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/certora/harnesses/DoubleEndedQueueHarness.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/certora/harnesses/ERC20FlashMintHarness.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/certora/harnesses/ERC20PermitHarness.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/certora/harnesses/ERC20WrapperHarness.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/certora/harnesses/ERC3156FlashBorrowerHarness.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/certora/harnesses/ERC721Harness.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/certora/harnesses/ERC721ReceiverHarness.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/certora/harnesses/EnumerableMapHarness.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/certora/harnesses/EnumerableSetHarness.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/certora/harnesses/InitializableHarness.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/certora/harnesses/NoncesHarness.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/certora/harnesses/Ownable2StepHarness.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/certora/harnesses/OwnableHarness.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/certora/harnesses/PausableHarness.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/certora/harnesses/TimelockControllerHarness.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/certora/reports/2021-10.pdf create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/certora/reports/2022-03.pdf create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/certora/reports/2022-05.pdf create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/certora/run.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/certora/specs.json create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/certora/specs/AccessControl.spec create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/certora/specs/AccessControlDefaultAdminRules.spec create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/certora/specs/AccessManaged.spec create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/certora/specs/AccessManager.spec create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/certora/specs/DoubleEndedQueue.spec create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/certora/specs/ERC20.spec create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/certora/specs/ERC20FlashMint.spec create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/certora/specs/ERC20Wrapper.spec create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/certora/specs/ERC721.spec create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/certora/specs/EnumerableMap.spec create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/certora/specs/EnumerableSet.spec create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/certora/specs/Initializable.spec create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/certora/specs/Nonces.spec create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/certora/specs/Ownable.spec create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/certora/specs/Ownable2Step.spec create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/certora/specs/Pausable.spec create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/certora/specs/TimelockController.spec create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/certora/specs/helpers/helpers.spec create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/certora/specs/methods/IAccessControl.spec create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/certora/specs/methods/IAccessControlDefaultAdminRules.spec create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/certora/specs/methods/IAccessManaged.spec create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/certora/specs/methods/IAccessManager.spec create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/certora/specs/methods/IERC20.spec create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/certora/specs/methods/IERC2612.spec create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/certora/specs/methods/IERC3156FlashBorrower.spec create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/certora/specs/methods/IERC3156FlashLender.spec create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/certora/specs/methods/IERC5313.spec create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/certora/specs/methods/IERC721.spec create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/certora/specs/methods/IERC721Receiver.spec create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/certora/specs/methods/IOwnable.spec create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/certora/specs/methods/IOwnable2Step.spec create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/access/AccessControl.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/access/IAccessControl.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/access/Ownable.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/access/Ownable2Step.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/access/README.adoc create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/access/extensions/AccessControlDefaultAdminRules.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/access/extensions/AccessControlEnumerable.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/access/extensions/IAccessControlDefaultAdminRules.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/access/extensions/IAccessControlEnumerable.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/access/manager/AccessManaged.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/access/manager/AccessManager.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/access/manager/AuthorityUtils.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/access/manager/IAccessManaged.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/access/manager/IAccessManager.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/access/manager/IAuthority.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/account/README.adoc create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/account/utils/draft-ERC4337Utils.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/account/utils/draft-ERC7579Utils.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/finance/README.adoc create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/finance/VestingWallet.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/finance/VestingWalletCliff.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/governance/Governor.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/governance/IGovernor.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/governance/README.adoc create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/governance/TimelockController.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/governance/extensions/GovernorCountingFractional.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/governance/extensions/GovernorCountingOverridable.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/governance/extensions/GovernorCountingSimple.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/governance/extensions/GovernorPreventLateQuorum.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/governance/extensions/GovernorSettings.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/governance/extensions/GovernorStorage.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/governance/extensions/GovernorTimelockAccess.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/governance/extensions/GovernorTimelockCompound.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/governance/extensions/GovernorTimelockControl.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/governance/extensions/GovernorVotes.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/governance/extensions/GovernorVotesQuorumFraction.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/governance/utils/IVotes.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/governance/utils/Votes.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/governance/utils/VotesExtended.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/interfaces/IERC1155.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/interfaces/IERC1155MetadataURI.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/interfaces/IERC1155Receiver.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/interfaces/IERC1271.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/interfaces/IERC1363.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/interfaces/IERC1363Receiver.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/interfaces/IERC1363Spender.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/interfaces/IERC165.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/interfaces/IERC1820Implementer.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/interfaces/IERC1820Registry.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/interfaces/IERC1967.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/interfaces/IERC20.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/interfaces/IERC20Metadata.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/interfaces/IERC2309.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/interfaces/IERC2612.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/interfaces/IERC2981.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/interfaces/IERC3156.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/interfaces/IERC3156FlashBorrower.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/interfaces/IERC3156FlashLender.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/interfaces/IERC4626.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/interfaces/IERC4906.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/interfaces/IERC5267.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/interfaces/IERC5313.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/interfaces/IERC5805.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/interfaces/IERC6372.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/interfaces/IERC721.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/interfaces/IERC721Enumerable.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/interfaces/IERC721Metadata.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/interfaces/IERC721Receiver.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/interfaces/IERC777.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/interfaces/IERC777Recipient.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/interfaces/IERC777Sender.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/interfaces/README.adoc create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/interfaces/draft-IERC4337.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/interfaces/draft-IERC6093.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/interfaces/draft-IERC7579.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/interfaces/draft-IERC7674.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/metatx/ERC2771Context.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/metatx/ERC2771Forwarder.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/metatx/README.adoc create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/mocks/AccessManagedTarget.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/mocks/AccessManagerMock.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/mocks/ArraysMock.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/mocks/AuthorityMock.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/mocks/Base64Dirty.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/mocks/BatchCaller.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/mocks/CallReceiverMock.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/mocks/ConstructorMock.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/mocks/ContextMock.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/mocks/DummyImplementation.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/mocks/EIP712Verifier.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/mocks/ERC1271WalletMock.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/mocks/ERC165/ERC165InterfacesSupported.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/mocks/ERC165/ERC165MaliciousData.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/mocks/ERC165/ERC165MissingData.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/mocks/ERC165/ERC165NotSupported.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/mocks/ERC165/ERC165ReturnBomb.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/mocks/ERC2771ContextMock.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/mocks/ERC3156FlashBorrowerMock.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/mocks/EtherReceiverMock.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/mocks/InitializableMock.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/mocks/MerkleProofCustomHashMock.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/mocks/MerkleTreeMock.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/mocks/MulticallHelper.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/mocks/MultipleInheritanceInitializableMocks.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/mocks/PausableMock.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/mocks/ReentrancyAttack.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/mocks/ReentrancyMock.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/mocks/ReentrancyTransientMock.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/mocks/RegressionImplementation.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/mocks/SingleInheritanceInitializableMocks.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/mocks/Stateless.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/mocks/StorageSlotMock.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/mocks/TimelockReentrant.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/mocks/TransientSlotMock.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/mocks/UpgradeableBeaconMock.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/mocks/VotesExtendedMock.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/mocks/VotesMock.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/mocks/account/utils/ERC7579UtilsMock.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/mocks/compound/CompTimelock.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/mocks/docs/ERC20WithAutoMinerReward.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/mocks/docs/ERC4626Fees.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/mocks/docs/MyNFT.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/mocks/docs/access-control/AccessControlERC20MintBase.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/mocks/docs/access-control/AccessControlERC20MintMissing.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/mocks/docs/access-control/AccessControlERC20MintOnlyRole.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/mocks/docs/access-control/AccessControlModified.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/mocks/docs/access-control/AccessControlNonRevokableAdmin.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/mocks/docs/access-control/AccessManagedERC20MintBase.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/mocks/docs/access-control/MyContractOwnable.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/mocks/docs/governance/MyGovernor.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/mocks/docs/governance/MyToken.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/mocks/docs/governance/MyTokenTimestampBased.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/mocks/docs/governance/MyTokenWrapped.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/mocks/docs/token/ERC1155/GameItems.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/mocks/docs/token/ERC1155/MyERC115HolderContract.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/mocks/docs/token/ERC20/GLDToken.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/mocks/docs/token/ERC721/GameItem.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/mocks/docs/utilities/Base64NFT.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/mocks/docs/utilities/Multicall.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/mocks/governance/GovernorCountingOverridableMock.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/mocks/governance/GovernorFractionalMock.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/mocks/governance/GovernorMock.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/mocks/governance/GovernorPreventLateQuorumMock.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/mocks/governance/GovernorStorageMock.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/mocks/governance/GovernorTimelockAccessMock.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/mocks/governance/GovernorTimelockCompoundMock.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/mocks/governance/GovernorTimelockControlMock.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/mocks/governance/GovernorVoteMock.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/mocks/governance/GovernorWithParamsMock.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/mocks/proxy/BadBeacon.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/mocks/proxy/ClashingImplementation.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/mocks/proxy/UUPSUpgradeableMock.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/mocks/token/ERC1155ReceiverMock.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/mocks/token/ERC1363ForceApproveMock.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/mocks/token/ERC1363NoReturnMock.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/mocks/token/ERC1363ReceiverMock.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/mocks/token/ERC1363ReturnFalseMock.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/mocks/token/ERC1363SpenderMock.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/mocks/token/ERC20ApprovalMock.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/mocks/token/ERC20DecimalsMock.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/mocks/token/ERC20ExcessDecimalsMock.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/mocks/token/ERC20FlashMintMock.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/mocks/token/ERC20ForceApproveMock.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/mocks/token/ERC20GetterHelper.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/mocks/token/ERC20Mock.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/mocks/token/ERC20MulticallMock.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/mocks/token/ERC20NoReturnMock.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/mocks/token/ERC20Reentrant.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/mocks/token/ERC20ReturnFalseMock.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/mocks/token/ERC20VotesAdditionalCheckpointsMock.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/mocks/token/ERC20VotesLegacyMock.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/mocks/token/ERC20VotesTimestampMock.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/mocks/token/ERC4626LimitsMock.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/mocks/token/ERC4626Mock.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/mocks/token/ERC4626OffsetMock.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/mocks/token/ERC4646FeesMock.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/mocks/token/ERC721ConsecutiveEnumerableMock.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/mocks/token/ERC721ConsecutiveMock.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/mocks/token/ERC721ReceiverMock.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/mocks/token/ERC721URIStorageMock.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/package.json create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/proxy/Clones.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Utils.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/proxy/Proxy.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/proxy/README.adoc create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/proxy/beacon/BeaconProxy.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/proxy/beacon/IBeacon.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/proxy/beacon/UpgradeableBeacon.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/proxy/transparent/ProxyAdmin.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/proxy/transparent/TransparentUpgradeableProxy.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/proxy/utils/Initializable.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/proxy/utils/UUPSUpgradeable.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/token/ERC1155/ERC1155.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/token/ERC1155/IERC1155Receiver.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/token/ERC1155/README.adoc create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/token/ERC1155/extensions/ERC1155Burnable.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/token/ERC1155/extensions/ERC1155Pausable.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/token/ERC1155/extensions/ERC1155Supply.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/token/ERC1155/extensions/ERC1155URIStorage.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/token/ERC1155/extensions/IERC1155MetadataURI.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/token/ERC1155/utils/ERC1155Holder.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/token/ERC1155/utils/ERC1155Utils.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/token/ERC20/README.adoc create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/token/ERC20/extensions/ERC1363.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/token/ERC20/extensions/ERC20Burnable.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/token/ERC20/extensions/ERC20Capped.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/token/ERC20/extensions/ERC20FlashMint.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/token/ERC20/extensions/ERC20Pausable.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/token/ERC20/extensions/ERC20Permit.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/token/ERC20/extensions/ERC20Votes.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/token/ERC20/extensions/ERC20Wrapper.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/token/ERC20/extensions/ERC4626.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Permit.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/token/ERC20/extensions/draft-ERC20TemporaryApproval.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/token/ERC20/utils/ERC1363Utils.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/token/ERC721/ERC721.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/token/ERC721/IERC721.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/token/ERC721/IERC721Receiver.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/token/ERC721/README.adoc create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/token/ERC721/extensions/ERC721Burnable.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/token/ERC721/extensions/ERC721Consecutive.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/token/ERC721/extensions/ERC721Enumerable.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/token/ERC721/extensions/ERC721Pausable.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/token/ERC721/extensions/ERC721Royalty.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/token/ERC721/extensions/ERC721URIStorage.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/token/ERC721/extensions/ERC721Votes.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/token/ERC721/extensions/ERC721Wrapper.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/token/ERC721/extensions/IERC721Enumerable.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/token/ERC721/extensions/IERC721Metadata.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/token/ERC721/utils/ERC721Holder.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/token/ERC721/utils/ERC721Utils.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/token/common/ERC2981.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/token/common/README.adoc create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/utils/Address.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/utils/Arrays.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/utils/Base64.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/utils/Bytes.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/utils/CAIP10.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/utils/CAIP2.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/utils/Comparators.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/utils/Context.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/utils/Create2.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/utils/Errors.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/utils/Multicall.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/utils/Nonces.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/utils/NoncesKeyed.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/utils/Packing.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/utils/Panic.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/utils/Pausable.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/utils/README.adoc create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/utils/ReentrancyGuard.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/utils/ReentrancyGuardTransient.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/utils/ShortStrings.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/utils/SlotDerivation.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/utils/Strings.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/utils/TransientSlot.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/utils/cryptography/ECDSA.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/utils/cryptography/EIP712.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/utils/cryptography/Hashes.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/utils/cryptography/MerkleProof.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/utils/cryptography/MessageHashUtils.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/utils/cryptography/P256.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/utils/cryptography/RSA.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/utils/cryptography/SignatureChecker.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/utils/introspection/ERC165Checker.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/utils/introspection/IERC165.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/utils/math/Math.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/utils/math/SafeCast.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/utils/math/SignedMath.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/utils/structs/BitMaps.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/utils/structs/Checkpoints.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/utils/structs/CircularBuffer.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/utils/structs/DoubleEndedQueue.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/utils/structs/EnumerableMap.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/utils/structs/EnumerableSet.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/utils/structs/Heap.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/utils/structs/MerkleTree.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/utils/types/Time.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/vendor/compound/ICompoundTimelock.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/contracts/vendor/compound/LICENSE create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/docs/README.md create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/docs/antora.yml create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/docs/config.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/docs/modules/ROOT/images/access-control-multiple.svg create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/docs/modules/ROOT/images/access-manager-functions.svg create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/docs/modules/ROOT/images/access-manager.svg create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/docs/modules/ROOT/images/erc4626-attack-3a.png create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/docs/modules/ROOT/images/erc4626-attack-3b.png create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/docs/modules/ROOT/images/erc4626-attack-6.png create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/docs/modules/ROOT/images/erc4626-attack.png create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/docs/modules/ROOT/images/erc4626-deposit.png create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/docs/modules/ROOT/images/erc4626-mint.png create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/docs/modules/ROOT/images/erc4626-rate-linear.png create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/docs/modules/ROOT/images/erc4626-rate-loglog.png create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/docs/modules/ROOT/images/erc4626-rate-loglogext.png create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/docs/modules/ROOT/images/tally-exec.png create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/docs/modules/ROOT/images/tally-vote.png create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/docs/modules/ROOT/nav.adoc create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/docs/modules/ROOT/pages/access-control.adoc create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/docs/modules/ROOT/pages/backwards-compatibility.adoc create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/docs/modules/ROOT/pages/crowdsales.adoc create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/docs/modules/ROOT/pages/drafts.adoc create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/docs/modules/ROOT/pages/erc1155.adoc create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/docs/modules/ROOT/pages/erc20-supply.adoc create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/docs/modules/ROOT/pages/erc20.adoc create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/docs/modules/ROOT/pages/erc4626.adoc create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/docs/modules/ROOT/pages/erc721.adoc create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/docs/modules/ROOT/pages/extending-contracts.adoc create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/docs/modules/ROOT/pages/faq.adoc create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/docs/modules/ROOT/pages/governance.adoc create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/docs/modules/ROOT/pages/index.adoc create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/docs/modules/ROOT/pages/tokens.adoc create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/docs/modules/ROOT/pages/upgradeable.adoc create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/docs/modules/ROOT/pages/utilities.adoc create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/docs/modules/ROOT/pages/wizard.adoc create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/docs/templates/contract.hbs create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/docs/templates/helpers.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/docs/templates/page.hbs create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/docs/templates/properties.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/eslint.config.mjs create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/foundry.toml create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/fv-requirements.txt create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/hardhat.config.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/hardhat/async-test-sanity.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/hardhat/env-artifacts.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/hardhat/ignore-unreachable-warnings.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/hardhat/remappings.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/hardhat/skip-foundry-tests.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/hardhat/task-test-get-files.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/lib/erc4626-tests/ERC4626.prop.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/lib/erc4626-tests/ERC4626.test.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/lib/erc4626-tests/LICENSE create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/lib/erc4626-tests/README.md create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/lib/forge-std/.gitattributes create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/lib/forge-std/.github/workflows/ci.yml create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/lib/forge-std/.github/workflows/sync.yml create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/lib/forge-std/LICENSE-APACHE create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/lib/forge-std/LICENSE-MIT create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/lib/forge-std/README.md create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/lib/forge-std/foundry.toml create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/lib/forge-std/package.json create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/lib/forge-std/scripts/vm.py create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/lib/forge-std/src/Base.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/lib/forge-std/src/Script.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/lib/forge-std/src/StdAssertions.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/lib/forge-std/src/StdChains.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/lib/forge-std/src/StdCheats.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/lib/forge-std/src/StdError.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/lib/forge-std/src/StdInvariant.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/lib/forge-std/src/StdJson.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/lib/forge-std/src/StdMath.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/lib/forge-std/src/StdStorage.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/lib/forge-std/src/StdStyle.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/lib/forge-std/src/StdToml.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/lib/forge-std/src/StdUtils.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/lib/forge-std/src/Test.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/lib/forge-std/src/Vm.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/lib/forge-std/src/console.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/lib/forge-std/src/console2.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/lib/forge-std/src/interfaces/IERC1155.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/lib/forge-std/src/interfaces/IERC165.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/lib/forge-std/src/interfaces/IERC20.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/lib/forge-std/src/interfaces/IERC4626.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/lib/forge-std/src/interfaces/IERC721.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/lib/forge-std/src/interfaces/IMulticall3.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/lib/forge-std/src/mocks/MockERC20.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/lib/forge-std/src/mocks/MockERC721.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/lib/forge-std/src/safeconsole.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/lib/forge-std/test/StdAssertions.t.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/lib/forge-std/test/StdChains.t.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/lib/forge-std/test/StdCheats.t.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/lib/forge-std/test/StdError.t.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/lib/forge-std/test/StdJson.t.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/lib/forge-std/test/StdMath.t.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/lib/forge-std/test/StdStorage.t.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/lib/forge-std/test/StdStyle.t.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/lib/forge-std/test/StdToml.t.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/lib/forge-std/test/StdUtils.t.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/lib/forge-std/test/Vm.t.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/lib/forge-std/test/compilation/CompilationScript.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/lib/forge-std/test/compilation/CompilationScriptBase.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/lib/forge-std/test/compilation/CompilationTest.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/lib/forge-std/test/compilation/CompilationTestBase.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/lib/forge-std/test/fixtures/broadcast.log.json create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/lib/forge-std/test/fixtures/test.json create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/lib/forge-std/test/fixtures/test.toml create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/lib/forge-std/test/mocks/MockERC20.t.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/lib/forge-std/test/mocks/MockERC721.t.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/lib/halmos-cheatcodes/LICENSE create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/lib/halmos-cheatcodes/README.md create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/lib/halmos-cheatcodes/src/SVM.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/lib/halmos-cheatcodes/src/SymTest.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/logo.svg create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/netlify.toml create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/package-lock.json create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/package.json create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/remappings.txt create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/renovate.json create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/scripts/checks/compare-layout.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/scripts/checks/compareGasReports.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/scripts/checks/coverage.sh create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/scripts/checks/extract-layout.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/scripts/checks/generation.sh create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/scripts/checks/inheritance-ordering.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/scripts/checks/pragma-consistency.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/scripts/gen-nav.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/scripts/generate/format-lines.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/scripts/generate/helpers/sanitize.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/scripts/generate/run.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/scripts/generate/templates/Arrays.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/scripts/generate/templates/Arrays.opts.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/scripts/generate/templates/Checkpoints.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/scripts/generate/templates/Checkpoints.opts.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/scripts/generate/templates/Checkpoints.t.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/scripts/generate/templates/EnumerableMap.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/scripts/generate/templates/EnumerableMap.opts.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/scripts/generate/templates/EnumerableSet.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/scripts/generate/templates/EnumerableSet.opts.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/scripts/generate/templates/MerkleProof.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/scripts/generate/templates/MerkleProof.opts.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/scripts/generate/templates/Packing.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/scripts/generate/templates/Packing.opts.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/scripts/generate/templates/Packing.t.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/scripts/generate/templates/SafeCast.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/scripts/generate/templates/Slot.opts.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/scripts/generate/templates/SlotDerivation.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/scripts/generate/templates/SlotDerivation.t.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/scripts/generate/templates/StorageSlot.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/scripts/generate/templates/StorageSlotMock.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/scripts/generate/templates/TransientSlot.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/scripts/generate/templates/TransientSlotMock.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/scripts/generate/templates/conversion.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/scripts/git-user-config.sh create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/scripts/helpers.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/scripts/prepack.sh create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/scripts/prepare-docs.sh create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/scripts/prepare.sh create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/scripts/release/format-changelog.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/scripts/release/synchronize-versions.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/scripts/release/update-comment.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/scripts/release/version.sh create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/scripts/release/workflow/exit-prerelease.sh create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/scripts/release/workflow/github-release.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/scripts/release/workflow/integrity-check.sh create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/scripts/release/workflow/pack.sh create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/scripts/release/workflow/publish.sh create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/scripts/release/workflow/rerun.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/scripts/release/workflow/set-changesets-pr-title.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/scripts/release/workflow/start.sh create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/scripts/release/workflow/state.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/scripts/remove-ignored-artifacts.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/scripts/solhint-custom/index.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/scripts/solhint-custom/package.json create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/scripts/update-docs-branch.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/scripts/upgradeable/README.md create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/scripts/upgradeable/patch-apply.sh create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/scripts/upgradeable/patch-save.sh create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/scripts/upgradeable/transpile-onto.sh create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/scripts/upgradeable/transpile.sh create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/scripts/upgradeable/upgradeable.patch create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/slither.config.json create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/solhint.config.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/TESTING.md create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/access/AccessControl.behavior.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/access/AccessControl.test.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/access/Ownable.test.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/access/Ownable2Step.test.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/access/extensions/AccessControlDefaultAdminRules.test.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/access/extensions/AccessControlEnumerable.test.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/access/manager/AccessManaged.test.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/access/manager/AccessManager.behavior.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/access/manager/AccessManager.predicate.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/access/manager/AccessManager.test.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/access/manager/AuthorityUtils.test.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/account/utils/draft-ERC4337Utils.test.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/account/utils/draft-ERC7579Utils.t.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/account/utils/draft-ERC7579Utils.test.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/bin/EntryPoint070.abi create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/bin/EntryPoint070.bytecode create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/bin/SenderCreator070.abi create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/bin/SenderCreator070.bytecode create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/finance/VestingWallet.behavior.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/finance/VestingWallet.test.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/finance/VestingWalletCliff.test.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/governance/Governor.t.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/governance/Governor.test.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/governance/TimelockController.test.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/governance/extensions/GovernorCountingFractional.test.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/governance/extensions/GovernorCountingOverridable.test.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/governance/extensions/GovernorERC721.test.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/governance/extensions/GovernorPreventLateQuorum.test.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/governance/extensions/GovernorStorage.test.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/governance/extensions/GovernorTimelockAccess.test.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/governance/extensions/GovernorTimelockCompound.test.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/governance/extensions/GovernorTimelockControl.test.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/governance/extensions/GovernorVotesQuorumFraction.test.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/governance/extensions/GovernorWithParams.test.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/governance/utils/ERC6372.behavior.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/governance/utils/Votes.behavior.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/governance/utils/Votes.test.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/governance/utils/VotesExtended.test.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/helpers/access-manager.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/helpers/account.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/helpers/chains.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/helpers/constants.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/helpers/deploy.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/helpers/eip712-types.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/helpers/eip712.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/helpers/enums.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/helpers/erc4337-entrypoint.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/helpers/erc4337.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/helpers/erc7579.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/helpers/governance.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/helpers/iterate.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/helpers/math.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/helpers/methods.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/helpers/random.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/helpers/storage.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/helpers/strings.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/helpers/time.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/helpers/txpool.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/metatx/ERC2771Context.test.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/metatx/ERC2771Forwarder.t.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/metatx/ERC2771Forwarder.test.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/proxy/Clones.behaviour.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/proxy/Clones.t.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/proxy/Clones.test.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/proxy/ERC1967/ERC1967Proxy.test.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/proxy/ERC1967/ERC1967Utils.test.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/proxy/Proxy.behaviour.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/proxy/beacon/BeaconProxy.test.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/proxy/beacon/UpgradeableBeacon.test.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/proxy/transparent/ProxyAdmin.test.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/proxy/transparent/TransparentUpgradeableProxy.behaviour.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/proxy/transparent/TransparentUpgradeableProxy.test.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/proxy/utils/Initializable.test.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/proxy/utils/UUPSUpgradeable.test.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/sanity.test.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/token/ERC1155/ERC1155.behavior.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/token/ERC1155/ERC1155.test.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/token/ERC1155/extensions/ERC1155Burnable.test.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/token/ERC1155/extensions/ERC1155Pausable.test.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/token/ERC1155/extensions/ERC1155Supply.test.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/token/ERC1155/extensions/ERC1155URIStorage.test.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/token/ERC1155/utils/ERC1155Holder.test.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/token/ERC1155/utils/ERC1155Utils.test.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/token/ERC20/ERC20.behavior.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/token/ERC20/ERC20.test.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/token/ERC20/extensions/ERC1363.test.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/token/ERC20/extensions/ERC20Burnable.test.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/token/ERC20/extensions/ERC20Capped.test.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/token/ERC20/extensions/ERC20FlashMint.test.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/token/ERC20/extensions/ERC20Pausable.test.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/token/ERC20/extensions/ERC20Permit.test.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/token/ERC20/extensions/ERC20Votes.test.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/token/ERC20/extensions/ERC20Wrapper.test.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/token/ERC20/extensions/ERC4626.t.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/token/ERC20/extensions/ERC4626.test.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/token/ERC20/extensions/draft-ERC20TemporaryApproval.test.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/token/ERC20/utils/SafeERC20.test.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/token/ERC721/ERC721.behavior.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/token/ERC721/ERC721.test.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/token/ERC721/ERC721Enumerable.test.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/token/ERC721/extensions/ERC721Burnable.test.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/token/ERC721/extensions/ERC721Consecutive.t.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/token/ERC721/extensions/ERC721Consecutive.test.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/token/ERC721/extensions/ERC721Pausable.test.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/token/ERC721/extensions/ERC721Royalty.test.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/token/ERC721/extensions/ERC721URIStorage.test.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/token/ERC721/extensions/ERC721Votes.test.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/token/ERC721/extensions/ERC721Wrapper.test.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/token/ERC721/utils/ERC721Holder.test.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/token/ERC721/utils/ERC721Utils.test.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/token/common/ERC2981.behavior.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/utils/Address.test.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/utils/Arrays.t.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/utils/Arrays.test.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/utils/Base64.t.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/utils/Base64.test.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/utils/Bytes.test.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/utils/CAIP.test.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/utils/Context.behavior.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/utils/Context.test.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/utils/Create2.t.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/utils/Create2.test.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/utils/Multicall.test.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/utils/Nonces.behavior.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/utils/Nonces.test.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/utils/NoncesKeyed.test.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/utils/Packing.t.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/utils/Packing.test.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/utils/Panic.test.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/utils/Pausable.test.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/utils/ReentrancyGuard.test.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/utils/ShortStrings.t.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/utils/ShortStrings.test.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/utils/SlotDerivation.t.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/utils/SlotDerivation.test.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/utils/StorageSlot.test.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/utils/Strings.t.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/utils/Strings.test.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/utils/TransientSlot.test.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/utils/cryptography/ECDSA.test.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/utils/cryptography/EIP712.test.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/utils/cryptography/MerkleProof.test.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/utils/cryptography/MessageHashUtils.test.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/utils/cryptography/P256.t.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/utils/cryptography/P256.test.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/utils/cryptography/RSA.helper.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/utils/cryptography/RSA.test.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/utils/cryptography/SigVer15_186-3.rsp create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/utils/cryptography/SignatureChecker.test.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/utils/cryptography/ecdsa_secp256r1_sha256_p1363_test.json create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/utils/introspection/ERC165.test.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/utils/introspection/ERC165Checker.test.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/utils/introspection/SupportsInterface.behavior.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/utils/math/Math.t.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/utils/math/Math.test.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/utils/math/SafeCast.test.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/utils/math/SignedMath.t.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/utils/math/SignedMath.test.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/utils/structs/BitMap.test.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/utils/structs/Checkpoints.t.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/utils/structs/Checkpoints.test.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/utils/structs/CircularBuffer.test.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/utils/structs/DoubleEndedQueue.test.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/utils/structs/EnumerableMap.behavior.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/utils/structs/EnumerableMap.test.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/utils/structs/EnumerableSet.behavior.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/utils/structs/EnumerableSet.test.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/utils/structs/Heap.t.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/utils/structs/Heap.test.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/utils/structs/MerkleTree.test.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/lib/openzeppelin-contracts/test/utils/types/Time.test.js create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/package.json create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/pnpm-lock.yaml create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/pnpm-workspace.yaml create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/script/Deploy.s.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/script/DeployMocks.s.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/src/Estimator.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/src/Factory.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/src/Guest.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/src/Simulator.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/src/Stage1Module.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/src/Stage2Module.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/src/Wallet.huff create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/src/Wallet.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/src/extensions/passkeys/Passkeys.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/src/extensions/recovery/Recovery.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/src/extensions/sessions/SessionErrors.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/src/extensions/sessions/SessionManager.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/src/extensions/sessions/SessionSig.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/src/extensions/sessions/explicit/ExplicitSessionManager.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/src/extensions/sessions/explicit/IExplicitSessionManager.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/src/extensions/sessions/explicit/Permission.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/src/extensions/sessions/explicit/PermissionValidator.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/src/extensions/sessions/implicit/Attestation.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/src/extensions/sessions/implicit/ISignalsImplicitMode.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/src/extensions/sessions/implicit/ImplicitSessionManager.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/src/modules/Calls.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/src/modules/ERC4337v07.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/src/modules/Hooks.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/src/modules/Implementation.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/src/modules/Nonce.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/src/modules/Payload.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/src/modules/ReentrancyGuard.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/src/modules/Storage.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/src/modules/auth/BaseAuth.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/src/modules/auth/BaseSig.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/src/modules/auth/SelfAuth.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/src/modules/auth/Stage1Auth.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/src/modules/auth/Stage2Auth.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/src/modules/interfaces/IAccount.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/src/modules/interfaces/IAuth.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/src/modules/interfaces/ICheckpointer.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/src/modules/interfaces/IDelegatedExtension.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/src/modules/interfaces/IERC1155Receiver.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/src/modules/interfaces/IERC1271.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/src/modules/interfaces/IERC223Receiver.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/src/modules/interfaces/IERC721Receiver.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/src/modules/interfaces/IERC777Receiver.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/src/modules/interfaces/IEntryPoint.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/src/modules/interfaces/IPartialAuth.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/src/modules/interfaces/ISapient.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/src/utils/Base64.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/src/utils/LibBytes.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/src/utils/LibOptim.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/src/utils/P256.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/src/utils/WebAuthn.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/test/Factory.t.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/test/Guest.t.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/test/Stage1Module.t.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/test/Wallet.t.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/test/extensions/passkeys/Passkeys.t.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/test/extensions/recovery/Recovery.t.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/test/extensions/sessions/Attestation.t.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/test/extensions/sessions/Permission.t.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/test/extensions/sessions/SessionCalls.t.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/test/extensions/sessions/SessionManager.t.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/test/extensions/sessions/SessionSig.t.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/test/extensions/sessions/SessionTestBase.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/test/extensions/sessions/explicit/ExplicitSessionManager.t.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/test/extensions/sessions/explicit/PermissionValidator.t.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/test/extensions/sessions/implicit/ImplicitSessionManager.t.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/test/integrations/extensions/recovery/RecoveryDenialOfService.t.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/test/integrations/extensions/sessions/ExtendedSessionTestBase.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/test/integrations/extensions/sessions/SessionDenialOfService.t.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/test/integrations/extensions/sessions/SessionLimitIncrementTest.t.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/test/integrations/extensions/sessions/SessionSelfCall.t.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/test/integrations/extensions/sessions/SessionSignatureAbuse.t.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/test/integrations/extensions/sessions/SessionUsingERC4337.t.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/test/integrations/extensions/sessions/SessionValueForwarding.t.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/test/integrations/modules/ERC4337v07/ERC4337Entrypoint.t.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/test/mocks/AcceptAll.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/test/mocks/CanReenter.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/test/mocks/Emitter.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/test/mocks/MockERC20.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/test/mocks/MockPayableReceiver.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/test/mocks/ValueForwarder.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/test/modules/BaseSig.t.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/test/modules/Calls.t.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/test/modules/ERC4337v07.t.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/test/modules/Hooks.t.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/test/modules/Implementation.t.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/test/modules/Nonce.t.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/test/modules/Payload.t.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/test/utils/Base64.t.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/test/utils/LibBytes.t.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/test/utils/PrimitivesRPC.sol create mode 100644 lib/signals-implicit-mode/lib/sequence-v3/test/utils/TestUtils.sol create mode 100644 lib/signals-implicit-mode/remappings.txt create mode 100644 lib/signals-implicit-mode/script/Deploy.s.sol create mode 100644 lib/signals-implicit-mode/soldeer.lock create mode 100644 lib/signals-implicit-mode/src/helper/SignalsImplicitMode.sol create mode 100644 lib/signals-implicit-mode/src/registry/IImplicitProjectRegistry.sol create mode 100644 lib/signals-implicit-mode/src/registry/IImplicitProjectValidation.sol create mode 100644 lib/signals-implicit-mode/src/registry/ImplicitProjectRegistry.sol create mode 100644 lib/signals-implicit-mode/test/ImplicitProjectRegistry.t.sol create mode 100644 lib/signals-implicit-mode/test/SignalsImplicitMode.t.sol create mode 100644 lib/signals-implicit-mode/test/TestHelper.sol create mode 100644 lib/signals-implicit-mode/test/mock/SignalsImplicitModeMock.sol create mode 100644 package-lock.json delete mode 100644 packages/services/identity-instrument/CHANGELOG.md create mode 100644 packages/services/relayer/hardhat.config.js create mode 100644 packages/services/relayer/src/local-relayer.ts create mode 100644 packages/services/relayer/src/provider-relayer.ts delete mode 100644 packages/services/relayer/src/relayer/relayer.ts delete mode 100644 packages/services/relayer/src/relayer/rpc-relayer/relayer.gen.ts create mode 100644 packages/services/relayer/src/rpc-relayer/index.ts create mode 100644 packages/services/relayer/src/rpc-relayer/relayer.gen.ts delete mode 100644 packages/services/userdata/CHANGELOG.md delete mode 100644 packages/services/userdata/README.md delete mode 100644 packages/services/userdata/package.json delete mode 100644 packages/services/userdata/src/index.ts delete mode 100644 packages/services/userdata/src/userdata.gen.ts delete mode 100644 packages/services/userdata/tsconfig.json delete mode 100644 packages/wallet/core/CHANGELOG.md rename packages/{services/relayer => wallet/core}/src/preconditions/codec.ts (75%) rename packages/{services/relayer => wallet/core}/src/preconditions/index.ts (100%) rename packages/{services/relayer => wallet/core}/src/preconditions/selectors.ts (57%) rename packages/{services/relayer => wallet/core}/src/preconditions/types.ts (100%) rename packages/wallet/core/src/{bundler => relayer}/bundler.ts (85%) rename packages/wallet/core/src/{bundler => relayer}/bundlers/index.ts (100%) rename packages/wallet/core/src/{bundler => relayer}/bundlers/pimlico.ts (97%) rename packages/wallet/core/src/{bundler => relayer}/index.ts (67%) rename packages/{services/relayer/src/relayer/index.ts => wallet/core/src/relayer/relayer.ts} (50%) rename packages/{services/relayer => wallet/core}/src/relayer/standard/abi.ts (100%) rename packages/{services/relayer => wallet/core}/src/relayer/standard/eip6963.ts (86%) rename packages/{services/relayer => wallet/core}/src/relayer/standard/index.ts (77%) rename packages/{services/relayer => wallet/core}/src/relayer/standard/local.ts (100%) rename packages/{services/relayer => wallet/core}/src/relayer/standard/pk-relayer.ts (96%) rename packages/{services/relayer/src/relayer/rpc-relayer => wallet/core/src/relayer/standard/rpc}/index.ts (100%) create mode 100644 packages/wallet/core/src/relayer/standard/rpc/relayer.gen.ts rename packages/{services/relayer => wallet/core}/src/relayer/standard/sequence.ts (100%) delete mode 100644 packages/wallet/core/src/utils/session/types.ts rename packages/{services/relayer/test/preconditions => wallet/core/test}/preconditions.test.ts (100%) rename packages/{services/relayer => wallet/core}/test/preconditions/codec.test.ts (100%) rename packages/{services/relayer => wallet/core}/test/preconditions/selectors.test.ts (100%) rename packages/{services/relayer => wallet/core}/test/preconditions/types.test.ts (100%) rename packages/{services/relayer => wallet/core}/test/relayer/relayer.test.ts (100%) create mode 100644 packages/wallet/core/vitest.config.ts delete mode 100644 packages/wallet/dapp-client/CHANGELOG.md delete mode 100644 packages/wallet/primitives/CHANGELOG.md create mode 100644 packages/wallet/wallet-contracts/.eslintignore create mode 100644 packages/wallet/wallet-contracts/.eslintrc.js create mode 100644 packages/wallet/wallet-contracts/.gitattributes create mode 100644 packages/wallet/wallet-contracts/.github/actions/install-dependencies/action.yml create mode 100644 packages/wallet/wallet-contracts/.github/workflows/ci.yml create mode 100644 packages/wallet/wallet-contracts/.gitmodules create mode 100644 packages/wallet/wallet-contracts/.prettierrc create mode 100644 packages/wallet/wallet-contracts/.solcover.js create mode 100644 packages/wallet/wallet-contracts/.solhint.json create mode 100644 packages/wallet/wallet-contracts/0xsequence-wallet-contracts-3.0.1.tgz create mode 100644 packages/wallet/wallet-contracts/Counter/.github/workflows/test.yml create mode 100644 packages/wallet/wallet-contracts/Counter/.gitmodules create mode 100644 packages/wallet/wallet-contracts/Counter/README.md create mode 100644 packages/wallet/wallet-contracts/Counter/broadcast/Counter.s.sol/1/run-1763223074249.json create mode 100644 packages/wallet/wallet-contracts/Counter/broadcast/Counter.s.sol/1/run-1763223530987.json create mode 100644 packages/wallet/wallet-contracts/Counter/broadcast/Counter.s.sol/1/run-latest.json create mode 100644 packages/wallet/wallet-contracts/Counter/foundry.lock create mode 100644 packages/wallet/wallet-contracts/Counter/foundry.toml create mode 100644 packages/wallet/wallet-contracts/Counter/lib/forge-std/.gitattributes create mode 100644 packages/wallet/wallet-contracts/Counter/lib/forge-std/.github/CODEOWNERS create mode 100644 packages/wallet/wallet-contracts/Counter/lib/forge-std/.github/dependabot.yml create mode 100644 packages/wallet/wallet-contracts/Counter/lib/forge-std/.github/workflows/ci.yml create mode 100644 packages/wallet/wallet-contracts/Counter/lib/forge-std/.github/workflows/sync.yml create mode 100644 packages/wallet/wallet-contracts/Counter/lib/forge-std/CONTRIBUTING.md create mode 100644 packages/wallet/wallet-contracts/Counter/lib/forge-std/LICENSE-APACHE create mode 100644 packages/wallet/wallet-contracts/Counter/lib/forge-std/LICENSE-MIT create mode 100644 packages/wallet/wallet-contracts/Counter/lib/forge-std/README.md create mode 100644 packages/wallet/wallet-contracts/Counter/lib/forge-std/RELEASE_CHECKLIST.md create mode 100644 packages/wallet/wallet-contracts/Counter/lib/forge-std/foundry.toml create mode 100644 packages/wallet/wallet-contracts/Counter/lib/forge-std/package.json create mode 100644 packages/wallet/wallet-contracts/Counter/lib/forge-std/scripts/vm.py create mode 100644 packages/wallet/wallet-contracts/Counter/lib/forge-std/src/Base.sol create mode 100644 packages/wallet/wallet-contracts/Counter/lib/forge-std/src/Config.sol create mode 100644 packages/wallet/wallet-contracts/Counter/lib/forge-std/src/LibVariable.sol create mode 100644 packages/wallet/wallet-contracts/Counter/lib/forge-std/src/Script.sol create mode 100644 packages/wallet/wallet-contracts/Counter/lib/forge-std/src/StdAssertions.sol create mode 100644 packages/wallet/wallet-contracts/Counter/lib/forge-std/src/StdChains.sol create mode 100644 packages/wallet/wallet-contracts/Counter/lib/forge-std/src/StdCheats.sol create mode 100644 packages/wallet/wallet-contracts/Counter/lib/forge-std/src/StdConfig.sol create mode 100644 packages/wallet/wallet-contracts/Counter/lib/forge-std/src/StdConstants.sol create mode 100644 packages/wallet/wallet-contracts/Counter/lib/forge-std/src/StdError.sol create mode 100644 packages/wallet/wallet-contracts/Counter/lib/forge-std/src/StdInvariant.sol create mode 100644 packages/wallet/wallet-contracts/Counter/lib/forge-std/src/StdJson.sol create mode 100644 packages/wallet/wallet-contracts/Counter/lib/forge-std/src/StdMath.sol create mode 100644 packages/wallet/wallet-contracts/Counter/lib/forge-std/src/StdStorage.sol create mode 100644 packages/wallet/wallet-contracts/Counter/lib/forge-std/src/StdStyle.sol create mode 100644 packages/wallet/wallet-contracts/Counter/lib/forge-std/src/StdToml.sol create mode 100644 packages/wallet/wallet-contracts/Counter/lib/forge-std/src/StdUtils.sol create mode 100644 packages/wallet/wallet-contracts/Counter/lib/forge-std/src/Test.sol create mode 100644 packages/wallet/wallet-contracts/Counter/lib/forge-std/src/Vm.sol create mode 100644 packages/wallet/wallet-contracts/Counter/lib/forge-std/src/console.sol create mode 100644 packages/wallet/wallet-contracts/Counter/lib/forge-std/src/console2.sol create mode 100644 packages/wallet/wallet-contracts/Counter/lib/forge-std/src/interfaces/IERC1155.sol create mode 100644 packages/wallet/wallet-contracts/Counter/lib/forge-std/src/interfaces/IERC165.sol create mode 100644 packages/wallet/wallet-contracts/Counter/lib/forge-std/src/interfaces/IERC20.sol create mode 100644 packages/wallet/wallet-contracts/Counter/lib/forge-std/src/interfaces/IERC4626.sol create mode 100644 packages/wallet/wallet-contracts/Counter/lib/forge-std/src/interfaces/IERC6909.sol create mode 100644 packages/wallet/wallet-contracts/Counter/lib/forge-std/src/interfaces/IERC721.sol create mode 100644 packages/wallet/wallet-contracts/Counter/lib/forge-std/src/interfaces/IERC7540.sol create mode 100644 packages/wallet/wallet-contracts/Counter/lib/forge-std/src/interfaces/IERC7575.sol create mode 100644 packages/wallet/wallet-contracts/Counter/lib/forge-std/src/interfaces/IMulticall3.sol create mode 100644 packages/wallet/wallet-contracts/Counter/lib/forge-std/src/safeconsole.sol create mode 100644 packages/wallet/wallet-contracts/Counter/lib/forge-std/test/CommonBase.t.sol create mode 100644 packages/wallet/wallet-contracts/Counter/lib/forge-std/test/Config.t.sol create mode 100644 packages/wallet/wallet-contracts/Counter/lib/forge-std/test/LibVariable.t.sol create mode 100644 packages/wallet/wallet-contracts/Counter/lib/forge-std/test/StdAssertions.t.sol create mode 100644 packages/wallet/wallet-contracts/Counter/lib/forge-std/test/StdChains.t.sol create mode 100644 packages/wallet/wallet-contracts/Counter/lib/forge-std/test/StdCheats.t.sol create mode 100644 packages/wallet/wallet-contracts/Counter/lib/forge-std/test/StdConstants.t.sol create mode 100644 packages/wallet/wallet-contracts/Counter/lib/forge-std/test/StdError.t.sol create mode 100644 packages/wallet/wallet-contracts/Counter/lib/forge-std/test/StdJson.t.sol create mode 100644 packages/wallet/wallet-contracts/Counter/lib/forge-std/test/StdMath.t.sol create mode 100644 packages/wallet/wallet-contracts/Counter/lib/forge-std/test/StdStorage.t.sol create mode 100644 packages/wallet/wallet-contracts/Counter/lib/forge-std/test/StdStyle.t.sol create mode 100644 packages/wallet/wallet-contracts/Counter/lib/forge-std/test/StdToml.t.sol create mode 100644 packages/wallet/wallet-contracts/Counter/lib/forge-std/test/StdUtils.t.sol create mode 100644 packages/wallet/wallet-contracts/Counter/lib/forge-std/test/Vm.t.sol create mode 100644 packages/wallet/wallet-contracts/Counter/lib/forge-std/test/compilation/CompilationScript.sol create mode 100644 packages/wallet/wallet-contracts/Counter/lib/forge-std/test/compilation/CompilationScriptBase.sol create mode 100644 packages/wallet/wallet-contracts/Counter/lib/forge-std/test/compilation/CompilationTest.sol create mode 100644 packages/wallet/wallet-contracts/Counter/lib/forge-std/test/compilation/CompilationTestBase.sol create mode 100644 packages/wallet/wallet-contracts/Counter/lib/forge-std/test/fixtures/broadcast.log.json create mode 100644 packages/wallet/wallet-contracts/Counter/lib/forge-std/test/fixtures/config.toml create mode 100644 packages/wallet/wallet-contracts/Counter/lib/forge-std/test/fixtures/test.json create mode 100644 packages/wallet/wallet-contracts/Counter/lib/forge-std/test/fixtures/test.toml create mode 100644 packages/wallet/wallet-contracts/Counter/script/Counter.s.sol create mode 100644 packages/wallet/wallet-contracts/Counter/src/Counter.sol create mode 100644 packages/wallet/wallet-contracts/Counter/test/Counter.t.sol create mode 100644 packages/wallet/wallet-contracts/Counter/utils/JsonBindings.sol create mode 100644 packages/wallet/wallet-contracts/LICENSE create mode 100644 packages/wallet/wallet-contracts/README.md create mode 100644 packages/wallet/wallet-contracts/audits/v1/Consensys_Diligence.md create mode 100644 packages/wallet/wallet-contracts/audits/v1/Quantstamp_Arcadeum_Report_Final.pdf create mode 100644 packages/wallet/wallet-contracts/audits/v1/sequence_quantstamp_audit_feb_2021.pdf create mode 100644 packages/wallet/wallet-contracts/audits/v2/Sequence Wallet - Zellic Audit Report.pdf create mode 100644 packages/wallet/wallet-contracts/audits/v2/consensys-horizon-sequence-wallet-audit-2023-02.pdf create mode 100644 packages/wallet/wallet-contracts/config/PROD.env.sample create mode 100644 packages/wallet/wallet-contracts/contracts/Factory.sol create mode 100644 packages/wallet/wallet-contracts/contracts/GuestModule-wallet/metadata.json create mode 100644 packages/wallet/wallet-contracts/contracts/GuestModule-wallet/sources/contracts/interfaces/IERC1271Wallet.sol create mode 100644 packages/wallet/wallet-contracts/contracts/GuestModule-wallet/sources/contracts/modules/GuestModule.sol create mode 100644 packages/wallet/wallet-contracts/contracts/GuestModule-wallet/sources/contracts/modules/artifacts/GuestModule.json create mode 100644 packages/wallet/wallet-contracts/contracts/GuestModule-wallet/sources/contracts/modules/artifacts/GuestModule_metadata.json create mode 100644 packages/wallet/wallet-contracts/contracts/GuestModule-wallet/sources/contracts/modules/artifacts/build-info/c563de663c25f57de739af959840b24e.json create mode 100644 packages/wallet/wallet-contracts/contracts/GuestModule-wallet/sources/contracts/modules/commons/ModuleAuth.sol create mode 100644 packages/wallet/wallet-contracts/contracts/GuestModule-wallet/sources/contracts/modules/commons/ModuleCalls.sol create mode 100644 packages/wallet/wallet-contracts/contracts/GuestModule-wallet/sources/contracts/modules/commons/ModuleCreator.sol create mode 100644 packages/wallet/wallet-contracts/contracts/GuestModule-wallet/sources/contracts/modules/commons/ModuleERC165.sol create mode 100644 packages/wallet/wallet-contracts/contracts/GuestModule-wallet/sources/contracts/modules/commons/ModuleNonce.sol create mode 100644 packages/wallet/wallet-contracts/contracts/GuestModule-wallet/sources/contracts/modules/commons/ModuleOnlyDelegatecall.sol create mode 100644 packages/wallet/wallet-contracts/contracts/GuestModule-wallet/sources/contracts/modules/commons/ModuleSelfAuth.sol create mode 100644 packages/wallet/wallet-contracts/contracts/GuestModule-wallet/sources/contracts/modules/commons/ModuleStorage.sol create mode 100644 packages/wallet/wallet-contracts/contracts/GuestModule-wallet/sources/contracts/modules/commons/interfaces/IModuleAuth.sol create mode 100644 packages/wallet/wallet-contracts/contracts/GuestModule-wallet/sources/contracts/modules/commons/interfaces/IModuleCalls.sol create mode 100644 packages/wallet/wallet-contracts/contracts/GuestModule-wallet/sources/contracts/modules/commons/interfaces/IModuleCreator.sol create mode 100644 packages/wallet/wallet-contracts/contracts/GuestModule-wallet/sources/contracts/modules/commons/submodules/auth/SequenceBaseSig.sol create mode 100644 packages/wallet/wallet-contracts/contracts/GuestModule-wallet/sources/contracts/modules/commons/submodules/auth/SequenceChainedSig.sol create mode 100644 packages/wallet/wallet-contracts/contracts/GuestModule-wallet/sources/contracts/modules/commons/submodules/auth/SequenceDynamicSig.sol create mode 100644 packages/wallet/wallet-contracts/contracts/GuestModule-wallet/sources/contracts/modules/commons/submodules/auth/SequenceNoChainIdSig.sol create mode 100644 packages/wallet/wallet-contracts/contracts/GuestModule-wallet/sources/contracts/modules/commons/submodules/nonce/SubModuleNonce.sol create mode 100644 packages/wallet/wallet-contracts/contracts/GuestModule-wallet/sources/contracts/utils/LibBytes.sol create mode 100644 packages/wallet/wallet-contracts/contracts/GuestModule-wallet/sources/contracts/utils/LibBytesPointer.sol create mode 100644 packages/wallet/wallet-contracts/contracts/GuestModule-wallet/sources/contracts/utils/LibOptim.sol create mode 100644 packages/wallet/wallet-contracts/contracts/GuestModule-wallet/sources/contracts/utils/SignatureValidator.sol create mode 100644 packages/wallet/wallet-contracts/contracts/Wallet.sol create mode 100644 packages/wallet/wallet-contracts/contracts/hooks/WalletProxyHook.sol create mode 100644 packages/wallet/wallet-contracts/contracts/hooks/interfaces/IWalletProxy.sol create mode 100644 packages/wallet/wallet-contracts/contracts/interfaces/IERC1271Wallet.sol create mode 100644 packages/wallet/wallet-contracts/contracts/interfaces/receivers/IERC1155Receiver.sol create mode 100644 packages/wallet/wallet-contracts/contracts/interfaces/receivers/IERC223Receiver.sol create mode 100644 packages/wallet/wallet-contracts/contracts/interfaces/receivers/IERC721Receiver.sol create mode 100644 packages/wallet/wallet-contracts/contracts/interfaces/receivers/IERC777Receiver.sol create mode 100644 packages/wallet/wallet-contracts/contracts/interfaces/tokens/IERC1155.sol create mode 100644 packages/wallet/wallet-contracts/contracts/interfaces/tokens/IERC20.sol create mode 100644 packages/wallet/wallet-contracts/contracts/interfaces/tokens/IERC721.sol create mode 100644 packages/wallet/wallet-contracts/contracts/mocks/AlwaysRevertMock.sol create mode 100644 packages/wallet/wallet-contracts/contracts/mocks/CallReceiverMock.sol create mode 100644 packages/wallet/wallet-contracts/contracts/mocks/DelegateCallMock.sol create mode 100644 packages/wallet/wallet-contracts/contracts/mocks/ERC1155Mock.sol create mode 100644 packages/wallet/wallet-contracts/contracts/mocks/ERC165CheckerMock.sol create mode 100644 packages/wallet/wallet-contracts/contracts/mocks/ERC20Mock.sol create mode 100644 packages/wallet/wallet-contracts/contracts/mocks/ERC721Mock.sol create mode 100644 packages/wallet/wallet-contracts/contracts/mocks/GasBurnerMock.sol create mode 100644 packages/wallet/wallet-contracts/contracts/mocks/HookCallerMock.sol create mode 100644 packages/wallet/wallet-contracts/contracts/mocks/HookMock.sol create mode 100644 packages/wallet/wallet-contracts/contracts/mocks/LibBytesImpl.sol create mode 100644 packages/wallet/wallet-contracts/contracts/mocks/LibBytesPointerImpl.sol create mode 100644 packages/wallet/wallet-contracts/contracts/mocks/LibStringImp.sol create mode 100644 packages/wallet/wallet-contracts/contracts/mocks/ModuleMock.sol create mode 100644 packages/wallet/wallet-contracts/contracts/modules/GuestModule.sol create mode 100644 packages/wallet/wallet-contracts/contracts/modules/MainModule.sol create mode 100644 packages/wallet/wallet-contracts/contracts/modules/MainModuleGasEstimation.sol create mode 100644 packages/wallet/wallet-contracts/contracts/modules/MainModuleUpgradable.sol create mode 100644 packages/wallet/wallet-contracts/contracts/modules/commons/Implementation.sol create mode 100644 packages/wallet/wallet-contracts/contracts/modules/commons/ModuleAuth.sol create mode 100644 packages/wallet/wallet-contracts/contracts/modules/commons/ModuleAuthConvenience.sol create mode 100644 packages/wallet/wallet-contracts/contracts/modules/commons/ModuleAuthFixed.sol create mode 100644 packages/wallet/wallet-contracts/contracts/modules/commons/ModuleAuthUpgradable.sol create mode 100644 packages/wallet/wallet-contracts/contracts/modules/commons/ModuleCalls.sol create mode 100644 packages/wallet/wallet-contracts/contracts/modules/commons/ModuleCreator.sol create mode 100644 packages/wallet/wallet-contracts/contracts/modules/commons/ModuleERC165.sol create mode 100644 packages/wallet/wallet-contracts/contracts/modules/commons/ModuleERC5719.sol create mode 100644 packages/wallet/wallet-contracts/contracts/modules/commons/ModuleExtraAuth.sol create mode 100644 packages/wallet/wallet-contracts/contracts/modules/commons/ModuleHooks.sol create mode 100644 packages/wallet/wallet-contracts/contracts/modules/commons/ModuleIPFS.sol create mode 100644 packages/wallet/wallet-contracts/contracts/modules/commons/ModuleNonce.sol create mode 100644 packages/wallet/wallet-contracts/contracts/modules/commons/ModuleOnlyDelegatecall.sol create mode 100644 packages/wallet/wallet-contracts/contracts/modules/commons/ModuleSelfAuth.sol create mode 100644 packages/wallet/wallet-contracts/contracts/modules/commons/ModuleStorage.sol create mode 100644 packages/wallet/wallet-contracts/contracts/modules/commons/ModuleUpdate.sol create mode 100644 packages/wallet/wallet-contracts/contracts/modules/commons/gas-estimation/ModuleIgnoreAuthUpgradable.sol create mode 100644 packages/wallet/wallet-contracts/contracts/modules/commons/gas-estimation/ModuleIgnoreNonceCalls.sol create mode 100644 packages/wallet/wallet-contracts/contracts/modules/commons/interfaces/IModuleAuth.sol create mode 100644 packages/wallet/wallet-contracts/contracts/modules/commons/interfaces/IModuleAuthUpgradable.sol create mode 100644 packages/wallet/wallet-contracts/contracts/modules/commons/interfaces/IModuleCalls.sol create mode 100644 packages/wallet/wallet-contracts/contracts/modules/commons/interfaces/IModuleCreator.sol create mode 100644 packages/wallet/wallet-contracts/contracts/modules/commons/interfaces/IModuleHooks.sol create mode 100644 packages/wallet/wallet-contracts/contracts/modules/commons/interfaces/IModuleUpdate.sol create mode 100644 packages/wallet/wallet-contracts/contracts/modules/commons/submodules/auth/SequenceBaseSig.sol create mode 100644 packages/wallet/wallet-contracts/contracts/modules/commons/submodules/auth/SequenceChainedSig.sol create mode 100644 packages/wallet/wallet-contracts/contracts/modules/commons/submodules/auth/SequenceDynamicSig.sol create mode 100644 packages/wallet/wallet-contracts/contracts/modules/commons/submodules/auth/SequenceNoChainIdSig.sol create mode 100644 packages/wallet/wallet-contracts/contracts/modules/commons/submodules/nonce/SubModuleNonce.sol create mode 100644 packages/wallet/wallet-contracts/contracts/modules/utils/GasEstimator.sol create mode 100644 packages/wallet/wallet-contracts/contracts/modules/utils/MultiCallUtils.sol create mode 100644 packages/wallet/wallet-contracts/contracts/modules/utils/RequireUtils.sol create mode 100644 packages/wallet/wallet-contracts/contracts/modules/utils/SequenceUtils.sol create mode 100644 packages/wallet/wallet-contracts/contracts/trust/Trust.sol create mode 100644 packages/wallet/wallet-contracts/contracts/trust/TrustFactory.sol create mode 100644 packages/wallet/wallet-contracts/contracts/utils/LibAddress.sol create mode 100644 packages/wallet/wallet-contracts/contracts/utils/LibBytes.sol create mode 100644 packages/wallet/wallet-contracts/contracts/utils/LibBytesPointer.sol create mode 100644 packages/wallet/wallet-contracts/contracts/utils/LibOptim.sol create mode 100644 packages/wallet/wallet-contracts/contracts/utils/LibString.sol create mode 100644 packages/wallet/wallet-contracts/contracts/utils/SignatureValidator.sol create mode 100644 packages/wallet/wallet-contracts/docs/book.css create mode 100644 packages/wallet/wallet-contracts/docs/book.toml create mode 100644 packages/wallet/wallet-contracts/docs/solidity.min.js create mode 100644 packages/wallet/wallet-contracts/docs/src/README.md create mode 100644 packages/wallet/wallet-contracts/docs/src/SUMMARY.md create mode 100644 packages/wallet/wallet-contracts/docs/src/contracts/Factory.sol/contract.Factory.md create mode 100644 packages/wallet/wallet-contracts/docs/src/contracts/README.md create mode 100644 packages/wallet/wallet-contracts/docs/src/contracts/Wallet.sol/library.Wallet.md create mode 100644 packages/wallet/wallet-contracts/docs/src/contracts/hooks/README.md create mode 100644 packages/wallet/wallet-contracts/docs/src/contracts/hooks/WalletProxyHook.sol/contract.WalletProxyHook.md create mode 100644 packages/wallet/wallet-contracts/docs/src/contracts/hooks/interfaces/IWalletProxy.sol/interface.IWalletProxy.md create mode 100644 packages/wallet/wallet-contracts/docs/src/contracts/hooks/interfaces/README.md create mode 100644 packages/wallet/wallet-contracts/docs/src/contracts/interfaces/IERC1271Wallet.sol/interface.IERC1271Wallet.md create mode 100644 packages/wallet/wallet-contracts/docs/src/contracts/interfaces/README.md create mode 100644 packages/wallet/wallet-contracts/docs/src/contracts/interfaces/receivers/IERC1155Receiver.sol/interface.IERC1155Receiver.md create mode 100644 packages/wallet/wallet-contracts/docs/src/contracts/interfaces/receivers/IERC223Receiver.sol/interface.IERC223Receiver.md create mode 100644 packages/wallet/wallet-contracts/docs/src/contracts/interfaces/receivers/IERC721Receiver.sol/interface.IERC721Receiver.md create mode 100644 packages/wallet/wallet-contracts/docs/src/contracts/interfaces/receivers/IERC777Receiver.sol/interface.IERC777Receiver.md create mode 100644 packages/wallet/wallet-contracts/docs/src/contracts/interfaces/receivers/README.md create mode 100644 packages/wallet/wallet-contracts/docs/src/contracts/interfaces/tokens/IERC1155.sol/interface.IERC1155.md create mode 100644 packages/wallet/wallet-contracts/docs/src/contracts/interfaces/tokens/IERC20.sol/interface.IERC20.md create mode 100644 packages/wallet/wallet-contracts/docs/src/contracts/interfaces/tokens/IERC721.sol/interface.IERC721.md create mode 100644 packages/wallet/wallet-contracts/docs/src/contracts/interfaces/tokens/README.md create mode 100644 packages/wallet/wallet-contracts/docs/src/contracts/mocks/AlwaysRevertMock.sol/contract.AlwaysRevertMock.md create mode 100644 packages/wallet/wallet-contracts/docs/src/contracts/mocks/CallReceiverMock.sol/contract.CallReceiverMock.md create mode 100644 packages/wallet/wallet-contracts/docs/src/contracts/mocks/DelegateCallMock.sol/contract.DelegateCallMock.md create mode 100644 packages/wallet/wallet-contracts/docs/src/contracts/mocks/ERC1155Mock.sol/contract.ERC1155Mock.md create mode 100644 packages/wallet/wallet-contracts/docs/src/contracts/mocks/ERC165CheckerMock.sol/contract.ERC165CheckerMock.md create mode 100644 packages/wallet/wallet-contracts/docs/src/contracts/mocks/ERC20Mock.sol/contract.ERC20Mock.md create mode 100644 packages/wallet/wallet-contracts/docs/src/contracts/mocks/ERC721Mock.sol/contract.ERC721Mock.md create mode 100644 packages/wallet/wallet-contracts/docs/src/contracts/mocks/GasBurnerMock.sol/contract.GasBurnerMock.md create mode 100644 packages/wallet/wallet-contracts/docs/src/contracts/mocks/HookCallerMock.sol/contract.HookCallerMock.md create mode 100644 packages/wallet/wallet-contracts/docs/src/contracts/mocks/HookMock.sol/contract.HookMock.md create mode 100644 packages/wallet/wallet-contracts/docs/src/contracts/mocks/LibBytesImpl.sol/contract.LibBytesImpl.md create mode 100644 packages/wallet/wallet-contracts/docs/src/contracts/mocks/LibBytesPointerImpl.sol/contract.LibBytesPointerImpl.md create mode 100644 packages/wallet/wallet-contracts/docs/src/contracts/mocks/LibStringImp.sol/contract.LibStringImp.md create mode 100644 packages/wallet/wallet-contracts/docs/src/contracts/mocks/ModuleMock.sol/contract.ModuleMock.md create mode 100644 packages/wallet/wallet-contracts/docs/src/contracts/mocks/README.md create mode 100644 packages/wallet/wallet-contracts/docs/src/contracts/modules/GuestModule.sol/contract.GuestModule.md create mode 100644 packages/wallet/wallet-contracts/docs/src/contracts/modules/MainModule.sol/contract.MainModule.md create mode 100644 packages/wallet/wallet-contracts/docs/src/contracts/modules/MainModuleGasEstimation.sol/contract.MainModuleGasEstimation.md create mode 100644 packages/wallet/wallet-contracts/docs/src/contracts/modules/MainModuleUpgradable.sol/contract.MainModuleUpgradable.md create mode 100644 packages/wallet/wallet-contracts/docs/src/contracts/modules/README.md create mode 100644 packages/wallet/wallet-contracts/docs/src/contracts/modules/commons/Implementation.sol/contract.Implementation.md create mode 100644 packages/wallet/wallet-contracts/docs/src/contracts/modules/commons/ModuleAuth.sol/abstract.ModuleAuth.md create mode 100644 packages/wallet/wallet-contracts/docs/src/contracts/modules/commons/ModuleAuthConvenience.sol/abstract.ModuleAuthConvenience.md create mode 100644 packages/wallet/wallet-contracts/docs/src/contracts/modules/commons/ModuleAuthFixed.sol/abstract.ModuleAuthFixed.md create mode 100644 packages/wallet/wallet-contracts/docs/src/contracts/modules/commons/ModuleAuthUpgradable.sol/abstract.ModuleAuthUpgradable.md create mode 100644 packages/wallet/wallet-contracts/docs/src/contracts/modules/commons/ModuleCalls.sol/abstract.ModuleCalls.md create mode 100644 packages/wallet/wallet-contracts/docs/src/contracts/modules/commons/ModuleCreator.sol/contract.ModuleCreator.md create mode 100644 packages/wallet/wallet-contracts/docs/src/contracts/modules/commons/ModuleERC165.sol/abstract.ModuleERC165.md create mode 100644 packages/wallet/wallet-contracts/docs/src/contracts/modules/commons/ModuleERC5719.sol/contract.ModuleERC5719.md create mode 100644 packages/wallet/wallet-contracts/docs/src/contracts/modules/commons/ModuleExtraAuth.sol/abstract.ModuleExtraAuth.md create mode 100644 packages/wallet/wallet-contracts/docs/src/contracts/modules/commons/ModuleHooks.sol/contract.ModuleHooks.md create mode 100644 packages/wallet/wallet-contracts/docs/src/contracts/modules/commons/ModuleIPFS.sol/contract.ModuleIPFS.md create mode 100644 packages/wallet/wallet-contracts/docs/src/contracts/modules/commons/ModuleNonce.sol/contract.ModuleNonce.md create mode 100644 packages/wallet/wallet-contracts/docs/src/contracts/modules/commons/ModuleOnlyDelegatecall.sol/contract.ModuleOnlyDelegatecall.md create mode 100644 packages/wallet/wallet-contracts/docs/src/contracts/modules/commons/ModuleSelfAuth.sol/contract.ModuleSelfAuth.md create mode 100644 packages/wallet/wallet-contracts/docs/src/contracts/modules/commons/ModuleStorage.sol/library.ModuleStorage.md create mode 100644 packages/wallet/wallet-contracts/docs/src/contracts/modules/commons/ModuleUpdate.sol/contract.ModuleUpdate.md create mode 100644 packages/wallet/wallet-contracts/docs/src/contracts/modules/commons/README.md create mode 100644 packages/wallet/wallet-contracts/docs/src/contracts/modules/commons/gas-estimation/ModuleIgnoreAuthUpgradable.sol/abstract.ModuleIgnoreAuthUpgradable.md create mode 100644 packages/wallet/wallet-contracts/docs/src/contracts/modules/commons/gas-estimation/ModuleIgnoreNonceCalls.sol/abstract.ModuleIgnoreNonceCalls.md create mode 100644 packages/wallet/wallet-contracts/docs/src/contracts/modules/commons/gas-estimation/README.md create mode 100644 packages/wallet/wallet-contracts/docs/src/contracts/modules/commons/interfaces/IModuleAuth.sol/abstract.IModuleAuth.md create mode 100644 packages/wallet/wallet-contracts/docs/src/contracts/modules/commons/interfaces/IModuleAuthUpgradable.sol/interface.IModuleAuthUpgradable.md create mode 100644 packages/wallet/wallet-contracts/docs/src/contracts/modules/commons/interfaces/IModuleCalls.sol/interface.IModuleCalls.md create mode 100644 packages/wallet/wallet-contracts/docs/src/contracts/modules/commons/interfaces/IModuleCreator.sol/interface.IModuleCreator.md create mode 100644 packages/wallet/wallet-contracts/docs/src/contracts/modules/commons/interfaces/IModuleHooks.sol/interface.IModuleHooks.md create mode 100644 packages/wallet/wallet-contracts/docs/src/contracts/modules/commons/interfaces/IModuleUpdate.sol/abstract.IModuleUpdate.md create mode 100644 packages/wallet/wallet-contracts/docs/src/contracts/modules/commons/interfaces/README.md create mode 100644 packages/wallet/wallet-contracts/docs/src/contracts/modules/commons/submodules/README.md create mode 100644 packages/wallet/wallet-contracts/docs/src/contracts/modules/commons/submodules/auth/README.md create mode 100644 packages/wallet/wallet-contracts/docs/src/contracts/modules/commons/submodules/auth/SequenceBaseSig.sol/library.SequenceBaseSig.md create mode 100644 packages/wallet/wallet-contracts/docs/src/contracts/modules/commons/submodules/auth/SequenceChainedSig.sol/abstract.SequenceChainedSig.md create mode 100644 packages/wallet/wallet-contracts/docs/src/contracts/modules/commons/submodules/auth/SequenceDynamicSig.sol/library.SequenceDynamicSig.md create mode 100644 packages/wallet/wallet-contracts/docs/src/contracts/modules/commons/submodules/auth/SequenceNoChainIdSig.sol/library.SequenceNoChainIdSig.md create mode 100644 packages/wallet/wallet-contracts/docs/src/contracts/modules/commons/submodules/nonce/README.md create mode 100644 packages/wallet/wallet-contracts/docs/src/contracts/modules/commons/submodules/nonce/SubModuleNonce.sol/library.SubModuleNonce.md create mode 100644 packages/wallet/wallet-contracts/docs/src/contracts/modules/utils/GasEstimator.sol/contract.GasEstimator.md create mode 100644 packages/wallet/wallet-contracts/docs/src/contracts/modules/utils/MultiCallUtils.sol/contract.MultiCallUtils.md create mode 100644 packages/wallet/wallet-contracts/docs/src/contracts/modules/utils/README.md create mode 100644 packages/wallet/wallet-contracts/docs/src/contracts/modules/utils/RequireUtils.sol/contract.RequireUtils.md create mode 100644 packages/wallet/wallet-contracts/docs/src/contracts/modules/utils/SequenceUtils.sol/contract.SequenceUtils.md create mode 100644 packages/wallet/wallet-contracts/docs/src/contracts/trust/README.md create mode 100644 packages/wallet/wallet-contracts/docs/src/contracts/trust/Trust.sol/contract.Trust.md create mode 100644 packages/wallet/wallet-contracts/docs/src/contracts/trust/Trust.sol/function.absDiff.md create mode 100644 packages/wallet/wallet-contracts/docs/src/contracts/trust/TrustFactory.sol/contract.TrustFactory.md create mode 100644 packages/wallet/wallet-contracts/docs/src/contracts/utils/LibAddress.sol/library.LibAddress.md create mode 100644 packages/wallet/wallet-contracts/docs/src/contracts/utils/LibBytes.sol/library.LibBytes.md create mode 100644 packages/wallet/wallet-contracts/docs/src/contracts/utils/LibBytesPointer.sol/library.LibBytesPointer.md create mode 100644 packages/wallet/wallet-contracts/docs/src/contracts/utils/LibOptim.sol/library.LibOptim.md create mode 100644 packages/wallet/wallet-contracts/docs/src/contracts/utils/LibString.sol/library.LibString.md create mode 100644 packages/wallet/wallet-contracts/docs/src/contracts/utils/README.md create mode 100644 packages/wallet/wallet-contracts/docs/src/contracts/utils/SignatureValidator.sol/library.SignatureValidator.md create mode 100644 packages/wallet/wallet-contracts/foundry.lock create mode 100644 packages/wallet/wallet-contracts/foundry.toml create mode 100644 packages/wallet/wallet-contracts/foundry_test/base/AdvTest.sol create mode 100644 packages/wallet/wallet-contracts/foundry_test/hooks/WalletProxyHook.t.sol create mode 100644 packages/wallet/wallet-contracts/foundry_test/modules/commons/Implementation.t.sol create mode 100644 packages/wallet/wallet-contracts/foundry_test/modules/commons/ModuleCalls.t.sol create mode 100644 packages/wallet/wallet-contracts/foundry_test/modules/commons/ModuleERC5719.t.sol create mode 100644 packages/wallet/wallet-contracts/foundry_test/modules/commons/ModuleExtraAuth.t.sol create mode 100644 packages/wallet/wallet-contracts/foundry_test/modules/commons/ModuleIPFS.t.sol create mode 100644 packages/wallet/wallet-contracts/foundry_test/modules/commons/ModuleStorage.t.sol create mode 100644 packages/wallet/wallet-contracts/foundry_test/modules/commons/submodules/auth/SequenceBaseSig.t.sol create mode 100644 packages/wallet/wallet-contracts/foundry_test/modules/commons/submodules/auth/SequenceChainedSig.t.sol create mode 100644 packages/wallet/wallet-contracts/foundry_test/modules/commons/submodules/auth/SequenceDynamicSig.t.sol create mode 100644 packages/wallet/wallet-contracts/foundry_test/modules/commons/submodules/auth/SequenceNoChainIdSig.t.sol create mode 100644 packages/wallet/wallet-contracts/foundry_test/modules/commons/submodules/nonce/SubModuleNonce.t.sol create mode 100644 packages/wallet/wallet-contracts/foundry_test/modules/utils/L2CompressorEncoder.sol create mode 100644 packages/wallet/wallet-contracts/foundry_test/modules/utils/L2CompressorHuff.t.sol create mode 100644 packages/wallet/wallet-contracts/foundry_test/modules/utils/L2CompressorHuffReadExecute.sol create mode 100644 packages/wallet/wallet-contracts/foundry_test/modules/utils/L2CompressorHuffReadFlag.t.sol create mode 100644 packages/wallet/wallet-contracts/foundry_test/modules/utils/L2CompressorHuffReadNonce.sol create mode 100644 packages/wallet/wallet-contracts/foundry_test/modules/utils/L2CompressorHuffReadTx.t.sol create mode 100644 packages/wallet/wallet-contracts/foundry_test/modules/utils/L2CompressorHuffReadTxs.t.sol create mode 100644 packages/wallet/wallet-contracts/foundry_test/modules/utils/RequireUtils.t.sol create mode 100644 packages/wallet/wallet-contracts/foundry_test/trust/Trust.t.sol create mode 100644 packages/wallet/wallet-contracts/foundry_test/trust/TrustFactory.t.sol create mode 100644 packages/wallet/wallet-contracts/foundry_test/utils/LibAddress.t.sol create mode 100644 packages/wallet/wallet-contracts/foundry_test/utils/LibBytes.t.sol create mode 100644 packages/wallet/wallet-contracts/foundry_test/utils/LibBytesPointer.t.sol create mode 100644 packages/wallet/wallet-contracts/foundry_test/utils/LibOptim.t.sol create mode 100644 packages/wallet/wallet-contracts/foundry_test/utils/SignatureValidator.t.sol create mode 100644 packages/wallet/wallet-contracts/funding.json create mode 100644 packages/wallet/wallet-contracts/hardhat.config.ts create mode 100644 packages/wallet/wallet-contracts/lib/forge-std/.github/workflows/ci.yml create mode 100644 packages/wallet/wallet-contracts/lib/forge-std/.github/workflows/sync.yml create mode 100644 packages/wallet/wallet-contracts/lib/forge-std/.gitmodules create mode 100644 packages/wallet/wallet-contracts/lib/forge-std/LICENSE-APACHE create mode 100644 packages/wallet/wallet-contracts/lib/forge-std/LICENSE-MIT create mode 100644 packages/wallet/wallet-contracts/lib/forge-std/README.md create mode 100644 packages/wallet/wallet-contracts/lib/forge-std/foundry.toml create mode 100644 packages/wallet/wallet-contracts/lib/forge-std/lib/ds-test/.github/workflows/build.yml create mode 100644 packages/wallet/wallet-contracts/lib/forge-std/lib/ds-test/LICENSE create mode 100644 packages/wallet/wallet-contracts/lib/forge-std/lib/ds-test/Makefile create mode 100644 packages/wallet/wallet-contracts/lib/forge-std/lib/ds-test/default.nix create mode 100644 packages/wallet/wallet-contracts/lib/forge-std/lib/ds-test/demo/demo.sol create mode 100644 packages/wallet/wallet-contracts/lib/forge-std/lib/ds-test/package.json create mode 100644 packages/wallet/wallet-contracts/lib/forge-std/lib/ds-test/src/test.sol create mode 100644 packages/wallet/wallet-contracts/lib/forge-std/lib/ds-test/src/test.t.sol create mode 100644 packages/wallet/wallet-contracts/lib/forge-std/package.json create mode 100644 packages/wallet/wallet-contracts/lib/forge-std/src/Base.sol create mode 100644 packages/wallet/wallet-contracts/lib/forge-std/src/Script.sol create mode 100644 packages/wallet/wallet-contracts/lib/forge-std/src/StdAssertions.sol create mode 100644 packages/wallet/wallet-contracts/lib/forge-std/src/StdChains.sol create mode 100644 packages/wallet/wallet-contracts/lib/forge-std/src/StdCheats.sol create mode 100644 packages/wallet/wallet-contracts/lib/forge-std/src/StdError.sol create mode 100644 packages/wallet/wallet-contracts/lib/forge-std/src/StdInvariant.sol create mode 100644 packages/wallet/wallet-contracts/lib/forge-std/src/StdJson.sol create mode 100644 packages/wallet/wallet-contracts/lib/forge-std/src/StdMath.sol create mode 100644 packages/wallet/wallet-contracts/lib/forge-std/src/StdStorage.sol create mode 100644 packages/wallet/wallet-contracts/lib/forge-std/src/StdStyle.sol create mode 100644 packages/wallet/wallet-contracts/lib/forge-std/src/StdUtils.sol create mode 100644 packages/wallet/wallet-contracts/lib/forge-std/src/Test.sol create mode 100644 packages/wallet/wallet-contracts/lib/forge-std/src/Vm.sol create mode 100644 packages/wallet/wallet-contracts/lib/forge-std/src/console.sol create mode 100644 packages/wallet/wallet-contracts/lib/forge-std/src/console2.sol create mode 100644 packages/wallet/wallet-contracts/lib/forge-std/src/interfaces/IERC1155.sol create mode 100644 packages/wallet/wallet-contracts/lib/forge-std/src/interfaces/IERC165.sol create mode 100644 packages/wallet/wallet-contracts/lib/forge-std/src/interfaces/IERC20.sol create mode 100644 packages/wallet/wallet-contracts/lib/forge-std/src/interfaces/IERC4626.sol create mode 100644 packages/wallet/wallet-contracts/lib/forge-std/src/interfaces/IERC721.sol create mode 100644 packages/wallet/wallet-contracts/lib/forge-std/src/interfaces/IMulticall3.sol create mode 100644 packages/wallet/wallet-contracts/lib/forge-std/test/StdAssertions.t.sol create mode 100644 packages/wallet/wallet-contracts/lib/forge-std/test/StdChains.t.sol create mode 100644 packages/wallet/wallet-contracts/lib/forge-std/test/StdCheats.t.sol create mode 100644 packages/wallet/wallet-contracts/lib/forge-std/test/StdError.t.sol create mode 100644 packages/wallet/wallet-contracts/lib/forge-std/test/StdMath.t.sol create mode 100644 packages/wallet/wallet-contracts/lib/forge-std/test/StdStorage.t.sol create mode 100644 packages/wallet/wallet-contracts/lib/forge-std/test/StdStyle.t.sol create mode 100644 packages/wallet/wallet-contracts/lib/forge-std/test/StdUtils.t.sol create mode 100644 packages/wallet/wallet-contracts/lib/forge-std/test/compilation/CompilationScript.sol create mode 100644 packages/wallet/wallet-contracts/lib/forge-std/test/compilation/CompilationScriptBase.sol create mode 100644 packages/wallet/wallet-contracts/lib/forge-std/test/compilation/CompilationTest.sol create mode 100644 packages/wallet/wallet-contracts/lib/forge-std/test/compilation/CompilationTestBase.sol create mode 100644 packages/wallet/wallet-contracts/lib/forge-std/test/fixtures/broadcast.log.json create mode 100644 packages/wallet/wallet-contracts/lib/foundry-huff/.git-blame-ignore-revs create mode 100644 packages/wallet/wallet-contracts/lib/foundry-huff/.github/workflows/tests.yaml create mode 100644 packages/wallet/wallet-contracts/lib/foundry-huff/.gitmodules create mode 100644 packages/wallet/wallet-contracts/lib/foundry-huff/LICENSE create mode 100644 packages/wallet/wallet-contracts/lib/foundry-huff/README.md create mode 100644 packages/wallet/wallet-contracts/lib/foundry-huff/assets/Group 1.png create mode 100644 packages/wallet/wallet-contracts/lib/foundry-huff/assets/banner.jpg create mode 100644 packages/wallet/wallet-contracts/lib/foundry-huff/assets/black_white_huff-removebg-preview.png create mode 100644 packages/wallet/wallet-contracts/lib/foundry-huff/assets/black_white_huff.png create mode 100644 packages/wallet/wallet-contracts/lib/foundry-huff/assets/foundry.png create mode 100644 packages/wallet/wallet-contracts/lib/foundry-huff/assets/foundry_huff_banner.jpg create mode 100644 packages/wallet/wallet-contracts/lib/foundry-huff/assets/foundry_huff_banner.png create mode 100644 packages/wallet/wallet-contracts/lib/foundry-huff/assets/huff.png create mode 100644 packages/wallet/wallet-contracts/lib/foundry-huff/assets/inverted_huff.png create mode 100644 packages/wallet/wallet-contracts/lib/foundry-huff/assets/x-removebg-preview.png create mode 100644 packages/wallet/wallet-contracts/lib/foundry-huff/assets/x.jpg create mode 100644 packages/wallet/wallet-contracts/lib/foundry-huff/foundry.toml create mode 100644 packages/wallet/wallet-contracts/lib/foundry-huff/lib/forge-std/.github/workflows/ci.yml create mode 100644 packages/wallet/wallet-contracts/lib/foundry-huff/lib/forge-std/.github/workflows/sync.yml create mode 100644 packages/wallet/wallet-contracts/lib/foundry-huff/lib/forge-std/.gitmodules create mode 100644 packages/wallet/wallet-contracts/lib/foundry-huff/lib/forge-std/LICENSE-APACHE create mode 100644 packages/wallet/wallet-contracts/lib/foundry-huff/lib/forge-std/LICENSE-MIT create mode 100644 packages/wallet/wallet-contracts/lib/foundry-huff/lib/forge-std/README.md create mode 100644 packages/wallet/wallet-contracts/lib/foundry-huff/lib/forge-std/foundry.toml create mode 100644 packages/wallet/wallet-contracts/lib/foundry-huff/lib/forge-std/lib/ds-test/.github/workflows/build.yml create mode 100644 packages/wallet/wallet-contracts/lib/foundry-huff/lib/forge-std/lib/ds-test/LICENSE create mode 100644 packages/wallet/wallet-contracts/lib/foundry-huff/lib/forge-std/lib/ds-test/Makefile create mode 100644 packages/wallet/wallet-contracts/lib/foundry-huff/lib/forge-std/lib/ds-test/default.nix create mode 100644 packages/wallet/wallet-contracts/lib/foundry-huff/lib/forge-std/lib/ds-test/demo/demo.sol create mode 100644 packages/wallet/wallet-contracts/lib/foundry-huff/lib/forge-std/lib/ds-test/package.json create mode 100644 packages/wallet/wallet-contracts/lib/foundry-huff/lib/forge-std/lib/ds-test/src/test.sol create mode 100644 packages/wallet/wallet-contracts/lib/foundry-huff/lib/forge-std/lib/ds-test/src/test.t.sol create mode 100644 packages/wallet/wallet-contracts/lib/foundry-huff/lib/forge-std/package.json create mode 100644 packages/wallet/wallet-contracts/lib/foundry-huff/lib/forge-std/src/Base.sol create mode 100644 packages/wallet/wallet-contracts/lib/foundry-huff/lib/forge-std/src/Script.sol create mode 100644 packages/wallet/wallet-contracts/lib/foundry-huff/lib/forge-std/src/StdAssertions.sol create mode 100644 packages/wallet/wallet-contracts/lib/foundry-huff/lib/forge-std/src/StdChains.sol create mode 100644 packages/wallet/wallet-contracts/lib/foundry-huff/lib/forge-std/src/StdCheats.sol create mode 100644 packages/wallet/wallet-contracts/lib/foundry-huff/lib/forge-std/src/StdError.sol create mode 100644 packages/wallet/wallet-contracts/lib/foundry-huff/lib/forge-std/src/StdInvariant.sol create mode 100644 packages/wallet/wallet-contracts/lib/foundry-huff/lib/forge-std/src/StdJson.sol create mode 100644 packages/wallet/wallet-contracts/lib/foundry-huff/lib/forge-std/src/StdMath.sol create mode 100644 packages/wallet/wallet-contracts/lib/foundry-huff/lib/forge-std/src/StdStorage.sol create mode 100644 packages/wallet/wallet-contracts/lib/foundry-huff/lib/forge-std/src/StdStyle.sol create mode 100644 packages/wallet/wallet-contracts/lib/foundry-huff/lib/forge-std/src/StdUtils.sol create mode 100644 packages/wallet/wallet-contracts/lib/foundry-huff/lib/forge-std/src/Test.sol create mode 100644 packages/wallet/wallet-contracts/lib/foundry-huff/lib/forge-std/src/Vm.sol create mode 100644 packages/wallet/wallet-contracts/lib/foundry-huff/lib/forge-std/src/console.sol create mode 100644 packages/wallet/wallet-contracts/lib/foundry-huff/lib/forge-std/src/console2.sol create mode 100644 packages/wallet/wallet-contracts/lib/foundry-huff/lib/forge-std/src/interfaces/IERC1155.sol create mode 100644 packages/wallet/wallet-contracts/lib/foundry-huff/lib/forge-std/src/interfaces/IERC165.sol create mode 100644 packages/wallet/wallet-contracts/lib/foundry-huff/lib/forge-std/src/interfaces/IERC20.sol create mode 100644 packages/wallet/wallet-contracts/lib/foundry-huff/lib/forge-std/src/interfaces/IERC4626.sol create mode 100644 packages/wallet/wallet-contracts/lib/foundry-huff/lib/forge-std/src/interfaces/IERC721.sol create mode 100644 packages/wallet/wallet-contracts/lib/foundry-huff/lib/forge-std/src/interfaces/IMulticall3.sol create mode 100644 packages/wallet/wallet-contracts/lib/foundry-huff/lib/forge-std/src/safeconsole.sol create mode 100644 packages/wallet/wallet-contracts/lib/foundry-huff/lib/forge-std/test/StdAssertions.t.sol create mode 100644 packages/wallet/wallet-contracts/lib/foundry-huff/lib/forge-std/test/StdChains.t.sol create mode 100644 packages/wallet/wallet-contracts/lib/foundry-huff/lib/forge-std/test/StdCheats.t.sol create mode 100644 packages/wallet/wallet-contracts/lib/foundry-huff/lib/forge-std/test/StdError.t.sol create mode 100644 packages/wallet/wallet-contracts/lib/foundry-huff/lib/forge-std/test/StdMath.t.sol create mode 100644 packages/wallet/wallet-contracts/lib/foundry-huff/lib/forge-std/test/StdStorage.t.sol create mode 100644 packages/wallet/wallet-contracts/lib/foundry-huff/lib/forge-std/test/StdStyle.t.sol create mode 100644 packages/wallet/wallet-contracts/lib/foundry-huff/lib/forge-std/test/StdUtils.t.sol create mode 100644 packages/wallet/wallet-contracts/lib/foundry-huff/lib/forge-std/test/compilation/CompilationScript.sol create mode 100644 packages/wallet/wallet-contracts/lib/foundry-huff/lib/forge-std/test/compilation/CompilationScriptBase.sol create mode 100644 packages/wallet/wallet-contracts/lib/foundry-huff/lib/forge-std/test/compilation/CompilationTest.sol create mode 100644 packages/wallet/wallet-contracts/lib/foundry-huff/lib/forge-std/test/compilation/CompilationTestBase.sol create mode 100644 packages/wallet/wallet-contracts/lib/foundry-huff/lib/forge-std/test/fixtures/broadcast.log.json create mode 100644 packages/wallet/wallet-contracts/lib/foundry-huff/lib/foundry-huff/scripts/binary_check.sh create mode 100644 packages/wallet/wallet-contracts/lib/foundry-huff/lib/foundry-huff/scripts/file_writer.sh create mode 100644 packages/wallet/wallet-contracts/lib/foundry-huff/lib/foundry-huff/scripts/rand_bytes.sh create mode 100644 packages/wallet/wallet-contracts/lib/foundry-huff/lib/foundry-huff/scripts/read_and_append.sh create mode 100644 packages/wallet/wallet-contracts/lib/foundry-huff/lib/solidity-stringutils/.gitattributes create mode 100644 packages/wallet/wallet-contracts/lib/foundry-huff/lib/solidity-stringutils/.github/workflows/ci.yml create mode 100644 packages/wallet/wallet-contracts/lib/foundry-huff/lib/solidity-stringutils/.gitmodules create mode 100644 packages/wallet/wallet-contracts/lib/foundry-huff/lib/solidity-stringutils/LICENSE create mode 100644 packages/wallet/wallet-contracts/lib/foundry-huff/lib/solidity-stringutils/Makefile create mode 100644 packages/wallet/wallet-contracts/lib/foundry-huff/lib/solidity-stringutils/README create mode 100644 packages/wallet/wallet-contracts/lib/foundry-huff/lib/solidity-stringutils/README.md create mode 100644 packages/wallet/wallet-contracts/lib/foundry-huff/lib/solidity-stringutils/dappfile create mode 100644 packages/wallet/wallet-contracts/lib/foundry-huff/lib/solidity-stringutils/lib/ds-test/LICENSE create mode 100644 packages/wallet/wallet-contracts/lib/foundry-huff/lib/solidity-stringutils/lib/ds-test/Makefile create mode 100644 packages/wallet/wallet-contracts/lib/foundry-huff/lib/solidity-stringutils/lib/ds-test/default.nix create mode 100644 packages/wallet/wallet-contracts/lib/foundry-huff/lib/solidity-stringutils/lib/ds-test/demo/demo.sol create mode 100644 packages/wallet/wallet-contracts/lib/foundry-huff/lib/solidity-stringutils/lib/ds-test/src/test.sol create mode 100644 packages/wallet/wallet-contracts/lib/foundry-huff/lib/solidity-stringutils/src/strings.sol create mode 100644 packages/wallet/wallet-contracts/lib/foundry-huff/lib/solidity-stringutils/src/strings.t.sol create mode 100644 packages/wallet/wallet-contracts/lib/foundry-huff/remappings.txt create mode 100644 packages/wallet/wallet-contracts/lib/foundry-huff/scripts/binary_check.sh create mode 100644 packages/wallet/wallet-contracts/lib/foundry-huff/scripts/file_writer.sh create mode 100644 packages/wallet/wallet-contracts/lib/foundry-huff/scripts/rand_bytes.sh create mode 100644 packages/wallet/wallet-contracts/lib/foundry-huff/scripts/read_and_append.sh create mode 100644 packages/wallet/wallet-contracts/lib/foundry-huff/src/HuffConfig.sol create mode 100644 packages/wallet/wallet-contracts/lib/foundry-huff/src/HuffDeployer.sol create mode 100644 packages/wallet/wallet-contracts/lib/foundry-huff/src/depreciated/StatefulDeployer.sol create mode 100644 packages/wallet/wallet-contracts/lib/foundry-huff/src/depreciated/StatefulDeployer.t.sol create mode 100644 packages/wallet/wallet-contracts/lib/foundry-huff/src/test/HuffConfig.t.sol create mode 100644 packages/wallet/wallet-contracts/lib/foundry-huff/src/test/HuffDeployer.t.sol create mode 100644 packages/wallet/wallet-contracts/lib/foundry-huff/src/test/Logging.t.sol create mode 100644 packages/wallet/wallet-contracts/lib/foundry-huff/src/test/contracts/ConstOverride.huff create mode 100644 packages/wallet/wallet-contracts/lib/foundry-huff/src/test/contracts/Constructor.huff create mode 100644 packages/wallet/wallet-contracts/lib/foundry-huff/src/test/contracts/ConstructorNeedsValue.huff create mode 100644 packages/wallet/wallet-contracts/lib/foundry-huff/src/test/contracts/EVMVersionCheck.huff create mode 100644 packages/wallet/wallet-contracts/lib/foundry-huff/src/test/contracts/LotsOfLogging.huff create mode 100644 packages/wallet/wallet-contracts/lib/foundry-huff/src/test/contracts/NoConstructor.huff create mode 100644 packages/wallet/wallet-contracts/lib/foundry-huff/src/test/contracts/Number.huff create mode 100644 packages/wallet/wallet-contracts/lib/foundry-huff/src/test/contracts/RememberCreator.huff create mode 100644 packages/wallet/wallet-contracts/lib/foundry-huff/src/test/interfaces/IConstructor.sol create mode 100644 packages/wallet/wallet-contracts/lib/foundry-huff/src/test/interfaces/INumber.sol create mode 100644 packages/wallet/wallet-contracts/lib/foundry-huff/src/test/interfaces/IRememberCreator.sol create mode 100644 packages/wallet/wallet-contracts/networks/arbitrum.json create mode 100644 packages/wallet/wallet-contracts/networks/arbitrumGoerli.json create mode 100644 packages/wallet/wallet-contracts/networks/arbitrumNova.json create mode 100644 packages/wallet/wallet-contracts/networks/avalanche.json create mode 100644 packages/wallet/wallet-contracts/networks/avalancheFuji.json create mode 100644 packages/wallet/wallet-contracts/networks/bnb.json create mode 100644 packages/wallet/wallet-contracts/networks/bnbTestnet.json create mode 100644 packages/wallet/wallet-contracts/networks/gnosis.json create mode 100644 packages/wallet/wallet-contracts/networks/goerli.json create mode 100644 packages/wallet/wallet-contracts/networks/hardhat.json create mode 100644 packages/wallet/wallet-contracts/networks/mainnet.json create mode 100644 packages/wallet/wallet-contracts/networks/mumbai.json create mode 100644 packages/wallet/wallet-contracts/networks/optimism.json create mode 100644 packages/wallet/wallet-contracts/networks/polygon.json create mode 100644 packages/wallet/wallet-contracts/networks/polygonZkevm.json create mode 100644 packages/wallet/wallet-contracts/package-lock.json create mode 100644 packages/wallet/wallet-contracts/package.json create mode 100644 packages/wallet/wallet-contracts/pnpm-lock.yaml create mode 100644 packages/wallet/wallet-contracts/remappings.txt create mode 100644 packages/wallet/wallet-contracts/run_huff_tests.sh create mode 100644 packages/wallet/wallet-contracts/soldeer.lock create mode 100644 packages/wallet/wallet-contracts/src/Errors.huff create mode 100644 packages/wallet/wallet-contracts/src/L2Compressor.huff create mode 100644 packages/wallet/wallet-contracts/src/L2CompressorLib.huff create mode 100644 packages/wallet/wallet-contracts/src/__TEMP__csfnkjajkqagwbukjfojatjegwtjmxhdL2Compressor.huff create mode 100644 packages/wallet/wallet-contracts/src/__TEMP__cvwewezvvfcuoxtlisicumgcpzqhgavjL2Compressor.huff create mode 100644 packages/wallet/wallet-contracts/src/__TEMP__cvyihdgegfauooldcwyvlordhurwepivL2Compressor.huff create mode 100644 packages/wallet/wallet-contracts/src/__TEMP__dpdvzwushkgzisywrbnkhcrodypkvbvyL2Compressor.huff create mode 100644 packages/wallet/wallet-contracts/src/__TEMP__ecomtgzdrtxibkzevmerruajxffksduvL2Compressor.huff create mode 100644 packages/wallet/wallet-contracts/src/__TEMP__iacuotklnugcaogzpvcdfhvolsvzerleL2Compressor.huff create mode 100644 packages/wallet/wallet-contracts/src/__TEMP__jcmwhtnovsnvnyyhadlushmcopgxtlcwL2Compressor.huff create mode 100644 packages/wallet/wallet-contracts/src/__TEMP__jdfvnyqsqtnysjlyfovitokyykvxttnoL2Compressor.huff create mode 100644 packages/wallet/wallet-contracts/src/__TEMP__jyyzvebufexucahwkkbkfdcmuiabvbfeL2Compressor.huff create mode 100644 packages/wallet/wallet-contracts/src/__TEMP__kbisarygvfqaqtuxwpgejdnyqkualpwlL2Compressor.huff create mode 100644 packages/wallet/wallet-contracts/src/__TEMP__lszmdtforkxonmlujouewhlrvjjrmurcL2Compressor.huff create mode 100644 packages/wallet/wallet-contracts/src/__TEMP__mgltnswskwojupcsygtzovabokiotusaL2Compressor.huff create mode 100644 packages/wallet/wallet-contracts/src/__TEMP__mzwfsngwzygdglttftvfnbgkuxhmtqwiL2Compressor.huff create mode 100644 packages/wallet/wallet-contracts/src/__TEMP__nxqmasuaqrahclmuoszdisbtgmuppjvfL2Compressor.huff create mode 100644 packages/wallet/wallet-contracts/src/__TEMP__pgmagdckbktfjhzdpajytwhcpkhlmscqL2Compressor.huff create mode 100644 packages/wallet/wallet-contracts/src/__TEMP__pwbfbdaeweytjiloryhjilsqguaprwtwL2Compressor.huff create mode 100644 packages/wallet/wallet-contracts/src/__TEMP__pxqvpgsonlpbmziexnicojtlgsgfouyrL2Compressor.huff create mode 100644 packages/wallet/wallet-contracts/src/__TEMP__qcagqkszwlsndhjyagmukhxiugwadpxxL2Compressor.huff create mode 100644 packages/wallet/wallet-contracts/src/__TEMP__qymdioekngjvjjjqfpzmxlycnvbslwevL2Compressor.huff create mode 100644 packages/wallet/wallet-contracts/src/__TEMP__rpzdmcdnijxlttsivcfgzleurbgpchhzL2Compressor.huff create mode 100644 packages/wallet/wallet-contracts/src/__TEMP__rulclzzfmyszewnycpzlqmcopsqccarqL2Compressor.huff create mode 100644 packages/wallet/wallet-contracts/src/__TEMP__uexsnlcvbjyubdfmmdxzehdfcdiwufcrL2Compressor.huff create mode 100644 packages/wallet/wallet-contracts/src/__TEMP__ughbfnqmhbdbiuueqxutuvcxicgrmnxwL2Compressor.huff create mode 100644 packages/wallet/wallet-contracts/src/__TEMP__uzsvtiqnxxrhkhfelgdrwmnbwwirribaL2Compressor.huff create mode 100644 packages/wallet/wallet-contracts/src/__TEMP__vffsqkjyicdnumnesfhcjlgtqguwdpnpL2Compressor.huff create mode 100644 packages/wallet/wallet-contracts/src/__TEMP__vtbpzpccsyytsvygxsyhvyojjbqsghpbL2Compressor.huff create mode 100644 packages/wallet/wallet-contracts/src/__TEMP__xhuychsyvcmrjzhibkdksklxflvtfefdL2Compressor.huff create mode 100644 packages/wallet/wallet-contracts/src/__TEMP__ylxrpbrfcykqjxgggzptgdvokhmzcvamL2Compressor.huff create mode 100644 packages/wallet/wallet-contracts/src/__TEMP__zkzjzrglozoqyyfvpcdqeanjxglmtzbbL2Compressor.huff create mode 100644 packages/wallet/wallet-contracts/src/imps/L2CompressorImps.huff create mode 100644 packages/wallet/wallet-contracts/src/imps/L2CompressorReadExecute.huff create mode 100644 packages/wallet/wallet-contracts/src/imps/L2CompressorReadFlag.huff create mode 100644 packages/wallet/wallet-contracts/src/imps/L2CompressorReadNonce.huff create mode 100644 packages/wallet/wallet-contracts/src/imps/L2CompressorReadTx.huff create mode 100644 packages/wallet/wallet-contracts/src/imps/L2CompressorReadTxs.huff create mode 100644 packages/wallet/wallet-contracts/src/imps/__TEMP__aayxscdgqfgqckqcfvplniuqleqmglgpL2CompressorReadNonce.huff create mode 100644 packages/wallet/wallet-contracts/src/imps/__TEMP__agjsoduxivwxbunbrskpnttujfxlnsuqL2CompressorReadFlag.huff create mode 100644 packages/wallet/wallet-contracts/src/imps/__TEMP__aozfhsjnhfgdhkvygupcezykxnllxhooL2CompressorReadTx.huff create mode 100644 packages/wallet/wallet-contracts/src/imps/__TEMP__auoqqxuvhsugblxkhmuynutuutdpetfmL2CompressorReadNonce.huff create mode 100644 packages/wallet/wallet-contracts/src/imps/__TEMP__bgiysfzlfrqnqopegdijkxkzjebeugweL2CompressorReadExecute.huff create mode 100644 packages/wallet/wallet-contracts/src/imps/__TEMP__bhcstacsnwaeevimfyeuyukrpkefkpjvL2CompressorReadTx.huff create mode 100644 packages/wallet/wallet-contracts/src/imps/__TEMP__bjodacjzehrzeexubslwqheqqdtpojdxL2CompressorReadTxs.huff create mode 100644 packages/wallet/wallet-contracts/src/imps/__TEMP__bqzqrnjvdcsevkfpbluzvxgnvfnbjbvdL2CompressorReadTxs.huff create mode 100644 packages/wallet/wallet-contracts/src/imps/__TEMP__bxxjqefyxrrctwjijuvxauktfiveuhazL2CompressorReadNonce.huff create mode 100644 packages/wallet/wallet-contracts/src/imps/__TEMP__cczbajsfeehqceablvdedlohtwcpgruiL2CompressorReadTx.huff create mode 100644 packages/wallet/wallet-contracts/src/imps/__TEMP__ceqwybpkmvqejmujxdddmmbuqrzcvpqlL2CompressorReadTxs.huff create mode 100644 packages/wallet/wallet-contracts/src/imps/__TEMP__cinzltxsvuofyvnmuiiddtfwsyytzwszL2CompressorReadFlag.huff create mode 100644 packages/wallet/wallet-contracts/src/imps/__TEMP__ckntqzzuqphqsecwtcwuiczrfadymzpwL2CompressorReadTx.huff create mode 100644 packages/wallet/wallet-contracts/src/imps/__TEMP__ctxqvslrdaagplfabzhyfjejoyhqoxvnL2CompressorReadTx.huff create mode 100644 packages/wallet/wallet-contracts/src/imps/__TEMP__cxyftrlslztbljuqlicrbibyyssybguhL2CompressorReadNonce.huff create mode 100644 packages/wallet/wallet-contracts/src/imps/__TEMP__cyxkjqcsonpojbyksbsvglcrgoqbepkaL2CompressorReadExecute.huff create mode 100644 packages/wallet/wallet-contracts/src/imps/__TEMP__deeivxbssjzviqkksdozrardbmkofvggL2CompressorReadFlag.huff create mode 100644 packages/wallet/wallet-contracts/src/imps/__TEMP__dexeqmbbqijqudvjnczxedpzkrqkrxgpL2CompressorReadExecute.huff create mode 100644 packages/wallet/wallet-contracts/src/imps/__TEMP__ebpduriemctxazssijauhsotgyqtayygL2CompressorReadTxs.huff create mode 100644 packages/wallet/wallet-contracts/src/imps/__TEMP__edfwesooemxojadwrkmombuemzhicuirL2CompressorReadTxs.huff create mode 100644 packages/wallet/wallet-contracts/src/imps/__TEMP__eicqyirjstlxuotvptvgszvdeemgpomnL2CompressorReadTxs.huff create mode 100644 packages/wallet/wallet-contracts/src/imps/__TEMP__eiovqvzojbuhtglrinqvkqirnywzkmmmL2CompressorReadTx.huff create mode 100644 packages/wallet/wallet-contracts/src/imps/__TEMP__elmwrfrphdzesjosulrygitvkhredhzhL2CompressorReadFlag.huff create mode 100644 packages/wallet/wallet-contracts/src/imps/__TEMP__eqatcxksiizfyaalvdegpzaqhuqqhiasL2CompressorReadTx.huff create mode 100644 packages/wallet/wallet-contracts/src/imps/__TEMP__etsleznlprfdbomdvycqormkvpykanxnL2CompressorReadTxs.huff create mode 100644 packages/wallet/wallet-contracts/src/imps/__TEMP__ezolvnoridtqgdaoucihkxihmonvdzfxL2CompressorReadNonce.huff create mode 100644 packages/wallet/wallet-contracts/src/imps/__TEMP__fjxkkzopmkrdujlfcvecckcbuhhhpvpfL2CompressorReadFlag.huff create mode 100644 packages/wallet/wallet-contracts/src/imps/__TEMP__fnqywxkjihwbqdurhcftzbzzrxvcmizbL2CompressorReadExecute.huff create mode 100644 packages/wallet/wallet-contracts/src/imps/__TEMP__fophszhswirxqqcvcwxtmeqbuwldxifmL2CompressorReadNonce.huff create mode 100644 packages/wallet/wallet-contracts/src/imps/__TEMP__fvrcmlbliwfwkjwbyxrediuokmghmftbL2CompressorReadTx.huff create mode 100644 packages/wallet/wallet-contracts/src/imps/__TEMP__fzlawzzpwhflvpxtrdpemqiejqiknsfiL2CompressorReadNonce.huff create mode 100644 packages/wallet/wallet-contracts/src/imps/__TEMP__gllqgrsektwpyxkfoughzygdwrhxuzibL2CompressorReadFlag.huff create mode 100644 packages/wallet/wallet-contracts/src/imps/__TEMP__gmuxapiaoacldjbqqarixmvtxkffgwchL2CompressorReadExecute.huff create mode 100644 packages/wallet/wallet-contracts/src/imps/__TEMP__gnbrxkaxjdmimbyepztqmujkoilcaudgL2CompressorReadExecute.huff create mode 100644 packages/wallet/wallet-contracts/src/imps/__TEMP__grtgxrlusabnzjycyuqniujobcpgjuysL2CompressorReadTxs.huff create mode 100644 packages/wallet/wallet-contracts/src/imps/__TEMP__guymonsuywmugusjixyvzwfzordmogvuL2CompressorReadNonce.huff create mode 100644 packages/wallet/wallet-contracts/src/imps/__TEMP__gvmiqpcdvchroaxhcnyygzhjrvozrogmL2CompressorReadExecute.huff create mode 100644 packages/wallet/wallet-contracts/src/imps/__TEMP__hahsuwlfvumxsoepdhwqsahoduwcqrrpL2CompressorReadTxs.huff create mode 100644 packages/wallet/wallet-contracts/src/imps/__TEMP__hbzqhssjozyiqufyamizmyrwtgelqlacL2CompressorReadExecute.huff create mode 100644 packages/wallet/wallet-contracts/src/imps/__TEMP__hfunbeczbrqifdmdhdecpajexqefympmL2CompressorReadFlag.huff create mode 100644 packages/wallet/wallet-contracts/src/imps/__TEMP__htawaymiowrkxyrnxkesysithbtrbvqqL2CompressorReadNonce.huff create mode 100644 packages/wallet/wallet-contracts/src/imps/__TEMP__hwddxmqkngntwieovwlvozjzwlctwrzrL2CompressorReadNonce.huff create mode 100644 packages/wallet/wallet-contracts/src/imps/__TEMP__iepjlcxcjkjplwmrexbaruoucdulzvqvL2CompressorReadFlag.huff create mode 100644 packages/wallet/wallet-contracts/src/imps/__TEMP__igcaczanzcfoaizsmahiisgmgdjzfjxqL2CompressorReadTxs.huff create mode 100644 packages/wallet/wallet-contracts/src/imps/__TEMP__irlchgckchrpalaqwygxkipfvshmgystL2CompressorReadTxs.huff create mode 100644 packages/wallet/wallet-contracts/src/imps/__TEMP__ixvgjbblpufenoaperstvmceseoukqtcL2CompressorReadFlag.huff create mode 100644 packages/wallet/wallet-contracts/src/imps/__TEMP__jehdemzdnzfibjlvuclsezveuuexubagL2CompressorReadTxs.huff create mode 100644 packages/wallet/wallet-contracts/src/imps/__TEMP__jgpbsiwsniszmajdqepfceqpqhdfzbiiL2CompressorReadExecute.huff create mode 100644 packages/wallet/wallet-contracts/src/imps/__TEMP__jowmzjwgdpwndoapfucdlmsxiuwbhxrsL2CompressorReadFlag.huff create mode 100644 packages/wallet/wallet-contracts/src/imps/__TEMP__jujqtnlfowbvuxcpetgqmymkladcanwtL2CompressorReadTx.huff create mode 100644 packages/wallet/wallet-contracts/src/imps/__TEMP__jvyndfqmdiikuahllmivwlrgrfhmdzslL2CompressorReadFlag.huff create mode 100644 packages/wallet/wallet-contracts/src/imps/__TEMP__kqlasykhhfirrrmebqsqsnoleofcgyciL2CompressorReadTx.huff create mode 100644 packages/wallet/wallet-contracts/src/imps/__TEMP__krffnjyglejvywvaqrlwcoejtxsysubcL2CompressorReadFlag.huff create mode 100644 packages/wallet/wallet-contracts/src/imps/__TEMP__lcamxsrkjvabmusmojsaspukxeydggrhL2CompressorReadExecute.huff create mode 100644 packages/wallet/wallet-contracts/src/imps/__TEMP__lhhzpskainxqfqaqlpehxidlrhdvkcoyL2CompressorReadFlag.huff create mode 100644 packages/wallet/wallet-contracts/src/imps/__TEMP__lqfhpuhoyykhenkubqyenjlfkzsbjkxcL2CompressorReadNonce.huff create mode 100644 packages/wallet/wallet-contracts/src/imps/__TEMP__lvxixehkgptearwmufefnibyzayqaaciL2CompressorReadTx.huff create mode 100644 packages/wallet/wallet-contracts/src/imps/__TEMP__lyxapewhygradusuogqwefdorgsntvcxL2CompressorReadTxs.huff create mode 100644 packages/wallet/wallet-contracts/src/imps/__TEMP__mfzlovayqwfmitftdbihfqfuruuvbxqbL2CompressorReadExecute.huff create mode 100644 packages/wallet/wallet-contracts/src/imps/__TEMP__mimqucgooefgrgmedlqkqqhszmvuuxioL2CompressorReadTxs.huff create mode 100644 packages/wallet/wallet-contracts/src/imps/__TEMP__mlmvtiltzqbjdwbouzrwkvkhpzncpjzsL2CompressorReadTxs.huff create mode 100644 packages/wallet/wallet-contracts/src/imps/__TEMP__mscgrvpcuajxspktkuiktwofhzwbszraL2CompressorReadNonce.huff create mode 100644 packages/wallet/wallet-contracts/src/imps/__TEMP__mscqnapvfrrvforntvdsgkeofzbhbhdsL2CompressorReadFlag.huff create mode 100644 packages/wallet/wallet-contracts/src/imps/__TEMP__nikafqmlyyfgnksobnextlfkyykzrdomL2CompressorReadFlag.huff create mode 100644 packages/wallet/wallet-contracts/src/imps/__TEMP__nmkhnrsondojimozdduewzkbcwlvsakcL2CompressorReadFlag.huff create mode 100644 packages/wallet/wallet-contracts/src/imps/__TEMP__nwvyiqgthdyhbeqefkhccrhufdhjjazeL2CompressorReadNonce.huff create mode 100644 packages/wallet/wallet-contracts/src/imps/__TEMP__obfmnrpwkqhjnhtlarvljeqysguhoizaL2CompressorReadTx.huff create mode 100644 packages/wallet/wallet-contracts/src/imps/__TEMP__osezdxhuqmvwkwrmogebamkqmhdvljmlL2CompressorReadTx.huff create mode 100644 packages/wallet/wallet-contracts/src/imps/__TEMP__pabiechkuxsxbofnkwdnlbnftvkuearfL2CompressorReadExecute.huff create mode 100644 packages/wallet/wallet-contracts/src/imps/__TEMP__paowmqtaesjuestckycmjquytqlfsdxoL2CompressorReadTx.huff create mode 100644 packages/wallet/wallet-contracts/src/imps/__TEMP__pbsqieaiicgyhrvarrpmypzdufaanmpuL2CompressorReadNonce.huff create mode 100644 packages/wallet/wallet-contracts/src/imps/__TEMP__pdhdqmtavohyssvasdtggpxqllpajsfgL2CompressorReadFlag.huff create mode 100644 packages/wallet/wallet-contracts/src/imps/__TEMP__petemgomrtnkvriaaltgrrlpmnzupwinL2CompressorReadExecute.huff create mode 100644 packages/wallet/wallet-contracts/src/imps/__TEMP__prsagizbgnvlqmbynuotwqkanwdlaqwpL2CompressorReadTx.huff create mode 100644 packages/wallet/wallet-contracts/src/imps/__TEMP__pwmrquntendpgjgzyejxobzrgvpizgfdL2CompressorReadTxs.huff create mode 100644 packages/wallet/wallet-contracts/src/imps/__TEMP__qcnbdgafrzidybihlkysfiliofczzxkhL2CompressorReadTxs.huff create mode 100644 packages/wallet/wallet-contracts/src/imps/__TEMP__qmgpovlxptxlyeikmnrgvhavunciniubL2CompressorReadTx.huff create mode 100644 packages/wallet/wallet-contracts/src/imps/__TEMP__qotscdrriksxilvopyxfsbdteqegnyogL2CompressorReadTx.huff create mode 100644 packages/wallet/wallet-contracts/src/imps/__TEMP__qpcuafrrwylbrmzpjfotpjfuqxtnqrznL2CompressorReadTx.huff create mode 100644 packages/wallet/wallet-contracts/src/imps/__TEMP__qrusinhmosfcvmayqquwflixlquuhfxhL2CompressorReadTx.huff create mode 100644 packages/wallet/wallet-contracts/src/imps/__TEMP__raqvmbdtosqccjiitanbofqxpeepnlpnL2CompressorReadFlag.huff create mode 100644 packages/wallet/wallet-contracts/src/imps/__TEMP__ruqfgeoaamevndekencowviukvlcrylcL2CompressorReadTx.huff create mode 100644 packages/wallet/wallet-contracts/src/imps/__TEMP__sccswirfbmatrvwbvymwfzttbygcbfmqL2CompressorReadTxs.huff create mode 100644 packages/wallet/wallet-contracts/src/imps/__TEMP__sgfhxhvokcpqraldrihrcqjmlolnoulkL2CompressorReadExecute.huff create mode 100644 packages/wallet/wallet-contracts/src/imps/__TEMP__smnsryuyuhbbunwequckjtrcwgaqmtqrL2CompressorReadExecute.huff create mode 100644 packages/wallet/wallet-contracts/src/imps/__TEMP__stxwzpcueqdwmcsxvxwzkubprcmgpexkL2CompressorReadExecute.huff create mode 100644 packages/wallet/wallet-contracts/src/imps/__TEMP__syiwghttzfntbuucvfvlctpjeldqbrshL2CompressorReadNonce.huff create mode 100644 packages/wallet/wallet-contracts/src/imps/__TEMP__tadxtxolhcweyyokjpleorchotchzsecL2CompressorReadNonce.huff create mode 100644 packages/wallet/wallet-contracts/src/imps/__TEMP__tlpzvbklzufubgnwcvynodibgfqnidibL2CompressorReadFlag.huff create mode 100644 packages/wallet/wallet-contracts/src/imps/__TEMP__uobsemubvemlejzpjvdzyjcjrsbhplpsL2CompressorReadNonce.huff create mode 100644 packages/wallet/wallet-contracts/src/imps/__TEMP__uudbvubkefushlwgxsfgldujuphcmuueL2CompressorReadFlag.huff create mode 100644 packages/wallet/wallet-contracts/src/imps/__TEMP__uyprsxxzmvxmqqzffpwypehvvksjzbvnL2CompressorReadTxs.huff create mode 100644 packages/wallet/wallet-contracts/src/imps/__TEMP__vmmtlehczdflhfwnklqlujjtzpxrejpmL2CompressorReadNonce.huff create mode 100644 packages/wallet/wallet-contracts/src/imps/__TEMP__voqybenghboelsmsisgwnqqymvpjvskcL2CompressorReadFlag.huff create mode 100644 packages/wallet/wallet-contracts/src/imps/__TEMP__vtdvfmunyolkgcpjpzhtgjgwawtaakhwL2CompressorReadExecute.huff create mode 100644 packages/wallet/wallet-contracts/src/imps/__TEMP__vtynudukibsyoxexvoiaurnusvgnrhusL2CompressorReadNonce.huff create mode 100644 packages/wallet/wallet-contracts/src/imps/__TEMP__vvictwvevvjztwupwcjsnyherfswgsgcL2CompressorReadTx.huff create mode 100644 packages/wallet/wallet-contracts/src/imps/__TEMP__vzqupagxqpkbexuaqyoulenyhrwfuvsiL2CompressorReadTxs.huff create mode 100644 packages/wallet/wallet-contracts/src/imps/__TEMP__wcgjgrxjyjenenrnolprlkfulinnjttkL2CompressorReadExecute.huff create mode 100644 packages/wallet/wallet-contracts/src/imps/__TEMP__weeyfqxkqtokrkcwbrxerdftkvyxqwwiL2CompressorReadExecute.huff create mode 100644 packages/wallet/wallet-contracts/src/imps/__TEMP__xbuxrypubsjveaucjyhkmwlwmhlgvymnL2CompressorReadExecute.huff create mode 100644 packages/wallet/wallet-contracts/src/imps/__TEMP__xeqwdqdlujruiiyywivxsxrlsluymfdiL2CompressorReadExecute.huff create mode 100644 packages/wallet/wallet-contracts/src/imps/__TEMP__xprohfjolmgvmuxskobwcqavoskmutltL2CompressorReadExecute.huff create mode 100644 packages/wallet/wallet-contracts/src/imps/__TEMP__yhfcljsbzcghwkonkegmtbremlhrxnejL2CompressorReadExecute.huff create mode 100644 packages/wallet/wallet-contracts/src/imps/__TEMP__yphredkigvzhxnjzbspndmkchcjaofllL2CompressorReadNonce.huff create mode 100644 packages/wallet/wallet-contracts/src/imps/__TEMP__zfeyxnkrahdyldfbtyakjkbvehkjdbmgL2CompressorReadTx.huff create mode 100644 packages/wallet/wallet-contracts/src/imps/__TEMP__zmblbdmtdrpbbopekynjthxzellyhsxeL2CompressorReadTxs.huff create mode 100644 packages/wallet/wallet-contracts/src/imps/__TEMP__zvcrygcudiscauggwhjnxbrgifehtxhfL2CompressorReadTx.huff create mode 100644 packages/wallet/wallet-contracts/test/ChainedSignatures.spec.ts create mode 100644 packages/wallet/wallet-contracts/test/ERC165.spec.ts create mode 100644 packages/wallet/wallet-contracts/test/Factory.spec.ts create mode 100644 packages/wallet/wallet-contracts/test/GasEstimation.spec.ts create mode 100644 packages/wallet/wallet-contracts/test/GuestModule.spec.ts create mode 100644 packages/wallet/wallet-contracts/test/LibBytes.spec.ts create mode 100644 packages/wallet/wallet-contracts/test/LibString.spec.ts create mode 100644 packages/wallet/wallet-contracts/test/MainModule.bench.ts create mode 100644 packages/wallet/wallet-contracts/test/MainModule.spec.ts create mode 100644 packages/wallet/wallet-contracts/test/MerkleSignatures.spec.ts create mode 100644 packages/wallet/wallet-contracts/test/MultiCallUtils.spec.ts create mode 100644 packages/wallet/wallet-contracts/test/utils/contracts.ts create mode 100644 packages/wallet/wallet-contracts/test/utils/imposter.ts create mode 100644 packages/wallet/wallet-contracts/test/utils/index.ts create mode 100644 packages/wallet/wallet-contracts/test/utils/sequence.ts create mode 100644 packages/wallet/wallet-contracts/test/utils/wallet.ts create mode 100644 packages/wallet/wallet-contracts/tsconfig.json create mode 100644 packages/wallet/wallet-contracts/typings/chai-bignumber.d.ts create mode 100644 packages/wallet/wallet-contracts/typings/chai-bn.ts create mode 100644 packages/wallet/wallet-contracts/typings/truffle.d.ts create mode 100644 packages/wallet/wallet-contracts/utils/JsonBindings.sol create mode 100644 packages/wallet/wallet-contracts/utils/benchmarker.ts create mode 100644 packages/wallet/wallet-contracts/utils/config-loader.ts create mode 100644 packages/wallet/wallet-contracts/utils/deploy-contracts.ts create mode 100644 packages/wallet/wallet-contracts/utils/workers/bench-worker.ts create mode 100644 packages/wallet/wdk/.env.test delete mode 100644 packages/wallet/wdk/CHANGELOG.md delete mode 100644 packages/wallet/wdk/src/sequence/types/sessions.ts delete mode 100644 packages/wallet/wdk/test/signers-kindof.test.ts delete mode 100644 packages/wallet/wdk/test/test-ssr-safety.js create mode 100644 remappings.txt delete mode 100644 repo/eslint-config/CHANGELOG.md delete mode 100644 repo/typescript-config/CHANGELOG.md delete mode 100644 repo/ui/CHANGELOG.md create mode 100644 tsconfig.json create mode 100644 tsconfig.test.json diff --git a/.changeset/README.md b/.changeset/README.md index e5b6d8d6a6..4f3b76b096 100644 --- a/.changeset/README.md +++ b/.changeset/README.md @@ -5,4 +5,4 @@ with multi-package repos, or single-package repos to help you version and publis find the full documentation for it [in our repository](https://github.com/changesets/changesets) We have a quick list of common questions to get you started engaging with this project in -[our documentation](https://github.com/changesets/changesets/blob/main/docs/common-questions.md) +[our documentation](https://github.com/changesets/changesets/blob/master/docs/common-questions.md) diff --git a/.changeset/config.json b/.changeset/config.json index 4f8345f464..6b372552ca 100644 --- a/.changeset/config.json +++ b/.changeset/config.json @@ -5,7 +5,7 @@ "fixed": [], "linked": [], "access": "restricted", - "baseBranch": "master", + "baseBranch": "main", "updateInternalDependencies": "patch", - "ignore": ["@0xsequence/wallet-primitives-cli", "docs", "web"] + "ignore": [] } diff --git a/.codesandbox/.github/workflows/build.yml b/.codesandbox/.github/workflows/build.yml new file mode 100644 index 0000000000..86518b55b5 --- /dev/null +++ b/.codesandbox/.github/workflows/build.yml @@ -0,0 +1,32 @@ +name: build dapp + +on: + push: + branches: + - master + +jobs: + build: + runs-on: ubuntu-latest + name: Build and Push + steps: + - name: git-checkout + uses: actions/checkout@v3 + + - name: Setup PNPM + uses: pnpm/action-setup@v2 + with: + version: 8 + run_install: true + + - name: Build + run: pnpm dist + + - name: Push + uses: s0/git-publish-subdir-action@develop + env: + REPO: self + BRANCH: build + FOLDER: dist + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + MESSAGE: 'Build: ({sha}) {msg}' diff --git a/.codesandbox/.gitignore b/.codesandbox/.gitignore new file mode 100644 index 0000000000..e4db0232ce --- /dev/null +++ b/.codesandbox/.gitignore @@ -0,0 +1,19 @@ +.env + +#dependencies +node_modules/ + +# production +dist/ + +# misc +.DS_Store +.vscode +.idea/ +*.iml +npm-debug.log* +yarn-debug.log* +yarn-error.log* +lerna-debug.log* + +.env.local diff --git a/.codesandbox/.prettierrc b/.codesandbox/.prettierrc new file mode 100644 index 0000000000..421afa9791 --- /dev/null +++ b/.codesandbox/.prettierrc @@ -0,0 +1,9 @@ +{ + "tabWidth": 2, + "useTabs": false, + "semi": false, + "singleQuote": true, + "trailingComma": "none", + "arrowParens": "avoid", + "printWidth": 130 +} diff --git a/.codesandbox/README.md b/.codesandbox/README.md new file mode 100644 index 0000000000..3cbb4778c7 --- /dev/null +++ b/.codesandbox/README.md @@ -0,0 +1,49 @@ +Demo Dapp +========= + +Dapp example on how to use Sequence Wallet. Covers how to connect, sign messages and send transctions. + +Try this dapp at: [https://0xsequence.github.io/demo-dapp](https://0xsequence.github.io/demo-dapp) + +For complete documentation on Sequence, please see: [https://docs.sequence.build](https://docs.sequence.build) + +## Usage + +1. pnpm install +2. pnpm start +3. Open browser to http://localhost:4000 to access the demo dapp +4. Open browser inspector to see responses from the remote Sequence Wallet + +## Development + +See https://github.com/0xsequence/demo-dapp/blob/master/src/App.tsx for the source +usage for a variety of functions. Be sure to open your browser's dev inspector to see output. +Think of these functions as a "cookbook" for how you can perform these functions in your dapps. + +Also note, sequence.js is built on top of ethers.js, and is API-compatible. + +## Screenshots + +**Opening wallet from dapp:** + +![Open Sequence Wallet From Dapp](./screenshots/screen-open.png) + + +**Send transaction from dapp:** + +Sequence Wallet is an Ethereum wallet supporting Ethereum mainnet, Polygon and more. Sequence will work +with any blockchain which is EVM compatible and supports Ethereum's node JSON-RPC interface. + +Here you can see in this screenshot the call to "Send DAI" from demo-dapp +(https://github.com/0xsequence/demo-dapp/blob/master/src/routes/HomeRoute.tsx#L420). This function demonstrates +how you can transfer an ERC-20 token like DAI on any Ethereum network. + +Notice how you can pay gas fees for a transaction in either MATIC token or USDC for price of $0.01. + +![Transfer ERC-20 token on Polygon](./screenshots/screen-txn.png) + + + +## LICENSE + +Apache 2.0 or MIT (your choice) diff --git a/.codesandbox/index.html b/.codesandbox/index.html new file mode 100644 index 0000000000..7a355ef15c --- /dev/null +++ b/.codesandbox/index.html @@ -0,0 +1,35 @@ + + + + + + + + + + + + + Sequence | Demo Dapp + + + + +
+ + + diff --git a/.codesandbox/package.json b/.codesandbox/package.json new file mode 100644 index 0000000000..346fe13b6c --- /dev/null +++ b/.codesandbox/package.json @@ -0,0 +1,60 @@ +{ + "name": "demo-dapp", + "description": "Ethereum Demo Dapp built on Sequence stack", + "version": "0.1.0", + "private": true, + "homepage": "demo-dapp", + "scripts": { + "dev": "BROWSER=none pnpm start", + "start": "vite", + "build": "BUILD_PATH='./dist' tsc && vite build", + "typecheck": "tsc --noEmit", + "serve": "vite preview", + "dist": "pnpm build", + "link-sequence": "pnpm run clear:vite:cache && ../sequence.js/scripts/pnpm-link.sh link", + "unlink-sequence": "pnpm run clear:vite:cache && ../sequence.js/scripts/pnpm-link.sh unlink", + "clear:vite:cache": "rm -rf node_modules/.vite/" + }, + "dependencies": { + "0xsequence": "2.2.3", + "@0xsequence/abi": "2.2.13", + "@0xsequence/design-system": "^1.8.1", + "@0xsequence/ethauth": "^1.0.0", + "@0xsequence/network": "2.2.13", + "@0xsequence/provider": "2.2.13", + "@0xsequence/utils": "2.2.13", + "@types/node": "^20.11.30", + "@types/react": "^18.3.7", + "@types/react-dom": "^18.3.0", + "@vanilla-extract/css": "^1.14.1", + "ethers": "^6.13.4", + "framer-motion": "^9.0.1", + "react": "^18.3.1", + "react-dom": "^18.3.1", + "typescript": "^4.5.5" + }, + "devDependencies": { + "@vanilla-extract/vite-plugin": "^4.0.6", + "@vitejs/plugin-react": "^4.2.1", + "vite": "^6.4.2", + "vite-plugin-svgr": "^4.2.0", + "vite-tsconfig-paths": "^4.3.2" + }, + "eslintConfig": { + "extends": [ + "react-app" + ] + }, + "browserslist": { + "production": [ + ">0.2%", + "not dead", + "not op_mini all" + ], + "development": [ + "last 1 chrome version", + "last 1 firefox version", + "last 1 safari version" + ] + } +} diff --git a/.codesandbox/pnpm-lock.yaml b/.codesandbox/pnpm-lock.yaml new file mode 100644 index 0000000000..14abf5d34d --- /dev/null +++ b/.codesandbox/pnpm-lock.yaml @@ -0,0 +1,4111 @@ +lockfileVersion: '9.0' + +settings: + autoInstallPeers: true + excludeLinksFromLockfile: false + +importers: + + .: + dependencies: + 0xsequence: + specifier: 2.2.3 + version: 2.2.3(ethers@6.13.4) + '@0xsequence/abi': + specifier: 2.2.13 + version: 2.2.13 + '@0xsequence/design-system': + specifier: ^1.8.1 + version: 1.8.1(@types/react-dom@18.3.0)(@types/react@18.3.7)(framer-motion@9.0.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@0xsequence/ethauth': + specifier: ^1.0.0 + version: 1.0.0(ethers@6.13.4) + '@0xsequence/network': + specifier: 2.2.13 + version: 2.2.13(ethers@6.13.4) + '@0xsequence/provider': + specifier: 2.2.13 + version: 2.2.13(ethers@6.13.4) + '@0xsequence/utils': + specifier: 2.2.13 + version: 2.2.13(ethers@6.13.4) + '@types/node': + specifier: ^20.11.30 + version: 20.11.30 + '@types/react': + specifier: ^18.3.7 + version: 18.3.7 + '@types/react-dom': + specifier: ^18.3.0 + version: 18.3.0 + '@vanilla-extract/css': + specifier: ^1.14.1 + version: 1.14.1 + ethers: + specifier: ^6.13.4 + version: 6.13.4 + framer-motion: + specifier: ^9.0.1 + version: 9.0.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + react: + specifier: ^18.3.1 + version: 18.3.1 + react-dom: + specifier: ^18.3.1 + version: 18.3.1(react@18.3.1) + typescript: + specifier: ^4.5.5 + version: 4.5.5 + devDependencies: + '@vanilla-extract/vite-plugin': + specifier: ^4.0.6 + version: 4.0.6(@types/node@20.11.30)(vite@5.2.6(@types/node@20.11.30)) + '@vitejs/plugin-react': + specifier: ^4.2.1 + version: 4.2.1(vite@5.2.6(@types/node@20.11.30)) + vite: + specifier: ^5.2.6 + version: 5.2.6(@types/node@20.11.30) + vite-plugin-svgr: + specifier: ^4.2.0 + version: 4.2.0(rollup@4.21.3)(typescript@4.5.5)(vite@5.2.6(@types/node@20.11.30)) + vite-tsconfig-paths: + specifier: ^4.3.2 + version: 4.3.2(typescript@4.5.5)(vite@5.2.6(@types/node@20.11.30)) + +packages: + + 0xsequence@2.2.3: + resolution: {integrity: sha512-1P/U1oEu51vCA6VgrzCt1pPjEx6iKd44NLLjHTEmmUxEKcesEFHtzhfA9H6tY/O2liqVT8SpS5NoHnQqtoyEAg==} + peerDependencies: + ethers: '>=6' + + '@0xsequence/abi@2.2.13': + resolution: {integrity: sha512-cZDR83SNxpXTD9vZoJAtmn6/YgvttN0gmeB8feQ5cpo8yd+AeJvQpUGMPR6Ud1MQGsvcPTLnTwKkL432Pc6UGQ==} + + '@0xsequence/abi@2.2.3': + resolution: {integrity: sha512-y0JxKXHKqkJh2i2d8F+Ql7P5jyGujJ2P28pN4YTcYacqmpDZqYi3d0Bf+uMgroWfncKBZDBETGxjWNvUYmhivg==} + + '@0xsequence/account@2.2.13': + resolution: {integrity: sha512-+kGyDsLEYOQUMhahtJps1N2j0jLXl0hAl2ilGA4NiALck7JP1Q/IO0RtkOlfSgjqFdyaipGvhYYyJuok2ARF5w==} + peerDependencies: + ethers: '>=6' + + '@0xsequence/account@2.2.3': + resolution: {integrity: sha512-Q0czXuoNpwwECwMS4GGkmoh0xIEfQrATi5gcyLlhA5kDu4Idsws3dy95D4fkTXTY2kt7JUNuG79XEmq5L2GciQ==} + peerDependencies: + ethers: '>=6' + + '@0xsequence/api@2.2.13': + resolution: {integrity: sha512-UmFMdLRCOfUGT2WqXzHE91sm+XU7eossdoKZ74W/F1ZTBU8XRa4DldQ0alKjff5x4Hxe/wIjppBPE9pQUzGYxA==} + + '@0xsequence/api@2.2.3': + resolution: {integrity: sha512-qwNcAWb4LbewZqn/39WHU/te1Wi+h7JJ2kuu9RRcV+rore3Z3zc7SqxHqtxoVMUOKlubmDEv/Y4BsL00m6XLmQ==} + + '@0xsequence/auth@2.2.13': + resolution: {integrity: sha512-3UQ6/zDhrNO5BVsgiLwCfQq4Nmbd1W0Ync/FNug8Yum1i9r2il54bUZRtauct6uMUaotAqNG4l/nzy105v93QQ==} + peerDependencies: + ethers: '>=6' + + '@0xsequence/auth@2.2.3': + resolution: {integrity: sha512-Ct5ECn5qigaSMDZ6j9vvGX3eaeSO9P9bAoknImhFURH4dsC7Dz03Z3oYbP/78oKX2RqV3uu8c8NxAWzYjBLuNg==} + peerDependencies: + ethers: '>=6' + + '@0xsequence/core@2.2.13': + resolution: {integrity: sha512-tu6OEGbDLg1KfMb+YOn0Z5BsYbK3UFBjuPVHRx7SpmCsZPEApJqqRKHpTYah2T3bmYIJy9tRBtqstfTsniSgng==} + peerDependencies: + ethers: '>=6' + + '@0xsequence/core@2.2.3': + resolution: {integrity: sha512-Bt2PsAIDSOjRx82uTqDYmOdin1DYVtwlt/TYb27Q/oNSY8MA1GG5NqEHefssi/ohXAsPRNeLMaspfmX0/BUTWw==} + peerDependencies: + ethers: '>=6' + + '@0xsequence/design-system@1.8.1': + resolution: {integrity: sha512-VsYBYR8d2UXnte5MvysyWtrdYpyvTYpQFbpNW8nOseAB6lWc8q9miTwYzeUy0fq90BQQ1YfE95EbJ4BjGTYInw==} + peerDependencies: + framer-motion: '>=6' + react: '>=17' + react-dom: '>=17' + + '@0xsequence/ethauth@1.0.0': + resolution: {integrity: sha512-piihXzbS8Sq7P670a+GyTm3igTJL3Ts6pqjJcC0Sv86yqeK6QD0pzJP4APP+/IQa5k+0s2l1SeZwMjR7gSPtCA==} + peerDependencies: + ethers: '>=6' + + '@0xsequence/guard@2.2.3': + resolution: {integrity: sha512-B9FRVJauAs/Asispe0p6wk3zAQubL9c6laC3xsCnFq3Qkv5t4VsGudTBe6ewx0xTeyQwEnVkneVgnUcnUP9xwA==} + peerDependencies: + ethers: '>=6' + + '@0xsequence/indexer@2.2.13': + resolution: {integrity: sha512-RFjjjckuAhM0vgYFO1RgYyBqsUrU54l2N/Isr5DPSLCCczp+qcopNuFMB0e0FuvzUP1buunxTjHRVjFH75kQEA==} + + '@0xsequence/indexer@2.2.3': + resolution: {integrity: sha512-bt74b5+SV5aGM+ZZfUmSU7rkttmc8I7OsQovQZBDw5YRVWPVEeVPZeX4ws4bZwiuYifD954A2Z/2MX1brH76Sw==} + + '@0xsequence/metadata@2.2.13': + resolution: {integrity: sha512-RpkIXSYKEt/W6zCoY99Q44OMjjLf//Pi8yImitXNh8IqTZqio54L9Xo4L+5ryz6rjPmaY3Mce1J1D5YJam0h4g==} + + '@0xsequence/metadata@2.2.3': + resolution: {integrity: sha512-Y7/Prw0CVxTuw59B0DnE0WnjbhJaPATibThWb13Y6W99M4NvQi5NlfS2KagfsMo5MHb5iFRjJHrCFovbv+MiuA==} + + '@0xsequence/migration@2.2.13': + resolution: {integrity: sha512-YcdjW7BRrQiOvhmSuvTM3GqklZVfO3dpbwSNqT0bMqwx/9YzE0CsVZVSMYrqVq5njyNFZjs42zazLdcrqqA2Ag==} + peerDependencies: + ethers: '>=6' + + '@0xsequence/migration@2.2.3': + resolution: {integrity: sha512-Q1+YePKzfPnCF9Rk0Tc9EqYtD1BdLym8ZEjco6b5BtyAGyIF7UefWql57IVEXBB/H1DtF+M7JHoZusvmS6atTw==} + peerDependencies: + ethers: '>=6' + + '@0xsequence/network@2.2.13': + resolution: {integrity: sha512-U8sVC2nWokPtQzIXwNKOP/mgkkuvjxYmQrgITkc8YDTAQOYPu6n/4lIqQ2//jjSfloniMK00tDpfUd5fCFbsUA==} + peerDependencies: + ethers: '>=6' + + '@0xsequence/network@2.2.3': + resolution: {integrity: sha512-oOw4oB/Y6EqTvFHYzMX9bjpizj8DQxkUGdQLBcs3R1ZLipbbwhMKWfBf9BoXAl1YUthyFKI5rl9v0MJMxaq3Bg==} + peerDependencies: + ethers: '>=6' + + '@0xsequence/provider@2.2.13': + resolution: {integrity: sha512-p5DlA2eHWhgfyCK7JQL3k7qT+aNiNxFkiAMbO2Q/eRnBnmrKcN0dK9HjuK1lWvWH3eZniEgK/M9Kec6nfixbcw==} + peerDependencies: + ethers: '>=6' + + '@0xsequence/provider@2.2.3': + resolution: {integrity: sha512-QxHBbgLGGpVsnEiFI5uvpuEUdl7JfxQ/i2T28aUK4vtUtiYLTiOnNwQy9RiK/bGPtqx9vh3Xh05G8c1KKWRqyw==} + peerDependencies: + ethers: '>=6' + + '@0xsequence/relayer@2.2.13': + resolution: {integrity: sha512-fnt4AJ1u9CPwx7JJwpZ7UbJ3eN2LOG0Wuwe4FS9OSfxCOhbokELRSWegToEyH6ew6FRPvsuRMN/im3Bu3Og0QQ==} + peerDependencies: + ethers: '>=6' + + '@0xsequence/relayer@2.2.3': + resolution: {integrity: sha512-baFGhIQIXhYcRNWV2mzFss+EXYkSlsnMI0+G3ZOUAfTkPR5Tv8iL/srvM0d+/ByhCsGwe8fqNfEbFTGIDOVviA==} + peerDependencies: + ethers: '>=6' + + '@0xsequence/replacer@2.2.13': + resolution: {integrity: sha512-+cTsda4HKzLpCzERrcPSEn5ei/lj4vPIs6kAS9aqO1XOWqeyslPWcPbfMgMbMbn+/vmbnVuqUXDOgRZqkZ2FEA==} + peerDependencies: + ethers: '>=6' + + '@0xsequence/replacer@2.2.3': + resolution: {integrity: sha512-onYf/GjYUkah1GTqimBliQQzCF9ksfb53ugJKibN1Q1uT2mKJvO1NMxXviuduXan2A+Rdr8/tTkfZwMnbVoX+A==} + peerDependencies: + ethers: '>=6' + + '@0xsequence/sessions@2.2.13': + resolution: {integrity: sha512-duClp86VeyaMuyKItByK2rIbsDQHDiMP22yLQeCN+Si+bk0T7Jta9rHP+PoAOncKpbRDJZSqSX1hmzYgB4LD5g==} + peerDependencies: + ethers: '>=6' + + '@0xsequence/sessions@2.2.3': + resolution: {integrity: sha512-MJgOZkG3fZFc0sidYY1OzFGte2HVRjmkrxDukuwlEsxvN2M+HikgrpFwVcG5u1n2uiJGA0Uzq85UL7jvF5QozQ==} + peerDependencies: + ethers: '>=6' + + '@0xsequence/signhub@2.2.13': + resolution: {integrity: sha512-yCo3l3a4nYNy5LOxcH4xEoGmQqMfWq9BxkUF+Y8xDd001L7cynaGzAS7s+5Fs4B+HD9obC7NxwSOeoJ6qqk4xw==} + peerDependencies: + ethers: '>=6' + + '@0xsequence/signhub@2.2.3': + resolution: {integrity: sha512-Gk0DitT/Su+gMDAa/r6mNOBX+RcWQfd75CnuOmJxBZT/jH6uxrbtlz/DDTR/P1gjf1EyYJ7NjibszMvr9sawzA==} + peerDependencies: + ethers: '>=6' + + '@0xsequence/utils@2.2.13': + resolution: {integrity: sha512-V4uip1fCZAzp5O2S+nkKnwrqmzzC7em1Mc4HJvUX+fqT0jzw20BZt0CNlX34DgW6E6MzBvWnrX+DTfz/+alBWQ==} + peerDependencies: + ethers: '>=6' + + '@0xsequence/utils@2.2.3': + resolution: {integrity: sha512-2F9dMqlgsoPdXk8xfOc7VuTrEtsNukadI5HSUYpLF+J1HZBamkCa/shgiHoKIZULiDt+scZ/3amVXvQUk0Zj1w==} + peerDependencies: + ethers: '>=6' + + '@0xsequence/wallet@2.2.13': + resolution: {integrity: sha512-lCD+Z6E4bpZCkwAttFy4P1iAM1ZkaiN9zo8dw4+unSVqzVslPPKoWNCX+b16Qg1pZEqe0yPjbqqon0eH/iHGyw==} + peerDependencies: + ethers: '>=6' + + '@0xsequence/wallet@2.2.3': + resolution: {integrity: sha512-lS/eVCQtjm4TAL4Xc+Hec7YZAoAZJ5XLRd3eo7oV8Seakwa2GagT3MeGnpMgRUTpySf4i9k3iDcL6fkpxWVvMg==} + peerDependencies: + ethers: '>=6' + + '@adraffy/ens-normalize@1.10.1': + resolution: {integrity: sha512-96Z2IP3mYmF1Xg2cDm8f1gWGf/HUVedQ3FMifV4kG/PQ4yEP51xDtRAEfhVNt5f/uzpNkZHwWQuUcu6D6K+Ekw==} + + '@ampproject/remapping@2.2.1': + resolution: {integrity: sha512-lFMjJTrFL3j7L9yBxwYfCq2k6qqwHyzuUl/XBnif78PWTJYyL/dfowQHWE3sp6U6ZzqWiiIZnpTMO96zhkjwtg==} + engines: {node: '>=6.0.0'} + + '@ampproject/remapping@2.3.0': + resolution: {integrity: sha512-30iZtAPgz+LTIYoeivqYo853f02jBYSd5uGnGpkFV0M3xOt9aN73erkgYAmZU43x4VfqcnLxW9Kpg3R5LC4YYw==} + engines: {node: '>=6.0.0'} + + '@babel/code-frame@7.23.5': + resolution: {integrity: sha512-CgH3s1a96LipHCmSUmYFPwY7MNx8C3avkq7i4Wl3cfa662ldtUe4VM1TPXX70pfmrlWTb6jLqTYrZyT2ZTJBgA==} + engines: {node: '>=6.9.0'} + + '@babel/code-frame@7.24.2': + resolution: {integrity: sha512-y5+tLQyV8pg3fsiln67BVLD1P13Eg4lh5RW9mF0zUuvLrv9uIQ4MCL+CRT+FTsBlBjcIan6PGsLcBN0m3ClUyQ==} + engines: {node: '>=6.9.0'} + + '@babel/compat-data@7.23.5': + resolution: {integrity: sha512-uU27kfDRlhfKl+w1U6vp16IuvSLtjAxdArVXPa9BvLkrr7CYIsxH5adpHObeAGY/41+syctUWOZ140a2Rvkgjw==} + engines: {node: '>=6.9.0'} + + '@babel/core@7.23.7': + resolution: {integrity: sha512-+UpDgowcmqe36d4NwqvKsyPMlOLNGMsfMmQ5WGCu+siCe3t3dfe9njrzGfdN4qq+bcNUt0+Vw6haRxBOycs4dw==} + engines: {node: '>=6.9.0'} + + '@babel/core@7.24.3': + resolution: {integrity: sha512-5FcvN1JHw2sHJChotgx8Ek0lyuh4kCKelgMTTqhYJJtloNvUfpAFMeNQUtdlIaktwrSV9LtCdqwk48wL2wBacQ==} + engines: {node: '>=6.9.0'} + + '@babel/generator@7.23.6': + resolution: {integrity: sha512-qrSfCYxYQB5owCmGLbl8XRpX1ytXlpueOb0N0UmQwA073KZxejgQTzAmJezxvpwQD9uGtK2shHdi55QT+MbjIw==} + engines: {node: '>=6.9.0'} + + '@babel/generator@7.24.1': + resolution: {integrity: sha512-DfCRfZsBcrPEHUfuBMgbJ1Ut01Y/itOs+hY2nFLgqsqXd52/iSiVq5TITtUasIUgm+IIKdY2/1I7auiQOEeC9A==} + engines: {node: '>=6.9.0'} + + '@babel/helper-compilation-targets@7.23.6': + resolution: {integrity: sha512-9JB548GZoQVmzrFgp8o7KxdgkTGm6xs9DW0o/Pim72UDjzr5ObUQ6ZzYPqA+g9OTS2bBQoctLJrky0RDCAWRgQ==} + engines: {node: '>=6.9.0'} + + '@babel/helper-environment-visitor@7.22.20': + resolution: {integrity: sha512-zfedSIzFhat/gFhWfHtgWvlec0nqB9YEIVrpuwjruLlXfUSnA8cJB0miHKwqDnQ7d32aKo2xt88/xZptwxbfhA==} + engines: {node: '>=6.9.0'} + + '@babel/helper-function-name@7.23.0': + resolution: {integrity: sha512-OErEqsrxjZTJciZ4Oo+eoZqeW9UIiOcuYKRJA4ZAgV9myA+pOXhhmpfNCKjEH/auVfEYVFJ6y1Tc4r0eIApqiw==} + engines: {node: '>=6.9.0'} + + '@babel/helper-hoist-variables@7.22.5': + resolution: {integrity: sha512-wGjk9QZVzvknA6yKIUURb8zY3grXCcOZt+/7Wcy8O2uctxhplmUPkOdlgoNhmdVee2c92JXbf1xpMtVNbfoxRw==} + engines: {node: '>=6.9.0'} + + '@babel/helper-module-imports@7.22.15': + resolution: {integrity: sha512-0pYVBnDKZO2fnSPCrgM/6WMc7eS20Fbok+0r88fp+YtWVLZrp4CkafFGIp+W0VKw4a22sgebPT99y+FDNMdP4w==} + engines: {node: '>=6.9.0'} + + '@babel/helper-module-transforms@7.23.3': + resolution: {integrity: sha512-7bBs4ED9OmswdfDzpz4MpWgSrV7FXlc3zIagvLFjS5H+Mk7Snr21vQ6QwrsoCGMfNC4e4LQPdoULEt4ykz0SRQ==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0 + + '@babel/helper-plugin-utils@7.22.5': + resolution: {integrity: sha512-uLls06UVKgFG9QD4OeFYLEGteMIAa5kpTPcFL28yuCIIzsf6ZyKZMllKVOCZFhiZ5ptnwX4mtKdWCBE/uT4amg==} + engines: {node: '>=6.9.0'} + + '@babel/helper-plugin-utils@7.24.0': + resolution: {integrity: sha512-9cUznXMG0+FxRuJfvL82QlTqIzhVW9sL0KjMPHhAOOvpQGL8QtdxnBKILjBqxlHyliz0yCa1G903ZXI/FuHy2w==} + engines: {node: '>=6.9.0'} + + '@babel/helper-simple-access@7.22.5': + resolution: {integrity: sha512-n0H99E/K+Bika3++WNL17POvo4rKWZ7lZEp1Q+fStVbUi8nxPQEBOlTmCOxW/0JsS56SKKQ+ojAe2pHKJHN35w==} + engines: {node: '>=6.9.0'} + + '@babel/helper-split-export-declaration@7.22.6': + resolution: {integrity: sha512-AsUnxuLhRYsisFiaJwvp1QF+I3KjD5FOxut14q/GzovUe6orHLesW2C7d754kRm53h5gqrz6sFl6sxc4BVtE/g==} + engines: {node: '>=6.9.0'} + + '@babel/helper-string-parser@7.22.5': + resolution: {integrity: sha512-mM4COjgZox8U+JcXQwPijIZLElkgEpO5rsERVDJTc2qfCDfERyob6k5WegS14SX18IIjv+XD+GrqNumY5JRCDw==} + engines: {node: '>=6.9.0'} + + '@babel/helper-string-parser@7.23.4': + resolution: {integrity: sha512-803gmbQdqwdf4olxrX4AJyFBV/RTr3rSmOj0rKwesmzlfhYNDEs+/iOcznzpNWlJlIlTJC2QfPFcHB6DlzdVLQ==} + engines: {node: '>=6.9.0'} + + '@babel/helper-string-parser@7.24.1': + resolution: {integrity: sha512-2ofRCjnnA9y+wk8b9IAREroeUP02KHp431N2mhKniy2yKIDKpbrHv9eXwm8cBeWQYcJmzv5qKCu65P47eCF7CQ==} + engines: {node: '>=6.9.0'} + + '@babel/helper-validator-identifier@7.22.20': + resolution: {integrity: sha512-Y4OZ+ytlatR8AI+8KZfKuL5urKp7qey08ha31L8b3BwewJAoJamTzyvxPR/5D+KkdJCGPq/+8TukHBlY10FX9A==} + engines: {node: '>=6.9.0'} + + '@babel/helper-validator-identifier@7.22.5': + resolution: {integrity: sha512-aJXu+6lErq8ltp+JhkJUfk1MTGyuA4v7f3pA+BJ5HLfNC6nAQ0Cpi9uOquUj8Hehg0aUiHzWQbOVJGao6ztBAQ==} + engines: {node: '>=6.9.0'} + + '@babel/helper-validator-option@7.23.5': + resolution: {integrity: sha512-85ttAOMLsr53VgXkTbkx8oA6YTfT4q7/HzXSLEYmjcSTJPMPQtvq1BD79Byep5xMUYbGRzEpDsjUf3dyp54IKw==} + engines: {node: '>=6.9.0'} + + '@babel/helpers@7.23.8': + resolution: {integrity: sha512-KDqYz4PiOWvDFrdHLPhKtCThtIcKVy6avWD2oG4GEvyQ+XDZwHD4YQd+H2vNMnq2rkdxsDkU82T+Vk8U/WXHRQ==} + engines: {node: '>=6.9.0'} + + '@babel/helpers@7.24.1': + resolution: {integrity: sha512-BpU09QqEe6ZCHuIHFphEFgvNSrubve1FtyMton26ekZ85gRGi6LrTF7zArARp2YvyFxloeiRmtSCq5sjh1WqIg==} + engines: {node: '>=6.9.0'} + + '@babel/highlight@7.23.4': + resolution: {integrity: sha512-acGdbYSfp2WheJoJm/EBBBLh/ID8KDc64ISZ9DYtBmC8/Q204PZJLHyzeB5qMzJ5trcOkybd78M4x2KWsUq++A==} + engines: {node: '>=6.9.0'} + + '@babel/highlight@7.24.2': + resolution: {integrity: sha512-Yac1ao4flkTxTteCDZLEvdxg2fZfz1v8M4QpaGypq/WPDqg3ijHYbDfs+LG5hvzSoqaSZ9/Z9lKSP3CjZjv+pA==} + engines: {node: '>=6.9.0'} + + '@babel/parser@7.23.6': + resolution: {integrity: sha512-Z2uID7YJ7oNvAI20O9X0bblw7Qqs8Q2hFy0R9tAfnfLkp5MW0UH9eUvnDSnFwKZ0AvgS1ucqR4KzvVHgnke1VQ==} + engines: {node: '>=6.0.0'} + hasBin: true + + '@babel/parser@7.24.1': + resolution: {integrity: sha512-Zo9c7N3xdOIQrNip7Lc9wvRPzlRtovHVE4lkz8WEDr7uYh/GMQhSiIgFxGIArRHYdJE5kxtZjAf8rT0xhdLCzg==} + engines: {node: '>=6.0.0'} + hasBin: true + + '@babel/plugin-syntax-typescript@7.24.1': + resolution: {integrity: sha512-Yhnmvy5HZEnHUty6i++gcfH1/l68AHnItFHnaCv6hn9dNh0hQvvQJsxpi4BMBFN5DLeHBuucT/0DgzXif/OyRw==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-transform-react-jsx-self@7.23.3': + resolution: {integrity: sha512-qXRvbeKDSfwnlJnanVRp0SfuWE5DQhwQr5xtLBzp56Wabyo+4CMosF6Kfp+eOD/4FYpql64XVJ2W0pVLlJZxOQ==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/plugin-transform-react-jsx-source@7.23.3': + resolution: {integrity: sha512-91RS0MDnAWDNvGC6Wio5XYkyWI39FMFO+JK9+4AlgaTH+yWwVTsw7/sn6LK0lH7c5F+TFkpv/3LfCJ1Ydwof/g==} + engines: {node: '>=6.9.0'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@babel/runtime@7.24.1': + resolution: {integrity: sha512-+BIznRzyqBf+2wCTxcKE3wDjfGeCoVE61KSHGpkzqrLi8qxqFwBeUFyId2cxkTmm55fzDGnm0+yCxaxygrLUnQ==} + engines: {node: '>=6.9.0'} + + '@babel/template@7.22.15': + resolution: {integrity: sha512-QPErUVm4uyJa60rkI73qneDacvdvzxshT3kksGqlGWYdOTIUOwJ7RDUL8sGqslY1uXWSL6xMFKEXDS3ox2uF0w==} + engines: {node: '>=6.9.0'} + + '@babel/template@7.24.0': + resolution: {integrity: sha512-Bkf2q8lMB0AFpX0NFEqSbx1OkTHf0f+0j82mkw+ZpzBnkk7e9Ql0891vlfgi+kHwOk8tQjiQHpqh4LaSa0fKEA==} + engines: {node: '>=6.9.0'} + + '@babel/traverse@7.23.7': + resolution: {integrity: sha512-tY3mM8rH9jM0YHFGyfC0/xf+SB5eKUu7HPj7/k3fpi9dAlsMc5YbQvDi0Sh2QTPXqMhyaAtzAr807TIyfQrmyg==} + engines: {node: '>=6.9.0'} + + '@babel/traverse@7.24.1': + resolution: {integrity: sha512-xuU6o9m68KeqZbQuDt2TcKSxUw/mrsvavlEqQ1leZ/B+C9tk6E4sRWy97WaXgvq5E+nU3cXMxv3WKOCanVMCmQ==} + engines: {node: '>=6.9.0'} + + '@babel/types@7.22.5': + resolution: {integrity: sha512-zo3MIHGOkPOfoRXitsgHLjEXmlDaD/5KU1Uzuc9GNiZPhSqVxVRtxuPaSBZDsYZ9qV88AjtMtWW7ww98loJ9KA==} + engines: {node: '>=6.9.0'} + + '@babel/types@7.23.6': + resolution: {integrity: sha512-+uarb83brBzPKN38NX1MkB6vb6+mwvR6amUulqAE7ccQw1pEl+bCia9TbdG1lsnFP7lZySvUn37CHyXQdfTwzg==} + engines: {node: '>=6.9.0'} + + '@babel/types@7.24.0': + resolution: {integrity: sha512-+j7a5c253RfKh8iABBhywc8NSfP5LURe7Uh4qpsh6jc+aLJguvmIUBdjSdEMQv2bENrCR5MfRdjGo7vzS/ob7w==} + engines: {node: '>=6.9.0'} + + '@databeat/tracker@0.9.3': + resolution: {integrity: sha512-eGsiNU/CRFujcNtUUqvBiqveCs6S6SiAhalXPDodbk74d3FzvLqHDn5k6WfOEJIhrP3CbYgfMXL0nk51s/rQsg==} + + '@emotion/hash@0.9.1': + resolution: {integrity: sha512-gJB6HLm5rYwSLI6PQa+X1t5CFGrv1J1TWG+sOyMCeKz2ojaj6Fnl/rZEspogG+cvqbt4AE/2eIyD2QfLKTBNlQ==} + + '@emotion/is-prop-valid@0.8.8': + resolution: {integrity: sha512-u5WtneEAr5IDG2Wv65yhunPSMLIpuKsbuOktRojfrEiEvRyC85LgPMZI63cr7NUqT8ZIGdSVg8ZKGxIug4lXcA==} + + '@emotion/memoize@0.7.4': + resolution: {integrity: sha512-Ja/Vfqe3HpuzRsG1oBtWTHk2PGZ7GR+2Vz5iYGelAw8dx32K0y7PjVuxK6z1nMpZOqAFsRUPCkK1YjJ56qJlgw==} + + '@esbuild/aix-ppc64@0.19.12': + resolution: {integrity: sha512-bmoCYyWdEL3wDQIVbcyzRyeKLgk2WtWLTWz1ZIAZF/EGbNOwSA6ew3PftJ1PqMiOOGu0OyFMzG53L0zqIpPeNA==} + engines: {node: '>=12'} + cpu: [ppc64] + os: [aix] + + '@esbuild/aix-ppc64@0.20.2': + resolution: {integrity: sha512-D+EBOJHXdNZcLJRBkhENNG8Wji2kgc9AZ9KiPr1JuZjsNtyHzrsfLRrY0tk2H2aoFu6RANO1y1iPPUCDYWkb5g==} + engines: {node: '>=12'} + cpu: [ppc64] + os: [aix] + + '@esbuild/android-arm64@0.19.12': + resolution: {integrity: sha512-P0UVNGIienjZv3f5zq0DP3Nt2IE/3plFzuaS96vihvD0Hd6H/q4WXUGpCxD/E8YrSXfNyRPbpTq+T8ZQioSuPA==} + engines: {node: '>=12'} + cpu: [arm64] + os: [android] + + '@esbuild/android-arm64@0.20.2': + resolution: {integrity: sha512-mRzjLacRtl/tWU0SvD8lUEwb61yP9cqQo6noDZP/O8VkwafSYwZ4yWy24kan8jE/IMERpYncRt2dw438LP3Xmg==} + engines: {node: '>=12'} + cpu: [arm64] + os: [android] + + '@esbuild/android-arm@0.19.12': + resolution: {integrity: sha512-qg/Lj1mu3CdQlDEEiWrlC4eaPZ1KztwGJ9B6J+/6G+/4ewxJg7gqj8eVYWvao1bXrqGiW2rsBZFSX3q2lcW05w==} + engines: {node: '>=12'} + cpu: [arm] + os: [android] + + '@esbuild/android-arm@0.20.2': + resolution: {integrity: sha512-t98Ra6pw2VaDhqNWO2Oph2LXbz/EJcnLmKLGBJwEwXX/JAN83Fym1rU8l0JUWK6HkIbWONCSSatf4sf2NBRx/w==} + engines: {node: '>=12'} + cpu: [arm] + os: [android] + + '@esbuild/android-x64@0.19.12': + resolution: {integrity: sha512-3k7ZoUW6Q6YqhdhIaq/WZ7HwBpnFBlW905Fa4s4qWJyiNOgT1dOqDiVAQFwBH7gBRZr17gLrlFCRzF6jFh7Kew==} + engines: {node: '>=12'} + cpu: [x64] + os: [android] + + '@esbuild/android-x64@0.20.2': + resolution: {integrity: sha512-btzExgV+/lMGDDa194CcUQm53ncxzeBrWJcncOBxuC6ndBkKxnHdFJn86mCIgTELsooUmwUm9FkhSp5HYu00Rg==} + engines: {node: '>=12'} + cpu: [x64] + os: [android] + + '@esbuild/darwin-arm64@0.19.12': + resolution: {integrity: sha512-B6IeSgZgtEzGC42jsI+YYu9Z3HKRxp8ZT3cqhvliEHovq8HSX2YX8lNocDn79gCKJXOSaEot9MVYky7AKjCs8g==} + engines: {node: '>=12'} + cpu: [arm64] + os: [darwin] + + '@esbuild/darwin-arm64@0.20.2': + resolution: {integrity: sha512-4J6IRT+10J3aJH3l1yzEg9y3wkTDgDk7TSDFX+wKFiWjqWp/iCfLIYzGyasx9l0SAFPT1HwSCR+0w/h1ES/MjA==} + engines: {node: '>=12'} + cpu: [arm64] + os: [darwin] + + '@esbuild/darwin-x64@0.19.12': + resolution: {integrity: sha512-hKoVkKzFiToTgn+41qGhsUJXFlIjxI/jSYeZf3ugemDYZldIXIxhvwN6erJGlX4t5h417iFuheZ7l+YVn05N3A==} + engines: {node: '>=12'} + cpu: [x64] + os: [darwin] + + '@esbuild/darwin-x64@0.20.2': + resolution: {integrity: sha512-tBcXp9KNphnNH0dfhv8KYkZhjc+H3XBkF5DKtswJblV7KlT9EI2+jeA8DgBjp908WEuYll6pF+UStUCfEpdysA==} + engines: {node: '>=12'} + cpu: [x64] + os: [darwin] + + '@esbuild/freebsd-arm64@0.19.12': + resolution: {integrity: sha512-4aRvFIXmwAcDBw9AueDQ2YnGmz5L6obe5kmPT8Vd+/+x/JMVKCgdcRwH6APrbpNXsPz+K653Qg8HB/oXvXVukA==} + engines: {node: '>=12'} + cpu: [arm64] + os: [freebsd] + + '@esbuild/freebsd-arm64@0.20.2': + resolution: {integrity: sha512-d3qI41G4SuLiCGCFGUrKsSeTXyWG6yem1KcGZVS+3FYlYhtNoNgYrWcvkOoaqMhwXSMrZRl69ArHsGJ9mYdbbw==} + engines: {node: '>=12'} + cpu: [arm64] + os: [freebsd] + + '@esbuild/freebsd-x64@0.19.12': + resolution: {integrity: sha512-EYoXZ4d8xtBoVN7CEwWY2IN4ho76xjYXqSXMNccFSx2lgqOG/1TBPW0yPx1bJZk94qu3tX0fycJeeQsKovA8gg==} + engines: {node: '>=12'} + cpu: [x64] + os: [freebsd] + + '@esbuild/freebsd-x64@0.20.2': + resolution: {integrity: sha512-d+DipyvHRuqEeM5zDivKV1KuXn9WeRX6vqSqIDgwIfPQtwMP4jaDsQsDncjTDDsExT4lR/91OLjRo8bmC1e+Cw==} + engines: {node: '>=12'} + cpu: [x64] + os: [freebsd] + + '@esbuild/linux-arm64@0.19.12': + resolution: {integrity: sha512-EoTjyYyLuVPfdPLsGVVVC8a0p1BFFvtpQDB/YLEhaXyf/5bczaGeN15QkR+O4S5LeJ92Tqotve7i1jn35qwvdA==} + engines: {node: '>=12'} + cpu: [arm64] + os: [linux] + + '@esbuild/linux-arm64@0.20.2': + resolution: {integrity: sha512-9pb6rBjGvTFNira2FLIWqDk/uaf42sSyLE8j1rnUpuzsODBq7FvpwHYZxQ/It/8b+QOS1RYfqgGFNLRI+qlq2A==} + engines: {node: '>=12'} + cpu: [arm64] + os: [linux] + + '@esbuild/linux-arm@0.19.12': + resolution: {integrity: sha512-J5jPms//KhSNv+LO1S1TX1UWp1ucM6N6XuL6ITdKWElCu8wXP72l9MM0zDTzzeikVyqFE6U8YAV9/tFyj0ti+w==} + engines: {node: '>=12'} + cpu: [arm] + os: [linux] + + '@esbuild/linux-arm@0.20.2': + resolution: {integrity: sha512-VhLPeR8HTMPccbuWWcEUD1Az68TqaTYyj6nfE4QByZIQEQVWBB8vup8PpR7y1QHL3CpcF6xd5WVBU/+SBEvGTg==} + engines: {node: '>=12'} + cpu: [arm] + os: [linux] + + '@esbuild/linux-ia32@0.19.12': + resolution: {integrity: sha512-Thsa42rrP1+UIGaWz47uydHSBOgTUnwBwNq59khgIwktK6x60Hivfbux9iNR0eHCHzOLjLMLfUMLCypBkZXMHA==} + engines: {node: '>=12'} + cpu: [ia32] + os: [linux] + + '@esbuild/linux-ia32@0.20.2': + resolution: {integrity: sha512-o10utieEkNPFDZFQm9CoP7Tvb33UutoJqg3qKf1PWVeeJhJw0Q347PxMvBgVVFgouYLGIhFYG0UGdBumROyiig==} + engines: {node: '>=12'} + cpu: [ia32] + os: [linux] + + '@esbuild/linux-loong64@0.19.12': + resolution: {integrity: sha512-LiXdXA0s3IqRRjm6rV6XaWATScKAXjI4R4LoDlvO7+yQqFdlr1Bax62sRwkVvRIrwXxvtYEHHI4dm50jAXkuAA==} + engines: {node: '>=12'} + cpu: [loong64] + os: [linux] + + '@esbuild/linux-loong64@0.20.2': + resolution: {integrity: sha512-PR7sp6R/UC4CFVomVINKJ80pMFlfDfMQMYynX7t1tNTeivQ6XdX5r2XovMmha/VjR1YN/HgHWsVcTRIMkymrgQ==} + engines: {node: '>=12'} + cpu: [loong64] + os: [linux] + + '@esbuild/linux-mips64el@0.19.12': + resolution: {integrity: sha512-fEnAuj5VGTanfJ07ff0gOA6IPsvrVHLVb6Lyd1g2/ed67oU1eFzL0r9WL7ZzscD+/N6i3dWumGE1Un4f7Amf+w==} + engines: {node: '>=12'} + cpu: [mips64el] + os: [linux] + + '@esbuild/linux-mips64el@0.20.2': + resolution: {integrity: sha512-4BlTqeutE/KnOiTG5Y6Sb/Hw6hsBOZapOVF6njAESHInhlQAghVVZL1ZpIctBOoTFbQyGW+LsVYZ8lSSB3wkjA==} + engines: {node: '>=12'} + cpu: [mips64el] + os: [linux] + + '@esbuild/linux-ppc64@0.19.12': + resolution: {integrity: sha512-nYJA2/QPimDQOh1rKWedNOe3Gfc8PabU7HT3iXWtNUbRzXS9+vgB0Fjaqr//XNbd82mCxHzik2qotuI89cfixg==} + engines: {node: '>=12'} + cpu: [ppc64] + os: [linux] + + '@esbuild/linux-ppc64@0.20.2': + resolution: {integrity: sha512-rD3KsaDprDcfajSKdn25ooz5J5/fWBylaaXkuotBDGnMnDP1Uv5DLAN/45qfnf3JDYyJv/ytGHQaziHUdyzaAg==} + engines: {node: '>=12'} + cpu: [ppc64] + os: [linux] + + '@esbuild/linux-riscv64@0.19.12': + resolution: {integrity: sha512-2MueBrlPQCw5dVJJpQdUYgeqIzDQgw3QtiAHUC4RBz9FXPrskyyU3VI1hw7C0BSKB9OduwSJ79FTCqtGMWqJHg==} + engines: {node: '>=12'} + cpu: [riscv64] + os: [linux] + + '@esbuild/linux-riscv64@0.20.2': + resolution: {integrity: sha512-snwmBKacKmwTMmhLlz/3aH1Q9T8v45bKYGE3j26TsaOVtjIag4wLfWSiZykXzXuE1kbCE+zJRmwp+ZbIHinnVg==} + engines: {node: '>=12'} + cpu: [riscv64] + os: [linux] + + '@esbuild/linux-s390x@0.19.12': + resolution: {integrity: sha512-+Pil1Nv3Umes4m3AZKqA2anfhJiVmNCYkPchwFJNEJN5QxmTs1uzyy4TvmDrCRNT2ApwSari7ZIgrPeUx4UZDg==} + engines: {node: '>=12'} + cpu: [s390x] + os: [linux] + + '@esbuild/linux-s390x@0.20.2': + resolution: {integrity: sha512-wcWISOobRWNm3cezm5HOZcYz1sKoHLd8VL1dl309DiixxVFoFe/o8HnwuIwn6sXre88Nwj+VwZUvJf4AFxkyrQ==} + engines: {node: '>=12'} + cpu: [s390x] + os: [linux] + + '@esbuild/linux-x64@0.19.12': + resolution: {integrity: sha512-B71g1QpxfwBvNrfyJdVDexenDIt1CiDN1TIXLbhOw0KhJzE78KIFGX6OJ9MrtC0oOqMWf+0xop4qEU8JrJTwCg==} + engines: {node: '>=12'} + cpu: [x64] + os: [linux] + + '@esbuild/linux-x64@0.20.2': + resolution: {integrity: sha512-1MdwI6OOTsfQfek8sLwgyjOXAu+wKhLEoaOLTjbijk6E2WONYpH9ZU2mNtR+lZ2B4uwr+usqGuVfFT9tMtGvGw==} + engines: {node: '>=12'} + cpu: [x64] + os: [linux] + + '@esbuild/netbsd-x64@0.19.12': + resolution: {integrity: sha512-3ltjQ7n1owJgFbuC61Oj++XhtzmymoCihNFgT84UAmJnxJfm4sYCiSLTXZtE00VWYpPMYc+ZQmB6xbSdVh0JWA==} + engines: {node: '>=12'} + cpu: [x64] + os: [netbsd] + + '@esbuild/netbsd-x64@0.20.2': + resolution: {integrity: sha512-K8/DhBxcVQkzYc43yJXDSyjlFeHQJBiowJ0uVL6Tor3jGQfSGHNNJcWxNbOI8v5k82prYqzPuwkzHt3J1T1iZQ==} + engines: {node: '>=12'} + cpu: [x64] + os: [netbsd] + + '@esbuild/openbsd-x64@0.19.12': + resolution: {integrity: sha512-RbrfTB9SWsr0kWmb9srfF+L933uMDdu9BIzdA7os2t0TXhCRjrQyCeOt6wVxr79CKD4c+p+YhCj31HBkYcXebw==} + engines: {node: '>=12'} + cpu: [x64] + os: [openbsd] + + '@esbuild/openbsd-x64@0.20.2': + resolution: {integrity: sha512-eMpKlV0SThJmmJgiVyN9jTPJ2VBPquf6Kt/nAoo6DgHAoN57K15ZghiHaMvqjCye/uU4X5u3YSMgVBI1h3vKrQ==} + engines: {node: '>=12'} + cpu: [x64] + os: [openbsd] + + '@esbuild/sunos-x64@0.19.12': + resolution: {integrity: sha512-HKjJwRrW8uWtCQnQOz9qcU3mUZhTUQvi56Q8DPTLLB+DawoiQdjsYq+j+D3s9I8VFtDr+F9CjgXKKC4ss89IeA==} + engines: {node: '>=12'} + cpu: [x64] + os: [sunos] + + '@esbuild/sunos-x64@0.20.2': + resolution: {integrity: sha512-2UyFtRC6cXLyejf/YEld4Hajo7UHILetzE1vsRcGL3earZEW77JxrFjH4Ez2qaTiEfMgAXxfAZCm1fvM/G/o8w==} + engines: {node: '>=12'} + cpu: [x64] + os: [sunos] + + '@esbuild/win32-arm64@0.19.12': + resolution: {integrity: sha512-URgtR1dJnmGvX864pn1B2YUYNzjmXkuJOIqG2HdU62MVS4EHpU2946OZoTMnRUHklGtJdJZ33QfzdjGACXhn1A==} + engines: {node: '>=12'} + cpu: [arm64] + os: [win32] + + '@esbuild/win32-arm64@0.20.2': + resolution: {integrity: sha512-GRibxoawM9ZCnDxnP3usoUDO9vUkpAxIIZ6GQI+IlVmr5kP3zUq+l17xELTHMWTWzjxa2guPNyrpq1GWmPvcGQ==} + engines: {node: '>=12'} + cpu: [arm64] + os: [win32] + + '@esbuild/win32-ia32@0.19.12': + resolution: {integrity: sha512-+ZOE6pUkMOJfmxmBZElNOx72NKpIa/HFOMGzu8fqzQJ5kgf6aTGrcJaFsNiVMH4JKpMipyK+7k0n2UXN7a8YKQ==} + engines: {node: '>=12'} + cpu: [ia32] + os: [win32] + + '@esbuild/win32-ia32@0.20.2': + resolution: {integrity: sha512-HfLOfn9YWmkSKRQqovpnITazdtquEW8/SoHW7pWpuEeguaZI4QnCRW6b+oZTztdBnZOS2hqJ6im/D5cPzBTTlQ==} + engines: {node: '>=12'} + cpu: [ia32] + os: [win32] + + '@esbuild/win32-x64@0.19.12': + resolution: {integrity: sha512-T1QyPSDCyMXaO3pzBkF96E8xMkiRYbUEZADd29SyPGabqxMViNoii+NcK7eWJAEoU6RZyEm5lVSIjTmcdoB9HA==} + engines: {node: '>=12'} + cpu: [x64] + os: [win32] + + '@esbuild/win32-x64@0.20.2': + resolution: {integrity: sha512-N49X4lJX27+l9jbLKSqZ6bKNjzQvHaT8IIFUy+YIqmXQdjYCToGWwOItDrfby14c78aDd5NHQl29xingXfCdLQ==} + engines: {node: '>=12'} + cpu: [x64] + os: [win32] + + '@floating-ui/core@1.6.0': + resolution: {integrity: sha512-PcF++MykgmTj3CIyOQbKA/hDzOAiqI3mhuoN44WRCopIs1sgoDoU4oty4Jtqaj/y3oDU6fnVSm4QG0a3t5i0+g==} + + '@floating-ui/dom@1.6.3': + resolution: {integrity: sha512-RnDthu3mzPlQ31Ss/BTwQ1zjzIhr3lk1gZB1OC56h/1vEtaXkESrOqL5fQVMfXpwGtRwX+YsZBdyHtJMQnkArw==} + + '@floating-ui/react-dom@2.0.8': + resolution: {integrity: sha512-HOdqOt3R3OGeTKidaLvJKcgg75S6tibQ3Tif4eyd91QnIJWr0NLvoXFpJA/j8HqkFSL68GDca9AuyWEHlhyClw==} + peerDependencies: + react: '>=16.8.0' + react-dom: '>=16.8.0' + + '@floating-ui/utils@0.2.1': + resolution: {integrity: sha512-9TANp6GPoMtYzQdt54kfAyMmz1+osLlXdg2ENroU7zzrtflTLrrC/lgrIfaSe+Wu0b89GKccT7vxXA0MoAIO+Q==} + + '@jridgewell/gen-mapping@0.3.3': + resolution: {integrity: sha512-HLhSWOLRi875zjjMG/r+Nv0oCW8umGb0BgEhyX3dDX3egwZtB8PqLnjz3yedt8R5StBrzcg4aBpnh8UA9D1BoQ==} + engines: {node: '>=6.0.0'} + + '@jridgewell/gen-mapping@0.3.5': + resolution: {integrity: sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==} + engines: {node: '>=6.0.0'} + + '@jridgewell/resolve-uri@3.1.0': + resolution: {integrity: sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w==} + engines: {node: '>=6.0.0'} + + '@jridgewell/resolve-uri@3.1.1': + resolution: {integrity: sha512-dSYZh7HhCDtCKm4QakX0xFpsRDqjjtZf/kjI/v3T3Nwt5r8/qz/M19F9ySyOqU94SXBmeG9ttTul+YnR4LOxFA==} + engines: {node: '>=6.0.0'} + + '@jridgewell/resolve-uri@3.1.2': + resolution: {integrity: sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==} + engines: {node: '>=6.0.0'} + + '@jridgewell/set-array@1.1.2': + resolution: {integrity: sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==} + engines: {node: '>=6.0.0'} + + '@jridgewell/set-array@1.2.1': + resolution: {integrity: sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==} + engines: {node: '>=6.0.0'} + + '@jridgewell/sourcemap-codec@1.4.14': + resolution: {integrity: sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==} + + '@jridgewell/sourcemap-codec@1.4.15': + resolution: {integrity: sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==} + + '@jridgewell/trace-mapping@0.3.18': + resolution: {integrity: sha512-w+niJYzMHdd7USdiH2U6869nqhD2nbfZXND5Yp93qIbEmnDNk7PD48o+YchRVpzMU7M6jVCbenTR7PA1FLQ9pA==} + + '@jridgewell/trace-mapping@0.3.21': + resolution: {integrity: sha512-SRfKmRe1KvYnxjEMtxEr+J4HIeMX5YBg/qhRHpxEIGjhX1rshcHlnFUE9K0GazhVKWM7B+nARSkV8LuvJdJ5/g==} + + '@jridgewell/trace-mapping@0.3.25': + resolution: {integrity: sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==} + + '@motionone/animation@10.15.1': + resolution: {integrity: sha512-mZcJxLjHor+bhcPuIFErMDNyrdb2vJur8lSfMCsuCB4UyV8ILZLvK+t+pg56erv8ud9xQGK/1OGPt10agPrCyQ==} + + '@motionone/dom@10.16.2': + resolution: {integrity: sha512-bnuHdNbge1FutZXv+k7xub9oPWcF0hsu8y1HTH/qg6av58YI0VufZ3ngfC7p2xhMJMnoh0LXFma2EGTgPeCkeg==} + + '@motionone/easing@10.15.1': + resolution: {integrity: sha512-6hIHBSV+ZVehf9dcKZLT7p5PEKHGhDwky2k8RKkmOvUoYP3S+dXsKupyZpqx5apjd9f+php4vXk4LuS+ADsrWw==} + + '@motionone/generators@10.15.1': + resolution: {integrity: sha512-67HLsvHJbw6cIbLA/o+gsm7h+6D4Sn7AUrB/GPxvujse1cGZ38F5H7DzoH7PhX+sjvtDnt2IhFYF2Zp1QTMKWQ==} + + '@motionone/types@10.15.1': + resolution: {integrity: sha512-iIUd/EgUsRZGrvW0jqdst8st7zKTzS9EsKkP+6c6n4MPZoQHwiHuVtTQLD6Kp0bsBLhNzKIBlHXponn/SDT4hA==} + + '@motionone/utils@10.15.1': + resolution: {integrity: sha512-p0YncgU+iklvYr/Dq4NobTRdAPv9PveRDUXabPEeOjBLSO/1FNB2phNTZxOxpi1/GZwYpAoECEa0Wam+nsmhSw==} + + '@noble/curves@1.2.0': + resolution: {integrity: sha512-oYclrNgRaM9SsBUBVbb8M6DTV7ZHRTKugureoYEncY5c65HOmRzvSiTE3y5CYaPYJA/GVkrhXEoF0M3Ya9PMnw==} + + '@noble/hashes@1.3.2': + resolution: {integrity: sha512-MVC8EAQp7MvEcm30KWENFjgR+Mkmf+D189XJTkFIlwohU5hcBbn1ZkKq7KVTi2Hme3PMGF390DaL52beVrIihQ==} + engines: {node: '>= 16'} + + '@noble/hashes@1.6.1': + resolution: {integrity: sha512-pq5D8h10hHBjyqX+cfBm0i8JUXJ0UhczFc4r74zbuT9XgewFo2E3J1cOaGtdZynILNmQ685YWGzGE1Zv6io50w==} + engines: {node: ^14.21.3 || >=16} + + '@radix-ui/number@1.1.0': + resolution: {integrity: sha512-V3gRzhVNU1ldS5XhAPTom1fOIo4ccrjjJgmE+LI2h/WaFpHmx0MQApT+KZHnx8abG6Avtfcz4WoEciMnpFT3HQ==} + + '@radix-ui/primitive@1.1.0': + resolution: {integrity: sha512-4Z8dn6Upk0qk4P74xBhZ6Hd/w0mPEzOOLxy4xiPXOXqjF7jZS0VAKk7/x/H6FyY2zCkYJqePf1G5KmkmNJ4RBA==} + + '@radix-ui/react-arrow@1.1.0': + resolution: {integrity: sha512-FmlW1rCg7hBpEBwFbjHwCW6AmWLQM6g/v0Sn8XbP9NvmSZ2San1FpQeyPtufzOMSIx7Y4dzjlHoifhp+7NkZhw==} + peerDependencies: + '@types/react': '*' + '@types/react-dom': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + '@types/react-dom': + optional: true + + '@radix-ui/react-aspect-ratio@1.1.0': + resolution: {integrity: sha512-dP87DM/Y7jFlPgUZTlhx6FF5CEzOiaxp2rBCKlaXlpH5Ip/9Fg5zZ9lDOQ5o/MOfUlf36eak14zoWYpgcgGoOg==} + peerDependencies: + '@types/react': '*' + '@types/react-dom': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + '@types/react-dom': + optional: true + + '@radix-ui/react-checkbox@1.1.1': + resolution: {integrity: sha512-0i/EKJ222Afa1FE0C6pNJxDq1itzcl3HChE9DwskA4th4KRse8ojx8a1nVcOjwJdbpDLcz7uol77yYnQNMHdKw==} + peerDependencies: + '@types/react': '*' + '@types/react-dom': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + '@types/react-dom': + optional: true + + '@radix-ui/react-collapsible@1.1.0': + resolution: {integrity: sha512-zQY7Epa8sTL0mq4ajSJpjgn2YmCgyrG7RsQgLp3C0LQVkG7+Tf6Pv1CeNWZLyqMjhdPkBa5Lx7wYBeSu7uCSTA==} + peerDependencies: + '@types/react': '*' + '@types/react-dom': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + '@types/react-dom': + optional: true + + '@radix-ui/react-collection@1.1.0': + resolution: {integrity: sha512-GZsZslMJEyo1VKm5L1ZJY8tGDxZNPAoUeQUIbKeJfoi7Q4kmig5AsgLMYYuyYbfjd8fBmFORAIwYAkXMnXZgZw==} + peerDependencies: + '@types/react': '*' + '@types/react-dom': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + '@types/react-dom': + optional: true + + '@radix-ui/react-compose-refs@1.1.0': + resolution: {integrity: sha512-b4inOtiaOnYf9KWyO3jAeeCG6FeyfY6ldiEPanbUjWd+xIk5wZeHa8yVwmrJ2vderhu/BQvzCrJI0lHd+wIiqw==} + peerDependencies: + '@types/react': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + + '@radix-ui/react-context@1.1.0': + resolution: {integrity: sha512-OKrckBy+sMEgYM/sMmqmErVn0kZqrHPJze+Ql3DzYsDDp0hl0L62nx/2122/Bvps1qz645jlcu2tD9lrRSdf8A==} + peerDependencies: + '@types/react': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + + '@radix-ui/react-dialog@1.1.1': + resolution: {integrity: sha512-zysS+iU4YP3STKNS6USvFVqI4qqx8EpiwmT5TuCApVEBca+eRCbONi4EgzfNSuVnOXvC5UPHHMjs8RXO6DH9Bg==} + peerDependencies: + '@types/react': '*' + '@types/react-dom': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + '@types/react-dom': + optional: true + + '@radix-ui/react-direction@1.1.0': + resolution: {integrity: sha512-BUuBvgThEiAXh2DWu93XsT+a3aWrGqolGlqqw5VU1kG7p/ZH2cuDlM1sRLNnY3QcBS69UIz2mcKhMxDsdewhjg==} + peerDependencies: + '@types/react': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + + '@radix-ui/react-dismissable-layer@1.1.0': + resolution: {integrity: sha512-/UovfmmXGptwGcBQawLzvn2jOfM0t4z3/uKffoBlj724+n3FvBbZ7M0aaBOmkp6pqFYpO4yx8tSVJjx3Fl2jig==} + peerDependencies: + '@types/react': '*' + '@types/react-dom': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + '@types/react-dom': + optional: true + + '@radix-ui/react-dropdown-menu@2.1.1': + resolution: {integrity: sha512-y8E+x9fBq9qvteD2Zwa4397pUVhYsh9iq44b5RD5qu1GMJWBCBuVg1hMyItbc6+zH00TxGRqd9Iot4wzf3OoBQ==} + peerDependencies: + '@types/react': '*' + '@types/react-dom': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + '@types/react-dom': + optional: true + + '@radix-ui/react-focus-guards@1.1.0': + resolution: {integrity: sha512-w6XZNUPVv6xCpZUqb/yN9DL6auvpGX3C/ee6Hdi16v2UUy25HV2Q5bcflsiDyT/g5RwbPQ/GIT1vLkeRb+ITBw==} + peerDependencies: + '@types/react': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + + '@radix-ui/react-focus-scope@1.1.0': + resolution: {integrity: sha512-200UD8zylvEyL8Bx+z76RJnASR2gRMuxlgFCPAe/Q/679a/r0eK3MBVYMb7vZODZcffZBdob1EGnky78xmVvcA==} + peerDependencies: + '@types/react': '*' + '@types/react-dom': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + '@types/react-dom': + optional: true + + '@radix-ui/react-id@1.1.0': + resolution: {integrity: sha512-EJUrI8yYh7WOjNOqpoJaf1jlFIH2LvtgAl+YcFqNCa+4hj64ZXmPkAKOFs/ukjz3byN6bdb/AVUqHkI8/uWWMA==} + peerDependencies: + '@types/react': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + + '@radix-ui/react-menu@2.1.1': + resolution: {integrity: sha512-oa3mXRRVjHi6DZu/ghuzdylyjaMXLymx83irM7hTxutQbD+7IhPKdMdRHD26Rm+kHRrWcrUkkRPv5pd47a2xFQ==} + peerDependencies: + '@types/react': '*' + '@types/react-dom': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + '@types/react-dom': + optional: true + + '@radix-ui/react-popper@1.2.0': + resolution: {integrity: sha512-ZnRMshKF43aBxVWPWvbj21+7TQCvhuULWJ4gNIKYpRlQt5xGRhLx66tMp8pya2UkGHTSlhpXwmjqltDYHhw7Vg==} + peerDependencies: + '@types/react': '*' + '@types/react-dom': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + '@types/react-dom': + optional: true + + '@radix-ui/react-portal@1.1.1': + resolution: {integrity: sha512-A3UtLk85UtqhzFqtoC8Q0KvR2GbXF3mtPgACSazajqq6A41mEQgo53iPzY4i6BwDxlIFqWIhiQ2G729n+2aw/g==} + peerDependencies: + '@types/react': '*' + '@types/react-dom': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + '@types/react-dom': + optional: true + + '@radix-ui/react-presence@1.1.0': + resolution: {integrity: sha512-Gq6wuRN/asf9H/E/VzdKoUtT8GC9PQc9z40/vEr0VCJ4u5XvvhWIrSsCB6vD2/cH7ugTdSfYq9fLJCcM00acrQ==} + peerDependencies: + '@types/react': '*' + '@types/react-dom': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + '@types/react-dom': + optional: true + + '@radix-ui/react-primitive@2.0.0': + resolution: {integrity: sha512-ZSpFm0/uHa8zTvKBDjLFWLo8dkr4MBsiDLz0g3gMUwqgLHz9rTaRRGYDgvZPtBJgYCBKXkS9fzmoySgr8CO6Cw==} + peerDependencies: + '@types/react': '*' + '@types/react-dom': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + '@types/react-dom': + optional: true + + '@radix-ui/react-progress@1.1.0': + resolution: {integrity: sha512-aSzvnYpP725CROcxAOEBVZZSIQVQdHgBr2QQFKySsaD14u8dNT0batuXI+AAGDdAHfXH8rbnHmjYFqVJ21KkRg==} + peerDependencies: + '@types/react': '*' + '@types/react-dom': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + '@types/react-dom': + optional: true + + '@radix-ui/react-radio-group@1.2.0': + resolution: {integrity: sha512-yv+oiLaicYMBpqgfpSPw6q+RyXlLdIpQWDHZbUKURxe+nEh53hFXPPlfhfQQtYkS5MMK/5IWIa76SksleQZSzw==} + peerDependencies: + '@types/react': '*' + '@types/react-dom': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + '@types/react-dom': + optional: true + + '@radix-ui/react-roving-focus@1.1.0': + resolution: {integrity: sha512-EA6AMGeq9AEeQDeSH0aZgG198qkfHSbvWTf1HvoDmOB5bBG/qTxjYMWUKMnYiV6J/iP/J8MEFSuB2zRU2n7ODA==} + peerDependencies: + '@types/react': '*' + '@types/react-dom': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + '@types/react-dom': + optional: true + + '@radix-ui/react-select@2.1.1': + resolution: {integrity: sha512-8iRDfyLtzxlprOo9IicnzvpsO1wNCkuwzzCM+Z5Rb5tNOpCdMvcc2AkzX0Fz+Tz9v6NJ5B/7EEgyZveo4FBRfQ==} + peerDependencies: + '@types/react': '*' + '@types/react-dom': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + '@types/react-dom': + optional: true + + '@radix-ui/react-slot@1.1.0': + resolution: {integrity: sha512-FUCf5XMfmW4dtYl69pdS4DbxKy8nj4M7SafBgPllysxmdachynNflAdp/gCsnYWNDnge6tI9onzMp5ARYc1KNw==} + peerDependencies: + '@types/react': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + + '@radix-ui/react-switch@1.1.0': + resolution: {integrity: sha512-OBzy5WAj641k0AOSpKQtreDMe+isX0MQJ1IVyF03ucdF3DunOnROVrjWs8zsXUxC3zfZ6JL9HFVCUlMghz9dJw==} + peerDependencies: + '@types/react': '*' + '@types/react-dom': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + '@types/react-dom': + optional: true + + '@radix-ui/react-tabs@1.1.0': + resolution: {integrity: sha512-bZgOKB/LtZIij75FSuPzyEti/XBhJH52ExgtdVqjCIh+Nx/FW+LhnbXtbCzIi34ccyMsyOja8T0thCzoHFXNKA==} + peerDependencies: + '@types/react': '*' + '@types/react-dom': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + '@types/react-dom': + optional: true + + '@radix-ui/react-toast@1.2.1': + resolution: {integrity: sha512-5trl7piMXcZiCq7MW6r8YYmu0bK5qDpTWz+FdEPdKyft2UixkspheYbjbrLXVN5NGKHFbOP7lm8eD0biiSqZqg==} + peerDependencies: + '@types/react': '*' + '@types/react-dom': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + '@types/react-dom': + optional: true + + '@radix-ui/react-tooltip@1.1.2': + resolution: {integrity: sha512-9XRsLwe6Yb9B/tlnYCPVUd/TFS4J7HuOZW345DCeC6vKIxQGMZdx21RK4VoZauPD5frgkXTYVS5y90L+3YBn4w==} + peerDependencies: + '@types/react': '*' + '@types/react-dom': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + '@types/react-dom': + optional: true + + '@radix-ui/react-use-callback-ref@1.1.0': + resolution: {integrity: sha512-CasTfvsy+frcFkbXtSJ2Zu9JHpN8TYKxkgJGWbjiZhFivxaeW7rMeZt7QELGVLaYVfFMsKHjb7Ak0nMEe+2Vfw==} + peerDependencies: + '@types/react': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + + '@radix-ui/react-use-controllable-state@1.1.0': + resolution: {integrity: sha512-MtfMVJiSr2NjzS0Aa90NPTnvTSg6C/JLCV7ma0W6+OMV78vd8OyRpID+Ng9LxzsPbLeuBnWBA1Nq30AtBIDChw==} + peerDependencies: + '@types/react': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + + '@radix-ui/react-use-escape-keydown@1.1.0': + resolution: {integrity: sha512-L7vwWlR1kTTQ3oh7g1O0CBF3YCyyTj8NmhLR+phShpyA50HCfBFKVJTpshm9PzLiKmehsrQzTYTpX9HvmC9rhw==} + peerDependencies: + '@types/react': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + + '@radix-ui/react-use-layout-effect@1.1.0': + resolution: {integrity: sha512-+FPE0rOdziWSrH9athwI1R0HDVbWlEhd+FR+aSDk4uWGmSJ9Z54sdZVDQPZAinJhJXwfT+qnj969mCsT2gfm5w==} + peerDependencies: + '@types/react': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + + '@radix-ui/react-use-previous@1.1.0': + resolution: {integrity: sha512-Z/e78qg2YFnnXcW88A4JmTtm4ADckLno6F7OXotmkQfeuCVaKuYzqAATPhVzl3delXE7CxIV8shofPn3jPc5Og==} + peerDependencies: + '@types/react': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + + '@radix-ui/react-use-rect@1.1.0': + resolution: {integrity: sha512-0Fmkebhr6PiseyZlYAOtLS+nb7jLmpqTrJyv61Pe68MKYW6OWdRE2kI70TaYY27u7H0lajqM3hSMMLFq18Z7nQ==} + peerDependencies: + '@types/react': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + + '@radix-ui/react-use-size@1.1.0': + resolution: {integrity: sha512-XW3/vWuIXHa+2Uwcc2ABSfcCledmXhhQPlGbfcRXbiUQI5Icjcg19BGCZVKKInYbvUCut/ufbbLLPFC5cbb1hw==} + peerDependencies: + '@types/react': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + + '@radix-ui/react-visually-hidden@1.1.0': + resolution: {integrity: sha512-N8MDZqtgCgG5S3aV60INAB475osJousYpZ4cTJ2cFbMpdHS5Y6loLTH8LPtkj2QN0x93J30HT/M3qJXM0+lyeQ==} + peerDependencies: + '@types/react': '*' + '@types/react-dom': '*' + react: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + react-dom: ^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc + peerDependenciesMeta: + '@types/react': + optional: true + '@types/react-dom': + optional: true + + '@radix-ui/rect@1.1.0': + resolution: {integrity: sha512-A9+lCBZoaMJlVKcRBz2YByCG+Cp2t6nAnMnNba+XiWxnj6r4JUFqfsgwocMBZU9LPtdxC6wB56ySYpc7LQIoJg==} + + '@rollup/pluginutils@5.1.0': + resolution: {integrity: sha512-XTIWOPPcpvyKI6L1NHo0lFlCyznUEyPmPY1mc3KpPVDYulHSTvyeLNVW00QTLIAFNhR3kYnJTQHeGqU4M3n09g==} + engines: {node: '>=14.0.0'} + peerDependencies: + rollup: ^1.20.0||^2.0.0||^3.0.0||^4.0.0 + peerDependenciesMeta: + rollup: + optional: true + + '@rollup/rollup-android-arm-eabi@4.13.1': + resolution: {integrity: sha512-4C4UERETjXpC4WpBXDbkgNVgHyWfG3B/NKY46e7w5H134UDOFqUJKpsLm0UYmuupW+aJmRgeScrDNfvZ5WV80A==} + cpu: [arm] + os: [android] + + '@rollup/rollup-android-arm-eabi@4.21.3': + resolution: {integrity: sha512-MmKSfaB9GX+zXl6E8z4koOr/xU63AMVleLEa64v7R0QF/ZloMs5vcD1sHgM64GXXS1csaJutG+ddtzcueI/BLg==} + cpu: [arm] + os: [android] + + '@rollup/rollup-android-arm64@4.13.1': + resolution: {integrity: sha512-TrTaFJ9pXgfXEiJKQ3yQRelpQFqgRzVR9it8DbeRzG0RX7mKUy0bqhCFsgevwXLJepQKTnLl95TnPGf9T9AMOA==} + cpu: [arm64] + os: [android] + + '@rollup/rollup-android-arm64@4.21.3': + resolution: {integrity: sha512-zrt8ecH07PE3sB4jPOggweBjJMzI1JG5xI2DIsUbkA+7K+Gkjys6eV7i9pOenNSDJH3eOr/jLb/PzqtmdwDq5g==} + cpu: [arm64] + os: [android] + + '@rollup/rollup-darwin-arm64@4.13.1': + resolution: {integrity: sha512-fz7jN6ahTI3cKzDO2otQuybts5cyu0feymg0bjvYCBrZQ8tSgE8pc0sSNEuGvifrQJWiwx9F05BowihmLxeQKw==} + cpu: [arm64] + os: [darwin] + + '@rollup/rollup-darwin-arm64@4.21.3': + resolution: {integrity: sha512-P0UxIOrKNBFTQaXTxOH4RxuEBVCgEA5UTNV6Yz7z9QHnUJ7eLX9reOd/NYMO3+XZO2cco19mXTxDMXxit4R/eQ==} + cpu: [arm64] + os: [darwin] + + '@rollup/rollup-darwin-x64@4.13.1': + resolution: {integrity: sha512-WTvdz7SLMlJpektdrnWRUN9C0N2qNHwNbWpNo0a3Tod3gb9leX+yrYdCeB7VV36OtoyiPAivl7/xZ3G1z5h20g==} + cpu: [x64] + os: [darwin] + + '@rollup/rollup-darwin-x64@4.21.3': + resolution: {integrity: sha512-L1M0vKGO5ASKntqtsFEjTq/fD91vAqnzeaF6sfNAy55aD+Hi2pBI5DKwCO+UNDQHWsDViJLqshxOahXyLSh3EA==} + cpu: [x64] + os: [darwin] + + '@rollup/rollup-linux-arm-gnueabihf@4.13.1': + resolution: {integrity: sha512-dBHQl+7wZzBYcIF6o4k2XkAfwP2ks1mYW2q/Gzv9n39uDcDiAGDqEyml08OdY0BIct0yLSPkDTqn4i6czpBLLw==} + cpu: [arm] + os: [linux] + + '@rollup/rollup-linux-arm-gnueabihf@4.21.3': + resolution: {integrity: sha512-btVgIsCjuYFKUjopPoWiDqmoUXQDiW2A4C3Mtmp5vACm7/GnyuprqIDPNczeyR5W8rTXEbkmrJux7cJmD99D2g==} + cpu: [arm] + os: [linux] + + '@rollup/rollup-linux-arm-musleabihf@4.21.3': + resolution: {integrity: sha512-zmjbSphplZlau6ZTkxd3+NMtE4UKVy7U4aVFMmHcgO5CUbw17ZP6QCgyxhzGaU/wFFdTfiojjbLG3/0p9HhAqA==} + cpu: [arm] + os: [linux] + + '@rollup/rollup-linux-arm64-gnu@4.13.1': + resolution: {integrity: sha512-bur4JOxvYxfrAmocRJIW0SADs3QdEYK6TQ7dTNz6Z4/lySeu3Z1H/+tl0a4qDYv0bCdBpUYM0sYa/X+9ZqgfSQ==} + cpu: [arm64] + os: [linux] + + '@rollup/rollup-linux-arm64-gnu@4.21.3': + resolution: {integrity: sha512-nSZfcZtAnQPRZmUkUQwZq2OjQciR6tEoJaZVFvLHsj0MF6QhNMg0fQ6mUOsiCUpTqxTx0/O6gX0V/nYc7LrgPw==} + cpu: [arm64] + os: [linux] + + '@rollup/rollup-linux-arm64-musl@4.13.1': + resolution: {integrity: sha512-ssp77SjcDIUSoUyj7DU7/5iwM4ZEluY+N8umtCT9nBRs3u045t0KkW02LTyHouHDomnMXaXSZcCSr2bdMK63kA==} + cpu: [arm64] + os: [linux] + + '@rollup/rollup-linux-arm64-musl@4.21.3': + resolution: {integrity: sha512-MnvSPGO8KJXIMGlQDYfvYS3IosFN2rKsvxRpPO2l2cum+Z3exiExLwVU+GExL96pn8IP+GdH8Tz70EpBhO0sIQ==} + cpu: [arm64] + os: [linux] + + '@rollup/rollup-linux-powerpc64le-gnu@4.21.3': + resolution: {integrity: sha512-+W+p/9QNDr2vE2AXU0qIy0qQE75E8RTwTwgqS2G5CRQ11vzq0tbnfBd6brWhS9bCRjAjepJe2fvvkvS3dno+iw==} + cpu: [ppc64] + os: [linux] + + '@rollup/rollup-linux-riscv64-gnu@4.13.1': + resolution: {integrity: sha512-Jv1DkIvwEPAb+v25/Unrnnq9BO3F5cbFPT821n3S5litkz+O5NuXuNhqtPx5KtcwOTtaqkTsO+IVzJOsxd11aQ==} + cpu: [riscv64] + os: [linux] + + '@rollup/rollup-linux-riscv64-gnu@4.21.3': + resolution: {integrity: sha512-yXH6K6KfqGXaxHrtr+Uoy+JpNlUlI46BKVyonGiaD74ravdnF9BUNC+vV+SIuB96hUMGShhKV693rF9QDfO6nQ==} + cpu: [riscv64] + os: [linux] + + '@rollup/rollup-linux-s390x-gnu@4.13.1': + resolution: {integrity: sha512-U564BrhEfaNChdATQaEODtquCC7Ez+8Hxz1h5MAdMYj0AqD0GA9rHCpElajb/sQcaFL6NXmHc5O+7FXpWMa73Q==} + cpu: [s390x] + os: [linux] + + '@rollup/rollup-linux-s390x-gnu@4.21.3': + resolution: {integrity: sha512-R8cwY9wcnApN/KDYWTH4gV/ypvy9yZUHlbJvfaiXSB48JO3KpwSpjOGqO4jnGkLDSk1hgjYkTbTt6Q7uvPf8eg==} + cpu: [s390x] + os: [linux] + + '@rollup/rollup-linux-x64-gnu@4.13.1': + resolution: {integrity: sha512-zGRDulLTeDemR8DFYyFIQ8kMP02xpUsX4IBikc7lwL9PrwR3gWmX2NopqiGlI2ZVWMl15qZeUjumTwpv18N7sQ==} + cpu: [x64] + os: [linux] + + '@rollup/rollup-linux-x64-gnu@4.21.3': + resolution: {integrity: sha512-kZPbX/NOPh0vhS5sI+dR8L1bU2cSO9FgxwM8r7wHzGydzfSjLRCFAT87GR5U9scj2rhzN3JPYVC7NoBbl4FZ0g==} + cpu: [x64] + os: [linux] + + '@rollup/rollup-linux-x64-musl@4.13.1': + resolution: {integrity: sha512-VTk/MveyPdMFkYJJPCkYBw07KcTkGU2hLEyqYMsU4NjiOfzoaDTW9PWGRsNwiOA3qI0k/JQPjkl/4FCK1smskQ==} + cpu: [x64] + os: [linux] + + '@rollup/rollup-linux-x64-musl@4.21.3': + resolution: {integrity: sha512-S0Yq+xA1VEH66uiMNhijsWAafffydd2X5b77eLHfRmfLsRSpbiAWiRHV6DEpz6aOToPsgid7TI9rGd6zB1rhbg==} + cpu: [x64] + os: [linux] + + '@rollup/rollup-win32-arm64-msvc@4.13.1': + resolution: {integrity: sha512-L+hX8Dtibb02r/OYCsp4sQQIi3ldZkFI0EUkMTDwRfFykXBPptoz/tuuGqEd3bThBSLRWPR6wsixDSgOx/U3Zw==} + cpu: [arm64] + os: [win32] + + '@rollup/rollup-win32-arm64-msvc@4.21.3': + resolution: {integrity: sha512-9isNzeL34yquCPyerog+IMCNxKR8XYmGd0tHSV+OVx0TmE0aJOo9uw4fZfUuk2qxobP5sug6vNdZR6u7Mw7Q+Q==} + cpu: [arm64] + os: [win32] + + '@rollup/rollup-win32-ia32-msvc@4.13.1': + resolution: {integrity: sha512-+dI2jVPfM5A8zme8riEoNC7UKk0Lzc7jCj/U89cQIrOjrZTCWZl/+IXUeRT2rEZ5j25lnSA9G9H1Ob9azaF/KQ==} + cpu: [ia32] + os: [win32] + + '@rollup/rollup-win32-ia32-msvc@4.21.3': + resolution: {integrity: sha512-nMIdKnfZfzn1Vsk+RuOvl43ONTZXoAPUUxgcU0tXooqg4YrAqzfKzVenqqk2g5efWh46/D28cKFrOzDSW28gTA==} + cpu: [ia32] + os: [win32] + + '@rollup/rollup-win32-x64-msvc@4.13.1': + resolution: {integrity: sha512-YY1Exxo2viZ/O2dMHuwQvimJ0SqvL+OAWQLLY6rvXavgQKjhQUzn7nc1Dd29gjB5Fqi00nrBWctJBOyfVMIVxw==} + cpu: [x64] + os: [win32] + + '@rollup/rollup-win32-x64-msvc@4.21.3': + resolution: {integrity: sha512-fOvu7PCQjAj4eWDEuD8Xz5gpzFqXzGlxHZozHP4b9Jxv9APtdxL6STqztDzMLuRXEc4UpXGGhx029Xgm91QBeA==} + cpu: [x64] + os: [win32] + + '@svgr/babel-plugin-add-jsx-attribute@8.0.0': + resolution: {integrity: sha512-b9MIk7yhdS1pMCZM8VeNfUlSKVRhsHZNMl5O9SfaX0l0t5wjdgu4IDzGB8bpnGBBOjGST3rRFVsaaEtI4W6f7g==} + engines: {node: '>=14'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@svgr/babel-plugin-remove-jsx-attribute@8.0.0': + resolution: {integrity: sha512-BcCkm/STipKvbCl6b7QFrMh/vx00vIP63k2eM66MfHJzPr6O2U0jYEViXkHJWqXqQYjdeA9cuCl5KWmlwjDvbA==} + engines: {node: '>=14'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@svgr/babel-plugin-remove-jsx-empty-expression@8.0.0': + resolution: {integrity: sha512-5BcGCBfBxB5+XSDSWnhTThfI9jcO5f0Ai2V24gZpG+wXF14BzwxxdDb4g6trdOux0rhibGs385BeFMSmxtS3uA==} + engines: {node: '>=14'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@svgr/babel-plugin-replace-jsx-attribute-value@8.0.0': + resolution: {integrity: sha512-KVQ+PtIjb1BuYT3ht8M5KbzWBhdAjjUPdlMtpuw/VjT8coTrItWX6Qafl9+ji831JaJcu6PJNKCV0bp01lBNzQ==} + engines: {node: '>=14'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@svgr/babel-plugin-svg-dynamic-title@8.0.0': + resolution: {integrity: sha512-omNiKqwjNmOQJ2v6ge4SErBbkooV2aAWwaPFs2vUY7p7GhVkzRkJ00kILXQvRhA6miHnNpXv7MRnnSjdRjK8og==} + engines: {node: '>=14'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@svgr/babel-plugin-svg-em-dimensions@8.0.0': + resolution: {integrity: sha512-mURHYnu6Iw3UBTbhGwE/vsngtCIbHE43xCRK7kCw4t01xyGqb2Pd+WXekRRoFOBIY29ZoOhUCTEweDMdrjfi9g==} + engines: {node: '>=14'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@svgr/babel-plugin-transform-react-native-svg@8.1.0': + resolution: {integrity: sha512-Tx8T58CHo+7nwJ+EhUwx3LfdNSG9R2OKfaIXXs5soiy5HtgoAEkDay9LIimLOcG8dJQH1wPZp/cnAv6S9CrR1Q==} + engines: {node: '>=14'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@svgr/babel-plugin-transform-svg-component@8.0.0': + resolution: {integrity: sha512-DFx8xa3cZXTdb/k3kfPeaixecQLgKh5NVBMwD0AQxOzcZawK4oo1Jh9LbrcACUivsCA7TLG8eeWgrDXjTMhRmw==} + engines: {node: '>=12'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@svgr/babel-preset@8.1.0': + resolution: {integrity: sha512-7EYDbHE7MxHpv4sxvnVPngw5fuR6pw79SkcrILHJ/iMpuKySNCl5W1qcwPEpU+LgyRXOaAFgH0KhwD18wwg6ug==} + engines: {node: '>=14'} + peerDependencies: + '@babel/core': ^7.0.0-0 + + '@svgr/core@8.1.0': + resolution: {integrity: sha512-8QqtOQT5ACVlmsvKOJNEaWmRPmcojMOzCz4Hs2BGG/toAp/K38LcsMRyLp349glq5AzJbCEeimEoxaX6v/fLrA==} + engines: {node: '>=14'} + + '@svgr/hast-util-to-babel-ast@8.0.0': + resolution: {integrity: sha512-EbDKwO9GpfWP4jN9sGdYwPBU0kdomaPIL2Eu4YwmgP+sJeXT+L7bMwJUBnhzfH8Q2qMBqZ4fJwpCyYsAN3mt2Q==} + engines: {node: '>=14'} + + '@svgr/plugin-jsx@8.1.0': + resolution: {integrity: sha512-0xiIyBsLlr8quN+WyuxooNW9RJ0Dpr8uOnH/xrCVO8GLUcwHISwj1AG0k+LFzteTkAA0GbX0kj9q6Dk70PTiPA==} + engines: {node: '>=14'} + peerDependencies: + '@svgr/core': '*' + + '@types/babel__core@7.20.5': + resolution: {integrity: sha512-qoQprZvz5wQFJwMDqeseRXWv3rqMvhgpbXFfVyWhbx9X47POIA6i/+dXefEmZKoAgOaTdaIgNSMqMIU61yRyzA==} + + '@types/babel__generator@7.6.8': + resolution: {integrity: sha512-ASsj+tpEDsEiFr1arWrlN6V3mdfjRMZt6LtK/Vp/kreFLnr5QH5+DhvD5nINYZXzwJvXeGq+05iUXcAzVrqWtw==} + + '@types/babel__template@7.4.4': + resolution: {integrity: sha512-h/NUaSyG5EyxBIp8YRxo4RMe2/qQgvyowRwVMzhYhBCONbW8PUsg4lkFMrhgZhUe5z3L3MiLDuvyJ/CaPa2A8A==} + + '@types/babel__traverse@7.20.5': + resolution: {integrity: sha512-WXCyOcRtH37HAUkpXhUduaxdm82b4GSlyTqajXviN4EfiuPgNYR109xMCKvpl6zPIpua0DGlMEDCq+g8EdoheQ==} + + '@types/estree@1.0.5': + resolution: {integrity: sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw==} + + '@types/node@20.11.30': + resolution: {integrity: sha512-dHM6ZxwlmuZaRmUPfv1p+KrdD1Dci04FbdEm/9wEMouFqxYoFl5aMkt0VMAUtYRQDyYvD41WJLukhq/ha3YuTw==} + + '@types/node@22.7.5': + resolution: {integrity: sha512-jML7s2NAzMWc//QSJ1a3prpk78cOPchGvXJsC3C6R6PSMoooztvRVQEz89gmBTBY1SPMaqo5teB4uNHPdetShQ==} + + '@types/prop-types@15.7.13': + resolution: {integrity: sha512-hCZTSvwbzWGvhqxp/RqVqwU999pBf2vp7hzIjiYOsl8wqOmUxkQ6ddw1cV3l8811+kdUFus/q4d1Y3E3SyEifA==} + + '@types/react-dom@18.3.0': + resolution: {integrity: sha512-EhwApuTmMBmXuFOikhQLIBUn6uFg81SwLMOAUgodJF14SOBOCMdU04gDoYi0WOJJHD144TL32z4yDqCW3dnkQg==} + + '@types/react@18.3.7': + resolution: {integrity: sha512-KUnDCJF5+AiZd8owLIeVHqmW9yM4sqmDVf2JRJiBMFkGvkoZ4/WyV2lL4zVsoinmRS/W3FeEdZLEWFRofnT2FQ==} + + '@vanilla-extract/babel-plugin-debug-ids@1.0.5': + resolution: {integrity: sha512-Rc9A6ylsw7EBErmpgqCMvc/Z/eEZxI5k1xfLQHw7f5HHh3oc5YfzsAsYU/PdmSNjF1dp3sGEViBdDltvwnfVaA==} + + '@vanilla-extract/css@1.14.1': + resolution: {integrity: sha512-V4JUuHNjZgl64NGfkDJePqizkNgiSpphODtZEs4cCPuxLAzwOUJYATGpejwimJr1n529kq4DEKWexW22LMBokw==} + + '@vanilla-extract/integration@7.1.1': + resolution: {integrity: sha512-2JjDKL2HDTazis4oTkUFsQFUyw61k8oym9r0NOLSJC0JB0W25W1ryVZvDx74d3deIyB5AWbCselyzl3gja30kQ==} + + '@vanilla-extract/private@1.0.3': + resolution: {integrity: sha512-17kVyLq3ePTKOkveHxXuIJZtGYs+cSoev7BlP+Lf4916qfDhk/HBjvlYDe8egrea7LNPHKwSZJK/bzZC+Q6AwQ==} + + '@vanilla-extract/vite-plugin@4.0.6': + resolution: {integrity: sha512-uT2AhzxEC8qdn7SFxD/MHF7pxyFMb2e7HY3+isyPDzkTyIdiA/ZXk7qwWhcigFMNCJ6YuyxFQJmiDhP9U9oOmg==} + peerDependencies: + vite: ^4.0.3 || ^5.0.0 + + '@vitejs/plugin-react@4.2.1': + resolution: {integrity: sha512-oojO9IDc4nCUUi8qIR11KoQm0XFFLIwsRBwHRR4d/88IWghn1y6ckz/bJ8GHDCsYEJee8mDzqtJxh15/cisJNQ==} + engines: {node: ^14.18.0 || >=16.0.0} + peerDependencies: + vite: ^4.2.0 || ^5.0.0 + + acorn@8.11.3: + resolution: {integrity: sha512-Y9rRfJG5jcKOE0CLisYbojUjIrIEE7AGMzA/Sm4BslANhbS+cDMpgBdcPT91oJ7OuJ9hYJBx59RjbhxVnrF8Xg==} + engines: {node: '>=0.4.0'} + hasBin: true + + aes-js@4.0.0-beta.5: + resolution: {integrity: sha512-G965FqalsNyrPqgEGON7nIx1e/OVENSgiEIzyC63haUMuvNnwIgIjMs52hlTCKhkBny7A2ORNlfY9Zu+jmGk1Q==} + + ansi-styles@3.2.1: + resolution: {integrity: sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==} + engines: {node: '>=4'} + + ansi-styles@4.3.0: + resolution: {integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==} + engines: {node: '>=8'} + + argparse@2.0.1: + resolution: {integrity: sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==} + + aria-hidden@1.2.4: + resolution: {integrity: sha512-y+CcFFwelSXpLZk/7fMB2mUbGtX9lKycf1MWJ7CaTIERyitVlyQx6C+sxcROU2BAJ24OiZyK+8wj2i8AlBoS3A==} + engines: {node: '>=10'} + + browserslist@4.22.2: + resolution: {integrity: sha512-0UgcrvQmBDvZHFGdYUehrCNIazki7/lUP3kkoi/r3YB2amZbFM9J43ZRkJTXBUZK4gmx56+Sqk9+Vs9mwZx9+A==} + engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7} + hasBin: true + + cac@6.7.14: + resolution: {integrity: sha512-b6Ilus+c3RrdDk+JhLKUAQfzzgLEPy6wcXqS7f/xe1EETvsDP6GORG7SFuOs6cID5YkqchW/LXZbX5bc8j7ZcQ==} + engines: {node: '>=8'} + + callsites@3.1.0: + resolution: {integrity: sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==} + engines: {node: '>=6'} + + camelcase@6.3.0: + resolution: {integrity: sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==} + engines: {node: '>=10'} + + caniuse-lite@1.0.30001579: + resolution: {integrity: sha512-u5AUVkixruKHJjw/pj9wISlcMpgFWzSrczLZbrqBSxukQixmg0SJ5sZTpvaFvxU0HoQKd4yoyAogyrAz9pzJnA==} + + chalk@2.4.2: + resolution: {integrity: sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==} + engines: {node: '>=4'} + + chalk@4.1.2: + resolution: {integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==} + engines: {node: '>=10'} + + color-convert@1.9.3: + resolution: {integrity: sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==} + + color-convert@2.0.1: + resolution: {integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==} + engines: {node: '>=7.0.0'} + + color-name@1.1.3: + resolution: {integrity: sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==} + + color-name@1.1.4: + resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==} + + convert-source-map@2.0.0: + resolution: {integrity: sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==} + + cosmiconfig@8.3.6: + resolution: {integrity: sha512-kcZ6+W5QzcJ3P1Mt+83OUv/oHFqZHIx8DuxG6eZ5RGMERoLqp4BuGjhHLYGK+Kf5XVkQvqBSmAy/nGWN3qDgEA==} + engines: {node: '>=14'} + peerDependencies: + typescript: '>=4.9.5' + peerDependenciesMeta: + typescript: + optional: true + + css-what@6.1.0: + resolution: {integrity: sha512-HTUrgRJ7r4dsZKU6GjmpfRK1O76h97Z8MfS1G0FozR+oF2kG6Vfe8JE6zwrkbxigziPHinCJ+gCPjA9EaBDtRw==} + engines: {node: '>= 6'} + + cssesc@3.0.0: + resolution: {integrity: sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==} + engines: {node: '>=4'} + hasBin: true + + csstype@3.1.3: + resolution: {integrity: sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==} + + debug@4.3.4: + resolution: {integrity: sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==} + engines: {node: '>=6.0'} + peerDependencies: + supports-color: '*' + peerDependenciesMeta: + supports-color: + optional: true + + deep-object-diff@1.1.9: + resolution: {integrity: sha512-Rn+RuwkmkDwCi2/oXOFS9Gsr5lJZu/yTGpK7wAaAIE75CC+LCGEZHpY6VQJa/RoJcrmaA/docWJZvYohlNkWPA==} + + deepmerge@4.3.1: + resolution: {integrity: sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==} + engines: {node: '>=0.10.0'} + + detect-node-es@1.1.0: + resolution: {integrity: sha512-ypdmJU/TbBby2Dxibuv7ZLW3Bs1QEmM7nHjEANfohJLvE0XVujisn1qPJcZxg+qDucsr+bP6fLD1rPS3AhJ7EQ==} + + dot-case@3.0.4: + resolution: {integrity: sha512-Kv5nKlh6yRrdrGvxeJ2e5y2eRUpkUosIW4A2AS38zwSz27zu7ufDwQPi5Jhs3XAlGNetl3bmnGhQsMtkKJnj3w==} + + electron-to-chromium@1.4.638: + resolution: {integrity: sha512-gpmbAG2LbfPKcDaL5m9IKutKjUx4ZRkvGNkgL/8nKqxkXsBVYykVULboWlqCrHsh3razucgDJDuKoWJmGPdItA==} + + entities@4.5.0: + resolution: {integrity: sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==} + engines: {node: '>=0.12'} + + error-ex@1.3.2: + resolution: {integrity: sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==} + + esbuild@0.19.12: + resolution: {integrity: sha512-aARqgq8roFBj054KvQr5f1sFu0D65G+miZRCuJyJ0G13Zwx7vRar5Zhn2tkQNzIXcBrNVsv/8stehpj+GAjgbg==} + engines: {node: '>=12'} + hasBin: true + + esbuild@0.20.2: + resolution: {integrity: sha512-WdOOppmUNU+IbZ0PaDiTst80zjnrOkyJNHoKupIcVyU8Lvla3Ugx94VzkQ32Ijqd7UhHJy75gNWDMUekcrSJ6g==} + engines: {node: '>=12'} + hasBin: true + + escalade@3.1.1: + resolution: {integrity: sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==} + engines: {node: '>=6'} + + escape-string-regexp@1.0.5: + resolution: {integrity: sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==} + engines: {node: '>=0.8.0'} + + estree-walker@2.0.2: + resolution: {integrity: sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==} + + ethers@6.13.4: + resolution: {integrity: sha512-21YtnZVg4/zKkCQPjrDj38B1r4nQvTZLopUGMLQ1ePU2zV/joCfDC3t3iKQjWRzjjjbzR+mdAIoikeBRNkdllA==} + engines: {node: '>=14.0.0'} + + eval@0.1.8: + resolution: {integrity: sha512-EzV94NYKoO09GLXGjXj9JIlXijVck4ONSr5wiCWDvhsvj5jxSrzTmRU/9C1DyB6uToszLs8aifA6NQ7lEQdvFw==} + engines: {node: '>= 0.8'} + + eventemitter2@6.4.9: + resolution: {integrity: sha512-JEPTiaOt9f04oa6NOkc4aH+nVp5I3wEjpHbIPqfgCdD5v5bUzy7xQqwcVO2aDQgOWhI28da57HksMrzK9HlRxg==} + + find-up@5.0.0: + resolution: {integrity: sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==} + engines: {node: '>=10'} + + framer-motion@9.0.1: + resolution: {integrity: sha512-0EP7+b/hnsbrFOum9zU+23Fq2cJJrLOqv/yJ26fIzK4CC33ZAjXZGi1/XyblbgnUF0cxZ/SEDj5IYHeQo42qNg==} + peerDependencies: + react: ^18.0.0 + react-dom: ^18.0.0 + + fsevents@2.3.3: + resolution: {integrity: sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==} + engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0} + os: [darwin] + + gensync@1.0.0-beta.2: + resolution: {integrity: sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==} + engines: {node: '>=6.9.0'} + + get-nonce@1.0.1: + resolution: {integrity: sha512-FJhYRoDaiatfEkUK8HKlicmu/3SGFD51q3itKDGoSTysQJBnfOcxU5GxnhE1E6soB76MbT0MBtnKJuXyAx+96Q==} + engines: {node: '>=6'} + + globals@11.12.0: + resolution: {integrity: sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==} + engines: {node: '>=4'} + + globrex@0.1.2: + resolution: {integrity: sha512-uHJgbwAMwNFf5mLst7IWLNg14x1CkeqglJb/K3doi4dw6q2IvAAmM/Y81kevy83wP+Sst+nutFTYOGg3d1lsxg==} + + has-flag@3.0.0: + resolution: {integrity: sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==} + engines: {node: '>=4'} + + has-flag@4.0.0: + resolution: {integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==} + engines: {node: '>=8'} + + hey-listen@1.0.8: + resolution: {integrity: sha512-COpmrF2NOg4TBWUJ5UVyaCU2A88wEMkUPK4hNqyCkqHbxT92BbvfjoSozkAIIm6XhicGlJHhFdullInrdhwU8Q==} + + idb@7.1.1: + resolution: {integrity: sha512-gchesWBzyvGHRO9W8tzUWFDycow5gwjvFKfyV9FF32Y7F50yZMp7mP+T2mJIWFx49zicqyC4uefHM17o6xKIVQ==} + + import-fresh@3.3.0: + resolution: {integrity: sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==} + engines: {node: '>=6'} + + invariant@2.2.4: + resolution: {integrity: sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==} + + is-arrayish@0.2.1: + resolution: {integrity: sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==} + + javascript-stringify@2.1.0: + resolution: {integrity: sha512-JVAfqNPTvNq3sB/VHQJAFxN/sPgKnsKrCwyRt15zwNCdrMMJDdcEOdubuy+DuJYYdm0ox1J4uzEuYKkN+9yhVg==} + + js-base64@3.7.7: + resolution: {integrity: sha512-7rCnleh0z2CkXhH67J8K1Ytz0b2Y+yxTPL+/KOJoa20hfnVQ/3/T6W/KflYI4bRHRagNeXeU2bkNGI3v1oS/lw==} + + js-tokens@4.0.0: + resolution: {integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==} + + js-yaml@4.1.0: + resolution: {integrity: sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==} + hasBin: true + + jsesc@2.5.2: + resolution: {integrity: sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==} + engines: {node: '>=4'} + hasBin: true + + json-parse-even-better-errors@2.3.1: + resolution: {integrity: sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==} + + json5@2.2.3: + resolution: {integrity: sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==} + engines: {node: '>=6'} + hasBin: true + + jsonc-parser@3.2.1: + resolution: {integrity: sha512-AilxAyFOAcK5wA1+LeaySVBrHsGQvUFCDWXKpZjzaL0PqW+xfBOttn8GNtWKFWqneyMZj41MWF9Kl6iPWLwgOA==} + + lines-and-columns@1.2.4: + resolution: {integrity: sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==} + + locate-path@6.0.0: + resolution: {integrity: sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==} + engines: {node: '>=10'} + + lodash@4.17.21: + resolution: {integrity: sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==} + + loose-envify@1.4.0: + resolution: {integrity: sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==} + hasBin: true + + lower-case@2.0.2: + resolution: {integrity: sha512-7fm3l3NAF9WfN6W3JOmf5drwpVqX78JtoGJ3A6W0a6ZnldM41w2fV5D490psKFTpMds8TJse/eHLFFsNHHjHgg==} + + lru-cache@5.1.1: + resolution: {integrity: sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==} + + media-query-parser@2.0.2: + resolution: {integrity: sha512-1N4qp+jE0pL5Xv4uEcwVUhIkwdUO3S/9gML90nqKA7v7FcOS5vUtatfzok9S9U1EJU8dHWlcv95WLnKmmxZI9w==} + + mlly@1.6.1: + resolution: {integrity: sha512-vLgaHvaeunuOXHSmEbZ9izxPx3USsk8KCQ8iC+aTlp5sKRSoZvwhHh5L9VbKSaVC6sJDqbyohIS76E2VmHIPAA==} + + modern-ahocorasick@1.0.1: + resolution: {integrity: sha512-yoe+JbhTClckZ67b2itRtistFKf8yPYelHLc7e5xAwtNAXxM6wJTUx2C7QeVSJFDzKT7bCIFyBVybPMKvmB9AA==} + + ms@2.1.2: + resolution: {integrity: sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==} + + nanoid@3.3.7: + resolution: {integrity: sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==} + engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} + hasBin: true + + no-case@3.0.4: + resolution: {integrity: sha512-fgAN3jGAh+RoxUGZHTSOLJIqUc2wmoBwGR4tbpNAKmmovFoWq0OdRkb0VkldReO2a2iBT/OEulG9XSUc10r3zg==} + + node-releases@2.0.14: + resolution: {integrity: sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw==} + + outdent@0.8.0: + resolution: {integrity: sha512-KiOAIsdpUTcAXuykya5fnVVT+/5uS0Q1mrkRHcF89tpieSmY33O/tmc54CqwA+bfhbtEfZUNLHaPUiB9X3jt1A==} + + p-limit@3.1.0: + resolution: {integrity: sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==} + engines: {node: '>=10'} + + p-locate@5.0.0: + resolution: {integrity: sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==} + engines: {node: '>=10'} + + parent-module@1.0.1: + resolution: {integrity: sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==} + engines: {node: '>=6'} + + parse-json@5.2.0: + resolution: {integrity: sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==} + engines: {node: '>=8'} + + path-exists@4.0.0: + resolution: {integrity: sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==} + engines: {node: '>=8'} + + path-type@4.0.0: + resolution: {integrity: sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==} + engines: {node: '>=8'} + + pathe@1.1.2: + resolution: {integrity: sha512-whLdWMYL2TwI08hn8/ZqAbrVemu0LNaNNJZX73O6qaIdCTfXutsLhMkjdENX0qhsQ9uIimo4/aQOmXkoon2nDQ==} + + picocolors@1.0.0: + resolution: {integrity: sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==} + + picomatch@2.3.1: + resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==} + engines: {node: '>=8.6'} + + pkg-types@1.0.3: + resolution: {integrity: sha512-nN7pYi0AQqJnoLPC9eHFQ8AcyaixBUOwvqc5TDnIKCMEE6I0y8P7OKA7fPexsXGCGxQDl/cmrLAp26LhcwxZ4A==} + + postcss@8.4.38: + resolution: {integrity: sha512-Wglpdk03BSfXkHoQa3b/oulrotAkwrlLDRSOb9D0bN86FdRyE9lppSp33aHNPgBa0JKCoB+drFLZkQoRRYae5A==} + engines: {node: ^10 || ^12 || >=14} + + react-dom@18.3.1: + resolution: {integrity: sha512-5m4nQKp+rZRb09LNH59GM4BxTh9251/ylbKIbpe7TpGxfJ+9kv6BLkLBXIjjspbgbnIBNqlI23tRnTWT0snUIw==} + peerDependencies: + react: ^18.3.1 + + react-hook-form@7.53.0: + resolution: {integrity: sha512-M1n3HhqCww6S2hxLxciEXy2oISPnAzxY7gvwVPrtlczTM/1dDadXgUxDpHMrMTblDOcm/AXtXxHwZ3jpg1mqKQ==} + engines: {node: '>=18.0.0'} + peerDependencies: + react: ^16.8.0 || ^17 || ^18 || ^19 + + react-refresh@0.14.0: + resolution: {integrity: sha512-wViHqhAd8OHeLS/IRMJjTSDHF3U9eWi62F/MledQGPdJGDhodXJ9PBLNGr6WWL7qlH12Mt3TyTpbS+hGXMjCzQ==} + engines: {node: '>=0.10.0'} + + react-remove-scroll-bar@2.3.6: + resolution: {integrity: sha512-DtSYaao4mBmX+HDo5YWYdBWQwYIQQshUV/dVxFxK+KM26Wjwp1gZ6rv6OC3oujI6Bfu6Xyg3TwK533AQutsn/g==} + engines: {node: '>=10'} + peerDependencies: + '@types/react': ^16.8.0 || ^17.0.0 || ^18.0.0 + react: ^16.8.0 || ^17.0.0 || ^18.0.0 + peerDependenciesMeta: + '@types/react': + optional: true + + react-remove-scroll@2.5.7: + resolution: {integrity: sha512-FnrTWO4L7/Bhhf3CYBNArEG/yROV0tKmTv7/3h9QCFvH6sndeFf1wPqOcbFVu5VAulS5dV1wGT3GZZ/1GawqiA==} + engines: {node: '>=10'} + peerDependencies: + '@types/react': ^16.8.0 || ^17.0.0 || ^18.0.0 + react: ^16.8.0 || ^17.0.0 || ^18.0.0 + peerDependenciesMeta: + '@types/react': + optional: true + + react-style-singleton@2.2.1: + resolution: {integrity: sha512-ZWj0fHEMyWkHzKYUr2Bs/4zU6XLmq9HsgBURm7g5pAVfyn49DgUiNgY2d4lXRlYSiCif9YBGpQleewkcqddc7g==} + engines: {node: '>=10'} + peerDependencies: + '@types/react': ^16.8.0 || ^17.0.0 || ^18.0.0 + react: ^16.8.0 || ^17.0.0 || ^18.0.0 + peerDependenciesMeta: + '@types/react': + optional: true + + react@18.3.1: + resolution: {integrity: sha512-wS+hAgJShR0KhEvPJArfuPVN1+Hz1t0Y6n5jLrGQbkb4urgPE/0Rve+1kMB1v/oWgHgm4WIcV+i7F2pTVj+2iQ==} + engines: {node: '>=0.10.0'} + + regenerator-runtime@0.14.1: + resolution: {integrity: sha512-dYnhHh0nJoMfnkZs6GmmhFknAGRrLznOu5nc9ML+EJxGvrx6H7teuevqVqCuPcPK//3eDrrjQhehXVx9cnkGdw==} + + require-like@0.1.2: + resolution: {integrity: sha512-oyrU88skkMtDdauHDuKVrgR+zuItqr6/c//FXzvmxRGMexSDc6hNvJInGW3LL46n+8b50RykrvwSUIIQH2LQ5A==} + + resolve-from@4.0.0: + resolution: {integrity: sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==} + engines: {node: '>=4'} + + rollup@4.13.1: + resolution: {integrity: sha512-hFi+fU132IvJ2ZuihN56dwgpltpmLZHZWsx27rMCTZ2sYwrqlgL5sECGy1eeV2lAihD8EzChBVVhsXci0wD4Tg==} + engines: {node: '>=18.0.0', npm: '>=8.0.0'} + hasBin: true + + rollup@4.21.3: + resolution: {integrity: sha512-7sqRtBNnEbcBtMeRVc6VRsJMmpI+JU1z9VTvW8D4gXIYQFz0aLcsE6rRkyghZkLfEgUZgVvOG7A5CVz/VW5GIA==} + engines: {node: '>=18.0.0', npm: '>=8.0.0'} + hasBin: true + + scheduler@0.23.2: + resolution: {integrity: sha512-UOShsPwz7NrMUqhR6t0hWjFduvOzbtv7toDH1/hIrfRNIDBnnBWd0CwJTGvTpngVlmwGCdP9/Zl/tVrDqcuYzQ==} + + semver@6.3.1: + resolution: {integrity: sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==} + hasBin: true + + snake-case@3.0.4: + resolution: {integrity: sha512-LAOh4z89bGQvl9pFfNF8V146i7o7/CqFPbqzYgP+yYzDIDeS9HaNFtXABamRW+AQzEVODcvE79ljJ+8a9YSdMg==} + + source-map-js@1.2.0: + resolution: {integrity: sha512-itJW8lvSA0TXEphiRoawsCksnlf8SyvmFzIhltqAHluXd88pkCd+cXJVHTDwdCr0IzwptSm035IHQktUu1QUMg==} + engines: {node: '>=0.10.0'} + + supports-color@5.5.0: + resolution: {integrity: sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==} + engines: {node: '>=4'} + + supports-color@7.2.0: + resolution: {integrity: sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==} + engines: {node: '>=8'} + + svg-parser@2.0.4: + resolution: {integrity: sha512-e4hG1hRwoOdRb37cIMSgzNsxyzKfayW6VOflrwvR+/bzrkyxY/31WkbgnQpgtrNp1SdpJvpUAGTa/ZoiPNDuRQ==} + + to-fast-properties@2.0.0: + resolution: {integrity: sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==} + engines: {node: '>=4'} + + tsconfck@3.0.3: + resolution: {integrity: sha512-4t0noZX9t6GcPTfBAbIbbIU4pfpCwh0ueq3S4O/5qXI1VwK1outmxhe9dOiEWqMz3MW2LKgDTpqWV+37IWuVbA==} + engines: {node: ^18 || >=20} + hasBin: true + peerDependencies: + typescript: ^5.0.0 + peerDependenciesMeta: + typescript: + optional: true + + tslib@2.6.1: + resolution: {integrity: sha512-t0hLfiEKfMUoqhG+U1oid7Pva4bbDPHYfJNiB7BiIjRkj1pyC++4N3huJfqY6aRH6VTB0rvtzQwjM4K6qpfOig==} + + tslib@2.6.2: + resolution: {integrity: sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==} + + tslib@2.7.0: + resolution: {integrity: sha512-gLXCKdN1/j47AiHiOkJN69hJmcbGTHI0ImLmbYLHykhgeN0jVGola9yVjFgzCUklsZQMW55o+dW7IXv3RCXDzA==} + + typescript@4.5.5: + resolution: {integrity: sha512-TCTIul70LyWe6IJWT8QSYeA54WQe8EjQFU4wY52Fasj5UKx88LNYKCgBEHcOMOrFF1rKGbD8v/xcNWVUq9SymA==} + engines: {node: '>=4.2.0'} + hasBin: true + + ufo@1.5.3: + resolution: {integrity: sha512-Y7HYmWaFwPUmkoQCUIAYpKqkOf+SbVj/2fJJZ4RJMCfZp0rTGwRbzQD+HghfnhKOjL9E01okqz+ncJskGYfBNw==} + + undici-types@5.26.5: + resolution: {integrity: sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==} + + undici-types@6.19.8: + resolution: {integrity: sha512-ve2KP6f/JnbPBFyobGHuerC9g1FYGn/F8n1LWTwNxCEzd6IfqTwUQcNXgEtmmQ6DlRrC1hrSrBnCZPokRrDHjw==} + + update-browserslist-db@1.0.13: + resolution: {integrity: sha512-xebP81SNcPuNpPP3uzeW1NYXxI3rxyJzF3pD6sH4jE7o/IX+WtSpwnVU+qIsDPyk0d3hmFQ7mjqc6AtV604hbg==} + hasBin: true + peerDependencies: + browserslist: '>= 4.21.0' + + use-callback-ref@1.3.2: + resolution: {integrity: sha512-elOQwe6Q8gqZgDA8mrh44qRTQqpIHDcZ3hXTLjBe1i4ph8XpNJnO+aQf3NaG+lriLopI4HMx9VjQLfPQ6vhnoA==} + engines: {node: '>=10'} + peerDependencies: + '@types/react': ^16.8.0 || ^17.0.0 || ^18.0.0 + react: ^16.8.0 || ^17.0.0 || ^18.0.0 + peerDependenciesMeta: + '@types/react': + optional: true + + use-sidecar@1.1.2: + resolution: {integrity: sha512-epTbsLuzZ7lPClpz2TyryBfztm7m+28DlEv2ZCQ3MDr5ssiwyOwGH/e5F9CkfWjJ1t4clvI58yF822/GUkjjhw==} + engines: {node: '>=10'} + peerDependencies: + '@types/react': ^16.9.0 || ^17.0.0 || ^18.0.0 + react: ^16.8.0 || ^17.0.0 || ^18.0.0 + peerDependenciesMeta: + '@types/react': + optional: true + + vite-node@1.4.0: + resolution: {integrity: sha512-VZDAseqjrHgNd4Kh8icYHWzTKSCZMhia7GyHfhtzLW33fZlG9SwsB6CEhgyVOWkJfJ2pFLrp/Gj1FSfAiqH9Lw==} + engines: {node: ^18.0.0 || >=20.0.0} + hasBin: true + + vite-plugin-svgr@4.2.0: + resolution: {integrity: sha512-SC7+FfVtNQk7So0XMjrrtLAbEC8qjFPifyD7+fs/E6aaNdVde6umlVVh0QuwDLdOMu7vp5RiGFsB70nj5yo0XA==} + peerDependencies: + vite: ^2.6.0 || 3 || 4 || 5 + + vite-tsconfig-paths@4.3.2: + resolution: {integrity: sha512-0Vd/a6po6Q+86rPlntHye7F31zA2URZMbH8M3saAZ/xR9QoGN/L21bxEGfXdWmFdNkqPpRdxFT7nmNe12e9/uA==} + peerDependencies: + vite: '*' + peerDependenciesMeta: + vite: + optional: true + + vite@5.2.6: + resolution: {integrity: sha512-FPtnxFlSIKYjZ2eosBQamz4CbyrTizbZ3hnGJlh/wMtCrlp1Hah6AzBLjGI5I2urTfNnpovpHdrL6YRuBOPnCA==} + engines: {node: ^18.0.0 || >=20.0.0} + hasBin: true + peerDependencies: + '@types/node': ^18.0.0 || >=20.0.0 + less: '*' + lightningcss: ^1.21.0 + sass: '*' + stylus: '*' + sugarss: '*' + terser: ^5.4.0 + peerDependenciesMeta: + '@types/node': + optional: true + less: + optional: true + lightningcss: + optional: true + sass: + optional: true + stylus: + optional: true + sugarss: + optional: true + terser: + optional: true + + webextension-polyfill@0.10.0: + resolution: {integrity: sha512-c5s35LgVa5tFaHhrZDnr3FpQpjj1BB+RXhLTYUxGqBVN460HkbM8TBtEqdXWbpTKfzwCcjAZVF7zXCYSKtcp9g==} + + ws@8.17.1: + resolution: {integrity: sha512-6XQFvXTkbfUOZOKKILFG1PDK2NDQs4azKQl26T0YS5CxqWLgXajbPZ+h4gZekJyRqFU8pvnbAbbs/3TgRPy+GQ==} + engines: {node: '>=10.0.0'} + peerDependencies: + bufferutil: ^4.0.1 + utf-8-validate: '>=5.0.2' + peerDependenciesMeta: + bufferutil: + optional: true + utf-8-validate: + optional: true + + yallist@3.1.1: + resolution: {integrity: sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==} + + yocto-queue@0.1.0: + resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==} + engines: {node: '>=10'} + +snapshots: + + 0xsequence@2.2.3(ethers@6.13.4): + dependencies: + '@0xsequence/abi': 2.2.3 + '@0xsequence/account': 2.2.3(ethers@6.13.4) + '@0xsequence/api': 2.2.3 + '@0xsequence/auth': 2.2.3(ethers@6.13.4) + '@0xsequence/core': 2.2.3(ethers@6.13.4) + '@0xsequence/guard': 2.2.3(ethers@6.13.4) + '@0xsequence/indexer': 2.2.3 + '@0xsequence/metadata': 2.2.3 + '@0xsequence/migration': 2.2.3(ethers@6.13.4) + '@0xsequence/network': 2.2.3(ethers@6.13.4) + '@0xsequence/provider': 2.2.3(ethers@6.13.4) + '@0xsequence/relayer': 2.2.3(ethers@6.13.4) + '@0xsequence/sessions': 2.2.3(ethers@6.13.4) + '@0xsequence/signhub': 2.2.3(ethers@6.13.4) + '@0xsequence/utils': 2.2.3(ethers@6.13.4) + '@0xsequence/wallet': 2.2.3(ethers@6.13.4) + ethers: 6.13.4 + + '@0xsequence/abi@2.2.13': {} + + '@0xsequence/abi@2.2.3': {} + + '@0xsequence/account@2.2.13(ethers@6.13.4)': + dependencies: + '@0xsequence/abi': 2.2.13 + '@0xsequence/core': 2.2.13(ethers@6.13.4) + '@0xsequence/migration': 2.2.13(ethers@6.13.4) + '@0xsequence/network': 2.2.13(ethers@6.13.4) + '@0xsequence/relayer': 2.2.13(ethers@6.13.4) + '@0xsequence/sessions': 2.2.13(ethers@6.13.4) + '@0xsequence/utils': 2.2.13(ethers@6.13.4) + '@0xsequence/wallet': 2.2.13(ethers@6.13.4) + ethers: 6.13.4 + + '@0xsequence/account@2.2.3(ethers@6.13.4)': + dependencies: + '@0xsequence/abi': 2.2.3 + '@0xsequence/core': 2.2.3(ethers@6.13.4) + '@0xsequence/migration': 2.2.3(ethers@6.13.4) + '@0xsequence/network': 2.2.3(ethers@6.13.4) + '@0xsequence/relayer': 2.2.3(ethers@6.13.4) + '@0xsequence/sessions': 2.2.3(ethers@6.13.4) + '@0xsequence/utils': 2.2.3(ethers@6.13.4) + '@0xsequence/wallet': 2.2.3(ethers@6.13.4) + ethers: 6.13.4 + + '@0xsequence/api@2.2.13': {} + + '@0xsequence/api@2.2.3': {} + + '@0xsequence/auth@2.2.13(ethers@6.13.4)': + dependencies: + '@0xsequence/abi': 2.2.13 + '@0xsequence/account': 2.2.13(ethers@6.13.4) + '@0xsequence/api': 2.2.13 + '@0xsequence/core': 2.2.13(ethers@6.13.4) + '@0xsequence/ethauth': 1.0.0(ethers@6.13.4) + '@0xsequence/indexer': 2.2.13 + '@0xsequence/metadata': 2.2.13 + '@0xsequence/migration': 2.2.13(ethers@6.13.4) + '@0xsequence/network': 2.2.13(ethers@6.13.4) + '@0xsequence/sessions': 2.2.13(ethers@6.13.4) + '@0xsequence/signhub': 2.2.13(ethers@6.13.4) + '@0xsequence/utils': 2.2.13(ethers@6.13.4) + '@0xsequence/wallet': 2.2.13(ethers@6.13.4) + ethers: 6.13.4 + + '@0xsequence/auth@2.2.3(ethers@6.13.4)': + dependencies: + '@0xsequence/abi': 2.2.3 + '@0xsequence/account': 2.2.3(ethers@6.13.4) + '@0xsequence/api': 2.2.3 + '@0xsequence/core': 2.2.3(ethers@6.13.4) + '@0xsequence/ethauth': 1.0.0(ethers@6.13.4) + '@0xsequence/indexer': 2.2.3 + '@0xsequence/metadata': 2.2.3 + '@0xsequence/migration': 2.2.3(ethers@6.13.4) + '@0xsequence/network': 2.2.3(ethers@6.13.4) + '@0xsequence/sessions': 2.2.3(ethers@6.13.4) + '@0xsequence/signhub': 2.2.3(ethers@6.13.4) + '@0xsequence/utils': 2.2.3(ethers@6.13.4) + '@0xsequence/wallet': 2.2.3(ethers@6.13.4) + ethers: 6.13.4 + + '@0xsequence/core@2.2.13(ethers@6.13.4)': + dependencies: + '@0xsequence/abi': 2.2.13 + '@0xsequence/utils': 2.2.13(ethers@6.13.4) + ethers: 6.13.4 + + '@0xsequence/core@2.2.3(ethers@6.13.4)': + dependencies: + '@0xsequence/abi': 2.2.3 + '@0xsequence/utils': 2.2.3(ethers@6.13.4) + ethers: 6.13.4 + + '@0xsequence/design-system@1.8.1(@types/react-dom@18.3.0)(@types/react@18.3.7)(framer-motion@9.0.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + dependencies: + '@radix-ui/react-aspect-ratio': 1.1.0(@types/react-dom@18.3.0)(@types/react@18.3.7)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-checkbox': 1.1.1(@types/react-dom@18.3.0)(@types/react@18.3.7)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-collapsible': 1.1.0(@types/react-dom@18.3.0)(@types/react@18.3.7)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-dialog': 1.1.1(@types/react-dom@18.3.0)(@types/react@18.3.7)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-dropdown-menu': 2.1.1(@types/react-dom@18.3.0)(@types/react@18.3.7)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-progress': 1.1.0(@types/react-dom@18.3.0)(@types/react@18.3.7)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-radio-group': 1.2.0(@types/react-dom@18.3.0)(@types/react@18.3.7)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-select': 2.1.1(@types/react-dom@18.3.0)(@types/react@18.3.7)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-switch': 1.1.0(@types/react-dom@18.3.0)(@types/react@18.3.7)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-tabs': 1.1.0(@types/react-dom@18.3.0)(@types/react@18.3.7)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-toast': 1.2.1(@types/react-dom@18.3.0)(@types/react@18.3.7)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-tooltip': 1.1.2(@types/react-dom@18.3.0)(@types/react@18.3.7)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-visually-hidden': 1.1.0(@types/react-dom@18.3.0)(@types/react@18.3.7)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + framer-motion: 9.0.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + react: 18.3.1 + react-dom: 18.3.1(react@18.3.1) + react-hook-form: 7.53.0(react@18.3.1) + transitivePeerDependencies: + - '@types/react' + - '@types/react-dom' + + '@0xsequence/ethauth@1.0.0(ethers@6.13.4)': + dependencies: + ethers: 6.13.4 + js-base64: 3.7.7 + + '@0xsequence/guard@2.2.3(ethers@6.13.4)': + dependencies: + '@0xsequence/account': 2.2.3(ethers@6.13.4) + '@0xsequence/core': 2.2.3(ethers@6.13.4) + '@0xsequence/signhub': 2.2.3(ethers@6.13.4) + '@0xsequence/utils': 2.2.3(ethers@6.13.4) + ethers: 6.13.4 + + '@0xsequence/indexer@2.2.13': {} + + '@0xsequence/indexer@2.2.3': {} + + '@0xsequence/metadata@2.2.13': {} + + '@0xsequence/metadata@2.2.3': {} + + '@0xsequence/migration@2.2.13(ethers@6.13.4)': + dependencies: + '@0xsequence/abi': 2.2.13 + '@0xsequence/core': 2.2.13(ethers@6.13.4) + '@0xsequence/wallet': 2.2.13(ethers@6.13.4) + ethers: 6.13.4 + + '@0xsequence/migration@2.2.3(ethers@6.13.4)': + dependencies: + '@0xsequence/abi': 2.2.3 + '@0xsequence/core': 2.2.3(ethers@6.13.4) + '@0xsequence/wallet': 2.2.3(ethers@6.13.4) + ethers: 6.13.4 + + '@0xsequence/network@2.2.13(ethers@6.13.4)': + dependencies: + '@0xsequence/core': 2.2.13(ethers@6.13.4) + '@0xsequence/indexer': 2.2.13 + '@0xsequence/relayer': 2.2.13(ethers@6.13.4) + '@0xsequence/utils': 2.2.13(ethers@6.13.4) + ethers: 6.13.4 + + '@0xsequence/network@2.2.3(ethers@6.13.4)': + dependencies: + '@0xsequence/core': 2.2.3(ethers@6.13.4) + '@0xsequence/indexer': 2.2.3 + '@0xsequence/relayer': 2.2.3(ethers@6.13.4) + '@0xsequence/utils': 2.2.3(ethers@6.13.4) + ethers: 6.13.4 + + '@0xsequence/provider@2.2.13(ethers@6.13.4)': + dependencies: + '@0xsequence/abi': 2.2.13 + '@0xsequence/account': 2.2.13(ethers@6.13.4) + '@0xsequence/auth': 2.2.13(ethers@6.13.4) + '@0xsequence/core': 2.2.13(ethers@6.13.4) + '@0xsequence/migration': 2.2.13(ethers@6.13.4) + '@0xsequence/network': 2.2.13(ethers@6.13.4) + '@0xsequence/relayer': 2.2.13(ethers@6.13.4) + '@0xsequence/utils': 2.2.13(ethers@6.13.4) + '@0xsequence/wallet': 2.2.13(ethers@6.13.4) + '@databeat/tracker': 0.9.3 + ethers: 6.13.4 + eventemitter2: 6.4.9 + webextension-polyfill: 0.10.0 + + '@0xsequence/provider@2.2.3(ethers@6.13.4)': + dependencies: + '@0xsequence/abi': 2.2.3 + '@0xsequence/account': 2.2.3(ethers@6.13.4) + '@0xsequence/auth': 2.2.3(ethers@6.13.4) + '@0xsequence/core': 2.2.3(ethers@6.13.4) + '@0xsequence/migration': 2.2.3(ethers@6.13.4) + '@0xsequence/network': 2.2.3(ethers@6.13.4) + '@0xsequence/relayer': 2.2.3(ethers@6.13.4) + '@0xsequence/utils': 2.2.3(ethers@6.13.4) + '@0xsequence/wallet': 2.2.3(ethers@6.13.4) + '@databeat/tracker': 0.9.3 + ethers: 6.13.4 + eventemitter2: 6.4.9 + webextension-polyfill: 0.10.0 + + '@0xsequence/relayer@2.2.13(ethers@6.13.4)': + dependencies: + '@0xsequence/abi': 2.2.13 + '@0xsequence/core': 2.2.13(ethers@6.13.4) + '@0xsequence/utils': 2.2.13(ethers@6.13.4) + ethers: 6.13.4 + + '@0xsequence/relayer@2.2.3(ethers@6.13.4)': + dependencies: + '@0xsequence/abi': 2.2.3 + '@0xsequence/core': 2.2.3(ethers@6.13.4) + '@0xsequence/utils': 2.2.3(ethers@6.13.4) + ethers: 6.13.4 + + '@0xsequence/replacer@2.2.13(ethers@6.13.4)': + dependencies: + '@0xsequence/abi': 2.2.13 + '@0xsequence/core': 2.2.13(ethers@6.13.4) + ethers: 6.13.4 + + '@0xsequence/replacer@2.2.3(ethers@6.13.4)': + dependencies: + '@0xsequence/abi': 2.2.3 + '@0xsequence/core': 2.2.3(ethers@6.13.4) + ethers: 6.13.4 + + '@0xsequence/sessions@2.2.13(ethers@6.13.4)': + dependencies: + '@0xsequence/core': 2.2.13(ethers@6.13.4) + '@0xsequence/migration': 2.2.13(ethers@6.13.4) + '@0xsequence/replacer': 2.2.13(ethers@6.13.4) + '@0xsequence/utils': 2.2.13(ethers@6.13.4) + ethers: 6.13.4 + idb: 7.1.1 + + '@0xsequence/sessions@2.2.3(ethers@6.13.4)': + dependencies: + '@0xsequence/core': 2.2.3(ethers@6.13.4) + '@0xsequence/migration': 2.2.3(ethers@6.13.4) + '@0xsequence/replacer': 2.2.3(ethers@6.13.4) + '@0xsequence/utils': 2.2.3(ethers@6.13.4) + ethers: 6.13.4 + idb: 7.1.1 + + '@0xsequence/signhub@2.2.13(ethers@6.13.4)': + dependencies: + '@0xsequence/core': 2.2.13(ethers@6.13.4) + ethers: 6.13.4 + + '@0xsequence/signhub@2.2.3(ethers@6.13.4)': + dependencies: + '@0xsequence/core': 2.2.3(ethers@6.13.4) + ethers: 6.13.4 + + '@0xsequence/utils@2.2.13(ethers@6.13.4)': + dependencies: + ethers: 6.13.4 + js-base64: 3.7.7 + + '@0xsequence/utils@2.2.3(ethers@6.13.4)': + dependencies: + ethers: 6.13.4 + js-base64: 3.7.7 + + '@0xsequence/wallet@2.2.13(ethers@6.13.4)': + dependencies: + '@0xsequence/abi': 2.2.13 + '@0xsequence/core': 2.2.13(ethers@6.13.4) + '@0xsequence/network': 2.2.13(ethers@6.13.4) + '@0xsequence/relayer': 2.2.13(ethers@6.13.4) + '@0xsequence/signhub': 2.2.13(ethers@6.13.4) + '@0xsequence/utils': 2.2.13(ethers@6.13.4) + ethers: 6.13.4 + + '@0xsequence/wallet@2.2.3(ethers@6.13.4)': + dependencies: + '@0xsequence/abi': 2.2.3 + '@0xsequence/core': 2.2.3(ethers@6.13.4) + '@0xsequence/network': 2.2.3(ethers@6.13.4) + '@0xsequence/relayer': 2.2.3(ethers@6.13.4) + '@0xsequence/signhub': 2.2.3(ethers@6.13.4) + '@0xsequence/utils': 2.2.3(ethers@6.13.4) + ethers: 6.13.4 + + '@adraffy/ens-normalize@1.10.1': {} + + '@ampproject/remapping@2.2.1': + dependencies: + '@jridgewell/gen-mapping': 0.3.3 + '@jridgewell/trace-mapping': 0.3.18 + + '@ampproject/remapping@2.3.0': + dependencies: + '@jridgewell/gen-mapping': 0.3.5 + '@jridgewell/trace-mapping': 0.3.25 + + '@babel/code-frame@7.23.5': + dependencies: + '@babel/highlight': 7.23.4 + chalk: 2.4.2 + + '@babel/code-frame@7.24.2': + dependencies: + '@babel/highlight': 7.24.2 + picocolors: 1.0.0 + + '@babel/compat-data@7.23.5': {} + + '@babel/core@7.23.7': + dependencies: + '@ampproject/remapping': 2.2.1 + '@babel/code-frame': 7.23.5 + '@babel/generator': 7.23.6 + '@babel/helper-compilation-targets': 7.23.6 + '@babel/helper-module-transforms': 7.23.3(@babel/core@7.23.7) + '@babel/helpers': 7.23.8 + '@babel/parser': 7.23.6 + '@babel/template': 7.22.15 + '@babel/traverse': 7.23.7 + '@babel/types': 7.23.6 + convert-source-map: 2.0.0 + debug: 4.3.4 + gensync: 1.0.0-beta.2 + json5: 2.2.3 + semver: 6.3.1 + transitivePeerDependencies: + - supports-color + + '@babel/core@7.24.3': + dependencies: + '@ampproject/remapping': 2.3.0 + '@babel/code-frame': 7.24.2 + '@babel/generator': 7.24.1 + '@babel/helper-compilation-targets': 7.23.6 + '@babel/helper-module-transforms': 7.23.3(@babel/core@7.24.3) + '@babel/helpers': 7.24.1 + '@babel/parser': 7.24.1 + '@babel/template': 7.24.0 + '@babel/traverse': 7.24.1 + '@babel/types': 7.24.0 + convert-source-map: 2.0.0 + debug: 4.3.4 + gensync: 1.0.0-beta.2 + json5: 2.2.3 + semver: 6.3.1 + transitivePeerDependencies: + - supports-color + + '@babel/generator@7.23.6': + dependencies: + '@babel/types': 7.23.6 + '@jridgewell/gen-mapping': 0.3.3 + '@jridgewell/trace-mapping': 0.3.21 + jsesc: 2.5.2 + + '@babel/generator@7.24.1': + dependencies: + '@babel/types': 7.24.0 + '@jridgewell/gen-mapping': 0.3.5 + '@jridgewell/trace-mapping': 0.3.25 + jsesc: 2.5.2 + + '@babel/helper-compilation-targets@7.23.6': + dependencies: + '@babel/compat-data': 7.23.5 + '@babel/helper-validator-option': 7.23.5 + browserslist: 4.22.2 + lru-cache: 5.1.1 + semver: 6.3.1 + + '@babel/helper-environment-visitor@7.22.20': {} + + '@babel/helper-function-name@7.23.0': + dependencies: + '@babel/template': 7.22.15 + '@babel/types': 7.23.6 + + '@babel/helper-hoist-variables@7.22.5': + dependencies: + '@babel/types': 7.22.5 + + '@babel/helper-module-imports@7.22.15': + dependencies: + '@babel/types': 7.23.6 + + '@babel/helper-module-transforms@7.23.3(@babel/core@7.23.7)': + dependencies: + '@babel/core': 7.23.7 + '@babel/helper-environment-visitor': 7.22.20 + '@babel/helper-module-imports': 7.22.15 + '@babel/helper-simple-access': 7.22.5 + '@babel/helper-split-export-declaration': 7.22.6 + '@babel/helper-validator-identifier': 7.22.20 + + '@babel/helper-module-transforms@7.23.3(@babel/core@7.24.3)': + dependencies: + '@babel/core': 7.24.3 + '@babel/helper-environment-visitor': 7.22.20 + '@babel/helper-module-imports': 7.22.15 + '@babel/helper-simple-access': 7.22.5 + '@babel/helper-split-export-declaration': 7.22.6 + '@babel/helper-validator-identifier': 7.22.20 + + '@babel/helper-plugin-utils@7.22.5': {} + + '@babel/helper-plugin-utils@7.24.0': {} + + '@babel/helper-simple-access@7.22.5': + dependencies: + '@babel/types': 7.22.5 + + '@babel/helper-split-export-declaration@7.22.6': + dependencies: + '@babel/types': 7.22.5 + + '@babel/helper-string-parser@7.22.5': {} + + '@babel/helper-string-parser@7.23.4': {} + + '@babel/helper-string-parser@7.24.1': {} + + '@babel/helper-validator-identifier@7.22.20': {} + + '@babel/helper-validator-identifier@7.22.5': {} + + '@babel/helper-validator-option@7.23.5': {} + + '@babel/helpers@7.23.8': + dependencies: + '@babel/template': 7.22.15 + '@babel/traverse': 7.23.7 + '@babel/types': 7.23.6 + transitivePeerDependencies: + - supports-color + + '@babel/helpers@7.24.1': + dependencies: + '@babel/template': 7.24.0 + '@babel/traverse': 7.24.1 + '@babel/types': 7.24.0 + transitivePeerDependencies: + - supports-color + + '@babel/highlight@7.23.4': + dependencies: + '@babel/helper-validator-identifier': 7.22.20 + chalk: 2.4.2 + js-tokens: 4.0.0 + + '@babel/highlight@7.24.2': + dependencies: + '@babel/helper-validator-identifier': 7.22.20 + chalk: 2.4.2 + js-tokens: 4.0.0 + picocolors: 1.0.0 + + '@babel/parser@7.23.6': + dependencies: + '@babel/types': 7.23.6 + + '@babel/parser@7.24.1': + dependencies: + '@babel/types': 7.24.0 + + '@babel/plugin-syntax-typescript@7.24.1(@babel/core@7.24.3)': + dependencies: + '@babel/core': 7.24.3 + '@babel/helper-plugin-utils': 7.24.0 + + '@babel/plugin-transform-react-jsx-self@7.23.3(@babel/core@7.23.7)': + dependencies: + '@babel/core': 7.23.7 + '@babel/helper-plugin-utils': 7.22.5 + + '@babel/plugin-transform-react-jsx-source@7.23.3(@babel/core@7.23.7)': + dependencies: + '@babel/core': 7.23.7 + '@babel/helper-plugin-utils': 7.22.5 + + '@babel/runtime@7.24.1': + dependencies: + regenerator-runtime: 0.14.1 + + '@babel/template@7.22.15': + dependencies: + '@babel/code-frame': 7.23.5 + '@babel/parser': 7.23.6 + '@babel/types': 7.23.6 + + '@babel/template@7.24.0': + dependencies: + '@babel/code-frame': 7.24.2 + '@babel/parser': 7.24.1 + '@babel/types': 7.24.0 + + '@babel/traverse@7.23.7': + dependencies: + '@babel/code-frame': 7.23.5 + '@babel/generator': 7.23.6 + '@babel/helper-environment-visitor': 7.22.20 + '@babel/helper-function-name': 7.23.0 + '@babel/helper-hoist-variables': 7.22.5 + '@babel/helper-split-export-declaration': 7.22.6 + '@babel/parser': 7.23.6 + '@babel/types': 7.23.6 + debug: 4.3.4 + globals: 11.12.0 + transitivePeerDependencies: + - supports-color + + '@babel/traverse@7.24.1': + dependencies: + '@babel/code-frame': 7.24.2 + '@babel/generator': 7.24.1 + '@babel/helper-environment-visitor': 7.22.20 + '@babel/helper-function-name': 7.23.0 + '@babel/helper-hoist-variables': 7.22.5 + '@babel/helper-split-export-declaration': 7.22.6 + '@babel/parser': 7.24.1 + '@babel/types': 7.24.0 + debug: 4.3.4 + globals: 11.12.0 + transitivePeerDependencies: + - supports-color + + '@babel/types@7.22.5': + dependencies: + '@babel/helper-string-parser': 7.22.5 + '@babel/helper-validator-identifier': 7.22.5 + to-fast-properties: 2.0.0 + + '@babel/types@7.23.6': + dependencies: + '@babel/helper-string-parser': 7.23.4 + '@babel/helper-validator-identifier': 7.22.20 + to-fast-properties: 2.0.0 + + '@babel/types@7.24.0': + dependencies: + '@babel/helper-string-parser': 7.24.1 + '@babel/helper-validator-identifier': 7.22.20 + to-fast-properties: 2.0.0 + + '@databeat/tracker@0.9.3': + dependencies: + '@noble/hashes': 1.6.1 + + '@emotion/hash@0.9.1': {} + + '@emotion/is-prop-valid@0.8.8': + dependencies: + '@emotion/memoize': 0.7.4 + optional: true + + '@emotion/memoize@0.7.4': + optional: true + + '@esbuild/aix-ppc64@0.19.12': + optional: true + + '@esbuild/aix-ppc64@0.20.2': + optional: true + + '@esbuild/android-arm64@0.19.12': + optional: true + + '@esbuild/android-arm64@0.20.2': + optional: true + + '@esbuild/android-arm@0.19.12': + optional: true + + '@esbuild/android-arm@0.20.2': + optional: true + + '@esbuild/android-x64@0.19.12': + optional: true + + '@esbuild/android-x64@0.20.2': + optional: true + + '@esbuild/darwin-arm64@0.19.12': + optional: true + + '@esbuild/darwin-arm64@0.20.2': + optional: true + + '@esbuild/darwin-x64@0.19.12': + optional: true + + '@esbuild/darwin-x64@0.20.2': + optional: true + + '@esbuild/freebsd-arm64@0.19.12': + optional: true + + '@esbuild/freebsd-arm64@0.20.2': + optional: true + + '@esbuild/freebsd-x64@0.19.12': + optional: true + + '@esbuild/freebsd-x64@0.20.2': + optional: true + + '@esbuild/linux-arm64@0.19.12': + optional: true + + '@esbuild/linux-arm64@0.20.2': + optional: true + + '@esbuild/linux-arm@0.19.12': + optional: true + + '@esbuild/linux-arm@0.20.2': + optional: true + + '@esbuild/linux-ia32@0.19.12': + optional: true + + '@esbuild/linux-ia32@0.20.2': + optional: true + + '@esbuild/linux-loong64@0.19.12': + optional: true + + '@esbuild/linux-loong64@0.20.2': + optional: true + + '@esbuild/linux-mips64el@0.19.12': + optional: true + + '@esbuild/linux-mips64el@0.20.2': + optional: true + + '@esbuild/linux-ppc64@0.19.12': + optional: true + + '@esbuild/linux-ppc64@0.20.2': + optional: true + + '@esbuild/linux-riscv64@0.19.12': + optional: true + + '@esbuild/linux-riscv64@0.20.2': + optional: true + + '@esbuild/linux-s390x@0.19.12': + optional: true + + '@esbuild/linux-s390x@0.20.2': + optional: true + + '@esbuild/linux-x64@0.19.12': + optional: true + + '@esbuild/linux-x64@0.20.2': + optional: true + + '@esbuild/netbsd-x64@0.19.12': + optional: true + + '@esbuild/netbsd-x64@0.20.2': + optional: true + + '@esbuild/openbsd-x64@0.19.12': + optional: true + + '@esbuild/openbsd-x64@0.20.2': + optional: true + + '@esbuild/sunos-x64@0.19.12': + optional: true + + '@esbuild/sunos-x64@0.20.2': + optional: true + + '@esbuild/win32-arm64@0.19.12': + optional: true + + '@esbuild/win32-arm64@0.20.2': + optional: true + + '@esbuild/win32-ia32@0.19.12': + optional: true + + '@esbuild/win32-ia32@0.20.2': + optional: true + + '@esbuild/win32-x64@0.19.12': + optional: true + + '@esbuild/win32-x64@0.20.2': + optional: true + + '@floating-ui/core@1.6.0': + dependencies: + '@floating-ui/utils': 0.2.1 + + '@floating-ui/dom@1.6.3': + dependencies: + '@floating-ui/core': 1.6.0 + '@floating-ui/utils': 0.2.1 + + '@floating-ui/react-dom@2.0.8(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + dependencies: + '@floating-ui/dom': 1.6.3 + react: 18.3.1 + react-dom: 18.3.1(react@18.3.1) + + '@floating-ui/utils@0.2.1': {} + + '@jridgewell/gen-mapping@0.3.3': + dependencies: + '@jridgewell/set-array': 1.1.2 + '@jridgewell/sourcemap-codec': 1.4.15 + '@jridgewell/trace-mapping': 0.3.18 + + '@jridgewell/gen-mapping@0.3.5': + dependencies: + '@jridgewell/set-array': 1.2.1 + '@jridgewell/sourcemap-codec': 1.4.15 + '@jridgewell/trace-mapping': 0.3.25 + + '@jridgewell/resolve-uri@3.1.0': {} + + '@jridgewell/resolve-uri@3.1.1': {} + + '@jridgewell/resolve-uri@3.1.2': {} + + '@jridgewell/set-array@1.1.2': {} + + '@jridgewell/set-array@1.2.1': {} + + '@jridgewell/sourcemap-codec@1.4.14': {} + + '@jridgewell/sourcemap-codec@1.4.15': {} + + '@jridgewell/trace-mapping@0.3.18': + dependencies: + '@jridgewell/resolve-uri': 3.1.0 + '@jridgewell/sourcemap-codec': 1.4.14 + + '@jridgewell/trace-mapping@0.3.21': + dependencies: + '@jridgewell/resolve-uri': 3.1.1 + '@jridgewell/sourcemap-codec': 1.4.15 + + '@jridgewell/trace-mapping@0.3.25': + dependencies: + '@jridgewell/resolve-uri': 3.1.2 + '@jridgewell/sourcemap-codec': 1.4.15 + + '@motionone/animation@10.15.1': + dependencies: + '@motionone/easing': 10.15.1 + '@motionone/types': 10.15.1 + '@motionone/utils': 10.15.1 + tslib: 2.6.2 + + '@motionone/dom@10.16.2': + dependencies: + '@motionone/animation': 10.15.1 + '@motionone/generators': 10.15.1 + '@motionone/types': 10.15.1 + '@motionone/utils': 10.15.1 + hey-listen: 1.0.8 + tslib: 2.6.2 + + '@motionone/easing@10.15.1': + dependencies: + '@motionone/utils': 10.15.1 + tslib: 2.6.2 + + '@motionone/generators@10.15.1': + dependencies: + '@motionone/types': 10.15.1 + '@motionone/utils': 10.15.1 + tslib: 2.6.2 + + '@motionone/types@10.15.1': {} + + '@motionone/utils@10.15.1': + dependencies: + '@motionone/types': 10.15.1 + hey-listen: 1.0.8 + tslib: 2.6.2 + + '@noble/curves@1.2.0': + dependencies: + '@noble/hashes': 1.3.2 + + '@noble/hashes@1.3.2': {} + + '@noble/hashes@1.6.1': {} + + '@radix-ui/number@1.1.0': {} + + '@radix-ui/primitive@1.1.0': {} + + '@radix-ui/react-arrow@1.1.0(@types/react-dom@18.3.0)(@types/react@18.3.7)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + dependencies: + '@radix-ui/react-primitive': 2.0.0(@types/react-dom@18.3.0)(@types/react@18.3.7)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + react: 18.3.1 + react-dom: 18.3.1(react@18.3.1) + optionalDependencies: + '@types/react': 18.3.7 + '@types/react-dom': 18.3.0 + + '@radix-ui/react-aspect-ratio@1.1.0(@types/react-dom@18.3.0)(@types/react@18.3.7)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + dependencies: + '@radix-ui/react-primitive': 2.0.0(@types/react-dom@18.3.0)(@types/react@18.3.7)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + react: 18.3.1 + react-dom: 18.3.1(react@18.3.1) + optionalDependencies: + '@types/react': 18.3.7 + '@types/react-dom': 18.3.0 + + '@radix-ui/react-checkbox@1.1.1(@types/react-dom@18.3.0)(@types/react@18.3.7)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + dependencies: + '@radix-ui/primitive': 1.1.0 + '@radix-ui/react-compose-refs': 1.1.0(@types/react@18.3.7)(react@18.3.1) + '@radix-ui/react-context': 1.1.0(@types/react@18.3.7)(react@18.3.1) + '@radix-ui/react-presence': 1.1.0(@types/react-dom@18.3.0)(@types/react@18.3.7)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-primitive': 2.0.0(@types/react-dom@18.3.0)(@types/react@18.3.7)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-use-controllable-state': 1.1.0(@types/react@18.3.7)(react@18.3.1) + '@radix-ui/react-use-previous': 1.1.0(@types/react@18.3.7)(react@18.3.1) + '@radix-ui/react-use-size': 1.1.0(@types/react@18.3.7)(react@18.3.1) + react: 18.3.1 + react-dom: 18.3.1(react@18.3.1) + optionalDependencies: + '@types/react': 18.3.7 + '@types/react-dom': 18.3.0 + + '@radix-ui/react-collapsible@1.1.0(@types/react-dom@18.3.0)(@types/react@18.3.7)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + dependencies: + '@radix-ui/primitive': 1.1.0 + '@radix-ui/react-compose-refs': 1.1.0(@types/react@18.3.7)(react@18.3.1) + '@radix-ui/react-context': 1.1.0(@types/react@18.3.7)(react@18.3.1) + '@radix-ui/react-id': 1.1.0(@types/react@18.3.7)(react@18.3.1) + '@radix-ui/react-presence': 1.1.0(@types/react-dom@18.3.0)(@types/react@18.3.7)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-primitive': 2.0.0(@types/react-dom@18.3.0)(@types/react@18.3.7)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-use-controllable-state': 1.1.0(@types/react@18.3.7)(react@18.3.1) + '@radix-ui/react-use-layout-effect': 1.1.0(@types/react@18.3.7)(react@18.3.1) + react: 18.3.1 + react-dom: 18.3.1(react@18.3.1) + optionalDependencies: + '@types/react': 18.3.7 + '@types/react-dom': 18.3.0 + + '@radix-ui/react-collection@1.1.0(@types/react-dom@18.3.0)(@types/react@18.3.7)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + dependencies: + '@radix-ui/react-compose-refs': 1.1.0(@types/react@18.3.7)(react@18.3.1) + '@radix-ui/react-context': 1.1.0(@types/react@18.3.7)(react@18.3.1) + '@radix-ui/react-primitive': 2.0.0(@types/react-dom@18.3.0)(@types/react@18.3.7)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-slot': 1.1.0(@types/react@18.3.7)(react@18.3.1) + react: 18.3.1 + react-dom: 18.3.1(react@18.3.1) + optionalDependencies: + '@types/react': 18.3.7 + '@types/react-dom': 18.3.0 + + '@radix-ui/react-compose-refs@1.1.0(@types/react@18.3.7)(react@18.3.1)': + dependencies: + react: 18.3.1 + optionalDependencies: + '@types/react': 18.3.7 + + '@radix-ui/react-context@1.1.0(@types/react@18.3.7)(react@18.3.1)': + dependencies: + react: 18.3.1 + optionalDependencies: + '@types/react': 18.3.7 + + '@radix-ui/react-dialog@1.1.1(@types/react-dom@18.3.0)(@types/react@18.3.7)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + dependencies: + '@radix-ui/primitive': 1.1.0 + '@radix-ui/react-compose-refs': 1.1.0(@types/react@18.3.7)(react@18.3.1) + '@radix-ui/react-context': 1.1.0(@types/react@18.3.7)(react@18.3.1) + '@radix-ui/react-dismissable-layer': 1.1.0(@types/react-dom@18.3.0)(@types/react@18.3.7)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-focus-guards': 1.1.0(@types/react@18.3.7)(react@18.3.1) + '@radix-ui/react-focus-scope': 1.1.0(@types/react-dom@18.3.0)(@types/react@18.3.7)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-id': 1.1.0(@types/react@18.3.7)(react@18.3.1) + '@radix-ui/react-portal': 1.1.1(@types/react-dom@18.3.0)(@types/react@18.3.7)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-presence': 1.1.0(@types/react-dom@18.3.0)(@types/react@18.3.7)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-primitive': 2.0.0(@types/react-dom@18.3.0)(@types/react@18.3.7)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-slot': 1.1.0(@types/react@18.3.7)(react@18.3.1) + '@radix-ui/react-use-controllable-state': 1.1.0(@types/react@18.3.7)(react@18.3.1) + aria-hidden: 1.2.4 + react: 18.3.1 + react-dom: 18.3.1(react@18.3.1) + react-remove-scroll: 2.5.7(@types/react@18.3.7)(react@18.3.1) + optionalDependencies: + '@types/react': 18.3.7 + '@types/react-dom': 18.3.0 + + '@radix-ui/react-direction@1.1.0(@types/react@18.3.7)(react@18.3.1)': + dependencies: + react: 18.3.1 + optionalDependencies: + '@types/react': 18.3.7 + + '@radix-ui/react-dismissable-layer@1.1.0(@types/react-dom@18.3.0)(@types/react@18.3.7)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + dependencies: + '@radix-ui/primitive': 1.1.0 + '@radix-ui/react-compose-refs': 1.1.0(@types/react@18.3.7)(react@18.3.1) + '@radix-ui/react-primitive': 2.0.0(@types/react-dom@18.3.0)(@types/react@18.3.7)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-use-callback-ref': 1.1.0(@types/react@18.3.7)(react@18.3.1) + '@radix-ui/react-use-escape-keydown': 1.1.0(@types/react@18.3.7)(react@18.3.1) + react: 18.3.1 + react-dom: 18.3.1(react@18.3.1) + optionalDependencies: + '@types/react': 18.3.7 + '@types/react-dom': 18.3.0 + + '@radix-ui/react-dropdown-menu@2.1.1(@types/react-dom@18.3.0)(@types/react@18.3.7)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + dependencies: + '@radix-ui/primitive': 1.1.0 + '@radix-ui/react-compose-refs': 1.1.0(@types/react@18.3.7)(react@18.3.1) + '@radix-ui/react-context': 1.1.0(@types/react@18.3.7)(react@18.3.1) + '@radix-ui/react-id': 1.1.0(@types/react@18.3.7)(react@18.3.1) + '@radix-ui/react-menu': 2.1.1(@types/react-dom@18.3.0)(@types/react@18.3.7)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-primitive': 2.0.0(@types/react-dom@18.3.0)(@types/react@18.3.7)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-use-controllable-state': 1.1.0(@types/react@18.3.7)(react@18.3.1) + react: 18.3.1 + react-dom: 18.3.1(react@18.3.1) + optionalDependencies: + '@types/react': 18.3.7 + '@types/react-dom': 18.3.0 + + '@radix-ui/react-focus-guards@1.1.0(@types/react@18.3.7)(react@18.3.1)': + dependencies: + react: 18.3.1 + optionalDependencies: + '@types/react': 18.3.7 + + '@radix-ui/react-focus-scope@1.1.0(@types/react-dom@18.3.0)(@types/react@18.3.7)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + dependencies: + '@radix-ui/react-compose-refs': 1.1.0(@types/react@18.3.7)(react@18.3.1) + '@radix-ui/react-primitive': 2.0.0(@types/react-dom@18.3.0)(@types/react@18.3.7)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-use-callback-ref': 1.1.0(@types/react@18.3.7)(react@18.3.1) + react: 18.3.1 + react-dom: 18.3.1(react@18.3.1) + optionalDependencies: + '@types/react': 18.3.7 + '@types/react-dom': 18.3.0 + + '@radix-ui/react-id@1.1.0(@types/react@18.3.7)(react@18.3.1)': + dependencies: + '@radix-ui/react-use-layout-effect': 1.1.0(@types/react@18.3.7)(react@18.3.1) + react: 18.3.1 + optionalDependencies: + '@types/react': 18.3.7 + + '@radix-ui/react-menu@2.1.1(@types/react-dom@18.3.0)(@types/react@18.3.7)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + dependencies: + '@radix-ui/primitive': 1.1.0 + '@radix-ui/react-collection': 1.1.0(@types/react-dom@18.3.0)(@types/react@18.3.7)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-compose-refs': 1.1.0(@types/react@18.3.7)(react@18.3.1) + '@radix-ui/react-context': 1.1.0(@types/react@18.3.7)(react@18.3.1) + '@radix-ui/react-direction': 1.1.0(@types/react@18.3.7)(react@18.3.1) + '@radix-ui/react-dismissable-layer': 1.1.0(@types/react-dom@18.3.0)(@types/react@18.3.7)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-focus-guards': 1.1.0(@types/react@18.3.7)(react@18.3.1) + '@radix-ui/react-focus-scope': 1.1.0(@types/react-dom@18.3.0)(@types/react@18.3.7)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-id': 1.1.0(@types/react@18.3.7)(react@18.3.1) + '@radix-ui/react-popper': 1.2.0(@types/react-dom@18.3.0)(@types/react@18.3.7)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-portal': 1.1.1(@types/react-dom@18.3.0)(@types/react@18.3.7)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-presence': 1.1.0(@types/react-dom@18.3.0)(@types/react@18.3.7)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-primitive': 2.0.0(@types/react-dom@18.3.0)(@types/react@18.3.7)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-roving-focus': 1.1.0(@types/react-dom@18.3.0)(@types/react@18.3.7)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-slot': 1.1.0(@types/react@18.3.7)(react@18.3.1) + '@radix-ui/react-use-callback-ref': 1.1.0(@types/react@18.3.7)(react@18.3.1) + aria-hidden: 1.2.4 + react: 18.3.1 + react-dom: 18.3.1(react@18.3.1) + react-remove-scroll: 2.5.7(@types/react@18.3.7)(react@18.3.1) + optionalDependencies: + '@types/react': 18.3.7 + '@types/react-dom': 18.3.0 + + '@radix-ui/react-popper@1.2.0(@types/react-dom@18.3.0)(@types/react@18.3.7)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + dependencies: + '@floating-ui/react-dom': 2.0.8(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-arrow': 1.1.0(@types/react-dom@18.3.0)(@types/react@18.3.7)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-compose-refs': 1.1.0(@types/react@18.3.7)(react@18.3.1) + '@radix-ui/react-context': 1.1.0(@types/react@18.3.7)(react@18.3.1) + '@radix-ui/react-primitive': 2.0.0(@types/react-dom@18.3.0)(@types/react@18.3.7)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-use-callback-ref': 1.1.0(@types/react@18.3.7)(react@18.3.1) + '@radix-ui/react-use-layout-effect': 1.1.0(@types/react@18.3.7)(react@18.3.1) + '@radix-ui/react-use-rect': 1.1.0(@types/react@18.3.7)(react@18.3.1) + '@radix-ui/react-use-size': 1.1.0(@types/react@18.3.7)(react@18.3.1) + '@radix-ui/rect': 1.1.0 + react: 18.3.1 + react-dom: 18.3.1(react@18.3.1) + optionalDependencies: + '@types/react': 18.3.7 + '@types/react-dom': 18.3.0 + + '@radix-ui/react-portal@1.1.1(@types/react-dom@18.3.0)(@types/react@18.3.7)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + dependencies: + '@radix-ui/react-primitive': 2.0.0(@types/react-dom@18.3.0)(@types/react@18.3.7)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-use-layout-effect': 1.1.0(@types/react@18.3.7)(react@18.3.1) + react: 18.3.1 + react-dom: 18.3.1(react@18.3.1) + optionalDependencies: + '@types/react': 18.3.7 + '@types/react-dom': 18.3.0 + + '@radix-ui/react-presence@1.1.0(@types/react-dom@18.3.0)(@types/react@18.3.7)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + dependencies: + '@radix-ui/react-compose-refs': 1.1.0(@types/react@18.3.7)(react@18.3.1) + '@radix-ui/react-use-layout-effect': 1.1.0(@types/react@18.3.7)(react@18.3.1) + react: 18.3.1 + react-dom: 18.3.1(react@18.3.1) + optionalDependencies: + '@types/react': 18.3.7 + '@types/react-dom': 18.3.0 + + '@radix-ui/react-primitive@2.0.0(@types/react-dom@18.3.0)(@types/react@18.3.7)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + dependencies: + '@radix-ui/react-slot': 1.1.0(@types/react@18.3.7)(react@18.3.1) + react: 18.3.1 + react-dom: 18.3.1(react@18.3.1) + optionalDependencies: + '@types/react': 18.3.7 + '@types/react-dom': 18.3.0 + + '@radix-ui/react-progress@1.1.0(@types/react-dom@18.3.0)(@types/react@18.3.7)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + dependencies: + '@radix-ui/react-context': 1.1.0(@types/react@18.3.7)(react@18.3.1) + '@radix-ui/react-primitive': 2.0.0(@types/react-dom@18.3.0)(@types/react@18.3.7)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + react: 18.3.1 + react-dom: 18.3.1(react@18.3.1) + optionalDependencies: + '@types/react': 18.3.7 + '@types/react-dom': 18.3.0 + + '@radix-ui/react-radio-group@1.2.0(@types/react-dom@18.3.0)(@types/react@18.3.7)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + dependencies: + '@radix-ui/primitive': 1.1.0 + '@radix-ui/react-compose-refs': 1.1.0(@types/react@18.3.7)(react@18.3.1) + '@radix-ui/react-context': 1.1.0(@types/react@18.3.7)(react@18.3.1) + '@radix-ui/react-direction': 1.1.0(@types/react@18.3.7)(react@18.3.1) + '@radix-ui/react-presence': 1.1.0(@types/react-dom@18.3.0)(@types/react@18.3.7)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-primitive': 2.0.0(@types/react-dom@18.3.0)(@types/react@18.3.7)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-roving-focus': 1.1.0(@types/react-dom@18.3.0)(@types/react@18.3.7)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-use-controllable-state': 1.1.0(@types/react@18.3.7)(react@18.3.1) + '@radix-ui/react-use-previous': 1.1.0(@types/react@18.3.7)(react@18.3.1) + '@radix-ui/react-use-size': 1.1.0(@types/react@18.3.7)(react@18.3.1) + react: 18.3.1 + react-dom: 18.3.1(react@18.3.1) + optionalDependencies: + '@types/react': 18.3.7 + '@types/react-dom': 18.3.0 + + '@radix-ui/react-roving-focus@1.1.0(@types/react-dom@18.3.0)(@types/react@18.3.7)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + dependencies: + '@radix-ui/primitive': 1.1.0 + '@radix-ui/react-collection': 1.1.0(@types/react-dom@18.3.0)(@types/react@18.3.7)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-compose-refs': 1.1.0(@types/react@18.3.7)(react@18.3.1) + '@radix-ui/react-context': 1.1.0(@types/react@18.3.7)(react@18.3.1) + '@radix-ui/react-direction': 1.1.0(@types/react@18.3.7)(react@18.3.1) + '@radix-ui/react-id': 1.1.0(@types/react@18.3.7)(react@18.3.1) + '@radix-ui/react-primitive': 2.0.0(@types/react-dom@18.3.0)(@types/react@18.3.7)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-use-callback-ref': 1.1.0(@types/react@18.3.7)(react@18.3.1) + '@radix-ui/react-use-controllable-state': 1.1.0(@types/react@18.3.7)(react@18.3.1) + react: 18.3.1 + react-dom: 18.3.1(react@18.3.1) + optionalDependencies: + '@types/react': 18.3.7 + '@types/react-dom': 18.3.0 + + '@radix-ui/react-select@2.1.1(@types/react-dom@18.3.0)(@types/react@18.3.7)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + dependencies: + '@radix-ui/number': 1.1.0 + '@radix-ui/primitive': 1.1.0 + '@radix-ui/react-collection': 1.1.0(@types/react-dom@18.3.0)(@types/react@18.3.7)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-compose-refs': 1.1.0(@types/react@18.3.7)(react@18.3.1) + '@radix-ui/react-context': 1.1.0(@types/react@18.3.7)(react@18.3.1) + '@radix-ui/react-direction': 1.1.0(@types/react@18.3.7)(react@18.3.1) + '@radix-ui/react-dismissable-layer': 1.1.0(@types/react-dom@18.3.0)(@types/react@18.3.7)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-focus-guards': 1.1.0(@types/react@18.3.7)(react@18.3.1) + '@radix-ui/react-focus-scope': 1.1.0(@types/react-dom@18.3.0)(@types/react@18.3.7)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-id': 1.1.0(@types/react@18.3.7)(react@18.3.1) + '@radix-ui/react-popper': 1.2.0(@types/react-dom@18.3.0)(@types/react@18.3.7)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-portal': 1.1.1(@types/react-dom@18.3.0)(@types/react@18.3.7)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-primitive': 2.0.0(@types/react-dom@18.3.0)(@types/react@18.3.7)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-slot': 1.1.0(@types/react@18.3.7)(react@18.3.1) + '@radix-ui/react-use-callback-ref': 1.1.0(@types/react@18.3.7)(react@18.3.1) + '@radix-ui/react-use-controllable-state': 1.1.0(@types/react@18.3.7)(react@18.3.1) + '@radix-ui/react-use-layout-effect': 1.1.0(@types/react@18.3.7)(react@18.3.1) + '@radix-ui/react-use-previous': 1.1.0(@types/react@18.3.7)(react@18.3.1) + '@radix-ui/react-visually-hidden': 1.1.0(@types/react-dom@18.3.0)(@types/react@18.3.7)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + aria-hidden: 1.2.4 + react: 18.3.1 + react-dom: 18.3.1(react@18.3.1) + react-remove-scroll: 2.5.7(@types/react@18.3.7)(react@18.3.1) + optionalDependencies: + '@types/react': 18.3.7 + '@types/react-dom': 18.3.0 + + '@radix-ui/react-slot@1.1.0(@types/react@18.3.7)(react@18.3.1)': + dependencies: + '@radix-ui/react-compose-refs': 1.1.0(@types/react@18.3.7)(react@18.3.1) + react: 18.3.1 + optionalDependencies: + '@types/react': 18.3.7 + + '@radix-ui/react-switch@1.1.0(@types/react-dom@18.3.0)(@types/react@18.3.7)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + dependencies: + '@radix-ui/primitive': 1.1.0 + '@radix-ui/react-compose-refs': 1.1.0(@types/react@18.3.7)(react@18.3.1) + '@radix-ui/react-context': 1.1.0(@types/react@18.3.7)(react@18.3.1) + '@radix-ui/react-primitive': 2.0.0(@types/react-dom@18.3.0)(@types/react@18.3.7)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-use-controllable-state': 1.1.0(@types/react@18.3.7)(react@18.3.1) + '@radix-ui/react-use-previous': 1.1.0(@types/react@18.3.7)(react@18.3.1) + '@radix-ui/react-use-size': 1.1.0(@types/react@18.3.7)(react@18.3.1) + react: 18.3.1 + react-dom: 18.3.1(react@18.3.1) + optionalDependencies: + '@types/react': 18.3.7 + '@types/react-dom': 18.3.0 + + '@radix-ui/react-tabs@1.1.0(@types/react-dom@18.3.0)(@types/react@18.3.7)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + dependencies: + '@radix-ui/primitive': 1.1.0 + '@radix-ui/react-context': 1.1.0(@types/react@18.3.7)(react@18.3.1) + '@radix-ui/react-direction': 1.1.0(@types/react@18.3.7)(react@18.3.1) + '@radix-ui/react-id': 1.1.0(@types/react@18.3.7)(react@18.3.1) + '@radix-ui/react-presence': 1.1.0(@types/react-dom@18.3.0)(@types/react@18.3.7)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-primitive': 2.0.0(@types/react-dom@18.3.0)(@types/react@18.3.7)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-roving-focus': 1.1.0(@types/react-dom@18.3.0)(@types/react@18.3.7)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-use-controllable-state': 1.1.0(@types/react@18.3.7)(react@18.3.1) + react: 18.3.1 + react-dom: 18.3.1(react@18.3.1) + optionalDependencies: + '@types/react': 18.3.7 + '@types/react-dom': 18.3.0 + + '@radix-ui/react-toast@1.2.1(@types/react-dom@18.3.0)(@types/react@18.3.7)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + dependencies: + '@radix-ui/primitive': 1.1.0 + '@radix-ui/react-collection': 1.1.0(@types/react-dom@18.3.0)(@types/react@18.3.7)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-compose-refs': 1.1.0(@types/react@18.3.7)(react@18.3.1) + '@radix-ui/react-context': 1.1.0(@types/react@18.3.7)(react@18.3.1) + '@radix-ui/react-dismissable-layer': 1.1.0(@types/react-dom@18.3.0)(@types/react@18.3.7)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-portal': 1.1.1(@types/react-dom@18.3.0)(@types/react@18.3.7)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-presence': 1.1.0(@types/react-dom@18.3.0)(@types/react@18.3.7)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-primitive': 2.0.0(@types/react-dom@18.3.0)(@types/react@18.3.7)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-use-callback-ref': 1.1.0(@types/react@18.3.7)(react@18.3.1) + '@radix-ui/react-use-controllable-state': 1.1.0(@types/react@18.3.7)(react@18.3.1) + '@radix-ui/react-use-layout-effect': 1.1.0(@types/react@18.3.7)(react@18.3.1) + '@radix-ui/react-visually-hidden': 1.1.0(@types/react-dom@18.3.0)(@types/react@18.3.7)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + react: 18.3.1 + react-dom: 18.3.1(react@18.3.1) + optionalDependencies: + '@types/react': 18.3.7 + '@types/react-dom': 18.3.0 + + '@radix-ui/react-tooltip@1.1.2(@types/react-dom@18.3.0)(@types/react@18.3.7)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + dependencies: + '@radix-ui/primitive': 1.1.0 + '@radix-ui/react-compose-refs': 1.1.0(@types/react@18.3.7)(react@18.3.1) + '@radix-ui/react-context': 1.1.0(@types/react@18.3.7)(react@18.3.1) + '@radix-ui/react-dismissable-layer': 1.1.0(@types/react-dom@18.3.0)(@types/react@18.3.7)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-id': 1.1.0(@types/react@18.3.7)(react@18.3.1) + '@radix-ui/react-popper': 1.2.0(@types/react-dom@18.3.0)(@types/react@18.3.7)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-portal': 1.1.1(@types/react-dom@18.3.0)(@types/react@18.3.7)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-presence': 1.1.0(@types/react-dom@18.3.0)(@types/react@18.3.7)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-primitive': 2.0.0(@types/react-dom@18.3.0)(@types/react@18.3.7)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@radix-ui/react-slot': 1.1.0(@types/react@18.3.7)(react@18.3.1) + '@radix-ui/react-use-controllable-state': 1.1.0(@types/react@18.3.7)(react@18.3.1) + '@radix-ui/react-visually-hidden': 1.1.0(@types/react-dom@18.3.0)(@types/react@18.3.7)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + react: 18.3.1 + react-dom: 18.3.1(react@18.3.1) + optionalDependencies: + '@types/react': 18.3.7 + '@types/react-dom': 18.3.0 + + '@radix-ui/react-use-callback-ref@1.1.0(@types/react@18.3.7)(react@18.3.1)': + dependencies: + react: 18.3.1 + optionalDependencies: + '@types/react': 18.3.7 + + '@radix-ui/react-use-controllable-state@1.1.0(@types/react@18.3.7)(react@18.3.1)': + dependencies: + '@radix-ui/react-use-callback-ref': 1.1.0(@types/react@18.3.7)(react@18.3.1) + react: 18.3.1 + optionalDependencies: + '@types/react': 18.3.7 + + '@radix-ui/react-use-escape-keydown@1.1.0(@types/react@18.3.7)(react@18.3.1)': + dependencies: + '@radix-ui/react-use-callback-ref': 1.1.0(@types/react@18.3.7)(react@18.3.1) + react: 18.3.1 + optionalDependencies: + '@types/react': 18.3.7 + + '@radix-ui/react-use-layout-effect@1.1.0(@types/react@18.3.7)(react@18.3.1)': + dependencies: + react: 18.3.1 + optionalDependencies: + '@types/react': 18.3.7 + + '@radix-ui/react-use-previous@1.1.0(@types/react@18.3.7)(react@18.3.1)': + dependencies: + react: 18.3.1 + optionalDependencies: + '@types/react': 18.3.7 + + '@radix-ui/react-use-rect@1.1.0(@types/react@18.3.7)(react@18.3.1)': + dependencies: + '@radix-ui/rect': 1.1.0 + react: 18.3.1 + optionalDependencies: + '@types/react': 18.3.7 + + '@radix-ui/react-use-size@1.1.0(@types/react@18.3.7)(react@18.3.1)': + dependencies: + '@radix-ui/react-use-layout-effect': 1.1.0(@types/react@18.3.7)(react@18.3.1) + react: 18.3.1 + optionalDependencies: + '@types/react': 18.3.7 + + '@radix-ui/react-visually-hidden@1.1.0(@types/react-dom@18.3.0)(@types/react@18.3.7)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + dependencies: + '@radix-ui/react-primitive': 2.0.0(@types/react-dom@18.3.0)(@types/react@18.3.7)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + react: 18.3.1 + react-dom: 18.3.1(react@18.3.1) + optionalDependencies: + '@types/react': 18.3.7 + '@types/react-dom': 18.3.0 + + '@radix-ui/rect@1.1.0': {} + + '@rollup/pluginutils@5.1.0(rollup@4.21.3)': + dependencies: + '@types/estree': 1.0.5 + estree-walker: 2.0.2 + picomatch: 2.3.1 + optionalDependencies: + rollup: 4.21.3 + + '@rollup/rollup-android-arm-eabi@4.13.1': + optional: true + + '@rollup/rollup-android-arm-eabi@4.21.3': + optional: true + + '@rollup/rollup-android-arm64@4.13.1': + optional: true + + '@rollup/rollup-android-arm64@4.21.3': + optional: true + + '@rollup/rollup-darwin-arm64@4.13.1': + optional: true + + '@rollup/rollup-darwin-arm64@4.21.3': + optional: true + + '@rollup/rollup-darwin-x64@4.13.1': + optional: true + + '@rollup/rollup-darwin-x64@4.21.3': + optional: true + + '@rollup/rollup-linux-arm-gnueabihf@4.13.1': + optional: true + + '@rollup/rollup-linux-arm-gnueabihf@4.21.3': + optional: true + + '@rollup/rollup-linux-arm-musleabihf@4.21.3': + optional: true + + '@rollup/rollup-linux-arm64-gnu@4.13.1': + optional: true + + '@rollup/rollup-linux-arm64-gnu@4.21.3': + optional: true + + '@rollup/rollup-linux-arm64-musl@4.13.1': + optional: true + + '@rollup/rollup-linux-arm64-musl@4.21.3': + optional: true + + '@rollup/rollup-linux-powerpc64le-gnu@4.21.3': + optional: true + + '@rollup/rollup-linux-riscv64-gnu@4.13.1': + optional: true + + '@rollup/rollup-linux-riscv64-gnu@4.21.3': + optional: true + + '@rollup/rollup-linux-s390x-gnu@4.13.1': + optional: true + + '@rollup/rollup-linux-s390x-gnu@4.21.3': + optional: true + + '@rollup/rollup-linux-x64-gnu@4.13.1': + optional: true + + '@rollup/rollup-linux-x64-gnu@4.21.3': + optional: true + + '@rollup/rollup-linux-x64-musl@4.13.1': + optional: true + + '@rollup/rollup-linux-x64-musl@4.21.3': + optional: true + + '@rollup/rollup-win32-arm64-msvc@4.13.1': + optional: true + + '@rollup/rollup-win32-arm64-msvc@4.21.3': + optional: true + + '@rollup/rollup-win32-ia32-msvc@4.13.1': + optional: true + + '@rollup/rollup-win32-ia32-msvc@4.21.3': + optional: true + + '@rollup/rollup-win32-x64-msvc@4.13.1': + optional: true + + '@rollup/rollup-win32-x64-msvc@4.21.3': + optional: true + + '@svgr/babel-plugin-add-jsx-attribute@8.0.0(@babel/core@7.23.7)': + dependencies: + '@babel/core': 7.23.7 + + '@svgr/babel-plugin-remove-jsx-attribute@8.0.0(@babel/core@7.23.7)': + dependencies: + '@babel/core': 7.23.7 + + '@svgr/babel-plugin-remove-jsx-empty-expression@8.0.0(@babel/core@7.23.7)': + dependencies: + '@babel/core': 7.23.7 + + '@svgr/babel-plugin-replace-jsx-attribute-value@8.0.0(@babel/core@7.23.7)': + dependencies: + '@babel/core': 7.23.7 + + '@svgr/babel-plugin-svg-dynamic-title@8.0.0(@babel/core@7.23.7)': + dependencies: + '@babel/core': 7.23.7 + + '@svgr/babel-plugin-svg-em-dimensions@8.0.0(@babel/core@7.23.7)': + dependencies: + '@babel/core': 7.23.7 + + '@svgr/babel-plugin-transform-react-native-svg@8.1.0(@babel/core@7.23.7)': + dependencies: + '@babel/core': 7.23.7 + + '@svgr/babel-plugin-transform-svg-component@8.0.0(@babel/core@7.23.7)': + dependencies: + '@babel/core': 7.23.7 + + '@svgr/babel-preset@8.1.0(@babel/core@7.23.7)': + dependencies: + '@babel/core': 7.23.7 + '@svgr/babel-plugin-add-jsx-attribute': 8.0.0(@babel/core@7.23.7) + '@svgr/babel-plugin-remove-jsx-attribute': 8.0.0(@babel/core@7.23.7) + '@svgr/babel-plugin-remove-jsx-empty-expression': 8.0.0(@babel/core@7.23.7) + '@svgr/babel-plugin-replace-jsx-attribute-value': 8.0.0(@babel/core@7.23.7) + '@svgr/babel-plugin-svg-dynamic-title': 8.0.0(@babel/core@7.23.7) + '@svgr/babel-plugin-svg-em-dimensions': 8.0.0(@babel/core@7.23.7) + '@svgr/babel-plugin-transform-react-native-svg': 8.1.0(@babel/core@7.23.7) + '@svgr/babel-plugin-transform-svg-component': 8.0.0(@babel/core@7.23.7) + + '@svgr/core@8.1.0(typescript@4.5.5)': + dependencies: + '@babel/core': 7.23.7 + '@svgr/babel-preset': 8.1.0(@babel/core@7.23.7) + camelcase: 6.3.0 + cosmiconfig: 8.3.6(typescript@4.5.5) + snake-case: 3.0.4 + transitivePeerDependencies: + - supports-color + - typescript + + '@svgr/hast-util-to-babel-ast@8.0.0': + dependencies: + '@babel/types': 7.23.6 + entities: 4.5.0 + + '@svgr/plugin-jsx@8.1.0(@svgr/core@8.1.0(typescript@4.5.5))': + dependencies: + '@babel/core': 7.23.7 + '@svgr/babel-preset': 8.1.0(@babel/core@7.23.7) + '@svgr/core': 8.1.0(typescript@4.5.5) + '@svgr/hast-util-to-babel-ast': 8.0.0 + svg-parser: 2.0.4 + transitivePeerDependencies: + - supports-color + + '@types/babel__core@7.20.5': + dependencies: + '@babel/parser': 7.23.6 + '@babel/types': 7.23.6 + '@types/babel__generator': 7.6.8 + '@types/babel__template': 7.4.4 + '@types/babel__traverse': 7.20.5 + + '@types/babel__generator@7.6.8': + dependencies: + '@babel/types': 7.23.6 + + '@types/babel__template@7.4.4': + dependencies: + '@babel/parser': 7.23.6 + '@babel/types': 7.23.6 + + '@types/babel__traverse@7.20.5': + dependencies: + '@babel/types': 7.23.6 + + '@types/estree@1.0.5': {} + + '@types/node@20.11.30': + dependencies: + undici-types: 5.26.5 + + '@types/node@22.7.5': + dependencies: + undici-types: 6.19.8 + + '@types/prop-types@15.7.13': {} + + '@types/react-dom@18.3.0': + dependencies: + '@types/react': 18.3.7 + + '@types/react@18.3.7': + dependencies: + '@types/prop-types': 15.7.13 + csstype: 3.1.3 + + '@vanilla-extract/babel-plugin-debug-ids@1.0.5': + dependencies: + '@babel/core': 7.24.3 + transitivePeerDependencies: + - supports-color + + '@vanilla-extract/css@1.14.1': + dependencies: + '@emotion/hash': 0.9.1 + '@vanilla-extract/private': 1.0.3 + chalk: 4.1.2 + css-what: 6.1.0 + cssesc: 3.0.0 + csstype: 3.1.3 + deep-object-diff: 1.1.9 + deepmerge: 4.3.1 + media-query-parser: 2.0.2 + modern-ahocorasick: 1.0.1 + outdent: 0.8.0 + + '@vanilla-extract/integration@7.1.1(@types/node@20.11.30)': + dependencies: + '@babel/core': 7.24.3 + '@babel/plugin-syntax-typescript': 7.24.1(@babel/core@7.24.3) + '@vanilla-extract/babel-plugin-debug-ids': 1.0.5 + '@vanilla-extract/css': 1.14.1 + esbuild: 0.19.12 + eval: 0.1.8 + find-up: 5.0.0 + javascript-stringify: 2.1.0 + lodash: 4.17.21 + mlly: 1.6.1 + outdent: 0.8.0 + vite: 5.2.6(@types/node@20.11.30) + vite-node: 1.4.0(@types/node@20.11.30) + transitivePeerDependencies: + - '@types/node' + - less + - lightningcss + - sass + - stylus + - sugarss + - supports-color + - terser + + '@vanilla-extract/private@1.0.3': {} + + '@vanilla-extract/vite-plugin@4.0.6(@types/node@20.11.30)(vite@5.2.6(@types/node@20.11.30))': + dependencies: + '@vanilla-extract/integration': 7.1.1(@types/node@20.11.30) + vite: 5.2.6(@types/node@20.11.30) + transitivePeerDependencies: + - '@types/node' + - less + - lightningcss + - sass + - stylus + - sugarss + - supports-color + - terser + + '@vitejs/plugin-react@4.2.1(vite@5.2.6(@types/node@20.11.30))': + dependencies: + '@babel/core': 7.23.7 + '@babel/plugin-transform-react-jsx-self': 7.23.3(@babel/core@7.23.7) + '@babel/plugin-transform-react-jsx-source': 7.23.3(@babel/core@7.23.7) + '@types/babel__core': 7.20.5 + react-refresh: 0.14.0 + vite: 5.2.6(@types/node@20.11.30) + transitivePeerDependencies: + - supports-color + + acorn@8.11.3: {} + + aes-js@4.0.0-beta.5: {} + + ansi-styles@3.2.1: + dependencies: + color-convert: 1.9.3 + + ansi-styles@4.3.0: + dependencies: + color-convert: 2.0.1 + + argparse@2.0.1: {} + + aria-hidden@1.2.4: + dependencies: + tslib: 2.6.2 + + browserslist@4.22.2: + dependencies: + caniuse-lite: 1.0.30001579 + electron-to-chromium: 1.4.638 + node-releases: 2.0.14 + update-browserslist-db: 1.0.13(browserslist@4.22.2) + + cac@6.7.14: {} + + callsites@3.1.0: {} + + camelcase@6.3.0: {} + + caniuse-lite@1.0.30001579: {} + + chalk@2.4.2: + dependencies: + ansi-styles: 3.2.1 + escape-string-regexp: 1.0.5 + supports-color: 5.5.0 + + chalk@4.1.2: + dependencies: + ansi-styles: 4.3.0 + supports-color: 7.2.0 + + color-convert@1.9.3: + dependencies: + color-name: 1.1.3 + + color-convert@2.0.1: + dependencies: + color-name: 1.1.4 + + color-name@1.1.3: {} + + color-name@1.1.4: {} + + convert-source-map@2.0.0: {} + + cosmiconfig@8.3.6(typescript@4.5.5): + dependencies: + import-fresh: 3.3.0 + js-yaml: 4.1.0 + parse-json: 5.2.0 + path-type: 4.0.0 + optionalDependencies: + typescript: 4.5.5 + + css-what@6.1.0: {} + + cssesc@3.0.0: {} + + csstype@3.1.3: {} + + debug@4.3.4: + dependencies: + ms: 2.1.2 + + deep-object-diff@1.1.9: {} + + deepmerge@4.3.1: {} + + detect-node-es@1.1.0: {} + + dot-case@3.0.4: + dependencies: + no-case: 3.0.4 + tslib: 2.6.2 + + electron-to-chromium@1.4.638: {} + + entities@4.5.0: {} + + error-ex@1.3.2: + dependencies: + is-arrayish: 0.2.1 + + esbuild@0.19.12: + optionalDependencies: + '@esbuild/aix-ppc64': 0.19.12 + '@esbuild/android-arm': 0.19.12 + '@esbuild/android-arm64': 0.19.12 + '@esbuild/android-x64': 0.19.12 + '@esbuild/darwin-arm64': 0.19.12 + '@esbuild/darwin-x64': 0.19.12 + '@esbuild/freebsd-arm64': 0.19.12 + '@esbuild/freebsd-x64': 0.19.12 + '@esbuild/linux-arm': 0.19.12 + '@esbuild/linux-arm64': 0.19.12 + '@esbuild/linux-ia32': 0.19.12 + '@esbuild/linux-loong64': 0.19.12 + '@esbuild/linux-mips64el': 0.19.12 + '@esbuild/linux-ppc64': 0.19.12 + '@esbuild/linux-riscv64': 0.19.12 + '@esbuild/linux-s390x': 0.19.12 + '@esbuild/linux-x64': 0.19.12 + '@esbuild/netbsd-x64': 0.19.12 + '@esbuild/openbsd-x64': 0.19.12 + '@esbuild/sunos-x64': 0.19.12 + '@esbuild/win32-arm64': 0.19.12 + '@esbuild/win32-ia32': 0.19.12 + '@esbuild/win32-x64': 0.19.12 + + esbuild@0.20.2: + optionalDependencies: + '@esbuild/aix-ppc64': 0.20.2 + '@esbuild/android-arm': 0.20.2 + '@esbuild/android-arm64': 0.20.2 + '@esbuild/android-x64': 0.20.2 + '@esbuild/darwin-arm64': 0.20.2 + '@esbuild/darwin-x64': 0.20.2 + '@esbuild/freebsd-arm64': 0.20.2 + '@esbuild/freebsd-x64': 0.20.2 + '@esbuild/linux-arm': 0.20.2 + '@esbuild/linux-arm64': 0.20.2 + '@esbuild/linux-ia32': 0.20.2 + '@esbuild/linux-loong64': 0.20.2 + '@esbuild/linux-mips64el': 0.20.2 + '@esbuild/linux-ppc64': 0.20.2 + '@esbuild/linux-riscv64': 0.20.2 + '@esbuild/linux-s390x': 0.20.2 + '@esbuild/linux-x64': 0.20.2 + '@esbuild/netbsd-x64': 0.20.2 + '@esbuild/openbsd-x64': 0.20.2 + '@esbuild/sunos-x64': 0.20.2 + '@esbuild/win32-arm64': 0.20.2 + '@esbuild/win32-ia32': 0.20.2 + '@esbuild/win32-x64': 0.20.2 + + escalade@3.1.1: {} + + escape-string-regexp@1.0.5: {} + + estree-walker@2.0.2: {} + + ethers@6.13.4: + dependencies: + '@adraffy/ens-normalize': 1.10.1 + '@noble/curves': 1.2.0 + '@noble/hashes': 1.3.2 + '@types/node': 22.7.5 + aes-js: 4.0.0-beta.5 + tslib: 2.7.0 + ws: 8.17.1 + transitivePeerDependencies: + - bufferutil + - utf-8-validate + + eval@0.1.8: + dependencies: + '@types/node': 20.11.30 + require-like: 0.1.2 + + eventemitter2@6.4.9: {} + + find-up@5.0.0: + dependencies: + locate-path: 6.0.0 + path-exists: 4.0.0 + + framer-motion@9.0.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1): + dependencies: + '@motionone/dom': 10.16.2 + hey-listen: 1.0.8 + react: 18.3.1 + react-dom: 18.3.1(react@18.3.1) + tslib: 2.6.1 + optionalDependencies: + '@emotion/is-prop-valid': 0.8.8 + + fsevents@2.3.3: + optional: true + + gensync@1.0.0-beta.2: {} + + get-nonce@1.0.1: {} + + globals@11.12.0: {} + + globrex@0.1.2: {} + + has-flag@3.0.0: {} + + has-flag@4.0.0: {} + + hey-listen@1.0.8: {} + + idb@7.1.1: {} + + import-fresh@3.3.0: + dependencies: + parent-module: 1.0.1 + resolve-from: 4.0.0 + + invariant@2.2.4: + dependencies: + loose-envify: 1.4.0 + + is-arrayish@0.2.1: {} + + javascript-stringify@2.1.0: {} + + js-base64@3.7.7: {} + + js-tokens@4.0.0: {} + + js-yaml@4.1.0: + dependencies: + argparse: 2.0.1 + + jsesc@2.5.2: {} + + json-parse-even-better-errors@2.3.1: {} + + json5@2.2.3: {} + + jsonc-parser@3.2.1: {} + + lines-and-columns@1.2.4: {} + + locate-path@6.0.0: + dependencies: + p-locate: 5.0.0 + + lodash@4.17.21: {} + + loose-envify@1.4.0: + dependencies: + js-tokens: 4.0.0 + + lower-case@2.0.2: + dependencies: + tslib: 2.6.2 + + lru-cache@5.1.1: + dependencies: + yallist: 3.1.1 + + media-query-parser@2.0.2: + dependencies: + '@babel/runtime': 7.24.1 + + mlly@1.6.1: + dependencies: + acorn: 8.11.3 + pathe: 1.1.2 + pkg-types: 1.0.3 + ufo: 1.5.3 + + modern-ahocorasick@1.0.1: {} + + ms@2.1.2: {} + + nanoid@3.3.7: {} + + no-case@3.0.4: + dependencies: + lower-case: 2.0.2 + tslib: 2.6.2 + + node-releases@2.0.14: {} + + outdent@0.8.0: {} + + p-limit@3.1.0: + dependencies: + yocto-queue: 0.1.0 + + p-locate@5.0.0: + dependencies: + p-limit: 3.1.0 + + parent-module@1.0.1: + dependencies: + callsites: 3.1.0 + + parse-json@5.2.0: + dependencies: + '@babel/code-frame': 7.23.5 + error-ex: 1.3.2 + json-parse-even-better-errors: 2.3.1 + lines-and-columns: 1.2.4 + + path-exists@4.0.0: {} + + path-type@4.0.0: {} + + pathe@1.1.2: {} + + picocolors@1.0.0: {} + + picomatch@2.3.1: {} + + pkg-types@1.0.3: + dependencies: + jsonc-parser: 3.2.1 + mlly: 1.6.1 + pathe: 1.1.2 + + postcss@8.4.38: + dependencies: + nanoid: 3.3.7 + picocolors: 1.0.0 + source-map-js: 1.2.0 + + react-dom@18.3.1(react@18.3.1): + dependencies: + loose-envify: 1.4.0 + react: 18.3.1 + scheduler: 0.23.2 + + react-hook-form@7.53.0(react@18.3.1): + dependencies: + react: 18.3.1 + + react-refresh@0.14.0: {} + + react-remove-scroll-bar@2.3.6(@types/react@18.3.7)(react@18.3.1): + dependencies: + react: 18.3.1 + react-style-singleton: 2.2.1(@types/react@18.3.7)(react@18.3.1) + tslib: 2.6.2 + optionalDependencies: + '@types/react': 18.3.7 + + react-remove-scroll@2.5.7(@types/react@18.3.7)(react@18.3.1): + dependencies: + react: 18.3.1 + react-remove-scroll-bar: 2.3.6(@types/react@18.3.7)(react@18.3.1) + react-style-singleton: 2.2.1(@types/react@18.3.7)(react@18.3.1) + tslib: 2.6.2 + use-callback-ref: 1.3.2(@types/react@18.3.7)(react@18.3.1) + use-sidecar: 1.1.2(@types/react@18.3.7)(react@18.3.1) + optionalDependencies: + '@types/react': 18.3.7 + + react-style-singleton@2.2.1(@types/react@18.3.7)(react@18.3.1): + dependencies: + get-nonce: 1.0.1 + invariant: 2.2.4 + react: 18.3.1 + tslib: 2.6.2 + optionalDependencies: + '@types/react': 18.3.7 + + react@18.3.1: + dependencies: + loose-envify: 1.4.0 + + regenerator-runtime@0.14.1: {} + + require-like@0.1.2: {} + + resolve-from@4.0.0: {} + + rollup@4.13.1: + dependencies: + '@types/estree': 1.0.5 + optionalDependencies: + '@rollup/rollup-android-arm-eabi': 4.13.1 + '@rollup/rollup-android-arm64': 4.13.1 + '@rollup/rollup-darwin-arm64': 4.13.1 + '@rollup/rollup-darwin-x64': 4.13.1 + '@rollup/rollup-linux-arm-gnueabihf': 4.13.1 + '@rollup/rollup-linux-arm64-gnu': 4.13.1 + '@rollup/rollup-linux-arm64-musl': 4.13.1 + '@rollup/rollup-linux-riscv64-gnu': 4.13.1 + '@rollup/rollup-linux-s390x-gnu': 4.13.1 + '@rollup/rollup-linux-x64-gnu': 4.13.1 + '@rollup/rollup-linux-x64-musl': 4.13.1 + '@rollup/rollup-win32-arm64-msvc': 4.13.1 + '@rollup/rollup-win32-ia32-msvc': 4.13.1 + '@rollup/rollup-win32-x64-msvc': 4.13.1 + fsevents: 2.3.3 + + rollup@4.21.3: + dependencies: + '@types/estree': 1.0.5 + optionalDependencies: + '@rollup/rollup-android-arm-eabi': 4.21.3 + '@rollup/rollup-android-arm64': 4.21.3 + '@rollup/rollup-darwin-arm64': 4.21.3 + '@rollup/rollup-darwin-x64': 4.21.3 + '@rollup/rollup-linux-arm-gnueabihf': 4.21.3 + '@rollup/rollup-linux-arm-musleabihf': 4.21.3 + '@rollup/rollup-linux-arm64-gnu': 4.21.3 + '@rollup/rollup-linux-arm64-musl': 4.21.3 + '@rollup/rollup-linux-powerpc64le-gnu': 4.21.3 + '@rollup/rollup-linux-riscv64-gnu': 4.21.3 + '@rollup/rollup-linux-s390x-gnu': 4.21.3 + '@rollup/rollup-linux-x64-gnu': 4.21.3 + '@rollup/rollup-linux-x64-musl': 4.21.3 + '@rollup/rollup-win32-arm64-msvc': 4.21.3 + '@rollup/rollup-win32-ia32-msvc': 4.21.3 + '@rollup/rollup-win32-x64-msvc': 4.21.3 + fsevents: 2.3.3 + optional: true + + scheduler@0.23.2: + dependencies: + loose-envify: 1.4.0 + + semver@6.3.1: {} + + snake-case@3.0.4: + dependencies: + dot-case: 3.0.4 + tslib: 2.6.2 + + source-map-js@1.2.0: {} + + supports-color@5.5.0: + dependencies: + has-flag: 3.0.0 + + supports-color@7.2.0: + dependencies: + has-flag: 4.0.0 + + svg-parser@2.0.4: {} + + to-fast-properties@2.0.0: {} + + tsconfck@3.0.3(typescript@4.5.5): + optionalDependencies: + typescript: 4.5.5 + + tslib@2.6.1: {} + + tslib@2.6.2: {} + + tslib@2.7.0: {} + + typescript@4.5.5: {} + + ufo@1.5.3: {} + + undici-types@5.26.5: {} + + undici-types@6.19.8: {} + + update-browserslist-db@1.0.13(browserslist@4.22.2): + dependencies: + browserslist: 4.22.2 + escalade: 3.1.1 + picocolors: 1.0.0 + + use-callback-ref@1.3.2(@types/react@18.3.7)(react@18.3.1): + dependencies: + react: 18.3.1 + tslib: 2.6.2 + optionalDependencies: + '@types/react': 18.3.7 + + use-sidecar@1.1.2(@types/react@18.3.7)(react@18.3.1): + dependencies: + detect-node-es: 1.1.0 + react: 18.3.1 + tslib: 2.6.2 + optionalDependencies: + '@types/react': 18.3.7 + + vite-node@1.4.0(@types/node@20.11.30): + dependencies: + cac: 6.7.14 + debug: 4.3.4 + pathe: 1.1.2 + picocolors: 1.0.0 + vite: 5.2.6(@types/node@20.11.30) + transitivePeerDependencies: + - '@types/node' + - less + - lightningcss + - sass + - stylus + - sugarss + - supports-color + - terser + + vite-plugin-svgr@4.2.0(rollup@4.21.3)(typescript@4.5.5)(vite@5.2.6(@types/node@20.11.30)): + dependencies: + '@rollup/pluginutils': 5.1.0(rollup@4.21.3) + '@svgr/core': 8.1.0(typescript@4.5.5) + '@svgr/plugin-jsx': 8.1.0(@svgr/core@8.1.0(typescript@4.5.5)) + vite: 5.2.6(@types/node@20.11.30) + transitivePeerDependencies: + - rollup + - supports-color + - typescript + + vite-tsconfig-paths@4.3.2(typescript@4.5.5)(vite@5.2.6(@types/node@20.11.30)): + dependencies: + debug: 4.3.4 + globrex: 0.1.2 + tsconfck: 3.0.3(typescript@4.5.5) + optionalDependencies: + vite: 5.2.6(@types/node@20.11.30) + transitivePeerDependencies: + - supports-color + - typescript + + vite@5.2.6(@types/node@20.11.30): + dependencies: + esbuild: 0.20.2 + postcss: 8.4.38 + rollup: 4.13.1 + optionalDependencies: + '@types/node': 20.11.30 + fsevents: 2.3.3 + + webextension-polyfill@0.10.0: {} + + ws@8.17.1: {} + + yallist@3.1.1: {} + + yocto-queue@0.1.0: {} diff --git a/.codesandbox/public/favicon.ico b/.codesandbox/public/favicon.ico new file mode 100644 index 0000000000000000000000000000000000000000..bf5da566d2f6c1f4708991ea19e967b9c80182d9 GIT binary patch literal 1068 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

Z~ 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 O0000fcioJ literal 0 HcmV?d00001 diff --git a/.codesandbox/public/logo512.png b/.codesandbox/public/logo512.png new file mode 100644 index 0000000000000000000000000000000000000000..36aff8456a17628959dc6d762518aa6b8c101e85 GIT binary patch literal 159929 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�*K$JrXN6thr%3uF=(*hZ@H(gI7; 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

j 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�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%0DY|_WHhS!o|kQ9kjEQ8$A3(R#!*%VBlbrt`Gl- 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
4;xuxgGV1b!ALF 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 a-jd<>av=Cn!|43y170XzWsj;m9(G$ literal 0 HcmV?d00001 diff --git a/.codesandbox/src/App.tsx b/.codesandbox/src/App.tsx new file mode 100644 index 0000000000..6a784796bb --- /dev/null +++ b/.codesandbox/src/App.tsx @@ -0,0 +1,1349 @@ +import { AnimatePresence } from 'framer-motion' +import React, { useState, useEffect, useMemo, SetStateAction } from 'react' +import { ethers } from 'ethers' +import { sequence } from '0xsequence' +import { walletContracts } from '@0xsequence/abi' +import { + Box, + Image, + Text, + Button, + ExternalLinkIcon, + Divider, + Card, + TransactionIcon, + Select, + TokenImage, + TextInput, + Modal +} from '@0xsequence/design-system' +import { ETHAuth } from '@0xsequence/ethauth' +import { configureLogger } from '@0xsequence/utils' +import { ConnectOptions, OpenWalletIntent, Settings } from '@0xsequence/provider' +import { ChainId, NetworkType } from '@0xsequence/network' + +import { ERC_20_ABI } from './constants/abi' +import { Console } from './components/Console' +import { Group } from './components/Group' +import { getDefaultChainId, toHexString } from './helpers' +import logoUrl from './images/logo.svg' +import skyweaverBannerUrl from './images/skyweaver-banner.png' +import skyweaverBannerLargeUrl from './images/skyweaver-banner-large.png' + +configureLogger({ logLevel: 'DEBUG' }) + +interface Environment { + name: string + walletUrl: string + projectAccessKey: string +} + +const environments: Environment[] = [ + { + name: 'production', + walletUrl: 'https://sequence.app', + projectAccessKey: 'AQAAAAAAAAbvrgpWEC2Aefg5qYStQmwjBpA' + }, + { + name: 'development', + walletUrl: 'https://dev.sequence.app', + //projectAccessKey: 'AQAAAAAAAAVBNfoB30kz7Ph4I_Qs5mkYuDc', + projectAccessKey: 'AQAAAAAAAAVCXiQ9f_57R44MjorZ4SmGdhA' + }, + { + name: 'local', + walletUrl: 'http://localhost:3333', + projectAccessKey: 'AQAAAAAAAAVCXiQ9f_57R44MjorZ4SmGdhA' + }, + { + name: 'custom', + walletUrl: '', + projectAccessKey: '' + } +] + +const DEFAULT_API_URL = 'https://api.sequence.app' + +// Specify your desired default chain id. NOTE: you can communicate to multiple +// chains at the same time without even having to switch the network, but a default +// chain is required. +const defaultChainId = getDefaultChainId() || ChainId.MAINNET +// const defaultChainId = ChainId.POLYGON +// const defaultChainId = ChainId.GOERLI +// const defaultChainId = ChainId.ARBITRUM +// const defaultChainId = ChainId.AVALANCHE +// etc.. see the full list here: https://docs.sequence.xyz/multi-chain-support + +// For Sequence core dev team -- app developers can ignore +// a custom wallet app url can specified in the query string +const urlParams = new URLSearchParams(window.location.search) + +const env = urlParams.get('env') ?? 'production' +const envConfig = environments.find(x => x.name === env) +const walletAppURL = urlParams.get('walletAppURL') ?? envConfig.walletUrl +const projectAccessKey = urlParams.get('projectAccessKey') ?? envConfig.projectAccessKey +const showProhibitedActions = urlParams.has('showProhibitedActions') + +const isCustom = walletAppURL !== envConfig.walletUrl || projectAccessKey !== envConfig.projectAccessKey + +if (walletAppURL && walletAppURL.length > 0) { + // Wallet can point to a custom wallet app url + // NOTICE: this is not needed, unless testing an alpha version of the wallet + sequence.initWallet(projectAccessKey, { defaultNetwork: defaultChainId, transports: { walletAppURL } }) +} else { + // Init the sequence wallet library at the top-level of your project with + // your designed default chain id + sequence.initWallet(projectAccessKey, { defaultNetwork: defaultChainId, transports: { walletAppURL } }) +} + +// App component +const App = () => { + const [consoleMsg, setConsoleMsg] = useState(null) + const [email, setEmail] = useState(null) + const [consoleLoading, setConsoleLoading] = useState(false) + const [isWalletConnected, setIsWalletConnected] = useState(false) + + const wallet = sequence.getWallet().getProvider() + + const [showChainId, setShowChainId] = useState(wallet.getChainId()) + const [isOpen, toggleModal] = useState(false) + const [warning, setWarning] = useState(false) + + useEffect(() => { + const listener = (chainId: string) => { + setShowChainId(Number(BigInt(chainId))) + } + wallet.on('chainChanged', listener) + return () => { + wallet.removeListener('chainChanged', listener) + } + }, [wallet]) + + useEffect(() => { + setIsWalletConnected(wallet.isConnected()) + }, [wallet]) + + useEffect(() => { + consoleWelcomeMessage() + // eslint-disable-next-line + }, [isWalletConnected]) + + useEffect(() => { + const onOpen = () => { + console.log('wallet window opened') + } + const onClose = () => { + console.log('wallet window closed') + } + + wallet.client.onOpen(onOpen) + wallet.client.onClose(onClose) + + return () => { + wallet.client.removeListener('open', onOpen) + wallet.client.removeListener('close', onClose) + } + }, [wallet]) + + const defaultConnectOptions: ConnectOptions = { + app: 'Demo Dapp', + askForEmail: true + // keepWalletOpened: true, + } + + // Methods + const connect = async (connectOptions: ConnectOptions = { app: 'Demo dapp' }) => { + if (isWalletConnected) { + resetConsole() + appendConsoleLine('Wallet already connected!') + setConsoleLoading(false) + return + } + + connectOptions = { + ...defaultConnectOptions, + ...connectOptions, + settings: { + ...defaultConnectOptions.settings, + ...connectOptions.settings + } + } + + try { + resetConsole() + appendConsoleLine('Connecting') + const wallet = sequence.getWallet() + + const connectDetails = await wallet.connect(connectOptions) + + // Example of how to verify using ETHAuth via Sequence API + if (connectOptions.authorize && connectDetails.connected) { + let apiUrl = urlParams.get('apiUrl') + + if (!apiUrl || apiUrl.length === 0) { + apiUrl = DEFAULT_API_URL + } + + const api = new sequence.api.SequenceAPIClient(apiUrl) + // or just + // const api = new sequence.api.SequenceAPIClient('https://api.sequence.app') + + const { isValid } = await api.isValidETHAuthProof({ + chainId: connectDetails.chainId, + walletAddress: connectDetails.session.accountAddress, + ethAuthProofString: connectDetails.proof!.proofString + }) + + appendConsoleLine(`isValid (API)?: ${isValid}`) + } + + // Example of how to verify using ETHAuth directl on the client + if (connectOptions.authorize) { + const ethAuth = new ETHAuth() + + if (connectDetails.proof) { + const decodedProof = await ethAuth.decodeProof(connectDetails.proof.proofString, true) + + const isValid = await wallet.utils.isValidTypedDataSignature( + wallet.getAddress(), + connectDetails.proof.typedData, + decodedProof.signature, + Number(BigInt(connectDetails.chainId)) + ) + + appendConsoleLine(`connected using chainId: ${BigInt(connectDetails.chainId).toString()}`) + appendConsoleLine(`isValid (client)?: ${isValid}`) + } + } + + setConsoleLoading(false) + if (connectDetails.connected) { + appendConsoleLine('Wallet connected!') + appendConsoleLine(`shared email: ${connectDetails.email}`) + setIsWalletConnected(true) + } else { + appendConsoleLine('Failed to connect wallet - ' + connectDetails.error) + } + } catch (e) { + console.error(e) + consoleErrorMessage() + } + } + + const disconnect = () => { + const wallet = sequence.getWallet() + wallet.disconnect() + consoleWelcomeMessage() + setIsWalletConnected(false) + } + + const openWallet = () => { + const wallet = sequence.getWallet() + wallet.openWallet() + } + + const openWalletWithSettings = () => { + const wallet = sequence.getWallet() + + const settings: Settings = { + theme: 'light', + includedPaymentProviders: ['moonpay', 'ramp'], + defaultFundingCurrency: 'eth', + defaultPurchaseAmount: 400, + lockFundingCurrencyToDefault: false + } + + const intent: OpenWalletIntent = { + type: 'openWithOptions', + options: { + app: 'Demo Dapp', + settings + } + } + + const path = 'wallet/add-funds' + wallet.openWallet(path, intent) + } + + const closeWallet = () => { + const wallet = sequence.getWallet() + wallet.closeWallet() + } + + const isConnected = async () => { + resetConsole() + const wallet = sequence.getWallet() + appendConsoleLine(`isConnected?: ${wallet.isConnected()}`) + setConsoleLoading(false) + } + + const isOpened = async () => { + resetConsole() + const wallet = sequence.getWallet() + appendConsoleLine(`isOpened?: ${wallet.isOpened()}`) + setConsoleLoading(false) + } + + const getChainID = async () => { + try { + resetConsole() + + const topChainId = wallet.getChainId() + appendConsoleLine(`top chainId: ${topChainId}`) + + const provider = wallet + const providerChainId = provider!.getChainId() + appendConsoleLine(`provider.getChainId(): ${providerChainId}`) + + const signer = wallet.getSigner() + const signerChainId = await signer.getChainId() + appendConsoleLine(`signer.getChainId(): ${signerChainId}`) + + setConsoleLoading(false) + } catch (e) { + console.error(e) + consoleErrorMessage() + } + } + + const getAccounts = async () => { + try { + resetConsole() + + const wallet = sequence.getWallet() + const address = wallet.getAddress() + appendConsoleLine(`getAddress(): ${address}`) + + const provider = wallet.getProvider() + const accountList = provider.listAccounts() + appendConsoleLine(`accounts: ${JSON.stringify(accountList)}`) + + setConsoleLoading(false) + } catch (e) { + console.error(e) + consoleErrorMessage() + } + } + + const getBalance = async () => { + try { + resetConsole() + + const wallet = sequence.getWallet() + + const provider = wallet.getProvider() + const account = wallet.getAddress() + const balanceChk1 = await provider!.getBalance(account) + appendConsoleLine(`balance check 1: ${balanceChk1.toString()}`) + + const signer = wallet.getSigner() + const balanceChk2 = await signer.getBalance() + appendConsoleLine(`balance check 2: ${balanceChk2.toString()}`) + + setConsoleLoading(false) + } catch (e) { + console.error(e) + consoleErrorMessage() + } + } + + const getNetworks = async () => { + try { + resetConsole() + + const wallet = sequence.getWallet() + const networks = await wallet.getNetworks() + + appendConsoleLine(`networks: ${JSON.stringify(networks, null, 2)}`) + setConsoleLoading(false) + } catch (e) { + console.error(e) + consoleErrorMessage() + } + } + + const signMessageString = async () => { + try { + resetConsole() + + const wallet = sequence.getWallet() + + appendConsoleLine('signing message...') + const signer = wallet.getSigner() + + const message = `1915 Robert Frost +The Road Not Taken + +Two roads diverged in a yellow wood, +And sorry I could not travel both +And be one traveler, long I stood +And looked down one as far as I could +To where it bent in the undergrowth + +Then took the other, as just as fair, +And having perhaps the better claim, +Because it was grassy and wanted wear +Though as for that the passing there +Had worn them really about the same, + +And both that morning equally lay +In leaves no step had trodden black. +Oh, I kept the first for another day! +Yet knowing how way leads on to way, +I doubted if I should ever come back. + +I shall be telling this with a sigh +Somewhere ages and ages hence: +Two roads diverged in a wood, and I— +I took the one less traveled by, +And that has made all the difference. + +\u2601 \u2600 \u2602` + + // sign + const sig = await signer.signMessage(message) + appendConsoleLine(`signature: ${sig}`) + + const isValid = await wallet.utils.isValidMessageSignature(wallet.getAddress(), message, sig, await signer.getChainId()) + appendConsoleLine(`isValid?: ${isValid}`) + if (!isValid) throw new Error('sig invalid') + + setConsoleLoading(false) + } catch (e) { + console.error(e) + consoleErrorMessage() + } + } + + const signMessageHex = async () => { + try { + resetConsole() + + const wallet = sequence.getWallet() + + appendConsoleLine('signing message...') + const signer = wallet.getSigner() + + // Message in hex + const message = ethers.hexlify(ethers.toUtf8Bytes('Hello, world!')) + + // sign + const sig = await signer.signMessage(message) + appendConsoleLine(`signature: ${sig}`) + + const isValid = await wallet.utils.isValidMessageSignature(wallet.getAddress(), message, sig, await signer.getChainId()) + appendConsoleLine(`isValid?: ${isValid}`) + if (!isValid) throw new Error('sig invalid') + + setConsoleLoading(false) + } catch (e) { + console.error(e) + consoleErrorMessage() + } + } + + const signMessageBytes = async () => { + try { + resetConsole() + + const wallet = sequence.getWallet() + + appendConsoleLine('signing message...') + const signer = wallet.getSigner() + + // Message in hex + const message = ethers.toUtf8Bytes('Hello, world!') + + // sign + const sig = await signer.signMessage(message) + appendConsoleLine(`signature: ${sig}`) + + const isValid = await wallet.utils.isValidMessageSignature(wallet.getAddress(), message, sig, await signer.getChainId()) + appendConsoleLine(`isValid?: ${isValid}`) + if (!isValid) throw new Error('sig invalid') + + setConsoleLoading(false) + } catch (e) { + console.error(e) + consoleErrorMessage() + } + } + + const signTypedData = async () => { + try { + resetConsole() + const wallet = sequence.getWallet() + + appendConsoleLine('signing typedData...') + + const typedData: sequence.utils.TypedData = { + types: { + Person: [ + { name: 'name', type: 'string' }, + { name: 'wallet', type: 'address' } + ], + Mail: [ + { name: 'from', type: 'Person' }, + { name: 'to', type: 'Person' }, + { name: 'cc', type: 'Person[]' }, + { name: 'contents', type: 'string' }, + { name: 'attachements', type: 'string[]' } + ] + }, + primaryType: 'Mail', + domain: { + name: 'Ether Mail', + version: '1', + chainId: 1, + verifyingContract: '0xCcCCccccCCCCcCCCCCCcCcCccCcCCCcCcccccccC' + }, + message: { + from: { + name: 'Cow', + wallet: '0xCD2a3d9F938E13CD947Ec05AbC7FE734Df8DD826' + }, + to: { + name: 'Bob', + wallet: '0xbBbBBBBbbBBBbbbBbbBbbbbBBbBbbbbBbBbbBBbB' + }, + cc: [ + { name: 'Dev Team', wallet: '0xbBbBBBBbbBBBbbbBbbBbbbbBBbBbbbbBbBbbBBbB' }, + { name: 'Accounting', wallet: '0xbBbBBBBbbBBBbbbBbbBbbbbBBbBbbbbBbBbbBBbB' } + ], + contents: 'Hello, Bob!', + attachements: ['cat.png', 'dog.png'] + } + } + + const signer = wallet.getSigner() + + const sig = await signer.signTypedData(typedData.domain, typedData.types, typedData.message) + appendConsoleLine(`signature: ${sig}`) + + // validate + const isValid = await wallet.utils.isValidTypedDataSignature(wallet.getAddress(), typedData, sig, await signer.getChainId()) + appendConsoleLine(`isValid?: ${isValid}`) + + setConsoleLoading(false) + } catch (e) { + console.error(e) + consoleErrorMessage() + } + } + + const estimateUnwrapGas = async () => { + try { + resetConsole() + + const wallet = sequence.getWallet() + + const wmaticContractAddress = '0x0d500B1d8E8eF31E21C99d1Db9A6444d3ADf1270' + const wmaticInterface = new ethers.Interface(['function withdraw(uint256 amount)']) + + const tx: sequence.transactions.Transaction = { + to: wmaticContractAddress, + data: wmaticInterface.encodeFunctionData('withdraw', ['1000000000000000000']) + } + + const provider = wallet.getProvider() + const estimate = await provider.estimateGas(tx) + + appendConsoleLine(`estimated gas needed for wmatic withdrawal : ${estimate.toString()}`) + + setConsoleLoading(false) + } catch (e) { + console.error(e) + consoleErrorMessage() + } + } + + const sendETH = async (signer?: sequence.provider.SequenceSigner) => { + try { + resetConsole() + const wallet = sequence.getWallet() + + signer = signer || wallet.getSigner() + + appendConsoleLine(`Transfer txn on ${signer.getChainId()} chainId`) + + // NOTE: on mainnet, the balance will be of ETH value + // and on matic, the balance will be of MATIC value + + // Sending the funds to the wallet itself + // so we don't lose any funds ;-) + // (of course, you can send anywhere) + const toAddress = await signer.getAddress() + + const tx1: sequence.transactions.Transaction = { + delegateCall: false, + revertOnError: false, + gasLimit: '0x55555', + to: toAddress, + value: ethers.parseEther('1.234'), + data: '0x' + } + + const tx2: sequence.transactions.Transaction = { + delegateCall: false, + revertOnError: false, + gasLimit: '0x55555', + to: toAddress, + value: ethers.parseEther('0.4242'), + data: '0x' + } + + const provider = signer.provider + + const balance1 = await provider.getBalance(toAddress) + appendConsoleLine(`balance of ${toAddress}, before: ${balance1}`) + + const txnResp = await signer.sendTransaction([tx1, tx2]) + appendConsoleLine(`txnResponse: ${JSON.stringify(txnResp)}`) + + const balance2 = await provider.getBalance(toAddress) + appendConsoleLine(`balance of ${toAddress}, after: ${balance2}`) + + setConsoleLoading(false) + } catch (e) { + console.error(e) + consoleErrorMessage() + } + } + + const sendSepoliaUSDC = async (signer?: sequence.provider.SequenceSigner) => { + try { + resetConsole() + + const wallet = sequence.getWallet() + + signer = signer || wallet.getSigner() // select DefaultChain signer by default + + // Sending the funds to the wallet itself + // so we don't lose any funds ;-) + // (of course, you can send anywhere) + const toAddress = await signer.getAddress() + + const amount = ethers.parseUnits('1', 1) + + // (USDC address on Sepolia) + const usdcAddress = '0x07865c6e87b9f70255377e024ace6630c1eaa37f' + + const tx: sequence.transactions.Transaction = { + delegateCall: false, + revertOnError: false, + gasLimit: '0x55555', + to: usdcAddress, + value: 0, + data: new ethers.Interface(ERC_20_ABI).encodeFunctionData('transfer', [toAddress, toHexString(amount)]) + } + + const txnResp = await signer.sendTransaction([tx], { chainId: ChainId.SEPOLIA }) + appendConsoleLine(`txnResponse: ${JSON.stringify(txnResp)}`) + + setConsoleLoading(false) + } catch (e) { + console.error(e) + consoleErrorMessage() + } + } + + const sendDAI = async (signer?: sequence.provider.SequenceSigner) => { + try { + resetConsole() + + const wallet = sequence.getWallet() + + signer = signer || wallet.getSigner() // select DefaultChain signer by default + + // Sending the funds to the wallet itself + // so we don't lose any funds ;-) + // (of course, you can send anywhere) + const toAddress = await signer.getAddress() + + const amount = ethers.parseUnits('0.05', 18) + const daiContractAddress = '0x8f3Cf7ad23Cd3CaDbD9735AFf958023239c6A063' // (DAI address on Polygon) + + const tx: sequence.transactions.Transaction = { + delegateCall: false, + revertOnError: false, + gasLimit: '0x55555', + to: daiContractAddress, + value: 0, + data: new ethers.Interface(ERC_20_ABI).encodeFunctionData('transfer', [toAddress, toHexString(amount)]) + } + + const txnResp = await signer.sendTransaction([tx]) + appendConsoleLine(`txnResponse: ${JSON.stringify(txnResp)}`) + + setConsoleLoading(false) + } catch (e) { + console.error(e) + consoleErrorMessage() + } + } + + const sendETHSidechain = async () => { + try { + const wallet = sequence.getWallet() + + // Send either to Arbitrum or Optimism + // just pick one that is not the current chainId + const pick = wallet.getChainId() === ChainId.ARBITRUM ? ChainId.OPTIMISM : ChainId.ARBITRUM + sendETH(wallet.getSigner(pick)) + } catch (e) { + console.error(e) + consoleErrorMessage() + } + } + + const send1155Tokens = async () => { + try { + resetConsole() + appendConsoleLine('TODO') + setConsoleLoading(false) + } catch (e) { + console.error(e) + consoleErrorMessage() + } + } + + const contractExample = async (signer?: sequence.provider.SequenceSigner) => { + try { + resetConsole() + + const wallet = sequence.getWallet() + + signer = signer || wallet.getSigner() + + const abi = [ + 'function balanceOf(address owner) view returns (uint256)', + 'function decimals() view returns (uint8)', + 'function symbol() view returns (string)', + 'function transfer(address to, uint amount) returns (bool)', + 'event Transfer(address indexed from, address indexed to, uint amount)' + ] + + // USD Coin (PoS) on Polygon + const address = '0x2791bca1f2de4661ed88a30c99a7a9449aa84174' + + const usdc = new ethers.Contract(address, abi) + + const usdSymbol = await usdc.symbol() + appendConsoleLine(`Token symbol: ${usdSymbol}`) + + const balance = await usdc.balanceOf(await signer.getAddress()) + appendConsoleLine(`Token Balance: ${balance.toString()}`) + + setConsoleLoading(false) + } catch (e) { + console.error(e) + consoleErrorMessage() + } + } + + const fetchTokenBalances = async () => { + try { + resetConsole() + + const wallet = sequence.getWallet() + + const signer = wallet.getSigner() + const accountAddress = await signer.getAddress() + const networks = await wallet.getNetworks() + const network = networks.find(network => network.chainId === ChainId.POLYGON) + + if (!network) { + throw new Error(`Could not find Polygon network in networks list`) + } + + const indexer = new sequence.indexer.SequenceIndexer(network.indexerUrl) + + const tokenBalances = await indexer.getTokenBalances({ + accountAddress: accountAddress, + includeMetadata: true + }) + + appendConsoleLine(`tokens in your account: ${JSON.stringify(tokenBalances)}`) + + // NOTE: you can put any NFT/collectible address in the `contractAddress` field and it will return all of the balances + metadata. + // We use the Skyweaver production contract address here for demo purposes, but try another one :) + const skyweaverCollectibles = await indexer.getTokenBalances({ + accountAddress: accountAddress, + includeMetadata: true, + contractAddress: '0x631998e91476DA5B870D741192fc5Cbc55F5a52E' + }) + appendConsoleLine(`skyweaver collectibles in your account: ${JSON.stringify(skyweaverCollectibles)}`) + + setConsoleLoading(false) + } catch (e) { + console.error(e) + consoleErrorMessage() + } + } + + const updateImplementation = async (signer?: sequence.provider.SequenceSigner) => { + try { + resetConsole() + + const wallet = sequence.getWallet() + + signer = signer || wallet.getSigner() // select DefaultChain signer by default + + const transaction: sequence.transactions.Transaction = { + to: wallet.getAddress(), + data: new ethers.Interface(walletContracts.mainModule.abi).encodeFunctionData('updateImplementation', [ + ethers.ZeroAddress + ]) + } + + const response = await signer.sendTransaction(transaction) + appendConsoleLine(`response: ${JSON.stringify(response)}`) + setConsoleLoading(false) + } catch (e) { + console.error(e) + consoleErrorMessage() + } + } + + const updateImageHash = async (signer?: sequence.provider.SequenceSigner) => { + try { + resetConsole() + + const wallet = sequence.getWallet() + + signer = signer || wallet.getSigner() // select DefaultChain signer by default + + const transaction: sequence.transactions.Transaction = { + to: wallet.getAddress(), + data: new ethers.Interface(walletContracts.mainModuleUpgradable.abi).encodeFunctionData('updateImageHash', [ + ethers.ZeroHash + ]) + } + + const response = await signer.sendTransaction(transaction) + appendConsoleLine(`response: ${JSON.stringify(response)}`) + setConsoleLoading(false) + } catch (e) { + console.error(e) + consoleErrorMessage() + } + } + + const delegateCall = async (signer?: sequence.provider.SequenceSigner) => { + try { + resetConsole() + + const wallet = sequence.getWallet() + + signer = signer || wallet.getSigner() // select DefaultChain signer by default + + const transaction: sequence.transactions.Transaction = { + to: wallet.getAddress(), + delegateCall: true + } + + const response = await signer.sendTransaction(transaction) + appendConsoleLine(`response: ${JSON.stringify(response)}`) + setConsoleLoading(false) + } catch (e) { + console.error(e) + consoleErrorMessage() + } + } + + const addHook = async (signer?: sequence.provider.SequenceSigner) => { + try { + resetConsole() + + const wallet = sequence.getWallet() + + signer = signer || wallet.getSigner() // select DefaultChain signer by default + + const transaction: sequence.transactions.Transaction = { + to: wallet.getAddress(), + data: new ethers.Interface(['function addHook(bytes4 _signature, address _implementation)']).encodeFunctionData( + 'addHook', + ['0x01234567', ethers.ZeroAddress] + ) + } + + const response = await signer.sendTransaction(transaction) + appendConsoleLine(`response: ${JSON.stringify(response)}`) + setConsoleLoading(false) + } catch (e) { + console.error(e) + consoleErrorMessage() + } + } + + const setExtraImageHash = async (signer?: sequence.provider.SequenceSigner) => { + try { + resetConsole() + + const wallet = sequence.getWallet() + + signer = signer || wallet.getSigner() // select DefaultChain signer by default + + const transaction: sequence.transactions.Transaction = { + to: wallet.getAddress(), + data: new ethers.Interface(['function setExtraImageHash(bytes32 _imageHash, uint256 _expiration)']).encodeFunctionData( + 'setExtraImageHash', + [ethers.ZeroHash, ethers.MaxUint256] + ) + } + + const response = await signer.sendTransaction(transaction) + appendConsoleLine(`response: ${JSON.stringify(response)}`) + setConsoleLoading(false) + } catch (e) { + console.error(e) + consoleErrorMessage() + } + } + + const appendConsoleLine = (message: string, clear = false) => { + console.log(message) + + if (clear) { + return setConsoleMsg(message) + } + + return setConsoleMsg(prevState => { + return `${prevState}\n\n${message}` + }) + } + + const resetConsole = () => { + setConsoleLoading(true) + } + + const consoleWelcomeMessage = () => { + setConsoleLoading(false) + + if (isWalletConnected) { + setConsoleMsg('Status: Wallet is connected :)') + } else { + setConsoleMsg('Status: Wallet not connected. Please connect wallet first.') + } + } + + const consoleErrorMessage = () => { + setConsoleLoading(false) + setConsoleMsg('An error occurred') + } + + // networks list, filtered and sorted + const omitNetworks = [ + ChainId.RINKEBY, + ChainId.HARDHAT, + ChainId.HARDHAT_2, + ChainId.KOVAN, + ChainId.ROPSTEN, + ChainId.HOMEVERSE_TESTNET, + ChainId.BASE_GOERLI + ] + + const mainnets = Object.values(sequence.network.networks) + .filter(network => network.type === NetworkType.MAINNET) + .sort((a, b) => a.chainId - b.chainId) + const testnets = Object.values(sequence.network.networks) + .filter(network => network.type === NetworkType.TESTNET) + .sort((a, b) => a.chainId - b.chainId) + const networks = [...mainnets, ...testnets].filter(network => !network.deprecated && !omitNetworks.includes(network.chainId)) + + useEffect(() => { + if (email && !isOpen) { + console.log(email) + connect({ + app: 'Demo Dapp', + authorize: true, + settings: { + // Specify signInWithEmail with an email address to allow user automatically sign in with the email option. + signInWithEmail: email, + theme: 'dark', + bannerUrl: `${window.location.origin}${skyweaverBannerUrl}` + } + }) + setEmail(null) + } + }, [email, isOpen]) + + const sanitizeEmail = (email: string | null) => { + if (!email) return false + const trimmedEmail = email.trim() + + return ( + + +
+ logo + + + + + + Demo Dapp + + + + + + A dapp example on how to use the Sequence Wallet. This covers how to connect, sign messages and send transctions. + + + + + + + Please open your browser dev inspector to view output of functions below. + + + + + + {!isCustom && ( + + sequence.getWallet().setDefaultChainId(Number(value))} + value={String(showChainId)} + options={[ + ...Object.values(networks).map(network => ({ + label: ( + + + {network.title!} + + ), + value: String(network.chainId) + })) + ]} + /> + + + +