@aastar/sdk 0.16.11 → 0.16.14

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 (981) hide show
  1. package/README.md +100 -128
  2. package/dist/clients/ExperimentClient.d.ts +34 -0
  3. package/{packages/sdk/src/clients/ExperimentClient.ts → dist/clients/ExperimentClient.js} +11 -33
  4. package/dist/clients/ExperimentClient.test.d.ts +1 -0
  5. package/dist/clients/ExperimentClient.test.js +53 -0
  6. package/dist/clients/admin.d.ts +11 -0
  7. package/dist/clients/admin.js +20 -0
  8. package/dist/clients/admin.test.d.ts +1 -0
  9. package/dist/clients/admin.test.js +79 -0
  10. package/dist/clients/clients.test.d.ts +1 -0
  11. package/dist/clients/clients.test.js +91 -0
  12. package/dist/clients/community.d.ts +40 -0
  13. package/{packages/sdk/src/clients/community.ts → dist/clients/community.js} +86 -189
  14. package/dist/clients/community.test.d.ts +1 -0
  15. package/dist/clients/community.test.js +99 -0
  16. package/dist/clients/endUser.d.ts +77 -0
  17. package/dist/clients/endUser.js +298 -0
  18. package/dist/clients/endUser.test.d.ts +1 -0
  19. package/dist/clients/endUser.test.js +188 -0
  20. package/dist/clients/operator.d.ts +66 -0
  21. package/{packages/sdk/src/clients/operator.ts → dist/clients/operator.js} +66 -137
  22. package/dist/clients/operator.test.d.ts +1 -0
  23. package/dist/clients/operator.test.js +139 -0
  24. package/dist/core/src/abis/BLSAggregator.json +686 -0
  25. package/dist/core/src/abis/BLSValidator.json +42 -0
  26. package/dist/core/src/abis/DVTValidator.json +368 -0
  27. package/dist/core/src/abis/EntryPoint.json +1382 -0
  28. package/dist/core/src/abis/GToken.json +513 -0
  29. package/dist/core/src/abis/GTokenStaking.json +949 -0
  30. package/dist/core/src/abis/MySBT.json +1518 -0
  31. package/dist/core/src/abis/Paymaster.json +1143 -0
  32. package/dist/core/src/abis/PaymasterFactory.json +640 -0
  33. package/dist/core/src/abis/Registry.json +1942 -0
  34. package/dist/core/src/abis/ReputationSystem.json +699 -0
  35. package/dist/core/src/abis/SimpleAccount.json +560 -0
  36. package/dist/core/src/abis/SimpleAccountFactory.json +111 -0
  37. package/dist/core/src/abis/SuperPaymaster.json +1781 -0
  38. package/dist/core/src/abis/xPNTsFactory.json +718 -0
  39. package/dist/core/src/abis/xPNTsToken.json +1280 -0
  40. package/dist/errors/AAStarError.d.ts +26 -0
  41. package/dist/errors/AAStarError.js +32 -0
  42. package/dist/errors/AAStarError.test.d.ts +1 -0
  43. package/dist/errors/AAStarError.test.js +74 -0
  44. package/dist/errors/decoder.d.ts +6 -0
  45. package/{packages/sdk/src/errors/decoder.ts → dist/errors/decoder.js} +15 -19
  46. package/dist/errors/decoder.test.d.ts +1 -0
  47. package/dist/errors/decoder.test.js +90 -0
  48. package/dist/index.d.ts +18 -0
  49. package/{packages/sdk/src/index.ts → dist/index.js} +0 -3
  50. package/dist/node/index.d.ts +7 -0
  51. package/dist/node/index.js +7 -0
  52. package/dist/types/result.d.ts +15 -0
  53. package/dist/types/result.js +23 -0
  54. package/dist/utils/errorHandler.d.ts +40 -0
  55. package/{packages/sdk/src/utils/errorHandler.ts → dist/utils/errorHandler.js} +22 -75
  56. package/dist/utils/errorHandler.test.d.ts +1 -0
  57. package/dist/utils/errorHandler.test.js +89 -0
  58. package/dist/utils/eventDecoder.d.ts +7 -0
  59. package/dist/utils/eventDecoder.js +54 -0
  60. package/dist/utils/eventDecoder.test.d.ts +1 -0
  61. package/dist/utils/eventDecoder.test.js +48 -0
  62. package/dist/utils/funding.d.ts +115 -0
  63. package/{packages/sdk/src/utils/funding.ts → dist/utils/funding.js} +27 -119
  64. package/dist/utils/funding.test.d.ts +1 -0
  65. package/dist/utils/funding.test.js +105 -0
  66. package/dist/utils/keys.d.ts +61 -0
  67. package/{packages/sdk/src/utils/keys.ts → dist/utils/keys.js} +15 -44
  68. package/dist/utils/keys.test.d.ts +1 -0
  69. package/dist/utils/keys.test.js +81 -0
  70. package/dist/utils/roleData.d.ts +66 -0
  71. package/{packages/sdk/src/utils/roleData.ts → dist/utils/roleData.js} +34 -57
  72. package/dist/utils/roleData.test.d.ts +1 -0
  73. package/dist/utils/roleData.test.js +74 -0
  74. package/dist/utils/testScenarios.d.ts +33 -0
  75. package/dist/utils/testScenarios.js +85 -0
  76. package/dist/utils/testScenarios.test.d.ts +1 -0
  77. package/dist/utils/testScenarios.test.js +68 -0
  78. package/dist/utils/userOp.d.ts +78 -0
  79. package/{packages/sdk/src/utils/userOp.ts → dist/utils/userOp.js} +59 -126
  80. package/dist/utils/userOp.test.d.ts +1 -0
  81. package/dist/utils/userOp.test.js +152 -0
  82. package/package.json +25 -61
  83. package/.github/workflows/gas-analytics-daily.yml +0 -52
  84. package/.gitmodules +0 -9
  85. package/CHANGELOG.md +0 -43
  86. package/aastar-sdk.code-workspace +0 -14
  87. package/abis/BLSAggregator.json +0 -572
  88. package/abis/BLSValidator.json +0 -39
  89. package/abis/DVTValidator.json +0 -383
  90. package/abis/Eip7702Support.json +0 -24
  91. package/abis/EntryPoint.json +0 -1379
  92. package/abis/GToken.json +0 -510
  93. package/abis/GTokenStaking.json +0 -918
  94. package/abis/LegacyAccount.json +0 -625
  95. package/abis/MySBT.json +0 -1547
  96. package/abis/Paymaster.json +0 -1192
  97. package/abis/PaymasterFactory.json +0 -637
  98. package/abis/PaymasterV4_2.json +0 -1193
  99. package/abis/Registry.json +0 -1677
  100. package/abis/ReputationSystem.json +0 -659
  101. package/abis/SenderCreator.json +0 -99
  102. package/abis/Simple7702Account.json +0 -395
  103. package/abis/SimpleAccount.json +0 -625
  104. package/abis/SimpleAccountFactory.json +0 -108
  105. package/abis/SimpleAccountFactoryV08.json +0 -87
  106. package/abis/SimpleAccountV08.json +0 -557
  107. package/abis/SuperPaymaster.json +0 -1568
  108. package/abis/UserOperationLib.json +0 -57
  109. package/abis/aPNTs.json +0 -1160
  110. package/abis/xPNTsFactory.json +0 -715
  111. package/abis/xPNTsToken.json +0 -1160
  112. package/backup/run_sdk_regression.sh +0 -135
  113. package/config/networks/README.md +0 -54
  114. package/config/networks/mainnet.env.example +0 -39
  115. package/config/networks/optimism-sepolia.env.example +0 -35
  116. package/config/networks/optimism.env.example +0 -36
  117. package/config/networks/sepolia.env.example +0 -36
  118. package/config.anvil.json +0 -1
  119. package/config.sepolia.json +0 -19
  120. package/config.test.json +0 -27
  121. package/data/experiment_data.csv +0 -36
  122. package/data/industry_baseline_2025-12-23.json +0 -154
  123. package/data/industry_baseline_latest.json +0 -154
  124. package/docs/ABI_MAINTENANCE_PLAN.md +0 -132
  125. package/docs/API_REFERENCE.md +0 -796
  126. package/docs/Configuration_Sync.md +0 -47
  127. package/docs/DAO_Mining_Distribution_Plan.md +0 -522
  128. package/docs/DEMO_REFACTOR_PLAN.md +0 -289
  129. package/docs/DOCUMENTATION_PLAN.md +0 -455
  130. package/docs/ENV_SEPOLIA_UPDATE.md +0 -68
  131. package/docs/L2_BUSINESS_CLIENTS_PLAN.md +0 -394
  132. package/docs/L4_Manual_Test_CheatSheet.md +0 -172
  133. package/docs/Plan.md +0 -266
  134. package/docs/Regression_Testing_Guide.md +0 -70
  135. package/docs/Reputation-to-Credit_Mapping_Whitepaper.md +0 -242
  136. package/docs/SDK_ABI_COVERAGE.md +0 -839
  137. package/docs/SDK_COVERAGE_STRATEGY.md +0 -397
  138. package/docs/SDK_Optimization_Evaluation_Plan.md +0 -51
  139. package/docs/SDK_REGRESSION_AND_API_PLAN.md +0 -98
  140. package/docs/SDK_STAGE3_PLAN.md +0 -151
  141. package/docs/SEPOLIA_ENV_REFERENCE.md +0 -51
  142. package/docs/STAGE3.md +0 -191
  143. package/docs/Script_Comparison_Report.md +0 -91
  144. package/docs/Sepolia_Latest_Deployment.md +0 -117
  145. package/docs/TESTER_GUIDE_GASLESS.md +0 -409
  146. package/docs/TEST_COVERAGE_MATRIX.md +0 -72
  147. package/docs/TODO_SDK_COVERAGE.md +0 -55
  148. package/docs/USER_CASE_DESIGN.md +0 -110
  149. package/docs/Verifier_L4_Gasless_Plan.md +0 -454
  150. package/docs/api/@aastar/account/README.md +0 -15
  151. package/docs/api/@aastar/account/classes/UserOpClient.md +0 -87
  152. package/docs/api/@aastar/account/functions/createEOAWalletClient.md +0 -21
  153. package/docs/api/@aastar/account/functions/getUserOpHash.md +0 -23
  154. package/docs/api/@aastar/account/functions/packUserOpLimits.md +0 -19
  155. package/docs/api/@aastar/account/functions/toSimpleSmartAccount.md +0 -83
  156. package/docs/api/@aastar/account/type-aliases/EOAWalletClient.md +0 -37
  157. package/docs/api/@aastar/account/type-aliases/SimpleSmartAccount.md +0 -39
  158. package/docs/api/@aastar/core/README.md +0 -211
  159. package/docs/api/@aastar/core/classes/BLSSigner.md +0 -147
  160. package/docs/api/@aastar/core/classes/BaseClient.md +0 -9657
  161. package/docs/api/@aastar/core/classes/ContractConfigManager.md +0 -25
  162. package/docs/api/@aastar/core/classes/RequirementChecker.md +0 -1837
  163. package/docs/api/@aastar/core/classes/SepoliaFaucetAPI.md +0 -13661
  164. package/docs/api/@aastar/core/classes/StateValidator.md +0 -133
  165. package/docs/api/@aastar/core/enumerations/EntryPointVersion.md +0 -17
  166. package/docs/api/@aastar/core/enumerations/NodeType.md +0 -33
  167. package/docs/api/@aastar/core/enumerations/RolePermissionLevel.md +0 -43
  168. package/docs/api/@aastar/core/functions/accountActions.md +0 -2720
  169. package/docs/api/@aastar/core/functions/accountFactoryActions.md +0 -2720
  170. package/docs/api/@aastar/core/functions/aggregatorActions.md +0 -2720
  171. package/docs/api/@aastar/core/functions/createAAStarPublicClient.md +0 -3105
  172. package/docs/api/@aastar/core/functions/dvtActions.md +0 -2720
  173. package/docs/api/@aastar/core/functions/entryPointActions.md +0 -2724
  174. package/docs/api/@aastar/core/functions/gTokenActions.md +0 -2714
  175. package/docs/api/@aastar/core/functions/gTokenExtendedActions.md +0 -2720
  176. package/docs/api/@aastar/core/functions/getAddressUrl.md +0 -32
  177. package/docs/api/@aastar/core/functions/getAllCommunityConfigs.md +0 -9
  178. package/docs/api/@aastar/core/functions/getAllV2Contracts.md +0 -20
  179. package/docs/api/@aastar/core/functions/getBlockExplorer.md +0 -26
  180. package/docs/api/@aastar/core/functions/getChainId.md +0 -26
  181. package/docs/api/@aastar/core/functions/getCommunities.md +0 -76
  182. package/docs/api/@aastar/core/functions/getCommunity.md +0 -32
  183. package/docs/api/@aastar/core/functions/getCommunityConfig.md +0 -15
  184. package/docs/api/@aastar/core/functions/getContract.md +0 -37
  185. package/docs/api/@aastar/core/functions/getContractNetworks.md +0 -18
  186. package/docs/api/@aastar/core/functions/getContracts.md +0 -194
  187. package/docs/api/@aastar/core/functions/getCoreContracts.md +0 -71
  188. package/docs/api/@aastar/core/functions/getDeploymentDate.md +0 -32
  189. package/docs/api/@aastar/core/functions/getEntryPoint.md +0 -25
  190. package/docs/api/@aastar/core/functions/getNetwork.md +0 -26
  191. package/docs/api/@aastar/core/functions/getPaymasterV4_1.md +0 -25
  192. package/docs/api/@aastar/core/functions/getRoleName.md +0 -15
  193. package/docs/api/@aastar/core/functions/getRpcUrl.md +0 -25
  194. package/docs/api/@aastar/core/functions/getSimpleAccountFactory.md +0 -25
  195. package/docs/api/@aastar/core/functions/getSuperPaymasterV2.md +0 -25
  196. package/docs/api/@aastar/core/functions/getTestAccounts.md +0 -30
  197. package/docs/api/@aastar/core/functions/getTestTokenContracts.md +0 -38
  198. package/docs/api/@aastar/core/functions/getTokenContracts.md +0 -31
  199. package/docs/api/@aastar/core/functions/getTxUrl.md +0 -32
  200. package/docs/api/@aastar/core/functions/getV2ContractByAddress.md +0 -28
  201. package/docs/api/@aastar/core/functions/getV2ContractByName.md +0 -28
  202. package/docs/api/@aastar/core/functions/getV2ContractsByDate.md +0 -26
  203. package/docs/api/@aastar/core/functions/isContractNetworkSupported.md +0 -27
  204. package/docs/api/@aastar/core/functions/isRegisteredCommunity.md +0 -15
  205. package/docs/api/@aastar/core/functions/isV2Contract.md +0 -27
  206. package/docs/api/@aastar/core/functions/paymasterActions.md +0 -2720
  207. package/docs/api/@aastar/core/functions/paymasterFactoryActions.md +0 -2720
  208. package/docs/api/@aastar/core/functions/registryActions.md +0 -2720
  209. package/docs/api/@aastar/core/functions/reputationActions.md +0 -2720
  210. package/docs/api/@aastar/core/functions/sbtActions.md +0 -2720
  211. package/docs/api/@aastar/core/functions/stakingActions.md +0 -2720
  212. package/docs/api/@aastar/core/functions/superPaymasterActions.md +0 -2720
  213. package/docs/api/@aastar/core/functions/tokenActions.md +0 -2714
  214. package/docs/api/@aastar/core/functions/xPNTsFactoryActions.md +0 -2720
  215. package/docs/api/@aastar/core/interfaces/AccountBalance.md +0 -41
  216. package/docs/api/@aastar/core/interfaces/BalanceValidationParams.md +0 -51
  217. package/docs/api/@aastar/core/interfaces/ClientConfig.md +0 -4841
  218. package/docs/api/@aastar/core/interfaces/CommunityConfig.md +0 -81
  219. package/docs/api/@aastar/core/interfaces/ContractVersion.md +0 -63
  220. package/docs/api/@aastar/core/interfaces/DeploymentValidationParams.md +0 -39
  221. package/docs/api/@aastar/core/interfaces/RoleConfig.md +0 -83
  222. package/docs/api/@aastar/core/interfaces/RoleRequirement.md +0 -43
  223. package/docs/api/@aastar/core/interfaces/RoleValidationParams.md +0 -55
  224. package/docs/api/@aastar/core/interfaces/SuperPaymasterConfig.md +0 -57
  225. package/docs/api/@aastar/core/interfaces/TokenBalanceValidationParams.md +0 -63
  226. package/docs/api/@aastar/core/interfaces/TransactionOptions.md +0 -24
  227. package/docs/api/@aastar/core/interfaces/ValidationParams.md +0 -25
  228. package/docs/api/@aastar/core/interfaces/ValidationResult.md +0 -25
  229. package/docs/api/@aastar/core/type-aliases/AccountActions.md +0 -151
  230. package/docs/api/@aastar/core/type-aliases/AccountFactoryActions.md +0 -55
  231. package/docs/api/@aastar/core/type-aliases/AggregatorActions.md +0 -471
  232. package/docs/api/@aastar/core/type-aliases/BusinessResult.md +0 -12
  233. package/docs/api/@aastar/core/type-aliases/ContractCategory.md +0 -5
  234. package/docs/api/@aastar/core/type-aliases/ContractNetwork.md +0 -5
  235. package/docs/api/@aastar/core/type-aliases/DVTActions.md +0 -319
  236. package/docs/api/@aastar/core/type-aliases/EntryPointActions.md +0 -103
  237. package/docs/api/@aastar/core/type-aliases/GTokenExtendedActions.md +0 -239
  238. package/docs/api/@aastar/core/type-aliases/NetworkContracts.md +0 -5
  239. package/docs/api/@aastar/core/type-aliases/PaymasterActions.md +0 -1087
  240. package/docs/api/@aastar/core/type-aliases/PaymasterFactoryActions.md +0 -263
  241. package/docs/api/@aastar/core/type-aliases/RegistryActions.md +0 -1543
  242. package/docs/api/@aastar/core/type-aliases/ReputationActions.md +0 -811
  243. package/docs/api/@aastar/core/type-aliases/SBTActions.md +0 -1199
  244. package/docs/api/@aastar/core/type-aliases/StakingActions.md +0 -703
  245. package/docs/api/@aastar/core/type-aliases/SuperPaymasterActions.md +0 -1311
  246. package/docs/api/@aastar/core/type-aliases/SupportedNetwork.md +0 -3
  247. package/docs/api/@aastar/core/type-aliases/TokenActions.md +0 -1227
  248. package/docs/api/@aastar/core/type-aliases/XPNTsFactoryActions.md +0 -395
  249. package/docs/api/@aastar/core/variables/AASTAR_COMMUNITY.md +0 -8
  250. package/docs/api/@aastar/core/variables/ALL_ADDRESSES.md +0 -75
  251. package/docs/api/@aastar/core/variables/ALL_ROLES.md +0 -5
  252. package/docs/api/@aastar/core/variables/APNTS_ADDRESS.md +0 -3
  253. package/docs/api/@aastar/core/variables/BLSAggregatorABI.md +0 -3
  254. package/docs/api/@aastar/core/variables/BLSAggregatorArtifact.md +0 -13
  255. package/docs/api/@aastar/core/variables/BLSHelpers.md +0 -101
  256. package/docs/api/@aastar/core/variables/BLSValidatorABI.md +0 -3
  257. package/docs/api/@aastar/core/variables/BLSValidatorArtifact.md +0 -13
  258. package/docs/api/@aastar/core/variables/BLS_AGGREGATOR_ADDRESS.md +0 -3
  259. package/docs/api/@aastar/core/variables/BLS_VALIDATOR_ADDRESS.md +0 -3
  260. package/docs/api/@aastar/core/variables/BPS_DENOMINATOR.md +0 -5
  261. package/docs/api/@aastar/core/variables/BRANDING.md +0 -67
  262. package/docs/api/@aastar/core/variables/BREAD_COMMUNITY.md +0 -8
  263. package/docs/api/@aastar/core/variables/CHAIN_MAINNET.md +0 -3
  264. package/docs/api/@aastar/core/variables/CHAIN_SEPOLIA.md +0 -5
  265. package/docs/api/@aastar/core/variables/COMMUNITIES.md +0 -5
  266. package/docs/api/@aastar/core/variables/COMMUNITY_OWNERS.md +0 -15
  267. package/docs/api/@aastar/core/variables/CONTRACTS.md +0 -179
  268. package/docs/api/@aastar/core/variables/CONTRACT_METADATA.md +0 -67
  269. package/docs/api/@aastar/core/variables/CONTRACT_SRC_HASH.md +0 -5
  270. package/docs/api/@aastar/core/variables/CORE_ADDRESSES.md +0 -51
  271. package/docs/api/@aastar/core/variables/DEFAULT_ADMIN_ROLE.md +0 -17
  272. package/docs/api/@aastar/core/variables/DEFAULT_APNTS_PRICE_USD.md +0 -5
  273. package/docs/api/@aastar/core/variables/DEFAULT_CALL_GAS_LIMIT.md +0 -3
  274. package/docs/api/@aastar/core/variables/DEFAULT_GAS_TOKEN_MINT_AMOUNT.md +0 -5
  275. package/docs/api/@aastar/core/variables/DEFAULT_PRE_VERIFICATION_GAS.md +0 -3
  276. package/docs/api/@aastar/core/variables/DEFAULT_TIMEOUT_MS.md +0 -5
  277. package/docs/api/@aastar/core/variables/DEFAULT_TOKEN_NAME.md +0 -3
  278. package/docs/api/@aastar/core/variables/DEFAULT_TOKEN_SYMBOL.md +0 -5
  279. package/docs/api/@aastar/core/variables/DEFAULT_USDT_MINT_AMOUNT.md +0 -5
  280. package/docs/api/@aastar/core/variables/DEFAULT_VERIFICATION_GAS_LIMIT.md +0 -5
  281. package/docs/api/@aastar/core/variables/DVTValidatorABI.md +0 -3
  282. package/docs/api/@aastar/core/variables/DVTValidatorArtifact.md +0 -13
  283. package/docs/api/@aastar/core/variables/DVT_VALIDATOR_ADDRESS.md +0 -3
  284. package/docs/api/@aastar/core/variables/ENTRY_POINT_0_8_ADDRESS.md +0 -3
  285. package/docs/api/@aastar/core/variables/ENTRY_POINT_0_9_ADDRESS.md +0 -3
  286. package/docs/api/@aastar/core/variables/ENTRY_POINT_ADDRESS.md +0 -3
  287. package/docs/api/@aastar/core/variables/EntryPointABI.md +0 -3
  288. package/docs/api/@aastar/core/variables/EntryPointArtifact.md +0 -13
  289. package/docs/api/@aastar/core/variables/FAUCET_API_URL.md +0 -5
  290. package/docs/api/@aastar/core/variables/GTOKEN_ADDRESS.md +0 -3
  291. package/docs/api/@aastar/core/variables/GTOKEN_STAKING_ADDRESS.md +0 -3
  292. package/docs/api/@aastar/core/variables/GTokenABI.md +0 -3
  293. package/docs/api/@aastar/core/variables/GTokenArtifact.md +0 -13
  294. package/docs/api/@aastar/core/variables/GTokenStakingABI.md +0 -3
  295. package/docs/api/@aastar/core/variables/GTokenStakingArtifact.md +0 -13
  296. package/docs/api/@aastar/core/variables/INITIAL_ROLE_STAKES.md +0 -13
  297. package/docs/api/@aastar/core/variables/LINKS.md +0 -33
  298. package/docs/api/@aastar/core/variables/MAX_SERVICE_FEE.md +0 -5
  299. package/docs/api/@aastar/core/variables/MONITORING_ADDRESSES.md +0 -15
  300. package/docs/api/@aastar/core/variables/MySBTABI.md +0 -3
  301. package/docs/api/@aastar/core/variables/MySBTArtifact.md +0 -13
  302. package/docs/api/@aastar/core/variables/NETWORKS.md +0 -79
  303. package/docs/api/@aastar/core/variables/NODE_STAKE_AMOUNTS.md +0 -31
  304. package/docs/api/@aastar/core/variables/OFFICIAL_ADDRESSES.md +0 -11
  305. package/docs/api/@aastar/core/variables/PAYMASTER_ADDRESSES.md +0 -15
  306. package/docs/api/@aastar/core/variables/PAYMASTER_FACTORY_ADDRESS.md +0 -3
  307. package/docs/api/@aastar/core/variables/PAYMASTER_V4_IMPL_ADDRESS.md +0 -3
  308. package/docs/api/@aastar/core/variables/PaymasterABI.md +0 -3
  309. package/docs/api/@aastar/core/variables/PaymasterArtifact.md +0 -13
  310. package/docs/api/@aastar/core/variables/PaymasterFactoryABI.md +0 -3
  311. package/docs/api/@aastar/core/variables/PaymasterFactoryArtifact.md +0 -13
  312. package/docs/api/@aastar/core/variables/PaymasterV4ABI.md +0 -3
  313. package/docs/api/@aastar/core/variables/PaymasterV4Artifact.md +0 -13
  314. package/docs/api/@aastar/core/variables/REGISTRY_ADDRESS.md +0 -3
  315. package/docs/api/@aastar/core/variables/REPUTATION_SYSTEM_ADDRESS.md +0 -3
  316. package/docs/api/@aastar/core/variables/ROLE_ANODE.md +0 -29
  317. package/docs/api/@aastar/core/variables/ROLE_COMMUNITY.md +0 -29
  318. package/docs/api/@aastar/core/variables/ROLE_DVT.md +0 -29
  319. package/docs/api/@aastar/core/variables/ROLE_ENDUSER.md +0 -33
  320. package/docs/api/@aastar/core/variables/ROLE_KMS.md +0 -29
  321. package/docs/api/@aastar/core/variables/ROLE_NAMES.md +0 -3
  322. package/docs/api/@aastar/core/variables/ROLE_PAYMASTER_AOA.md +0 -29
  323. package/docs/api/@aastar/core/variables/ROLE_PAYMASTER_SUPER.md +0 -33
  324. package/docs/api/@aastar/core/variables/ROLE_PERMISSION_LEVELS.md +0 -3
  325. package/docs/api/@aastar/core/variables/RegistryABI.md +0 -3
  326. package/docs/api/@aastar/core/variables/RegistryArtifact.md +0 -13
  327. package/docs/api/@aastar/core/variables/ReputationSystemABI.md +0 -3
  328. package/docs/api/@aastar/core/variables/ReputationSystemArtifact.md +0 -13
  329. package/docs/api/@aastar/core/variables/SBT_ADDRESS.md +0 -3
  330. package/docs/api/@aastar/core/variables/SEPOLIA_CONTRACTS.md +0 -175
  331. package/docs/api/@aastar/core/variables/SEPOLIA_V2_VERSIONS.md +0 -67
  332. package/docs/api/@aastar/core/variables/SERVICE_FEE_RATE.md +0 -5
  333. package/docs/api/@aastar/core/variables/SUPER_PAYMASTER_ADDRESS.md +0 -3
  334. package/docs/api/@aastar/core/variables/SimpleAccountABI.md +0 -3
  335. package/docs/api/@aastar/core/variables/SimpleAccountArtifact.md +0 -13
  336. package/docs/api/@aastar/core/variables/SimpleAccountFactoryABI.md +0 -3
  337. package/docs/api/@aastar/core/variables/SimpleAccountFactoryArtifact.md +0 -13
  338. package/docs/api/@aastar/core/variables/SuperPaymasterABI.md +0 -3
  339. package/docs/api/@aastar/core/variables/SuperPaymasterArtifact.md +0 -13
  340. package/docs/api/@aastar/core/variables/TEST_ACCOUNT_ADDRESSES.md +0 -11
  341. package/docs/api/@aastar/core/variables/TEST_ACCOUNT_POOL_SIZE.md +0 -5
  342. package/docs/api/@aastar/core/variables/TEST_COMMUNITIES.md +0 -19
  343. package/docs/api/@aastar/core/variables/TEST_TOKEN_ADDRESSES.md +0 -19
  344. package/docs/api/@aastar/core/variables/TOKEN_ADDRESSES.md +0 -11
  345. package/docs/api/@aastar/core/variables/V2_SUMMARY.md +0 -39
  346. package/docs/api/@aastar/core/variables/XPNTS_FACTORY_ADDRESS.md +0 -3
  347. package/docs/api/@aastar/core/variables/xPNTsFactoryABI.md +0 -3
  348. package/docs/api/@aastar/core/variables/xPNTsFactoryArtifact.md +0 -13
  349. package/docs/api/@aastar/core/variables/xPNTsTokenABI.md +0 -3
  350. package/docs/api/@aastar/core/variables/xPNTsTokenArtifact.md +0 -13
  351. package/docs/api/@aastar/paymaster/README.md +0 -23
  352. package/docs/api/@aastar/paymaster/classes/PaymasterClient.md +0 -388
  353. package/docs/api/@aastar/paymaster/classes/PaymasterOperator.md +0 -451
  354. package/docs/api/@aastar/paymaster/classes/SuperPaymasterAdminClient.md +0 -189
  355. package/docs/api/@aastar/paymaster/classes/SuperPaymasterClient.md +0 -55
  356. package/docs/api/@aastar/paymaster/functions/buildPaymasterData.md +0 -34
  357. package/docs/api/@aastar/paymaster/functions/buildSuperPaymasterData.md +0 -30
  358. package/docs/api/@aastar/paymaster/functions/checkEligibility.md +0 -28
  359. package/docs/api/@aastar/paymaster/functions/formatUserOpV07.md +0 -15
  360. package/docs/api/@aastar/paymaster/functions/getPaymasterV4Middleware.md +0 -32
  361. package/docs/api/@aastar/paymaster/functions/getSuperPaymasterMiddleware.md +0 -32
  362. package/docs/api/@aastar/paymaster/functions/getUserOpHashV07.md +0 -21
  363. package/docs/api/@aastar/paymaster/type-aliases/GaslessReadinessReport.md +0 -55
  364. package/docs/api/@aastar/paymaster/type-aliases/GaslessTransactionConfig.md +0 -59
  365. package/docs/api/@aastar/paymaster/type-aliases/PaymasterConfig.md +0 -43
  366. package/docs/api/@aastar/paymaster/type-aliases/PaymasterV4MiddlewareConfig.md +0 -35
  367. package/docs/api/@aastar/tokens/README.md +0 -3
  368. package/docs/api/@aastar/tokens/classes/FinanceClient.md +0 -10385
  369. package/docs/api/README.md +0 -6
  370. package/docs/examples/community-flow.md +0 -28
  371. package/docs/examples/enduser-flow.md +0 -24
  372. package/docs/examples/index.md +0 -18
  373. package/docs/examples/multi-chain.md +0 -31
  374. package/docs/examples/operator-flow.md +0 -28
  375. package/docs/guide/CLI_GUIDE.md +0 -65
  376. package/docs/guide/DOCUMENTATION_PLAN.md +0 -455
  377. package/docs/guide/Security-solution.md +0 -106
  378. package/docs/guide/TEST_COMMANDS.md +0 -320
  379. package/docs/guide/getting-started.md +0 -133
  380. package/docs/guide/installation.md +0 -40
  381. package/docs/guide/paper-data-collection.md +0 -69
  382. package/docs/guide/quick-start.md +0 -52
  383. package/docs/guide/task_breakdown.md +0 -121
  384. package/docs/old-solution.md +0 -1078
  385. package/docs/paper-data-collection.md +0 -69
  386. package/docs/technical_plan.md +0 -510
  387. package/docs/zh/examples/community-flow.md +0 -38
  388. package/docs/zh/examples/complete-workflow.md +0 -10
  389. package/docs/zh/examples/enduser-flow.md +0 -33
  390. package/docs/zh/examples/index.md +0 -18
  391. package/docs/zh/examples/multi-chain.md +0 -46
  392. package/docs/zh/examples/operator-flow.md +0 -37
  393. package/docs/zh/guide/CLI_GUIDE.md +0 -48
  394. package/docs/zh/guide/DOCUMENTATION_PLAN.md +0 -455
  395. package/docs/zh/guide/Plan.md +0 -266
  396. package/docs/zh/guide/SDK_Optimization_Evaluation_Plan.md +0 -51
  397. package/docs/zh/guide/Security-solution.md +0 -106
  398. package/docs/zh/guide/TEST_COMMANDS.md +0 -125
  399. package/docs/zh/guide/TEST_COVERAGE_MATRIX.md +0 -72
  400. package/docs/zh/guide/concepts/account-abstraction.md +0 -95
  401. package/docs/zh/guide/concepts/rainbow-bridge.md +0 -68
  402. package/docs/zh/guide/concepts/reputation.md +0 -95
  403. package/docs/zh/guide/concepts/superpaymaster.md +0 -141
  404. package/docs/zh/guide/getting-started.md +0 -133
  405. package/docs/zh/guide/installation.md +0 -107
  406. package/docs/zh/guide/old-solution.md +0 -1078
  407. package/docs/zh/guide/paper-data-collection.md +0 -69
  408. package/docs/zh/guide/quick-start.md +0 -134
  409. package/docs/zh/guide/sdk-readme.md +0 -253
  410. package/docs/zh/guide/task_breakdown.md +0 -76
  411. package/docs/zh/guide/technical_plan.md +0 -510
  412. package/docs/zh/guide/use-cases/community-management.md +0 -141
  413. package/docs/zh/guide/use-cases/gasless-transactions.md +0 -71
  414. package/docs/zh/guide/use-cases/operator-staking.md +0 -84
  415. package/docs/zh/guide/use-cases/yop.md +0 -72
  416. package/env.template +0 -30
  417. package/examples/l1-api-demo.ts +0 -273
  418. package/examples/l2-clients-demo.ts +0 -135
  419. package/examples/l3-community-launch.ts +0 -49
  420. package/examples/l3-user-onboarding.ts +0 -56
  421. package/examples/prepare-gasless.ts +0 -89
  422. package/examples/sdk-demo/DEVELOPER_GUIDE.md +0 -159
  423. package/examples/sdk-demo/README.md +0 -30
  424. package/examples/sdk-demo/usage.ts +0 -137
  425. package/examples/simple-gasless-demo.ts +0 -109
  426. package/examples/simple-superpaymaster-demo.ts +0 -96
  427. package/ext/aastar-shared-config/.env.example +0 -6
  428. package/ext/aastar-shared-config/.github/workflows/check-secrets.yml +0 -257
  429. package/ext/aastar-shared-config/AGENTS.md +0 -21
  430. package/ext/aastar-shared-config/CHANGELOG.md +0 -99
  431. package/ext/aastar-shared-config/LICENSE +0 -21
  432. package/ext/aastar-shared-config/QUICK_START.md +0 -215
  433. package/ext/aastar-shared-config/README.md +0 -412
  434. package/ext/aastar-shared-config/SHARED_CONFIG_SUMMARY.md +0 -273
  435. package/ext/aastar-shared-config/check-locker-status.mjs +0 -7
  436. package/ext/aastar-shared-config/favicon.ico +0 -0
  437. package/ext/aastar-shared-config/generate-comparison-table.sh +0 -67
  438. package/ext/aastar-shared-config/package.json +0 -46
  439. package/ext/aastar-shared-config/pnpm-lock.yaml +0 -1182
  440. package/ext/aastar-shared-config/src/abis/BLSAggregator.json +0 -1
  441. package/ext/aastar-shared-config/src/abis/DVTValidator.json +0 -1
  442. package/ext/aastar-shared-config/src/abis/GToken.json +0 -1
  443. package/ext/aastar-shared-config/src/abis/GTokenStaking.json +0 -1
  444. package/ext/aastar-shared-config/src/abis/MySBT.json +0 -1
  445. package/ext/aastar-shared-config/src/abis/PaymasterFactory.json +0 -1
  446. package/ext/aastar-shared-config/src/abis/PaymasterV4.json +0 -1098
  447. package/ext/aastar-shared-config/src/abis/Registry.json +0 -1
  448. package/ext/aastar-shared-config/src/abis/SimpleAccount.json +0 -557
  449. package/ext/aastar-shared-config/src/abis/SimpleAccountFactory.json +0 -87
  450. package/ext/aastar-shared-config/src/abis/SuperPaymasterV2.json +0 -1
  451. package/ext/aastar-shared-config/src/abis/index.ts +0 -45
  452. package/ext/aastar-shared-config/src/abis/xPNTsFactory.json +0 -1
  453. package/ext/aastar-shared-config/src/abis/xPNTsToken.json +0 -1
  454. package/ext/aastar-shared-config/src/branding.ts +0 -32
  455. package/ext/aastar-shared-config/src/communities.ts +0 -93
  456. package/ext/aastar-shared-config/src/constants.ts +0 -67
  457. package/ext/aastar-shared-config/src/contract-addresses.ts +0 -95
  458. package/ext/aastar-shared-config/src/contract-versions.ts +0 -374
  459. package/ext/aastar-shared-config/src/contracts.ts +0 -414
  460. package/ext/aastar-shared-config/src/index.ts +0 -14
  461. package/ext/aastar-shared-config/src/networks.ts +0 -117
  462. package/ext/aastar-shared-config/sync-abis.sh +0 -92
  463. package/ext/aastar-shared-config/sync-versions.mjs +0 -150
  464. package/ext/aastar-shared-config/tsconfig.json +0 -18
  465. package/ext/aastar-shared-config/tsup.config.ts +0 -10
  466. package/ext/aastar-shared-config/verify-all.sh +0 -207
  467. package/ext/aastar-shared-config/verify-contracts.sh +0 -85
  468. package/ext/aastar-shared-config/verify-mysbt-v243.mjs +0 -27
  469. package/ext/aastar-shared-config/verify-onchain-versions.mjs +0 -93
  470. package/l4-setup.sh +0 -1
  471. package/lib/SHARED_CONFIG_REFERENCE.md +0 -133
  472. package/lib/shared-config/.env.example +0 -6
  473. package/lib/shared-config/.github/workflows/check-secrets.yml +0 -257
  474. package/lib/shared-config/AGENTS.md +0 -21
  475. package/lib/shared-config/CHANGELOG.md +0 -99
  476. package/lib/shared-config/LICENSE +0 -21
  477. package/lib/shared-config/QUICK_START.md +0 -215
  478. package/lib/shared-config/README.md +0 -412
  479. package/lib/shared-config/SHARED_CONFIG_SUMMARY.md +0 -273
  480. package/lib/shared-config/check-locker-status.mjs +0 -7
  481. package/lib/shared-config/favicon.ico +0 -0
  482. package/lib/shared-config/generate-comparison-table.sh +0 -67
  483. package/lib/shared-config/package.json +0 -46
  484. package/lib/shared-config/pnpm-lock.yaml +0 -1182
  485. package/lib/shared-config/src/abis/BLSAggregator.json +0 -1
  486. package/lib/shared-config/src/abis/DVTValidator.json +0 -1
  487. package/lib/shared-config/src/abis/GToken.json +0 -1
  488. package/lib/shared-config/src/abis/GTokenStaking.json +0 -1
  489. package/lib/shared-config/src/abis/MySBT.json +0 -1
  490. package/lib/shared-config/src/abis/PaymasterFactory.json +0 -1
  491. package/lib/shared-config/src/abis/PaymasterV4.json +0 -1098
  492. package/lib/shared-config/src/abis/Registry.json +0 -1
  493. package/lib/shared-config/src/abis/SimpleAccount.json +0 -557
  494. package/lib/shared-config/src/abis/SimpleAccountFactory.json +0 -87
  495. package/lib/shared-config/src/abis/SuperPaymasterV2.json +0 -1
  496. package/lib/shared-config/src/abis/index.ts +0 -45
  497. package/lib/shared-config/src/abis/xPNTsFactory.json +0 -1
  498. package/lib/shared-config/src/abis/xPNTsToken.json +0 -1
  499. package/lib/shared-config/src/branding.ts +0 -32
  500. package/lib/shared-config/src/communities.ts +0 -93
  501. package/lib/shared-config/src/constants.ts +0 -67
  502. package/lib/shared-config/src/contract-addresses.ts +0 -95
  503. package/lib/shared-config/src/contract-versions.ts +0 -374
  504. package/lib/shared-config/src/contracts.ts +0 -414
  505. package/lib/shared-config/src/index.ts +0 -14
  506. package/lib/shared-config/src/networks.ts +0 -117
  507. package/lib/shared-config/sync-abis.sh +0 -92
  508. package/lib/shared-config/sync-versions.mjs +0 -150
  509. package/lib/shared-config/tsconfig.json +0 -18
  510. package/lib/shared-config/tsup.config.ts +0 -10
  511. package/lib/shared-config/verify-all.sh +0 -207
  512. package/lib/shared-config/verify-contracts.sh +0 -85
  513. package/lib/shared-config/verify-mysbt-v243.mjs +0 -27
  514. package/lib/shared-config/verify-onchain-versions.mjs +0 -93
  515. package/packages/account/__tests__/index.test.ts +0 -9
  516. package/packages/account/node_modules/.bin/tsc +0 -21
  517. package/packages/account/node_modules/.bin/tsserver +0 -21
  518. package/packages/account/node_modules/.vite/vitest/da39a3ee5e6b4b0d3255bfef95601890afd80709/results.json +0 -1
  519. package/packages/account/package.json +0 -21
  520. package/packages/account/src/accounts/simple.ts +0 -84
  521. package/packages/account/src/eoa.ts +0 -31
  522. package/packages/account/src/index.ts +0 -61
  523. package/packages/account/tsconfig.json +0 -12
  524. package/packages/analytics/README.md +0 -68
  525. package/packages/analytics/__tests__/index.test.ts +0 -25
  526. package/packages/analytics/data/attribution_dataset.csv +0 -29
  527. package/packages/analytics/data/complete_dataset.csv +0 -29
  528. package/packages/analytics/data/eth_price_cache.json +0 -4
  529. package/packages/analytics/data/full_dataset.csv +0 -11
  530. package/packages/analytics/data/full_dataset.json +0 -134
  531. package/packages/analytics/data/parsed_transactions.csv +0 -29
  532. package/packages/analytics/node_modules/.bin/tsc +0 -21
  533. package/packages/analytics/node_modules/.bin/tsserver +0 -21
  534. package/packages/analytics/node_modules/.vite/vitest/da39a3ee5e6b4b0d3255bfef95601890afd80709/results.json +0 -1
  535. package/packages/analytics/package.json +0 -25
  536. package/packages/analytics/reports/full/attribution_analysis_20260119.md +0 -42
  537. package/packages/analytics/reports/full/attribution_analysis_fresh_20260119.md +0 -67
  538. package/packages/analytics/reports/full/competitive_analysis_20260119.md +0 -103
  539. package/packages/analytics/reports/full/comprehensive_analysis_20260119.md +0 -107
  540. package/packages/analytics/reports/full/comprehensive_analysis_v4_1_20260119.md +0 -74
  541. package/packages/analytics/reports/full/economic_audit_v4_2_20260119.md +0 -74
  542. package/packages/analytics/reports/full/profit_audit_v4_3_20260119.md +0 -74
  543. package/packages/analytics/reports/full/profit_audit_v4_4_20260119.md +0 -74
  544. package/packages/analytics/reports/full/profit_audit_v4_5_20260119.md +0 -74
  545. package/packages/analytics/reports/full/profit_audit_v4_6_20260119.md +0 -74
  546. package/packages/analytics/reports/full/profit_audit_v4_final_20260119.md +0 -74
  547. package/packages/analytics/reports/full/profit_audit_v4_final_v2_20260119.md +0 -74
  548. package/packages/analytics/reports/full/profit_audit_v4_final_v3_20260119.md +0 -74
  549. package/packages/analytics/reports/full/profit_audit_v4_final_v4_20260119.md +0 -75
  550. package/packages/analytics/reports/full/profit_audit_v4_final_v5_20260119.md +0 -76
  551. package/packages/analytics/reports/full/two_layer_analysis_20260119.md +0 -81
  552. package/packages/analytics/reports/full/two_layer_analysis_academic_20260119.md +0 -81
  553. package/packages/analytics/reports/full/two_layer_analysis_dynamic_20260119.md +0 -81
  554. package/packages/analytics/reports/full/two_layer_analysis_final_20260119.md +0 -81
  555. package/packages/analytics/reports/full/two_layer_analysis_final_fixed_20260119.md +0 -81
  556. package/packages/analytics/reports/full/two_layer_analysis_fixed_20260119.md +0 -52
  557. package/packages/analytics/reports/full/two_layer_analysis_normalized_20260119.md +0 -81
  558. package/packages/analytics/reports/full/tx_0xc30cfcbb.md +0 -39
  559. package/packages/analytics/src/analyzers/AttributionAnalyzer.ts +0 -124
  560. package/packages/analytics/src/analyzers/ComparisonAnalyzer.ts +0 -89
  561. package/packages/analytics/src/analyzers/TransactionAnalyzer.ts +0 -111
  562. package/packages/analytics/src/analyzers/TrendAnalyzer.ts +0 -107
  563. package/packages/analytics/src/cli-analyze-tx.ts +0 -45
  564. package/packages/analytics/src/cli.ts +0 -39
  565. package/packages/analytics/src/core/BenchmarkLoader.ts +0 -163
  566. package/packages/analytics/src/core/CostCalculator.ts +0 -202
  567. package/packages/analytics/src/core/DataCollector.ts +0 -245
  568. package/packages/analytics/src/gas-analyzer-v4.ts +0 -118
  569. package/packages/analytics/src/gas-analyzer.ts +0 -184
  570. package/packages/analytics/src/index.ts +0 -145
  571. package/packages/analytics/src/test-logparser.ts +0 -63
  572. package/packages/analytics/src/utils/EventDecoder.ts +0 -152
  573. package/packages/analytics/src/utils/LogParser.ts +0 -220
  574. package/packages/analytics/src/utils/PriceOracle.ts +0 -117
  575. package/packages/analytics/test/AttributionAnalyzer.test.ts +0 -42
  576. package/packages/analytics/test/CostCalculator.test.ts +0 -75
  577. package/packages/analytics/tsconfig.json +0 -12
  578. package/packages/community/__tests__/index.test.ts +0 -9
  579. package/packages/community/node_modules/.bin/tsc +0 -21
  580. package/packages/community/node_modules/.bin/tsserver +0 -21
  581. package/packages/community/node_modules/.vite/vitest/da39a3ee5e6b4b0d3255bfef95601890afd80709/results.json +0 -1
  582. package/packages/community/package.json +0 -27
  583. package/packages/community/src/index.ts +0 -326
  584. package/packages/community/tsconfig.json +0 -8
  585. package/packages/core/__tests__/actions/account-comprehensive.test.ts +0 -92
  586. package/packages/core/__tests__/actions/aggregator.test.ts +0 -62
  587. package/packages/core/__tests__/actions/comprehensive-batch1.test.ts +0 -86
  588. package/packages/core/__tests__/actions/comprehensive-batch2.test.ts +0 -39
  589. package/packages/core/__tests__/actions/comprehensive-batch3.test.ts +0 -35
  590. package/packages/core/__tests__/actions/comprehensive-error.test.ts +0 -115
  591. package/packages/core/__tests__/actions/dvt.test.ts +0 -39
  592. package/packages/core/__tests__/actions/edge-cases.test.ts +0 -39
  593. package/packages/core/__tests__/actions/error-paths.test.ts +0 -82
  594. package/packages/core/__tests__/actions/factory.test.ts +0 -81
  595. package/packages/core/__tests__/actions/faucet.test.ts +0 -131
  596. package/packages/core/__tests__/actions/paymaster.test.ts +0 -116
  597. package/packages/core/__tests__/actions/registry.test.ts +0 -81
  598. package/packages/core/__tests__/actions/reputation.test.ts +0 -43
  599. package/packages/core/__tests__/actions/sbt.test.ts +0 -145
  600. package/packages/core/__tests__/actions/staking.test.ts +0 -30
  601. package/packages/core/__tests__/actions/superPaymaster.test.ts +0 -158
  602. package/packages/core/__tests__/actions/tokens-extended.test.ts +0 -18
  603. package/packages/core/__tests__/actions/tokens.test.ts +0 -122
  604. package/packages/core/__tests__/clients.test.ts +0 -77
  605. package/packages/core/__tests__/contracts-config.test.ts +0 -69
  606. package/packages/core/__tests__/index.test.ts +0 -9
  607. package/packages/core/__tests__/mocks/client.ts +0 -40
  608. package/packages/core/node_modules/.bin/tsc +0 -21
  609. package/packages/core/node_modules/.bin/tsserver +0 -21
  610. package/packages/core/node_modules/.bin/tsx +0 -21
  611. package/packages/core/node_modules/.bin/vite +0 -21
  612. package/packages/core/node_modules/.bin/vitest +0 -21
  613. package/packages/core/node_modules/.bin/yaml +0 -21
  614. package/packages/core/node_modules/.vite/vitest/da39a3ee5e6b4b0d3255bfef95601890afd80709/results.json +0 -1
  615. package/packages/core/package.json +0 -25
  616. package/packages/core/src/abis/BLSAggregator.json +0 -686
  617. package/packages/core/src/abis/BLSValidator.json +0 -42
  618. package/packages/core/src/abis/DVTValidator.json +0 -368
  619. package/packages/core/src/abis/Eip7702Support.json +0 -24
  620. package/packages/core/src/abis/EntryPoint.json +0 -1382
  621. package/packages/core/src/abis/GToken.json +0 -513
  622. package/packages/core/src/abis/GTokenStaking.json +0 -949
  623. package/packages/core/src/abis/LegacyAccount.json +0 -625
  624. package/packages/core/src/abis/MySBT.json +0 -1518
  625. package/packages/core/src/abis/Paymaster.json +0 -1143
  626. package/packages/core/src/abis/PaymasterFactory.json +0 -640
  627. package/packages/core/src/abis/Registry.json +0 -1942
  628. package/packages/core/src/abis/ReputationSystem.json +0 -699
  629. package/packages/core/src/abis/SenderCreator.json +0 -99
  630. package/packages/core/src/abis/Simple7702Account.json +0 -395
  631. package/packages/core/src/abis/SimpleAccount.json +0 -560
  632. package/packages/core/src/abis/SimpleAccountFactory.json +0 -111
  633. package/packages/core/src/abis/SimpleAccountFactoryV08.json +0 -87
  634. package/packages/core/src/abis/SimpleAccountV08.json +0 -557
  635. package/packages/core/src/abis/SuperPaymaster.json +0 -1781
  636. package/packages/core/src/abis/UserOperationLib.json +0 -57
  637. package/packages/core/src/abis/aPNTs.json +0 -1160
  638. package/packages/core/src/abis/abi.config.json +0 -24
  639. package/packages/core/src/abis/index.ts +0 -91
  640. package/packages/core/src/abis/xPNTsFactory.json +0 -718
  641. package/packages/core/src/abis/xPNTsToken.json +0 -1280
  642. package/packages/core/src/actions/StateValidator.ts +0 -253
  643. package/packages/core/src/actions/account.ts +0 -190
  644. package/packages/core/src/actions/aggregator.ts +0 -371
  645. package/packages/core/src/actions/dvt.ts +0 -269
  646. package/packages/core/src/actions/entryPoint.ts +0 -89
  647. package/packages/core/src/actions/factory.ts +0 -732
  648. package/packages/core/src/actions/faucet.ts +0 -280
  649. package/packages/core/src/actions/index.ts +0 -15
  650. package/packages/core/src/actions/paymaster.ts +0 -780
  651. package/packages/core/src/actions/registry.ts +0 -961
  652. package/packages/core/src/actions/reputation.ts +0 -668
  653. package/packages/core/src/actions/sbt.ts +0 -916
  654. package/packages/core/src/actions/staking.ts +0 -576
  655. package/packages/core/src/actions/superPaymaster.ts +0 -1093
  656. package/packages/core/src/actions/tokens.ts +0 -481
  657. package/packages/core/src/branding.ts +0 -32
  658. package/packages/core/src/clients/BaseClient.ts +0 -78
  659. package/packages/core/src/clients/BundlerClient.ts +0 -132
  660. package/packages/core/src/clients/types.ts +0 -69
  661. package/packages/core/src/clients.ts +0 -13
  662. package/packages/core/src/communities.ts +0 -93
  663. package/packages/core/src/config/ContractConfigManager.ts +0 -63
  664. package/packages/core/src/constants.ts +0 -114
  665. package/packages/core/src/contract-addresses.ts +0 -118
  666. package/packages/core/src/contract-versions.ts +0 -374
  667. package/packages/core/src/contracts.ts +0 -414
  668. package/packages/core/src/crypto/blsSigner.ts +0 -124
  669. package/packages/core/src/crypto/index.ts +0 -1
  670. package/packages/core/src/errors/index.ts +0 -173
  671. package/packages/core/src/index.ts +0 -23
  672. package/packages/core/src/networks.ts +0 -127
  673. package/packages/core/src/requirementChecker.ts +0 -225
  674. package/packages/core/src/roles.ts +0 -244
  675. package/packages/core/src/utils.ts +0 -23
  676. package/packages/core/src/validators/index.ts +0 -88
  677. package/packages/core/tsconfig.json +0 -13
  678. package/packages/dapp/__tests__/index.test.ts +0 -9
  679. package/packages/dapp/node_modules/.bin/tsc +0 -21
  680. package/packages/dapp/node_modules/.bin/tsserver +0 -21
  681. package/packages/dapp/node_modules/.vite/vitest/da39a3ee5e6b4b0d3255bfef95601890afd80709/results.json +0 -1
  682. package/packages/dapp/package.json +0 -28
  683. package/packages/dapp/src/index.ts +0 -4
  684. package/packages/dapp/src/ui/components/EvaluationPanel.tsx +0 -40
  685. package/packages/dapp/src/ui/hooks/useCreditScore.ts +0 -44
  686. package/packages/dapp/src/ui/hooks/useSuperPaymaster.ts +0 -31
  687. package/packages/dapp/src/ui/index.ts +0 -22
  688. package/packages/dapp/tsconfig.json +0 -13
  689. package/packages/enduser/__tests__/CommunityClient.test.ts +0 -205
  690. package/packages/enduser/__tests__/UserClient.test.ts +0 -294
  691. package/packages/enduser/__tests__/index.test.ts +0 -16
  692. package/packages/enduser/__tests__/mocks/client.ts +0 -22
  693. package/packages/enduser/node_modules/.bin/tsc +0 -21
  694. package/packages/enduser/node_modules/.bin/tsserver +0 -21
  695. package/packages/enduser/node_modules/.vite/vitest/da39a3ee5e6b4b0d3255bfef95601890afd80709/results.json +0 -1
  696. package/packages/enduser/package.json +0 -26
  697. package/packages/enduser/src/CommunityClient.ts +0 -235
  698. package/packages/enduser/src/UserClient.ts +0 -447
  699. package/packages/enduser/src/index.ts +0 -2
  700. package/packages/enduser/src/testAccountManager.ts +0 -374
  701. package/packages/enduser/tsconfig.json +0 -10
  702. package/packages/identity/__tests__/index.test.ts +0 -9
  703. package/packages/identity/node_modules/.bin/tsc +0 -21
  704. package/packages/identity/node_modules/.bin/tsserver +0 -21
  705. package/packages/identity/node_modules/.vite/vitest/da39a3ee5e6b4b0d3255bfef95601890afd80709/results.json +0 -1
  706. package/packages/identity/package.json +0 -23
  707. package/packages/identity/src/index.ts +0 -114
  708. package/packages/identity/src/mysbt.ts +0 -48
  709. package/packages/identity/tsconfig.json +0 -12
  710. package/packages/operator/__tests__/PaymasterOperatorClient.test.ts +0 -258
  711. package/packages/operator/__tests__/ProtocolClient.test.ts +0 -135
  712. package/packages/operator/__tests__/index.test.ts +0 -16
  713. package/packages/operator/__tests__/mocks/client.ts +0 -22
  714. package/packages/operator/node_modules/.bin/tsc +0 -21
  715. package/packages/operator/node_modules/.bin/tsserver +0 -21
  716. package/packages/operator/node_modules/.vite/vitest/da39a3ee5e6b4b0d3255bfef95601890afd80709/results.json +0 -1
  717. package/packages/operator/package.json +0 -26
  718. package/packages/operator/src/PaymasterOperatorClient.ts +0 -454
  719. package/packages/operator/src/ProtocolClient.ts +0 -154
  720. package/packages/operator/src/index.ts +0 -2
  721. package/packages/operator/tsconfig.json +0 -10
  722. package/packages/patterns/node_modules/.bin/tsc +0 -21
  723. package/packages/patterns/node_modules/.bin/tsserver +0 -21
  724. package/packages/paymaster/__tests__/PaymasterOperator.test.ts +0 -123
  725. package/packages/paymaster/__tests__/index.test.ts +0 -9
  726. package/packages/paymaster/node_modules/.bin/tsc +0 -21
  727. package/packages/paymaster/node_modules/.bin/tsserver +0 -21
  728. package/packages/paymaster/node_modules/.vite/vitest/da39a3ee5e6b4b0d3255bfef95601890afd80709/results.json +0 -1
  729. package/packages/paymaster/package.json +0 -23
  730. package/packages/paymaster/src/SuperPaymaster/index.ts +0 -168
  731. package/packages/paymaster/src/V4/BundlerCompat.ts +0 -47
  732. package/packages/paymaster/src/V4/PaymasterClient.ts +0 -490
  733. package/packages/paymaster/src/V4/PaymasterOperator.ts +0 -282
  734. package/packages/paymaster/src/V4/PaymasterUtils.ts +0 -199
  735. package/packages/paymaster/src/V4/SuperPaymasterClient.ts +0 -129
  736. package/packages/paymaster/src/V4/index.ts +0 -4
  737. package/packages/paymaster/src/index.ts +0 -5
  738. package/packages/paymaster/tsconfig.json +0 -16
  739. package/packages/sdk/README.md +0 -171
  740. package/packages/sdk/__tests__/index.test.ts +0 -9
  741. package/packages/sdk/aastar/package.json +0 -21
  742. package/packages/sdk/aastar/src/index.ts +0 -3
  743. package/packages/sdk/aastar/tsconfig.json +0 -8
  744. package/packages/sdk/examples/config.json +0 -1
  745. package/packages/sdk/examples/regression_test.ts +0 -106
  746. package/packages/sdk/node_modules/.bin/tsc +0 -21
  747. package/packages/sdk/node_modules/.bin/tsserver +0 -21
  748. package/packages/sdk/node_modules/.vite/vitest/da39a3ee5e6b4b0d3255bfef95601890afd80709/results.json +0 -1
  749. package/packages/sdk/package.json +0 -34
  750. package/packages/sdk/src/clients/admin.ts +0 -56
  751. package/packages/sdk/src/clients/endUser.ts +0 -428
  752. package/packages/sdk/src/utils/testScenarios.ts +0 -128
  753. package/packages/sdk/tests/scenarios/01_onboard_community.ts +0 -62
  754. package/packages/sdk/tests/scenarios/02_onboard_operator.ts +0 -109
  755. package/packages/sdk/tests/scenarios/03_onboard_user.ts +0 -53
  756. package/packages/sdk/tests/scenarios/04_gasless_tx_flow.ts +0 -68
  757. package/packages/sdk/tests/scenarios/check_entrypoint.ts +0 -19
  758. package/packages/sdk/tests/scenarios/check_initialization.ts +0 -65
  759. package/packages/sdk/tests/scenarios/debug_addresses.ts +0 -26
  760. package/packages/sdk/tests/scenarios/diagnose_scenario4.ts +0 -55
  761. package/packages/sdk/tests/scenarios/setup.ts +0 -33
  762. package/packages/sdk/tests/scenarios/test_entrypoint_nonce.ts +0 -46
  763. package/packages/sdk/tsconfig.json +0 -12
  764. package/packages/tokens/__tests__/index.test.ts +0 -9
  765. package/packages/tokens/node_modules/.bin/tsc +0 -21
  766. package/packages/tokens/node_modules/.bin/tsserver +0 -21
  767. package/packages/tokens/node_modules/.vite/vitest/da39a3ee5e6b4b0d3255bfef95601890afd80709/results.json +0 -1
  768. package/packages/tokens/package.json +0 -23
  769. package/packages/tokens/src/index.ts +0 -258
  770. package/packages/tokens/tsconfig.json +0 -12
  771. package/pnpm-workspace.yaml +0 -2
  772. package/publish.sh +0 -30
  773. package/run_l4_gasless_regression.sh +0 -109
  774. package/run_sdk_regression.sh +0 -232
  775. package/scripts/00_utils.ts +0 -59
  776. package/scripts/00_verify_phase1.ts +0 -130
  777. package/scripts/01_1_prep_gtoken.ts +0 -81
  778. package/scripts/01_2_register_sbt.ts +0 -88
  779. package/scripts/01_3_prep_tokens_paymaster.ts +0 -102
  780. package/scripts/01_prepare_all.ts +0 -271
  781. package/scripts/02_test_eoa.ts +0 -50
  782. package/scripts/03_test_standard_aa.ts +0 -173
  783. package/scripts/04_0_check_deploy.ts +0 -24
  784. package/scripts/04_1_check_allowance.ts +0 -44
  785. package/scripts/04_2_construct_verify.ts +0 -96
  786. package/scripts/04_3_verify_estimate.ts +0 -66
  787. package/scripts/04_4_verify_pack.ts +0 -74
  788. package/scripts/04_test_paymaster_v4.ts +0 -217
  789. package/scripts/05_1_deposit.ts +0 -48
  790. package/scripts/05_test_superpaymaster.ts +0 -380
  791. package/scripts/06_local_test_v3_admin.ts +0 -163
  792. package/scripts/06_local_test_v3_execution.ts +0 -132
  793. package/scripts/06_local_test_v3_full.ts +0 -490
  794. package/scripts/06_local_test_v3_funding.ts +0 -124
  795. package/scripts/06_local_test_v3_reputation.ts +0 -234
  796. package/scripts/07_local_test_v3_audit.ts +0 -181
  797. package/scripts/08_local_test_registry_lifecycle.ts +0 -382
  798. package/scripts/09_local_test_community_lifecycle.ts +0 -385
  799. package/scripts/09_local_test_community_simple.ts +0 -108
  800. package/scripts/09_scenario_bread_independent.ts +0 -247
  801. package/scripts/10_scenario_super_shared.ts +0 -196
  802. package/scripts/10_test_protocol_admin_full.ts +0 -173
  803. package/scripts/11_scenario_hacker_defense.ts +0 -104
  804. package/scripts/11_test_core_flows_full.ts +0 -279
  805. package/scripts/12_test_slash_mechanism.ts +0 -205
  806. package/scripts/12_test_slash_queries.ts +0 -83
  807. package/scripts/12_test_staking_exit.ts +0 -152
  808. package/scripts/12_test_staking_slash.ts +0 -301
  809. package/scripts/12_test_tier2_slash.ts +0 -139
  810. package/scripts/13_test_sbt_burn_linkage.ts +0 -266
  811. package/scripts/14_test_credit_redesign.ts +0 -266
  812. package/scripts/15_test_bls_full.ts +0 -148
  813. package/scripts/15_test_dvt_bls_full.ts +0 -140
  814. package/scripts/17_test_cross_role_collaboration.ts +0 -95
  815. package/scripts/18_sdk_e2e_verification.ts +0 -67
  816. package/scripts/18_test_dvt_sdk_flow.ts +0 -138
  817. package/scripts/18_test_lifecycle_completion.ts +0 -144
  818. package/scripts/19_sdk_experiment_runner.ts +0 -207
  819. package/scripts/19_sdk_experiment_runner.ts.backup +0 -391
  820. package/scripts/20_sdk_full_capability.ts +0 -95
  821. package/scripts/20_test_superpaymaster_new_apis.ts +0 -193
  822. package/scripts/21_test_paymasterv4_complete.ts +0 -341
  823. package/scripts/22_test_bls_signing.ts +0 -260
  824. package/scripts/23_test_middleware.ts +0 -197
  825. package/scripts/98_edge_reentrancy.ts +0 -85
  826. package/scripts/99_bug_hunting_fast.ts +0 -99
  827. package/scripts/analyze_abi_coverage.ts +0 -169
  828. package/scripts/analyze_missing_functions.ts +0 -136
  829. package/scripts/canary-bundler.ts +0 -47
  830. package/scripts/check-admin.ts +0 -95
  831. package/scripts/check-chainlink.ts +0 -28
  832. package/scripts/check-jason-status.ts +0 -85
  833. package/scripts/check-roles.ts +0 -36
  834. package/scripts/clear-nonce.ts +0 -47
  835. package/scripts/collect_industry_baseline.ts +0 -236
  836. package/scripts/complete-jack-superpaymaster.ts +0 -171
  837. package/scripts/complete_env_config.ts +0 -97
  838. package/scripts/deploy-sync.ts +0 -104
  839. package/scripts/deploy_and_init_v3.sh +0 -134
  840. package/scripts/deploy_anvil_accounts.ts +0 -144
  841. package/scripts/deploy_jason_pm.ts +0 -114
  842. package/scripts/deploy_paymaster_v4.ts +0 -139
  843. package/scripts/deploy_test_accounts.ts +0 -401
  844. package/scripts/deprecated/check_aa_entrypoint.ts +0 -29
  845. package/scripts/deprecated/check_paymaster_deposits.ts +0 -45
  846. package/scripts/deprecated/debug_aoa_function.ts +0 -28
  847. package/scripts/deprecated/debug_aoa_issue.ts +0 -16
  848. package/scripts/deprecated/debug_pimlico_aa23.ts +0 -40
  849. package/scripts/deprecated/debug_summary.ts +0 -34
  850. package/scripts/deprecated/deploy_v07_aa.ts +0 -99
  851. package/scripts/deprecated/fix_all_issues.ts +0 -61
  852. package/scripts/deprecated/fund_bpnts.ts +0 -52
  853. package/scripts/deprecated/get_factory_addresses.ts +0 -28
  854. package/scripts/deprecated/recheck_pim.ts +0 -34
  855. package/scripts/dev_tools/extract_abis.sh +0 -151
  856. package/scripts/dev_tools/extract_addresses_to_env.sh +0 -67
  857. package/scripts/dev_tools/final_safe_harmonize.py +0 -77
  858. package/scripts/dev_tools/safe_harmonize.py +0 -107
  859. package/scripts/dev_tools/surgical_harmonize.py +0 -83
  860. package/scripts/experiment/stage3/SETUP_GUIDE.md +0 -258
  861. package/scripts/experiment/stage3/archived_scripts/00_token_distribution.ts +0 -78
  862. package/scripts/experiment/stage3/archived_scripts/01_dao_launch.ts +0 -96
  863. package/scripts/experiment/stage3/archived_scripts/01b_bread_launch.ts +0 -112
  864. package/scripts/experiment/stage3/archived_scripts/02_operator_setup.ts +0 -84
  865. package/scripts/experiment/stage3/archived_scripts/02b_operator_b_setup.ts +0 -104
  866. package/scripts/experiment/stage3/archived_scripts/02c_finalize_operators.ts +0 -86
  867. package/scripts/experiment/stage3/archived_scripts/02d_operator_collateral.ts +0 -89
  868. package/scripts/experiment/stage3/archived_scripts/03_user_onboarding.ts +0 -83
  869. package/scripts/experiment/stage3/archived_scripts/03b_deploy_aa_account.ts +0 -61
  870. package/scripts/experiment/stage3/archived_scripts/03c_aa_onboarding.ts +0 -104
  871. package/scripts/experiment/stage3/archived_scripts/03d_mint_points.ts +0 -60
  872. package/scripts/experiment/stage3/archived_scripts/04_benchmarking.ts +0 -100
  873. package/scripts/experiment/stage3/archived_scripts/05_multi_op_setup.ts +0 -149
  874. package/scripts/experiment/stage3/archived_scripts/README.md +0 -58
  875. package/scripts/experiment/stage3/archived_scripts/check_roles.ts +0 -29
  876. package/scripts/experiment/stage3/archived_scripts/decode_error.ts +0 -23
  877. package/scripts/experiment/stage3/archived_scripts/fund_user.ts +0 -51
  878. package/scripts/experiment/stage3/archived_scripts/gen_b_key.ts +0 -3
  879. package/scripts/experiment/stage3/archived_scripts/gen_keys.ts +0 -4
  880. package/scripts/experiment/stage3/archived_scripts/setup.ts +0 -105
  881. package/scripts/experiment/stage3/archived_scripts/test_key.ts +0 -4
  882. package/scripts/experiment/stage3/archived_scripts/verify_state.ts +0 -59
  883. package/scripts/experiment/stage3/refactored/00_token_distribution.ts +0 -46
  884. package/scripts/experiment/stage3/refactored/02_operator_setup.ts +0 -65
  885. package/scripts/experiment/stage3/refactored/03_user_onboarding.ts +0 -68
  886. package/scripts/experiment/stage3/refactored/05_multi_op_setup.ts +0 -63
  887. package/scripts/experiment/stage3/refactored/README.md +0 -71
  888. package/scripts/extract-docs.sh +0 -72
  889. package/scripts/fund-jack.ts +0 -38
  890. package/scripts/generate_env_from_deployment.ts +0 -109
  891. package/scripts/inspect-anni-token.ts +0 -116
  892. package/scripts/inspect-factory.ts +0 -83
  893. package/scripts/l4-debug-bob.ts +0 -62
  894. package/scripts/l4-paymasterv4-transfer-test.ts +0 -220
  895. package/scripts/l4-setup.ts +0 -1347
  896. package/scripts/l4-state.json +0 -82
  897. package/scripts/manual-update-price.ts +0 -39
  898. package/scripts/phase1_verify_contracts.ts +0 -207
  899. package/scripts/pre_test_sync.ts +0 -83
  900. package/scripts/prepare_sepolia_resources.ts +0 -154
  901. package/scripts/publish_all.sh +0 -39
  902. package/scripts/query-jack-token.ts +0 -22
  903. package/scripts/quick_setup.ts +0 -124
  904. package/scripts/quick_setup_account.ts +0 -80
  905. package/scripts/run_automated_experiment.sh +0 -121
  906. package/scripts/run_daily_experiment.ts +0 -70
  907. package/scripts/run_full_regression.sh +0 -38
  908. package/scripts/run_l4_gasless_regression.sh +0 -32
  909. package/scripts/run_sdk_experiment.sh +0 -13
  910. package/scripts/run_sdk_regression-v2.sh +0 -38
  911. package/scripts/sdk_regression_v2.ts +0 -148
  912. package/scripts/security_audit.sh +0 -172
  913. package/scripts/setup-bbq-community.ts +0 -187
  914. package/scripts/setup-dancing-community.ts +0 -223
  915. package/scripts/setup_test_accounts.ts +0 -88
  916. package/scripts/setup_test_environment.ts +0 -147
  917. package/scripts/sync_anvil_config.cjs +0 -44
  918. package/scripts/sync_config_to_env.ts +0 -88
  919. package/scripts/sync_contract_addresses.ts +0 -186
  920. package/scripts/sync_sepolia_config.cjs +0 -90
  921. package/scripts/sync_sepolia_config.mjs +0 -74
  922. package/scripts/test-brown-v4-deploy.ts +0 -90
  923. package/scripts/test-faucet-and-gasless.ts +0 -150
  924. package/scripts/test-jack-gasless.ts +0 -119
  925. package/scripts/test-jack-registration.ts +0 -133
  926. package/scripts/test-jack-superpaymaster-api.ts +0 -112
  927. package/scripts/test-kms-gasless.ts +0 -352
  928. package/scripts/update-price-dvt.ts +0 -53
  929. package/scripts/update_env_from_config.ts +0 -83
  930. package/scripts/v2_regression/00_validate_env.ts +0 -101
  931. package/scripts/v2_regression/01_setup_and_fund.ts +0 -132
  932. package/scripts/v2_regression/02_operator_onboarding.ts +0 -300
  933. package/scripts/v2_regression/03_community_registry.ts +0 -173
  934. package/scripts/v2_regression/04_enduser_flow.ts +0 -174
  935. package/scripts/v2_regression/05_admin_audit.ts +0 -157
  936. package/scripts/v2_regression/README.md +0 -161
  937. package/scripts/validate_env.ts +0 -112
  938. package/scripts/verify-bob-token.ts +0 -41
  939. package/scripts/verify-tx-status.ts +0 -81
  940. package/scripts/verify_onchain_milestone.ts +0 -114
  941. package/scripts/verify_phase1.ts +0 -66
  942. package/scripts/verify_phase2.ts +0 -66
  943. package/sdk-abi-coverage.sh +0 -1
  944. package/sdk-build-and-test.sh +0 -1
  945. package/sdk-test-coverage.sh +0 -1
  946. package/sdk_experiment_data.csv +0 -4
  947. package/simple-test-paymaster.sh +0 -2
  948. package/simple-test-superpaymaster.sh +0 -3
  949. package/tests/check-aa-balance.ts +0 -31
  950. package/tests/l1-regression.test.ts +0 -437
  951. package/tests/l4-test-anni-gasless.ts +0 -517
  952. package/tests/l4-test-jason1-gasless.ts +0 -158
  953. package/tests/l4-test-jason2-gasless.ts +0 -180
  954. package/tests/l4-test-pmv4-deposit.ts +0 -111
  955. package/tests/l4-test-pmv4-gasless.ts +0 -166
  956. package/tests/l4-test-pmv4-submit.ts +0 -223
  957. package/tests/regression/README.md +0 -168
  958. package/tests/regression/config.ts +0 -217
  959. package/tests/regression/display-versions.ts +0 -85
  960. package/tests/regression/index.ts +0 -67
  961. package/tests/regression/l1-tests.ts +0 -248
  962. package/tests/regression/l2-tests.ts +0 -227
  963. package/tests/regression/l3-tests.ts +0 -28
  964. package/tests/regression/l4-comprehensive-gasless.ts +0 -478
  965. package/tests/regression/l4-gasless.ts +0 -999
  966. package/tests/regression/l4-reputation-tiers.ts +0 -102
  967. package/tests/regression/l4-runner.ts +0 -52
  968. package/tests/reports/phase1_contract_verification.md +0 -45
  969. package/tests/test-bundler-compat.ts +0 -132
  970. package/tests/test-candide-bundler.ts +0 -117
  971. package/tests/test-candide-paymaster.ts +0 -101
  972. package/tests/test-candide-sdk.ts +0 -116
  973. package/tests/test-candide-simple.ts +0 -204
  974. package/tests/test-pimlico-complete.ts +0 -134
  975. package/tests/utils/contractVerifier.ts +0 -237
  976. package/tests/utils/userOpHelper.ts +0 -194
  977. package/tsconfig.build.json +0 -23
  978. package/tsconfig.json +0 -27
  979. package/typedoc.json +0 -25
  980. package/update-version.sh +0 -20
  981. package/vitest.config.ts +0 -17
@@ -0,0 +1,74 @@
1
+ import { describe, it, expect } from 'vitest';
2
+ import { RoleDataFactory, RoleIds } from './roleData.js';
3
+ import { zeroAddress } from 'viem';
4
+ describe('RoleDataFactory', () => {
5
+ it('should have correct role ids', () => {
6
+ expect(RoleIds.COMMUNITY).toBeDefined();
7
+ expect(RoleIds.ENDUSER).toBeDefined();
8
+ });
9
+ it('should encode and decode community data', () => {
10
+ const params = {
11
+ name: 'MyCommunity',
12
+ ensName: 'my.eth',
13
+ website: 'https://my.com',
14
+ description: 'desc',
15
+ logoURI: 'logo',
16
+ stakeAmount: 100n
17
+ };
18
+ const encoded = RoleDataFactory.community(params);
19
+ const decoded = RoleDataFactory.decodeCommunity(encoded);
20
+ expect(decoded.name).toBe(params.name);
21
+ expect(decoded.stakeAmount).toBe(params.stakeAmount);
22
+ });
23
+ it('should encode and decode community data with different params', () => {
24
+ const params = {
25
+ name: 'VibeCommunity',
26
+ ensName: 'vibe.eth',
27
+ website: 'https://vibe.io',
28
+ description: 'Good vibes only',
29
+ logoURI: 'ipfs://logo',
30
+ stakeAmount: 100n
31
+ };
32
+ const encoded = RoleDataFactory.community(params);
33
+ const decoded = RoleDataFactory.decodeCommunity(encoded);
34
+ expect(decoded.name).toBe(params.name);
35
+ expect(decoded.ensName).toBe(params.ensName);
36
+ expect(decoded.stakeAmount).toBe(params.stakeAmount);
37
+ });
38
+ it('should encode community with default values', () => {
39
+ const encoded = RoleDataFactory.community();
40
+ const decoded = RoleDataFactory.decodeCommunity(encoded);
41
+ expect(decoded.name).toBe('TestCommunity');
42
+ expect(decoded.stakeAmount).toBe(0n);
43
+ });
44
+ it('should use default values for community', () => {
45
+ const encoded = RoleDataFactory.community();
46
+ const decoded = RoleDataFactory.decodeCommunity(encoded);
47
+ expect(decoded.name).toBe('TestCommunity');
48
+ expect(decoded.stakeAmount).toBe(0n);
49
+ });
50
+ it('should encode and decode endUser data', () => {
51
+ const params = {
52
+ account: '0x1111111111111111111111111111111111111111',
53
+ community: '0x2222222222222222222222222222222222222222',
54
+ avatarURI: 'avatar',
55
+ ensName: 'user.eth',
56
+ stakeAmount: 50n
57
+ };
58
+ const encoded = RoleDataFactory.endUser(params);
59
+ const decoded = RoleDataFactory.decodeEndUser(encoded);
60
+ expect(decoded.account).toBe(params.account);
61
+ expect(decoded.community).toBe(params.community);
62
+ expect(decoded.stakeAmount).toBe(params.stakeAmount);
63
+ });
64
+ it('should encode endUser with default values', () => {
65
+ const encoded = RoleDataFactory.endUser();
66
+ const decoded = RoleDataFactory.decodeEndUser(encoded);
67
+ expect(decoded.account).toBe(zeroAddress);
68
+ expect(decoded.stakeAmount).toBe(0n);
69
+ });
70
+ it('should handle paymasterSuper and dvt (empty data)', () => {
71
+ expect(RoleDataFactory.paymasterSuper()).toBe('0x');
72
+ expect(RoleDataFactory.dvt()).toBe('0x');
73
+ });
74
+ });
@@ -0,0 +1,33 @@
1
+ import { type Address, type Hash, type PublicClient } from 'viem';
2
+ export declare enum UserOpScenarioType {
3
+ NATIVE = "NATIVE",// Plain ERC-4337, user pays ETH
4
+ GASLESS_V4 = "GASLESS_V4",// Standard PaymasterV4
5
+ SUPER_BPNT = "SUPER_BPNT",// SuperPaymaster with bPNT internal payment
6
+ SUPER_CPNT = "SUPER_CPNT",// SuperPaymaster with cPNT internal payment
7
+ SUPER_CUSTOM = "SUPER_CUSTOM"
8
+ }
9
+ export interface ScenarioParams {
10
+ sender: Address;
11
+ ownerAccount: any;
12
+ recipient: Address;
13
+ tokenAddress: Address;
14
+ amount: bigint;
15
+ entryPoint: Address;
16
+ chainId: number;
17
+ publicClient: PublicClient;
18
+ paymaster?: Address;
19
+ operator?: Address;
20
+ paymasterGasLimit?: bigint;
21
+ paymasterPostOpGasLimit?: bigint;
22
+ nonceKey?: bigint;
23
+ gasToken?: Address;
24
+ }
25
+ export declare class UserOpScenarioBuilder {
26
+ /**
27
+ * Builds a signed PackedUserOperation for a token transfer based on the specified scenario.
28
+ */
29
+ static buildTransferScenario(type: UserOpScenarioType, params: ScenarioParams): Promise<{
30
+ userOp: any;
31
+ opHash: Hash;
32
+ }>;
33
+ }
@@ -0,0 +1,85 @@
1
+ import { encodeFunctionData } from 'viem';
2
+ import { UserOperationBuilder } from './userOp.js';
3
+ export var UserOpScenarioType;
4
+ (function (UserOpScenarioType) {
5
+ UserOpScenarioType["NATIVE"] = "NATIVE";
6
+ UserOpScenarioType["GASLESS_V4"] = "GASLESS_V4";
7
+ UserOpScenarioType["SUPER_BPNT"] = "SUPER_BPNT";
8
+ UserOpScenarioType["SUPER_CPNT"] = "SUPER_CPNT";
9
+ UserOpScenarioType["SUPER_CUSTOM"] = "SUPER_CUSTOM"; // SuperPaymaster with custom token/operator
10
+ })(UserOpScenarioType || (UserOpScenarioType = {}));
11
+ export class UserOpScenarioBuilder {
12
+ /**
13
+ * Builds a signed PackedUserOperation for a token transfer based on the specified scenario.
14
+ */
15
+ static async buildTransferScenario(type, params) {
16
+ const { sender, ownerAccount, recipient, tokenAddress, amount, entryPoint, chainId, publicClient, paymaster, operator, paymasterGasLimit = 100000n, paymasterPostOpGasLimit = 40000n, nonceKey = 0n, gasToken } = params;
17
+ // 1. Build Token Transfer CallData
18
+ const transferData = encodeFunctionData({
19
+ abi: [{ name: 'transfer', type: 'function', inputs: [{ type: 'address', name: 'to' }, { type: 'uint256', name: 'amount' }], outputs: [{ type: 'bool' }] }],
20
+ functionName: 'transfer',
21
+ args: [recipient, amount]
22
+ });
23
+ // 2. Build AA Execute CallData (Assuming SimpleAccount execute)
24
+ const callData = encodeFunctionData({
25
+ abi: [{ name: 'execute', type: 'function', inputs: [{ type: 'address' }, { type: 'uint256' }, { type: 'bytes' }] }],
26
+ functionName: 'execute',
27
+ args: [tokenAddress, 0n, transferData]
28
+ });
29
+ // 3. Build Base UserOperation
30
+ const userOp = {
31
+ sender,
32
+ nonce: await publicClient.readContract({
33
+ address: entryPoint,
34
+ abi: [{ name: 'getNonce', type: 'function', inputs: [{ type: 'address' }, { type: 'uint192' }], outputs: [{ type: 'uint256' }] }],
35
+ functionName: 'getNonce',
36
+ args: [sender, nonceKey]
37
+ }),
38
+ initCode: '0x',
39
+ callData,
40
+ accountGasLimits: UserOperationBuilder.packAccountGasLimits(250000n, 150000n),
41
+ preVerificationGas: 80000n,
42
+ gasFees: UserOperationBuilder.packGasFees(2000000000n, 2000000000n), // 2 Gwei
43
+ paymasterAndData: '0x',
44
+ signature: '0x'
45
+ };
46
+ // 4. Handle Paymaster and Data (PMD)
47
+ if (type === UserOpScenarioType.NATIVE) {
48
+ userOp.paymasterAndData = '0x';
49
+ }
50
+ else if (type === UserOpScenarioType.GASLESS_V4) {
51
+ const pm = paymaster;
52
+ const token = gasToken || tokenAddress;
53
+ const validUntil = BigInt(Math.floor(Date.now() / 1000) + 3600);
54
+ const validAfter = BigInt(Math.floor(Date.now() / 1000) - 100);
55
+ if (!pm)
56
+ throw new Error('paymaster address required for GASLESS_V4');
57
+ if (!token)
58
+ throw new Error('gasToken or tokenAddress required for GASLESS_V4');
59
+ // PaymasterV4 Deposit-Only Model: includes payment token address
60
+ userOp.paymasterAndData = UserOperationBuilder.packPaymasterV4DepositData(pm, paymasterGasLimit, // paymasterVerificationGasLimit
61
+ paymasterPostOpGasLimit, // paymasterPostOpGasLimit
62
+ token, // Payment token
63
+ validUntil, validAfter);
64
+ }
65
+ else if (type.startsWith('SUPER_')) {
66
+ if (!paymaster || !operator)
67
+ throw new Error('Paymaster and Operator required for SuperPM scenarios');
68
+ userOp.paymasterAndData = UserOperationBuilder.packPaymasterAndData(paymaster, paymasterGasLimit, paymasterPostOpGasLimit, operator);
69
+ }
70
+ // 5. Get Hash and Sign
71
+ const opHash = await UserOperationBuilder.getUserOpHash({
72
+ userOp,
73
+ entryPoint,
74
+ chainId,
75
+ publicClient
76
+ });
77
+ const signature = await ownerAccount.signMessage({
78
+ message: { raw: opHash }
79
+ });
80
+ userOp.signature = signature;
81
+ // 6. JSON-RPC Hex-Encoding Compliance
82
+ const jsonUserOp = UserOperationBuilder.jsonifyUserOp(userOp);
83
+ return { userOp: jsonUserOp, opHash };
84
+ }
85
+ }
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,68 @@
1
+ import { describe, it, expect, vi } from 'vitest';
2
+ import { UserOpScenarioBuilder, UserOpScenarioType } from './testScenarios.js';
3
+ describe('UserOpScenarioBuilder', () => {
4
+ it('should build NATIVE transfer scenario', async () => {
5
+ const mockPublicClient = {
6
+ readContract: vi.fn().mockResolvedValue(0n),
7
+ chain: { id: 1 }
8
+ };
9
+ const params = {
10
+ sender: '0x0000000000000000000000000000000000000001',
11
+ ownerAccount: { signMessage: vi.fn().mockResolvedValue('0xsig') },
12
+ recipient: '0x0000000000000000000000000000000000000002',
13
+ tokenAddress: '0x0000000000000000000000000000000000000003',
14
+ amount: 100n,
15
+ entryPoint: '0x0000000000000000000000000000000000000004',
16
+ chainId: 1,
17
+ publicClient: mockPublicClient
18
+ };
19
+ const result = await UserOpScenarioBuilder.buildTransferScenario(UserOpScenarioType.NATIVE, params);
20
+ expect(result.userOp.paymasterAndData).toBe('0x');
21
+ expect(result.userOp.signature).toBe('0xsig');
22
+ });
23
+ it('should build GASLESS_V4 transfer scenario', async () => {
24
+ const mockPublicClient = {
25
+ readContract: vi.fn().mockResolvedValue(0n),
26
+ chain: { id: 1 }
27
+ };
28
+ const params = {
29
+ sender: '0x0000000000000000000000000000000000000001',
30
+ ownerAccount: { signMessage: vi.fn().mockResolvedValue('0xsig') },
31
+ recipient: '0x0000000000000000000000000000000000000002',
32
+ tokenAddress: '0x0000000000000000000000000000000000000003',
33
+ amount: 100n,
34
+ entryPoint: '0x0000000000000000000000000000000000000004',
35
+ chainId: 1,
36
+ publicClient: mockPublicClient,
37
+ paymaster: '0x0000000000000000000000000000000000000005'
38
+ };
39
+ const result = await UserOpScenarioBuilder.buildTransferScenario(UserOpScenarioType.GASLESS_V4, params);
40
+ expect(result.userOp.paymasterAndData).toBeDefined();
41
+ expect(result.userOp.paymasterAndData).not.toBe('0x');
42
+ });
43
+ it('should throw if paymaster missing for v4', async () => {
44
+ const params = { publicClient: { readContract: vi.fn() }, sender: '0x0000000000000000000000000000000000000001' };
45
+ await expect(UserOpScenarioBuilder.buildTransferScenario(UserOpScenarioType.GASLESS_V4, params))
46
+ .rejects.toThrow();
47
+ });
48
+ it('should build SUPER_BPNT scenario', async () => {
49
+ const mockPublicClient = {
50
+ readContract: vi.fn().mockResolvedValue(0n),
51
+ chain: { id: 1 }
52
+ };
53
+ const params = {
54
+ sender: '0x0000000000000000000000000000000000000001',
55
+ ownerAccount: { signMessage: vi.fn().mockResolvedValue('0xsig') },
56
+ recipient: '0x0000000000000000000000000000000000000002',
57
+ tokenAddress: '0x0000000000000000000000000000000000000003',
58
+ amount: 100n,
59
+ entryPoint: '0x0000000000000000000000000000000000000004',
60
+ chainId: 1,
61
+ publicClient: mockPublicClient,
62
+ paymaster: '0x0000000000000000000000000000000000000005',
63
+ operator: '0x0000000000000000000000000000000000000006'
64
+ };
65
+ const result = await UserOpScenarioBuilder.buildTransferScenario(UserOpScenarioType.SUPER_BPNT, params);
66
+ expect(result.userOp.paymasterAndData).toContain('0x');
67
+ });
68
+ });
@@ -0,0 +1,78 @@
1
+ import { type Address, type Hex, type PublicClient } from 'viem';
2
+ /**
3
+ * ERC-4337 v0.7 Packed UserOperation structure.
4
+ */
5
+ export interface PackedUserOperation {
6
+ sender: Address;
7
+ nonce: Hex;
8
+ initCode: Hex;
9
+ callData: Hex;
10
+ accountGasLimits: Hex;
11
+ preVerificationGas: Hex;
12
+ gasFees: Hex;
13
+ paymasterAndData: Hex;
14
+ signature: Hex;
15
+ }
16
+ export interface UserOpGasParams {
17
+ verificationGasLimit: bigint;
18
+ callGasLimit: bigint;
19
+ preVerificationGas: bigint;
20
+ maxPriorityFeePerGas: bigint;
21
+ maxFeePerGas: bigint;
22
+ }
23
+ export interface PaymasterGasParams {
24
+ paymasterGasLimit: bigint;
25
+ paymasterPostOpGasLimit: bigint;
26
+ }
27
+ export declare class UserOperationBuilder {
28
+ /**
29
+ * Packs verificationGasLimit and callGasLimit into a bytes32 Hex string.
30
+ */
31
+ static packAccountGasLimits(verificationGasLimit: bigint, callGasLimit: bigint): Hex;
32
+ /**
33
+ * Packs maxPriorityFeePerGas and maxFeePerGas into a bytes32 Hex string.
34
+ */
35
+ static packGasFees(maxPriorityFeePerGas: bigint, maxFeePerGas: bigint): Hex;
36
+ /**
37
+ * Packs Paymaster parameters into the v0.7 paymasterAndData format.
38
+ */
39
+ static packPaymasterAndData(paymaster: Address, paymasterGasLimit: bigint, paymasterPostOpGasLimit: bigint, paymasterData?: Hex): Hex;
40
+ /**
41
+ * Pack PaymasterV4 Deposit-Only paymasterAndData
42
+ *
43
+ * v0.7 EntryPoint packs: [paymaster(20)][verificationGas(16)][postOpGas(16)][paymasterData]
44
+ * Contract extracts token at offset 52 = paymasterData[0:20]
45
+ *
46
+ * So paymasterData format must be: [token(20)][validUntil(6)][validAfter(6)]
47
+ *
48
+ * @param paymaster - Paymaster address (20 bytes)
49
+ * @param paymentToken - ERC20 token address (20 bytes, FIRST in paymasterData!)
50
+ * @param validUntil - Validity end timestamp (6 bytes)
51
+ * @param validAfter - Validity start timestamp (6 bytes)
52
+ */
53
+ static packPaymasterV4DepositData(paymaster: Address, paymasterVerificationGasLimit: bigint, paymasterPostOpGasLimit: bigint, paymentToken: Address, validUntil: bigint, validAfter: bigint): Hex;
54
+ /**
55
+ * Computes the UserOperation hash for signing.
56
+ */
57
+ static getUserOpHash({ userOp, entryPoint, chainId, publicClient }: {
58
+ userOp: PackedUserOperation;
59
+ entryPoint: Address;
60
+ chainId: number;
61
+ publicClient: PublicClient;
62
+ }): Promise<Hex>;
63
+ /**
64
+ * Formats a PackedUserOperation into a JSON-RPC compatible object with hex-encoded strings.
65
+ */
66
+ static jsonifyUserOp(userOp: any): any;
67
+ /**
68
+ * Converts a PackedUserOperation to the Alchemy-specific v0.7 JSON format.
69
+ * @param userOp - The packed UserOperation
70
+ * @param options - Optional configuration
71
+ * @param options.paymasterVerificationGasLimit - Gas limit for paymaster verification (default: 200000)
72
+ * @param options.paymasterPostOpGasLimit - Gas limit for paymaster postOp (default: 200000)
73
+ */
74
+ static toAlchemyUserOperation(userOp: any, options?: {
75
+ paymasterVerificationGasLimit?: bigint;
76
+ paymasterPostOpGasLimit?: bigint;
77
+ }): any;
78
+ }
@@ -1,92 +1,48 @@
1
- import { type Address, type Hex, concat, pad, keccak256, encodeAbiParameters, parseAbiParameters, type PublicClient } from 'viem';
2
-
3
- /**
4
- * ERC-4337 v0.7 Packed UserOperation structure.
5
- */
6
- export interface PackedUserOperation {
7
- sender: Address;
8
- nonce: Hex;
9
- initCode: Hex;
10
- callData: Hex;
11
- accountGasLimits: Hex; // bytes32 (packed verificationGasLimit and callGasLimit)
12
- preVerificationGas: Hex;
13
- gasFees: Hex; // bytes32 (packed maxPriorityFeePerGas and maxFeePerGas)
14
- paymasterAndData: Hex;
15
- signature: Hex;
16
- }
17
-
18
- export interface UserOpGasParams {
19
- verificationGasLimit: bigint;
20
- callGasLimit: bigint;
21
- preVerificationGas: bigint;
22
- maxPriorityFeePerGas: bigint;
23
- maxFeePerGas: bigint;
24
- }
25
-
26
- export interface PaymasterGasParams {
27
- paymasterGasLimit: bigint;
28
- paymasterPostOpGasLimit: bigint;
29
- }
30
-
1
+ import { concat, pad } from 'viem';
31
2
  export class UserOperationBuilder {
32
3
  /**
33
4
  * Packs verificationGasLimit and callGasLimit into a bytes32 Hex string.
34
5
  */
35
- static packAccountGasLimits(verificationGasLimit: bigint, callGasLimit: bigint): Hex {
6
+ static packAccountGasLimits(verificationGasLimit, callGasLimit) {
36
7
  return concat([
37
8
  pad(`0x${verificationGasLimit.toString(16)}`, { dir: 'left', size: 16 }),
38
9
  pad(`0x${callGasLimit.toString(16)}`, { dir: 'left', size: 16 })
39
- ]) as Hex;
10
+ ]);
40
11
  }
41
-
42
12
  /**
43
13
  * Packs maxPriorityFeePerGas and maxFeePerGas into a bytes32 Hex string.
44
14
  */
45
- static packGasFees(maxPriorityFeePerGas: bigint, maxFeePerGas: bigint): Hex {
15
+ static packGasFees(maxPriorityFeePerGas, maxFeePerGas) {
46
16
  return concat([
47
17
  pad(`0x${maxPriorityFeePerGas.toString(16)}`, { dir: 'left', size: 16 }),
48
18
  pad(`0x${maxFeePerGas.toString(16)}`, { dir: 'left', size: 16 })
49
- ]) as Hex;
19
+ ]);
50
20
  }
51
-
52
21
  /**
53
22
  * Packs Paymaster parameters into the v0.7 paymasterAndData format.
54
23
  */
55
- static packPaymasterAndData(
56
- paymaster: Address,
57
- paymasterGasLimit: bigint,
58
- paymasterPostOpGasLimit: bigint,
59
- paymasterData: Hex = '0x'
60
- ): Hex {
24
+ static packPaymasterAndData(paymaster, paymasterGasLimit, paymasterPostOpGasLimit, paymasterData = '0x') {
61
25
  return concat([
62
26
  paymaster,
63
27
  pad(`0x${paymasterGasLimit.toString(16)}`, { dir: 'left', size: 16 }),
64
28
  pad(`0x${paymasterPostOpGasLimit.toString(16)}`, { dir: 'left', size: 16 }),
65
29
  paymasterData
66
- ]) as Hex;
30
+ ]);
67
31
  }
68
-
69
32
  /**
70
33
  * Pack PaymasterV4 Deposit-Only paymasterAndData
71
- *
34
+ *
72
35
  * v0.7 EntryPoint packs: [paymaster(20)][verificationGas(16)][postOpGas(16)][paymasterData]
73
36
  * Contract extracts token at offset 52 = paymasterData[0:20]
74
- *
37
+ *
75
38
  * So paymasterData format must be: [token(20)][validUntil(6)][validAfter(6)]
76
- *
39
+ *
77
40
  * @param paymaster - Paymaster address (20 bytes)
78
41
  * @param paymentToken - ERC20 token address (20 bytes, FIRST in paymasterData!)
79
42
  * @param validUntil - Validity end timestamp (6 bytes)
80
43
  * @param validAfter - Validity start timestamp (6 bytes)
81
44
  */
82
- static packPaymasterV4DepositData(
83
- paymaster: Address,
84
- paymasterVerificationGasLimit: bigint,
85
- paymasterPostOpGasLimit: bigint,
86
- paymentToken: Address,
87
- validUntil: bigint,
88
- validAfter: bigint
89
- ): Hex {
45
+ static packPaymasterV4DepositData(paymaster, paymasterVerificationGasLimit, paymasterPostOpGasLimit, paymentToken, validUntil, validAfter) {
90
46
  return concat([
91
47
  paymaster,
92
48
  pad(`0x${paymasterVerificationGasLimit.toString(16)}`, { dir: 'left', size: 16 }),
@@ -94,57 +50,45 @@ export class UserOperationBuilder {
94
50
  paymentToken,
95
51
  pad(`0x${validUntil.toString(16)}`, { dir: 'left', size: 6 }),
96
52
  pad(`0x${validAfter.toString(16)}`, { dir: 'left', size: 6 })
97
- ]) as Hex;
53
+ ]);
98
54
  }
99
-
100
55
  /**
101
56
  * Computes the UserOperation hash for signing.
102
57
  */
103
- static async getUserOpHash({
104
- userOp,
105
- entryPoint,
106
- chainId,
107
- publicClient
108
- }: {
109
- userOp: PackedUserOperation;
110
- entryPoint: Address;
111
- chainId: number;
112
- publicClient: PublicClient;
113
- }): Promise<Hex> {
114
- return await (publicClient as any).readContract({
58
+ static async getUserOpHash({ userOp, entryPoint, chainId, publicClient }) {
59
+ return await publicClient.readContract({
115
60
  address: entryPoint,
116
61
  abi: [{
117
- type: 'function',
118
- name: 'getUserOpHash',
119
- inputs: [{
120
- type: 'tuple',
121
- components: [
122
- { name: 'sender', type: 'address' },
123
- { name: 'nonce', type: 'uint256' },
124
- { name: 'initCode', type: 'bytes' },
125
- { name: 'callData', type: 'bytes' },
126
- { name: 'accountGasLimits', type: 'bytes32' },
127
- { name: 'preVerificationGas', type: 'uint256' },
128
- { name: 'gasFees', type: 'bytes32' },
129
- { name: 'paymasterAndData', type: 'bytes' },
130
- { name: 'signature', type: 'bytes' }
131
- ]
62
+ type: 'function',
63
+ name: 'getUserOpHash',
64
+ inputs: [{
65
+ type: 'tuple',
66
+ components: [
67
+ { name: 'sender', type: 'address' },
68
+ { name: 'nonce', type: 'uint256' },
69
+ { name: 'initCode', type: 'bytes' },
70
+ { name: 'callData', type: 'bytes' },
71
+ { name: 'accountGasLimits', type: 'bytes32' },
72
+ { name: 'preVerificationGas', type: 'uint256' },
73
+ { name: 'gasFees', type: 'bytes32' },
74
+ { name: 'paymasterAndData', type: 'bytes' },
75
+ { name: 'signature', type: 'bytes' }
76
+ ]
77
+ }],
78
+ outputs: [{ type: 'bytes32' }],
79
+ stateMutability: 'view'
132
80
  }],
133
- outputs: [{ type: 'bytes32' }],
134
- stateMutability: 'view'
135
- }],
136
81
  functionName: 'getUserOpHash',
137
82
  args: [userOp]
138
- }) as Hex;
83
+ });
139
84
  }
140
-
141
85
  /**
142
86
  * Formats a PackedUserOperation into a JSON-RPC compatible object with hex-encoded strings.
143
87
  */
144
- static jsonifyUserOp(userOp: any): any {
88
+ static jsonifyUserOp(userOp) {
145
89
  // Strict allowlist for ERC-4337 v0.7 PackedUserOperation
146
90
  // Alchemy rejects requests with unknown fields.
147
- const result: any = {
91
+ const result = {
148
92
  sender: userOp.sender,
149
93
  nonce: userOp.nonce,
150
94
  initCode: userOp.initCode,
@@ -155,26 +99,26 @@ export class UserOperationBuilder {
155
99
  paymasterAndData: userOp.paymasterAndData,
156
100
  signature: userOp.signature
157
101
  };
158
-
159
102
  // Ensure all numeric fields are hex strings and padded
160
103
  // Helper to ensure '0x' prefix and valid hex string
161
- const toCompactHex = (val: bigint | string | number) => {
162
- if (typeof val === 'bigint') return `0x${val.toString(16)}`;
163
- if (typeof val === 'number') return `0x${val.toString(16)}`;
164
- if (typeof val === 'string') {
165
- if (val === '0x') return '0x0';
166
- if (val === '0x0') return '0x0';
167
- return val.replace(/^0x0+(?!$)/, '0x');
168
- }
169
- return val;
104
+ const toCompactHex = (val) => {
105
+ if (typeof val === 'bigint')
106
+ return `0x${val.toString(16)}`;
107
+ if (typeof val === 'number')
108
+ return `0x${val.toString(16)}`;
109
+ if (typeof val === 'string') {
110
+ if (val === '0x')
111
+ return '0x0';
112
+ if (val === '0x0')
113
+ return '0x0';
114
+ return val.replace(/^0x0+(?!$)/, '0x');
115
+ }
116
+ return val;
170
117
  };
171
-
172
118
  result.nonce = toCompactHex(result.nonce);
173
119
  result.preVerificationGas = toCompactHex(result.preVerificationGas);
174
-
175
120
  return result;
176
121
  }
177
-
178
122
  /**
179
123
  * Converts a PackedUserOperation to the Alchemy-specific v0.7 JSON format.
180
124
  * @param userOp - The packed UserOperation
@@ -182,57 +126,46 @@ export class UserOperationBuilder {
182
126
  * @param options.paymasterVerificationGasLimit - Gas limit for paymaster verification (default: 200000)
183
127
  * @param options.paymasterPostOpGasLimit - Gas limit for paymaster postOp (default: 200000)
184
128
  */
185
- static toAlchemyUserOperation(userOp: any, options?: {
186
- paymasterVerificationGasLimit?: bigint;
187
- paymasterPostOpGasLimit?: bigint;
188
- }): any {
189
- const result: any = {
129
+ static toAlchemyUserOperation(userOp, options) {
130
+ const result = {
190
131
  sender: userOp.sender,
191
132
  nonce: userOp.nonce,
192
133
  callData: userOp.callData,
193
134
  signature: userOp.signature
194
135
  };
195
-
196
136
  // 1. Unpack accountGasLimits: [verificationGasLimit(16)][callGasLimit(16)]
197
137
  if (userOp.accountGasLimits && userOp.accountGasLimits !== '0x') {
198
138
  const val = userOp.accountGasLimits.toString().startsWith('0x') ? userOp.accountGasLimits.slice(2) : userOp.accountGasLimits;
199
139
  const padded = val.padStart(64, '0');
200
140
  const verificationGasLimit = BigInt('0x' + padded.slice(0, 32));
201
141
  const callGasLimit = BigInt('0x' + padded.slice(32, 64));
202
-
203
142
  result.verificationGasLimit = `0x${verificationGasLimit.toString(16)}`;
204
143
  result.callGasLimit = `0x${callGasLimit.toString(16)}`;
205
144
  }
206
-
207
145
  // 2. Unpack gasFees: [maxPriorityFee(16)][maxFee(16)]
208
146
  if (userOp.gasFees && userOp.gasFees !== '0x') {
209
- const val = userOp.gasFees.toString().startsWith('0x') ? userOp.gasFees.slice(2) : userOp.gasFees;
210
- const padded = val.padStart(64, '0');
211
- const maxPriorityFeePerGas = BigInt('0x' + padded.slice(0, 32));
212
- const maxFeePerGas = BigInt('0x' + padded.slice(32, 64));
213
-
214
- result.maxPriorityFeePerGas = `0x${maxPriorityFeePerGas.toString(16)}`;
215
- result.maxFeePerGas = `0x${maxFeePerGas.toString(16)}`;
147
+ const val = userOp.gasFees.toString().startsWith('0x') ? userOp.gasFees.slice(2) : userOp.gasFees;
148
+ const padded = val.padStart(64, '0');
149
+ const maxPriorityFeePerGas = BigInt('0x' + padded.slice(0, 32));
150
+ const maxFeePerGas = BigInt('0x' + padded.slice(32, 64));
151
+ result.maxPriorityFeePerGas = `0x${maxPriorityFeePerGas.toString(16)}`;
152
+ result.maxFeePerGas = `0x${maxFeePerGas.toString(16)}`;
216
153
  }
217
-
218
154
  // 3. PreVerificationGas (Direct copy but ensure hex)
219
155
  if (userOp.preVerificationGas) {
220
- result.preVerificationGas = `0x${BigInt(userOp.preVerificationGas).toString(16)}`;
156
+ result.preVerificationGas = `0x${BigInt(userOp.preVerificationGas).toString(16)}`;
221
157
  }
222
-
223
158
  // 4. Unpack initCode -> factory + factoryData
224
159
  if (userOp.initCode && userOp.initCode !== '0x') {
225
160
  const initCode = userOp.initCode.toString();
226
161
  result.factory = initCode.slice(0, 42); // First 20 bytes
227
162
  result.factoryData = '0x' + initCode.slice(42);
228
163
  }
229
-
230
164
  // 5. Unpack paymasterAndData -> paymaster + gas limits + paymasterData
231
165
  // Full format: [paymaster(20)][verificationGas(16)][postOpGas(16)][paymasterData]
232
166
  // paymasterData = [token(20)][validUntil(6)][validAfter(6)] = 32 bytes
233
167
  if (userOp.paymasterAndData && userOp.paymasterAndData !== '0x') {
234
168
  const pmd = userOp.paymasterAndData.toString().startsWith('0x') ? userOp.paymasterAndData.slice(2) : userOp.paymasterAndData;
235
-
236
169
  // Check if we have full format with gas limits (at least 20+16+16 = 52 bytes = 104 hex chars)
237
170
  if (pmd.length >= 104) {
238
171
  // Full v0.7 packed format
@@ -242,7 +175,8 @@ export class UserOperationBuilder {
242
175
  result.paymasterVerificationGasLimit = `0x${vGas.toString(16)}`;
243
176
  result.paymasterPostOpGasLimit = `0x${pGas.toString(16)}`;
244
177
  result.paymasterData = '0x' + pmd.slice(104); // bytes 52+ (token + timestamps)
245
- } else if (pmd.length >= 40) {
178
+ }
179
+ else if (pmd.length >= 40) {
246
180
  // Fallback: assume 52-byte format without gas limits (old format)
247
181
  result.paymaster = '0x' + pmd.slice(0, 40);
248
182
  result.paymasterData = '0x' + pmd.slice(40);
@@ -251,7 +185,6 @@ export class UserOperationBuilder {
251
185
  result.paymasterPostOpGasLimit = `0x${(options?.paymasterPostOpGasLimit || defaultGasLimit).toString(16)}`;
252
186
  }
253
187
  }
254
-
255
188
  return result;
256
189
  }
257
190
  }
@@ -0,0 +1 @@
1
+ export {};