@aastar/sdk 0.24.1 → 0.24.2

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.
Files changed (101) hide show
  1. package/dist/UserClient-4MRK2D7W.cjs +15 -0
  2. package/dist/{UserClient-S6LS3CB6.cjs.map → UserClient-4MRK2D7W.cjs.map} +1 -1
  3. package/dist/UserClient-DPJ6E2XL.js +6 -0
  4. package/dist/{UserClient-KYDCMAIU.js.map → UserClient-DPJ6E2XL.js.map} +1 -1
  5. package/dist/account.cjs +7 -7
  6. package/dist/account.js +2 -2
  7. package/dist/admin.cjs +3 -3
  8. package/dist/admin.js +2 -2
  9. package/dist/airaccount.cjs +102 -102
  10. package/dist/airaccount.js +2 -2
  11. package/dist/channel.cjs +6 -6
  12. package/dist/channel.js +2 -2
  13. package/dist/{chunk-BOVDJSMK.cjs → chunk-3FRNYRWI.cjs} +26 -26
  14. package/dist/{chunk-BOVDJSMK.cjs.map → chunk-3FRNYRWI.cjs.map} +1 -1
  15. package/dist/{chunk-VEAYV52I.cjs → chunk-4Q6FADF6.cjs} +9 -9
  16. package/dist/{chunk-VEAYV52I.cjs.map → chunk-4Q6FADF6.cjs.map} +1 -1
  17. package/dist/{chunk-654GQ7G7.js → chunk-7FLPD3V4.js} +3 -3
  18. package/dist/{chunk-654GQ7G7.js.map → chunk-7FLPD3V4.js.map} +1 -1
  19. package/dist/{chunk-2UC7UPHV.js → chunk-BPAAWQQA.js} +3 -3
  20. package/dist/{chunk-2UC7UPHV.js.map → chunk-BPAAWQQA.js.map} +1 -1
  21. package/dist/{chunk-BYVG7MO7.js → chunk-EEWLL7GE.js} +2 -2
  22. package/dist/{chunk-BYVG7MO7.js.map → chunk-EEWLL7GE.js.map} +1 -1
  23. package/dist/{chunk-D667CUUS.cjs → chunk-FUY4MHPM.cjs} +9 -9
  24. package/dist/{chunk-D667CUUS.cjs.map → chunk-FUY4MHPM.cjs.map} +1 -1
  25. package/dist/{chunk-HNJBQR5U.cjs → chunk-HP44S5U5.cjs} +5 -5
  26. package/dist/{chunk-HNJBQR5U.cjs.map → chunk-HP44S5U5.cjs.map} +1 -1
  27. package/dist/{chunk-MOJJ7QF6.cjs → chunk-IB3KOSHW.cjs} +2 -2
  28. package/dist/{chunk-MOJJ7QF6.cjs.map → chunk-IB3KOSHW.cjs.map} +1 -1
  29. package/dist/{chunk-VHY6R2PI.cjs → chunk-KYXXIKEI.cjs} +32 -32
  30. package/dist/{chunk-VHY6R2PI.cjs.map → chunk-KYXXIKEI.cjs.map} +1 -1
  31. package/dist/{chunk-A4ICWCHR.cjs → chunk-MANVOQY7.cjs} +5 -5
  32. package/dist/{chunk-A4ICWCHR.cjs.map → chunk-MANVOQY7.cjs.map} +1 -1
  33. package/dist/{chunk-NVYVTCHJ.cjs → chunk-MCDFQ5JH.cjs} +11 -11
  34. package/dist/{chunk-NVYVTCHJ.cjs.map → chunk-MCDFQ5JH.cjs.map} +1 -1
  35. package/dist/{chunk-7RVONA2R.js → chunk-O2CN77MV.js} +8 -8
  36. package/dist/{chunk-7RVONA2R.js.map → chunk-O2CN77MV.js.map} +1 -1
  37. package/dist/{chunk-DAMWXGKD.js → chunk-P3B6UTED.js} +3 -3
  38. package/dist/{chunk-DAMWXGKD.js.map → chunk-P3B6UTED.js.map} +1 -1
  39. package/dist/{chunk-WVJ4LQVB.js → chunk-PTVXBXZX.js} +3 -3
  40. package/dist/{chunk-WVJ4LQVB.js.map → chunk-PTVXBXZX.js.map} +1 -1
  41. package/dist/{chunk-RZ2M2RVP.js → chunk-PUE5GEKK.js} +3 -3
  42. package/dist/{chunk-RZ2M2RVP.js.map → chunk-PUE5GEKK.js.map} +1 -1
  43. package/dist/{chunk-72JZKARR.cjs → chunk-S7IUUQ5E.cjs} +6 -6
  44. package/dist/{chunk-72JZKARR.cjs.map → chunk-S7IUUQ5E.cjs.map} +1 -1
  45. package/dist/{chunk-JMW5AHLC.js → chunk-SX5GUCTF.js} +9 -9
  46. package/dist/{chunk-JMW5AHLC.js.map → chunk-SX5GUCTF.js.map} +1 -1
  47. package/dist/{chunk-5PH5CSM7.cjs → chunk-TGEVD7OR.cjs} +16 -16
  48. package/dist/{chunk-5PH5CSM7.cjs.map → chunk-TGEVD7OR.cjs.map} +1 -1
  49. package/dist/{chunk-WVOJV4Q5.cjs → chunk-TQIRRSGL.cjs} +4 -4
  50. package/dist/{chunk-WVOJV4Q5.cjs.map → chunk-TQIRRSGL.cjs.map} +1 -1
  51. package/dist/{chunk-PNBK2CLK.js → chunk-UJPW54CK.js} +3 -3
  52. package/dist/{chunk-PNBK2CLK.js.map → chunk-UJPW54CK.js.map} +1 -1
  53. package/dist/{chunk-GDH4DSVM.cjs → chunk-V23XPVHO.cjs} +12 -12
  54. package/dist/{chunk-GDH4DSVM.cjs.map → chunk-V23XPVHO.cjs.map} +1 -1
  55. package/dist/{chunk-PXQDAFXD.js → chunk-W73Y6JWZ.js} +6 -6
  56. package/dist/{chunk-PXQDAFXD.js.map → chunk-W73Y6JWZ.js.map} +1 -1
  57. package/dist/{chunk-LDARLWS3.js → chunk-XBZGVJ5K.js} +3 -3
  58. package/dist/{chunk-LDARLWS3.js.map → chunk-XBZGVJ5K.js.map} +1 -1
  59. package/dist/{chunk-WC25H5VG.js → chunk-Y5QM4LI4.js} +4 -4
  60. package/dist/{chunk-WC25H5VG.js.map → chunk-Y5QM4LI4.js.map} +1 -1
  61. package/dist/core.cjs +208 -208
  62. package/dist/core.js +1 -1
  63. package/dist/dapp.cjs +5 -5
  64. package/dist/dapp.js +2 -2
  65. package/dist/email.cjs +91 -0
  66. package/dist/email.cjs.map +1 -0
  67. package/dist/email.d.cts +115 -0
  68. package/dist/email.d.ts +115 -0
  69. package/dist/email.js +88 -0
  70. package/dist/email.js.map +1 -0
  71. package/dist/enduser.cjs +6 -6
  72. package/dist/enduser.js +3 -3
  73. package/dist/identity.cjs +5 -5
  74. package/dist/identity.js +2 -2
  75. package/dist/index.cjs +309 -309
  76. package/dist/index.js +15 -15
  77. package/dist/kms.cjs +102 -102
  78. package/dist/kms.js +2 -2
  79. package/dist/operator.cjs +6 -6
  80. package/dist/operator.js +2 -2
  81. package/dist/paymaster.cjs +15 -15
  82. package/dist/paymaster.js +2 -2
  83. package/dist/{src-UNS5B7FX.js → src-HKOFZ4V3.js} +4 -4
  84. package/dist/src-HKOFZ4V3.js.map +1 -0
  85. package/dist/{src-5URXSFKD.js → src-L2BLX34S.js} +3 -3
  86. package/dist/src-L2BLX34S.js.map +1 -0
  87. package/dist/{src-72GWEAPA.cjs → src-RM6DDR7K.cjs} +17 -17
  88. package/dist/src-RM6DDR7K.cjs.map +1 -0
  89. package/dist/{src-N72HAQXS.cjs → src-VO7TXJPG.cjs} +210 -210
  90. package/dist/src-VO7TXJPG.cjs.map +1 -0
  91. package/dist/tokens.cjs +3 -3
  92. package/dist/tokens.js +2 -2
  93. package/dist/x402.cjs +25 -25
  94. package/dist/x402.js +2 -2
  95. package/package.json +17 -2
  96. package/dist/UserClient-KYDCMAIU.js +0 -6
  97. package/dist/UserClient-S6LS3CB6.cjs +0 -15
  98. package/dist/src-5URXSFKD.js.map +0 -1
  99. package/dist/src-72GWEAPA.cjs.map +0 -1
  100. package/dist/src-N72HAQXS.cjs.map +0 -1
  101. package/dist/src-UNS5B7FX.js.map +0 -1
@@ -1,9 +1,9 @@
1
1
  'use strict';
2
2
 
3
- var chunkMOJJ7QF6_cjs = require('./chunk-MOJJ7QF6.cjs');
3
+ var chunkIB3KOSHW_cjs = require('./chunk-IB3KOSHW.cjs');
4
4
 
5
5
  // ../admin/src/ProtocolGovernance.ts
6
- var ProtocolGovernance = class extends chunkMOJJ7QF6_cjs.BaseClient {
6
+ var ProtocolGovernance = class extends chunkIB3KOSHW_cjs.BaseClient {
7
7
  registryAddress;
8
8
  entryPointAddress;
9
9
  constructor(config) {
@@ -33,7 +33,7 @@ var ProtocolGovernance = class extends chunkMOJJ7QF6_cjs.BaseClient {
33
33
  * Approve a new SuperPaymaster contract address
34
34
  */
35
35
  async setSuperPaymaster(paymaster, options) {
36
- const registry = chunkMOJJ7QF6_cjs.registryActions(this.registryAddress);
36
+ const registry = chunkIB3KOSHW_cjs.registryActions(this.registryAddress);
37
37
  return await registry(this.client).setSuperPaymaster({
38
38
  paymaster,
39
39
  account: options?.account
@@ -43,7 +43,7 @@ var ProtocolGovernance = class extends chunkMOJJ7QF6_cjs.BaseClient {
43
43
  * Set the Staking contract address
44
44
  */
45
45
  async setStaking(staking, options) {
46
- const registry = chunkMOJJ7QF6_cjs.registryActions(this.registryAddress);
46
+ const registry = chunkIB3KOSHW_cjs.registryActions(this.registryAddress);
47
47
  return await registry(this.client).setStaking({
48
48
  staking,
49
49
  account: options?.account
@@ -55,7 +55,7 @@ var ProtocolGovernance = class extends chunkMOJJ7QF6_cjs.BaseClient {
55
55
  * and writes back the full struct via configureRole.
56
56
  */
57
57
  async configureRole(params, options) {
58
- const registry = chunkMOJJ7QF6_cjs.registryActions(this.registryAddress)(this.client);
58
+ const registry = chunkIB3KOSHW_cjs.registryActions(this.registryAddress)(this.client);
59
59
  const current = await registry.getRoleConfig({ roleId: params.roleId });
60
60
  return await registry.configureRole({
61
61
  roleId: params.roleId,
@@ -77,7 +77,7 @@ var ProtocolGovernance = class extends chunkMOJJ7QF6_cjs.BaseClient {
77
77
  * This is the final step of "Protocol Admin" lifecycle.
78
78
  */
79
79
  async transferToDAO(daoAddress, options) {
80
- const registry = chunkMOJJ7QF6_cjs.registryActions(this.registryAddress);
80
+ const registry = chunkIB3KOSHW_cjs.registryActions(this.registryAddress);
81
81
  return await registry(this.client).transferOwnership({
82
82
  newOwner: daoAddress,
83
83
  account: options?.account
@@ -87,7 +87,7 @@ var ProtocolGovernance = class extends chunkMOJJ7QF6_cjs.BaseClient {
87
87
  // 4. Query Capabilities
88
88
  // ===========================================
89
89
  async getProtocolParams() {
90
- const registry = chunkMOJJ7QF6_cjs.registryActions(this.registryAddress)(this.client);
90
+ const registry = chunkIB3KOSHW_cjs.registryActions(this.registryAddress)(this.client);
91
91
  const [sp, staking] = await Promise.all([
92
92
  registry.SUPER_PAYMASTER(),
93
93
  registry.GTOKEN_STAKING()
@@ -104,5 +104,5 @@ var ProtocolGovernance = class extends chunkMOJJ7QF6_cjs.BaseClient {
104
104
  };
105
105
 
106
106
  exports.ProtocolGovernance = ProtocolGovernance;
107
- //# sourceMappingURL=chunk-D667CUUS.cjs.map
108
- //# sourceMappingURL=chunk-D667CUUS.cjs.map
107
+ //# sourceMappingURL=chunk-FUY4MHPM.cjs.map
108
+ //# sourceMappingURL=chunk-FUY4MHPM.cjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../admin/src/ProtocolGovernance.ts"],"names":["BaseClient","registryActions"],"mappings":"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","file":"chunk-D667CUUS.cjs","sourcesContent":["import { type Address, type Hash, type Hex } from 'viem';\nimport { BaseClient, type ClientConfig, type TransactionOptions } from '@aastar/core';\nimport { registryActions, entryPointActions } from '@aastar/core'; // L2/L1 Actions\n\nexport interface ProtocolParams {\n minStake: bigint;\n treasury: Address;\n entryPoint: Address;\n superPaymaster: Address;\n}\n\n/**\n * ProtocolGovernance - L3 Pattern\n * \n * Responsibilities:\n * 1. Global Protocol Parameter Management (Registry, EntryPoint)\n * 2. High-level Governance Operations (DAO Transfer, Upgrades)\n * 3. SuperPaymaster & Module Approval\n */\nexport class ProtocolGovernance extends BaseClient {\n public registryAddress: Address;\n public entryPointAddress: Address;\n\n constructor(config: ClientConfig & { \n registryAddress: Address; \n entryPointAddress: Address \n }) {\n super(config);\n this.registryAddress = config.registryAddress;\n this.entryPointAddress = config.entryPointAddress;\n }\n\n // ===========================================\n // 1. Global Parameter Management\n // ===========================================\n\n /**\n * Update the Global Treasury Address where protocol fees are collected\n */\n async setTreasury(treasury: Address, options?: TransactionOptions): Promise<Hash> {\n // Note: Registry might not have direct setTreasury if it relies on SuperPaymaster's config.\n // Assuming Registry has ownership pointers or config pointers.\n // If Logic resides in SuperPaymaster, we would use superPaymasterActions.\n // Based on provided ABI/Actions, Registry manages Role Configs mainly.\n // Let's assume we are updating a System Role or similar global config if available,\n // OR adhering to what registryActions provides.\n \n // Checking registryActions... it has 'transferOwnership' but maybe not direct 'setTreasury' depending on version.\n // If strictly following ABI, we might need to update a specific Role Parameter (e.g. AOA/Super config).\n \n throw new Error(\"Method not mapped to RegistryABI v1. Please verify contract capabilities.\");\n }\n\n /**\n * Update the supported EntryPoint address\n */\n async updateEntryPoint(entryPoint: Address, options?: TransactionOptions): Promise<Hash> {\n // Placeholder: Real implementation depends on if Registry stores EntryPoint\n // registryActions typically provides getters. Setters usually restricted to Owner.\n // If action not available, throw standard error.\n throw new Error(\"Method not mapped to RegistryABI v1.\");\n }\n\n // ===========================================\n // 2. Role & Module Governance\n // ===========================================\n\n /**\n * Approve a new SuperPaymaster contract address\n */\n async setSuperPaymaster(paymaster: Address, options?: TransactionOptions): Promise<Hash> {\n const registry = registryActions(this.registryAddress);\n return await registry(this.client).setSuperPaymaster({\n paymaster,\n account: options?.account\n });\n }\n\n /**\n * Set the Staking contract address\n */\n async setStaking(staking: Address, options?: TransactionOptions): Promise<Hash> {\n const registry = registryActions(this.registryAddress);\n return await registry(this.client).setStaking({\n staking,\n account: options?.account\n });\n }\n\n /**\n * Configure a Role's parameters (Admin only).\n * Reads the current on-chain config first, then merges the provided overrides\n * and writes back the full struct via configureRole.\n */\n async configureRole(params: {\n roleId: Hex;\n minStake?: bigint;\n ticketPrice?: bigint;\n exitFeePercent?: bigint;\n minExitFee?: bigint;\n }, options?: TransactionOptions): Promise<Hash> {\n const registry = registryActions(this.registryAddress)(this.client);\n const current = await registry.getRoleConfig({ roleId: params.roleId });\n return await (registry as any).configureRole({\n roleId: params.roleId,\n config: {\n ...current,\n ...(params.minStake !== undefined && { minStake: params.minStake }),\n ...(params.ticketPrice !== undefined && { ticketPrice: params.ticketPrice }),\n ...(params.exitFeePercent !== undefined && { exitFeePercent: params.exitFeePercent }),\n ...(params.minExitFee !== undefined && { minExitFee: params.minExitFee }),\n },\n account: options?.account,\n });\n }\n\n // ===========================================\n // 3. Transfer to DAO (Exit/Upgrade)\n // ===========================================\n\n /**\n * Transfer Protocol Ownership to a DAO (Multisig/Timelock)\n * This is the final step of \"Protocol Admin\" lifecycle.\n */\n async transferToDAO(daoAddress: Address, options?: TransactionOptions): Promise<Hash> {\n const registry = registryActions(this.registryAddress);\n return await registry(this.client).transferOwnership({\n newOwner: daoAddress,\n account: options?.account\n });\n }\n\n // ===========================================\n // 4. Query Capabilities\n // ===========================================\n\n async getProtocolParams(): Promise<ProtocolParams> {\n const registry = registryActions(this.registryAddress)(this.client); // Read-only via Client\n \n // Parallel fetch\n const [sp, staking] = await Promise.all([\n registry.SUPER_PAYMASTER(),\n registry.GTOKEN_STAKING()\n ]);\n\n return {\n minStake: 0n, // Global default not directly exposed, usually per role\n treasury: await registry.owner(), // Approximation for now\n entryPoint: this.entryPointAddress,\n superPaymaster: sp\n };\n }\n}\n"]}
1
+ {"version":3,"sources":["../../admin/src/ProtocolGovernance.ts"],"names":["BaseClient","registryActions"],"mappings":"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","file":"chunk-FUY4MHPM.cjs","sourcesContent":["import { type Address, type Hash, type Hex } from 'viem';\nimport { BaseClient, type ClientConfig, type TransactionOptions } from '@aastar/core';\nimport { registryActions, entryPointActions } from '@aastar/core'; // L2/L1 Actions\n\nexport interface ProtocolParams {\n minStake: bigint;\n treasury: Address;\n entryPoint: Address;\n superPaymaster: Address;\n}\n\n/**\n * ProtocolGovernance - L3 Pattern\n * \n * Responsibilities:\n * 1. Global Protocol Parameter Management (Registry, EntryPoint)\n * 2. High-level Governance Operations (DAO Transfer, Upgrades)\n * 3. SuperPaymaster & Module Approval\n */\nexport class ProtocolGovernance extends BaseClient {\n public registryAddress: Address;\n public entryPointAddress: Address;\n\n constructor(config: ClientConfig & { \n registryAddress: Address; \n entryPointAddress: Address \n }) {\n super(config);\n this.registryAddress = config.registryAddress;\n this.entryPointAddress = config.entryPointAddress;\n }\n\n // ===========================================\n // 1. Global Parameter Management\n // ===========================================\n\n /**\n * Update the Global Treasury Address where protocol fees are collected\n */\n async setTreasury(treasury: Address, options?: TransactionOptions): Promise<Hash> {\n // Note: Registry might not have direct setTreasury if it relies on SuperPaymaster's config.\n // Assuming Registry has ownership pointers or config pointers.\n // If Logic resides in SuperPaymaster, we would use superPaymasterActions.\n // Based on provided ABI/Actions, Registry manages Role Configs mainly.\n // Let's assume we are updating a System Role or similar global config if available,\n // OR adhering to what registryActions provides.\n \n // Checking registryActions... it has 'transferOwnership' but maybe not direct 'setTreasury' depending on version.\n // If strictly following ABI, we might need to update a specific Role Parameter (e.g. AOA/Super config).\n \n throw new Error(\"Method not mapped to RegistryABI v1. Please verify contract capabilities.\");\n }\n\n /**\n * Update the supported EntryPoint address\n */\n async updateEntryPoint(entryPoint: Address, options?: TransactionOptions): Promise<Hash> {\n // Placeholder: Real implementation depends on if Registry stores EntryPoint\n // registryActions typically provides getters. Setters usually restricted to Owner.\n // If action not available, throw standard error.\n throw new Error(\"Method not mapped to RegistryABI v1.\");\n }\n\n // ===========================================\n // 2. Role & Module Governance\n // ===========================================\n\n /**\n * Approve a new SuperPaymaster contract address\n */\n async setSuperPaymaster(paymaster: Address, options?: TransactionOptions): Promise<Hash> {\n const registry = registryActions(this.registryAddress);\n return await registry(this.client).setSuperPaymaster({\n paymaster,\n account: options?.account\n });\n }\n\n /**\n * Set the Staking contract address\n */\n async setStaking(staking: Address, options?: TransactionOptions): Promise<Hash> {\n const registry = registryActions(this.registryAddress);\n return await registry(this.client).setStaking({\n staking,\n account: options?.account\n });\n }\n\n /**\n * Configure a Role's parameters (Admin only).\n * Reads the current on-chain config first, then merges the provided overrides\n * and writes back the full struct via configureRole.\n */\n async configureRole(params: {\n roleId: Hex;\n minStake?: bigint;\n ticketPrice?: bigint;\n exitFeePercent?: bigint;\n minExitFee?: bigint;\n }, options?: TransactionOptions): Promise<Hash> {\n const registry = registryActions(this.registryAddress)(this.client);\n const current = await registry.getRoleConfig({ roleId: params.roleId });\n return await (registry as any).configureRole({\n roleId: params.roleId,\n config: {\n ...current,\n ...(params.minStake !== undefined && { minStake: params.minStake }),\n ...(params.ticketPrice !== undefined && { ticketPrice: params.ticketPrice }),\n ...(params.exitFeePercent !== undefined && { exitFeePercent: params.exitFeePercent }),\n ...(params.minExitFee !== undefined && { minExitFee: params.minExitFee }),\n },\n account: options?.account,\n });\n }\n\n // ===========================================\n // 3. Transfer to DAO (Exit/Upgrade)\n // ===========================================\n\n /**\n * Transfer Protocol Ownership to a DAO (Multisig/Timelock)\n * This is the final step of \"Protocol Admin\" lifecycle.\n */\n async transferToDAO(daoAddress: Address, options?: TransactionOptions): Promise<Hash> {\n const registry = registryActions(this.registryAddress);\n return await registry(this.client).transferOwnership({\n newOwner: daoAddress,\n account: options?.account\n });\n }\n\n // ===========================================\n // 4. Query Capabilities\n // ===========================================\n\n async getProtocolParams(): Promise<ProtocolParams> {\n const registry = registryActions(this.registryAddress)(this.client); // Read-only via Client\n \n // Parallel fetch\n const [sp, staking] = await Promise.all([\n registry.SUPER_PAYMASTER(),\n registry.GTOKEN_STAKING()\n ]);\n\n return {\n minStake: 0n, // Global default not directly exposed, usually per role\n treasury: await registry.owner(), // Approximation for now\n entryPoint: this.entryPointAddress,\n superPaymaster: sp\n };\n }\n}\n"]}
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var chunkMOJJ7QF6_cjs = require('./chunk-MOJJ7QF6.cjs');
3
+ var chunkIB3KOSHW_cjs = require('./chunk-IB3KOSHW.cjs');
4
4
  var viem = require('viem');
5
5
  var accounts = require('viem/accounts');
6
6
 
@@ -79,14 +79,14 @@ var UserOpClient = class {
79
79
  async function toSimpleSmartAccount(parameters) {
80
80
  const { client, owner, factoryAddress, entryPoint, index = 0n, salt = 0n } = parameters;
81
81
  const factoryData = viem.encodeFunctionData({
82
- abi: chunkMOJJ7QF6_cjs.SimpleAccountFactoryABI,
82
+ abi: chunkIB3KOSHW_cjs.SimpleAccountFactoryABI,
83
83
  functionName: "createAccount",
84
84
  args: [owner.address, salt]
85
85
  });
86
86
  const initCode = viem.concatHex([factoryAddress, factoryData]);
87
87
  const address = await client.readContract({
88
88
  address: factoryAddress,
89
- abi: chunkMOJJ7QF6_cjs.SimpleAccountFactoryABI,
89
+ abi: chunkIB3KOSHW_cjs.SimpleAccountFactoryABI,
90
90
  functionName: "getAddress",
91
91
  args: [owner.address, salt]
92
92
  });
@@ -124,5 +124,5 @@ exports.createEOAWalletClient = createEOAWalletClient;
124
124
  exports.getUserOpHash = getUserOpHash;
125
125
  exports.packUserOpLimits = packUserOpLimits;
126
126
  exports.toSimpleSmartAccount = toSimpleSmartAccount;
127
- //# sourceMappingURL=chunk-HNJBQR5U.cjs.map
128
- //# sourceMappingURL=chunk-HNJBQR5U.cjs.map
127
+ //# sourceMappingURL=chunk-HP44S5U5.cjs.map
128
+ //# sourceMappingURL=chunk-HP44S5U5.cjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../account/src/eoa.ts","../../account/src/index.ts","../../account/src/accounts/simple.ts"],"names":["http","privateKeyToAccount","createWalletClient","encodeAbiParameters","keccak256","encodeFunctionData","SimpleAccountFactoryABI","concatHex"],"mappings":"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","file":"chunk-HNJBQR5U.cjs","sourcesContent":["import { type WalletClient, type PublicClient, type Address, type Chain, type Transport, type Hash, type Hex, createWalletClient, http } from 'viem';\nimport { privateKeyToAccount } from 'viem/accounts';\n\nexport type EOAWalletClient = WalletClient & {\n sendTransaction: (args: { to: Address, value?: bigint, data?: Hex }) => Promise<Hash>;\n getAddress: () => Address;\n};\n\nexport const createEOAWalletClient = (\n privateKey: Hex, \n chain: Chain, \n transport: Transport = http()\n): EOAWalletClient => {\n const account = privateKeyToAccount(privateKey);\n const client = createWalletClient({\n account,\n chain,\n transport\n });\n\n return Object.assign(client, {\n async sendTransaction(args: { to: Address, value?: bigint, data?: Hex }) {\n return client.sendTransaction({\n ...args,\n account,\n chain\n });\n },\n getAddress: () => account.address\n }) as EOAWalletClient;\n};\n","import { type Hex, type Address, encodeAbiParameters, keccak256 } from 'viem';\n\nexport * from './eoa.js';\nexport * from './accounts/simple.js';\n\n/**\n * Common Pack Logic for v0.7 UserOperations\n */\nexport function packUserOpLimits(high: bigint, low: bigint): Hex {\n return `0x${((high << 128n) | low).toString(16).padStart(64, '0')}` as Hex;\n}\n\n/**\n * Local implementation of EntryPoint v0.7 getUserOpHash\n */\nexport function getUserOpHash(op: any, ep: Address, chainId: number): Hex {\n const packed = encodeAbiParameters(\n [\n { type: 'address' }, { type: 'uint256' }, { type: 'bytes32' }, { type: 'bytes32' },\n { type: 'bytes32' }, { type: 'uint256' }, { type: 'bytes32' }, { type: 'bytes32' }\n ],\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 );\n const enc = encodeAbiParameters(\n [{ type: 'bytes32' }, { type: 'address' }, { type: 'uint256' }],\n [keccak256(packed), ep, BigInt(chainId)]\n );\n return keccak256(enc);\n}\n\n/**\n * UserOperation Client for handling high-level flows\n */\nexport class UserOpClient {\n static async estimateGas(bundler: any, op: any, entryPoint: Address) {\n return bundler.request({\n method: 'eth_estimateUserOperationGas',\n params: [op, entryPoint]\n });\n }\n\n static async sendUserOp(bundler: any, op: any, entryPoint: Address) {\n return bundler.request({\n method: 'eth_sendUserOperation',\n params: [op, entryPoint]\n });\n }\n\n static async getReceipt(bundler: any, hash: Hex) {\n return bundler.request({\n method: 'eth_getUserOperationReceipt',\n params: [hash]\n });\n }\n}\n","import { \n type Address, \n type Hex, \n type LocalAccount, \n type SignableMessage, \n type TypedDataDefinition,\n type Hash,\n concatHex, \n encodeFunctionData, \n keccak256,\n} from 'viem';\nimport { SimpleAccountFactoryABI, type PublicClient } from '@aastar/core';\nimport { getUserOpHash } from '../index.js';\n\nexport type SimpleSmartAccount = LocalAccount & {\n signUserOperation: (userOp: any) => Promise<Hex>;\n getInitCode: () => Promise<Hex>;\n getDummySignature: () => Promise<Hex>;\n entryPoint: Address;\n};\n\nexport async function toSimpleSmartAccount(parameters: {\n client: any;\n owner: LocalAccount;\n factoryAddress: Address;\n entryPoint: { address: Address; version: '0.6' | '0.7' };\n salt?: bigint;\n index?: bigint;\n}): Promise<SimpleSmartAccount> {\n const { client, owner, factoryAddress, entryPoint, index = 0n, salt = 0n } = parameters;\n \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\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\n return {\n address,\n publicKey: owner.address,\n source: 'custom', \n type: 'local',\n entryPoint: entryPoint.address,\n \n async signMessage({ message }: { message: SignableMessage }): Promise<Hex> {\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\n async signTypedData(typedData: TypedDataDefinition): Promise<Hex> {\n return owner.signTypedData(typedData);\n },\n\n async signTransaction(transaction: any): Promise<Hex> {\n throw new Error('Smart Accounts cannot sign transactions directly. Use UserOperations.');\n },\n \n async signUserOperation(userOp: any): Promise<Hex> {\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 \n async getInitCode() {\n return initCode;\n },\n\n async getDummySignature() {\n return '0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff';\n }\n\n } as any as SimpleSmartAccount;\n}\n"]}
1
+ {"version":3,"sources":["../../account/src/eoa.ts","../../account/src/index.ts","../../account/src/accounts/simple.ts"],"names":["http","privateKeyToAccount","createWalletClient","encodeAbiParameters","keccak256","encodeFunctionData","SimpleAccountFactoryABI","concatHex"],"mappings":"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","file":"chunk-HP44S5U5.cjs","sourcesContent":["import { type WalletClient, type PublicClient, type Address, type Chain, type Transport, type Hash, type Hex, createWalletClient, http } from 'viem';\nimport { privateKeyToAccount } from 'viem/accounts';\n\nexport type EOAWalletClient = WalletClient & {\n sendTransaction: (args: { to: Address, value?: bigint, data?: Hex }) => Promise<Hash>;\n getAddress: () => Address;\n};\n\nexport const createEOAWalletClient = (\n privateKey: Hex, \n chain: Chain, \n transport: Transport = http()\n): EOAWalletClient => {\n const account = privateKeyToAccount(privateKey);\n const client = createWalletClient({\n account,\n chain,\n transport\n });\n\n return Object.assign(client, {\n async sendTransaction(args: { to: Address, value?: bigint, data?: Hex }) {\n return client.sendTransaction({\n ...args,\n account,\n chain\n });\n },\n getAddress: () => account.address\n }) as EOAWalletClient;\n};\n","import { type Hex, type Address, encodeAbiParameters, keccak256 } from 'viem';\n\nexport * from './eoa.js';\nexport * from './accounts/simple.js';\n\n/**\n * Common Pack Logic for v0.7 UserOperations\n */\nexport function packUserOpLimits(high: bigint, low: bigint): Hex {\n return `0x${((high << 128n) | low).toString(16).padStart(64, '0')}` as Hex;\n}\n\n/**\n * Local implementation of EntryPoint v0.7 getUserOpHash\n */\nexport function getUserOpHash(op: any, ep: Address, chainId: number): Hex {\n const packed = encodeAbiParameters(\n [\n { type: 'address' }, { type: 'uint256' }, { type: 'bytes32' }, { type: 'bytes32' },\n { type: 'bytes32' }, { type: 'uint256' }, { type: 'bytes32' }, { type: 'bytes32' }\n ],\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 );\n const enc = encodeAbiParameters(\n [{ type: 'bytes32' }, { type: 'address' }, { type: 'uint256' }],\n [keccak256(packed), ep, BigInt(chainId)]\n );\n return keccak256(enc);\n}\n\n/**\n * UserOperation Client for handling high-level flows\n */\nexport class UserOpClient {\n static async estimateGas(bundler: any, op: any, entryPoint: Address) {\n return bundler.request({\n method: 'eth_estimateUserOperationGas',\n params: [op, entryPoint]\n });\n }\n\n static async sendUserOp(bundler: any, op: any, entryPoint: Address) {\n return bundler.request({\n method: 'eth_sendUserOperation',\n params: [op, entryPoint]\n });\n }\n\n static async getReceipt(bundler: any, hash: Hex) {\n return bundler.request({\n method: 'eth_getUserOperationReceipt',\n params: [hash]\n });\n }\n}\n","import { \n type Address, \n type Hex, \n type LocalAccount, \n type SignableMessage, \n type TypedDataDefinition,\n type Hash,\n concatHex, \n encodeFunctionData, \n keccak256,\n} from 'viem';\nimport { SimpleAccountFactoryABI, type PublicClient } from '@aastar/core';\nimport { getUserOpHash } from '../index.js';\n\nexport type SimpleSmartAccount = LocalAccount & {\n signUserOperation: (userOp: any) => Promise<Hex>;\n getInitCode: () => Promise<Hex>;\n getDummySignature: () => Promise<Hex>;\n entryPoint: Address;\n};\n\nexport async function toSimpleSmartAccount(parameters: {\n client: any;\n owner: LocalAccount;\n factoryAddress: Address;\n entryPoint: { address: Address; version: '0.6' | '0.7' };\n salt?: bigint;\n index?: bigint;\n}): Promise<SimpleSmartAccount> {\n const { client, owner, factoryAddress, entryPoint, index = 0n, salt = 0n } = parameters;\n \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\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\n return {\n address,\n publicKey: owner.address,\n source: 'custom', \n type: 'local',\n entryPoint: entryPoint.address,\n \n async signMessage({ message }: { message: SignableMessage }): Promise<Hex> {\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\n async signTypedData(typedData: TypedDataDefinition): Promise<Hex> {\n return owner.signTypedData(typedData);\n },\n\n async signTransaction(transaction: any): Promise<Hex> {\n throw new Error('Smart Accounts cannot sign transactions directly. Use UserOperations.');\n },\n \n async signUserOperation(userOp: any): Promise<Hex> {\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 \n async getInitCode() {\n return initCode;\n },\n\n async getDummySignature() {\n return '0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff';\n }\n\n } as any as SimpleSmartAccount;\n}\n"]}
@@ -44769,5 +44769,5 @@ exports.xPNTsFactoryArtifact = xPNTsFactoryArtifact;
44769
44769
  exports.xPNTsTokenABI = xPNTsTokenABI;
44770
44770
  exports.xPNTsTokenActions = xPNTsTokenActions;
44771
44771
  exports.xPNTsTokenArtifact = xPNTsTokenArtifact;
44772
- //# sourceMappingURL=chunk-MOJJ7QF6.cjs.map
44773
- //# sourceMappingURL=chunk-MOJJ7QF6.cjs.map
44772
+ //# sourceMappingURL=chunk-IB3KOSHW.cjs.map
44773
+ //# sourceMappingURL=chunk-IB3KOSHW.cjs.map