UNPKG

@abstract-foundation/agw-client

Version:
81 lines 6 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.sessionWalletActions = sessionWalletActions; exports.globalWalletActions = globalWalletActions; exports.linkableWalletActions = linkableWalletActions; exports.linkablePublicActions = linkablePublicActions; const viem_1 = require("viem"); const accounts_1 = require("viem/accounts"); const actions_1 = require("viem/actions"); const createSession_js_1 = require("./actions/createSession.js"); const deployContract_js_1 = require("./actions/deployContract.js"); const getLinkedAccounts_js_1 = require("./actions/getLinkedAccounts.js"); const getLinkedAgw_js_1 = require("./actions/getLinkedAgw.js"); const getSessionStatus_js_1 = require("./actions/getSessionStatus.js"); const linkToAgw_js_1 = require("./actions/linkToAgw.js"); const prepareTransaction_js_1 = require("./actions/prepareTransaction.js"); const revokeSessions_js_1 = require("./actions/revokeSessions.js"); const sendTransaction_js_1 = require("./actions/sendTransaction.js"); const sendTransactionBatch_js_1 = require("./actions/sendTransactionBatch.js"); const sendTransactionForSession_js_1 = require("./actions/sendTransactionForSession.js"); const signMessage_js_1 = require("./actions/signMessage.js"); const signTransaction_js_1 = require("./actions/signTransaction.js"); const signTransactionBatch_js_1 = require("./actions/signTransactionBatch.js"); const signTransactionForSession_js_1 = require("./actions/signTransactionForSession.js"); const signTypedData_js_1 = require("./actions/signTypedData.js"); const writeContract_js_1 = require("./actions/writeContract.js"); const writeContractForSession_js_1 = require("./actions/writeContractForSession.js"); const constants_js_1 = require("./constants.js"); const sessionClient_js_1 = require("./sessionClient.js"); function sessionWalletActions(signerClient, publicClient, session, paymasterHandler) { return (client) => ({ sendTransaction: (args) => (0, sendTransactionForSession_js_1.sendTransactionForSession)(client, signerClient, publicClient, args, session, paymasterHandler), writeContract: (args) => (0, writeContractForSession_js_1.writeContractForSession)(client, signerClient, publicClient, args, session, paymasterHandler), signTransaction: (args) => (0, signTransactionForSession_js_1.signTransactionForSession)(client, signerClient, publicClient, args, session, paymasterHandler), signTypedData: (args) => (0, signTypedData_js_1.signTypedDataForSession)(client, signerClient, publicClient, args, session, paymasterHandler), getSessionStatus: () => (0, getSessionStatus_js_1.getSessionStatus)(publicClient, (0, accounts_1.parseAccount)(client.account).address, session), }); } function globalWalletActions(signerClient, publicClient, isPrivyCrossApp = false, customPaymasterHandler) { return (client) => ({ getChainId: () => (0, actions_1.getChainId)(client), getLinkedAccounts: () => (0, getLinkedAccounts_js_1.getLinkedAccounts)(client, { agwAddress: (0, accounts_1.parseAccount)(client.account).address, }), isLinkedAccount: (args) => (0, getLinkedAgw_js_1.isLinkedAccount)(client, args), createSession: (args) => (0, createSession_js_1.createSession)(client, publicClient, args), revokeSessions: (args) => (0, revokeSessions_js_1.revokeSessions)(client, args), prepareAbstractTransactionRequest: (args) => (0, prepareTransaction_js_1.prepareTransactionRequest)(client, signerClient, publicClient, args), sendTransaction: (args) => (0, sendTransaction_js_1.sendTransaction)(client, signerClient, publicClient, args, isPrivyCrossApp, customPaymasterHandler), sendTransactionBatch: (args) => (0, sendTransactionBatch_js_1.sendTransactionBatch)(client, signerClient, publicClient, args, isPrivyCrossApp, customPaymasterHandler), signMessage: (args) => (0, signMessage_js_1.signMessage)(client, signerClient, args, isPrivyCrossApp), signTransaction: (args) => (0, signTransaction_js_1.signTransaction)(client, signerClient, publicClient, args, constants_js_1.EOA_VALIDATOR_ADDRESS, {}, customPaymasterHandler, isPrivyCrossApp), signTransactionBatch: (args) => (0, signTransactionBatch_js_1.signTransactionBatch)(client, signerClient, publicClient, args, constants_js_1.EOA_VALIDATOR_ADDRESS, {}, customPaymasterHandler, isPrivyCrossApp), signTypedData: (args) => (0, signTypedData_js_1.signTypedData)(client, signerClient, publicClient, args, isPrivyCrossApp), deployContract: (args) => (0, deployContract_js_1.deployContract)(client, signerClient, publicClient, args, isPrivyCrossApp), writeContract: (args) => (0, writeContract_js_1.writeContract)(Object.assign(client, { sendTransaction: (args) => (0, sendTransaction_js_1.sendTransaction)(client, signerClient, publicClient, args, isPrivyCrossApp, customPaymasterHandler), }), signerClient, publicClient, args, isPrivyCrossApp), toSessionClient: (signer, session) => (0, sessionClient_js_1.toSessionClient)({ client: client, signer, session: session, paymasterHandler: customPaymasterHandler, }), getSessionStatus: (sessionHashOrConfig) => (0, getSessionStatus_js_1.getSessionStatus)(publicClient, (0, accounts_1.parseAccount)(client.account).address, sessionHashOrConfig), }); } function linkableWalletActions() { return (client) => ({ ...(0, viem_1.walletActions)(client), linkToAgw: (args) => (0, linkToAgw_js_1.linkToAgw)(client, args), getLinkedAgw: () => (0, getLinkedAgw_js_1.getLinkedAgw)(client, {}), }); } function linkablePublicActions() { return (client) => ({ getLinkedAgw: (args) => (0, getLinkedAgw_js_1.getLinkedAgw)(client, args), getLinkedAccounts: (args) => (0, getLinkedAccounts_js_1.getLinkedAccounts)(client, args), }); } //# sourceMappingURL=walletActions.js.map