hardhat-airsign 0.1.1 → 2.0.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 (201) hide show
  1. package/README.md +15 -10
  2. package/app-dist/assets/{add-CRSDwB2e.js → add-B1O0pD4h.js} +2 -2
  3. package/app-dist/assets/{add-CRSDwB2e.js.map → add-B1O0pD4h.js.map} +1 -1
  4. package/app-dist/assets/{all-wallets-DgqGjhs6.js → all-wallets-BcziYGZ_.js} +2 -2
  5. package/app-dist/assets/{all-wallets-DgqGjhs6.js.map → all-wallets-BcziYGZ_.js.map} +1 -1
  6. package/app-dist/assets/{app-store-BShzSz5b.js → app-store-DTZWqmmw.js} +2 -2
  7. package/app-dist/assets/{app-store-BShzSz5b.js.map → app-store-DTZWqmmw.js.map} +1 -1
  8. package/app-dist/assets/{apple-B_-sOHVN.js → apple-DnCGgNDe.js} +2 -2
  9. package/app-dist/assets/{apple-B_-sOHVN.js.map → apple-DnCGgNDe.js.map} +1 -1
  10. package/app-dist/assets/{arrow-bottom-DF5A1caW.js → arrow-bottom-DXZcPFiW.js} +2 -2
  11. package/app-dist/assets/{arrow-bottom-DF5A1caW.js.map → arrow-bottom-DXZcPFiW.js.map} +1 -1
  12. package/app-dist/assets/{arrow-bottom-circle-DIuZ8lC1.js → arrow-bottom-circle-1VxgUNV2.js} +2 -2
  13. package/app-dist/assets/{arrow-bottom-circle-DIuZ8lC1.js.map → arrow-bottom-circle-1VxgUNV2.js.map} +1 -1
  14. package/app-dist/assets/{arrow-left-CwTRYhiP.js → arrow-left-UpOOX78-.js} +2 -2
  15. package/app-dist/assets/{arrow-left-CwTRYhiP.js.map → arrow-left-UpOOX78-.js.map} +1 -1
  16. package/app-dist/assets/{arrow-right-CxBc1Z9Y.js → arrow-right-BgZSbrSb.js} +2 -2
  17. package/app-dist/assets/{arrow-right-CxBc1Z9Y.js.map → arrow-right-BgZSbrSb.js.map} +1 -1
  18. package/app-dist/assets/{arrow-top-DsqFntWs.js → arrow-top-CFitTuMQ.js} +2 -2
  19. package/app-dist/assets/{arrow-top-DsqFntWs.js.map → arrow-top-CFitTuMQ.js.map} +1 -1
  20. package/app-dist/assets/{bank-DaZBNytp.js → bank-Rx-cZHky.js} +2 -2
  21. package/app-dist/assets/{bank-DaZBNytp.js.map → bank-Rx-cZHky.js.map} +1 -1
  22. package/app-dist/assets/{basic-uYjQL5PS.js → basic-BqBpZO5u.js} +2 -2
  23. package/app-dist/assets/{basic-uYjQL5PS.js.map → basic-BqBpZO5u.js.map} +1 -1
  24. package/app-dist/assets/{browser-C1c_DZTT.js → browser-CxT64RYX.js} +2 -2
  25. package/app-dist/assets/{browser-C1c_DZTT.js.map → browser-CxT64RYX.js.map} +1 -1
  26. package/app-dist/assets/{card-Drom7Tv5.js → card-wzpea_VN.js} +2 -2
  27. package/app-dist/assets/{card-Drom7Tv5.js.map → card-wzpea_VN.js.map} +1 -1
  28. package/app-dist/assets/{ccip-DvVERuyo.js → ccip-8vMs6YOX.js} +2 -2
  29. package/app-dist/assets/{ccip-DvVERuyo.js.map → ccip-8vMs6YOX.js.map} +1 -1
  30. package/app-dist/assets/{checkmark-bWnoU59f.js → checkmark-5ZvdJ4cE.js} +2 -2
  31. package/app-dist/assets/{checkmark-bWnoU59f.js.map → checkmark-5ZvdJ4cE.js.map} +1 -1
  32. package/app-dist/assets/{checkmark-bold-xdhuFcVd.js → checkmark-bold-BYMoYpV3.js} +2 -2
  33. package/app-dist/assets/{checkmark-bold-xdhuFcVd.js.map → checkmark-bold-BYMoYpV3.js.map} +1 -1
  34. package/app-dist/assets/{chevron-bottom-g8RZtvvg.js → chevron-bottom-B6KoLsrA.js} +2 -2
  35. package/app-dist/assets/{chevron-bottom-g8RZtvvg.js.map → chevron-bottom-B6KoLsrA.js.map} +1 -1
  36. package/app-dist/assets/{chevron-left-CHq90J3p.js → chevron-left-UNWSh_Nj.js} +2 -2
  37. package/app-dist/assets/{chevron-left-CHq90J3p.js.map → chevron-left-UNWSh_Nj.js.map} +1 -1
  38. package/app-dist/assets/{chevron-right-DucMuosL.js → chevron-right-CLj5tStC.js} +2 -2
  39. package/app-dist/assets/{chevron-right-DucMuosL.js.map → chevron-right-CLj5tStC.js.map} +1 -1
  40. package/app-dist/assets/{chevron-top-jMvIimGH.js → chevron-top-DlIr11pX.js} +2 -2
  41. package/app-dist/assets/{chevron-top-jMvIimGH.js.map → chevron-top-DlIr11pX.js.map} +1 -1
  42. package/app-dist/assets/{chrome-store-DOAtVsxB.js → chrome-store-DSK4e2pT.js} +2 -2
  43. package/app-dist/assets/{chrome-store-DOAtVsxB.js.map → chrome-store-DSK4e2pT.js.map} +1 -1
  44. package/app-dist/assets/{clock-ByhfgiIa.js → clock-BFabU289.js} +2 -2
  45. package/app-dist/assets/{clock-ByhfgiIa.js.map → clock-BFabU289.js.map} +1 -1
  46. package/app-dist/assets/{close-kCTB-L29.js → close-BUfuggox.js} +2 -2
  47. package/app-dist/assets/{close-kCTB-L29.js.map → close-BUfuggox.js.map} +1 -1
  48. package/app-dist/assets/{coinPlaceholder-Nn0hvSA9.js → coinPlaceholder-DISCc80i.js} +2 -2
  49. package/app-dist/assets/{coinPlaceholder-Nn0hvSA9.js.map → coinPlaceholder-DISCc80i.js.map} +1 -1
  50. package/app-dist/assets/{compass-CbGNPMoI.js → compass-BoZDQj8C.js} +2 -2
  51. package/app-dist/assets/{compass-CbGNPMoI.js.map → compass-BoZDQj8C.js.map} +1 -1
  52. package/app-dist/assets/{copy-CAKeZlqs.js → copy-B7bketHz.js} +2 -2
  53. package/app-dist/assets/{copy-CAKeZlqs.js.map → copy-B7bketHz.js.map} +1 -1
  54. package/app-dist/assets/{core-BYSbgSRm.js → core-DPYRoLAn.js} +5 -5
  55. package/app-dist/assets/{core-BYSbgSRm.js.map → core-DPYRoLAn.js.map} +1 -1
  56. package/app-dist/assets/{cursor-Bt2rMzub.js → cursor-Dm0JxInY.js} +2 -2
  57. package/app-dist/assets/{cursor-Bt2rMzub.js.map → cursor-Dm0JxInY.js.map} +1 -1
  58. package/app-dist/assets/{cursor-transparent-B9I7l5HE.js → cursor-transparent-2ch9c1jg.js} +2 -2
  59. package/app-dist/assets/{cursor-transparent-B9I7l5HE.js.map → cursor-transparent-2ch9c1jg.js.map} +1 -1
  60. package/app-dist/assets/{desktop-Be_5H0x-.js → desktop-CIwtNj0u.js} +2 -2
  61. package/app-dist/assets/{desktop-Be_5H0x-.js.map → desktop-CIwtNj0u.js.map} +1 -1
  62. package/app-dist/assets/{disconnect-Dgoh7Tjm.js → disconnect-BOp-awMm.js} +2 -2
  63. package/app-dist/assets/{disconnect-Dgoh7Tjm.js.map → disconnect-BOp-awMm.js.map} +1 -1
  64. package/app-dist/assets/{discord-hBwKNnvZ.js → discord-BV0ggy08.js} +2 -2
  65. package/app-dist/assets/{discord-hBwKNnvZ.js.map → discord-BV0ggy08.js.map} +1 -1
  66. package/app-dist/assets/{etherscan-D0htYnpR.js → etherscan-t7Ki-QEK.js} +2 -2
  67. package/app-dist/assets/{etherscan-D0htYnpR.js.map → etherscan-t7Ki-QEK.js.map} +1 -1
  68. package/app-dist/assets/{events-pn7_SzwY.js → events-CavTDrjb.js} +2 -2
  69. package/app-dist/assets/{events-pn7_SzwY.js.map → events-CavTDrjb.js.map} +1 -1
  70. package/app-dist/assets/{exclamation-triangle-DOILyuF7.js → exclamation-triangle-Ccoe4UL9.js} +2 -2
  71. package/app-dist/assets/{exclamation-triangle-DOILyuF7.js.map → exclamation-triangle-Ccoe4UL9.js.map} +1 -1
  72. package/app-dist/assets/{extension-C9VDzCuK.js → extension-ChDmttRe.js} +2 -2
  73. package/app-dist/assets/{extension-C9VDzCuK.js.map → extension-ChDmttRe.js.map} +1 -1
  74. package/app-dist/assets/{external-link-CHYUmCEz.js → external-link-DubRbP6I.js} +2 -2
  75. package/app-dist/assets/{external-link-CHYUmCEz.js.map → external-link-DubRbP6I.js.map} +1 -1
  76. package/app-dist/assets/{facebook-Bsw-oFCw.js → facebook-CJcCYN5s.js} +2 -2
  77. package/app-dist/assets/{facebook-Bsw-oFCw.js.map → facebook-CJcCYN5s.js.map} +1 -1
  78. package/app-dist/assets/{farcaster-1gUIAUSw.js → farcaster-B4THrfxr.js} +2 -2
  79. package/app-dist/assets/{farcaster-1gUIAUSw.js.map → farcaster-B4THrfxr.js.map} +1 -1
  80. package/app-dist/assets/{filters-DDG3UMYY.js → filters-CuA9h5f-.js} +2 -2
  81. package/app-dist/assets/{filters-DDG3UMYY.js.map → filters-CuA9h5f-.js.map} +1 -1
  82. package/app-dist/assets/{github-CdtDuNaw.js → github-_wOQdqR_.js} +2 -2
  83. package/app-dist/assets/{github-CdtDuNaw.js.map → github-_wOQdqR_.js.map} +1 -1
  84. package/app-dist/assets/{google-BsG5fyrR.js → google-BETdiWIY.js} +2 -2
  85. package/app-dist/assets/{google-BsG5fyrR.js.map → google-BETdiWIY.js.map} +1 -1
  86. package/app-dist/assets/{help-circle-BCv1YqDB.js → help-circle-DGL5kFly.js} +2 -2
  87. package/app-dist/assets/{help-circle-BCv1YqDB.js.map → help-circle-DGL5kFly.js.map} +1 -1
  88. package/app-dist/assets/{id-CuxXJxny.js → id-BAmiPiG3.js} +2 -2
  89. package/app-dist/assets/{id-CuxXJxny.js.map → id-BAmiPiG3.js.map} +1 -1
  90. package/app-dist/assets/{image-B6FZSvkt.js → image-DBuiW2ya.js} +2 -2
  91. package/app-dist/assets/{image-B6FZSvkt.js.map → image-DBuiW2ya.js.map} +1 -1
  92. package/app-dist/assets/{index-BV0j_tJd.js → index-B7r6Bd0d.js} +2 -2
  93. package/app-dist/assets/{index-BV0j_tJd.js.map → index-B7r6Bd0d.js.map} +1 -1
  94. package/app-dist/assets/{index-CqsmC2RT.js → index-BgHayQna.js} +2 -2
  95. package/app-dist/assets/{index-CqsmC2RT.js.map → index-BgHayQna.js.map} +1 -1
  96. package/app-dist/assets/{index-COvL4P9m.js → index-BjRfNTdk.js} +2 -2
  97. package/app-dist/assets/{index-COvL4P9m.js.map → index-BjRfNTdk.js.map} +1 -1
  98. package/app-dist/assets/{index-Bu_XtD5E.css → index-C31w0EhJ.css} +1 -1
  99. package/app-dist/assets/index-D2ubWGvc.js +1753 -0
  100. package/app-dist/assets/index-D2ubWGvc.js.map +1 -0
  101. package/app-dist/assets/{index-DgGGl0Fe.js → index-DStAvMlI.js} +4 -4
  102. package/app-dist/assets/{index-DgGGl0Fe.js.map → index-DStAvMlI.js.map} +1 -1
  103. package/app-dist/assets/{index-DCjRGeb3.js → index-Dt_15Vcx.js} +2 -2
  104. package/app-dist/assets/{index-DCjRGeb3.js.map → index-Dt_15Vcx.js.map} +1 -1
  105. package/app-dist/assets/{index.es-DO7evs6Y.js → index.es-BaHcVq9H.js} +5 -5
  106. package/app-dist/assets/{index.es-DO7evs6Y.js.map → index.es-BaHcVq9H.js.map} +1 -1
  107. package/app-dist/assets/{info-Cywbxt_C.js → info-BGwX-8wC.js} +2 -2
  108. package/app-dist/assets/{info-Cywbxt_C.js.map → info-BGwX-8wC.js.map} +1 -1
  109. package/app-dist/assets/{info-circle-C86J6rkz.js → info-circle-BVE7L9LU.js} +2 -2
  110. package/app-dist/assets/{info-circle-C86J6rkz.js.map → info-circle-BVE7L9LU.js.map} +1 -1
  111. package/app-dist/assets/{lightbulb-CrZ_HglP.js → lightbulb-wyn0YT99.js} +2 -2
  112. package/app-dist/assets/{lightbulb-CrZ_HglP.js.map → lightbulb-wyn0YT99.js.map} +1 -1
  113. package/app-dist/assets/{mail-C3L0F8f-.js → mail-CqURWsZw.js} +2 -2
  114. package/app-dist/assets/{mail-C3L0F8f-.js.map → mail-CqURWsZw.js.map} +1 -1
  115. package/app-dist/assets/{metamask-sdk-CF6XpUqS.js → metamask-sdk-CCICWViI.js} +2 -2
  116. package/app-dist/assets/{metamask-sdk-CF6XpUqS.js.map → metamask-sdk-CCICWViI.js.map} +1 -1
  117. package/app-dist/assets/{mobile-D15vpxIp.js → mobile-DxekcR5S.js} +2 -2
  118. package/app-dist/assets/{mobile-D15vpxIp.js.map → mobile-DxekcR5S.js.map} +1 -1
  119. package/app-dist/assets/{more-B7ExUA9_.js → more-B2xjqArO.js} +2 -2
  120. package/app-dist/assets/{more-B7ExUA9_.js.map → more-B2xjqArO.js.map} +1 -1
  121. package/app-dist/assets/{network-placeholder-CcVy_R0p.js → network-placeholder-xy3H4Mg-.js} +2 -2
  122. package/app-dist/assets/{network-placeholder-CcVy_R0p.js.map → network-placeholder-xy3H4Mg-.js.map} +1 -1
  123. package/app-dist/assets/{nftPlaceholder-BACi0fly.js → nftPlaceholder-kGyQv4gE.js} +2 -2
  124. package/app-dist/assets/{nftPlaceholder-BACi0fly.js.map → nftPlaceholder-kGyQv4gE.js.map} +1 -1
  125. package/app-dist/assets/{off-Duwf9ts8.js → off-CSqaEbkD.js} +2 -2
  126. package/app-dist/assets/{off-Duwf9ts8.js.map → off-CSqaEbkD.js.map} +1 -1
  127. package/app-dist/assets/{play-store-4-EkI0KV.js → play-store-EIdU_7Z6.js} +2 -2
  128. package/app-dist/assets/{play-store-4-EkI0KV.js.map → play-store-EIdU_7Z6.js.map} +1 -1
  129. package/app-dist/assets/{plus-aeb5pwem.js → plus-CPg4pjRj.js} +2 -2
  130. package/app-dist/assets/{plus-aeb5pwem.js.map → plus-CPg4pjRj.js.map} +1 -1
  131. package/app-dist/assets/{qr-code-Cz7L38yy.js → qr-code-QAMIsYXK.js} +2 -2
  132. package/app-dist/assets/{qr-code-Cz7L38yy.js.map → qr-code-QAMIsYXK.js.map} +1 -1
  133. package/app-dist/assets/{recycle-horizontal-yjJpXq0U.js → recycle-horizontal-CV5Qhw2Q.js} +2 -2
  134. package/app-dist/assets/{recycle-horizontal-yjJpXq0U.js.map → recycle-horizontal-CV5Qhw2Q.js.map} +1 -1
  135. package/app-dist/assets/{refresh-fCA8pyDR.js → refresh-CJiM3xIB.js} +2 -2
  136. package/app-dist/assets/{refresh-fCA8pyDR.js.map → refresh-CJiM3xIB.js.map} +1 -1
  137. package/app-dist/assets/{reown-logo-YZnn6vkB.js → reown-logo-2D0oWXpD.js} +2 -2
  138. package/app-dist/assets/{reown-logo-YZnn6vkB.js.map → reown-logo-2D0oWXpD.js.map} +1 -1
  139. package/app-dist/assets/{search-BTh-Taun.js → search-DaHshq-U.js} +2 -2
  140. package/app-dist/assets/{search-BTh-Taun.js.map → search-DaHshq-U.js.map} +1 -1
  141. package/app-dist/assets/{secp256k1-DHeNy7w5.js → secp256k1-Od6Yo9wC.js} +2 -2
  142. package/app-dist/assets/{secp256k1-DHeNy7w5.js.map → secp256k1-Od6Yo9wC.js.map} +1 -1
  143. package/app-dist/assets/{secp256k1-BmolwVbs.js → secp256k1-RfsuBfnr.js} +2 -2
  144. package/app-dist/assets/{secp256k1-BmolwVbs.js.map → secp256k1-RfsuBfnr.js.map} +1 -1
  145. package/app-dist/assets/{send-n_iRWU2b.js → send-CYoNJcmR.js} +2 -2
  146. package/app-dist/assets/{send-n_iRWU2b.js.map → send-CYoNJcmR.js.map} +1 -1
  147. package/app-dist/assets/{swapHorizontal-BP6PC_Z_.js → swapHorizontal-CZlBSPys.js} +2 -2
  148. package/app-dist/assets/{swapHorizontal-BP6PC_Z_.js.map → swapHorizontal-CZlBSPys.js.map} +1 -1
  149. package/app-dist/assets/{swapHorizontalBold-CFegHLnf.js → swapHorizontalBold-CRZWDopS.js} +2 -2
  150. package/app-dist/assets/{swapHorizontalBold-CFegHLnf.js.map → swapHorizontalBold-CRZWDopS.js.map} +1 -1
  151. package/app-dist/assets/{swapHorizontalMedium-SMFfM3Zt.js → swapHorizontalMedium-CnvLAErw.js} +2 -2
  152. package/app-dist/assets/{swapHorizontalMedium-SMFfM3Zt.js.map → swapHorizontalMedium-CnvLAErw.js.map} +1 -1
  153. package/app-dist/assets/{swapHorizontalRoundedBold-BFRiRjq3.js → swapHorizontalRoundedBold-dSf21G7J.js} +2 -2
  154. package/app-dist/assets/{swapHorizontalRoundedBold-BFRiRjq3.js.map → swapHorizontalRoundedBold-dSf21G7J.js.map} +1 -1
  155. package/app-dist/assets/{swapVertical-DDYPFhjA.js → swapVertical-VhVxJU3T.js} +2 -2
  156. package/app-dist/assets/{swapVertical-DDYPFhjA.js.map → swapVertical-VhVxJU3T.js.map} +1 -1
  157. package/app-dist/assets/{telegram-CgxOCx9n.js → telegram-B-C9jpHB.js} +2 -2
  158. package/app-dist/assets/{telegram-CgxOCx9n.js.map → telegram-B-C9jpHB.js.map} +1 -1
  159. package/app-dist/assets/{three-dots-D1ACjz76.js → three-dots-FILuNYsd.js} +2 -2
  160. package/app-dist/assets/{three-dots-D1ACjz76.js.map → three-dots-FILuNYsd.js.map} +1 -1
  161. package/app-dist/assets/{twitch-B2cSw5Dv.js → twitch-DzwaF4Xb.js} +2 -2
  162. package/app-dist/assets/{twitch-B2cSw5Dv.js.map → twitch-DzwaF4Xb.js.map} +1 -1
  163. package/app-dist/assets/{twitterIcon-Y2aP57GN.js → twitterIcon-BlKnBtTW.js} +2 -2
  164. package/app-dist/assets/{twitterIcon-Y2aP57GN.js.map → twitterIcon-BlKnBtTW.js.map} +1 -1
  165. package/app-dist/assets/{verify-DLqSD1rk.js → verify-CmtNTJ_r.js} +2 -2
  166. package/app-dist/assets/{verify-DLqSD1rk.js.map → verify-CmtNTJ_r.js.map} +1 -1
  167. package/app-dist/assets/{verify-filled-M4ZQNUx-.js → verify-filled-DqUbrpnW.js} +2 -2
  168. package/app-dist/assets/{verify-filled-M4ZQNUx-.js.map → verify-filled-DqUbrpnW.js.map} +1 -1
  169. package/app-dist/assets/{w3m-modal-DO_pwuIZ.js → w3m-modal-CACYy1Ye.js} +2 -2
  170. package/app-dist/assets/{w3m-modal-DO_pwuIZ.js.map → w3m-modal-CACYy1Ye.js.map} +1 -1
  171. package/app-dist/assets/{wallet-BK-Vsgfk.js → wallet-DG-gDy5_.js} +2 -2
  172. package/app-dist/assets/{wallet-BK-Vsgfk.js.map → wallet-DG-gDy5_.js.map} +1 -1
  173. package/app-dist/assets/{wallet-placeholder-Dz0rtjLT.js → wallet-placeholder-C5F1lcuc.js} +2 -2
  174. package/app-dist/assets/{wallet-placeholder-Dz0rtjLT.js.map → wallet-placeholder-C5F1lcuc.js.map} +1 -1
  175. package/app-dist/assets/{walletconnect-EGqMGNfn.js → walletconnect-D9ToqDlh.js} +2 -2
  176. package/app-dist/assets/{walletconnect-EGqMGNfn.js.map → walletconnect-D9ToqDlh.js.map} +1 -1
  177. package/app-dist/assets/{warning-circle-BL_LsWzv.js → warning-circle-5kuvvJFh.js} +2 -2
  178. package/app-dist/assets/{warning-circle-BL_LsWzv.js.map → warning-circle-5kuvvJFh.js.map} +1 -1
  179. package/app-dist/assets/{x-Ck4eRtmA.js → x-B1dqvWvO.js} +2 -2
  180. package/app-dist/assets/{x-Ck4eRtmA.js.map → x-B1dqvWvO.js.map} +1 -1
  181. package/app-dist/index.html +2 -2
  182. package/dist/ContractService.d.ts +159 -0
  183. package/dist/ContractService.d.ts.map +1 -0
  184. package/dist/ContractService.js +530 -0
  185. package/dist/ContractService.js.map +1 -0
  186. package/dist/SigningServer.d.ts +6 -0
  187. package/dist/SigningServer.d.ts.map +1 -1
  188. package/dist/SigningServer.js +395 -0
  189. package/dist/SigningServer.js.map +1 -1
  190. package/dist/adapters/ethers-adapter.d.ts +34 -0
  191. package/dist/adapters/ethers-adapter.d.ts.map +1 -0
  192. package/dist/adapters/ethers-adapter.js +106 -0
  193. package/dist/adapters/ethers-adapter.js.map +1 -0
  194. package/dist/index.d.ts +2 -0
  195. package/dist/index.d.ts.map +1 -1
  196. package/dist/index.js +13 -3
  197. package/dist/index.js.map +1 -1
  198. package/dist/tasks/start.js +1 -1
  199. package/package.json +6 -3
  200. package/app-dist/assets/index-StZFkTrD.js +0 -1753
  201. package/app-dist/assets/index-StZFkTrD.js.map +0 -1
@@ -1,4 +1,37 @@
1
1
  "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
2
35
  var __importDefault = (this && this.__importDefault) || function (mod) {
3
36
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
37
  };
@@ -10,6 +43,7 @@ const path_1 = __importDefault(require("path"));
10
43
  const fs_1 = __importDefault(require("fs"));
11
44
  const child_process_1 = require("child_process");
12
45
  const socket_io_1 = require("socket.io");
46
+ const ContractService_1 = require("./ContractService");
13
47
  // Timeout for pending signing callbacks (matches HTTP long-poll timeout)
14
48
  const CALLBACK_TIMEOUT_MS = 300000; // 5 minutes
15
49
  /**
@@ -23,6 +57,7 @@ class SigningServer {
23
57
  this.signerSocket = null;
24
58
  this.pendingCallbacks = new Map();
25
59
  this.pendingTimeouts = new Map();
60
+ this.pendingRpcCallbacks = new Map();
26
61
  this.isSignerConnected = false;
27
62
  // Callback for when wallet account changes (so plugin can update RemoteSigner)
28
63
  this._onAccountChanged = null;
@@ -31,6 +66,8 @@ class SigningServer {
31
66
  // Currently running process (only one at a time)
32
67
  this.runningProcess = null;
33
68
  this.runningProcessId = null;
69
+ // Contract interaction service
70
+ this.contractService = null;
34
71
  this.projectContext = projectContext || null;
35
72
  this.app = (0, express_1.default)();
36
73
  // No CORS middleware — the UI is served from the same origin,
@@ -207,6 +244,326 @@ class SigningServer {
207
244
  processId: this.runningProcessId,
208
245
  });
209
246
  });
247
+ // ─── Contracts API (contract interaction) ──────────────────────
248
+ // Initialize contract service if project context available
249
+ if (this.projectContext) {
250
+ this.contractService = new ContractService_1.ContractService(this.projectContext.projectRoot, this.projectContext.networks);
251
+ // Scan artifacts asynchronously (non-blocking)
252
+ this.contractService.scanArtifacts().catch((err) => {
253
+ console.log(" ⚠️ Failed to scan contract artifacts:", err.message);
254
+ });
255
+ }
256
+ // List all contracts with ABIs and parsed functions
257
+ this.app.get("/api/contracts", (_req, res) => {
258
+ if (!this.contractService) {
259
+ res.json({ contracts: [] });
260
+ return;
261
+ }
262
+ res.json({ contracts: this.contractService.getContracts() });
263
+ });
264
+ // Get saved contract addresses per network
265
+ this.app.get("/api/contracts/addresses", (_req, res) => {
266
+ if (!this.contractService) {
267
+ res.json({ addresses: {} });
268
+ return;
269
+ }
270
+ res.json({ addresses: this.contractService.getAddresses() });
271
+ });
272
+ // Save/update a contract address for a network
273
+ this.app.post("/api/contracts/addresses", (req, res) => {
274
+ if (!this.contractService) {
275
+ res.status(400).json({ error: "Contract service not available" });
276
+ return;
277
+ }
278
+ const { contractName, networkName, address } = req.body;
279
+ if (!contractName || !networkName || !address) {
280
+ res.status(400).json({ error: "Missing contractName, networkName, or address" });
281
+ return;
282
+ }
283
+ this.contractService.saveAddress(contractName, networkName, address);
284
+ res.json({ success: true });
285
+ });
286
+ // Execute a read-only (view/pure) function call
287
+ this.app.post("/api/contract/read", async (req, res) => {
288
+ if (!this.contractService) {
289
+ res.status(400).json({ success: false, error: "Contract service not available" });
290
+ return;
291
+ }
292
+ const { contractAddress, abi, functionName, args, networkName } = req.body;
293
+ if (!contractAddress || !abi || !functionName || !networkName) {
294
+ res.status(400).json({
295
+ success: false,
296
+ error: "Missing required fields: contractAddress, abi, functionName, networkName",
297
+ });
298
+ return;
299
+ }
300
+ const result = await this.contractService.executeReadCall({
301
+ contractAddress,
302
+ abi,
303
+ functionName,
304
+ args: args || [],
305
+ networkName,
306
+ });
307
+ res.json(result);
308
+ });
309
+ // Fetch and decode events from a transaction receipt
310
+ this.app.post("/api/contract/events", async (req, res) => {
311
+ if (!this.contractService) {
312
+ res.status(400).json({ success: false, error: "Contract service not available" });
313
+ return;
314
+ }
315
+ const { contractAddress, abi, txHash, networkName } = req.body;
316
+ if (!txHash || !abi || !networkName) {
317
+ res.status(400).json({
318
+ success: false,
319
+ error: "Missing required fields: txHash, abi, networkName",
320
+ });
321
+ return;
322
+ }
323
+ const result = await this.contractService.fetchEvents({
324
+ contractAddress: contractAddress || "0x",
325
+ abi,
326
+ txHash,
327
+ networkName,
328
+ });
329
+ res.json(result);
330
+ });
331
+ // Check if a contract address is a proxy (ERC-1967)
332
+ this.app.post("/api/contract/proxy", async (req, res) => {
333
+ if (!this.contractService) {
334
+ res.status(400).json({ isProxy: false, error: "Contract service not available" });
335
+ return;
336
+ }
337
+ const { contractAddress, networkName } = req.body;
338
+ if (!contractAddress || !networkName) {
339
+ res.status(400).json({
340
+ isProxy: false,
341
+ error: "Missing contractAddress or networkName",
342
+ });
343
+ return;
344
+ }
345
+ const result = await this.contractService.checkProxy(contractAddress, networkName);
346
+ res.json(result);
347
+ });
348
+ // Execute a write (state-changing) function via the signing flow.
349
+ // Encodes the call, creates a signing request, and waits for wallet approval.
350
+ this.app.post("/api/contract/write", async (req, res) => {
351
+ if (!this.contractService) {
352
+ res.status(400).json({ success: false, error: "Contract service not available" });
353
+ return;
354
+ }
355
+ const { contractAddress, abi, functionName, args, networkName, value } = req.body;
356
+ if (!contractAddress || !abi || !functionName || !networkName) {
357
+ res.status(400).json({
358
+ success: false,
359
+ error: "Missing required fields: contractAddress, abi, functionName, networkName",
360
+ });
361
+ return;
362
+ }
363
+ if (!this.signerSocket || !this.isSignerConnected) {
364
+ res.status(503).json({
365
+ success: false,
366
+ error: "No wallet connected. Open the AirSign UI and connect your wallet.",
367
+ });
368
+ return;
369
+ }
370
+ try {
371
+ // Encode the function call data using ethers Interface
372
+ const { createInterface } = await Promise.resolve().then(() => __importStar(require("./adapters/ethers-adapter")));
373
+ const iface = createInterface(abi);
374
+ const callData = iface.encodeFunctionData(functionName, args || []);
375
+ // Build a signing request
376
+ const requestId = `write-${Date.now()}-${Math.random().toString(36).slice(2, 8)}`;
377
+ const signingRequest = {
378
+ id: requestId,
379
+ type: "sendTransaction",
380
+ transaction: {
381
+ to: contractAddress,
382
+ data: callData,
383
+ value: value && value !== "0" ? value : undefined,
384
+ from: this.sessionInfo.signerAddress || undefined,
385
+ },
386
+ metadata: {
387
+ contractName: functionName,
388
+ functionName,
389
+ description: `Call ${functionName} on contract`,
390
+ },
391
+ };
392
+ // Allow up to 5 minutes for user to approve
393
+ req.setTimeout(CALLBACK_TIMEOUT_MS);
394
+ // Route through the signing flow
395
+ let responded = false;
396
+ const callback = (response) => {
397
+ if (responded)
398
+ return;
399
+ responded = true;
400
+ this.clearPendingCallback(requestId);
401
+ if (response.success) {
402
+ res.json({ success: true, txHash: response.result });
403
+ }
404
+ else {
405
+ res.json({ success: false, error: response.error || "Transaction rejected" });
406
+ }
407
+ };
408
+ this.pendingCallbacks.set(requestId, callback);
409
+ const timeout = setTimeout(() => {
410
+ if (!responded) {
411
+ responded = true;
412
+ this.pendingCallbacks.delete(requestId);
413
+ this.pendingTimeouts.delete(requestId);
414
+ res.status(504).json({
415
+ success: false,
416
+ error: "Transaction timed out. The wallet did not respond within 5 minutes.",
417
+ });
418
+ }
419
+ }, CALLBACK_TIMEOUT_MS);
420
+ this.pendingTimeouts.set(requestId, timeout);
421
+ // Forward to browser wallet
422
+ this.signerSocket.emit("signing:request", signingRequest);
423
+ }
424
+ catch (err) {
425
+ res.status(400).json({ success: false, error: err.message });
426
+ }
427
+ });
428
+ // Re-scan artifacts (useful after recompilation)
429
+ this.app.post("/api/contracts/rescan", async (_req, res) => {
430
+ if (!this.contractService) {
431
+ res.status(400).json({ error: "Contract service not available" });
432
+ return;
433
+ }
434
+ await this.contractService.scanArtifacts();
435
+ res.json({ success: true, contracts: this.contractService.getContracts().length });
436
+ });
437
+ // ─── RPC Proxy ─────────────────────────────────────────────────
438
+ // Proxies JSON-RPC calls through the connected browser wallet.
439
+ // This allows the plugin to read on-chain data even when no explicit
440
+ // RPC URL is configured — the browser wallet's provider (MetaMask, etc.)
441
+ // is already connected to the right network.
442
+ this.app.post("/api/rpc", (req, res) => {
443
+ if (!this.signerSocket || !this.isSignerConnected) {
444
+ res.status(503).json({
445
+ jsonrpc: "2.0",
446
+ id: req.body?.id || null,
447
+ error: { code: -32000, message: "No wallet connected" },
448
+ });
449
+ return;
450
+ }
451
+ const { method, params, id } = req.body;
452
+ const rpcId = `rpc-${Date.now()}-${Math.random().toString(36).slice(2, 6)}`;
453
+ // Set 30s timeout for RPC calls
454
+ const timeout = setTimeout(() => {
455
+ this.pendingRpcCallbacks.delete(rpcId);
456
+ res.status(504).json({
457
+ jsonrpc: "2.0",
458
+ id: id || null,
459
+ error: { code: -32000, message: "RPC call timed out" },
460
+ });
461
+ }, 30000);
462
+ this.pendingRpcCallbacks.set(rpcId, (result, error) => {
463
+ clearTimeout(timeout);
464
+ this.pendingRpcCallbacks.delete(rpcId);
465
+ if (error) {
466
+ res.json({ jsonrpc: "2.0", id: id || null, error });
467
+ }
468
+ else {
469
+ res.json({ jsonrpc: "2.0", id: id || null, result });
470
+ }
471
+ });
472
+ this.signerSocket.emit("rpc:request", { rpcId, method, params });
473
+ });
474
+ // Deploy contract endpoint
475
+ this.app.post("/api/contract/deploy", async (req, res) => {
476
+ if (!this.signerSocket || !this.isSignerConnected) {
477
+ res.status(503).json({
478
+ success: false,
479
+ error: "No wallet connected. Open the AirSign UI and connect your wallet.",
480
+ });
481
+ return;
482
+ }
483
+ const { contractName, abi, args, networkName, value } = req.body;
484
+ if (!contractName || !abi) {
485
+ res.status(400).json({ success: false, error: "Missing contractName or abi" });
486
+ return;
487
+ }
488
+ try {
489
+ // Find the bytecode from artifacts
490
+ const contract = this.contractService?.getContracts().find((c) => c.contractName === contractName);
491
+ // We need to get the bytecode from the artifact file
492
+ let bytecode;
493
+ if (this.projectContext?.projectRoot) {
494
+ const artifactsDir = path_1.default.join(this.projectContext.projectRoot, "artifacts");
495
+ bytecode = this.findBytecodeInArtifacts(artifactsDir, contractName);
496
+ }
497
+ if (!bytecode) {
498
+ res.status(400).json({ success: false, error: `Bytecode not found for ${contractName}. Compile first.` });
499
+ return;
500
+ }
501
+ // Encode constructor args
502
+ const { createInterface } = await Promise.resolve().then(() => __importStar(require("./adapters/ethers-adapter")));
503
+ const iface = createInterface(abi);
504
+ let deployData = bytecode;
505
+ const constructorFragment = iface.deploy;
506
+ if (constructorFragment && args && args.length > 0) {
507
+ const encodedArgs = iface.encodeDeploy(args);
508
+ deployData = bytecode + encodedArgs.slice(2); // remove 0x from encoded args
509
+ }
510
+ // Build a signing request for deployment (to = null)
511
+ const requestId = `deploy-${Date.now()}-${Math.random().toString(36).slice(2, 8)}`;
512
+ const signingRequest = {
513
+ id: requestId,
514
+ type: "sendTransaction",
515
+ transaction: {
516
+ from: this.sessionInfo.signerAddress || undefined,
517
+ data: deployData,
518
+ value: value && value !== "0" ? value : undefined,
519
+ // No "to" field — signals contract creation
520
+ },
521
+ metadata: {
522
+ contractName,
523
+ functionName: "constructor",
524
+ description: `Deploy ${contractName}`,
525
+ },
526
+ };
527
+ req.setTimeout(CALLBACK_TIMEOUT_MS);
528
+ let responded = false;
529
+ const callback = (response) => {
530
+ if (responded)
531
+ return;
532
+ responded = true;
533
+ this.clearPendingCallback(requestId);
534
+ if (response.success && response.result) {
535
+ // response.result is the tx hash — we need to get the deployed address
536
+ // from the receipt. Emit back with the tx hash and let the UI poll/resolve.
537
+ res.json({
538
+ success: true,
539
+ txHash: response.result,
540
+ // Address will come from the receipt once confirmed
541
+ address: null,
542
+ });
543
+ }
544
+ else {
545
+ res.json({ success: false, error: response.error || "Deployment rejected" });
546
+ }
547
+ };
548
+ this.pendingCallbacks.set(requestId, callback);
549
+ const timeout = setTimeout(() => {
550
+ if (!responded) {
551
+ responded = true;
552
+ this.pendingCallbacks.delete(requestId);
553
+ this.pendingTimeouts.delete(requestId);
554
+ res.status(504).json({
555
+ success: false,
556
+ error: "Deployment timed out. The wallet did not respond within 5 minutes.",
557
+ });
558
+ }
559
+ }, CALLBACK_TIMEOUT_MS);
560
+ this.pendingTimeouts.set(requestId, timeout);
561
+ this.signerSocket.emit("signing:request", signingRequest);
562
+ }
563
+ catch (err) {
564
+ res.status(400).json({ success: false, error: err.message });
565
+ }
566
+ });
210
567
  // Shutdown endpoint
211
568
  this.app.post("/api/shutdown", (_req, res) => {
212
569
  res.json({ status: "shutting_down" });
@@ -379,6 +736,13 @@ class SigningServer {
379
736
  this.sessionInfo.signerChainId = chainId;
380
737
  console.log(` 🔄 Chain changed: ${chainId}`);
381
738
  });
739
+ // Handle RPC proxy responses from browser
740
+ socket.on("rpc:response", (payload) => {
741
+ const callback = this.pendingRpcCallbacks.get(payload.rpcId);
742
+ if (callback) {
743
+ callback(payload.result, payload.error);
744
+ }
745
+ });
382
746
  // Handle signer disconnect
383
747
  socket.on("signer:disconnected", () => {
384
748
  if (socket !== this.signerSocket)
@@ -546,6 +910,37 @@ class SigningServer {
546
910
  }
547
911
  }
548
912
  // ─── Helpers ────────────────────────────────────────────────────
913
+ /**
914
+ * Find bytecode for a contract name from the artifacts directory.
915
+ */
916
+ findBytecodeInArtifacts(artifactsDir, contractName) {
917
+ try {
918
+ const entries = fs_1.default.readdirSync(artifactsDir, { withFileTypes: true });
919
+ for (const entry of entries) {
920
+ const fullPath = path_1.default.join(artifactsDir, entry.name);
921
+ if (entry.isDirectory()) {
922
+ if (entry.name === "build-info")
923
+ continue;
924
+ const found = this.findBytecodeInArtifacts(fullPath, contractName);
925
+ if (found)
926
+ return found;
927
+ }
928
+ else if (entry.isFile() &&
929
+ entry.name === `${contractName}.json` &&
930
+ !entry.name.endsWith(".dbg.json")) {
931
+ const raw = fs_1.default.readFileSync(fullPath, "utf-8");
932
+ const artifact = JSON.parse(raw);
933
+ if (artifact.bytecode && artifact.bytecode !== "0x") {
934
+ return artifact.bytecode;
935
+ }
936
+ }
937
+ }
938
+ }
939
+ catch {
940
+ // ignore
941
+ }
942
+ return undefined;
943
+ }
549
944
  generateSessionId() {
550
945
  const chars = "abcdefghijklmnopqrstuvwxyz0123456789";
551
946
  let result = "";
@@ -1 +1 @@
1
- {"version":3,"file":"SigningServer.js","sourceRoot":"","sources":["../src/SigningServer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SigningServer.js","sourceRoot":"","sources":["../src/SigningServer.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,34 @@
1
+ /**
2
+ * Ethers Adapter — thin abstraction layer over ethers.js APIs.
3
+ *
4
+ * This adapter isolates all direct ethers imports so that:
5
+ * - v1 (ethers v5) and v2 (ethers v6) share the same ContractService code
6
+ * - Only this file needs to change when migrating to ethers v6
7
+ *
8
+ * All other service files (ContractService, SigningServer) import from here.
9
+ */
10
+ import { ethers } from "ethers";
11
+ export declare function createProvider(rpcUrl: string): ethers.providers.JsonRpcProvider;
12
+ export type EthersProvider = ethers.providers.JsonRpcProvider;
13
+ export declare function createContract(address: string, abi: any[], providerOrSigner: ethers.providers.Provider | ethers.Signer): ethers.Contract;
14
+ export type EthersContract = ethers.Contract;
15
+ export declare function createInterface(abi: any[]): ethers.utils.Interface;
16
+ export type EthersInterface = ethers.utils.Interface;
17
+ /**
18
+ * Parse a single log entry using an Interface.
19
+ * Returns null if the log can't be decoded (unknown event).
20
+ */
21
+ export declare function parseLog(iface: ethers.utils.Interface, log: {
22
+ topics: string[];
23
+ data: string;
24
+ }): ethers.utils.LogDescription | null;
25
+ export declare function getTransactionReceipt(provider: ethers.providers.JsonRpcProvider, txHash: string): Promise<ethers.providers.TransactionReceipt | null>;
26
+ export declare function getStorageAt(provider: ethers.providers.JsonRpcProvider, address: string, slot: string): Promise<string>;
27
+ export declare function isAddress(value: string): boolean;
28
+ export declare function getAddress(value: string): string;
29
+ /**
30
+ * Serialize a contract call result to a JSON-safe format.
31
+ * Handles BigNumber, arrays, and nested structures.
32
+ */
33
+ export declare function serializeResult(value: any): any;
34
+ //# sourceMappingURL=ethers-adapter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ethers-adapter.d.ts","sourceRoot":"","sources":["../../src/adapters/ethers-adapter.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAIhC,wBAAgB,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,SAAS,CAAC,eAAe,CAE/E;AAED,MAAM,MAAM,cAAc,GAAG,MAAM,CAAC,SAAS,CAAC,eAAe,CAAC;AAI9D,wBAAgB,cAAc,CAC5B,OAAO,EAAE,MAAM,EACf,GAAG,EAAE,GAAG,EAAE,EACV,gBAAgB,EAAE,MAAM,CAAC,SAAS,CAAC,QAAQ,GAAG,MAAM,CAAC,MAAM,GAC1D,MAAM,CAAC,QAAQ,CAEjB;AAED,MAAM,MAAM,cAAc,GAAG,MAAM,CAAC,QAAQ,CAAC;AAI7C,wBAAgB,eAAe,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,MAAM,CAAC,KAAK,CAAC,SAAS,CAElE;AAED,MAAM,MAAM,eAAe,GAAG,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC;AAErD;;;GAGG;AACH,wBAAgB,QAAQ,CACtB,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC,SAAS,EAC7B,GAAG,EAAE;IAAE,MAAM,EAAE,MAAM,EAAE,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GACtC,MAAM,CAAC,KAAK,CAAC,cAAc,GAAG,IAAI,CAMpC;AAID,wBAAsB,qBAAqB,CACzC,QAAQ,EAAE,MAAM,CAAC,SAAS,CAAC,eAAe,EAC1C,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,kBAAkB,GAAG,IAAI,CAAC,CAErD;AAID,wBAAsB,YAAY,CAChC,QAAQ,EAAE,MAAM,CAAC,SAAS,CAAC,eAAe,EAC1C,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,MAAM,GACX,OAAO,CAAC,MAAM,CAAC,CAEjB;AAID,wBAAgB,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAOhD;AAED,wBAAgB,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAEhD;AAED;;;GAGG;AACH,wBAAgB,eAAe,CAAC,KAAK,EAAE,GAAG,GAAG,GAAG,CAqC/C"}