diff --git a/.bundlemonrc.json b/.bundlemonrc.json new file mode 100644 index 000000000000..0fefe684c8be --- /dev/null +++ b/.bundlemonrc.json @@ -0,0 +1,14 @@ +{ + "baseDir": "./packages/", + "files": [ + { + "friendlyName": "@solana/web3.js production bundle", + "path": "library/dist/index.production.min.js" + }, + { + "path": "**/dist/index.*.mjs" + } + ], + "includeCommitMessage": true, + "reportOutput": ["github"] +} diff --git a/.github/workflows/bundlesize.yml b/.github/workflows/bundlesize.yml index 0f2c834ae5dc..93e3ad886905 100644 --- a/.github/workflows/bundlesize.yml +++ b/.github/workflows/bundlesize.yml @@ -1,39 +1,36 @@ -name: Analyze Library Bundle Size +name: Compare bundle size on: - workflow_run: - workflows: - - Pull requests - types: - - completed + push: + branches: [master] + pull_request: + types: [synchronize, opened, reopened] + +env: + # Among other things, opts out of Turborepo telemetry + # See https://consoledonottrack.com/ + DO_NOT_TRACK: '1' + # Some tasks slow down considerably on GitHub Actions runners when concurrency is high + TURBO_CONCURRENCY: 1 + # Enables Turborepo Remote Caching. + TURBO_REMOTE_CACHE_SIGNATURE_KEY: ${{ secrets.TURBO_REMOTE_CACHE_SIGNATURE_KEY }} + TURBO_TOKEN: ${{ secrets.TURBO_TOKEN }} + TURBO_TEAM: ${{ secrets.TURBO_TEAM }} jobs: - compare-bundle-size: - name: Compare Bundle Size + build: runs-on: ubuntu-latest - - if: > - github.event.workflow_run.event == 'pull_request' && - github.event.workflow_run.conclusion == 'success' - steps: - - name: Install package manager - uses: pnpm/action-setup@v3 - with: - version: 9.1.0 - run_install: false + - name: Checkout + uses: actions/checkout@v4 - - name: Download Library Bundle - uses: actions/download-artifact@v4 + - name: Install Dependencies + uses: ./.github/workflows/actions/install-dependencies with: - github-token: ${{ secrets.GITHUB_TOKEN }} - run-id: ${{ github.event.workflow_run.id }} - name: library-dist + version: current + + - name: Build + run: pnpm turbo compile:js --concurrency=${TURBO_CONCURRENCY:-1} - - name: Run Bundlewatch - run: pnpm dlx bundlewatch - env: - BUNDLEWATCH_GITHUB_TOKEN: ${{ secrets.BUNDLEWATCH_GITHUB_TOKEN }} - CI_BRANCH: ${{ github.ref }} - CI_BRANCH_BASE: refs/heads/master - CI_COMMIT_SHA: ${{ github.event.pull_request.head.sha }} + - name: BundleMon + uses: lironer/bundlemon-action@v1 diff --git a/package.json b/package.json index c90154a0438a..94b737be460a 100644 --- a/package.json +++ b/package.json @@ -31,6 +31,7 @@ "@typescript-eslint/eslint-plugin": "^8.12.2", "@typescript-eslint/parser": "^8.12.2", "agadoo": "^3.0.0", + "bundlemon": "^3.1.0", "eslint": "^9.13.0", "eslint-plugin-jest": "^28.8.3", "eslint-plugin-react-hooks": "^5.0.0", diff --git a/packages/accounts/package.json b/packages/accounts/package.json index 073cf77e59c1..813302630b45 100644 --- a/packages/accounts/package.json +++ b/packages/accounts/package.json @@ -81,14 +81,6 @@ "peerDependencies": { "typescript": ">=5" }, - "bundlewatch": { - "defaultCompression": "gzip", - "files": [ - { - "path": "./dist/index*.js" - } - ] - }, "engines": { "node": ">=20.18.0" } diff --git a/packages/addresses/package.json b/packages/addresses/package.json index cce2ceaefe40..00072a8d1b72 100644 --- a/packages/addresses/package.json +++ b/packages/addresses/package.json @@ -82,14 +82,6 @@ "peerDependencies": { "typescript": ">=5" }, - "bundlewatch": { - "defaultCompression": "gzip", - "files": [ - { - "path": "./dist/index*.js" - } - ] - }, "engines": { "node": ">=20.18.0" } diff --git a/packages/assertions/package.json b/packages/assertions/package.json index a306cbd5dc45..708153d206a8 100644 --- a/packages/assertions/package.json +++ b/packages/assertions/package.json @@ -79,14 +79,6 @@ "peerDependencies": { "typescript": ">=5" }, - "bundlewatch": { - "defaultCompression": "gzip", - "files": [ - { - "path": "./dist/index*.js" - } - ] - }, "engines": { "node": ">=20.18.0" } diff --git a/packages/codecs-core/package.json b/packages/codecs-core/package.json index 47924be8fa8e..44ddd1191e74 100644 --- a/packages/codecs-core/package.json +++ b/packages/codecs-core/package.json @@ -83,14 +83,6 @@ "peerDependencies": { "typescript": ">=5" }, - "bundlewatch": { - "defaultCompression": "gzip", - "files": [ - { - "path": "./dist/index*.js" - } - ] - }, "engines": { "node": ">=20.18.0" } diff --git a/packages/codecs-data-structures/package.json b/packages/codecs-data-structures/package.json index 60b5de555ccc..228ad994ac07 100644 --- a/packages/codecs-data-structures/package.json +++ b/packages/codecs-data-structures/package.json @@ -84,14 +84,6 @@ "peerDependencies": { "typescript": ">=5" }, - "bundlewatch": { - "defaultCompression": "gzip", - "files": [ - { - "path": "./dist/index*.js" - } - ] - }, "engines": { "node": ">=20.18.0" } diff --git a/packages/codecs-numbers/package.json b/packages/codecs-numbers/package.json index 265ca227624a..96df486ca0ff 100644 --- a/packages/codecs-numbers/package.json +++ b/packages/codecs-numbers/package.json @@ -80,14 +80,6 @@ "peerDependencies": { "typescript": ">=5" }, - "bundlewatch": { - "defaultCompression": "gzip", - "files": [ - { - "path": "./dist/index*.js" - } - ] - }, "engines": { "node": ">=20.18.0" } diff --git a/packages/codecs-strings/package.json b/packages/codecs-strings/package.json index a810a7eef403..eda2d4dd880b 100644 --- a/packages/codecs-strings/package.json +++ b/packages/codecs-strings/package.json @@ -87,14 +87,6 @@ "fastestsmallesttextencoderdecoder": "^1.0.22", "typescript": ">=5" }, - "bundlewatch": { - "defaultCompression": "gzip", - "files": [ - { - "path": "./dist/index*.js" - } - ] - }, "engines": { "node": ">=20.18.0" } diff --git a/packages/codecs/package.json b/packages/codecs/package.json index 3ae682dea645..14b8322f8285 100644 --- a/packages/codecs/package.json +++ b/packages/codecs/package.json @@ -78,14 +78,6 @@ "peerDependencies": { "typescript": ">=5" }, - "bundlewatch": { - "defaultCompression": "gzip", - "files": [ - { - "path": "./dist/index*.js" - } - ] - }, "engines": { "node": ">=20.18.0" } diff --git a/packages/compat/package.json b/packages/compat/package.json index 61c8f49be318..4b935600bb32 100644 --- a/packages/compat/package.json +++ b/packages/compat/package.json @@ -87,14 +87,6 @@ "peerDependencies": { "typescript": ">=5" }, - "bundlewatch": { - "defaultCompression": "gzip", - "files": [ - { - "path": "./dist/index*.js" - } - ] - }, "engines": { "node": ">=20.18.0" } diff --git a/packages/errors/package.json b/packages/errors/package.json index 898e19b3fd2e..e78292bc19f4 100644 --- a/packages/errors/package.json +++ b/packages/errors/package.json @@ -81,14 +81,6 @@ "peerDependencies": { "typescript": ">=5" }, - "bundlewatch": { - "defaultCompression": "gzip", - "files": [ - { - "path": "./dist/index*.js" - } - ] - }, "engines": { "node": ">=20.18.0" } diff --git a/packages/fast-stable-stringify/package.json b/packages/fast-stable-stringify/package.json index 6683dcc48918..ce675abceb70 100644 --- a/packages/fast-stable-stringify/package.json +++ b/packages/fast-stable-stringify/package.json @@ -80,14 +80,6 @@ "peerDependencies": { "typescript": ">=5" }, - "bundlewatch": { - "defaultCompression": "gzip", - "files": [ - { - "path": "./dist/index*.js" - } - ] - }, "engines": { "node": ">=20.18.0" } diff --git a/packages/functional/package.json b/packages/functional/package.json index 40b790650418..a70d7e10d183 100644 --- a/packages/functional/package.json +++ b/packages/functional/package.json @@ -73,14 +73,6 @@ "peerDependencies": { "typescript": ">=5" }, - "bundlewatch": { - "defaultCompression": "gzip", - "files": [ - { - "path": "./dist/index*.js" - } - ] - }, "engines": { "node": ">=20.18.0" } diff --git a/packages/instructions/package.json b/packages/instructions/package.json index 1137db7c3199..97e37b148f36 100644 --- a/packages/instructions/package.json +++ b/packages/instructions/package.json @@ -79,14 +79,6 @@ "peerDependencies": { "typescript": ">=5" }, - "bundlewatch": { - "defaultCompression": "gzip", - "files": [ - { - "path": "./dist/index*.js" - } - ] - }, "engines": { "node": ">=20.18.0" } diff --git a/packages/keys/package.json b/packages/keys/package.json index c3cacc6d8302..290956553e19 100644 --- a/packages/keys/package.json +++ b/packages/keys/package.json @@ -83,14 +83,6 @@ "peerDependencies": { "typescript": ">=5" }, - "bundlewatch": { - "defaultCompression": "gzip", - "files": [ - { - "path": "./dist/index*.js" - } - ] - }, "devDependencies": { "tinybench": "^2.9.0" }, diff --git a/packages/library/package.json b/packages/library/package.json index 72b89d528ae4..0575d6d68b00 100644 --- a/packages/library/package.json +++ b/packages/library/package.json @@ -96,14 +96,6 @@ "peerDependencies": { "typescript": ">=5" }, - "bundlewatch": { - "defaultCompression": "gzip", - "files": [ - { - "path": "./dist/index*.js" - } - ] - }, "engines": { "node": ">=20.18.0" } diff --git a/packages/options/package.json b/packages/options/package.json index 5ea2689a9c5d..a1aeee6cdb1f 100644 --- a/packages/options/package.json +++ b/packages/options/package.json @@ -83,14 +83,6 @@ "peerDependencies": { "typescript": ">=5" }, - "bundlewatch": { - "defaultCompression": "gzip", - "files": [ - { - "path": "./dist/index*.js" - } - ] - }, "engines": { "node": ">=20.18.0" } diff --git a/packages/programs/package.json b/packages/programs/package.json index c7931f7a7c6c..b34cabfdace8 100644 --- a/packages/programs/package.json +++ b/packages/programs/package.json @@ -81,14 +81,6 @@ "peerDependencies": { "typescript": ">=5" }, - "bundlewatch": { - "defaultCompression": "gzip", - "files": [ - { - "path": "./dist/index*.js" - } - ] - }, "engines": { "node": ">=20.18.0" } diff --git a/packages/promises/package.json b/packages/promises/package.json index f259da9c91d5..b6456a9deaeb 100644 --- a/packages/promises/package.json +++ b/packages/promises/package.json @@ -73,14 +73,6 @@ "peerDependencies": { "typescript": ">=5" }, - "bundlewatch": { - "defaultCompression": "gzip", - "files": [ - { - "path": "./dist/index*.js" - } - ] - }, "engines": { "node": ">=20.18.0" } diff --git a/packages/react/package.json b/packages/react/package.json index b149aac574d1..0a4623d9bf31 100644 --- a/packages/react/package.json +++ b/packages/react/package.json @@ -97,14 +97,6 @@ "peerDependencies": { "react": ">=18" }, - "bundlewatch": { - "defaultCompression": "gzip", - "files": [ - { - "path": "./dist/index*.js" - } - ] - }, "engines": { "node": ">=20.18.0" } diff --git a/packages/rpc-api/package.json b/packages/rpc-api/package.json index 76f0b0dbe8e7..3a92b2c638e3 100644 --- a/packages/rpc-api/package.json +++ b/packages/rpc-api/package.json @@ -90,14 +90,6 @@ "peerDependencies": { "typescript": ">=5" }, - "bundlewatch": { - "defaultCompression": "gzip", - "files": [ - { - "path": "./dist/index*.js" - } - ] - }, "engines": { "node": ">=20.18.0" } diff --git a/packages/rpc-graphql/package.json b/packages/rpc-graphql/package.json index da547e152c36..eee094b3b9e3 100644 --- a/packages/rpc-graphql/package.json +++ b/packages/rpc-graphql/package.json @@ -87,14 +87,6 @@ "peerDependencies": { "typescript": ">=5" }, - "bundlewatch": { - "defaultCompression": "gzip", - "files": [ - { - "path": "./dist/index*.js" - } - ] - }, "engines": { "node": ">=20.18.0" } diff --git a/packages/rpc-parsed-types/package.json b/packages/rpc-parsed-types/package.json index c10d5cb4af8b..6d353e2c145d 100644 --- a/packages/rpc-parsed-types/package.json +++ b/packages/rpc-parsed-types/package.json @@ -75,14 +75,6 @@ "peerDependencies": { "typescript": ">=5" }, - "bundlewatch": { - "defaultCompression": "gzip", - "files": [ - { - "path": "./dist/index*.js" - } - ] - }, "engines": { "node": ">=20.18.0" } diff --git a/packages/rpc-spec-types/package.json b/packages/rpc-spec-types/package.json index 0011662f3335..b74fb75cab16 100644 --- a/packages/rpc-spec-types/package.json +++ b/packages/rpc-spec-types/package.json @@ -73,14 +73,6 @@ "peerDependencies": { "typescript": ">=5" }, - "bundlewatch": { - "defaultCompression": "gzip", - "files": [ - { - "path": "./dist/index*.js" - } - ] - }, "engines": { "node": ">=20.18.0" } diff --git a/packages/rpc-spec/package.json b/packages/rpc-spec/package.json index 07bab4c7cb4c..61d5c805033f 100644 --- a/packages/rpc-spec/package.json +++ b/packages/rpc-spec/package.json @@ -77,14 +77,6 @@ "peerDependencies": { "typescript": ">=5" }, - "bundlewatch": { - "defaultCompression": "gzip", - "files": [ - { - "path": "./dist/index*.js" - } - ] - }, "engines": { "node": ">=20.18.0" } diff --git a/packages/rpc-subscriptions-api/package.json b/packages/rpc-subscriptions-api/package.json index 63543f5e2ae3..e9831e4b0254 100644 --- a/packages/rpc-subscriptions-api/package.json +++ b/packages/rpc-subscriptions-api/package.json @@ -85,14 +85,6 @@ "peerDependencies": { "typescript": ">=5" }, - "bundlewatch": { - "defaultCompression": "gzip", - "files": [ - { - "path": "./dist/index*.js" - } - ] - }, "engines": { "node": ">=20.18.0" } diff --git a/packages/rpc-subscriptions-channel-websocket/package.json b/packages/rpc-subscriptions-channel-websocket/package.json index d5747a23522c..3a9ab80a8925 100644 --- a/packages/rpc-subscriptions-channel-websocket/package.json +++ b/packages/rpc-subscriptions-channel-websocket/package.json @@ -84,14 +84,6 @@ "typescript": ">=5", "ws": "^8.18.0" }, - "bundlewatch": { - "defaultCompression": "gzip", - "files": [ - { - "path": "./dist/index*.js" - } - ] - }, "engines": { "node": ">=20.18.0" } diff --git a/packages/rpc-subscriptions-spec/package.json b/packages/rpc-subscriptions-spec/package.json index 74007f08f5cf..2c5fb0321d03 100644 --- a/packages/rpc-subscriptions-spec/package.json +++ b/packages/rpc-subscriptions-spec/package.json @@ -79,14 +79,6 @@ "peerDependencies": { "typescript": ">=5" }, - "bundlewatch": { - "defaultCompression": "gzip", - "files": [ - { - "path": "./dist/index*.js" - } - ] - }, "engines": { "node": ">=20.18.0" } diff --git a/packages/rpc-subscriptions/package.json b/packages/rpc-subscriptions/package.json index b8beefbd24a4..63c0e339deca 100644 --- a/packages/rpc-subscriptions/package.json +++ b/packages/rpc-subscriptions/package.json @@ -89,14 +89,6 @@ "peerDependencies": { "typescript": ">=5" }, - "bundlewatch": { - "defaultCompression": "gzip", - "files": [ - { - "path": "./dist/index*.js" - } - ] - }, "engines": { "node": ">=20.18.0" } diff --git a/packages/rpc-transformers/package.json b/packages/rpc-transformers/package.json index c95f4e09bc01..7c20c08241bb 100644 --- a/packages/rpc-transformers/package.json +++ b/packages/rpc-transformers/package.json @@ -79,14 +79,6 @@ "peerDependencies": { "typescript": ">=5" }, - "bundlewatch": { - "defaultCompression": "gzip", - "files": [ - { - "path": "./dist/index*.js" - } - ] - }, "engines": { "node": ">=20.18.0" } diff --git a/packages/rpc-transport-http/package.json b/packages/rpc-transport-http/package.json index b50d4c4946b1..5953c7d673fb 100644 --- a/packages/rpc-transport-http/package.json +++ b/packages/rpc-transport-http/package.json @@ -85,14 +85,6 @@ "peerDependencies": { "typescript": ">=5" }, - "bundlewatch": { - "defaultCompression": "gzip", - "files": [ - { - "path": "./dist/index*.js" - } - ] - }, "engines": { "node": ">=20.18.0" } diff --git a/packages/rpc-types/package.json b/packages/rpc-types/package.json index c8b93140f0e5..c18c32177504 100644 --- a/packages/rpc-types/package.json +++ b/packages/rpc-types/package.json @@ -80,14 +80,6 @@ "peerDependencies": { "typescript": ">=5" }, - "bundlewatch": { - "defaultCompression": "gzip", - "files": [ - { - "path": "./dist/index*.js" - } - ] - }, "engines": { "node": ">=20.18.0" } diff --git a/packages/rpc/package.json b/packages/rpc/package.json index c3cd8ceb4288..fc82c729b526 100644 --- a/packages/rpc/package.json +++ b/packages/rpc/package.json @@ -84,14 +84,6 @@ "peerDependencies": { "typescript": ">=5" }, - "bundlewatch": { - "defaultCompression": "gzip", - "files": [ - { - "path": "./dist/index*.js" - } - ] - }, "engines": { "node": ">=20.18.0" } diff --git a/packages/signers/package.json b/packages/signers/package.json index dcd3bb63e911..5087be4d25a5 100644 --- a/packages/signers/package.json +++ b/packages/signers/package.json @@ -89,14 +89,6 @@ "peerDependencies": { "typescript": ">=5" }, - "bundlewatch": { - "defaultCompression": "gzip", - "files": [ - { - "path": "./dist/index*.js" - } - ] - }, "engines": { "node": ">=20.18.0" } diff --git a/packages/subscribable/package.json b/packages/subscribable/package.json index 0df55b4326c0..8ddaf7a3c019 100644 --- a/packages/subscribable/package.json +++ b/packages/subscribable/package.json @@ -79,14 +79,6 @@ "peerDependencies": { "typescript": ">=5" }, - "bundlewatch": { - "defaultCompression": "gzip", - "files": [ - { - "path": "./dist/index*.js" - } - ] - }, "engines": { "node": ">=20.18.0" } diff --git a/packages/sysvars/package.json b/packages/sysvars/package.json index 218c7d182d1c..8555019af52c 100644 --- a/packages/sysvars/package.json +++ b/packages/sysvars/package.json @@ -89,14 +89,6 @@ "peerDependencies": { "typescript": ">=5" }, - "bundlewatch": { - "defaultCompression": "gzip", - "files": [ - { - "path": "./dist/index*.js" - } - ] - }, "engines": { "node": ">=20.18.0" } diff --git a/packages/transaction-confirmation/package.json b/packages/transaction-confirmation/package.json index 225a74036ba5..c65ebd7aa236 100644 --- a/packages/transaction-confirmation/package.json +++ b/packages/transaction-confirmation/package.json @@ -91,14 +91,6 @@ "peerDependencies": { "typescript": ">=5" }, - "bundlewatch": { - "defaultCompression": "gzip", - "files": [ - { - "path": "./dist/index*.js" - } - ] - }, "engines": { "node": ">=20.18.0" } diff --git a/packages/transaction-messages/package.json b/packages/transaction-messages/package.json index 5517d0d3dff0..bcfe7189276f 100644 --- a/packages/transaction-messages/package.json +++ b/packages/transaction-messages/package.json @@ -86,14 +86,6 @@ "peerDependencies": { "typescript": ">=5" }, - "bundlewatch": { - "defaultCompression": "gzip", - "files": [ - { - "path": "./dist/index*.js" - } - ] - }, "engines": { "node": ">=20.18.0" } diff --git a/packages/transactions/package.json b/packages/transactions/package.json index 93141cdd993e..778117ac8429 100644 --- a/packages/transactions/package.json +++ b/packages/transactions/package.json @@ -86,14 +86,6 @@ "peerDependencies": { "typescript": ">=5" }, - "bundlewatch": { - "defaultCompression": "gzip", - "files": [ - { - "path": "./dist/index*.js" - } - ] - }, "engines": { "node": ">=20.18.0" } diff --git a/packages/webcrypto-ed25519-polyfill/package.json b/packages/webcrypto-ed25519-polyfill/package.json index dc1d0cdfcc02..ef3ea5af671d 100644 --- a/packages/webcrypto-ed25519-polyfill/package.json +++ b/packages/webcrypto-ed25519-polyfill/package.json @@ -79,14 +79,6 @@ "peerDependencies": { "typescript": ">=5" }, - "bundlewatch": { - "defaultCompression": "gzip", - "files": [ - { - "path": "./dist/index*.js" - } - ] - }, "engines": { "node": ">=20.18.0" } diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index f060b13e2e88..9882384df804 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -38,7 +38,7 @@ importers: version: link:packages/build-scripts '@solana/eslint-config-solana': specifier: ^4.0.0 - version: 4.0.0(@eslint/js@9.13.0)(@types/eslint__js@8.42.3)(eslint-plugin-jest@28.8.3(@typescript-eslint/eslint-plugin@8.12.2(@typescript-eslint/parser@8.12.2(eslint@9.13.0(jiti@1.21.0))(typescript@5.6.3))(eslint@9.13.0(jiti@1.21.0))(typescript@5.6.3))(eslint@9.13.0(jiti@1.21.0))(jest@30.0.0-alpha.6(@types/node@22.8.4)(ts-node@10.9.2(@swc/core@1.7.26(@swc/helpers@0.5.11))(@types/node@22.8.4)(typescript@5.6.3)))(typescript@5.6.3))(eslint-plugin-react-hooks@5.0.0(eslint@9.13.0(jiti@1.21.0)))(eslint-plugin-simple-import-sort@12.1.1(eslint@9.13.0(jiti@1.21.0)))(eslint-plugin-sort-keys-fix@1.1.2)(eslint-plugin-typescript-sort-keys@3.3.0(@typescript-eslint/parser@8.12.2(eslint@9.13.0(jiti@1.21.0))(typescript@5.6.3))(eslint@9.13.0(jiti@1.21.0))(typescript@5.6.3))(eslint@9.13.0(jiti@1.21.0))(globals@15.11.0)(jest@30.0.0-alpha.6(@types/node@22.8.4)(ts-node@10.9.2(@swc/core@1.7.26(@swc/helpers@0.5.11))(@types/node@22.8.4)(typescript@5.6.3)))(typescript-eslint@8.11.0(eslint@9.13.0(jiti@1.21.0))(typescript@5.6.3))(typescript@5.6.3) + version: 4.0.0(3vgqgk4idhzfisueqo776rbleq) '@solana/prettier-config-solana': specifier: 0.0.5 version: 0.0.5(prettier@3.3.3) @@ -69,6 +69,9 @@ importers: agadoo: specifier: ^3.0.0 version: 3.0.0 + bundlemon: + specifier: ^3.1.0 + version: 3.1.0(typescript@5.6.3) eslint: specifier: ^9.13.0 version: 9.13.0(jiti@1.21.0) @@ -3692,6 +3695,9 @@ packages: '@types/jsonfile@6.1.4': resolution: {integrity: sha512-D5qGUYwjvnNNextdU59/+fI+spnwtTFmyQP0h+PfIOSkNfpU6AOICUOkm4i0OnSk+NyjdPJrxCDro0sJsWlRpQ==} + '@types/lodash@4.17.13': + resolution: {integrity: sha512-lfx+dftrEZcdBPczf9d0Qv0x+j/rfNCMuC6OcfXmO8gkfeNAY88PgKUbvG56whcN23gc27yenwF6oJZXGFpYxg==} + '@types/mdast@4.0.4': resolution: {integrity: sha512-kGaNbPh1k7AFzgpud/gMdvIm5xuECykRR+JnWKQno9TAXVa6WIVCGTPvYGekIDL4uwCZQSYbUxNBSb1aUo79oA==} @@ -3938,6 +3944,10 @@ packages: resolution: {integrity: sha512-3CijvrO9utx598kjr45hTbbeeykQrQfKmSnxeWOgU25TOEpvcipD/bYDQWIqUv1Oc6KK4YStokSMu/FBNecGUQ==} engines: {node: '>=16'} + '@wallet-standard/base@0.0.0-20240802213516': + resolution: {integrity: sha512-stAZDW4Dkv3AYAqyjNAclheplzLdh1FDq7NxNre2tSQ2yJkFBB+cDXki4+dtMwBnumbY2bg1RV1qdYqSUh17QA==} + engines: {node: '>=16'} + '@wallet-standard/base@1.1.0': resolution: {integrity: sha512-DJDQhjKmSNVLKWItoKThJS+CsJQjR9AOBOirBVT1F9YpRyC9oYHE+ZnSf8y8bxUphtKqdQMPVQ2mHohYdRvDVQ==} engines: {node: '>=16'} @@ -3955,6 +3965,10 @@ packages: resolution: {integrity: sha512-B6fBLgouurN3IAoqhh8/1Mm33IAWIErQXVyvMcyBJM+elOD6zkNDUjew5QMG19qCbJ+ZiZUZmdOUC5PxxWw69w==} engines: {node: '>=16'} + '@wallet-standard/features@0.0.0-20240802213516': + resolution: {integrity: sha512-ac6Rx8VDE4JZ0nhxTGMNWTurLWCLU0RPPHHy18C1qtFj2xeKaCM6k5E1L+jkT+0tOT731B/96eGa0Lm3p2o34Q==} + engines: {node: '>=16'} + '@wallet-standard/features@1.1.0': resolution: {integrity: sha512-hiEivWNztx73s+7iLxsuD1sOJ28xtRix58W7Xnz4XzzA/pF0+aicnWgjOdA10doVDEDZdUuZCIIqG96SFNlDUg==} engines: {node: '>=16'} @@ -4123,6 +4137,11 @@ packages: resolution: {integrity: sha512-kNOjDqAh7px0XWNI+4QbzoiR/nTkHAWNud2uvnJquD1/x5a7EQZMJT0AczqK0Qn67oY/TTQ1LbUKajZpp3I9tQ==} engines: {node: '>=8.0.0'} + axios-retry@4.5.0: + resolution: {integrity: sha512-aR99oXhpEDGo0UuAlYcn2iGRds30k366Zfa05XWScR9QaQD4JYiP3/1Qt1u7YlefUOK+cn0CcwoL1oefavQUlQ==} + peerDependencies: + axios: 0.x || 1.x + axios@1.7.7: resolution: {integrity: sha512-S4kL7XrjgBmvdGut0sN3yJxqYzrDOnivkBiN0OFs6hLiUam3UPvswUo0kqGyhqUZGEOytHyumEdXsAkgCOUf3Q==} @@ -4209,6 +4228,10 @@ packages: resolution: {integrity: sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==} engines: {node: '>=8'} + brotli-size@4.0.0: + resolution: {integrity: sha512-uA9fOtlTRC0iqKfzff1W34DXUA3GyVqbUaeo3Rw3d4gd1eavKVCETXrn3NzO74W+UVkG3UHu8WxUi+XvKI/huA==} + engines: {node: '>= 10.16.0'} + browserslist-to-esbuild@2.1.1: resolution: {integrity: sha512-KN+mty6C3e9AN8Z5dI1xeN15ExcRNeISoC3g7V0Kax/MMF9MSoYA2G7lkTTcVUFntiEjkpI0HNgqJC1NjdyNUw==} engines: {node: '>=18'} @@ -4243,6 +4266,19 @@ packages: peerDependencies: esbuild: '>=0.18' + bundlemon-utils@2.0.1: + resolution: {integrity: sha512-7wxHoOlzICvQyMRfVqoBpnM5pJt1JdcUxsYPNiFx3RlVmUEANh2xdEyoyTsVCqzeJC3rn+AbPuiermBwA3szAQ==} + engines: {node: '>=18'} + + bundlemon@3.1.0: + resolution: {integrity: sha512-8PAomH/fzAD/aXUKmphKmPm4Tl2L7mo51AAalO0EVAZE0cik58AM2x0CVdw4jutD069U2rSyRQstxHo2NEr+9Q==} + engines: {node: '>=18'} + hasBin: true + + bytes@3.1.2: + resolution: {integrity: sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==} + engines: {node: '>= 0.8'} + cac@6.7.14: resolution: {integrity: sha512-b6Ilus+c3RrdDk+JhLKUAQfzzgLEPy6wcXqS7f/xe1EETvsDP6GORG7SFuOs6cID5YkqchW/LXZbX5bc8j7ZcQ==} engines: {node: '>=8'} @@ -4368,6 +4404,10 @@ packages: comma-separated-tokens@2.0.3: resolution: {integrity: sha512-Fu4hJdvzeylCfQPp9SGWidpzrMs7tTrlu6Vb8XGaRGck8QSNZJJp538Wrb60Lax4fPwR64ViY468OIUTbRlGZg==} + commander@11.1.0: + resolution: {integrity: sha512-yPVavfyCcRhmorC7rWlkHn15b4wDVgVmBA7kV4QVBsF7kv/9TKJAbAXVTxvTnwP8HHKjRCJDClKbciiYS7p0DQ==} + engines: {node: '>=16'} + commander@12.1.0: resolution: {integrity: sha512-Vw8qHK3bZM9y/P10u3Vib8o/DdkvA2OtPtZvD871QKjy74Wj1WSKFILMPRPSdUSx5RFK1arlJzEtA4PkFgnbuA==} engines: {node: '>=18'} @@ -4406,6 +4446,15 @@ packages: resolution: {integrity: sha512-AdmX6xUzdNASswsFtmwSt7Vj8po9IuqXm0UXz7QKPuEUmPB4XyjGfaAr2PSuELMwkRMVH1EpIkX5bTZGRB3eCA==} engines: {node: '>=10'} + 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 + create-jest-runner@0.11.2: resolution: {integrity: sha512-6lwspphs4M1PLKV9baBNxHQtWVBPZuDU8kAP4MyrVWa6aEpEcpi2HZeeA6WncwaqgsGNXpP0N2STS7XNM/nHKQ==} hasBin: true @@ -4554,6 +4603,9 @@ packages: resolution: {integrity: sha512-2QF/g9/zTaPDc3BjNcVTGoBbXBgYfMTTceLaYcFJ/W9kggFUkhxD/hMEeuLKbugyef9SqAx8cpgwlIP/jinUTA==} engines: {node: '>=4'} + duplexer@0.1.1: + resolution: {integrity: sha512-sxNZ+ljy+RA1maXoUReeqBBpBC6RLKmg5ewzV+x+mSETmWNoKdZN6vcQjpFROemza23hGFskJtFNoUWUaQ+R4Q==} + duplexer@0.1.2: resolution: {integrity: sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg==} @@ -5007,6 +5059,10 @@ packages: resolution: {integrity: sha512-GGTKBX4SD7Wdb8mqeDLni2oaRGYQWjWHGKPQ24ZMnUtKfcsVoiv4uX8+LJr1K6U5VW2Lu1BwJnj7uiori0YtRw==} engines: {node: ^12.22.0 || ^14.16.0 || ^16.0.0 || >=17.0.0} + gzip-size@6.0.0: + resolution: {integrity: sha512-ax7ZYomf6jqPTQ4+XCpUGyXKHk5WweS+e05MBO4/y3WJ5RkmPXNKvX+bx1behVILVwr6JSQvZAku021CHPXG3Q==} + engines: {node: '>=10'} + has-flag@3.0.0: resolution: {integrity: sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==} engines: {node: '>=4'} @@ -5153,6 +5209,10 @@ packages: is-potential-custom-element-name@1.0.1: resolution: {integrity: sha512-bCYeRA2rVibKZd+s2625gGnGF/t7DSqDs4dP7CrLA1m7jKWz6pps0LpYLJN8Q64HtmPKJ1hrN3nzPNKFEKOUiQ==} + is-retry-allowed@2.2.0: + resolution: {integrity: sha512-XVm7LOeLpTW4jV19QSH38vkswxoLud8sQ57YwJVTPWdiaI9I8keEhGFpBlslyVsgdQy4Opg8QOLb8YRgsyZiQg==} + engines: {node: '>=10'} + is-stream@2.0.1: resolution: {integrity: sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==} engines: {node: '>=8'} @@ -5647,6 +5707,9 @@ packages: resolution: {integrity: sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==} engines: {node: '>=10'} + lodash-es@4.17.21: + resolution: {integrity: sha512-mKnC+QJ9pWVzv+C4/U3rRsHapFfHvQFoFB92e52xeyGMcX6/OlIl78je1u8vePzYZSkkogMPJ2yjxxsb89cxyw==} + lodash.debounce@4.0.8: resolution: {integrity: sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==} @@ -5787,6 +5850,9 @@ packages: mz@2.7.0: resolution: {integrity: sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q==} + nanoclone@0.2.1: + resolution: {integrity: sha512-wynEP02LmIbLpcYw8uBKpcfF6dmg2vcpKqxeH5UcoKEYdExslsdUA4ugFauuaeYdTB76ez6gJW8XAZ6CgkXYxA==} + nanoid@3.3.7: resolution: {integrity: sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==} engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} @@ -6059,6 +6125,9 @@ packages: resolution: {integrity: sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q==} engines: {node: '>= 6'} + property-expr@2.0.6: + resolution: {integrity: sha512-SVtmxhRE/CGkn3eZY1T6pC8Nln6Fr/lu1mKSgRud0eC73whjGfoAogbn78LkD8aFL0zz3bAFerKSnOl7NlErBA==} + property-information@6.5.0: resolution: {integrity: sha512-PgTgs/BlvHxOu8QuEN7wi5A0OmXaBcHpmCSTehcs6Uuu9IkDIEo13Hy7n898RHfrQ49vKCoGeWZSaAK01nwVig==} @@ -6561,6 +6630,9 @@ packages: resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==} engines: {node: '>=8.0'} + toposort@2.0.2: + resolution: {integrity: sha512-0a5EOkAUp8D4moMi2W8ZF8jcga7BgZd91O/yabJCFY8az+XSzeGyTKs0Aoo897iV1Nj6guFq8orWDS96z91oGg==} + tough-cookie@4.1.3: resolution: {integrity: sha512-aX/y5pVRkfRnfmuX+OdbSdXvPe6ieKX/G2s7e98f4poJHnqH3281gDPm/metm6E/WRamfx7WC4HUqkWHfQHprw==} engines: {node: '>=6'} @@ -7040,6 +7112,10 @@ packages: resolution: {integrity: sha512-GQHQqAopRhwU8Kt1DDM8NjibDXHC8eoh1erhGAJPEyveY9qqVeXvVikNKrDz69sHowPMorbPUrH/mx8c50eiBQ==} engines: {node: '>=18'} + yup@0.32.11: + resolution: {integrity: sha512-Z2Fe1bn+eLstG8DRR6FTavGD+MeAwyfmouhHsIUgaADz8jvFKbO/fXc2trJKZg+5EBjh4gGm3iU/t3onKlXHIg==} + engines: {node: '>=10'} + zwitch@2.0.4: resolution: {integrity: sha512-bXE4cR/kVZhKZX/RjPEflHaKVhUVl85noU3v6b8apfQEc1x4A+zBxjZ4lN8LqGd6WZ3dl98pY4o717VFmoPp+A==} @@ -9615,8 +9691,8 @@ snapshots: dependencies: buffer: 6.0.3 - ? '@solana/eslint-config-solana@4.0.0(@eslint/js@9.13.0)(@types/eslint__js@8.42.3)(eslint-plugin-jest@28.8.3(@typescript-eslint/eslint-plugin@8.12.2(@typescript-eslint/parser@8.12.2(eslint@9.13.0(jiti@1.21.0))(typescript@5.6.3))(eslint@9.13.0(jiti@1.21.0))(typescript@5.6.3))(eslint@9.13.0(jiti@1.21.0))(jest@30.0.0-alpha.6(@types/node@22.8.4)(ts-node@10.9.2(@swc/core@1.7.26(@swc/helpers@0.5.11))(@types/node@22.8.4)(typescript@5.6.3)))(typescript@5.6.3))(eslint-plugin-react-hooks@5.0.0(eslint@9.13.0(jiti@1.21.0)))(eslint-plugin-simple-import-sort@12.1.1(eslint@9.13.0(jiti@1.21.0)))(eslint-plugin-sort-keys-fix@1.1.2)(eslint-plugin-typescript-sort-keys@3.3.0(@typescript-eslint/parser@8.12.2(eslint@9.13.0(jiti@1.21.0))(typescript@5.6.3))(eslint@9.13.0(jiti@1.21.0))(typescript@5.6.3))(eslint@9.13.0(jiti@1.21.0))(globals@15.11.0)(jest@30.0.0-alpha.6(@types/node@22.8.4)(ts-node@10.9.2(@swc/core@1.7.26(@swc/helpers@0.5.11))(@types/node@22.8.4)(typescript@5.6.3)))(typescript-eslint@8.11.0(eslint@9.13.0(jiti@1.21.0))(typescript@5.6.3))(typescript@5.6.3)' - : dependencies: + '@solana/eslint-config-solana@4.0.0(3vgqgk4idhzfisueqo776rbleq)': + dependencies: '@eslint/js': 9.13.0 '@types/eslint__js': 8.42.3 eslint: 9.13.0(jiti@1.21.0) @@ -9636,8 +9712,8 @@ snapshots: '@solana/wallet-standard-features@1.2.0': dependencies: - '@wallet-standard/base': 1.1.0 - '@wallet-standard/features': 1.1.0 + '@wallet-standard/base': 0.0.0-20240802213516 + '@wallet-standard/features': 0.0.0-20240802213516 '@solana/web3.js@1.95.2(bufferutil@4.0.8)(utf-8-validate@5.0.10)': dependencies: @@ -9828,6 +9904,8 @@ snapshots: '@types/node': 22.8.4 optional: true + '@types/lodash@4.17.13': {} + '@types/mdast@4.0.4': dependencies: '@types/unist': 3.0.3 @@ -10149,6 +10227,8 @@ snapshots: dependencies: '@wallet-standard/base': 1.1.0 + '@wallet-standard/base@0.0.0-20240802213516': {} + '@wallet-standard/base@1.1.0': {} '@wallet-standard/core@1.1.0': @@ -10168,6 +10248,10 @@ snapshots: dependencies: '@wallet-standard/base': 1.1.0 + '@wallet-standard/features@0.0.0-20240802213516': + dependencies: + '@wallet-standard/base': 0.0.0-20240802213516 + '@wallet-standard/features@1.1.0': dependencies: '@wallet-standard/base': 1.1.0 @@ -10335,6 +10419,11 @@ snapshots: atomic-sleep@1.0.0: {} + axios-retry@4.5.0(axios@1.7.7): + dependencies: + axios: 1.7.7(debug@4.3.7) + is-retry-allowed: 2.2.0 + axios@1.7.7(debug@4.3.7): dependencies: follow-redirects: 1.15.6(debug@4.3.7) @@ -10474,6 +10563,10 @@ snapshots: dependencies: fill-range: 7.1.1 + brotli-size@4.0.0: + dependencies: + duplexer: 0.1.1 + browserslist-to-esbuild@2.1.1(browserslist@4.23.2): dependencies: browserslist: 4.23.2 @@ -10511,6 +10604,29 @@ snapshots: esbuild: 0.24.0 load-tsconfig: 0.2.5 + bundlemon-utils@2.0.1: + dependencies: + bytes: 3.1.2 + + bundlemon@3.1.0(typescript@5.6.3): + dependencies: + axios: 1.7.7(debug@4.3.7) + axios-retry: 4.5.0(axios@1.7.7) + brotli-size: 4.0.0 + bundlemon-utils: 2.0.1 + bytes: 3.1.2 + chalk: 4.1.2 + commander: 11.1.0 + cosmiconfig: 8.3.6(typescript@5.6.3) + gzip-size: 6.0.0 + micromatch: 4.0.8 + yup: 0.32.11 + transitivePeerDependencies: + - debug + - typescript + + bytes@3.1.2: {} + cac@6.7.14: {} call-bind@1.0.5: @@ -10611,6 +10727,8 @@ snapshots: comma-separated-tokens@2.0.3: {} + commander@11.1.0: {} + commander@12.1.0: {} commander@2.20.3: {} @@ -10642,6 +10760,15 @@ snapshots: path-type: 4.0.0 yaml: 1.10.2 + cosmiconfig@8.3.6(typescript@5.6.3): + dependencies: + import-fresh: 3.3.0 + js-yaml: 4.1.0 + parse-json: 5.2.0 + path-type: 4.0.0 + optionalDependencies: + typescript: 5.6.3 + create-jest-runner@0.11.2: dependencies: chalk: 4.1.2 @@ -10753,6 +10880,8 @@ snapshots: dset@3.1.4: {} + duplexer@0.1.1: {} + duplexer@0.1.2: {} eastasianwidth@0.2.0: {} @@ -11296,6 +11425,10 @@ snapshots: graphql@16.9.0: {} + gzip-size@6.0.0: + dependencies: + duplexer: 0.1.2 + has-flag@3.0.0: {} has-flag@4.0.0: {} @@ -11432,6 +11565,8 @@ snapshots: is-potential-custom-element-name@1.0.1: {} + is-retry-allowed@2.2.0: {} + is-stream@2.0.1: {} is-subdir@1.2.0: @@ -12345,6 +12480,8 @@ snapshots: dependencies: p-locate: 5.0.0 + lodash-es@4.17.21: {} + lodash.debounce@4.0.8: optional: true @@ -12485,6 +12622,8 @@ snapshots: object-assign: 4.1.1 thenify-all: 1.6.0 + nanoclone@0.2.1: {} + nanoid@3.3.7: {} natural-compare-lite@1.4.0: {} @@ -12729,6 +12868,8 @@ snapshots: kleur: 3.0.3 sisteransi: 1.0.5 + property-expr@2.0.6: {} + property-information@6.5.0: {} proxy-from-env@1.1.0: {} @@ -13247,6 +13388,8 @@ snapshots: dependencies: is-number: 7.0.0 + toposort@2.0.2: {} + tough-cookie@4.1.3: dependencies: psl: 1.9.0 @@ -13678,6 +13821,16 @@ snapshots: yoctocolors@2.1.1: {} + yup@0.32.11: + dependencies: + '@babel/runtime': 7.25.0 + '@types/lodash': 4.17.13 + lodash: 4.17.21 + lodash-es: 4.17.21 + nanoclone: 0.2.1 + property-expr: 2.0.6 + toposort: 2.0.2 + zwitch@2.0.4: {} zx@8.1.9: