Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat(alchemy): use rundler_maxPriorityFeePerGas for fee estimate #74

Merged
merged 2 commits into from
Aug 12, 2023

Conversation

dancoombs
Copy link
Collaborator

@dancoombs dancoombs commented Aug 9, 2023

Use the new rundler_maxPriorityFeePerGas instead of hardcoded fee modes during Alchemy provider fee estimation.


PR-Codex overview

Focus of the PR:

This PR focuses on refactoring and improving the gas fee handling and estimation logic in the Alchemy package.

Detailed summary:

  • The GasFeeStrategy enum and GasFeeMode interface have been removed from the gas-fees.ts file.
  • The GasFeeStrategy enum and GasFeeMode interface have been removed from the OnboardingController.ts file.
  • The withAlchemyGasFeeEstimator function in the gas-fees.ts file has been updated to accept baseFeeBufferPercent and maxPriorityFeeBufferPercent as parameters instead of feeMode.
  • The withAlchemyGasFeeEstimator function in the gas-fees.ts file now uses the alchemyClient.request method to fetch the maxPriorityFeePerGas value.
  • The withAlchemyGasFeeEstimator function in the gas-fees.ts file now calculates the baseFeeIncrease and prioFeeIncrease values based on the baseFeeBufferPercent and maxPriorityFeeBufferPercent parameters.
  • The withAlchemyGasManager function in the gas-manager.ts file now uses the provider.rpcClient property instead of config.provider to access the RPC client.
  • The withAlchemyGasManager function in the gas-manager.ts file now accepts baseFeeBufferPercent and maxPriorityFeeBufferPercent as parameters instead of provider.
  • The alchemyPaymasterAndDataMiddleware function in the gas-manager.ts file now uses the provider.rpcClient property instead of config.provider to access the RPC client.

The following files were skipped due to too many changes: packages/alchemy/src/middleware/gas-manager.ts, packages/alchemy/src/provider.ts

✨ Ask PR-Codex anything about this PR by commenting with /codex {your question}

@dancoombs dancoombs force-pushed the danc/rundler-max-prio-fee branch 2 times, most recently from 3543614 to 1ff5294 Compare August 9, 2023 20:42
moldy530
moldy530 previously approved these changes Aug 9, 2023
moldy530
moldy530 previously approved these changes Aug 10, 2023
@dancoombs dancoombs marked this pull request as ready for review August 11, 2023 14:38
@dancoombs dancoombs force-pushed the danc/rundler-max-prio-fee branch 3 times, most recently from 304c1d8 to f49908b Compare August 11, 2023 19:00
packages/alchemy/src/middleware/gas-fees.ts Show resolved Hide resolved
@@ -107,6 +131,12 @@ export class AlchemyProvider extends SmartAccountProvider<HttpTransport> {
);
}

return withAlchemyGasManager(this, config);
if (this.feeOptsSet) {
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I worry about this a little bit. It'd be nice to just fix the withAlchemyGasManager to not override right?

Specifically by not calling the code block below conditionally in withAlchemyGasManager if the fee ops are set in the config?

  .withFeeDataGetter(async () => ({
     maxFeePerGas: 0n,
     maxPriorityFeePerGas: 0n,
  }))

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

curious on @moldy530's thoughts

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

oh wait... I have a thing for this already https://github.com/alchemyplatform/aa-sdk/blob/main/packages/core/src/provider/base.ts#L311

you could potentially just override the sendUserOperation method here to do something like:

sendUserOperation = async (
    data: UserOperationCallData | BatchUserOperationCallData,
    overrides?: UserOperationOverrides
): Promise<SendUserOperationResult> => {
  super.sendUserOperation(data, overrides ?? this.overrides)
}

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

You can't override the fees after the paymaster has signed them

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This code switches between the two middleware functions based on if the fee opts are set. If no fees are set we should use the middleware where we make gas estimation a no-op.

Not really sure I see another way to do this? The issue isn't really the fee estimation logic, its the removal of the gas estimation logic.

We could also remove the usage of alchemy_requestGasAndPaymasterAndData entirely from this code, that would keep this cleaner (but we would lose test coverage there).

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

gotcha yea so requestGasAndPaymaster data overrides all both the fee estimates and gas estimates performed. So if you have any overrides set, then that would mean that those don't get respected if you want to use a paymaster which by default gets gas + fee estimates.

I'm good with the approach here, it makes sense.

@dancoombs dancoombs merged commit 40be05f into main Aug 12, 2023
2 checks passed
@dancoombs dancoombs deleted the danc/rundler-max-prio-fee branch August 12, 2023 11:50
moldy530 added a commit that referenced this pull request Oct 10, 2023
* docs: add a vitepress site skeleton (#1)

* docs: add github action to deploy to pages (#2)

* docs: add sidebar skeleton for docs (#3)

* docs: add overview doc for the various packages exported by Account Kit (#7)

* feat: make account class generic on providers

* fix: make account optional except for certain methods

* fix: moldy's comments

* fix: use interface for defining unconnected providers

* fix: use interface account for alchemy gasmanager methods

* fix: use interface account for alchemy gasmanager methods

* fix: use interface account for ethers provider-adapter

* fix: remove account generic for unconnected providers

* docs: add docs for ownership transfer (#8)

* docs: add docs for batching transactions (#9)

* docs: add docs for batching transactions

* docs: fix a typo

Co-authored-by: Ajay Vasisht <43521356+avasisht23@users.noreply.github.com>

---------

Co-authored-by: Ajay Vasisht <43521356+avasisht23@users.noreply.github.com>

* docs: add using your own account docs (#10)

* refactor: remove ConnectedSmartContractAccountProvider

* fix: moldy's comments

* feat: add light account support

* feat: add unit and e2e tests

* feat: add unit and e2e tests

* feat: add transferownership e2e test

* fix: update on pr yml to run e2e tests just to show

* fix: remove skips

* fix: remove skips

* fix: update on pr yml to remove e2e tests since they passed

* fix: update on pr yml to remove e2e tests since they passed

* fix: address moldy's comments

* fix: make on-chain getOwner call

* fix: remove account generic for unconnected providers

* refactor: remove ConnectedSmartContractAccountProvider

* feat: add light account to index file to export

* feat: add light account to index file to export

* feat: add light account abis

* test: refactor e2e test file

* chore: add undeploed owner to pr action

* docs: add magic link signer docs (#12)

* docs: add sendUserOperation docs as example of how to build package docs (#13)

* docs: add sendUserOperation docs as example of how to build package docs

* style: apply docs nits and fixes

Co-authored-by: Ajay Vasisht <43521356+avasisht23@users.noreply.github.com>

---------

Co-authored-by: Ajay Vasisht <43521356+avasisht23@users.noreply.github.com>

* fix: create new signer with util for each e2e test

* feat: replace simpleAccount with lightAccount in example dapp

* docs: add bring your own signer docs (#18)

* docs: add dev docs for aa-accounts/light-account

* docs: add dev docs for aa-accounts/light-account

* docs: add dev docs for aa-accounts/light-account

* docs: add dev docs for aa-accounts/light-account

* docs: add dev docs for aa-accounts/light-account

* docs: add dev docs for aa-accounts/light-account

* docs: add dev docs for aa-accounts/light-account

* docs: add getting started page (#14)

* add getting-started page

* fix lint issues

* ran prettier

* add requested changes

* Update site/getting-started.md

accepted the change for "packages overview"

Co-authored-by: Michael Moldoveanu <moldy530@gmail.com>

---------

Co-authored-by: Michael Moldoveanu <moldy530@gmail.com>

* docs: using smart accounts overview (#15)

* using smart accounts overview

* ran prettier

* add requested changes

* set link directly on choosing a signer

* refactor: rename middleware util methods for alchemy gas manager endpoints

* refactor: rename middleware util methods for alchemy gas manager endpoints

* refactor: rename middleware util methods for alchemy gas manager endpoints

* refactor: rename middleware util methods for alchemy gas manager endpoints

* feat: change param to estimateGas

* feat: change param to estimateGas

* fix: remove timestamp site

* fix: remove deprecated signers

* starting new page waitForUserOperationTransaction. Adding method details. Adding a note to sendUserOperation to clarify the returned hash

* fix: make base provider constructor an object

* feat: update alchemy provider with new types

* Update site/packages/aa-core/provider/waitForUserOperationTransaction.md

Co-authored-by: Michael Moldoveanu <moldy530@gmail.com>

* Update site/packages/aa-core/provider/waitForUserOperationTransaction.md

Co-authored-by: Michael Moldoveanu <moldy530@gmail.com>

* fix: fixing nits

* fix: running prettier

* fix: don't require provider input for alchemy provider

* test: refactor tests in aa-ethers

* test: refactor tests in aa-accounts

* test: refactor tests in aa-core

* test: refactor tests in aa-alchemy

* fix: move back package.json

* fix: remove package.jsonc hange

* test: refactor tests in aa-core

* docs: add web3auth docs (#28)

* docs: add some more helpful links to contributing (#22)

* docs: add some more helpful links to contributing

* style: address pr comments

Co-authored-by: Ajay Vasisht <43521356+avasisht23@users.noreply.github.com>

---------

Co-authored-by: Ajay Vasisht <43521356+avasisht23@users.noreply.github.com>

* docs: add benchmarks for light account (#32)

* docs: add docs for EOA signers (#34)

* feat: add support for LocalAcount to the LocalAccountSigner (#36)

* docs: add code docs for aa-core/getUserOperationByHash (#31)

* fix: nit typo fix in code from 337 to 4337

* docs: add aa-core signer docs

* docs: adds Turnkey to the list of signing providers (#35)

* docs: adds Turnkey to the list of signing providers

* docs: uses LocalAccountSigner instead of WalletClientSigner

* docs: start adding utils docs

* fix: fix a lint issue I missed

* docs: add more utils docs for aa-core

* chore: add denniswon to OWNERS

* feat: document and update the client types in core (#43)

* fix: site deploy was using node 18.18 not 18.10

* docs: update the docs on byosca to use LightAccount

* fix: actually use node 18.10 in the workflow

* docs: add docs for erc4337ClientActions

* docs: add aa-alchemy docs

* docs: more updates, still wip

* docs: docs for aa-alchemy

* docs: docs for aa-alchemy

* docs: docs for aa-alchemy

* docs: docs for aa-alchemy

* docs: docs for aa-alchemy

* docs: docs for aa-alchemy

* docs: docs for aa-alchemy

* docs: docs for aa-alchemy

* docs: docs for aa-alchemy

* docs: docs for aa-alchemy

* docs: docs for aa-ethers (wip)

* docs: docs for aa-ethers (wip)

* docs: docs for aa-ethers (wip)

* docs: docs for aa-ethers (wip)

* docs: docs for aa-ethers (wip)

* docs: docs for aa-ethers (wip)

* docs: docs for aa-ethers (wip)

* docs: docs for aa-ethers

* docs: docs for aa-ethers

* docs: docs for aa-ethers

* docs: docs for aa-ethers

* docs: docs for aa-ethers

* docs: docs for aa-ethers

* docs: docs for aa-ethers

* docs: add docs for using Light Account (#16)

* add light-account doc

* update config

* ran prettier

* add requested changes

* add link on choosing an account section directly

* remove simple account from choosing account overview

* add page on modular account

* update overview for accounts

* add requested changes and re-worded for google style guideline

* add benchmarks in the overview page

* docs: add doc for sponsoring gas (#17)

* add doc on sponsoring gas

* add docs for sponsoring gas

* add requested changes

* put alchemyprovider in provider.ts and use it in sponsoring-gas doc

* add requested changes and follow google style guidelines

* Update site/smart-accounts/sponsoring-gas.md

Co-authored-by: Michael Moldoveanu <moldy530@gmail.com>

* fix: update site/snippets/provider.ts

---------

Co-authored-by: Michael Moldoveanu <moldy530@gmail.com>

* docs: docs for aa-ethers

* docs: update a few docs to match styles of other docs (#52)

* docs: finish adding aa-core utils docs (#53)

* docs: finish adding aa-core utils docs

* docs: apply suggestions from PR

Co-authored-by: Ajay Vasisht <43521356+avasisht23@users.noreply.github.com>

---------

Co-authored-by: Ajay Vasisht <43521356+avasisht23@users.noreply.github.com>

* docs: fix a typo in a code example

* docs: fix comment in code snippet

* docs: add Capsule to the list of signers (#57)

* add capsule signer docs

* Update site/smart-accounts/signers/capsule.md

Co-authored-by: Michael Moldoveanu <moldy530@gmail.com>

* minor copy change to match capsule docs

---------

Co-authored-by: Michael Moldoveanu <moldy530@gmail.com>

* docs: provider/getUserOperationReceipt (#48)

* docs: provider/getUserOperationReceipt

* Update site/packages/aa-core/provider/getUserOperationReceipt.md

Co-authored-by: Ajay Vasisht <43521356+avasisht23@users.noreply.github.com>

---------

Co-authored-by: Ajay Vasisht <43521356+avasisht23@users.noreply.github.com>

* docs: aa-core sendTransaction and sendTransactions (#49)

* docs: provider/getUserOperationReceipt

* docs: providers api funcs sitebar sections

* docs: sendTransaction

* docs: sendTransactions

* Update site/packages/aa-core/provider/sendTransaction.md

Co-authored-by: Ajay Vasisht <43521356+avasisht23@users.noreply.github.com>

* Update site/packages/aa-core/provider/sendTransactions.md

Co-authored-by: Ajay Vasisht <43521356+avasisht23@users.noreply.github.com>

---------

Co-authored-by: Ajay Vasisht <43521356+avasisht23@users.noreply.github.com>

* docs: aa-core providers request method (#50)

* docs: provider/getUserOperationReceipt

* docs: providers api funcs sitebar sections

* docs: sendTransaction

* docs: sendTransactions

* docs: aa-core providers request method

* Update site/packages/aa-core/provider/request.md

Co-authored-by: Ajay Vasisht <43521356+avasisht23@users.noreply.github.com>

* Update site/packages/aa-core/provider/request.md

Co-authored-by: Ajay Vasisht <43521356+avasisht23@users.noreply.github.com>

* Update site/packages/aa-core/provider/request.md

Co-authored-by: Ajay Vasisht <43521356+avasisht23@users.noreply.github.com>

---------

Co-authored-by: Ajay Vasisht <43521356+avasisht23@users.noreply.github.com>

* docs: aa-core providers connection methods (#51)

* docs: provider/getUserOperationReceipt

* docs: providers api funcs sitebar sections

* docs: sendTransaction

* docs: sendTransactions

* docs: aa-core providers request method

* docs: aa-core providers connection methods

* Update site/packages/aa-core/provider/getAddress.md

Co-authored-by: Ajay Vasisht <43521356+avasisht23@users.noreply.github.com>

* Update site/packages/aa-core/provider/isConnected.md

Co-authored-by: Ajay Vasisht <43521356+avasisht23@users.noreply.github.com>

* fix: fix lint

---------

Co-authored-by: Ajay Vasisht <43521356+avasisht23@users.noreply.github.com>

* docs: add web3auth direct link

* docs: updates to transferring-ownership (#54)

* docs: updates to batching-transactions (#55)

* chore: attempt to disable setting basepath for github pages (#59)

* moldy/pages base path (#60)

* chore: attempt to disable setting basepath for github pages

* chore: oops put this in the wrong place

* refactor: remove getFeeData and use viem method (#58)

* fix: override getAccountInitCode in LightAccount (#61)

* docs: aa-core providers sign methods (#62)

Co-authored-by: Ajay Vasisht <43521356+avasisht23@users.noreply.github.com>

* docs: aa-core providers build user op methods (#64)

* docs: add erc-6900 page (#69)

* chore: update (#66)

* docs: format capsule doc (#71)

* chore: add links to git repo, audit report (#72)

* feat: create6492Signature at BaseSCA level using account init code parsing (#79)

* feat: la factory util + docs + example (#82)

* chore: fix up viem versioning and light account integration into daapp (#84)

* docs: add search (#87)

* feat: add drop and replace to the uo logic (#85)

Co-authored-by: therealharpaljadeja <jadejaharpal14@gmail.com>

* feat: add lit signer docs (#70)

* feat: add lit signer docs

* fix: updates for testnet version

* refactor: remove unused var

* refactor: pr comments

* refactor: pr comments

* docs: apply nits to lit signer docs

Co-authored-by: Ajay Vasisht <43521356+avasisht23@users.noreply.github.com>

---------

Co-authored-by: Michael Moldoveanu <moldy530@gmail.com>
Co-authored-by: Ajay Vasisht <43521356+avasisht23@users.noreply.github.com>

* docs: adding portal (#65)

* Adding Portal

* Update site/smart-accounts/signers/portal.md

Co-authored-by: Ajay Vasisht <43521356+avasisht23@users.noreply.github.com>

* Update site/smart-accounts/signers/portal.md

Co-authored-by: Ajay Vasisht <43521356+avasisht23@users.noreply.github.com>

* Update site/smart-accounts/signers/portal.md

Co-authored-by: Ajay Vasisht <43521356+avasisht23@users.noreply.github.com>

* Update site/smart-accounts/signers/portal.md

Co-authored-by: Ajay Vasisht <43521356+avasisht23@users.noreply.github.com>

* Update site/smart-accounts/signers/portal.md

Co-authored-by: Ajay Vasisht <43521356+avasisht23@users.noreply.github.com>

* Update site/snippets/portal.ts

Co-authored-by: Ajay Vasisht <43521356+avasisht23@users.noreply.github.com>

* feat: add portal as a signer option

* docs: add PR nits

---------

Co-authored-by: Jong Hyuck Won <denniswon@users.noreply.github.com>
Co-authored-by: Ajay Vasisht <43521356+avasisht23@users.noreply.github.com>
Co-authored-by: Michael Moldoveanu <moldy530@gmail.com>

* docs: add privy guide (#63)

* Initial version of Privy guide

* PR comments

* docs: address PR feedback

* docs: add note about React

* docs: apply pr nits

---------

Co-authored-by: Michael Moldoveanu <moldy530@gmail.com>

* docs: fix some lint errors (#90)

* docs: update sponsoring-gas.md (#83)

* fix: general improvements to the examples section (#111)

* chore: fix license specification for Alchemy (#116)

* Update sponsoring-gas.md

* Update sponsoring-gas.md

* docs(images): add image and complete paragraph on sending userops

---------

Co-authored-by: Igor Shadurin <haletskaya@gmail.com>
Co-authored-by: Rohan Thomare <rohanthomare@gmail.com>
Co-authored-by: Sahil Aujla <sahilaujla15@gmail.com>

* docs: add withCustomMiddleware (#81)

* docs: add withCustomMiddleware

* mention customMiddleware

* update meta tags

* update description for withCustomMiddleware

* add the more detailed code example

* use async await with builduserop

* docs: apply suggestions from PRs

---------

Co-authored-by: Michael Moldoveanu <moldy530@gmail.com>

* docs: add withFeeDataGetter (#80)

* docs: add withFeeDataGetter

* add meta tags

* update withFeeDataGetter

* mention feeDataGetter readonly field

* Update site/packages/aa-core/provider/withFeeDataGetter.md

Co-authored-by: Ajay Vasisht <43521356+avasisht23@users.noreply.github.com>

* Update site/packages/aa-core/provider/withFeeDataGetter.md

Co-authored-by: Ajay Vasisht <43521356+avasisht23@users.noreply.github.com>

* add detailed code example

* update description

* docs: update with PR feedback

---------

Co-authored-by: Ajay Vasisht <43521356+avasisht23@users.noreply.github.com>
Co-authored-by: Michael Moldoveanu <moldy530@gmail.com>

* docs: add why account kit doc (#74)

* docs: add why account kit page

* add links

* update batching txs link

* incorporated feedback

* docs: updates to choosing smart account (#56)

* docs: updates to choosing smart account

* docs: updates to choosing smart account

* docs: updates to choosing smart account

* docs: updates to choosing smart account

---------

Co-authored-by: Michael Moldoveanu <moldy530@gmail.com>

* docs: fix lint formatting

* feat: landing page (#67)

* chore: update the publish package job to include deploying the site (#91)

* chore: update the publish package job to include deploying the site

* chore: remove the prerelease config from lerna

* docs: update lit snippet (#92)

* refactor: remove unnecessary extra client on alchemy provider (#93)

* docs: aa-core accounts (#68)

* docs: aa-core accounts

* docs: erc-6900 update

* Update site/packages/aa-core/accounts/simple-smart-contract-account.md

Co-authored-by: Ajay Vasisht <43521356+avasisht23@users.noreply.github.com>

* Update site/packages/aa-core/accounts/base-smart-contract-account.md

Co-authored-by: Ajay Vasisht <43521356+avasisht23@users.noreply.github.com>

* Update site/packages/aa-core/accounts/base-smart-contract-account.md

Co-authored-by: Ajay Vasisht <43521356+avasisht23@users.noreply.github.com>

* Update site/packages/aa-core/accounts/base-smart-contract-account.md

Co-authored-by: Ajay Vasisht <43521356+avasisht23@users.noreply.github.com>

* Update site/packages/aa-core/accounts/base-smart-contract-account.md

Co-authored-by: Ajay Vasisht <43521356+avasisht23@users.noreply.github.com>

* Update site/packages/aa-core/accounts/base-smart-contract-account.md

Co-authored-by: Ajay Vasisht <43521356+avasisht23@users.noreply.github.com>

* docs: base smart account and simple account doc section complete

* Update site/packages/aa-core/accounts/required/getDummySignature.md

Co-authored-by: Michael Moldoveanu <moldy530@gmail.com>

* Update site/.vitepress/config.ts

Co-authored-by: Michael Moldoveanu <moldy530@gmail.com>

* Update site/.vitepress/config.ts

Co-authored-by: Michael Moldoveanu <moldy530@gmail.com>

---------

Co-authored-by: Ajay Vasisht <43521356+avasisht23@users.noreply.github.com>
Co-authored-by: Michael Moldoveanu <moldy530@gmail.com>

* feat: add account and signer type log into the headers of public client (#76)

* docs: update choosing a signer docs (#89)

* add heap analytics (#94)

* docs: add intro doc (#75)

* docs: add intro doc

* remove the confusing diagram

* fix image sizing

* docs: add fireblocks signer (#88)

* chore: fix the setup node version in github actions

* docs: add favicon (#96)

---------

Co-authored-by: avasisht23 <ajay@alchemy.com>
Co-authored-by: Ajay Vasisht <43521356+avasisht23@users.noreply.github.com>
Co-authored-by: Sahil Aujla <sahilaujla15@gmail.com>
Co-authored-by: Ava Robinson <avamrobinson@gmail.com>
Co-authored-by: avarobinson <45052879+avarobinson@users.noreply.github.com>
Co-authored-by: Jong Hyuck Won <jhwon0820@gmail.com>
Co-authored-by: Max Blaushild <blaushmild@gmail.com>
Co-authored-by: Jong Hyuck Won <denniswon@users.noreply.github.com>
Co-authored-by: Dennis Won <denniswon@Denniss-MacBook-Pro.local>
Co-authored-by: Nitya Subramanian <nityas.subramanian@gmail.com>
Co-authored-by: howy <132113803+howydev@users.noreply.github.com>
Co-authored-by: Rohan Thomare <rohanthomare@gmail.com>
Co-authored-by: therealharpaljadeja <jadejaharpal14@gmail.com>
Co-authored-by: Bean <josh@litprotocol.com>
Co-authored-by: parsaattari <attari.parsa@gmail.com>
Co-authored-by: Ankush Swarnakar <ankushswar1@gmail.com>
Co-authored-by: Will Hennessy <hennessywill@gmail.com>
Co-authored-by: Igor Shadurin <haletskaya@gmail.com>
moldy530 added a commit that referenced this pull request Oct 11, 2023
* docs: add a vitepress site skeleton (#1)

* docs: add github action to deploy to pages (#2)

* docs: add sidebar skeleton for docs (#3)

* docs: add overview doc for the various packages exported by Account Kit (#7)

* feat: make account class generic on providers

* fix: make account optional except for certain methods

* fix: moldy's comments

* fix: use interface for defining unconnected providers

* fix: use interface account for alchemy gasmanager methods

* fix: use interface account for alchemy gasmanager methods

* fix: use interface account for ethers provider-adapter

* fix: remove account generic for unconnected providers

* docs: add docs for ownership transfer (#8)

* docs: add docs for batching transactions (#9)

* docs: add docs for batching transactions

* docs: fix a typo

Co-authored-by: Ajay Vasisht <43521356+avasisht23@users.noreply.github.com>

---------

Co-authored-by: Ajay Vasisht <43521356+avasisht23@users.noreply.github.com>

* docs: add using your own account docs (#10)

* refactor: remove ConnectedSmartContractAccountProvider

* fix: moldy's comments

* feat: add light account support

* feat: add unit and e2e tests

* feat: add unit and e2e tests

* feat: add transferownership e2e test

* fix: update on pr yml to run e2e tests just to show

* fix: remove skips

* fix: remove skips

* fix: update on pr yml to remove e2e tests since they passed

* fix: update on pr yml to remove e2e tests since they passed

* fix: address moldy's comments

* fix: make on-chain getOwner call

* fix: remove account generic for unconnected providers

* refactor: remove ConnectedSmartContractAccountProvider

* feat: add light account to index file to export

* feat: add light account to index file to export

* feat: add light account abis

* test: refactor e2e test file

* chore: add undeploed owner to pr action

* docs: add magic link signer docs (#12)

* docs: add sendUserOperation docs as example of how to build package docs (#13)

* docs: add sendUserOperation docs as example of how to build package docs

* style: apply docs nits and fixes

Co-authored-by: Ajay Vasisht <43521356+avasisht23@users.noreply.github.com>

---------

Co-authored-by: Ajay Vasisht <43521356+avasisht23@users.noreply.github.com>

* fix: create new signer with util for each e2e test

* feat: replace simpleAccount with lightAccount in example dapp

* docs: add bring your own signer docs (#18)

* docs: add dev docs for aa-accounts/light-account

* docs: add dev docs for aa-accounts/light-account

* docs: add dev docs for aa-accounts/light-account

* docs: add dev docs for aa-accounts/light-account

* docs: add dev docs for aa-accounts/light-account

* docs: add dev docs for aa-accounts/light-account

* docs: add dev docs for aa-accounts/light-account

* docs: add getting started page (#14)

* add getting-started page

* fix lint issues

* ran prettier

* add requested changes

* Update site/getting-started.md

accepted the change for "packages overview"

Co-authored-by: Michael Moldoveanu <moldy530@gmail.com>

---------

Co-authored-by: Michael Moldoveanu <moldy530@gmail.com>

* docs: using smart accounts overview (#15)

* using smart accounts overview

* ran prettier

* add requested changes

* set link directly on choosing a signer

* refactor: rename middleware util methods for alchemy gas manager endpoints

* refactor: rename middleware util methods for alchemy gas manager endpoints

* refactor: rename middleware util methods for alchemy gas manager endpoints

* refactor: rename middleware util methods for alchemy gas manager endpoints

* feat: change param to estimateGas

* feat: change param to estimateGas

* fix: remove timestamp site

* fix: remove deprecated signers

* starting new page waitForUserOperationTransaction. Adding method details. Adding a note to sendUserOperation to clarify the returned hash

* fix: make base provider constructor an object

* feat: update alchemy provider with new types

* Update site/packages/aa-core/provider/waitForUserOperationTransaction.md

Co-authored-by: Michael Moldoveanu <moldy530@gmail.com>

* Update site/packages/aa-core/provider/waitForUserOperationTransaction.md

Co-authored-by: Michael Moldoveanu <moldy530@gmail.com>

* fix: fixing nits

* fix: running prettier

* fix: don't require provider input for alchemy provider

* test: refactor tests in aa-ethers

* test: refactor tests in aa-accounts

* test: refactor tests in aa-core

* test: refactor tests in aa-alchemy

* fix: move back package.json

* fix: remove package.jsonc hange

* test: refactor tests in aa-core

* docs: add web3auth docs (#28)

* docs: add some more helpful links to contributing (#22)

* docs: add some more helpful links to contributing

* style: address pr comments

Co-authored-by: Ajay Vasisht <43521356+avasisht23@users.noreply.github.com>

---------

Co-authored-by: Ajay Vasisht <43521356+avasisht23@users.noreply.github.com>

* docs: add benchmarks for light account (#32)

* docs: add docs for EOA signers (#34)

* feat: add support for LocalAcount to the LocalAccountSigner (#36)

* docs: add code docs for aa-core/getUserOperationByHash (#31)

* fix: nit typo fix in code from 337 to 4337

* docs: add aa-core signer docs

* docs: adds Turnkey to the list of signing providers (#35)

* docs: adds Turnkey to the list of signing providers

* docs: uses LocalAccountSigner instead of WalletClientSigner

* docs: start adding utils docs

* fix: fix a lint issue I missed

* docs: add more utils docs for aa-core

* chore: add denniswon to OWNERS

* feat: document and update the client types in core (#43)

* fix: site deploy was using node 18.18 not 18.10

* docs: update the docs on byosca to use LightAccount

* fix: actually use node 18.10 in the workflow

* docs: add docs for erc4337ClientActions

* docs: add aa-alchemy docs

* docs: more updates, still wip

* docs: docs for aa-alchemy

* docs: docs for aa-alchemy

* docs: docs for aa-alchemy

* docs: docs for aa-alchemy

* docs: docs for aa-alchemy

* docs: docs for aa-alchemy

* docs: docs for aa-alchemy

* docs: docs for aa-alchemy

* docs: docs for aa-alchemy

* docs: docs for aa-alchemy

* docs: docs for aa-ethers (wip)

* docs: docs for aa-ethers (wip)

* docs: docs for aa-ethers (wip)

* docs: docs for aa-ethers (wip)

* docs: docs for aa-ethers (wip)

* docs: docs for aa-ethers (wip)

* docs: docs for aa-ethers (wip)

* docs: docs for aa-ethers

* docs: docs for aa-ethers

* docs: docs for aa-ethers

* docs: docs for aa-ethers

* docs: docs for aa-ethers

* docs: docs for aa-ethers

* docs: docs for aa-ethers

* docs: add docs for using Light Account (#16)

* add light-account doc

* update config

* ran prettier

* add requested changes

* add link on choosing an account section directly

* remove simple account from choosing account overview

* add page on modular account

* update overview for accounts

* add requested changes and re-worded for google style guideline

* add benchmarks in the overview page

* docs: add doc for sponsoring gas (#17)

* add doc on sponsoring gas

* add docs for sponsoring gas

* add requested changes

* put alchemyprovider in provider.ts and use it in sponsoring-gas doc

* add requested changes and follow google style guidelines

* Update site/smart-accounts/sponsoring-gas.md

Co-authored-by: Michael Moldoveanu <moldy530@gmail.com>

* fix: update site/snippets/provider.ts

---------

Co-authored-by: Michael Moldoveanu <moldy530@gmail.com>

* docs: docs for aa-ethers

* docs: update a few docs to match styles of other docs (#52)

* docs: finish adding aa-core utils docs (#53)

* docs: finish adding aa-core utils docs

* docs: apply suggestions from PR

Co-authored-by: Ajay Vasisht <43521356+avasisht23@users.noreply.github.com>

---------

Co-authored-by: Ajay Vasisht <43521356+avasisht23@users.noreply.github.com>

* docs: fix a typo in a code example

* docs: fix comment in code snippet

* docs: add Capsule to the list of signers (#57)

* add capsule signer docs

* Update site/smart-accounts/signers/capsule.md

Co-authored-by: Michael Moldoveanu <moldy530@gmail.com>

* minor copy change to match capsule docs

---------

Co-authored-by: Michael Moldoveanu <moldy530@gmail.com>

* docs: provider/getUserOperationReceipt (#48)

* docs: provider/getUserOperationReceipt

* Update site/packages/aa-core/provider/getUserOperationReceipt.md

Co-authored-by: Ajay Vasisht <43521356+avasisht23@users.noreply.github.com>

---------

Co-authored-by: Ajay Vasisht <43521356+avasisht23@users.noreply.github.com>

* docs: aa-core sendTransaction and sendTransactions (#49)

* docs: provider/getUserOperationReceipt

* docs: providers api funcs sitebar sections

* docs: sendTransaction

* docs: sendTransactions

* Update site/packages/aa-core/provider/sendTransaction.md

Co-authored-by: Ajay Vasisht <43521356+avasisht23@users.noreply.github.com>

* Update site/packages/aa-core/provider/sendTransactions.md

Co-authored-by: Ajay Vasisht <43521356+avasisht23@users.noreply.github.com>

---------

Co-authored-by: Ajay Vasisht <43521356+avasisht23@users.noreply.github.com>

* docs: aa-core providers request method (#50)

* docs: provider/getUserOperationReceipt

* docs: providers api funcs sitebar sections

* docs: sendTransaction

* docs: sendTransactions

* docs: aa-core providers request method

* Update site/packages/aa-core/provider/request.md

Co-authored-by: Ajay Vasisht <43521356+avasisht23@users.noreply.github.com>

* Update site/packages/aa-core/provider/request.md

Co-authored-by: Ajay Vasisht <43521356+avasisht23@users.noreply.github.com>

* Update site/packages/aa-core/provider/request.md

Co-authored-by: Ajay Vasisht <43521356+avasisht23@users.noreply.github.com>

---------

Co-authored-by: Ajay Vasisht <43521356+avasisht23@users.noreply.github.com>

* docs: aa-core providers connection methods (#51)

* docs: provider/getUserOperationReceipt

* docs: providers api funcs sitebar sections

* docs: sendTransaction

* docs: sendTransactions

* docs: aa-core providers request method

* docs: aa-core providers connection methods

* Update site/packages/aa-core/provider/getAddress.md

Co-authored-by: Ajay Vasisht <43521356+avasisht23@users.noreply.github.com>

* Update site/packages/aa-core/provider/isConnected.md

Co-authored-by: Ajay Vasisht <43521356+avasisht23@users.noreply.github.com>

* fix: fix lint

---------

Co-authored-by: Ajay Vasisht <43521356+avasisht23@users.noreply.github.com>

* docs: add web3auth direct link

* docs: updates to transferring-ownership (#54)

* docs: updates to batching-transactions (#55)

* chore: attempt to disable setting basepath for github pages (#59)

* moldy/pages base path (#60)

* chore: attempt to disable setting basepath for github pages

* chore: oops put this in the wrong place

* refactor: remove getFeeData and use viem method (#58)

* fix: override getAccountInitCode in LightAccount (#61)

* docs: aa-core providers sign methods (#62)

Co-authored-by: Ajay Vasisht <43521356+avasisht23@users.noreply.github.com>

* docs: aa-core providers build user op methods (#64)

* docs: add erc-6900 page (#69)

* chore: update (#66)

* docs: format capsule doc (#71)

* chore: add links to git repo, audit report (#72)

* feat: create6492Signature at BaseSCA level using account init code parsing (#79)

* feat: la factory util + docs + example (#82)

* chore: fix up viem versioning and light account integration into daapp (#84)

* docs: add search (#87)

* feat: add drop and replace to the uo logic (#85)

Co-authored-by: therealharpaljadeja <jadejaharpal14@gmail.com>

* feat: add lit signer docs (#70)

* feat: add lit signer docs

* fix: updates for testnet version

* refactor: remove unused var

* refactor: pr comments

* refactor: pr comments

* docs: apply nits to lit signer docs

Co-authored-by: Ajay Vasisht <43521356+avasisht23@users.noreply.github.com>

---------

Co-authored-by: Michael Moldoveanu <moldy530@gmail.com>
Co-authored-by: Ajay Vasisht <43521356+avasisht23@users.noreply.github.com>

* docs: adding portal (#65)

* Adding Portal

* Update site/smart-accounts/signers/portal.md

Co-authored-by: Ajay Vasisht <43521356+avasisht23@users.noreply.github.com>

* Update site/smart-accounts/signers/portal.md

Co-authored-by: Ajay Vasisht <43521356+avasisht23@users.noreply.github.com>

* Update site/smart-accounts/signers/portal.md

Co-authored-by: Ajay Vasisht <43521356+avasisht23@users.noreply.github.com>

* Update site/smart-accounts/signers/portal.md

Co-authored-by: Ajay Vasisht <43521356+avasisht23@users.noreply.github.com>

* Update site/smart-accounts/signers/portal.md

Co-authored-by: Ajay Vasisht <43521356+avasisht23@users.noreply.github.com>

* Update site/snippets/portal.ts

Co-authored-by: Ajay Vasisht <43521356+avasisht23@users.noreply.github.com>

* feat: add portal as a signer option

* docs: add PR nits

---------

Co-authored-by: Jong Hyuck Won <denniswon@users.noreply.github.com>
Co-authored-by: Ajay Vasisht <43521356+avasisht23@users.noreply.github.com>
Co-authored-by: Michael Moldoveanu <moldy530@gmail.com>

* docs: add privy guide (#63)

* Initial version of Privy guide

* PR comments

* docs: address PR feedback

* docs: add note about React

* docs: apply pr nits

---------

Co-authored-by: Michael Moldoveanu <moldy530@gmail.com>

* docs: fix some lint errors (#90)

* docs: update sponsoring-gas.md (#83)

* fix: general improvements to the examples section (#111)

* chore: fix license specification for Alchemy (#116)

* Update sponsoring-gas.md

* Update sponsoring-gas.md

* docs(images): add image and complete paragraph on sending userops

---------

Co-authored-by: Igor Shadurin <haletskaya@gmail.com>
Co-authored-by: Rohan Thomare <rohanthomare@gmail.com>
Co-authored-by: Sahil Aujla <sahilaujla15@gmail.com>

* docs: add withCustomMiddleware (#81)

* docs: add withCustomMiddleware

* mention customMiddleware

* update meta tags

* update description for withCustomMiddleware

* add the more detailed code example

* use async await with builduserop

* docs: apply suggestions from PRs

---------

Co-authored-by: Michael Moldoveanu <moldy530@gmail.com>

* docs: add withFeeDataGetter (#80)

* docs: add withFeeDataGetter

* add meta tags

* update withFeeDataGetter

* mention feeDataGetter readonly field

* Update site/packages/aa-core/provider/withFeeDataGetter.md

Co-authored-by: Ajay Vasisht <43521356+avasisht23@users.noreply.github.com>

* Update site/packages/aa-core/provider/withFeeDataGetter.md

Co-authored-by: Ajay Vasisht <43521356+avasisht23@users.noreply.github.com>

* add detailed code example

* update description

* docs: update with PR feedback

---------

Co-authored-by: Ajay Vasisht <43521356+avasisht23@users.noreply.github.com>
Co-authored-by: Michael Moldoveanu <moldy530@gmail.com>

* docs: add why account kit doc (#74)

* docs: add why account kit page

* add links

* update batching txs link

* incorporated feedback

* docs: updates to choosing smart account (#56)

* docs: updates to choosing smart account

* docs: updates to choosing smart account

* docs: updates to choosing smart account

* docs: updates to choosing smart account

---------

Co-authored-by: Michael Moldoveanu <moldy530@gmail.com>

* docs: fix lint formatting

* feat: landing page (#67)

* chore: update the publish package job to include deploying the site (#91)

* chore: update the publish package job to include deploying the site

* chore: remove the prerelease config from lerna

* docs: update lit snippet (#92)

* refactor: remove unnecessary extra client on alchemy provider (#93)

* docs: aa-core accounts (#68)

* docs: aa-core accounts

* docs: erc-6900 update

* Update site/packages/aa-core/accounts/simple-smart-contract-account.md

Co-authored-by: Ajay Vasisht <43521356+avasisht23@users.noreply.github.com>

* Update site/packages/aa-core/accounts/base-smart-contract-account.md

Co-authored-by: Ajay Vasisht <43521356+avasisht23@users.noreply.github.com>

* Update site/packages/aa-core/accounts/base-smart-contract-account.md

Co-authored-by: Ajay Vasisht <43521356+avasisht23@users.noreply.github.com>

* Update site/packages/aa-core/accounts/base-smart-contract-account.md

Co-authored-by: Ajay Vasisht <43521356+avasisht23@users.noreply.github.com>

* Update site/packages/aa-core/accounts/base-smart-contract-account.md

Co-authored-by: Ajay Vasisht <43521356+avasisht23@users.noreply.github.com>

* Update site/packages/aa-core/accounts/base-smart-contract-account.md

Co-authored-by: Ajay Vasisht <43521356+avasisht23@users.noreply.github.com>

* docs: base smart account and simple account doc section complete

* Update site/packages/aa-core/accounts/required/getDummySignature.md

Co-authored-by: Michael Moldoveanu <moldy530@gmail.com>

* Update site/.vitepress/config.ts

Co-authored-by: Michael Moldoveanu <moldy530@gmail.com>

* Update site/.vitepress/config.ts

Co-authored-by: Michael Moldoveanu <moldy530@gmail.com>

---------

Co-authored-by: Ajay Vasisht <43521356+avasisht23@users.noreply.github.com>
Co-authored-by: Michael Moldoveanu <moldy530@gmail.com>

* feat: add account and signer type log into the headers of public client (#76)

* docs: update choosing a signer docs (#89)

* add heap analytics (#94)

* docs: add intro doc (#75)

* docs: add intro doc

* remove the confusing diagram

* fix image sizing

* docs: add fireblocks signer (#88)

* chore: fix the setup node version in github actions

* docs: add favicon (#96)

* docs: sidebar refactor (#97)

* docs: sidebar-refactor

* refactor(sidebar): update sidebar structure

* fix(site): fix dead links and merge erc-6900 into modular account

* docs: update titles based on sidebar refactor (#98)

* fix: left out a merge conflict

* docs: add dynamic as signer (#99)

* fix: fix some lint and merge conflicts

* docs: aa-core withGasEstimator (#78)

* docs: aa-core withGasEstimator

* Update site/packages/aa-core/provider/withGasEstimator.md

Co-authored-by: Jong Hyuck Won <denniswon@users.noreply.github.com>

* docs: Update site/packages/aa-core/provider/withGasEstimator.md

Co-authored-by: Ajay Vasisht <43521356+avasisht23@users.noreply.github.com>

* docs: Update site/packages/aa-core/provider/withGasEstimator.md

Co-authored-by: Ajay Vasisht <43521356+avasisht23@users.noreply.github.com>

* docs: adding more detailed examples and read only field

---------

Co-authored-by: Jong Hyuck Won <denniswon@users.noreply.github.com>
Co-authored-by: Ajay Vasisht <43521356+avasisht23@users.noreply.github.com>

* fix: dead link in docs

* feat: add simple account abstraction example (#86)

* chore: dedup yarn lock (#100)

* docs: aa-core withPaymasterMiddleware (#77)

* fix: add submodule for accountkit token (#101)

* chore: rename components in aa-simple-dapp (#102)

* chore: capitalize names in aa-simple-example

* chore: capitalize name for aa-simple-dapp

---------

Co-authored-by: avasisht23 <ajay@alchemy.com>
Co-authored-by: Ajay Vasisht <43521356+avasisht23@users.noreply.github.com>
Co-authored-by: Sahil Aujla <sahilaujla15@gmail.com>
Co-authored-by: Ava Robinson <avamrobinson@gmail.com>
Co-authored-by: avarobinson <45052879+avarobinson@users.noreply.github.com>
Co-authored-by: Jong Hyuck Won <jhwon0820@gmail.com>
Co-authored-by: Max Blaushild <blaushmild@gmail.com>
Co-authored-by: Jong Hyuck Won <denniswon@users.noreply.github.com>
Co-authored-by: Dennis Won <denniswon@Denniss-MacBook-Pro.local>
Co-authored-by: Nitya Subramanian <nityas.subramanian@gmail.com>
Co-authored-by: howy <132113803+howydev@users.noreply.github.com>
Co-authored-by: Rohan Thomare <rohanthomare@gmail.com>
Co-authored-by: therealharpaljadeja <jadejaharpal14@gmail.com>
Co-authored-by: Bean <josh@litprotocol.com>
Co-authored-by: parsaattari <attari.parsa@gmail.com>
Co-authored-by: Ankush Swarnakar <ankushswar1@gmail.com>
Co-authored-by: Will Hennessy <hennessywill@gmail.com>
Co-authored-by: Igor Shadurin <haletskaya@gmail.com>
Co-authored-by: Matt Foyle <mfoyle93@gmail.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants