@aastar/sdk 0.20.1 → 0.20.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +115 -35
- package/dist/UserClient-JMNNZT4P.js +6 -0
- package/dist/{UserClient-YUHCJJJL.js.map → UserClient-JMNNZT4P.js.map} +1 -1
- package/dist/account.js +3 -3
- package/dist/admin.js +3 -3
- package/dist/channel.js +3 -3
- package/dist/{chunk-4DVUM4MC.js → chunk-5TDDS3T5.js} +3 -3
- package/dist/{chunk-4DVUM4MC.js.map → chunk-5TDDS3T5.js.map} +1 -1
- package/dist/{chunk-O3Y7II3B.js → chunk-KL6SCEIU.js} +4 -4
- package/dist/{chunk-O3Y7II3B.js.map → chunk-KL6SCEIU.js.map} +1 -1
- package/dist/{chunk-DI3E6PMI.js → chunk-LNICTATJ.js} +6 -6
- package/dist/{chunk-DI3E6PMI.js.map → chunk-LNICTATJ.js.map} +1 -1
- package/dist/{chunk-PCLPYRTX.js → chunk-M5ORP2PM.js} +8 -8
- package/dist/{chunk-PCLPYRTX.js.map → chunk-M5ORP2PM.js.map} +1 -1
- package/dist/{chunk-MPOMWT2J.js → chunk-NAPMVAVJ.js} +3 -3
- package/dist/{chunk-MPOMWT2J.js.map → chunk-NAPMVAVJ.js.map} +1 -1
- package/dist/{chunk-NZGXB2C5.js → chunk-O454V5ML.js} +3 -3
- package/dist/{chunk-NZGXB2C5.js.map → chunk-O454V5ML.js.map} +1 -1
- package/dist/{chunk-XFI3AK32.js → chunk-QNYP7RPI.js} +3 -3
- package/dist/{chunk-XFI3AK32.js.map → chunk-QNYP7RPI.js.map} +1 -1
- package/dist/{chunk-YHM77LIP.js → chunk-R2RATIK2.js} +9 -9
- package/dist/{chunk-YHM77LIP.js.map → chunk-R2RATIK2.js.map} +1 -1
- package/dist/{chunk-ZSSNU3UF.js → chunk-TBDMSJVL.js} +12 -12
- package/dist/{chunk-ZSSNU3UF.js.map → chunk-TBDMSJVL.js.map} +1 -1
- package/dist/{chunk-OSPRJZ5T.js → chunk-Y3KP7R2Y.js} +3 -3
- package/dist/{chunk-OSPRJZ5T.js.map → chunk-Y3KP7R2Y.js.map} +1 -1
- package/dist/{chunk-HVAB4TTT.js → chunk-YSDWB6DO.js} +3 -3
- package/dist/{chunk-HVAB4TTT.js.map → chunk-YSDWB6DO.js.map} +1 -1
- package/dist/{chunk-DSZ372PH.js → chunk-ZJLIKMCA.js} +20 -3
- package/dist/chunk-ZJLIKMCA.js.map +1 -0
- package/dist/{contract-addresses-JE3X6DFY.js → contract-addresses-VLAHHXOO.js} +3 -3
- package/dist/{contract-addresses-JE3X6DFY.js.map → contract-addresses-VLAHHXOO.js.map} +1 -1
- package/dist/core.js +2 -2
- package/dist/dapp.js +280 -4
- package/dist/dapp.js.map +1 -1
- package/dist/{dist-GHTBO7CD.js → dist-WMYQOYRO.js} +5 -5
- package/dist/{dist-GHTBO7CD.js.map → dist-WMYQOYRO.js.map} +1 -1
- package/dist/enduser.js +4 -4
- package/dist/identity.js +3 -3
- package/dist/index.d.ts +0 -1
- package/dist/index.js +45 -24
- package/dist/index.js.map +1 -1
- package/dist/{index.node-55LOPHNQ.js → index.node-GNYPFVZQ.js} +4 -4
- package/dist/{index.node-55LOPHNQ.js.map → index.node-GNYPFVZQ.js.map} +1 -1
- package/dist/operator.js +3 -3
- package/dist/paymaster.js +3 -3
- package/dist/tokens.js +3 -3
- package/dist/x402.js +3 -3
- package/package.json +33 -8
- package/dist/UserClient-YUHCJJJL.js +0 -6
- package/dist/chunk-6JCYPTSH.js +0 -281
- package/dist/chunk-6JCYPTSH.js.map +0 -1
- package/dist/chunk-DSZ372PH.js.map +0 -1
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { channelActions } from './chunk-
|
|
1
|
+
import { channelActions } from './chunk-TBDMSJVL.js';
|
|
2
2
|
|
|
3
3
|
// ../channel/dist/voucher.js
|
|
4
4
|
var VOUCHER_TYPES = {
|
|
@@ -109,5 +109,5 @@ var ChannelClient = class {
|
|
|
109
109
|
};
|
|
110
110
|
|
|
111
111
|
export { ChannelClient, VOUCHER_TYPES, getVoucherDomain, signVoucher };
|
|
112
|
-
//# sourceMappingURL=chunk-
|
|
113
|
-
//# sourceMappingURL=chunk-
|
|
112
|
+
//# sourceMappingURL=chunk-Y3KP7R2Y.js.map
|
|
113
|
+
//# sourceMappingURL=chunk-Y3KP7R2Y.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../channel/dist/voucher.js","../../channel/dist/ChannelClient.js"],"names":[],"mappings":";;;AAAO,IAAM,aAAA,GAAgB;AAAA,EACzB,OAAA,EAAS;AAAA,IACL,EAAE,IAAA,EAAM,WAAA,EAAa,IAAA,EAAM,SAAA,EAAU;AAAA,IACrC,EAAE,IAAA,EAAM,kBAAA,EAAoB,IAAA,EAAM,SAAA;AAAU;AAEpD;AACO,SAAS,gBAAA,CAAiB,SAAS,iBAAA,EAAmB;AACzD,EAAA,OAAO;AAAA,IACH,IAAA,EAAM,qBAAA;AAAA,IACN,OAAA,EAAS,OAAA;AAAA,IACT,OAAA;AAAA,IACA;AAAA,GACJ;AACJ;AACA,eAAsB,WAAA,CAAY,cAAc,MAAA,EAAQ;AACpD,EAAA,MAAM,MAAA,GAAS,gBAAA,CAAiB,MAAA,CAAO,OAAA,EAAS,OAAO,iBAAiB,CAAA;AACxE,EAAA,MAAM,UAAU,YAAA,CAAa,OAAA;AAC7B,EAAA,IAAI,CAAC,OAAA,EAAS;AACV,IAAA,MAAM,IAAI,MAAM,mCAAmC,CAAA;AAAA,EACvD;AACA,EAAA,OAAO,aAAa,aAAA,CAAc;AAAA,IAC9B,OAAA;AAAA,IACA,MAAA;AAAA,IACA,KAAA,EAAO,aAAA;AAAA,IACP,WAAA,EAAa,SAAA;AAAA,IACb,OAAA,EAAS;AAAA,MACL,WAAW,MAAA,CAAO,SAAA;AAAA,MAClB,kBAAkB,MAAA,CAAO;AAAA;AAC7B,GACH,CAAA;AACL;;;AC5BO,IAAM,gBAAN,MAAoB;AAAA,EACvB,WAAA;AAAA,EACA,YAAA;AAAA,EACA,MAAA;AAAA,EACA,YAAY,MAAA,EAAQ;AAChB,IAAA,IAAA,CAAK,MAAA,GAAS,MAAA;AAKd,IAAA,IAAA,CAAK,cAAc,cAAA,CAAe,MAAA,CAAO,cAAc,CAAA,CAAE,OAAO,YAAY,CAAA;AAC5E,IAAA,IAAA,CAAK,eAAe,cAAA,CAAe,MAAA,CAAO,cAAc,CAAA,CAAE,OAAO,YAAY,CAAA;AAAA,EACjF;AAAA,EACA,MAAM,YAAY,aAAA,EAAe;AAC7B,IAAA,OAAO,IAAA,CAAK,aAAa,WAAA,CAAY;AAAA,MACjC,OAAO,aAAA,CAAc,KAAA;AAAA,MACrB,OAAO,aAAA,CAAc,KAAA;AAAA,MACrB,SAAS,aAAA,CAAc,OAAA;AAAA,MACvB,MAAM,aAAA,CAAc,IAAA;AAAA,MACpB,kBAAkB,aAAA,CAAc,gBAAA;AAAA,MAChC,OAAA,EAAS,IAAA,CAAK,MAAA,CAAO,YAAA,CAAa;AAAA,KACrC,CAAA;AAAA,EACL;AAAA,EACA,MAAM,kBAAA,CAAmB,SAAA,EAAW,gBAAA,EAAkB;AAClD,IAAA,MAAM,SAAA,GAAY,MAAM,WAAA,CAAY,IAAA,CAAK,OAAO,YAAA,EAAc;AAAA,MAC1D,SAAA;AAAA,MACA,gBAAA;AAAA,MACA,OAAA,EAAS,KAAK,MAAA,CAAO,OAAA;AAAA,MACrB,iBAAA,EAAmB,KAAK,MAAA,CAAO;AAAA,KAClC,CAAA;AACD,IAAA,OAAO,EAAE,SAAA,EAAW,gBAAA,EAAkB,SAAA,EAAU;AAAA,EACpD;AAAA,EACA,MAAM,cAAc,OAAA,EAAS;AACzB,IAAA,OAAO,IAAA,CAAK,aAAa,aAAA,CAAc;AAAA,MACnC,WAAW,OAAA,CAAQ,SAAA;AAAA,MACnB,kBAAkB,OAAA,CAAQ,gBAAA;AAAA,MAC1B,WAAW,OAAA,CAAQ,SAAA;AAAA,MACnB,OAAA,EAAS,IAAA,CAAK,MAAA,CAAO,YAAA,CAAa;AAAA,KACrC,CAAA;AAAA,EACL;AAAA,EACA,MAAM,aAAa,OAAA,EAAS;AACxB,IAAA,OAAO,IAAA,CAAK,aAAa,YAAA,CAAa;AAAA,MAClC,WAAW,OAAA,CAAQ,SAAA;AAAA,MACnB,kBAAkB,OAAA,CAAQ,gBAAA;AAAA,MAC1B,WAAW,OAAA,CAAQ,SAAA;AAAA,MACnB,OAAA,EAAS,IAAA,CAAK,MAAA,CAAO,YAAA,CAAa;AAAA,KACrC,CAAA;AAAA,EACL;AAAA,EACA,MAAM,YAAA,CAAa,SAAA,EAAW,MAAA,EAAQ;AAClC,IAAA,OAAO,IAAA,CAAK,aAAa,YAAA,CAAa;AAAA,MAClC,SAAA;AAAA,MACA,MAAA;AAAA,MACA,OAAA,EAAS,IAAA,CAAK,MAAA,CAAO,YAAA,CAAa;AAAA,KACrC,CAAA;AAAA,EACL;AAAA,EACA,MAAM,aAAa,SAAA,EAAW;AAC1B,IAAA,OAAO,IAAA,CAAK,aAAa,mBAAA,CAAoB;AAAA,MACzC,SAAA;AAAA,MACA,OAAA,EAAS,IAAA,CAAK,MAAA,CAAO,YAAA,CAAa;AAAA,KACrC,CAAA;AAAA,EACL;AAAA,EACA,MAAM,SAAS,SAAA,EAAW;AACtB,IAAA,OAAO,IAAA,CAAK,aAAa,eAAA,CAAgB;AAAA,MACrC,SAAA;AAAA,MACA,OAAA,EAAS,IAAA,CAAK,MAAA,CAAO,YAAA,CAAa;AAAA,KACrC,CAAA;AAAA,EACL;AAAA,EACA,MAAM,gBAAgB,SAAA,EAAW;AAC7B,IAAA,OAAO,IAAA,CAAK,WAAA,CAAY,UAAA,CAAW,EAAE,WAAW,CAAA;AAAA,EACpD;AAAA,EACA,MAAM,eAAA,GAAkB;AACpB,IAAA,OAAO,IAAA,CAAK,YAAY,aAAA,EAAc;AAAA,EAC1C;AAAA,EACA,MAAM,UAAA,GAAa;AACf,IAAA,OAAO,IAAA,CAAK,YAAY,OAAA,EAAQ;AAAA,EACpC;AACJ","file":"chunk-
|
|
1
|
+
{"version":3,"sources":["../../channel/dist/voucher.js","../../channel/dist/ChannelClient.js"],"names":[],"mappings":"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","file":"chunk-Y3KP7R2Y.js","sourcesContent":["export const VOUCHER_TYPES = {\n Voucher: [\n { name: 'channelId', type: 'bytes32' },\n { name: 'cumulativeAmount', type: 'uint128' },\n ],\n};\nexport function getVoucherDomain(chainId, verifyingContract) {\n return {\n name: 'MicroPaymentChannel',\n version: '1.0.0',\n chainId,\n verifyingContract,\n };\n}\nexport async function signVoucher(walletClient, params) {\n const domain = getVoucherDomain(params.chainId, params.verifyingContract);\n const account = walletClient.account;\n if (!account) {\n throw new Error('WalletClient must have an account');\n }\n return walletClient.signTypedData({\n account,\n domain,\n types: VOUCHER_TYPES,\n primaryType: 'Voucher',\n message: {\n channelId: params.channelId,\n cumulativeAmount: params.cumulativeAmount,\n },\n });\n}\n","import { channelActions } from '@aastar/core';\nimport { signVoucher } from './voucher.js';\nexport class ChannelClient {\n readActions;\n writeActions;\n config;\n constructor(config) {\n this.config = config;\n // Separate clients: publicClient for reads (no account required),\n // walletClient for writes. Unlike X402Client which is always write-first,\n // ChannelClient exposes read-heavy helpers (getChannel, verifyVoucher) that\n // callers may invoke without a wallet configured.\n this.readActions = channelActions(config.channelAddress)(config.publicClient);\n this.writeActions = channelActions(config.channelAddress)(config.walletClient);\n }\n async openChannel(channelConfig) {\n return this.writeActions.openChannel({\n payee: channelConfig.payee,\n token: channelConfig.token,\n deposit: channelConfig.deposit,\n salt: channelConfig.salt,\n authorizedSigner: channelConfig.authorizedSigner,\n account: this.config.walletClient.account,\n });\n }\n async signVoucherOffline(channelId, cumulativeAmount) {\n const signature = await signVoucher(this.config.walletClient, {\n channelId,\n cumulativeAmount,\n chainId: this.config.chainId,\n verifyingContract: this.config.channelAddress,\n });\n return { channelId, cumulativeAmount, signature };\n }\n async settleChannel(voucher) {\n return this.writeActions.settleChannel({\n channelId: voucher.channelId,\n cumulativeAmount: voucher.cumulativeAmount,\n signature: voucher.signature,\n account: this.config.walletClient.account,\n });\n }\n async closeChannel(voucher) {\n return this.writeActions.closeChannel({\n channelId: voucher.channelId,\n cumulativeAmount: voucher.cumulativeAmount,\n signature: voucher.signature,\n account: this.config.walletClient.account,\n });\n }\n async topUpChannel(channelId, amount) {\n return this.writeActions.topUpChannel({\n channelId,\n amount,\n account: this.config.walletClient.account,\n });\n }\n async requestClose(channelId) {\n return this.writeActions.requestCloseChannel({\n channelId,\n account: this.config.walletClient.account,\n });\n }\n async withdraw(channelId) {\n return this.writeActions.withdrawChannel({\n channelId,\n account: this.config.walletClient.account,\n });\n }\n async getChannelState(channelId) {\n return this.readActions.getChannel({ channelId });\n }\n async getCloseTimeout() {\n return this.readActions.CLOSE_TIMEOUT();\n }\n async getVersion() {\n return this.readActions.version();\n }\n}\n"]}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { SimpleAccountFactoryABI } from './chunk-
|
|
1
|
+
import { SimpleAccountFactoryABI } from './chunk-TBDMSJVL.js';
|
|
2
2
|
import { http, createWalletClient, encodeAbiParameters, keccak256, encodeFunctionData, concatHex } from 'viem';
|
|
3
3
|
import { privateKeyToAccount } from 'viem/accounts';
|
|
4
4
|
|
|
@@ -112,5 +112,5 @@ async function toSimpleSmartAccount(parameters) {
|
|
|
112
112
|
}
|
|
113
113
|
|
|
114
114
|
export { UserOpClient, createEOAWalletClient, getUserOpHash, packUserOpLimits, toSimpleSmartAccount };
|
|
115
|
-
//# sourceMappingURL=chunk-
|
|
116
|
-
//# sourceMappingURL=chunk-
|
|
115
|
+
//# sourceMappingURL=chunk-YSDWB6DO.js.map
|
|
116
|
+
//# sourceMappingURL=chunk-YSDWB6DO.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../account/dist/eoa.js","../../account/dist/index.js","../../account/dist/accounts/simple.js"],"names":[],"mappings":"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","file":"chunk-
|
|
1
|
+
{"version":3,"sources":["../../account/dist/eoa.js","../../account/dist/index.js","../../account/dist/accounts/simple.js"],"names":[],"mappings":"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","file":"chunk-YSDWB6DO.js","sourcesContent":["import { createWalletClient, http } from 'viem';\nimport { privateKeyToAccount } from 'viem/accounts';\nexport const createEOAWalletClient = (privateKey, chain, transport = http()) => {\n const account = privateKeyToAccount(privateKey);\n const client = createWalletClient({\n account,\n chain,\n transport\n });\n return Object.assign(client, {\n async sendTransaction(args) {\n return client.sendTransaction({\n ...args,\n account,\n chain\n });\n },\n getAddress: () => account.address\n });\n};\n","import { encodeAbiParameters, keccak256 } from 'viem';\nexport * from './eoa.js';\nexport * from './accounts/simple.js';\n/**\n * Common Pack Logic for v0.7 UserOperations\n */\nexport function packUserOpLimits(high, low) {\n return `0x${((high << 128n) | low).toString(16).padStart(64, '0')}`;\n}\n/**\n * Local implementation of EntryPoint v0.7 getUserOpHash\n */\nexport function getUserOpHash(op, ep, chainId) {\n const packed = encodeAbiParameters([\n { type: 'address' }, { type: 'uint256' }, { type: 'bytes32' }, { type: 'bytes32' },\n { type: 'bytes32' }, { type: 'uint256' }, { type: 'bytes32' }, { type: 'bytes32' }\n ], [\n op.sender, BigInt(op.nonce),\n keccak256(op.initCode && op.initCode !== \"0x\" ? op.initCode : '0x'),\n keccak256(op.callData),\n op.accountGasLimits, BigInt(op.preVerificationGas), op.gasFees,\n keccak256(op.paymasterAndData)\n ]);\n const enc = encodeAbiParameters([{ type: 'bytes32' }, { type: 'address' }, { type: 'uint256' }], [keccak256(packed), ep, BigInt(chainId)]);\n return keccak256(enc);\n}\n/**\n * UserOperation Client for handling high-level flows\n */\nexport class UserOpClient {\n static async estimateGas(bundler, op, entryPoint) {\n return bundler.request({\n method: 'eth_estimateUserOperationGas',\n params: [op, entryPoint]\n });\n }\n static async sendUserOp(bundler, op, entryPoint) {\n return bundler.request({\n method: 'eth_sendUserOperation',\n params: [op, entryPoint]\n });\n }\n static async getReceipt(bundler, hash) {\n return bundler.request({\n method: 'eth_getUserOperationReceipt',\n params: [hash]\n });\n }\n}\n","import { concatHex, encodeFunctionData, } from 'viem';\nimport { SimpleAccountFactoryABI } from '@aastar/core';\nimport { getUserOpHash } from '../index.js';\nexport async function toSimpleSmartAccount(parameters) {\n const { client, owner, factoryAddress, entryPoint, index = 0n, salt = 0n } = parameters;\n // Calculate initCode\n const factoryData = encodeFunctionData({\n abi: SimpleAccountFactoryABI,\n functionName: 'createAccount',\n args: [owner.address, salt]\n });\n const initCode = concatHex([factoryAddress, factoryData]);\n // Calculate counterfactual address\n const address = await client.readContract({\n address: factoryAddress,\n abi: SimpleAccountFactoryABI,\n functionName: 'getAddress',\n args: [owner.address, salt]\n });\n return {\n address,\n publicKey: owner.address,\n source: 'custom',\n type: 'local',\n entryPoint: entryPoint.address,\n async signMessage({ message }) {\n // validating signature for smart account usually involves EIP-1271, \n // but here we just sign with owner for SimpleAccount which validates owner sig\n return owner.signMessage({ message });\n },\n async signTypedData(typedData) {\n return owner.signTypedData(typedData);\n },\n async signTransaction(transaction) {\n throw new Error('Smart Accounts cannot sign transactions directly. Use UserOperations.');\n },\n async signUserOperation(userOp) {\n const chainId = client.chain?.id || 31337; // Default to local anvil if not found\n const hash = getUserOpHash(userOp, entryPoint.address, chainId);\n return owner.signMessage({ message: { raw: hash } });\n },\n async getInitCode() {\n return initCode;\n },\n async getDummySignature() {\n return '0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff';\n }\n };\n}\n"]}
|
|
@@ -184,6 +184,23 @@ var CANONICAL_ADDRESSES = {
|
|
|
184
184
|
pnts: "0x0000000000000000000000000000000000000000"
|
|
185
185
|
}
|
|
186
186
|
};
|
|
187
|
+
function listSupportedChainIds() {
|
|
188
|
+
return Object.keys(CANONICAL_ADDRESSES).map(Number);
|
|
189
|
+
}
|
|
190
|
+
function isSupportedChainId(chainId2) {
|
|
191
|
+
return Object.prototype.hasOwnProperty.call(CANONICAL_ADDRESSES, chainId2);
|
|
192
|
+
}
|
|
193
|
+
function getCanonicalAddresses(chainId2) {
|
|
194
|
+
if (!isSupportedChainId(chainId2))
|
|
195
|
+
return void 0;
|
|
196
|
+
const a = CANONICAL_ADDRESSES[chainId2];
|
|
197
|
+
return {
|
|
198
|
+
...a,
|
|
199
|
+
// Aliases bridging the canonical table's key names to the client factories'.
|
|
200
|
+
gTokenStaking: a.staking,
|
|
201
|
+
mySBT: a.sbt
|
|
202
|
+
};
|
|
203
|
+
}
|
|
187
204
|
|
|
188
205
|
// ../core/dist/constants.js
|
|
189
206
|
var network = typeof process !== "undefined" && process.env && process.env.NETWORK || "anvil";
|
|
@@ -328,6 +345,6 @@ var ALL_ADDRESSES = {
|
|
|
328
345
|
...OFFICIAL_ADDRESSES
|
|
329
346
|
};
|
|
330
347
|
|
|
331
|
-
export { AGENT_IDENTITY_REGISTRY_ADDRESS, AGENT_REPUTATION_REGISTRY_ADDRESS, ALL_ADDRESSES, APNTS_ADDRESS, BLS_AGGREGATOR_ADDRESS, BLS_VALIDATOR_ADDRESS, BPS_DENOMINATOR, CHAIN_MAINNET, CHAIN_SEPOLIA, COMMUNITY_OWNERS, CONTRACT_SRC_HASH, CORE_ADDRESSES, DEFAULT_APNTS_PRICE_USD, DEFAULT_CALL_GAS_LIMIT, DEFAULT_GAS_TOKEN_MINT_AMOUNT, DEFAULT_PRE_VERIFICATION_GAS, DEFAULT_TIMEOUT_MS, DEFAULT_TOKEN_NAME, DEFAULT_TOKEN_SYMBOL, DEFAULT_USDT_MINT_AMOUNT, DEFAULT_VERIFICATION_GAS_LIMIT, DVT_VALIDATOR_ADDRESS, ENTRY_POINT_ADDRESS, FAUCET_API_URL, GTOKEN_ADDRESS, GTOKEN_STAKING_ADDRESS, MAX_SERVICE_FEE, MICRO_PAYMENT_CHANNEL_ADDRESS, MONITORING_ADDRESSES, NODE_STAKE_AMOUNTS, OFFICIAL_ADDRESSES, PAYMASTER_ADDRESSES, PAYMASTER_FACTORY_ADDRESS, PAYMASTER_V4_ADDRESS, PAYMASTER_V4_IMPL_ADDRESS, REGISTRY_ADDRESS, REPUTATION_SYSTEM_ADDRESS, SBT_ADDRESS, SERVICE_FEE_RATE, SUPER_PAYMASTER_ADDRESS, TEST_ACCOUNT_ADDRESSES, TEST_ACCOUNT_POOL_SIZE, TEST_COMMUNITIES, TEST_TOKEN_ADDRESSES, TOKEN_ADDRESSES, XPNTS_FACTORY_ADDRESS, applyConfig };
|
|
332
|
-
//# sourceMappingURL=chunk-
|
|
333
|
-
//# sourceMappingURL=chunk-
|
|
348
|
+
export { AGENT_IDENTITY_REGISTRY_ADDRESS, AGENT_REPUTATION_REGISTRY_ADDRESS, ALL_ADDRESSES, APNTS_ADDRESS, BLS_AGGREGATOR_ADDRESS, BLS_VALIDATOR_ADDRESS, BPS_DENOMINATOR, CANONICAL_ADDRESSES, CHAIN_MAINNET, CHAIN_SEPOLIA, COMMUNITY_OWNERS, CONTRACT_SRC_HASH, CORE_ADDRESSES, DEFAULT_APNTS_PRICE_USD, DEFAULT_CALL_GAS_LIMIT, DEFAULT_GAS_TOKEN_MINT_AMOUNT, DEFAULT_PRE_VERIFICATION_GAS, DEFAULT_TIMEOUT_MS, DEFAULT_TOKEN_NAME, DEFAULT_TOKEN_SYMBOL, DEFAULT_USDT_MINT_AMOUNT, DEFAULT_VERIFICATION_GAS_LIMIT, DVT_VALIDATOR_ADDRESS, ENTRY_POINT_ADDRESS, FAUCET_API_URL, GTOKEN_ADDRESS, GTOKEN_STAKING_ADDRESS, MAX_SERVICE_FEE, MICRO_PAYMENT_CHANNEL_ADDRESS, MONITORING_ADDRESSES, NODE_STAKE_AMOUNTS, OFFICIAL_ADDRESSES, PAYMASTER_ADDRESSES, PAYMASTER_FACTORY_ADDRESS, PAYMASTER_V4_ADDRESS, PAYMASTER_V4_IMPL_ADDRESS, REGISTRY_ADDRESS, REPUTATION_SYSTEM_ADDRESS, SBT_ADDRESS, SERVICE_FEE_RATE, SUPER_PAYMASTER_ADDRESS, TEST_ACCOUNT_ADDRESSES, TEST_ACCOUNT_POOL_SIZE, TEST_COMMUNITIES, TEST_TOKEN_ADDRESSES, TOKEN_ADDRESSES, XPNTS_FACTORY_ADDRESS, applyConfig, getCanonicalAddresses, isSupportedChainId, listSupportedChainIds };
|
|
349
|
+
//# sourceMappingURL=chunk-ZJLIKMCA.js.map
|
|
350
|
+
//# sourceMappingURL=chunk-ZJLIKMCA.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../core/dist/addresses.js","../../core/dist/constants.js","../../core/dist/contract-addresses.js"],"names":["chainId"],"mappings":"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","file":"chunk-ZJLIKMCA.js","sourcesContent":["/**\n * Canonical Contract Addresses for Supported Networks\n * These are hardcoded as defaults for NPM distribution.\n *\n * SINGLE SOURCE OF TRUTH for SDK contract addresses (Beta3.1 P2.8).\n * The root `config.{network}.json` files are dev/deploy-time overrides and MUST\n * agree with this table for any network that has a chainId entry here. The\n * `scripts/check-address-consistency.ts` drift check (CI: `pnpm run check:addresses`)\n * enforces that. NOTE: `@aastar/shared-config` is a separate external repo (vendored\n * as git submodules under ext/ and lib/), NOT a workspace package and NOT the SDK's\n * source of truth — do not treat it as canonical here.\n */\nexport const CANONICAL_ADDRESSES = {\n // --- Optimism (Chain ID: 10) ---\n 10: {\n registry: \"0x997686219F31405503D32728B1f094F115EF24e7\",\n gToken: \"0x8d6Fe002dDacCcFBD377F684EC1825f2E1ab7ef6\",\n staking: \"0x7A1216C2d814D2389698C64eD23AA1aA9Eb6343E\",\n sbt: \"0x28eBFc5fc03B1d7648254AbF1C7B39DbFdef1a94\",\n reputationSystem: \"0xA9560898dC0eE4F9Ed3F1db17dbf74dE65e925c2\",\n superPaymaster: \"0xA2c9A6e95f19f5D2a364CBCbB5f0b32B1B4d140E\",\n paymasterFactory: \"0x58A7F6E44a57028A255794119F8b37124c9a7eB8\",\n paymasterV4: \"0x67a70a578E142b950987081e7016906ae4F56Df4\", // AAStar Community PM (Jason)\n paymasterV4Impl: \"0xc4dd13F7825409EEC13FBCBdD9D8f6d618207cca\",\n xPNTsFactory: \"0x864971a26384d9DCC7115f0bBC428e2623F28b6e\",\n blsAggregator: \"0x1C305372ecc5a36CBef1FA371392234bCD55eB19\",\n blsValidator: \"0xA88ADec5A8dc422B57488272d5aD5913d728942A\",\n dvtValidator: \"0x31Ede6454a56293f7cf2323CA5d5F9a6230558Fb\",\n entryPoint: \"0x0000000071727De22E5E9d8BAf0edAc6f37da032\",\n aPNTs: \"0x0B41C78081B5A141eb4C3C7E7FD8E58A7Bde553B\",\n priceFeed: \"0x13e3Ee699D1909E989722E753853AE30b17e08c5\",\n simpleAccountFactory: \"0x91E60e0613810449d098b0b5Ec8b51A0FE8c8985\",\n microPaymentChannel: \"0x0000000000000000000000000000000000000000\",\n agentIdentityRegistry: \"0x0000000000000000000000000000000000000000\",\n agentReputationRegistry: \"0x0000000000000000000000000000000000000000\",\n // ERC-8004 agent validation registry (SP v5.4) — not yet deployed on this chain.\n agentValidationRegistry: \"0x0000000000000000000000000000000000000000\",\n // --- AirAccount v0.17.2-beta.2 stack (not yet deployed on this chain) ---\n aaStarBLSAlgorithm: \"0x0000000000000000000000000000000000000000\",\n aaStarValidator: \"0x0000000000000000000000000000000000000000\",\n aaStarBLSAggregator: \"0x0000000000000000000000000000000000000000\",\n sessionKeyValidator: \"0x0000000000000000000000000000000000000000\",\n forceExitModule: \"0x0000000000000000000000000000000000000000\",\n airAccountDelegate: \"0x0000000000000000000000000000000000000000\",\n calldataParserRegistry: \"0x0000000000000000000000000000000000000000\",\n airAccountFactoryV7: \"0x0000000000000000000000000000000000000000\",\n airAccountV7Impl: \"0x0000000000000000000000000000000000000000\",\n airAccountExtension: \"0x0000000000000000000000000000000000000000\",\n agentRegistry: \"0x0000000000000000000000000000000000000000\",\n // SP v5.4 PolicyRegistry (DVT layer-1) — not yet deployed on this chain.\n policyRegistry: \"0x0000000000000000000000000000000000000000\",\n // SP v5.4 x402 settlement facilitator — not yet deployed on this chain.\n x402Facilitator: \"0x0000000000000000000000000000000000000000\",\n // SP v5.4 governance TimelockController — not yet deployed on this chain.\n timelockController: \"0x0000000000000000000000000000000000000000\",\n // Mycelium community PNTs token — Sepolia-only testbed; zero on mainnets.\n // Kept here so the inferred CanonicalAddresses union has `pnts` on every\n // chain (consumers see Address, not Address|undefined per-chain).\n pnts: \"0x0000000000000000000000000000000000000000\",\n },\n // --- Sepolia (Chain ID: 11155111) ---\n // Source of truth: SuperPaymaster repo `deployments/config.sepolia.json`\n // AirAccount repo docs/e2e/E2E_TESTDATA_v0.18.0-beta.2.md\n // Latest sync: 2026-06-16 — SuperPaymaster v5.4.0-beta.1-redeploy (fresh Sepolia\n // redeploy, deployments/config.sepolia.json updateTime 2026-06-16) + AirAccount\n // contracts v0.19.0-beta.2 (pin only; surface identical to v0.18.0-beta.2, same addresses).\n // SP proxy 0x0300... (impl 0x24a945...), Registry 0x3F92... (impl 0x177033...)\n // v5.4 keys: x402Facilitator 0x326Fc3..., policyRegistry 0x8c2488..., timelockController 0xB734df...\n // AirAccount v0.19.0-beta.2 factory 0x1b69... (NEW ctor: impl injected as arg 1).\n // NOTE: #60 syncs the v0.18 read-layer + addresses ONLY; v0.18 runtime-signing\n // behavioral changes (BLS packer / #45 hash_to_curve binding) are a separate follow-up.\n // NOTE: `paymasterV4` below is a per-community AOA proxy (not in core config);\n // verify against the community's own deployment before use.\n 11155111: {\n registry: \"0x3F920B25f8b65988359C372F66F036E48adFc556\",\n gToken: \"0x20a051502a7AE6e40cfFd6EBe59057538E698984\",\n staking: \"0x3B363598746Ea57314d4869B160940948c569D48\",\n sbt: \"0x072A0D12f4212B6baD7c6d0A633eaffbDE9105bF\",\n reputationSystem: \"0x7fEd690E1663755e24a1C9d6164336809d68a578\",\n superPaymaster: \"0x030025f40d509b1a99547bAEb3795bD27F7182b7\", // proxy (impl 0x24a94572...; 2026-06-16 redeploy)\n paymasterFactory: \"0x0Aa06EA5295eeD4D48c93c594Db1CBf3626971A5\",\n paymasterV4: \"0x1f0D4eF151a79948070D387BaC43b1321F0c41e3\", // Anni's V4 proxy — NOT in core config, verify separately\n paymasterV4Impl: \"0x59DCA5861aaDA602fE1BFbfcc36DFAc36C58623d\",\n xPNTsFactory: \"0xCec3655525a112882E74Fb7C26AcB267a07724cb\", // 2026-06-16 redeploy (was 0xc312...)\n blsAggregator: \"0x15387e161c1b3dAe7c66Fbd5c1F32837B58B2e79\", // SP BLSAggregator 2026-06-16 redeploy (was 0x7ec7...)\n blsValidator: \"0x0A71C5a32b8CBC517523D2C88b539Ab22AeF0654\", // deprecated; aggregator verifies BLS inline\n dvtValidator: \"0x19BA9829C784E4A41b68960b9c0bA55f83718997\",\n entryPoint: \"0x0000000071727De22E5E9d8BAf0edAc6f37da032\",\n aPNTs: \"0x9e66B457E0ABb1F139FD8A596d00f784eBA2873b\", // AAStar aPNTs (deployer operator)\n priceFeed: \"0x694AA1769357215DE4FAC081bf1f309aDC325306\", // Sepolia Chainlink ETH/USD\n simpleAccountFactory: \"0x91E60e0613810449d098b0b5Ec8b51A0FE8c8985\",\n microPaymentChannel: \"0x405851A141Cde827E33247d4D4089Af2814c2FF5\", // SP v5.4 2026-06-16 redeploy (was 0xfCC9...)\n agentIdentityRegistry: \"0x8004A818BFB912233c491871b3d84c89A494BD9e\", // ERC-8004 vanity addr (beta.3)\n agentReputationRegistry: \"0x8004B663056A597Dffe9eCcC1965A193B7388713\",\n // ERC-8004 agent validation registry (SP v5.4) — present in SP config.\n agentValidationRegistry: \"0x8004Cb1BF31DAf7788923b405b754f57acEB4272\",\n // --- AirAccount v0.19.0-beta.2 stack (FULL Sepolia redeploy 2026-06-16) ---\n // v0.19 has NO new Solidity logic (feature set identical to v0.18.0-beta.2), but it\n // bumped ACCOUNT_VERSION/FACTORY_VERSION/accountId() → \"0.19.0\", which changes bytecode\n // and therefore redeployed the ENTIRE stack to fresh addresses. All 11 below moved —\n // the v0.18.0-beta.2 addresses are now stale. Verified by the v0.19 36-scenario on-chain\n // E2E (Safe-guardian recovery #42 + KMS contract-side #67) + DVT real-node validate=0.\n // Source of truth: AirAccount repo CHANGELOG.md [v0.19.0-beta.2] \"Deployed (Sepolia 2026-06-16)\".\n // NOTE: factory ctor is NEW — impl injected as arg 1.\n aaStarBLSAlgorithm: \"0x68c381Ad3A2e3380F22840008027E9Ec2783F43A\", // v0.19.0-beta.2 (#45 on-chain hash_to_curve; Ownable2Step; aggregator() getter)\n aaStarValidator: \"0xC20A986Bcd5bF5Cc2fE5fFde6b155B8419E0389e\", // v0.19.0-beta.2 (ValidatorRouter, set-once validator)\n aaStarBLSAggregator: \"0x77f7bf95B8602b7851f392F412257539242947e0\", // v0.19.0-beta.2 (new ctor (blsAlgorithm, entryPoint))\n sessionKeyValidator: \"0x70de2e36004d6Ddc24DEB80e1Ef76c03EdC0c2AE\", // v0.19.0-beta.2 (cap + velocity)\n forceExitModule: \"0xd882a16Ea37Be463D1885EF4a397Dbbf157dC211\", // v0.19.0-beta.2 (TOCTOU re-verify)\n airAccountDelegate: \"0xA8D7f70c9D36bC4a4eb14F0dCEE19053FCB3309f\", // v0.19.0-beta.2\n calldataParserRegistry: \"0xb8Af1C039dF88F6bD9fE36Ca683492a3c09e7D17\", // v0.19.0-beta.2\n airAccountFactoryV7: \"0x52c5190E7308Ea9B149157FF016cC99B6C6bf984\", // v0.19.0-beta.2 (NEW ctor: implementation injected as arg 1)\n airAccountV7Impl: \"0x7fe62d512f0b8238DE6Ff17175DcE40eA312bBF2\", // v0.19.0-beta.2\n airAccountExtension: \"0xD61C0F3DE6D98070E9986743d35A56d56855A249\", // v0.19.0-beta.2 (module-install timelock)\n agentRegistry: \"0x3895b3E6fEf4e121E6289dC7881A0eEd5283C652\", // v0.19.0-beta.2 (bindFactory set-once)\n // SP v5.4 PolicyRegistry (DVT layer-1), deployed on Sepolia.\n // Source of truth: SuperPaymaster repo deployments/config.sepolia.json (v5.4.0-beta.1).\n policyRegistry: \"0x8c2488d46d5447418558c38AA6441720df656094\",\n // SP v5.4 x402 settlement facilitator (verify/settle EIP-3009 + direct xPNTs).\n x402Facilitator: \"0x326Fc3413c8A0185b0179B971C69813B6dFD971B\",\n // SP v5.4 governance TimelockController (2-day minDelay; gates PolicyRegistry loosen/unfreeze).\n timelockController: \"0xB734df3c0A1809bc06708512363D368Ac51dF1A2\",\n // Base PNTs token — authoritative value from the SuperPaymaster Sepolia\n // deployment (deployments/config.sepolia.json) and config.sepolia.json here.\n // Was 0x6A230Fa25b9Ec12eeF8eeb8d2FbE32CF29c6edC6 (\"Anni's xPNTsToken\"), which\n // drifted from the live deployment; realigned per \"Sepolia deployment is the\n // source of truth\". A community-specific xPNTs belongs under its own key, not\n // the canonical base `pnts`.\n pnts: \"0xC687f8a115D308ECD39658a8EE33bC3c8F75EE31\",\n },\n // --- OP Sepolia (Chain ID: 11155420) ---\n 11155420: {\n registry: \"0xcf6860Ab57de8669756997e414D9c52B6e301972\",\n gToken: \"0xC341c88453372021d0221834307613c2e99fE718\",\n staking: \"0x5f57B931C849e8E255F22755506eB2255aB22a7C\",\n sbt: \"0x2c3Ca1553dC1B8870381E8E56C7b3e3A3ae162f0\",\n reputationSystem: \"0x891EC0f84D9275839B8dAf74e87B23F2DBd7f9c9\",\n superPaymaster: \"0x9eC1FE8134A1C05aD34ba2E4e8758dAe0a009B94\",\n paymasterFactory: \"0x1e3b9d12eAc27867a523d0537902441B0E7D98d8\",\n paymasterV4: \"0xf250416C940605a1D423ccd059668219cf7D80ea\",\n paymasterV4Impl: \"0x906123080207F250B1C9F299991512Cb31f35b2f\",\n xPNTsFactory: \"0x7792a49C9E91e0E9B631B27D885d15e971B7482A\",\n blsAggregator: \"0x6e06b17b1a4D2D973F7E3e026e24b4393315736c\",\n blsValidator: \"0x260fa905CcE1f5b29Afe9d627c01fAAE4A66A7F5\",\n dvtValidator: \"0x0087cA806109E150438116cAA414580BB5fa9195\",\n entryPoint: \"0x0000000071727De22E5E9d8BAf0edAc6f37da032\",\n aPNTs: \"0x3BBcA92Ad828b3dD619c980Ba09f929b9d2BC440\",\n priceFeed: \"0x61Ec26aA57019C486B10502285c5A3D4A4750AD7\",\n simpleAccountFactory: \"0x91E6060613810449d098b0b5EC8b51A0fe8C8985\",\n microPaymentChannel: \"0x0000000000000000000000000000000000000000\",\n agentIdentityRegistry: \"0x0000000000000000000000000000000000000000\",\n agentReputationRegistry: \"0x0000000000000000000000000000000000000000\",\n // ERC-8004 agent validation registry (SP v5.4) — not yet deployed on this chain.\n agentValidationRegistry: \"0x0000000000000000000000000000000000000000\",\n // --- AirAccount v0.17.2-beta.2 stack (not yet deployed on this chain) ---\n aaStarBLSAlgorithm: \"0x0000000000000000000000000000000000000000\",\n aaStarValidator: \"0x0000000000000000000000000000000000000000\",\n aaStarBLSAggregator: \"0x0000000000000000000000000000000000000000\",\n sessionKeyValidator: \"0x0000000000000000000000000000000000000000\",\n forceExitModule: \"0x0000000000000000000000000000000000000000\",\n airAccountDelegate: \"0x0000000000000000000000000000000000000000\",\n calldataParserRegistry: \"0x0000000000000000000000000000000000000000\",\n airAccountFactoryV7: \"0x0000000000000000000000000000000000000000\",\n airAccountV7Impl: \"0x0000000000000000000000000000000000000000\",\n airAccountExtension: \"0x0000000000000000000000000000000000000000\",\n agentRegistry: \"0x0000000000000000000000000000000000000000\",\n // SP v5.4 PolicyRegistry (DVT layer-1) — not yet deployed on this chain.\n policyRegistry: \"0x0000000000000000000000000000000000000000\",\n // SP v5.4 x402 settlement facilitator — not yet deployed on this chain.\n x402Facilitator: \"0x0000000000000000000000000000000000000000\",\n // SP v5.4 governance TimelockController — not yet deployed on this chain.\n timelockController: \"0x0000000000000000000000000000000000000000\",\n // Mycelium community PNTs token — Sepolia-only testbed; zero on mainnets.\n pnts: \"0x0000000000000000000000000000000000000000\",\n }\n};\n/**\n * Chain IDs that have a canonical address book in {@link CANONICAL_ADDRESSES}.\n *\n * @example\n * ```ts\n * listSupportedChainIds(); // [10, 11155111, 11155420]\n * ```\n */\nexport function listSupportedChainIds() {\n return Object.keys(CANONICAL_ADDRESSES).map(Number);\n}\n/** True if {@link CANONICAL_ADDRESSES} has an entry for `chainId`. */\nexport function isSupportedChainId(chainId) {\n return Object.prototype.hasOwnProperty.call(CANONICAL_ADDRESSES, chainId);\n}\n/**\n * Resolve the canonical contract address book for a chain, keyed by `chainId`,\n * normalized to the key names the role-based client factories expect.\n *\n * The canonical table uses `staking` / `sbt`; the historical client factories\n * (and many consumers) reference `gTokenStaking` / `mySBT`. This helper returns\n * the canonical set plus those aliases so a single object satisfies both, which\n * is what makes `createEndUserClient({ chain })` resolve addresses automatically\n * — no manual `addresses` needed for any supported chain.\n *\n * @param chainId - EVM chain id (e.g. 10 = Optimism, 11155111 = Sepolia).\n * @returns The normalized address record, or `undefined` if the chain has no\n * canonical entry (caller must then pass `addresses` explicitly).\n *\n * @example\n * ```ts\n * import { optimism } from 'viem/chains';\n * const addrs = getCanonicalAddresses(optimism.id); // chainId 10\n * addrs?.registry; addrs?.mySBT; // alias of `sbt`\n * ```\n */\nexport function getCanonicalAddresses(chainId) {\n if (!isSupportedChainId(chainId))\n return undefined;\n const a = CANONICAL_ADDRESSES[chainId];\n return {\n ...a,\n // Aliases bridging the canonical table's key names to the client factories'.\n gTokenStaking: a.staking,\n mySBT: a.sbt,\n };\n}\n","import { CANONICAL_ADDRESSES } from './addresses.js';\n// Browser-safe network detection\nconst network = (typeof process !== 'undefined' && process.env && process.env.NETWORK) || 'anvil';\nlet internalConfig = {};\n// 2. Identify Chain ID and resolve canonical defaults\nlet chainIdStr = (typeof process !== 'undefined' && process.env && process.env.CHAIN_ID) || internalConfig.chainId;\nlet chainId = chainIdStr ? Number(chainIdStr) : (network === 'optimism' ? 10 : (network === 'mainnet' ? 1 : (network === 'sepolia' ? 11155111 : (network === 'op-sepolia' ? 11155420 : 0))));\nlet defaults = CANONICAL_ADDRESSES[chainId] || {};\n/**\n * Helper to resolve address\n */\nfunction resolveAddr(envKey, configKey) {\n const envVal = (typeof process !== 'undefined' && process.env) ? process.env[envKey] : undefined;\n return (envVal || internalConfig[configKey] || defaults[configKey]);\n}\nfunction resolveVal(envKey, configKey) {\n const envVal = (typeof process !== 'undefined' && process.env) ? process.env[envKey] : undefined;\n return envVal || internalConfig[configKey] || defaults[configKey];\n}\n/**\n * Contract Addresses (Priority: ENV > Local Config > Canonical Defaults)\n */\nexport let CONTRACT_SRC_HASH = resolveVal('SRC_HASH', 'srcHash');\nexport let REGISTRY_ADDRESS = resolveAddr('REGISTRY', 'registry');\nexport let GTOKEN_ADDRESS = resolveAddr('GTOKEN', 'gToken');\nexport let GTOKEN_STAKING_ADDRESS = resolveAddr('STAKING', 'staking');\nexport let SBT_ADDRESS = resolveAddr('SBT', 'sbt');\nexport let REPUTATION_SYSTEM_ADDRESS = resolveAddr('REPUTATION_SYSTEM', 'reputationSystem');\nexport let SUPER_PAYMASTER_ADDRESS = resolveAddr('SUPER_PAYMASTER', 'superPaymaster');\nexport let PAYMASTER_FACTORY_ADDRESS = resolveAddr('PAYMASTER_FACTORY', 'paymasterFactory');\nexport let PAYMASTER_V4_ADDRESS = resolveAddr('PAYMASTER_V4', 'paymasterV4');\nexport let PAYMASTER_V4_IMPL_ADDRESS = resolveAddr('PAYMASTER_V4_IMPL', 'paymasterV4Impl');\nexport let XPNTS_FACTORY_ADDRESS = resolveAddr('XPNTS_FACTORY', 'xPNTsFactory');\nexport let BLS_AGGREGATOR_ADDRESS = resolveAddr('BLS_AGGREGATOR', 'blsAggregator');\nexport let BLS_VALIDATOR_ADDRESS = resolveAddr('BLS_VALIDATOR', 'blsValidator');\nexport let DVT_VALIDATOR_ADDRESS = resolveAddr('DVT_VALIDATOR', 'dvtValidator');\nexport let ENTRY_POINT_ADDRESS = resolveAddr('ENTRY_POINT', 'entryPoint');\nexport let APNTS_ADDRESS = resolveAddr('APNTS', 'aPNTs');\nexport let MICRO_PAYMENT_CHANNEL_ADDRESS = resolveAddr('MICRO_PAYMENT_CHANNEL', 'microPaymentChannel');\nexport let AGENT_IDENTITY_REGISTRY_ADDRESS = resolveAddr('AGENT_IDENTITY_REGISTRY', 'agentIdentityRegistry');\nexport let AGENT_REPUTATION_REGISTRY_ADDRESS = resolveAddr('AGENT_REPUTATION_REGISTRY', 'agentReputationRegistry');\n/**\n * Apply external configuration (for Node.js environment)\n */\nexport function applyConfig(newConfig) {\n internalConfig = newConfig;\n // Re-calculate derived values\n const envChainId = (typeof process !== 'undefined' && process.env) ? process.env.CHAIN_ID : undefined;\n chainIdStr = envChainId || internalConfig.chainId;\n chainId = chainIdStr ? Number(chainIdStr) : (network === 'optimism' ? 10 : (network === 'mainnet' ? 1 : (network === 'sepolia' ? 11155111 : (network === 'op-sepolia' ? 11155420 : 0))));\n defaults = CANONICAL_ADDRESSES[chainId] || {};\n // Re-assign exports\n CONTRACT_SRC_HASH = resolveVal('SRC_HASH', 'srcHash');\n REGISTRY_ADDRESS = resolveAddr('REGISTRY', 'registry');\n GTOKEN_ADDRESS = resolveAddr('GTOKEN', 'gToken');\n GTOKEN_STAKING_ADDRESS = resolveAddr('STAKING', 'staking');\n SBT_ADDRESS = resolveAddr('SBT', 'sbt');\n REPUTATION_SYSTEM_ADDRESS = resolveAddr('REPUTATION_SYSTEM', 'reputationSystem');\n SUPER_PAYMASTER_ADDRESS = resolveAddr('SUPER_PAYMASTER', 'superPaymaster');\n PAYMASTER_FACTORY_ADDRESS = resolveAddr('PAYMASTER_FACTORY', 'paymasterFactory');\n PAYMASTER_V4_ADDRESS = resolveAddr('PAYMASTER_V4', 'paymasterV4');\n PAYMASTER_V4_IMPL_ADDRESS = resolveAddr('PAYMASTER_V4_IMPL', 'paymasterV4Impl');\n XPNTS_FACTORY_ADDRESS = resolveAddr('XPNTS_FACTORY', 'xPNTsFactory');\n BLS_AGGREGATOR_ADDRESS = resolveAddr('BLS_AGGREGATOR', 'blsAggregator');\n BLS_VALIDATOR_ADDRESS = resolveAddr('BLS_VALIDATOR', 'blsValidator');\n DVT_VALIDATOR_ADDRESS = resolveAddr('DVT_VALIDATOR', 'dvtValidator');\n ENTRY_POINT_ADDRESS = resolveAddr('ENTRY_POINT', 'entryPoint');\n APNTS_ADDRESS = resolveAddr('APNTS', 'aPNTs');\n MICRO_PAYMENT_CHANNEL_ADDRESS = resolveAddr('MICRO_PAYMENT_CHANNEL', 'microPaymentChannel');\n AGENT_IDENTITY_REGISTRY_ADDRESS = resolveAddr('AGENT_IDENTITY_REGISTRY', 'agentIdentityRegistry');\n AGENT_REPUTATION_REGISTRY_ADDRESS = resolveAddr('AGENT_REPUTATION_REGISTRY', 'agentReputationRegistry');\n}\n/**\n * Common Constants\n */\nexport const FAUCET_API_URL = \"https://faucet-aastar.vercel.app\";\nexport const SERVICE_FEE_RATE = 200;\nexport const MAX_SERVICE_FEE = 1000;\nexport const BPS_DENOMINATOR = 10000;\nexport const DEFAULT_GAS_TOKEN_MINT_AMOUNT = \"100\";\nexport const DEFAULT_USDT_MINT_AMOUNT = \"10\";\nexport const TEST_ACCOUNT_POOL_SIZE = 20;\nexport const NODE_STAKE_AMOUNTS = {\n LITE: 30,\n STANDARD: 100,\n SUPER: 300,\n ENTERPRISE: 1000,\n};\nexport const DEFAULT_APNTS_PRICE_USD = \"0.02\";\nexport const CHAIN_SEPOLIA = 11155111;\nexport const CHAIN_MAINNET = 1;\nexport const DEFAULT_TOKEN_SYMBOL = 'GT';\nexport const DEFAULT_TOKEN_NAME = 'Governance Token';\nexport const DEFAULT_VERIFICATION_GAS_LIMIT = 200000n;\nexport const DEFAULT_CALL_GAS_LIMIT = 100000n;\nexport const DEFAULT_PRE_VERIFICATION_GAS = 50000n;\nexport const DEFAULT_TIMEOUT_MS = 30000;\n","/**\n * Contract Addresses - Single Source of Truth\n * All contract addresses for Sepolia testnet\n *\n * This file serves as the single source of truth for all contract addresses.\n * All other files reference these constants to avoid duplication.\n */\nimport { REGISTRY_ADDRESS, GTOKEN_ADDRESS, GTOKEN_STAKING_ADDRESS, SUPER_PAYMASTER_ADDRESS, PAYMASTER_FACTORY_ADDRESS, PAYMASTER_V4_ADDRESS, PAYMASTER_V4_IMPL_ADDRESS, APNTS_ADDRESS, SBT_ADDRESS, DVT_VALIDATOR_ADDRESS, ENTRY_POINT_ADDRESS, XPNTS_FACTORY_ADDRESS, BLS_AGGREGATOR_ADDRESS, MICRO_PAYMENT_CHANNEL_ADDRESS, AGENT_IDENTITY_REGISTRY_ADDRESS, AGENT_REPUTATION_REGISTRY_ADDRESS, } from './constants.js';\n/**\n * Core System Addresses\n */\nexport const CORE_ADDRESSES = {\n registry: REGISTRY_ADDRESS,\n gToken: GTOKEN_ADDRESS,\n gTokenStaking: GTOKEN_STAKING_ADDRESS,\n superPaymaster: SUPER_PAYMASTER_ADDRESS,\n paymasterFactory: PAYMASTER_FACTORY_ADDRESS,\n aPNTs: APNTS_ADDRESS,\n mySBT: SBT_ADDRESS,\n paymasterV4: (process.env.PAYMASTER_V4_PROXY || PAYMASTER_V4_ADDRESS || PAYMASTER_V4_IMPL_ADDRESS),\n dvtValidator: DVT_VALIDATOR_ADDRESS,\n entryPoint: ENTRY_POINT_ADDRESS,\n xPNTsFactory: XPNTS_FACTORY_ADDRESS,\n microPaymentChannel: MICRO_PAYMENT_CHANNEL_ADDRESS,\n agentIdentityRegistry: AGENT_IDENTITY_REGISTRY_ADDRESS,\n agentReputationRegistry: AGENT_REPUTATION_REGISTRY_ADDRESS,\n};\n/**\n * Token System Addresses\n */\nexport const TOKEN_ADDRESSES = {\n xPNTsFactory: XPNTS_FACTORY_ADDRESS,\n};\n/**\n * Test Token Addresses (For Development & Testing)\n */\nexport const TEST_TOKEN_ADDRESSES = {\n mockUSDT: process.env.TEST_MOCK_USDT,\n aPNTs: process.env.TEST_APNTS,\n bPNTs: process.env.TEST_BPNTS,\n};\n/**\n * Test Account Addresses (For Development & Testing)\n */\nexport const TEST_ACCOUNT_ADDRESSES = {\n // Official EntryPoint 0.6 Factory for Sepolia\n simpleAccountFactory: (process.env.SIMPLE_ACCOUNT_FACTORY || '0x9406Cc6185a346906296840746125a0E44976454'),\n};\n/**\n * Paymaster Addresses\n */\nexport const PAYMASTER_ADDRESSES = {\n paymasterV4_1: process.env.PAYMASTER_V4_ADDRESS,\n paymasterV4_1iImplementation: PAYMASTER_V4_IMPL_ADDRESS,\n};\n/**\n * Monitoring System Addresses\n */\nexport const MONITORING_ADDRESSES = {\n dvtValidator: DVT_VALIDATOR_ADDRESS,\n blsAggregator: BLS_AGGREGATOR_ADDRESS,\n};\n/**\n * Official Contract Addresses\n */\nexport const OFFICIAL_ADDRESSES = {\n entryPoint: (ENTRY_POINT_ADDRESS || '0x0000000071727De22E5E9d8BAf0edAc6f37da032'),\n};\n/**\n * Community Owner Addresses\n */\nexport const COMMUNITY_OWNERS = {\n aastarOwner: '0x411BD567E46C0781248dbB6a9211891C032885e5', // Deployer 1\n breadCommunityOwner: '0xe24b6f321B0140716a2b671ed0D983bb64E7DaFA', // OWNER2\n};\n/**\n * Test Community Addresses (Registered in Registry v2.2.0 on 2025-11-08)\n */\nexport const TEST_COMMUNITIES = {\n aastar: process.env.TEST_COMMUNITY_AASTAR,\n bread: process.env.TEST_COMMUNITY_BREAD,\n mycelium: process.env.TEST_COMMUNITY_MYCELIUM,\n};\n/**\n * All Addresses Combined (for reference)\n */\nexport const ALL_ADDRESSES = {\n ...CORE_ADDRESSES,\n ...TOKEN_ADDRESSES,\n ...TEST_TOKEN_ADDRESSES,\n ...TEST_ACCOUNT_ADDRESSES,\n ...PAYMASTER_ADDRESSES,\n ...MONITORING_ADDRESSES,\n ...OFFICIAL_ADDRESSES,\n};\n"]}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export { ALL_ADDRESSES, COMMUNITY_OWNERS, CORE_ADDRESSES, MONITORING_ADDRESSES, OFFICIAL_ADDRESSES, PAYMASTER_ADDRESSES, TEST_ACCOUNT_ADDRESSES, TEST_COMMUNITIES, TEST_TOKEN_ADDRESSES, TOKEN_ADDRESSES } from './chunk-
|
|
1
|
+
export { ALL_ADDRESSES, COMMUNITY_OWNERS, CORE_ADDRESSES, MONITORING_ADDRESSES, OFFICIAL_ADDRESSES, PAYMASTER_ADDRESSES, TEST_ACCOUNT_ADDRESSES, TEST_COMMUNITIES, TEST_TOKEN_ADDRESSES, TOKEN_ADDRESSES } from './chunk-ZJLIKMCA.js';
|
|
2
2
|
import './chunk-PZ5AY32C.js';
|
|
3
|
-
//# sourceMappingURL=contract-addresses-
|
|
4
|
-
//# sourceMappingURL=contract-addresses-
|
|
3
|
+
//# sourceMappingURL=contract-addresses-VLAHHXOO.js.map
|
|
4
|
+
//# sourceMappingURL=contract-addresses-VLAHHXOO.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":[],"names":[],"mappings":"","file":"contract-addresses-
|
|
1
|
+
{"version":3,"sources":[],"names":[],"mappings":"","file":"contract-addresses-VLAHHXOO.js"}
|
package/dist/core.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
export { AASTAR_COMMUNITY, AAStarAirAccountFactoryV7ABI, AAStarAirAccountFactoryV7Artifact, AAStarAirAccountV7ABI, AAStarAirAccountV7Artifact, AAStarBLSAggregatorABI, AAStarBLSAggregatorArtifact, AAStarBLSAlgorithmABI, AAStarBLSAlgorithmArtifact, AAStarValidatorABI, AAStarValidatorArtifact, ALL_ROLES, AgentRegistryABI, AgentRegistryArtifact, AirAccountDelegateABI, AirAccountDelegateArtifact, AirAccountExtensionABI, AirAccountExtensionArtifact, AuthorizationState, BLSAggregatorABI, BLSAggregatorArtifact, BLSHelpers, BLSSigner, BLSValidatorABI, BLSValidatorArtifact, BLS_POP_DST, BRANDING, BREAD_COMMUNITY, BaseClient, BundlerClient, COMMUNITIES, CONTRACTS, CONTRACT_METADATA, CalldataParserRegistryABI, CalldataParserRegistryArtifact, ContractConfigManager, DEFAULT_ADMIN_ROLE, DVTValidatorABI, DVTValidatorArtifact, DVT_TIER_T2, DVT_TIER_T3, EntryPointABI, EntryPointArtifact, EntryPointVersion, ForceExitModuleABI, ForceExitModuleArtifact, GTokenABI, GTokenArtifact, GTokenAuthorizationABI, GTokenAuthorizationArtifact, GTokenStakingABI, GTokenStakingArtifact, INITIAL_ROLE_STAKES, LINKS, MicroPaymentChannelABI, MicroPaymentChannelArtifact, MySBTABI, MySBTArtifact, NETWORKS, NodeType, PaymasterABI, PaymasterArtifact, PaymasterFactoryABI, PaymasterFactoryArtifact, PolicyDecision, PolicyRegistryABI, PolicyRegistryArtifact, ROLE_ANODE, ROLE_COMMUNITY, ROLE_DVT, ROLE_ENDUSER, ROLE_KMS, ROLE_NAMES, ROLE_PAYMASTER_AOA, ROLE_PAYMASTER_SUPER, ROLE_PERMISSION_LEVELS, RegistryABI, RegistryArtifact, ReputationSystemABI, ReputationSystemArtifact, RequirementChecker, RolePermissionLevel, SEPOLIA_CONTRACTS, SEPOLIA_V2_VERSIONS, SepoliaFaucetAPI, SessionKeyValidatorABI, SessionKeyValidatorArtifact, SimpleAccountABI, SimpleAccountArtifact, SimpleAccountFactoryABI, SimpleAccountFactoryArtifact, StateValidator, SuperPaymasterABI, SuperPaymasterArtifact, V2_SUMMARY, X402FacilitatorABI, X402FacilitatorArtifact, accountActions, accountFactoryActions, agentActions, agentRegistryActions, aggregatorActions, airAccountActions, airAccountFactoryActions, blsAlgorithmActions, channelActions, createAAStarPublicClient, createHeliosTransport, dvtActions, encodeDVTAccountSignature, encodeDVTVerifierProof, encodeG2Point, entryPointActions, forceExitActions, gTokenActions, gTokenAuthorizationActions, getAddressUrl, getAllCommunityConfigs, getAllV2Contracts, getBlockExplorer, getChainId, getCommunities, getCommunity, getCommunityConfig, getContract, getContractNetworks, getContracts, getCoreContracts, getDeploymentDate, getEntryPoint, getNetwork, getPaymasterV4_1, getRoleName, getRpcUrl, getSimpleAccountFactory, getSuperPaymasterV2, getTestAccounts, getTestTokenContracts, getTokenContracts, getTxUrl, getV2ContractByAddress, getV2ContractByName, getV2ContractsByDate, hashToFieldU0U1, isContractNetworkSupported, isRegisteredCommunity, isV2Contract, lookupAddress, paymasterActions, paymasterFactoryActions, policyRegistryActions, registryActions, reputationActions, resolveEns, resolveEnsVerified, sbtActions, sessionKeyValidatorActions, stakingActions, superPaymasterActions, tokenActions, x402Actions, x402IsNonceUsed, x402NonceKey, xPNTsFactoryABI, xPNTsFactoryActions, xPNTsFactoryArtifact, xPNTsTokenABI, xPNTsTokenActions, xPNTsTokenArtifact } from './chunk-
|
|
2
|
-
export { AGENT_IDENTITY_REGISTRY_ADDRESS, AGENT_REPUTATION_REGISTRY_ADDRESS, ALL_ADDRESSES, APNTS_ADDRESS, BLS_AGGREGATOR_ADDRESS, BLS_VALIDATOR_ADDRESS, BPS_DENOMINATOR, CHAIN_MAINNET, CHAIN_SEPOLIA, COMMUNITY_OWNERS, CONTRACT_SRC_HASH, CORE_ADDRESSES, DEFAULT_APNTS_PRICE_USD, DEFAULT_CALL_GAS_LIMIT, DEFAULT_GAS_TOKEN_MINT_AMOUNT, DEFAULT_PRE_VERIFICATION_GAS, DEFAULT_TIMEOUT_MS, DEFAULT_TOKEN_NAME, DEFAULT_TOKEN_SYMBOL, DEFAULT_USDT_MINT_AMOUNT, DEFAULT_VERIFICATION_GAS_LIMIT, DVT_VALIDATOR_ADDRESS, ENTRY_POINT_ADDRESS, FAUCET_API_URL, GTOKEN_ADDRESS, GTOKEN_STAKING_ADDRESS, MAX_SERVICE_FEE, MICRO_PAYMENT_CHANNEL_ADDRESS, MONITORING_ADDRESSES, NODE_STAKE_AMOUNTS, OFFICIAL_ADDRESSES, PAYMASTER_ADDRESSES, PAYMASTER_FACTORY_ADDRESS, PAYMASTER_V4_ADDRESS, PAYMASTER_V4_IMPL_ADDRESS, REGISTRY_ADDRESS, REPUTATION_SYSTEM_ADDRESS, SBT_ADDRESS, SERVICE_FEE_RATE, SUPER_PAYMASTER_ADDRESS, TEST_ACCOUNT_ADDRESSES, TEST_ACCOUNT_POOL_SIZE, TEST_COMMUNITIES, TEST_TOKEN_ADDRESSES, TOKEN_ADDRESSES, XPNTS_FACTORY_ADDRESS, applyConfig } from './chunk-
|
|
1
|
+
export { AASTAR_COMMUNITY, AAStarAirAccountFactoryV7ABI, AAStarAirAccountFactoryV7Artifact, AAStarAirAccountV7ABI, AAStarAirAccountV7Artifact, AAStarBLSAggregatorABI, AAStarBLSAggregatorArtifact, AAStarBLSAlgorithmABI, AAStarBLSAlgorithmArtifact, AAStarValidatorABI, AAStarValidatorArtifact, ALL_ROLES, AgentRegistryABI, AgentRegistryArtifact, AirAccountDelegateABI, AirAccountDelegateArtifact, AirAccountExtensionABI, AirAccountExtensionArtifact, AuthorizationState, BLSAggregatorABI, BLSAggregatorArtifact, BLSHelpers, BLSSigner, BLSValidatorABI, BLSValidatorArtifact, BLS_POP_DST, BRANDING, BREAD_COMMUNITY, BaseClient, BundlerClient, COMMUNITIES, CONTRACTS, CONTRACT_METADATA, CalldataParserRegistryABI, CalldataParserRegistryArtifact, ContractConfigManager, DEFAULT_ADMIN_ROLE, DVTValidatorABI, DVTValidatorArtifact, DVT_TIER_T2, DVT_TIER_T3, EntryPointABI, EntryPointArtifact, EntryPointVersion, ForceExitModuleABI, ForceExitModuleArtifact, GTokenABI, GTokenArtifact, GTokenAuthorizationABI, GTokenAuthorizationArtifact, GTokenStakingABI, GTokenStakingArtifact, INITIAL_ROLE_STAKES, LINKS, MicroPaymentChannelABI, MicroPaymentChannelArtifact, MySBTABI, MySBTArtifact, NETWORKS, NodeType, PaymasterABI, PaymasterArtifact, PaymasterFactoryABI, PaymasterFactoryArtifact, PolicyDecision, PolicyRegistryABI, PolicyRegistryArtifact, ROLE_ANODE, ROLE_COMMUNITY, ROLE_DVT, ROLE_ENDUSER, ROLE_KMS, ROLE_NAMES, ROLE_PAYMASTER_AOA, ROLE_PAYMASTER_SUPER, ROLE_PERMISSION_LEVELS, RegistryABI, RegistryArtifact, ReputationSystemABI, ReputationSystemArtifact, RequirementChecker, RolePermissionLevel, SEPOLIA_CONTRACTS, SEPOLIA_V2_VERSIONS, SepoliaFaucetAPI, SessionKeyValidatorABI, SessionKeyValidatorArtifact, SimpleAccountABI, SimpleAccountArtifact, SimpleAccountFactoryABI, SimpleAccountFactoryArtifact, StateValidator, SuperPaymasterABI, SuperPaymasterArtifact, V2_SUMMARY, X402FacilitatorABI, X402FacilitatorArtifact, accountActions, accountFactoryActions, agentActions, agentRegistryActions, aggregatorActions, airAccountActions, airAccountFactoryActions, blsAlgorithmActions, channelActions, createAAStarPublicClient, createHeliosTransport, dvtActions, encodeDVTAccountSignature, encodeDVTVerifierProof, encodeG2Point, entryPointActions, forceExitActions, gTokenActions, gTokenAuthorizationActions, getAddressUrl, getAllCommunityConfigs, getAllV2Contracts, getBlockExplorer, getChainId, getCommunities, getCommunity, getCommunityConfig, getContract, getContractNetworks, getContracts, getCoreContracts, getDeploymentDate, getEntryPoint, getNetwork, getPaymasterV4_1, getRoleName, getRpcUrl, getSimpleAccountFactory, getSuperPaymasterV2, getTestAccounts, getTestTokenContracts, getTokenContracts, getTxUrl, getV2ContractByAddress, getV2ContractByName, getV2ContractsByDate, hashToFieldU0U1, isContractNetworkSupported, isRegisteredCommunity, isV2Contract, lookupAddress, paymasterActions, paymasterFactoryActions, policyRegistryActions, registryActions, reputationActions, resolveEns, resolveEnsVerified, sbtActions, sessionKeyValidatorActions, stakingActions, superPaymasterActions, tokenActions, x402Actions, x402IsNonceUsed, x402NonceKey, xPNTsFactoryABI, xPNTsFactoryActions, xPNTsFactoryArtifact, xPNTsTokenABI, xPNTsTokenActions, xPNTsTokenArtifact } from './chunk-TBDMSJVL.js';
|
|
2
|
+
export { AGENT_IDENTITY_REGISTRY_ADDRESS, AGENT_REPUTATION_REGISTRY_ADDRESS, ALL_ADDRESSES, APNTS_ADDRESS, BLS_AGGREGATOR_ADDRESS, BLS_VALIDATOR_ADDRESS, BPS_DENOMINATOR, CANONICAL_ADDRESSES, CHAIN_MAINNET, CHAIN_SEPOLIA, COMMUNITY_OWNERS, CONTRACT_SRC_HASH, CORE_ADDRESSES, DEFAULT_APNTS_PRICE_USD, DEFAULT_CALL_GAS_LIMIT, DEFAULT_GAS_TOKEN_MINT_AMOUNT, DEFAULT_PRE_VERIFICATION_GAS, DEFAULT_TIMEOUT_MS, DEFAULT_TOKEN_NAME, DEFAULT_TOKEN_SYMBOL, DEFAULT_USDT_MINT_AMOUNT, DEFAULT_VERIFICATION_GAS_LIMIT, DVT_VALIDATOR_ADDRESS, ENTRY_POINT_ADDRESS, FAUCET_API_URL, GTOKEN_ADDRESS, GTOKEN_STAKING_ADDRESS, MAX_SERVICE_FEE, MICRO_PAYMENT_CHANNEL_ADDRESS, MONITORING_ADDRESSES, NODE_STAKE_AMOUNTS, OFFICIAL_ADDRESSES, PAYMASTER_ADDRESSES, PAYMASTER_FACTORY_ADDRESS, PAYMASTER_V4_ADDRESS, PAYMASTER_V4_IMPL_ADDRESS, REGISTRY_ADDRESS, REPUTATION_SYSTEM_ADDRESS, SBT_ADDRESS, SERVICE_FEE_RATE, SUPER_PAYMASTER_ADDRESS, TEST_ACCOUNT_ADDRESSES, TEST_ACCOUNT_POOL_SIZE, TEST_COMMUNITIES, TEST_TOKEN_ADDRESSES, TOKEN_ADDRESSES, XPNTS_FACTORY_ADDRESS, applyConfig, getCanonicalAddresses, isSupportedChainId, listSupportedChainIds } from './chunk-ZJLIKMCA.js';
|
|
3
3
|
import './chunk-PZ5AY32C.js';
|
|
4
4
|
//# sourceMappingURL=core.js.map
|
|
5
5
|
//# sourceMappingURL=core.js.map
|
package/dist/dapp.js
CHANGED
|
@@ -1,7 +1,283 @@
|
|
|
1
|
-
|
|
2
|
-
import './chunk-
|
|
3
|
-
import './chunk-
|
|
4
|
-
import './chunk-DSZ372PH.js';
|
|
1
|
+
import { getSuperPaymasterMiddleware } from './chunk-NAPMVAVJ.js';
|
|
2
|
+
import { createAAStarPublicClient, RegistryABI } from './chunk-TBDMSJVL.js';
|
|
3
|
+
import './chunk-ZJLIKMCA.js';
|
|
5
4
|
import './chunk-PZ5AY32C.js';
|
|
5
|
+
import { parseAbi, createPublicClient, http, hashTypedData, hashMessage, hexToBytes, encodeFunctionData } from 'viem';
|
|
6
|
+
import { useState, useEffect, useCallback } from 'react';
|
|
7
|
+
|
|
8
|
+
var DVT_ABI = parseAbi([
|
|
9
|
+
"function registerValidator(bytes)",
|
|
10
|
+
"function createProposal(address, uint8, string)",
|
|
11
|
+
"function signProposal(uint256, bytes)"
|
|
12
|
+
]);
|
|
13
|
+
var DVTClient = class {
|
|
14
|
+
static async registerValidator(wallet, dvtAddr, blsPublicKey) {
|
|
15
|
+
return wallet.writeContract({
|
|
16
|
+
address: dvtAddr,
|
|
17
|
+
abi: DVT_ABI,
|
|
18
|
+
functionName: "registerValidator",
|
|
19
|
+
args: [blsPublicKey],
|
|
20
|
+
chain: wallet.chain
|
|
21
|
+
});
|
|
22
|
+
}
|
|
23
|
+
};
|
|
24
|
+
function useCreditScore({ chain, rpcUrl, registryAddress, userAddress }) {
|
|
25
|
+
const [creditLimit, setCreditLimit] = useState(null);
|
|
26
|
+
const [loading, setLoading] = useState(false);
|
|
27
|
+
useEffect(() => {
|
|
28
|
+
if (!registryAddress || !userAddress || !rpcUrl)
|
|
29
|
+
return;
|
|
30
|
+
const fetchCredit = async () => {
|
|
31
|
+
setLoading(true);
|
|
32
|
+
try {
|
|
33
|
+
const client = createAAStarPublicClient(rpcUrl, chain);
|
|
34
|
+
const limit = await client.readContract({
|
|
35
|
+
address: registryAddress,
|
|
36
|
+
abi: RegistryABI,
|
|
37
|
+
functionName: "getCreditLimit",
|
|
38
|
+
args: [userAddress]
|
|
39
|
+
});
|
|
40
|
+
setCreditLimit(limit);
|
|
41
|
+
} catch (e) {
|
|
42
|
+
console.error("Failed to fetch credit limit:", e);
|
|
43
|
+
setCreditLimit(0n);
|
|
44
|
+
} finally {
|
|
45
|
+
setLoading(false);
|
|
46
|
+
}
|
|
47
|
+
};
|
|
48
|
+
fetchCredit();
|
|
49
|
+
}, [chain, rpcUrl, registryAddress, userAddress]);
|
|
50
|
+
return { creditLimit, loading };
|
|
51
|
+
}
|
|
52
|
+
function useSuperPaymaster(config) {
|
|
53
|
+
const [isLoading, setIsLoading] = useState(false);
|
|
54
|
+
const [error, setError] = useState(null);
|
|
55
|
+
const generatePaymasterAndData = useCallback(async (userOp) => {
|
|
56
|
+
setIsLoading(true);
|
|
57
|
+
setError(null);
|
|
58
|
+
try {
|
|
59
|
+
const middleware = getSuperPaymasterMiddleware(config);
|
|
60
|
+
const result = await middleware.sponsorUserOperation({ userOperation: userOp });
|
|
61
|
+
return result.paymasterAndData;
|
|
62
|
+
} catch (err) {
|
|
63
|
+
setError(err);
|
|
64
|
+
throw err;
|
|
65
|
+
} finally {
|
|
66
|
+
setIsLoading(false);
|
|
67
|
+
}
|
|
68
|
+
}, [config.paymasterAddress, config.operator, config.verificationGasLimit, config.postOpGasLimit]);
|
|
69
|
+
return { generatePaymasterAndData, isLoading, error };
|
|
70
|
+
}
|
|
71
|
+
var EXECUTE_ABI = [
|
|
72
|
+
{
|
|
73
|
+
name: "execute",
|
|
74
|
+
type: "function",
|
|
75
|
+
stateMutability: "nonpayable",
|
|
76
|
+
inputs: [
|
|
77
|
+
{ name: "dest", type: "address" },
|
|
78
|
+
{ name: "value", type: "uint256" },
|
|
79
|
+
{ name: "func", type: "bytes" }
|
|
80
|
+
],
|
|
81
|
+
outputs: []
|
|
82
|
+
}
|
|
83
|
+
];
|
|
84
|
+
var ENTRYPOINT_ABI = [
|
|
85
|
+
{
|
|
86
|
+
name: "getNonce",
|
|
87
|
+
type: "function",
|
|
88
|
+
stateMutability: "view",
|
|
89
|
+
inputs: [
|
|
90
|
+
{ name: "sender", type: "address" },
|
|
91
|
+
{ name: "key", type: "uint192" }
|
|
92
|
+
],
|
|
93
|
+
outputs: [{ name: "nonce", type: "uint256" }]
|
|
94
|
+
},
|
|
95
|
+
{
|
|
96
|
+
name: "getUserOpHash",
|
|
97
|
+
type: "function",
|
|
98
|
+
stateMutability: "view",
|
|
99
|
+
inputs: [
|
|
100
|
+
{
|
|
101
|
+
name: "packedUserOp",
|
|
102
|
+
type: "tuple",
|
|
103
|
+
components: [
|
|
104
|
+
{ name: "sender", type: "address" },
|
|
105
|
+
{ name: "nonce", type: "uint256" },
|
|
106
|
+
{ name: "initCode", type: "bytes" },
|
|
107
|
+
{ name: "callData", type: "bytes" },
|
|
108
|
+
{ name: "accountGasLimits", type: "bytes32" },
|
|
109
|
+
{ name: "preVerificationGas", type: "uint256" },
|
|
110
|
+
{ name: "gasFees", type: "bytes32" },
|
|
111
|
+
{ name: "paymasterAndData", type: "bytes" },
|
|
112
|
+
{ name: "signature", type: "bytes" }
|
|
113
|
+
]
|
|
114
|
+
}
|
|
115
|
+
],
|
|
116
|
+
outputs: [{ type: "bytes32" }]
|
|
117
|
+
}
|
|
118
|
+
];
|
|
119
|
+
var DEFAULT_ENTRYPOINT = "0x0000000071727De22E5E9d8BAf0edAc6f37da032";
|
|
120
|
+
var AirAccountEIP1193Provider = class {
|
|
121
|
+
config;
|
|
122
|
+
client;
|
|
123
|
+
listeners = /* @__PURE__ */ new Map();
|
|
124
|
+
constructor(config) {
|
|
125
|
+
this.config = config;
|
|
126
|
+
this.client = createPublicClient({ transport: http(config.rpcUrl) });
|
|
127
|
+
}
|
|
128
|
+
async request({ method, params }) {
|
|
129
|
+
switch (method) {
|
|
130
|
+
case "eth_chainId":
|
|
131
|
+
return `0x${this.config.chainId.toString(16)}`;
|
|
132
|
+
case "eth_accounts":
|
|
133
|
+
case "eth_requestAccounts":
|
|
134
|
+
return [this.config.accountAddress];
|
|
135
|
+
case "eth_sendTransaction": {
|
|
136
|
+
const tx = params[0];
|
|
137
|
+
return this._sendTransaction(tx);
|
|
138
|
+
}
|
|
139
|
+
case "personal_sign": {
|
|
140
|
+
const [data] = params;
|
|
141
|
+
const hash = hashMessage({ raw: hexToBytes(data) });
|
|
142
|
+
return this.config.signer(hash);
|
|
143
|
+
}
|
|
144
|
+
case "eth_signTypedData_v4": {
|
|
145
|
+
const [, typedDataJson] = params;
|
|
146
|
+
const typedData = JSON.parse(typedDataJson);
|
|
147
|
+
const hash = hashTypedData({
|
|
148
|
+
domain: typedData.domain,
|
|
149
|
+
types: typedData.types,
|
|
150
|
+
primaryType: typedData.primaryType,
|
|
151
|
+
message: typedData.message
|
|
152
|
+
});
|
|
153
|
+
return this.config.signer(hash);
|
|
154
|
+
}
|
|
155
|
+
default:
|
|
156
|
+
return this._forwardToRpc(method, params);
|
|
157
|
+
}
|
|
158
|
+
}
|
|
159
|
+
on(event, listener) {
|
|
160
|
+
if (!this.listeners.has(event))
|
|
161
|
+
this.listeners.set(event, /* @__PURE__ */ new Set());
|
|
162
|
+
this.listeners.get(event).add(listener);
|
|
163
|
+
return this;
|
|
164
|
+
}
|
|
165
|
+
removeListener(event, listener) {
|
|
166
|
+
this.listeners.get(event)?.delete(listener);
|
|
167
|
+
return this;
|
|
168
|
+
}
|
|
169
|
+
// ── Private ──────────────────────────────────────────────────────
|
|
170
|
+
async _sendTransaction(tx) {
|
|
171
|
+
const entryPoint = this.config.entryPoint ?? DEFAULT_ENTRYPOINT;
|
|
172
|
+
const callData = encodeFunctionData({
|
|
173
|
+
abi: EXECUTE_ABI,
|
|
174
|
+
functionName: "execute",
|
|
175
|
+
args: [tx.to, BigInt(tx.value ?? "0x0"), tx.data ?? "0x"]
|
|
176
|
+
});
|
|
177
|
+
const [nonce, feeData] = await Promise.all([
|
|
178
|
+
this.client.readContract({
|
|
179
|
+
address: entryPoint,
|
|
180
|
+
abi: ENTRYPOINT_ABI,
|
|
181
|
+
functionName: "getNonce",
|
|
182
|
+
args: [this.config.accountAddress, 0n]
|
|
183
|
+
}),
|
|
184
|
+
this.client.estimateFeesPerGas()
|
|
185
|
+
]);
|
|
186
|
+
const maxFeePerGas = feeData.maxFeePerGas ?? 1000000000n;
|
|
187
|
+
const maxPriorityFeePerGas = feeData.maxPriorityFeePerGas ?? 100000000n;
|
|
188
|
+
const verificationGasLimit = 200000n;
|
|
189
|
+
const callGasLimit = BigInt(tx.gas ?? "0x30000");
|
|
190
|
+
const accountGasLimits = `0x${(verificationGasLimit << 128n | callGasLimit).toString(16).padStart(64, "0")}`;
|
|
191
|
+
const gasFees = `0x${(maxPriorityFeePerGas << 128n | maxFeePerGas).toString(16).padStart(64, "0")}`;
|
|
192
|
+
const userOp = {
|
|
193
|
+
sender: this.config.accountAddress,
|
|
194
|
+
nonce,
|
|
195
|
+
initCode: "0x",
|
|
196
|
+
callData,
|
|
197
|
+
accountGasLimits,
|
|
198
|
+
preVerificationGas: 50000n,
|
|
199
|
+
gasFees,
|
|
200
|
+
paymasterAndData: "0x",
|
|
201
|
+
signature: "0x"
|
|
202
|
+
};
|
|
203
|
+
const userOpHash = await this.client.readContract({
|
|
204
|
+
address: entryPoint,
|
|
205
|
+
abi: ENTRYPOINT_ABI,
|
|
206
|
+
functionName: "getUserOpHash",
|
|
207
|
+
args: [userOp]
|
|
208
|
+
});
|
|
209
|
+
userOp.signature = await this.config.signer(userOpHash);
|
|
210
|
+
const resp = await fetch(this.config.bundlerUrl, {
|
|
211
|
+
method: "POST",
|
|
212
|
+
headers: { "Content-Type": "application/json" },
|
|
213
|
+
body: JSON.stringify({
|
|
214
|
+
jsonrpc: "2.0",
|
|
215
|
+
id: 1,
|
|
216
|
+
method: "eth_sendUserOperation",
|
|
217
|
+
params: [
|
|
218
|
+
{
|
|
219
|
+
sender: userOp.sender,
|
|
220
|
+
nonce: `0x${userOp.nonce.toString(16)}`,
|
|
221
|
+
initCode: userOp.initCode,
|
|
222
|
+
callData: userOp.callData,
|
|
223
|
+
accountGasLimits: userOp.accountGasLimits,
|
|
224
|
+
preVerificationGas: `0x${userOp.preVerificationGas.toString(16)}`,
|
|
225
|
+
gasFees: userOp.gasFees,
|
|
226
|
+
paymasterAndData: userOp.paymasterAndData,
|
|
227
|
+
signature: userOp.signature
|
|
228
|
+
},
|
|
229
|
+
entryPoint
|
|
230
|
+
]
|
|
231
|
+
})
|
|
232
|
+
});
|
|
233
|
+
const result = await resp.json();
|
|
234
|
+
if (result.error)
|
|
235
|
+
throw new Error(result.error.message);
|
|
236
|
+
return result.result;
|
|
237
|
+
}
|
|
238
|
+
async _forwardToRpc(method, params) {
|
|
239
|
+
const resp = await fetch(this.config.rpcUrl, {
|
|
240
|
+
method: "POST",
|
|
241
|
+
headers: { "Content-Type": "application/json" },
|
|
242
|
+
body: JSON.stringify({ jsonrpc: "2.0", id: 1, method, params: params ?? [] })
|
|
243
|
+
});
|
|
244
|
+
const result = await resp.json();
|
|
245
|
+
if (result.error)
|
|
246
|
+
throw new Error(result.error.message);
|
|
247
|
+
return result.result;
|
|
248
|
+
}
|
|
249
|
+
};
|
|
250
|
+
|
|
251
|
+
// ../dapp/dist/eip6963.js
|
|
252
|
+
var DEFAULT_ICON = "data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA0OCA0OCI+PGNpcmNsZSBjeD0iMjQiIGN5PSIyNCIgcj0iMjQiIGZpbGw9IiMxQTFBMkUiLz48dGV4dCB4PSIxMiIgeT0iMzIiIGZvbnQtc2l6ZT0iMjQiIGZpbGw9IiNGRkYiPkFBPC90ZXh0Pjwvc3ZnPg==";
|
|
253
|
+
var AIRACCOUNT_UUID = "d4e5f6a7-b8c9-4d0e-8f2a-3b4c5d6e7f80";
|
|
254
|
+
function announceAirAccount(provider, info = {}) {
|
|
255
|
+
const providerDetail = Object.freeze({
|
|
256
|
+
info: Object.freeze({
|
|
257
|
+
uuid: AIRACCOUNT_UUID,
|
|
258
|
+
name: "AirAccount",
|
|
259
|
+
icon: DEFAULT_ICON,
|
|
260
|
+
rdns: "community.aastar.airaccount",
|
|
261
|
+
...info
|
|
262
|
+
}),
|
|
263
|
+
provider
|
|
264
|
+
});
|
|
265
|
+
const announce = () => {
|
|
266
|
+
window.dispatchEvent(new CustomEvent("eip6963:announceProvider", { detail: providerDetail }));
|
|
267
|
+
};
|
|
268
|
+
announce();
|
|
269
|
+
window.addEventListener("eip6963:requestProvider", announce);
|
|
270
|
+
return () => window.removeEventListener("eip6963:requestProvider", announce);
|
|
271
|
+
}
|
|
272
|
+
function watchProviders(onProvider) {
|
|
273
|
+
const handler = (event) => {
|
|
274
|
+
onProvider(event.detail);
|
|
275
|
+
};
|
|
276
|
+
window.addEventListener("eip6963:announceProvider", handler);
|
|
277
|
+
window.dispatchEvent(new Event("eip6963:requestProvider"));
|
|
278
|
+
return () => window.removeEventListener("eip6963:announceProvider", handler);
|
|
279
|
+
}
|
|
280
|
+
|
|
281
|
+
export { AirAccountEIP1193Provider, DVTClient, announceAirAccount, useCreditScore, useSuperPaymaster, watchProviders };
|
|
6
282
|
//# sourceMappingURL=dapp.js.map
|
|
7
283
|
//# sourceMappingURL=dapp.js.map
|
package/dist/dapp.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":[],"names":[],"mappings":"","file":"dapp.js"}
|
|
1
|
+
{"version":3,"sources":["../../dapp/dist/ui/index.js","../../dapp/dist/ui/hooks/useCreditScore.js","../../dapp/dist/ui/hooks/useSuperPaymaster.js","../../dapp/dist/eip1193.js","../../dapp/dist/eip6963.js"],"names":["useState"],"mappings":"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","file":"dapp.js","sourcesContent":["import { parseAbi } from 'viem';\nconst DVT_ABI = parseAbi([\n 'function registerValidator(bytes)',\n 'function createProposal(address, uint8, string)',\n 'function signProposal(uint256, bytes)'\n]);\nexport class DVTClient {\n static async registerValidator(wallet, dvtAddr, blsPublicKey) {\n return wallet.writeContract({\n address: dvtAddr,\n abi: DVT_ABI,\n functionName: 'registerValidator',\n args: [blsPublicKey],\n chain: wallet.chain\n });\n }\n}\n","import { useState, useEffect } from 'react';\nimport { createAAStarPublicClient, RegistryABI } from '@aastar/core';\nexport function useCreditScore({ chain, rpcUrl, registryAddress, userAddress }) {\n const [creditLimit, setCreditLimit] = useState(null);\n const [loading, setLoading] = useState(false);\n useEffect(() => {\n if (!registryAddress || !userAddress || !rpcUrl)\n return;\n const fetchCredit = async () => {\n setLoading(true);\n try {\n const client = createAAStarPublicClient(rpcUrl, chain);\n const limit = await client.readContract({\n address: registryAddress,\n abi: RegistryABI,\n functionName: 'getCreditLimit',\n args: [userAddress]\n });\n setCreditLimit(limit);\n }\n catch (e) {\n console.error(\"Failed to fetch credit limit:\", e);\n setCreditLimit(0n);\n }\n finally {\n setLoading(false);\n }\n };\n fetchCredit();\n }, [chain, rpcUrl, registryAddress, userAddress]);\n return { creditLimit, loading };\n}\n","import { useState, useCallback } from 'react';\nimport { getSuperPaymasterMiddleware } from '@aastar/paymaster';\nexport function useSuperPaymaster(config) {\n const [isLoading, setIsLoading] = useState(false);\n const [error, setError] = useState(null);\n const generatePaymasterAndData = useCallback(async (userOp) => {\n setIsLoading(true);\n setError(null);\n try {\n const middleware = getSuperPaymasterMiddleware(config);\n const result = await middleware.sponsorUserOperation({ userOperation: userOp });\n return result.paymasterAndData;\n }\n catch (err) {\n setError(err);\n throw err;\n }\n finally {\n setIsLoading(false);\n }\n }, [config.paymasterAddress, config.operator, config.verificationGasLimit, config.postOpGasLimit]);\n return { generatePaymasterAndData, isLoading, error };\n}\n","/**\n * eip1193.ts — EIP-1193 compatible provider wrapping AirAccount M7.\n *\n * Intercepts eth_sendTransaction and converts it to an ERC-4337 v0.7\n * PackedUserOperation submitted to the bundler via eth_sendUserOperation.\n * All other JSON-RPC methods are forwarded to the public RPC.\n */\nimport { createPublicClient, encodeFunctionData, hashMessage, hashTypedData, hexToBytes, http, } from \"viem\";\n// AirAccount execute() — ERC-4337 smart account entry point for single calls\nconst EXECUTE_ABI = [\n {\n name: \"execute\",\n type: \"function\",\n stateMutability: \"nonpayable\",\n inputs: [\n { name: \"dest\", type: \"address\" },\n { name: \"value\", type: \"uint256\" },\n { name: \"func\", type: \"bytes\" },\n ],\n outputs: [],\n },\n];\n// EntryPoint v0.7 getNonce + getUserOpHash\nconst ENTRYPOINT_ABI = [\n {\n name: \"getNonce\",\n type: \"function\",\n stateMutability: \"view\",\n inputs: [\n { name: \"sender\", type: \"address\" },\n { name: \"key\", type: \"uint192\" },\n ],\n outputs: [{ name: \"nonce\", type: \"uint256\" }],\n },\n {\n name: \"getUserOpHash\",\n type: \"function\",\n stateMutability: \"view\",\n inputs: [\n {\n name: \"packedUserOp\",\n type: \"tuple\",\n components: [\n { name: \"sender\", type: \"address\" },\n { name: \"nonce\", type: \"uint256\" },\n { name: \"initCode\", type: \"bytes\" },\n { name: \"callData\", type: \"bytes\" },\n { name: \"accountGasLimits\", type: \"bytes32\" },\n { name: \"preVerificationGas\", type: \"uint256\" },\n { name: \"gasFees\", type: \"bytes32\" },\n { name: \"paymasterAndData\", type: \"bytes\" },\n { name: \"signature\", type: \"bytes\" },\n ],\n },\n ],\n outputs: [{ type: \"bytes32\" }],\n },\n];\nconst DEFAULT_ENTRYPOINT = \"0x0000000071727De22E5E9d8BAf0edAc6f37da032\";\n/**\n * AirAccountEIP1193Provider — drop-in EIP-1193 wallet backed by an AirAccount M7 smart account.\n *\n * Usage:\n * ```ts\n * const provider = new AirAccountEIP1193Provider({\n * chainId: 11155111,\n * rpcUrl: 'https://rpc.sepolia.org',\n * bundlerUrl: 'https://api.pimlico.io/v2/11155111/rpc?apikey=...',\n * accountAddress: '0x...',\n * signer: async (hash) => passkeySign(hash),\n * });\n * // Pass to wagmi, ethers.js BrowserProvider, or window.ethereum\n * ```\n */\nexport class AirAccountEIP1193Provider {\n config;\n client;\n listeners = new Map();\n constructor(config) {\n this.config = config;\n this.client = createPublicClient({ transport: http(config.rpcUrl) });\n }\n async request({ method, params }) {\n switch (method) {\n case \"eth_chainId\":\n return `0x${this.config.chainId.toString(16)}`;\n case \"eth_accounts\":\n case \"eth_requestAccounts\":\n return [this.config.accountAddress];\n case \"eth_sendTransaction\": {\n const tx = params[0];\n return this._sendTransaction(tx);\n }\n case \"personal_sign\": {\n // params: [hexData, address] — sign raw bytes with EIP-191 prefix\n const [data] = params;\n const hash = hashMessage({ raw: hexToBytes(data) });\n return this.config.signer(hash);\n }\n case \"eth_signTypedData_v4\": {\n // params: [address, typedDataJson] — sign EIP-712 typed data\n const [, typedDataJson] = params;\n const typedData = JSON.parse(typedDataJson);\n const hash = hashTypedData({\n domain: typedData.domain,\n types: typedData.types,\n primaryType: typedData.primaryType,\n message: typedData.message,\n });\n return this.config.signer(hash);\n }\n default:\n return this._forwardToRpc(method, params);\n }\n }\n on(event, listener) {\n if (!this.listeners.has(event))\n this.listeners.set(event, new Set());\n this.listeners.get(event).add(listener);\n return this;\n }\n removeListener(event, listener) {\n this.listeners.get(event)?.delete(listener);\n return this;\n }\n // ── Private ──────────────────────────────────────────────────────\n async _sendTransaction(tx) {\n const entryPoint = this.config.entryPoint ?? DEFAULT_ENTRYPOINT;\n // Encode execute(to, value, data) for the AirAccount\n const callData = encodeFunctionData({\n abi: EXECUTE_ABI,\n functionName: \"execute\",\n args: [tx.to, BigInt(tx.value ?? \"0x0\"), tx.data ?? \"0x\"],\n });\n // Fetch nonce and gas fees in parallel\n const [nonce, feeData] = await Promise.all([\n this.client.readContract({\n address: entryPoint,\n abi: ENTRYPOINT_ABI,\n functionName: \"getNonce\",\n args: [this.config.accountAddress, 0n],\n }),\n this.client.estimateFeesPerGas(),\n ]);\n const maxFeePerGas = feeData.maxFeePerGas ?? 1000000000n;\n const maxPriorityFeePerGas = feeData.maxPriorityFeePerGas ?? 100000000n;\n // Pack gas limits into bytes32 fields (ERC-4337 v0.7 packed format)\n const verificationGasLimit = 200000n;\n const callGasLimit = BigInt(tx.gas ?? \"0x30000\");\n const accountGasLimits = `0x${((verificationGasLimit << 128n) | callGasLimit).toString(16).padStart(64, \"0\")}`;\n const gasFees = `0x${((maxPriorityFeePerGas << 128n) | maxFeePerGas).toString(16).padStart(64, \"0\")}`;\n const userOp = {\n sender: this.config.accountAddress,\n nonce,\n initCode: \"0x\",\n callData,\n accountGasLimits,\n preVerificationGas: 50000n,\n gasFees,\n paymasterAndData: \"0x\",\n signature: \"0x\",\n };\n // Get UserOp hash from EntryPoint\n const userOpHash = await this.client.readContract({\n address: entryPoint,\n abi: ENTRYPOINT_ABI,\n functionName: \"getUserOpHash\",\n args: [userOp],\n });\n // Sign and attach\n userOp.signature = await this.config.signer(userOpHash);\n // Submit to bundler\n const resp = await fetch(this.config.bundlerUrl, {\n method: \"POST\",\n headers: { \"Content-Type\": \"application/json\" },\n body: JSON.stringify({\n jsonrpc: \"2.0\",\n id: 1,\n method: \"eth_sendUserOperation\",\n params: [\n {\n sender: userOp.sender,\n nonce: `0x${userOp.nonce.toString(16)}`,\n initCode: userOp.initCode,\n callData: userOp.callData,\n accountGasLimits: userOp.accountGasLimits,\n preVerificationGas: `0x${userOp.preVerificationGas.toString(16)}`,\n gasFees: userOp.gasFees,\n paymasterAndData: userOp.paymasterAndData,\n signature: userOp.signature,\n },\n entryPoint,\n ],\n }),\n });\n const result = (await resp.json());\n if (result.error)\n throw new Error(result.error.message);\n return result.result;\n }\n async _forwardToRpc(method, params) {\n const resp = await fetch(this.config.rpcUrl, {\n method: \"POST\",\n headers: { \"Content-Type\": \"application/json\" },\n body: JSON.stringify({ jsonrpc: \"2.0\", id: 1, method, params: params ?? [] }),\n });\n const result = (await resp.json());\n if (result.error)\n throw new Error(result.error.message);\n return result.result;\n }\n}\n","/**\n * eip6963.ts — EIP-6963 Multi Injected Provider Discovery for AirAccount.\n *\n * Announces AirAccount as an EIP-1193 wallet via the eip6963:announceProvider\n * DOM event, enabling DApps to auto-discover it without relying on window.ethereum.\n *\n * Reference: https://eips.ethereum.org/EIPS/eip-6963\n */\n// AirAccount default icon (minimal SVG placeholder)\nconst DEFAULT_ICON = \"data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA0OCA0OCI+PGNpcmNsZSBjeD0iMjQiIGN5PSIyNCIgcj0iMjQiIGZpbGw9IiMxQTFBMkUiLz48dGV4dCB4PSIxMiIgeT0iMzIiIGZvbnQtc2l6ZT0iMjQiIGZpbGw9IiNGRkYiPkFBPC90ZXh0Pjwvc3ZnPg==\";\n// Stable UUID for AirAccount — must not change between sessions per EIP-6963 spec\nconst AIRACCOUNT_UUID = \"d4e5f6a7-b8c9-4d0e-8f2a-3b4c5d6e7f80\";\n/**\n * Announce AirAccount as an EIP-6963 wallet so DApps can auto-discover it.\n *\n * Call this once at app startup. Returns a cleanup function that removes the\n * event listener when the wallet is no longer available.\n *\n * @example\n * ```ts\n * const provider = new AirAccountEIP1193Provider({ ... });\n * const cleanup = announceAirAccount(provider);\n * // later: cleanup() to stop announcing\n * ```\n */\nexport function announceAirAccount(provider, info = {}) {\n const providerDetail = Object.freeze({\n info: Object.freeze({\n uuid: AIRACCOUNT_UUID,\n name: \"AirAccount\",\n icon: DEFAULT_ICON,\n rdns: \"community.aastar.airaccount\",\n ...info,\n }),\n provider,\n });\n const announce = () => {\n window.dispatchEvent(new CustomEvent(\"eip6963:announceProvider\", { detail: providerDetail }));\n };\n // Announce immediately so DApps already listening receive it\n announce();\n // Re-announce whenever a DApp requests wallet discovery\n window.addEventListener(\"eip6963:requestProvider\", announce);\n return () => window.removeEventListener(\"eip6963:requestProvider\", announce);\n}\n/**\n * Listen for EIP-6963 wallet announcements from other providers in the page.\n * Useful for composing AirAccount with MetaMask fallback, etc.\n *\n * Returns a cleanup function to stop listening.\n */\nexport function watchProviders(onProvider) {\n const handler = (event) => {\n onProvider(event.detail);\n };\n window.addEventListener(\"eip6963:announceProvider\", handler);\n // Trigger all existing wallets to re-announce\n window.dispatchEvent(new Event(\"eip6963:requestProvider\"));\n return () => window.removeEventListener(\"eip6963:announceProvider\", handler);\n}\n"]}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
export { PaymasterClient, PaymasterManager, PaymasterOperator, SuperPaymasterAdminClient, SuperPaymasterClient, buildPaymasterData, buildSuperPaymasterData, checkEligibility, formatUserOpV07, getPaymasterV4Middleware, getSuperPaymasterMiddleware, getUserOpHashV07, tuneGasLimit } from './chunk-
|
|
2
|
-
import './chunk-
|
|
3
|
-
import './chunk-
|
|
1
|
+
export { PaymasterClient, PaymasterManager, PaymasterOperator, SuperPaymasterAdminClient, SuperPaymasterClient, buildPaymasterData, buildSuperPaymasterData, checkEligibility, formatUserOpV07, getPaymasterV4Middleware, getSuperPaymasterMiddleware, getUserOpHashV07, tuneGasLimit } from './chunk-NAPMVAVJ.js';
|
|
2
|
+
import './chunk-TBDMSJVL.js';
|
|
3
|
+
import './chunk-ZJLIKMCA.js';
|
|
4
4
|
import './chunk-PZ5AY32C.js';
|
|
5
|
-
//# sourceMappingURL=dist-
|
|
6
|
-
//# sourceMappingURL=dist-
|
|
5
|
+
//# sourceMappingURL=dist-WMYQOYRO.js.map
|
|
6
|
+
//# sourceMappingURL=dist-WMYQOYRO.js.map
|