@sudobility/contracts 0.14.0

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 (322) hide show
  1. package/README.md +353 -0
  2. package/artifacts/contracts/Mailer.sol/Mailer.d.ts +1146 -0
  3. package/artifacts/contracts/Mailer.sol/Mailer.dbg.json +4 -0
  4. package/artifacts/contracts/Mailer.sol/Mailer.json +1096 -0
  5. package/artifacts/contracts/Mailer.sol/artifacts.d.ts +21 -0
  6. package/artifacts/contracts/MockUSDC.sol/MockUSDC.d.ts +284 -0
  7. package/artifacts/contracts/MockUSDC.sol/MockUSDC.dbg.json +4 -0
  8. package/artifacts/contracts/MockUSDC.sol/MockUSDC.json +234 -0
  9. package/artifacts/contracts/MockUSDC.sol/artifacts.d.ts +21 -0
  10. package/artifacts/contracts/interfaces/IERC20.sol/IERC20.d.ts +157 -0
  11. package/artifacts/contracts/interfaces/IERC20.sol/IERC20.dbg.json +4 -0
  12. package/artifacts/contracts/interfaces/IERC20.sol/IERC20.json +107 -0
  13. package/artifacts/contracts/interfaces/IERC20.sol/artifacts.d.ts +21 -0
  14. package/dist/evm/src/evm/index.d.ts +4 -0
  15. package/dist/evm/src/evm/index.d.ts.map +1 -0
  16. package/dist/evm/src/evm/index.js +10 -0
  17. package/dist/evm/src/evm/index.js.map +1 -0
  18. package/dist/evm/src/evm/mailer-client.d.ts +966 -0
  19. package/dist/evm/src/evm/mailer-client.d.ts.map +1 -0
  20. package/dist/evm/src/evm/mailer-client.js +619 -0
  21. package/dist/evm/src/evm/mailer-client.js.map +1 -0
  22. package/dist/evm/typechain-types/Mailer.d.ts +698 -0
  23. package/dist/evm/typechain-types/Mailer.d.ts.map +1 -0
  24. package/dist/evm/typechain-types/Mailer.js +3 -0
  25. package/dist/evm/typechain-types/Mailer.js.map +1 -0
  26. package/dist/evm/typechain-types/MockUSDC.d.ts +118 -0
  27. package/dist/evm/typechain-types/MockUSDC.d.ts.map +1 -0
  28. package/dist/evm/typechain-types/MockUSDC.js +3 -0
  29. package/dist/evm/typechain-types/MockUSDC.js.map +1 -0
  30. package/dist/evm/typechain-types/common.d.ts +51 -0
  31. package/dist/evm/typechain-types/common.d.ts.map +1 -0
  32. package/dist/evm/typechain-types/common.js +3 -0
  33. package/dist/evm/typechain-types/common.js.map +1 -0
  34. package/dist/evm/typechain-types/factories/Mailer__factory.d.ts +875 -0
  35. package/dist/evm/typechain-types/factories/Mailer__factory.d.ts.map +1 -0
  36. package/dist/evm/typechain-types/factories/Mailer__factory.js +1125 -0
  37. package/dist/evm/typechain-types/factories/Mailer__factory.js.map +1 -0
  38. package/dist/evm/typechain-types/factories/MockUSDC__factory.d.ts +193 -0
  39. package/dist/evm/typechain-types/factories/MockUSDC__factory.d.ts.map +1 -0
  40. package/dist/evm/typechain-types/factories/MockUSDC__factory.js +263 -0
  41. package/dist/evm/typechain-types/factories/MockUSDC__factory.js.map +1 -0
  42. package/dist/evm/typechain-types/factories/index.d.ts +4 -0
  43. package/dist/evm/typechain-types/factories/index.d.ts.map +1 -0
  44. package/dist/evm/typechain-types/factories/index.js +45 -0
  45. package/dist/evm/typechain-types/factories/index.js.map +1 -0
  46. package/dist/evm/typechain-types/factories/interfaces/IERC20__factory.d.ts +80 -0
  47. package/dist/evm/typechain-types/factories/interfaces/IERC20__factory.d.ts.map +1 -0
  48. package/dist/evm/typechain-types/factories/interfaces/IERC20__factory.js +116 -0
  49. package/dist/evm/typechain-types/factories/interfaces/IERC20__factory.js.map +1 -0
  50. package/dist/evm/typechain-types/factories/interfaces/index.d.ts +2 -0
  51. package/dist/evm/typechain-types/factories/interfaces/index.d.ts.map +1 -0
  52. package/dist/evm/typechain-types/factories/interfaces/index.js +9 -0
  53. package/dist/evm/typechain-types/factories/interfaces/index.js.map +1 -0
  54. package/dist/evm/typechain-types/index.d.ts +10 -0
  55. package/dist/evm/typechain-types/index.d.ts.map +1 -0
  56. package/dist/evm/typechain-types/index.js +44 -0
  57. package/dist/evm/typechain-types/index.js.map +1 -0
  58. package/dist/evm/typechain-types/interfaces/IERC20.d.ts +70 -0
  59. package/dist/evm/typechain-types/interfaces/IERC20.d.ts.map +1 -0
  60. package/dist/evm/typechain-types/interfaces/IERC20.js +3 -0
  61. package/dist/evm/typechain-types/interfaces/IERC20.js.map +1 -0
  62. package/dist/evm/typechain-types/interfaces/index.d.ts +2 -0
  63. package/dist/evm/typechain-types/interfaces/index.d.ts.map +1 -0
  64. package/dist/evm/typechain-types/interfaces/index.js +3 -0
  65. package/dist/evm/typechain-types/interfaces/index.js.map +1 -0
  66. package/dist/solana/solana/index.d.ts +3 -0
  67. package/dist/solana/solana/index.d.ts.map +1 -0
  68. package/dist/solana/solana/index.js +21 -0
  69. package/dist/solana/solana/index.js.map +1 -0
  70. package/dist/solana/solana/mailer-client.d.ts +282 -0
  71. package/dist/solana/solana/mailer-client.d.ts.map +1 -0
  72. package/dist/solana/solana/mailer-client.js +989 -0
  73. package/dist/solana/solana/mailer-client.js.map +1 -0
  74. package/dist/solana/solana/types.d.ts +28 -0
  75. package/dist/solana/solana/types.d.ts.map +1 -0
  76. package/dist/solana/solana/types.js +23 -0
  77. package/dist/solana/solana/types.js.map +1 -0
  78. package/dist/solana/utils/currency.d.ts +26 -0
  79. package/dist/solana/utils/currency.d.ts.map +1 -0
  80. package/dist/solana/utils/currency.js +36 -0
  81. package/dist/solana/utils/currency.js.map +1 -0
  82. package/dist/unified/package.json +3 -0
  83. package/dist/unified/src/evm/index.d.ts +4 -0
  84. package/dist/unified/src/evm/index.d.ts.map +1 -0
  85. package/dist/unified/src/evm/index.js +10 -0
  86. package/dist/unified/src/evm/index.js.map +1 -0
  87. package/dist/unified/src/evm/mailer-client.d.ts +966 -0
  88. package/dist/unified/src/evm/mailer-client.d.ts.map +1 -0
  89. package/dist/unified/src/evm/mailer-client.js +619 -0
  90. package/dist/unified/src/evm/mailer-client.js.map +1 -0
  91. package/dist/unified/src/react/context/MailerProvider.d.ts +102 -0
  92. package/dist/unified/src/react/context/MailerProvider.d.ts.map +1 -0
  93. package/dist/unified/src/react/context/MailerProvider.js +160 -0
  94. package/dist/unified/src/react/context/MailerProvider.js.map +1 -0
  95. package/dist/unified/src/react/hooks/useMailerMutations.d.ts +301 -0
  96. package/dist/unified/src/react/hooks/useMailerMutations.d.ts.map +1 -0
  97. package/dist/unified/src/react/hooks/useMailerMutations.js +417 -0
  98. package/dist/unified/src/react/hooks/useMailerMutations.js.map +1 -0
  99. package/dist/unified/src/react/hooks/useMailerQueries.d.ts +130 -0
  100. package/dist/unified/src/react/hooks/useMailerQueries.d.ts.map +1 -0
  101. package/dist/unified/src/react/hooks/useMailerQueries.js +197 -0
  102. package/dist/unified/src/react/hooks/useMailerQueries.js.map +1 -0
  103. package/dist/unified/src/react/index.d.ts +37 -0
  104. package/dist/unified/src/react/index.d.ts.map +1 -0
  105. package/dist/unified/src/react/index.js +70 -0
  106. package/dist/unified/src/react/index.js.map +1 -0
  107. package/dist/unified/src/solana/index.d.ts +3 -0
  108. package/dist/unified/src/solana/index.d.ts.map +1 -0
  109. package/dist/unified/src/solana/index.js +21 -0
  110. package/dist/unified/src/solana/index.js.map +1 -0
  111. package/dist/unified/src/solana/mailer-client.d.ts +282 -0
  112. package/dist/unified/src/solana/mailer-client.d.ts.map +1 -0
  113. package/dist/unified/src/solana/mailer-client.js +989 -0
  114. package/dist/unified/src/solana/mailer-client.js.map +1 -0
  115. package/dist/unified/src/solana/types.d.ts +28 -0
  116. package/dist/unified/src/solana/types.d.ts.map +1 -0
  117. package/dist/unified/src/solana/types.js +23 -0
  118. package/dist/unified/src/solana/types.js.map +1 -0
  119. package/dist/unified/src/unified/index.d.ts +4 -0
  120. package/dist/unified/src/unified/index.d.ts.map +1 -0
  121. package/dist/unified/src/unified/index.js +9 -0
  122. package/dist/unified/src/unified/index.js.map +1 -0
  123. package/dist/unified/src/unified/onchain-mailer-client.d.ts +173 -0
  124. package/dist/unified/src/unified/onchain-mailer-client.d.ts.map +1 -0
  125. package/dist/unified/src/unified/onchain-mailer-client.js +1048 -0
  126. package/dist/unified/src/unified/onchain-mailer-client.js.map +1 -0
  127. package/dist/unified/src/unified/types.d.ts +47 -0
  128. package/dist/unified/src/unified/types.d.ts.map +1 -0
  129. package/dist/unified/src/unified/types.js +3 -0
  130. package/dist/unified/src/unified/types.js.map +1 -0
  131. package/dist/unified/src/unified/wallet-detector.d.ts +28 -0
  132. package/dist/unified/src/unified/wallet-detector.d.ts.map +1 -0
  133. package/dist/unified/src/unified/wallet-detector.js +63 -0
  134. package/dist/unified/src/unified/wallet-detector.js.map +1 -0
  135. package/dist/unified/src/utils/chain-config.d.ts +75 -0
  136. package/dist/unified/src/utils/chain-config.d.ts.map +1 -0
  137. package/dist/unified/src/utils/chain-config.js +203 -0
  138. package/dist/unified/src/utils/chain-config.js.map +1 -0
  139. package/dist/unified/src/utils/currency.d.ts +26 -0
  140. package/dist/unified/src/utils/currency.d.ts.map +1 -0
  141. package/dist/unified/src/utils/currency.js +36 -0
  142. package/dist/unified/src/utils/currency.js.map +1 -0
  143. package/dist/unified/src/utils/index.d.ts +4 -0
  144. package/dist/unified/src/utils/index.d.ts.map +1 -0
  145. package/dist/unified/src/utils/index.js +20 -0
  146. package/dist/unified/src/utils/index.js.map +1 -0
  147. package/dist/unified/src/utils/validation.d.ts +10 -0
  148. package/dist/unified/src/utils/validation.d.ts.map +1 -0
  149. package/dist/unified/src/utils/validation.js +102 -0
  150. package/dist/unified/src/utils/validation.js.map +1 -0
  151. package/dist/unified/typechain-types/Mailer.d.ts +698 -0
  152. package/dist/unified/typechain-types/Mailer.d.ts.map +1 -0
  153. package/dist/unified/typechain-types/Mailer.js +3 -0
  154. package/dist/unified/typechain-types/Mailer.js.map +1 -0
  155. package/dist/unified/typechain-types/MockUSDC.d.ts +118 -0
  156. package/dist/unified/typechain-types/MockUSDC.d.ts.map +1 -0
  157. package/dist/unified/typechain-types/MockUSDC.js +3 -0
  158. package/dist/unified/typechain-types/MockUSDC.js.map +1 -0
  159. package/dist/unified/typechain-types/common.d.ts +51 -0
  160. package/dist/unified/typechain-types/common.d.ts.map +1 -0
  161. package/dist/unified/typechain-types/common.js +3 -0
  162. package/dist/unified/typechain-types/common.js.map +1 -0
  163. package/dist/unified/typechain-types/factories/Mailer__factory.d.ts +875 -0
  164. package/dist/unified/typechain-types/factories/Mailer__factory.d.ts.map +1 -0
  165. package/dist/unified/typechain-types/factories/Mailer__factory.js +1125 -0
  166. package/dist/unified/typechain-types/factories/Mailer__factory.js.map +1 -0
  167. package/dist/unified/typechain-types/factories/MockUSDC__factory.d.ts +193 -0
  168. package/dist/unified/typechain-types/factories/MockUSDC__factory.d.ts.map +1 -0
  169. package/dist/unified/typechain-types/factories/MockUSDC__factory.js +263 -0
  170. package/dist/unified/typechain-types/factories/MockUSDC__factory.js.map +1 -0
  171. package/dist/unified/typechain-types/factories/index.d.ts +4 -0
  172. package/dist/unified/typechain-types/factories/index.d.ts.map +1 -0
  173. package/dist/unified/typechain-types/factories/index.js +45 -0
  174. package/dist/unified/typechain-types/factories/index.js.map +1 -0
  175. package/dist/unified/typechain-types/factories/interfaces/IERC20__factory.d.ts +80 -0
  176. package/dist/unified/typechain-types/factories/interfaces/IERC20__factory.d.ts.map +1 -0
  177. package/dist/unified/typechain-types/factories/interfaces/IERC20__factory.js +116 -0
  178. package/dist/unified/typechain-types/factories/interfaces/IERC20__factory.js.map +1 -0
  179. package/dist/unified/typechain-types/factories/interfaces/index.d.ts +2 -0
  180. package/dist/unified/typechain-types/factories/interfaces/index.d.ts.map +1 -0
  181. package/dist/unified/typechain-types/factories/interfaces/index.js +9 -0
  182. package/dist/unified/typechain-types/factories/interfaces/index.js.map +1 -0
  183. package/dist/unified/typechain-types/index.d.ts +10 -0
  184. package/dist/unified/typechain-types/index.d.ts.map +1 -0
  185. package/dist/unified/typechain-types/index.js +44 -0
  186. package/dist/unified/typechain-types/index.js.map +1 -0
  187. package/dist/unified/typechain-types/interfaces/IERC20.d.ts +70 -0
  188. package/dist/unified/typechain-types/interfaces/IERC20.d.ts.map +1 -0
  189. package/dist/unified/typechain-types/interfaces/IERC20.js +3 -0
  190. package/dist/unified/typechain-types/interfaces/IERC20.js.map +1 -0
  191. package/dist/unified/typechain-types/interfaces/index.d.ts +2 -0
  192. package/dist/unified/typechain-types/interfaces/index.d.ts.map +1 -0
  193. package/dist/unified/typechain-types/interfaces/index.js +3 -0
  194. package/dist/unified/typechain-types/interfaces/index.js.map +1 -0
  195. package/dist/unified-esm/src/evm/index.d.ts +4 -0
  196. package/dist/unified-esm/src/evm/index.d.ts.map +1 -0
  197. package/dist/unified-esm/src/evm/index.js +5 -0
  198. package/dist/unified-esm/src/evm/index.js.map +1 -0
  199. package/dist/unified-esm/src/evm/mailer-client.d.ts +966 -0
  200. package/dist/unified-esm/src/evm/mailer-client.d.ts.map +1 -0
  201. package/dist/unified-esm/src/evm/mailer-client.js +615 -0
  202. package/dist/unified-esm/src/evm/mailer-client.js.map +1 -0
  203. package/dist/unified-esm/src/react/context/MailerProvider.d.ts +102 -0
  204. package/dist/unified-esm/src/react/context/MailerProvider.d.ts.map +1 -0
  205. package/dist/unified-esm/src/react/context/MailerProvider.js +120 -0
  206. package/dist/unified-esm/src/react/context/MailerProvider.js.map +1 -0
  207. package/dist/unified-esm/src/react/hooks/useMailerMutations.d.ts +301 -0
  208. package/dist/unified-esm/src/react/hooks/useMailerMutations.d.ts.map +1 -0
  209. package/dist/unified-esm/src/react/hooks/useMailerMutations.js +400 -0
  210. package/dist/unified-esm/src/react/hooks/useMailerMutations.js.map +1 -0
  211. package/dist/unified-esm/src/react/hooks/useMailerQueries.d.ts +130 -0
  212. package/dist/unified-esm/src/react/hooks/useMailerQueries.d.ts.map +1 -0
  213. package/dist/unified-esm/src/react/hooks/useMailerQueries.js +186 -0
  214. package/dist/unified-esm/src/react/hooks/useMailerQueries.js.map +1 -0
  215. package/dist/unified-esm/src/react/index.d.ts +37 -0
  216. package/dist/unified-esm/src/react/index.d.ts.map +1 -0
  217. package/dist/unified-esm/src/react/index.js +39 -0
  218. package/dist/unified-esm/src/react/index.js.map +1 -0
  219. package/dist/unified-esm/src/solana/index.d.ts +3 -0
  220. package/dist/unified-esm/src/solana/index.d.ts.map +1 -0
  221. package/dist/unified-esm/src/solana/index.js +3 -0
  222. package/dist/unified-esm/src/solana/index.js.map +1 -0
  223. package/dist/unified-esm/src/solana/mailer-client.d.ts +282 -0
  224. package/dist/unified-esm/src/solana/mailer-client.d.ts.map +1 -0
  225. package/dist/unified-esm/src/solana/mailer-client.js +985 -0
  226. package/dist/unified-esm/src/solana/mailer-client.js.map +1 -0
  227. package/dist/unified-esm/src/solana/types.d.ts +28 -0
  228. package/dist/unified-esm/src/solana/types.d.ts.map +1 -0
  229. package/dist/unified-esm/src/solana/types.js +16 -0
  230. package/dist/unified-esm/src/solana/types.js.map +1 -0
  231. package/dist/unified-esm/src/unified/index.d.ts +4 -0
  232. package/dist/unified-esm/src/unified/index.d.ts.map +1 -0
  233. package/dist/unified-esm/src/unified/index.js +4 -0
  234. package/dist/unified-esm/src/unified/index.js.map +1 -0
  235. package/dist/unified-esm/src/unified/onchain-mailer-client.d.ts +173 -0
  236. package/dist/unified-esm/src/unified/onchain-mailer-client.d.ts.map +1 -0
  237. package/dist/unified-esm/src/unified/onchain-mailer-client.js +1011 -0
  238. package/dist/unified-esm/src/unified/onchain-mailer-client.js.map +1 -0
  239. package/dist/unified-esm/src/unified/types.d.ts +47 -0
  240. package/dist/unified-esm/src/unified/types.d.ts.map +1 -0
  241. package/dist/unified-esm/src/unified/types.js +2 -0
  242. package/dist/unified-esm/src/unified/types.js.map +1 -0
  243. package/dist/unified-esm/src/unified/wallet-detector.d.ts +28 -0
  244. package/dist/unified-esm/src/unified/wallet-detector.d.ts.map +1 -0
  245. package/dist/unified-esm/src/unified/wallet-detector.js +59 -0
  246. package/dist/unified-esm/src/unified/wallet-detector.js.map +1 -0
  247. package/dist/unified-esm/src/utils/chain-config.d.ts +75 -0
  248. package/dist/unified-esm/src/utils/chain-config.d.ts.map +1 -0
  249. package/dist/unified-esm/src/utils/chain-config.js +199 -0
  250. package/dist/unified-esm/src/utils/chain-config.js.map +1 -0
  251. package/dist/unified-esm/src/utils/currency.d.ts +26 -0
  252. package/dist/unified-esm/src/utils/currency.d.ts.map +1 -0
  253. package/dist/unified-esm/src/utils/currency.js +31 -0
  254. package/dist/unified-esm/src/utils/currency.js.map +1 -0
  255. package/dist/unified-esm/src/utils/index.d.ts +4 -0
  256. package/dist/unified-esm/src/utils/index.d.ts.map +1 -0
  257. package/dist/unified-esm/src/utils/index.js +4 -0
  258. package/dist/unified-esm/src/utils/index.js.map +1 -0
  259. package/dist/unified-esm/src/utils/validation.d.ts +10 -0
  260. package/dist/unified-esm/src/utils/validation.d.ts.map +1 -0
  261. package/dist/unified-esm/src/utils/validation.js +96 -0
  262. package/dist/unified-esm/src/utils/validation.js.map +1 -0
  263. package/dist/unified-esm/typechain-types/Mailer.d.ts +698 -0
  264. package/dist/unified-esm/typechain-types/Mailer.d.ts.map +1 -0
  265. package/dist/unified-esm/typechain-types/Mailer.js +2 -0
  266. package/dist/unified-esm/typechain-types/Mailer.js.map +1 -0
  267. package/dist/unified-esm/typechain-types/MockUSDC.d.ts +118 -0
  268. package/dist/unified-esm/typechain-types/MockUSDC.d.ts.map +1 -0
  269. package/dist/unified-esm/typechain-types/MockUSDC.js +2 -0
  270. package/dist/unified-esm/typechain-types/MockUSDC.js.map +1 -0
  271. package/dist/unified-esm/typechain-types/common.d.ts +51 -0
  272. package/dist/unified-esm/typechain-types/common.d.ts.map +1 -0
  273. package/dist/unified-esm/typechain-types/common.js +2 -0
  274. package/dist/unified-esm/typechain-types/common.js.map +1 -0
  275. package/dist/unified-esm/typechain-types/factories/Mailer__factory.d.ts +875 -0
  276. package/dist/unified-esm/typechain-types/factories/Mailer__factory.d.ts.map +1 -0
  277. package/dist/unified-esm/typechain-types/factories/Mailer__factory.js +1121 -0
  278. package/dist/unified-esm/typechain-types/factories/Mailer__factory.js.map +1 -0
  279. package/dist/unified-esm/typechain-types/factories/MockUSDC__factory.d.ts +193 -0
  280. package/dist/unified-esm/typechain-types/factories/MockUSDC__factory.d.ts.map +1 -0
  281. package/dist/unified-esm/typechain-types/factories/MockUSDC__factory.js +259 -0
  282. package/dist/unified-esm/typechain-types/factories/MockUSDC__factory.js.map +1 -0
  283. package/dist/unified-esm/typechain-types/factories/index.d.ts +4 -0
  284. package/dist/unified-esm/typechain-types/factories/index.d.ts.map +1 -0
  285. package/dist/unified-esm/typechain-types/factories/index.js +7 -0
  286. package/dist/unified-esm/typechain-types/factories/index.js.map +1 -0
  287. package/dist/unified-esm/typechain-types/factories/interfaces/IERC20__factory.d.ts +80 -0
  288. package/dist/unified-esm/typechain-types/factories/interfaces/IERC20__factory.d.ts.map +1 -0
  289. package/dist/unified-esm/typechain-types/factories/interfaces/IERC20__factory.js +112 -0
  290. package/dist/unified-esm/typechain-types/factories/interfaces/IERC20__factory.js.map +1 -0
  291. package/dist/unified-esm/typechain-types/factories/interfaces/index.d.ts +2 -0
  292. package/dist/unified-esm/typechain-types/factories/interfaces/index.d.ts.map +1 -0
  293. package/dist/unified-esm/typechain-types/factories/interfaces/index.js +5 -0
  294. package/dist/unified-esm/typechain-types/factories/interfaces/index.js.map +1 -0
  295. package/dist/unified-esm/typechain-types/index.d.ts +10 -0
  296. package/dist/unified-esm/typechain-types/index.d.ts.map +1 -0
  297. package/dist/unified-esm/typechain-types/index.js +5 -0
  298. package/dist/unified-esm/typechain-types/index.js.map +1 -0
  299. package/dist/unified-esm/typechain-types/interfaces/IERC20.d.ts +70 -0
  300. package/dist/unified-esm/typechain-types/interfaces/IERC20.d.ts.map +1 -0
  301. package/dist/unified-esm/typechain-types/interfaces/IERC20.js +2 -0
  302. package/dist/unified-esm/typechain-types/interfaces/IERC20.js.map +1 -0
  303. package/dist/unified-esm/typechain-types/interfaces/index.d.ts +2 -0
  304. package/dist/unified-esm/typechain-types/interfaces/index.d.ts.map +1 -0
  305. package/dist/unified-esm/typechain-types/interfaces/index.js +2 -0
  306. package/dist/unified-esm/typechain-types/interfaces/index.js.map +1 -0
  307. package/package.json +250 -0
  308. package/programs/mailer/Cargo.toml +29 -0
  309. package/programs/mailer/src/lib.rs +2034 -0
  310. package/programs/mailer/tests/integration_tests.rs +1236 -0
  311. package/typechain-types/Mailer.ts +1393 -0
  312. package/typechain-types/MockUSDC.ts +236 -0
  313. package/typechain-types/common.ts +131 -0
  314. package/typechain-types/factories/Mailer__factory.ts +1157 -0
  315. package/typechain-types/factories/MockUSDC__factory.ts +284 -0
  316. package/typechain-types/factories/index.ts +6 -0
  317. package/typechain-types/factories/interfaces/IERC20__factory.ts +115 -0
  318. package/typechain-types/factories/interfaces/index.ts +4 -0
  319. package/typechain-types/hardhat.d.ts +99 -0
  320. package/typechain-types/index.ts +12 -0
  321. package/typechain-types/interfaces/IERC20.ts +148 -0
  322. package/typechain-types/interfaces/index.ts +4 -0
@@ -0,0 +1,112 @@
1
+ /* Autogenerated file. Do not edit manually. */
2
+ /* tslint:disable */
3
+ /* eslint-disable */
4
+ import { Contract, Interface } from "ethers";
5
+ const _abi = [
6
+ {
7
+ inputs: [
8
+ {
9
+ internalType: "address",
10
+ name: "spender",
11
+ type: "address",
12
+ },
13
+ {
14
+ internalType: "uint256",
15
+ name: "amount",
16
+ type: "uint256",
17
+ },
18
+ ],
19
+ name: "approve",
20
+ outputs: [
21
+ {
22
+ internalType: "bool",
23
+ name: "",
24
+ type: "bool",
25
+ },
26
+ ],
27
+ stateMutability: "nonpayable",
28
+ type: "function",
29
+ },
30
+ {
31
+ inputs: [
32
+ {
33
+ internalType: "address",
34
+ name: "account",
35
+ type: "address",
36
+ },
37
+ ],
38
+ name: "balanceOf",
39
+ outputs: [
40
+ {
41
+ internalType: "uint256",
42
+ name: "",
43
+ type: "uint256",
44
+ },
45
+ ],
46
+ stateMutability: "view",
47
+ type: "function",
48
+ },
49
+ {
50
+ inputs: [
51
+ {
52
+ internalType: "address",
53
+ name: "to",
54
+ type: "address",
55
+ },
56
+ {
57
+ internalType: "uint256",
58
+ name: "amount",
59
+ type: "uint256",
60
+ },
61
+ ],
62
+ name: "transfer",
63
+ outputs: [
64
+ {
65
+ internalType: "bool",
66
+ name: "",
67
+ type: "bool",
68
+ },
69
+ ],
70
+ stateMutability: "nonpayable",
71
+ type: "function",
72
+ },
73
+ {
74
+ inputs: [
75
+ {
76
+ internalType: "address",
77
+ name: "from",
78
+ type: "address",
79
+ },
80
+ {
81
+ internalType: "address",
82
+ name: "to",
83
+ type: "address",
84
+ },
85
+ {
86
+ internalType: "uint256",
87
+ name: "amount",
88
+ type: "uint256",
89
+ },
90
+ ],
91
+ name: "transferFrom",
92
+ outputs: [
93
+ {
94
+ internalType: "bool",
95
+ name: "",
96
+ type: "bool",
97
+ },
98
+ ],
99
+ stateMutability: "nonpayable",
100
+ type: "function",
101
+ },
102
+ ];
103
+ export class IERC20__factory {
104
+ static createInterface() {
105
+ return new Interface(_abi);
106
+ }
107
+ static connect(address, runner) {
108
+ return new Contract(address, _abi, runner);
109
+ }
110
+ }
111
+ IERC20__factory.abi = _abi;
112
+ //# sourceMappingURL=IERC20__factory.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IERC20__factory.js","sourceRoot":"","sources":["../../../../../typechain-types/factories/interfaces/IERC20__factory.ts"],"names":[],"mappings":"AAAA,+CAA+C;AAC/C,oBAAoB;AACpB,oBAAoB;AAEpB,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAuB,MAAM,QAAQ,CAAC;AAGlE,MAAM,IAAI,GAAG;IACX;QACE,MAAM,EAAE;YACN;gBACE,YAAY,EAAE,SAAS;gBACvB,IAAI,EAAE,SAAS;gBACf,IAAI,EAAE,SAAS;aAChB;YACD;gBACE,YAAY,EAAE,SAAS;gBACvB,IAAI,EAAE,QAAQ;gBACd,IAAI,EAAE,SAAS;aAChB;SACF;QACD,IAAI,EAAE,SAAS;QACf,OAAO,EAAE;YACP;gBACE,YAAY,EAAE,MAAM;gBACpB,IAAI,EAAE,EAAE;gBACR,IAAI,EAAE,MAAM;aACb;SACF;QACD,eAAe,EAAE,YAAY;QAC7B,IAAI,EAAE,UAAU;KACjB;IACD;QACE,MAAM,EAAE;YACN;gBACE,YAAY,EAAE,SAAS;gBACvB,IAAI,EAAE,SAAS;gBACf,IAAI,EAAE,SAAS;aAChB;SACF;QACD,IAAI,EAAE,WAAW;QACjB,OAAO,EAAE;YACP;gBACE,YAAY,EAAE,SAAS;gBACvB,IAAI,EAAE,EAAE;gBACR,IAAI,EAAE,SAAS;aAChB;SACF;QACD,eAAe,EAAE,MAAM;QACvB,IAAI,EAAE,UAAU;KACjB;IACD;QACE,MAAM,EAAE;YACN;gBACE,YAAY,EAAE,SAAS;gBACvB,IAAI,EAAE,IAAI;gBACV,IAAI,EAAE,SAAS;aAChB;YACD;gBACE,YAAY,EAAE,SAAS;gBACvB,IAAI,EAAE,QAAQ;gBACd,IAAI,EAAE,SAAS;aAChB;SACF;QACD,IAAI,EAAE,UAAU;QAChB,OAAO,EAAE;YACP;gBACE,YAAY,EAAE,MAAM;gBACpB,IAAI,EAAE,EAAE;gBACR,IAAI,EAAE,MAAM;aACb;SACF;QACD,eAAe,EAAE,YAAY;QAC7B,IAAI,EAAE,UAAU;KACjB;IACD;QACE,MAAM,EAAE;YACN;gBACE,YAAY,EAAE,SAAS;gBACvB,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE,SAAS;aAChB;YACD;gBACE,YAAY,EAAE,SAAS;gBACvB,IAAI,EAAE,IAAI;gBACV,IAAI,EAAE,SAAS;aAChB;YACD;gBACE,YAAY,EAAE,SAAS;gBACvB,IAAI,EAAE,QAAQ;gBACd,IAAI,EAAE,SAAS;aAChB;SACF;QACD,IAAI,EAAE,cAAc;QACpB,OAAO,EAAE;YACP;gBACE,YAAY,EAAE,MAAM;gBACpB,IAAI,EAAE,EAAE;gBACR,IAAI,EAAE,MAAM;aACb;SACF;QACD,eAAe,EAAE,YAAY;QAC7B,IAAI,EAAE,UAAU;KACjB;CACO,CAAC;AAEX,MAAM,OAAO,eAAe;IAE1B,MAAM,CAAC,eAAe;QACpB,OAAO,IAAI,SAAS,CAAC,IAAI,CAAoB,CAAC;IAChD,CAAC;IACD,MAAM,CAAC,OAAO,CAAC,OAAe,EAAE,MAA8B;QAC5D,OAAO,IAAI,QAAQ,CAAC,OAAO,EAAE,IAAI,EAAE,MAAM,CAAsB,CAAC;IAClE,CAAC;;AANe,mBAAG,GAAG,IAAI,CAAC"}
@@ -0,0 +1,2 @@
1
+ export { IERC20__factory } from "./IERC20__factory";
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../typechain-types/factories/interfaces/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC"}
@@ -0,0 +1,5 @@
1
+ /* Autogenerated file. Do not edit manually. */
2
+ /* tslint:disable */
3
+ /* eslint-disable */
4
+ export { IERC20__factory } from "./IERC20__factory.js";
5
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../typechain-types/factories/interfaces/index.ts"],"names":[],"mappings":"AAAA,+CAA+C;AAC/C,oBAAoB;AACpB,oBAAoB;AACpB,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC"}
@@ -0,0 +1,10 @@
1
+ import type * as interfaces from "./interfaces";
2
+ export type { interfaces };
3
+ export type { Mailer } from "./Mailer";
4
+ export type { MockUSDC } from "./MockUSDC";
5
+ export * as factories from "./factories";
6
+ export type { IERC20 } from "./interfaces/IERC20";
7
+ export { IERC20__factory } from "./factories/interfaces/IERC20__factory";
8
+ export { Mailer__factory } from "./factories/Mailer__factory";
9
+ export { MockUSDC__factory } from "./factories/MockUSDC__factory";
10
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../typechain-types/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,KAAK,UAAU,MAAM,cAAc,CAAC;AAChD,YAAY,EAAE,UAAU,EAAE,CAAC;AAC3B,YAAY,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AACvC,YAAY,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAC3C,OAAO,KAAK,SAAS,MAAM,aAAa,CAAC;AACzC,YAAY,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,EAAE,eAAe,EAAE,MAAM,wCAAwC,CAAC;AACzE,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAC9D,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC"}
@@ -0,0 +1,5 @@
1
+ export * as factories from "./factories.js";
2
+ export { IERC20__factory } from "./factories/interfaces/IERC20__factory.js";
3
+ export { Mailer__factory } from "./factories/Mailer__factory.js";
4
+ export { MockUSDC__factory } from "./factories/MockUSDC__factory.js";
5
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../typechain-types/index.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,SAAS,MAAM,aAAa,CAAC;AAEzC,OAAO,EAAE,eAAe,EAAE,MAAM,wCAAwC,CAAC;AACzE,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAC9D,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC"}
@@ -0,0 +1,70 @@
1
+ import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers";
2
+ import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../common";
3
+ export interface IERC20Interface extends Interface {
4
+ getFunction(nameOrSignature: "approve" | "balanceOf" | "transfer" | "transferFrom"): FunctionFragment;
5
+ encodeFunctionData(functionFragment: "approve", values: [AddressLike, BigNumberish]): string;
6
+ encodeFunctionData(functionFragment: "balanceOf", values: [AddressLike]): string;
7
+ encodeFunctionData(functionFragment: "transfer", values: [AddressLike, BigNumberish]): string;
8
+ encodeFunctionData(functionFragment: "transferFrom", values: [AddressLike, AddressLike, BigNumberish]): string;
9
+ decodeFunctionResult(functionFragment: "approve", data: BytesLike): Result;
10
+ decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result;
11
+ decodeFunctionResult(functionFragment: "transfer", data: BytesLike): Result;
12
+ decodeFunctionResult(functionFragment: "transferFrom", data: BytesLike): Result;
13
+ }
14
+ export interface IERC20 extends BaseContract {
15
+ connect(runner?: ContractRunner | null): IERC20;
16
+ waitForDeployment(): Promise<this>;
17
+ interface: IERC20Interface;
18
+ queryFilter<TCEvent extends TypedContractEvent>(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise<Array<TypedEventLog<TCEvent>>>;
19
+ queryFilter<TCEvent extends TypedContractEvent>(filter: TypedDeferredTopicFilter<TCEvent>, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise<Array<TypedEventLog<TCEvent>>>;
20
+ on<TCEvent extends TypedContractEvent>(event: TCEvent, listener: TypedListener<TCEvent>): Promise<this>;
21
+ on<TCEvent extends TypedContractEvent>(filter: TypedDeferredTopicFilter<TCEvent>, listener: TypedListener<TCEvent>): Promise<this>;
22
+ once<TCEvent extends TypedContractEvent>(event: TCEvent, listener: TypedListener<TCEvent>): Promise<this>;
23
+ once<TCEvent extends TypedContractEvent>(filter: TypedDeferredTopicFilter<TCEvent>, listener: TypedListener<TCEvent>): Promise<this>;
24
+ listeners<TCEvent extends TypedContractEvent>(event: TCEvent): Promise<Array<TypedListener<TCEvent>>>;
25
+ listeners(eventName?: string): Promise<Array<Listener>>;
26
+ removeAllListeners<TCEvent extends TypedContractEvent>(event?: TCEvent): Promise<this>;
27
+ approve: TypedContractMethod<[
28
+ spender: AddressLike,
29
+ amount: BigNumberish
30
+ ], [
31
+ boolean
32
+ ], "nonpayable">;
33
+ balanceOf: TypedContractMethod<[account: AddressLike], [bigint], "view">;
34
+ transfer: TypedContractMethod<[
35
+ to: AddressLike,
36
+ amount: BigNumberish
37
+ ], [
38
+ boolean
39
+ ], "nonpayable">;
40
+ transferFrom: TypedContractMethod<[
41
+ from: AddressLike,
42
+ to: AddressLike,
43
+ amount: BigNumberish
44
+ ], [
45
+ boolean
46
+ ], "nonpayable">;
47
+ getFunction<T extends ContractMethod = ContractMethod>(key: string | FunctionFragment): T;
48
+ getFunction(nameOrSignature: "approve"): TypedContractMethod<[
49
+ spender: AddressLike,
50
+ amount: BigNumberish
51
+ ], [
52
+ boolean
53
+ ], "nonpayable">;
54
+ getFunction(nameOrSignature: "balanceOf"): TypedContractMethod<[account: AddressLike], [bigint], "view">;
55
+ getFunction(nameOrSignature: "transfer"): TypedContractMethod<[
56
+ to: AddressLike,
57
+ amount: BigNumberish
58
+ ], [
59
+ boolean
60
+ ], "nonpayable">;
61
+ getFunction(nameOrSignature: "transferFrom"): TypedContractMethod<[
62
+ from: AddressLike,
63
+ to: AddressLike,
64
+ amount: BigNumberish
65
+ ], [
66
+ boolean
67
+ ], "nonpayable">;
68
+ filters: {};
69
+ }
70
+ //# sourceMappingURL=IERC20.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IERC20.d.ts","sourceRoot":"","sources":["../../../../typechain-types/interfaces/IERC20.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=IERC20.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IERC20.js","sourceRoot":"","sources":["../../../../typechain-types/interfaces/IERC20.ts"],"names":[],"mappings":""}
@@ -0,0 +1,2 @@
1
+ export type { IERC20 } from "./IERC20";
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../typechain-types/interfaces/index.ts"],"names":[],"mappings":"AAGA,YAAY,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../typechain-types/interfaces/index.ts"],"names":[],"mappings":""}
package/package.json ADDED
@@ -0,0 +1,250 @@
1
+ {
2
+ "name": "@sudobility/contracts",
3
+ "version": "0.14.0",
4
+ "type": "module",
5
+ "main": "dist/unified-esm/src/unified/index.js",
6
+ "module": "dist/unified-esm/src/unified/index.js",
7
+ "types": "dist/unified-esm/src/unified/index.d.ts",
8
+ "exports": {
9
+ ".": {
10
+ "import": "./dist/unified-esm/src/unified/index.js",
11
+ "require": "./dist/unified/src/unified/index.js",
12
+ "types": "./dist/unified/src/unified/index.d.ts"
13
+ },
14
+ "./evm": {
15
+ "import": "./dist/unified-esm/src/evm/index.js",
16
+ "require": "./dist/unified/src/evm/index.js",
17
+ "types": "./dist/unified/src/evm/index.d.ts"
18
+ },
19
+ "./react": {
20
+ "import": "./dist/unified-esm/src/react/index.js",
21
+ "require": "./dist/unified/src/react/index.js",
22
+ "types": "./dist/unified/src/react/index.d.ts"
23
+ }
24
+ },
25
+ "peerDependencies": {
26
+ "@solana/spl-token": ">=0.4.0",
27
+ "@solana/web3.js": ">=1.95.0",
28
+ "@tanstack/react-query": ">=5.0.0",
29
+ "react": "^18.0.0 || ^19.0.0",
30
+ "viem": ">=2.0.0"
31
+ },
32
+ "peerDependenciesMeta": {
33
+ "@solana/spl-token": {
34
+ "optional": true
35
+ },
36
+ "@solana/web3.js": {
37
+ "optional": true
38
+ },
39
+ "react": {
40
+ "optional": true
41
+ },
42
+ "@tanstack/react-query": {
43
+ "optional": true
44
+ },
45
+ "viem": {
46
+ "optional": true
47
+ }
48
+ },
49
+ "scripts": {
50
+ "build": "npm run build:evm && npm run build:solana && npm run build:unified",
51
+ "build:ci": "npm run build:unified",
52
+ "build:evm": "npx hardhat compile && tsc --project tsconfig.evm.json",
53
+ "build:solana": "cargo build --manifest-path programs/mailer/Cargo.toml && tsc --project tsconfig.solana.json",
54
+ "build:unified": "npm run build:unified:esm && npm run build:unified:cjs",
55
+ "build:unified:cjs": "tsc --project tsconfig.unified.cjs.json && node scripts/fix-cjs-imports.js",
56
+ "build:unified:esm": "tsc --project tsconfig.unified.esm.json && node scripts/fix-esm-imports.js",
57
+ "test": "npm run test:evm && npm run test:solana && npm run test:unified:direct",
58
+ "test:ci": "npm run build:unified && npm run test:unified:direct",
59
+ "test:evm": "npx hardhat test test/evm/Mailer.test.ts",
60
+ "test:solana": "cd programs/mailer && cargo test",
61
+ "test:unified": "mocha dist/test/unified/**/*.test.js",
62
+ "test:unified:direct": "node scripts/run-unified-tests.mjs",
63
+ "compile": "npm run compile:evm",
64
+ "compile:evm": "npx hardhat compile",
65
+ "compile:solana": "anchor build",
66
+ "clean": "npx hardhat clean",
67
+ "prepublishOnly": "npm run clean && npm run compile && npm run build",
68
+ "prepack": "npm run build",
69
+ "ai:workflow": "npx ts-node scripts/ai-helpers/dev-workflow.ts",
70
+ "ai:status": "echo '🤖 Multi-Chain Messaging Contracts AI Status' && echo '📦 Package: @sudobility/contracts v'$(node -p \"require('./package.json').version\") && echo '📊 Architecture: Single Mailer contracts on EVM & Solana' && git status --porcelain",
71
+ "ai:build": "echo '🔨 AI-Optimized Build Process' && npm run clean && npm run compile && npm run build && echo '✅ Build Complete - Ready for Development'",
72
+ "ai:test": "echo '🧪 Comprehensive Test Suite' && npm test && echo '📊 Test Summary: EVM(75) + Unified(41) = 116 tests ✅'",
73
+ "ai:check": "echo '🔍 Quick Validation Check' && npx tsc --noEmit && npx eslint src/ test/ --ext .ts,.js && echo '✅ All validation checks passed'",
74
+ "ai:dev": "echo '🚀 AI Development Helper Commands:' && echo '• npm run ai:status - Check project health' && echo '• npm run ai:build - Clean build everything' && echo '• npm run ai:test - Run all 116 tests' && echo '• npm run ai:check - TypeScript + ESLint validation' && echo '• npm run ai:examples - Test all examples compile' && echo '• npm run ai:docs - Show AI documentation files' && npm run ai:status",
75
+ "ai:examples": "echo '📋 Testing AI Examples Compilation...' && npx tsc --noEmit --skipLibCheck examples/solana-usage.ts && npx tsc --noEmit --skipLibCheck examples/unified-usage.ts && echo '✅ Solana and Unified examples compile successfully (EVM example temporarily disabled due to viem v2.37.7 compatibility)'",
76
+ "ai:docs": "echo '📚 AI Documentation Files:' && echo '• README.md - Main project documentation' && echo '• CLAUDE.md - AI assistant development guide' && echo '• contracts/Mailer.sol - Single contract with all functionality' && echo '• programs/mailer/ - Single Solana program' && echo '• src/unified/ - Cross-chain client library' && echo '• test/ - 116 comprehensive tests'",
77
+ "lint": "eslint --ext .ts,.js .",
78
+ "lint:fix": "eslint --ext .ts,.js . --fix",
79
+ "typecheck": "tsc --noEmit",
80
+ "format": "prettier --write \"**/*.{ts,js,json,md}\"",
81
+ "format:check": "prettier --check \"**/*.{ts,js,json,md}\"",
82
+ "security:audit": "bash scripts/security-audit.sh",
83
+ "postinstall": "echo 'Multi-chain Mailer Contracts installed successfully!'",
84
+ "deploy:evm:local": "npx hardhat run scripts/evm/deploy.ts --network hardhat",
85
+ "deploy:solana:local": "anchor deploy --provider.cluster localnet",
86
+ "deploy:solana:devnet": "anchor deploy --provider.cluster devnet",
87
+ "deploy:solana:mainnet": "anchor deploy --provider.cluster mainnet-beta",
88
+ "deploy:unified": "npm run deploy:evm:local && npm run deploy:solana:local",
89
+ "deploy:evm:localhost": "npx hardhat run scripts/evm/deploy.ts --network localhost",
90
+ "deploy:evm:mainnet": "npx hardhat run scripts/evm/deploy.ts --network mainnet",
91
+ "deploy:evm:sepolia": "npx hardhat run scripts/evm/deploy.ts --network sepolia",
92
+ "deploy:evm:goerli": "npx hardhat run scripts/evm/deploy.ts --network goerli",
93
+ "deploy:evm:polygon": "npx hardhat run scripts/evm/deploy.ts --network polygon",
94
+ "deploy:evm:mumbai": "npx hardhat run scripts/evm/deploy.ts --network mumbai",
95
+ "deploy:evm:optimism": "npx hardhat run scripts/evm/deploy.ts --network optimism",
96
+ "deploy:evm:optimism-goerli": "npx hardhat run scripts/evm/deploy.ts --network optimism-goerli",
97
+ "deploy:evm:arbitrum": "npx hardhat run scripts/evm/deploy.ts --network arbitrum",
98
+ "deploy:evm:arbitrum-goerli": "npx hardhat run scripts/evm/deploy.ts --network arbitrum-goerli",
99
+ "deploy:evm:arbitrum-sepolia": "npx hardhat run scripts/evm/deploy.ts --network arbitrum-sepolia",
100
+ "deploy:evm:base": "npx hardhat run scripts/evm/deploy.ts --network base",
101
+ "deploy:evm:base-goerli": "npx hardhat run scripts/evm/deploy.ts --network base-goerli",
102
+ "deploy:evm:base-sepolia": "npx hardhat run scripts/evm/deploy.ts --network base-sepolia",
103
+ "deploy:evm:avalanche": "npx hardhat run scripts/evm/deploy.ts --network avalanche",
104
+ "deploy:evm:fuji": "npx hardhat run scripts/evm/deploy.ts --network fuji",
105
+ "deploy:evm:bsc": "npx hardhat run scripts/evm/deploy.ts --network bsc",
106
+ "deploy:evm:bsc-testnet": "npx hardhat run scripts/evm/deploy.ts --network bscTestnet",
107
+ "deploy:evm:fantom": "npx hardhat run scripts/evm/deploy.ts --network fantom",
108
+ "deploy:evm:fantom-testnet": "npx hardhat run scripts/evm/deploy.ts --network fantomTestnet",
109
+ "deploy:evm:zksync": "npx hardhat run scripts/evm/deploy.ts --network zkSync",
110
+ "deploy:evm:zksync-testnet": "npx hardhat run scripts/evm/deploy.ts --network zkSyncTestnet",
111
+ "deploy:evm:linea": "npx hardhat run scripts/evm/deploy.ts --network linea",
112
+ "deploy:evm:linea-goerli": "npx hardhat run scripts/evm/deploy.ts --network linea-goerli",
113
+ "deploy:evm:scroll": "npx hardhat run scripts/evm/deploy.ts --network scroll",
114
+ "deploy:evm:scroll-sepolia": "npx hardhat run scripts/evm/deploy.ts --network scroll-sepolia",
115
+ "deploy:evm:mantle": "npx hardhat run scripts/evm/deploy.ts --network mantle",
116
+ "deploy:evm:mantle-testnet": "npx hardhat run scripts/evm/deploy.ts --network mantle-testnet",
117
+ "deploy:evm:gnosis": "npx hardhat run scripts/evm/deploy.ts --network gnosis",
118
+ "deploy:evm:chiado": "npx hardhat run scripts/evm/deploy.ts --network chiado",
119
+ "deploy:evm:moonbeam": "npx hardhat run scripts/evm/deploy.ts --network moonbeam",
120
+ "deploy:evm:moonriver": "npx hardhat run scripts/evm/deploy.ts --network moonriver",
121
+ "deploy:evm:moonbase-alpha": "npx hardhat run scripts/evm/deploy.ts --network moonbaseAlpha",
122
+ "deploy:evm:celo": "npx hardhat run scripts/evm/deploy.ts --network celo",
123
+ "deploy:evm:alfajores": "npx hardhat run scripts/evm/deploy.ts --network alfajores",
124
+ "verify:evm:mainnet": "npx hardhat run scripts/evm/verify.ts --network mainnet",
125
+ "verify:evm:sepolia": "npx hardhat run scripts/evm/verify.ts --network sepolia",
126
+ "verify:evm:goerli": "npx hardhat run scripts/evm/verify.ts --network goerli",
127
+ "verify:evm:polygon": "npx hardhat run scripts/evm/verify.ts --network polygon",
128
+ "verify:evm:mumbai": "npx hardhat run scripts/evm/verify.ts --network mumbai",
129
+ "verify:evm:optimism": "npx hardhat run scripts/evm/verify.ts --network optimism",
130
+ "verify:evm:optimism-goerli": "npx hardhat run scripts/evm/verify.ts --network optimism-goerli",
131
+ "verify:evm:arbitrum": "npx hardhat run scripts/evm/verify.ts --network arbitrum",
132
+ "verify:evm:arbitrum-goerli": "npx hardhat run scripts/evm/verify.ts --network arbitrum-goerli",
133
+ "verify:evm:arbitrum-sepolia": "npx hardhat run scripts/evm/verify.ts --network arbitrum-sepolia",
134
+ "verify:evm:base": "npx hardhat run scripts/evm/verify.ts --network base",
135
+ "verify:evm:base-goerli": "npx hardhat run scripts/evm/verify.ts --network base-goerli",
136
+ "verify:evm:base-sepolia": "npx hardhat run scripts/evm/verify.ts --network base-sepolia",
137
+ "verify:evm:avalanche": "npx hardhat run scripts/evm/verify.ts --network avalanche",
138
+ "verify:evm:fuji": "npx hardhat run scripts/evm/verify.ts --network fuji",
139
+ "verify:evm:bsc": "npx hardhat run scripts/evm/verify.ts --network bsc",
140
+ "verify:evm:bsc-testnet": "npx hardhat run scripts/evm/verify.ts --network bscTestnet",
141
+ "verify:evm:fantom": "npx hardhat run scripts/evm/verify.ts --network fantom",
142
+ "verify:evm:fantom-testnet": "npx hardhat run scripts/evm/verify.ts --network fantomTestnet",
143
+ "verify:evm:linea": "npx hardhat run scripts/evm/verify.ts --network linea",
144
+ "verify:evm:linea-goerli": "npx hardhat run scripts/evm/verify.ts --network linea-goerli",
145
+ "verify:evm:scroll": "npx hardhat run scripts/evm/verify.ts --network scroll",
146
+ "verify:evm:scroll-sepolia": "npx hardhat run scripts/evm/verify.ts --network scroll-sepolia",
147
+ "verify:evm:mantle": "npx hardhat run scripts/evm/verify.ts --network mantle",
148
+ "verify:evm:mantle-testnet": "npx hardhat run scripts/evm/verify.ts --network mantle-testnet",
149
+ "verify:evm:gnosis": "npx hardhat run scripts/evm/verify.ts --network gnosis",
150
+ "verify:evm:chiado": "npx hardhat run scripts/evm/verify.ts --network chiado",
151
+ "verify:evm:moonbeam": "npx hardhat run scripts/evm/verify.ts --network moonbeam",
152
+ "verify:evm:moonriver": "npx hardhat run scripts/evm/verify.ts --network moonriver",
153
+ "verify:evm:moonbase-alpha": "npx hardhat run scripts/evm/verify.ts --network moonbaseAlpha",
154
+ "verify:evm:celo": "npx hardhat run scripts/evm/verify.ts --network celo",
155
+ "verify:evm:alfajores": "npx hardhat run scripts/evm/verify.ts --network alfajores"
156
+ },
157
+ "keywords": [
158
+ "solidity",
159
+ "rust",
160
+ "smart-contract",
161
+ "ethereum",
162
+ "solana",
163
+ "anchor",
164
+ "multi-chain",
165
+ "cross-chain",
166
+ "mailer",
167
+ "web3",
168
+ "defi",
169
+ "messaging",
170
+ "usdc",
171
+ "revenue-sharing",
172
+ "hardhat",
173
+ "typechain",
174
+ "typescript"
175
+ ],
176
+ "author": "Mailer Team",
177
+ "license": "MIT",
178
+ "description": "Multi-chain decentralized messaging system with USDC fees, revenue sharing, and delegation management. Unified TypeScript client for EVM chains and Solana.",
179
+ "homepage": "https://github.com/johnqh/mail_box_contracts#readme",
180
+ "repository": {
181
+ "type": "git",
182
+ "url": "git+https://github.com/johnqh/mail_box_contracts.git"
183
+ },
184
+ "bugs": {
185
+ "url": "https://github.com/johnqh/mail_box_contracts/issues"
186
+ },
187
+ "engines": {
188
+ "node": ">=20.18.0",
189
+ "npm": ">=10.0.0"
190
+ },
191
+ "files": [
192
+ "dist/",
193
+ "typechain-types/",
194
+ "artifacts/contracts/",
195
+ "target/idl/",
196
+ "target/types/",
197
+ "programs/",
198
+ "README.md",
199
+ "LICENSE"
200
+ ],
201
+ "publishConfig": {
202
+ "access": "restricted",
203
+ "registry": "https://registry.npmjs.org"
204
+ },
205
+ "devDependencies": {
206
+ "@coral-xyz/anchor": "^0.32.1",
207
+ "@nomicfoundation/hardhat-chai-matchers": "^2.0.0",
208
+ "@nomicfoundation/hardhat-verify": "^2.0.0",
209
+ "@nomicfoundation/hardhat-viem": "^2.0.0",
210
+ "@solana/spl-token": "^0.4.14",
211
+ "@solana/wallet-adapter-base": "^0.9.27",
212
+ "@solana/web3.js": "^1.98.4",
213
+ "@tanstack/react-query": "^5.90.1",
214
+ "@typechain/hardhat": "^9.1.0",
215
+ "@types/chai": "^4.3.20",
216
+ "@types/mocha": "^10.0.10",
217
+ "@types/node": "^22.18.12",
218
+ "@types/react": "^19.2.2",
219
+ "@typescript-eslint/eslint-plugin": "^8.46.2",
220
+ "@typescript-eslint/parser": "^8.46.2",
221
+ "chai": "^4.5.0",
222
+ "chai-as-promised": "^7.1.2",
223
+ "dotenv": "^17.2.3",
224
+ "eslint": "^9.19.0",
225
+ "hardhat": "^2.26.3",
226
+ "hardhat-gas-reporter": "^2.2.0",
227
+ "mocha": "^11.7.4",
228
+ "prettier": "^3.6.2",
229
+ "react": "^19.0.0",
230
+ "ts-mocha": "^11.1.0",
231
+ "ts-node": "^10.9.2",
232
+ "typechain": "^8.3.2",
233
+ "typescript": "^5.9.3",
234
+ "viem": "^2.38.4"
235
+ },
236
+ "dependencies": {
237
+ "@sudobility/configs": "^0.0.6",
238
+ "@sudobility/types": "^1.8.33"
239
+ },
240
+ "overrides": {
241
+ "bigint-buffer": "^1.1.5",
242
+ "@solana/buffer-layout-utils": {
243
+ "bigint-buffer": "^1.1.5"
244
+ }
245
+ },
246
+ "resolutions": {
247
+ "bigint-buffer": "^1.1.5",
248
+ "@solana/buffer-layout-utils/bigint-buffer": "^1.1.5"
249
+ }
250
+ }
@@ -0,0 +1,29 @@
1
+ [package]
2
+ name = "mailer"
3
+ version = "0.1.0"
4
+ description = "Mailer Solana - Native messaging system with USDC fees and revenue sharing"
5
+ edition = "2021"
6
+
7
+ [lints.rust]
8
+ unexpected_cfgs = { level = "allow", check-cfg = ['cfg(feature, values("custom-heap", "custom-panic"))', 'cfg(target_os, values("solana"))'] }
9
+
10
+ [lib]
11
+ crate-type = ["cdylib", "lib"]
12
+ name = "mailer"
13
+
14
+ [features]
15
+ no-entrypoint = []
16
+ default = []
17
+
18
+ [dependencies]
19
+ solana-program = "1.16"
20
+ spl-token = { version = "3.5", features = ["no-entrypoint"] }
21
+ borsh = "0.10"
22
+ thiserror = "1.0"
23
+
24
+ [dev-dependencies]
25
+ solana-program-test = "1.16"
26
+ solana-sdk = "1.16"
27
+ spl-token = { version = "3.5", features = ["no-entrypoint"] }
28
+ tokio = { version = "1.0", features = ["full"] }
29
+