@metamask/snaps-jest 5.0.0 → 6.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 (519) hide show
  1. package/CHANGELOG.md +10 -1
  2. package/dist/chunk-2KLZ7GOW.js +15 -0
  3. package/dist/chunk-2KLZ7GOW.js.map +1 -0
  4. package/dist/chunk-2M7WQ26F.js +28 -0
  5. package/dist/chunk-2M7WQ26F.js.map +1 -0
  6. package/dist/chunk-34GS3AHA.js +33 -0
  7. package/dist/chunk-34GS3AHA.js.map +1 -0
  8. package/dist/chunk-3CC2NI7R.js +80 -0
  9. package/dist/chunk-3CC2NI7R.js.map +1 -0
  10. package/dist/chunk-3IUQA6YL.mjs +1 -0
  11. package/dist/chunk-3IUQA6YL.mjs.map +1 -0
  12. package/dist/chunk-3KCEPGJA.js +39 -0
  13. package/dist/chunk-3KCEPGJA.js.map +1 -0
  14. package/dist/chunk-3KQYPQZY.js +20 -0
  15. package/dist/chunk-3KQYPQZY.js.map +1 -0
  16. package/dist/chunk-3O5OISLU.js +16 -0
  17. package/dist/chunk-3O5OISLU.js.map +1 -0
  18. package/dist/chunk-3ZW2EE3B.js +1 -0
  19. package/dist/chunk-3ZW2EE3B.js.map +1 -0
  20. package/dist/chunk-4FCRZDOX.js +134 -0
  21. package/dist/chunk-4FCRZDOX.js.map +1 -0
  22. package/dist/chunk-4HY4SM3A.js +1 -0
  23. package/dist/chunk-4HY4SM3A.js.map +1 -0
  24. package/dist/chunk-4JUUFDTC.js +104 -0
  25. package/dist/chunk-4JUUFDTC.js.map +1 -0
  26. package/dist/chunk-4VCE3DRR.mjs +34 -0
  27. package/dist/chunk-4VCE3DRR.mjs.map +1 -0
  28. package/dist/chunk-4WCFXE73.js +48 -0
  29. package/dist/chunk-4WCFXE73.js.map +1 -0
  30. package/dist/chunk-5IUHGC5S.js +153 -0
  31. package/dist/chunk-5IUHGC5S.js.map +1 -0
  32. package/dist/chunk-5O6VBW42.js +42 -0
  33. package/dist/chunk-5O6VBW42.js.map +1 -0
  34. package/dist/chunk-6IMEYERE.js +137 -0
  35. package/dist/chunk-6IMEYERE.js.map +1 -0
  36. package/dist/chunk-6KNT4UMX.mjs +35 -0
  37. package/dist/chunk-6KNT4UMX.mjs.map +1 -0
  38. package/dist/chunk-6RDNSELT.mjs +39 -0
  39. package/dist/chunk-6RDNSELT.mjs.map +1 -0
  40. package/dist/chunk-72YN2D26.mjs +60 -0
  41. package/dist/chunk-72YN2D26.mjs.map +1 -0
  42. package/dist/chunk-7JLVQJK7.js +14 -0
  43. package/dist/chunk-7JLVQJK7.js.map +1 -0
  44. package/dist/chunk-AH7YNG6N.js +22 -0
  45. package/dist/chunk-AH7YNG6N.js.map +1 -0
  46. package/dist/chunk-AIZADBRK.mjs +36 -0
  47. package/dist/chunk-AIZADBRK.mjs.map +1 -0
  48. package/dist/chunk-AKFRQ5EJ.mjs +42 -0
  49. package/dist/chunk-AKFRQ5EJ.mjs.map +1 -0
  50. package/dist/chunk-AUB7XPDH.mjs +28 -0
  51. package/dist/chunk-AUB7XPDH.mjs.map +1 -0
  52. package/dist/chunk-BJMTD7H2.mjs +20 -0
  53. package/dist/chunk-BJMTD7H2.mjs.map +1 -0
  54. package/dist/chunk-BN5VBVT3.mjs +233 -0
  55. package/dist/chunk-BN5VBVT3.mjs.map +1 -0
  56. package/dist/chunk-CKOGTHM4.mjs +22 -0
  57. package/dist/chunk-CKOGTHM4.mjs.map +1 -0
  58. package/dist/chunk-CZQKOZLR.js +11 -0
  59. package/dist/chunk-CZQKOZLR.js.map +1 -0
  60. package/dist/chunk-D36QBJ35.js +24 -0
  61. package/dist/{cjs/internals/simulation/methods/hooks/show-dialog.js.map → chunk-D36QBJ35.js.map} +1 -1
  62. package/dist/chunk-DEFFA5IJ.mjs +24 -0
  63. package/dist/chunk-DEFFA5IJ.mjs.map +1 -0
  64. package/dist/chunk-EFB6AQPB.js +36 -0
  65. package/dist/chunk-EFB6AQPB.js.map +1 -0
  66. package/dist/chunk-EOCDSPT7.mjs +97 -0
  67. package/dist/chunk-EOCDSPT7.mjs.map +1 -0
  68. package/dist/chunk-FPFX5AKR.mjs +36 -0
  69. package/dist/chunk-FPFX5AKR.mjs.map +1 -0
  70. package/dist/chunk-HBT34TJ2.mjs +1 -0
  71. package/dist/chunk-HBT34TJ2.mjs.map +1 -0
  72. package/dist/chunk-HBVDXIVN.mjs +80 -0
  73. package/dist/chunk-HBVDXIVN.mjs.map +1 -0
  74. package/dist/chunk-HMF2CKYT.mjs +39 -0
  75. package/dist/chunk-HMF2CKYT.mjs.map +1 -0
  76. package/dist/chunk-HP56MLQ3.js +1 -0
  77. package/dist/chunk-HP56MLQ3.js.map +1 -0
  78. package/dist/chunk-I5LVU57H.mjs +69 -0
  79. package/dist/chunk-I5LVU57H.mjs.map +1 -0
  80. package/dist/chunk-I7FLOZU7.mjs +1 -0
  81. package/dist/chunk-I7FLOZU7.mjs.map +1 -0
  82. package/dist/chunk-J2ID3DS7.mjs +33 -0
  83. package/dist/chunk-J2ID3DS7.mjs.map +1 -0
  84. package/dist/chunk-JA7RJLI7.js +34 -0
  85. package/dist/chunk-JA7RJLI7.js.map +1 -0
  86. package/dist/chunk-JB2H2XEL.mjs +1 -0
  87. package/dist/chunk-JB2H2XEL.mjs.map +1 -0
  88. package/dist/chunk-JDN3VGMO.js +21 -0
  89. package/dist/chunk-JDN3VGMO.js.map +1 -0
  90. package/dist/chunk-JGQJFYU4.js +57 -0
  91. package/dist/chunk-JGQJFYU4.js.map +1 -0
  92. package/dist/chunk-JJCX335U.mjs +91 -0
  93. package/dist/chunk-JJCX335U.mjs.map +1 -0
  94. package/dist/chunk-JMDSN227.mjs +25 -0
  95. package/dist/chunk-JMDSN227.mjs.map +1 -0
  96. package/dist/chunk-JXOKRTEH.mjs +11 -0
  97. package/dist/chunk-JXOKRTEH.mjs.map +1 -0
  98. package/dist/chunk-JZJWUVD7.mjs +1 -0
  99. package/dist/chunk-JZJWUVD7.mjs.map +1 -0
  100. package/dist/chunk-K2KTKFLP.js +76 -0
  101. package/dist/chunk-K2KTKFLP.js.map +1 -0
  102. package/dist/chunk-KGIWSGTT.js +91 -0
  103. package/dist/chunk-KGIWSGTT.js.map +1 -0
  104. package/dist/chunk-KPXLJ6RH.js +60 -0
  105. package/dist/chunk-KPXLJ6RH.js.map +1 -0
  106. package/dist/chunk-LD5PSHHT.mjs +57 -0
  107. package/dist/chunk-LD5PSHHT.mjs.map +1 -0
  108. package/dist/chunk-LNNKGOHQ.mjs +16 -0
  109. package/dist/chunk-LNNKGOHQ.mjs.map +1 -0
  110. package/dist/chunk-MNDF32ZV.js +8 -0
  111. package/dist/chunk-MNDF32ZV.js.map +1 -0
  112. package/dist/chunk-MSQ7Q2VJ.mjs +13 -0
  113. package/dist/chunk-MSQ7Q2VJ.mjs.map +1 -0
  114. package/dist/chunk-O3VJYBFN.mjs +15 -0
  115. package/dist/chunk-O3VJYBFN.mjs.map +1 -0
  116. package/dist/chunk-O4MJRHZD.js +69 -0
  117. package/dist/chunk-O4MJRHZD.js.map +1 -0
  118. package/dist/chunk-OC64PNDU.mjs +21 -0
  119. package/dist/chunk-OC64PNDU.mjs.map +1 -0
  120. package/dist/chunk-ON6M4WG5.js +36 -0
  121. package/dist/chunk-ON6M4WG5.js.map +1 -0
  122. package/dist/chunk-P7JA42ZC.mjs +153 -0
  123. package/dist/chunk-P7JA42ZC.mjs.map +1 -0
  124. package/dist/chunk-PHUTP7NB.js +25 -0
  125. package/dist/chunk-PHUTP7NB.js.map +1 -0
  126. package/dist/chunk-QFPRGU5L.mjs +104 -0
  127. package/dist/chunk-QFPRGU5L.mjs.map +1 -0
  128. package/dist/chunk-QMHWGASM.js +1 -0
  129. package/dist/chunk-QMHWGASM.js.map +1 -0
  130. package/dist/chunk-QNDLJ2W7.js +1 -0
  131. package/dist/chunk-QNDLJ2W7.js.map +1 -0
  132. package/dist/chunk-QUUILTDY.mjs +137 -0
  133. package/dist/chunk-QUUILTDY.mjs.map +1 -0
  134. package/dist/chunk-R7ORBTUD.js +1 -0
  135. package/dist/chunk-R7ORBTUD.js.map +1 -0
  136. package/dist/chunk-RQBZLDXL.js +233 -0
  137. package/dist/chunk-RQBZLDXL.js.map +1 -0
  138. package/dist/chunk-S3DHQTXB.js +1 -0
  139. package/dist/chunk-S3DHQTXB.js.map +1 -0
  140. package/dist/chunk-SWSSV3LK.js +35 -0
  141. package/dist/chunk-SWSSV3LK.js.map +1 -0
  142. package/dist/chunk-T4TRX3ZR.js +22 -0
  143. package/dist/chunk-T4TRX3ZR.js.map +1 -0
  144. package/dist/chunk-UXHKMILA.mjs +1 -0
  145. package/dist/chunk-UXHKMILA.mjs.map +1 -0
  146. package/dist/chunk-VCXM6FKU.mjs +1 -0
  147. package/dist/chunk-VCXM6FKU.mjs.map +1 -0
  148. package/dist/chunk-VHTVUQWR.mjs +14 -0
  149. package/dist/chunk-VHTVUQWR.mjs.map +1 -0
  150. package/dist/chunk-VNQIROKZ.js +97 -0
  151. package/dist/chunk-VNQIROKZ.js.map +1 -0
  152. package/dist/chunk-VXQOXWRO.mjs +48 -0
  153. package/dist/chunk-VXQOXWRO.mjs.map +1 -0
  154. package/dist/chunk-VYKYQSUI.mjs +22 -0
  155. package/dist/chunk-VYKYQSUI.mjs.map +1 -0
  156. package/dist/chunk-WEI35OIM.mjs +8 -0
  157. package/dist/chunk-WEI35OIM.mjs.map +1 -0
  158. package/dist/chunk-WL2GRM5E.mjs +76 -0
  159. package/dist/chunk-WL2GRM5E.mjs.map +1 -0
  160. package/dist/chunk-XDZPH5WD.js +39 -0
  161. package/dist/chunk-XDZPH5WD.js.map +1 -0
  162. package/dist/chunk-Y5NWZU43.js +13 -0
  163. package/dist/chunk-Y5NWZU43.js.map +1 -0
  164. package/dist/chunk-YZFWCFMG.js +1 -0
  165. package/dist/chunk-YZFWCFMG.js.map +1 -0
  166. package/dist/chunk-ZCE26WZM.mjs +1 -0
  167. package/dist/chunk-ZCE26WZM.mjs.map +1 -0
  168. package/dist/chunk-ZZPKZRJQ.mjs +134 -0
  169. package/dist/chunk-ZZPKZRJQ.mjs.map +1 -0
  170. package/dist/environment.js +47 -0
  171. package/dist/environment.js.map +1 -0
  172. package/dist/environment.mjs +47 -0
  173. package/dist/environment.mjs.map +1 -0
  174. package/dist/helpers.js +44 -0
  175. package/dist/helpers.js.map +1 -0
  176. package/dist/helpers.mjs +44 -0
  177. package/dist/helpers.mjs.map +1 -0
  178. package/dist/index.js +54 -0
  179. package/dist/index.js.map +1 -0
  180. package/dist/index.mjs +54 -0
  181. package/dist/index.mjs.map +1 -0
  182. package/dist/internals/environment.js +8 -0
  183. package/dist/internals/environment.js.map +1 -0
  184. package/dist/internals/environment.mjs +8 -0
  185. package/dist/internals/environment.mjs.map +1 -0
  186. package/dist/internals/index.js +123 -0
  187. package/dist/internals/index.js.map +1 -0
  188. package/dist/internals/index.mjs +123 -0
  189. package/dist/internals/index.mjs.map +1 -0
  190. package/dist/internals/logger.js +8 -0
  191. package/dist/internals/logger.js.map +1 -0
  192. package/dist/internals/logger.mjs +8 -0
  193. package/dist/internals/logger.mjs.map +1 -0
  194. package/dist/internals/request.js +40 -0
  195. package/dist/internals/request.js.map +1 -0
  196. package/dist/internals/request.mjs +40 -0
  197. package/dist/internals/request.mjs.map +1 -0
  198. package/dist/internals/server.js +9 -0
  199. package/dist/internals/server.js.map +1 -0
  200. package/dist/internals/server.mjs +9 -0
  201. package/dist/internals/server.mjs.map +1 -0
  202. package/dist/internals/simulation/constants.js +12 -0
  203. package/dist/internals/simulation/constants.js.map +1 -0
  204. package/dist/internals/simulation/constants.mjs +12 -0
  205. package/dist/internals/simulation/constants.mjs.map +1 -0
  206. package/dist/internals/simulation/controllers.js +26 -0
  207. package/dist/internals/simulation/controllers.js.map +1 -0
  208. package/dist/internals/simulation/controllers.mjs +26 -0
  209. package/dist/internals/simulation/controllers.mjs.map +1 -0
  210. package/dist/internals/simulation/files.js +8 -0
  211. package/dist/internals/simulation/files.js.map +1 -0
  212. package/dist/internals/simulation/files.mjs +8 -0
  213. package/dist/internals/simulation/files.mjs.map +1 -0
  214. package/dist/internals/simulation/index.js +90 -0
  215. package/dist/internals/simulation/index.js.map +1 -0
  216. package/dist/internals/simulation/index.mjs +90 -0
  217. package/dist/internals/simulation/index.mjs.map +1 -0
  218. package/dist/internals/simulation/interface.js +16 -0
  219. package/dist/internals/simulation/interface.js.map +1 -0
  220. package/dist/internals/simulation/interface.mjs +16 -0
  221. package/dist/internals/simulation/interface.mjs.map +1 -0
  222. package/dist/internals/simulation/methods/constants.js +12 -0
  223. package/dist/internals/simulation/methods/constants.js.map +1 -0
  224. package/dist/internals/simulation/methods/constants.mjs +12 -0
  225. package/dist/internals/simulation/methods/constants.mjs.map +1 -0
  226. package/dist/internals/simulation/methods/hooks/encryption.js +10 -0
  227. package/dist/internals/simulation/methods/hooks/encryption.js.map +1 -0
  228. package/dist/internals/simulation/methods/hooks/encryption.mjs +10 -0
  229. package/dist/internals/simulation/methods/hooks/encryption.mjs.map +1 -0
  230. package/dist/internals/simulation/methods/hooks/get-locale.js +8 -0
  231. package/dist/internals/simulation/methods/hooks/get-locale.js.map +1 -0
  232. package/dist/internals/simulation/methods/hooks/get-locale.mjs +8 -0
  233. package/dist/internals/simulation/methods/hooks/get-locale.mjs.map +1 -0
  234. package/dist/internals/simulation/methods/hooks/index.js +45 -0
  235. package/dist/internals/simulation/methods/hooks/index.js.map +1 -0
  236. package/dist/internals/simulation/methods/hooks/index.mjs +45 -0
  237. package/dist/internals/simulation/methods/hooks/index.mjs.map +1 -0
  238. package/dist/internals/simulation/methods/hooks/interface.js +10 -0
  239. package/dist/internals/simulation/methods/hooks/interface.js.map +1 -0
  240. package/dist/internals/simulation/methods/hooks/interface.mjs +10 -0
  241. package/dist/internals/simulation/methods/hooks/interface.mjs.map +1 -0
  242. package/dist/internals/simulation/methods/hooks/notifications.js +16 -0
  243. package/dist/internals/simulation/methods/hooks/notifications.js.map +1 -0
  244. package/dist/internals/simulation/methods/hooks/notifications.mjs +16 -0
  245. package/dist/internals/simulation/methods/hooks/notifications.mjs.map +1 -0
  246. package/dist/internals/simulation/methods/hooks/show-dialog.js +14 -0
  247. package/dist/internals/simulation/methods/hooks/show-dialog.js.map +1 -0
  248. package/dist/internals/simulation/methods/hooks/show-dialog.mjs +14 -0
  249. package/dist/internals/simulation/methods/hooks/show-dialog.mjs.map +1 -0
  250. package/dist/internals/simulation/methods/hooks/state.js +18 -0
  251. package/dist/internals/simulation/methods/hooks/state.js.map +1 -0
  252. package/dist/internals/simulation/methods/hooks/state.mjs +18 -0
  253. package/dist/internals/simulation/methods/hooks/state.mjs.map +1 -0
  254. package/dist/internals/simulation/methods/index.js +29 -0
  255. package/dist/internals/simulation/methods/index.js.map +1 -0
  256. package/dist/internals/simulation/methods/index.mjs +29 -0
  257. package/dist/internals/simulation/methods/index.mjs.map +1 -0
  258. package/dist/internals/simulation/methods/specifications.js +28 -0
  259. package/dist/internals/simulation/methods/specifications.js.map +1 -0
  260. package/dist/internals/simulation/methods/specifications.mjs +28 -0
  261. package/dist/internals/simulation/methods/specifications.mjs.map +1 -0
  262. package/dist/internals/simulation/middleware/engine.js +15 -0
  263. package/dist/internals/simulation/middleware/engine.js.map +1 -0
  264. package/dist/internals/simulation/middleware/engine.mjs +15 -0
  265. package/dist/internals/simulation/middleware/engine.mjs.map +1 -0
  266. package/dist/internals/simulation/middleware/index.js +16 -0
  267. package/dist/internals/simulation/middleware/index.js.map +1 -0
  268. package/dist/internals/simulation/middleware/index.mjs +16 -0
  269. package/dist/internals/simulation/middleware/index.mjs.map +1 -0
  270. package/dist/internals/simulation/middleware/internal-methods/accounts.js +8 -0
  271. package/dist/internals/simulation/middleware/internal-methods/accounts.js.map +1 -0
  272. package/dist/internals/simulation/middleware/internal-methods/accounts.mjs +8 -0
  273. package/dist/internals/simulation/middleware/internal-methods/accounts.mjs.map +1 -0
  274. package/dist/internals/simulation/middleware/internal-methods/index.js +11 -0
  275. package/dist/internals/simulation/middleware/internal-methods/index.js.map +1 -0
  276. package/dist/internals/simulation/middleware/internal-methods/index.mjs +11 -0
  277. package/dist/internals/simulation/middleware/internal-methods/index.mjs.map +1 -0
  278. package/dist/internals/simulation/middleware/internal-methods/middleware.js +10 -0
  279. package/dist/internals/simulation/middleware/internal-methods/middleware.js.map +1 -0
  280. package/dist/internals/simulation/middleware/internal-methods/middleware.mjs +10 -0
  281. package/dist/internals/simulation/middleware/internal-methods/middleware.mjs.map +1 -0
  282. package/dist/internals/simulation/middleware/internal-methods/provider-state.js +8 -0
  283. package/dist/internals/simulation/middleware/internal-methods/provider-state.js.map +1 -0
  284. package/dist/internals/simulation/middleware/internal-methods/provider-state.mjs +8 -0
  285. package/dist/internals/simulation/middleware/internal-methods/provider-state.mjs.map +1 -0
  286. package/dist/internals/simulation/middleware/mock.js +9 -0
  287. package/dist/internals/simulation/middleware/mock.js.map +1 -0
  288. package/dist/internals/simulation/middleware/mock.mjs +9 -0
  289. package/dist/internals/simulation/middleware/mock.mjs.map +1 -0
  290. package/dist/internals/simulation/options.js +9 -0
  291. package/dist/internals/simulation/options.js.map +1 -0
  292. package/dist/internals/simulation/options.mjs +9 -0
  293. package/dist/internals/simulation/options.mjs.map +1 -0
  294. package/dist/internals/simulation/simulation.js +39 -0
  295. package/dist/internals/simulation/simulation.js.map +1 -0
  296. package/dist/internals/simulation/simulation.mjs +39 -0
  297. package/dist/internals/simulation/simulation.mjs.map +1 -0
  298. package/dist/internals/simulation/store/index.js +44 -0
  299. package/dist/internals/simulation/store/index.js.map +1 -0
  300. package/dist/internals/simulation/store/index.mjs +44 -0
  301. package/dist/internals/simulation/store/index.mjs.map +1 -0
  302. package/dist/internals/simulation/store/mocks.js +16 -0
  303. package/dist/internals/simulation/store/mocks.js.map +1 -0
  304. package/dist/internals/simulation/store/mocks.mjs +16 -0
  305. package/dist/internals/simulation/store/mocks.mjs.map +1 -0
  306. package/dist/internals/simulation/store/notifications.js +16 -0
  307. package/dist/internals/simulation/store/notifications.js.map +1 -0
  308. package/dist/internals/simulation/store/notifications.mjs +16 -0
  309. package/dist/internals/simulation/store/notifications.mjs.map +1 -0
  310. package/dist/internals/simulation/store/state.js +14 -0
  311. package/dist/internals/simulation/store/state.js.map +1 -0
  312. package/dist/internals/simulation/store/state.mjs +14 -0
  313. package/dist/internals/simulation/store/state.mjs.map +1 -0
  314. package/dist/internals/simulation/store/store.js +12 -0
  315. package/dist/internals/simulation/store/store.js.map +1 -0
  316. package/dist/internals/simulation/store/store.mjs +12 -0
  317. package/dist/internals/simulation/store/store.mjs.map +1 -0
  318. package/dist/internals/simulation/store/ui.js +16 -0
  319. package/dist/internals/simulation/store/ui.js.map +1 -0
  320. package/dist/internals/simulation/store/ui.mjs +16 -0
  321. package/dist/internals/simulation/store/ui.mjs.map +1 -0
  322. package/dist/internals/structs.js +18 -0
  323. package/dist/internals/structs.js.map +1 -0
  324. package/dist/internals/structs.mjs +18 -0
  325. package/dist/internals/structs.mjs.map +1 -0
  326. package/dist/matchers.js +50 -0
  327. package/dist/matchers.js.map +1 -0
  328. package/dist/matchers.mjs +50 -0
  329. package/dist/matchers.mjs.map +1 -0
  330. package/dist/options.js +8 -0
  331. package/dist/options.js.map +1 -0
  332. package/dist/options.mjs +8 -0
  333. package/dist/options.mjs.map +1 -0
  334. package/dist/setup.js +39 -0
  335. package/dist/setup.js.map +1 -0
  336. package/dist/setup.mjs +39 -0
  337. package/dist/setup.mjs.map +1 -0
  338. package/dist/tsconfig.build.tsbuildinfo +1 -0
  339. package/dist/types/vendor/readable-stream.d.js +1 -0
  340. package/dist/types/vendor/readable-stream.d.js.map +1 -0
  341. package/dist/types/vendor/readable-stream.d.mjs +1 -0
  342. package/dist/types/vendor/readable-stream.d.mjs.map +1 -0
  343. package/dist/types.js +2 -0
  344. package/dist/types.js.map +1 -0
  345. package/dist/types.mjs +2 -0
  346. package/dist/types.mjs.map +1 -0
  347. package/jest-preset.js +1 -1
  348. package/package.json +24 -20
  349. package/dist/cjs/environment.js +0 -144
  350. package/dist/cjs/environment.js.map +0 -1
  351. package/dist/cjs/helpers.js +0 -142
  352. package/dist/cjs/helpers.js.map +0 -1
  353. package/dist/cjs/index.js +0 -42
  354. package/dist/cjs/index.js.map +0 -1
  355. package/dist/cjs/internals/environment.js +0 -19
  356. package/dist/cjs/internals/environment.js.map +0 -1
  357. package/dist/cjs/internals/index.js +0 -25
  358. package/dist/cjs/internals/index.js.map +0 -1
  359. package/dist/cjs/internals/logger.js +0 -14
  360. package/dist/cjs/internals/logger.js.map +0 -1
  361. package/dist/cjs/internals/request.js +0 -69
  362. package/dist/cjs/internals/request.js.map +0 -1
  363. package/dist/cjs/internals/server.js +0 -71
  364. package/dist/cjs/internals/server.js.map +0 -1
  365. package/dist/cjs/internals/simulation/constants.js +0 -29
  366. package/dist/cjs/internals/simulation/constants.js.map +0 -1
  367. package/dist/cjs/internals/simulation/controllers.js +0 -95
  368. package/dist/cjs/internals/simulation/controllers.js.map +0 -1
  369. package/dist/cjs/internals/simulation/files.js +0 -22
  370. package/dist/cjs/internals/simulation/files.js.map +0 -1
  371. package/dist/cjs/internals/simulation/index.js +0 -24
  372. package/dist/cjs/internals/simulation/index.js.map +0 -1
  373. package/dist/cjs/internals/simulation/interface.js +0 -98
  374. package/dist/cjs/internals/simulation/interface.js.map +0 -1
  375. package/dist/cjs/internals/simulation/methods/constants.js +0 -84
  376. package/dist/cjs/internals/simulation/methods/constants.js.map +0 -1
  377. package/dist/cjs/internals/simulation/methods/hooks/encryption.js +0 -33
  378. package/dist/cjs/internals/simulation/methods/hooks/encryption.js.map +0 -1
  379. package/dist/cjs/internals/simulation/methods/hooks/get-locale.js +0 -17
  380. package/dist/cjs/internals/simulation/methods/hooks/get-locale.js.map +0 -1
  381. package/dist/cjs/internals/simulation/methods/hooks/index.js +0 -25
  382. package/dist/cjs/internals/simulation/methods/hooks/index.js.map +0 -1
  383. package/dist/cjs/internals/simulation/methods/hooks/interface.js +0 -26
  384. package/dist/cjs/internals/simulation/methods/hooks/interface.js.map +0 -1
  385. package/dist/cjs/internals/simulation/methods/hooks/notifications.js +0 -66
  386. package/dist/cjs/internals/simulation/methods/hooks/notifications.js.map +0 -1
  387. package/dist/cjs/internals/simulation/methods/hooks/show-dialog.js +0 -43
  388. package/dist/cjs/internals/simulation/methods/hooks/state.js +0 -80
  389. package/dist/cjs/internals/simulation/methods/hooks/state.js.map +0 -1
  390. package/dist/cjs/internals/simulation/methods/index.js +0 -20
  391. package/dist/cjs/internals/simulation/methods/index.js.map +0 -1
  392. package/dist/cjs/internals/simulation/methods/specifications.js +0 -81
  393. package/dist/cjs/internals/simulation/methods/specifications.js.map +0 -1
  394. package/dist/cjs/internals/simulation/middleware/engine.js +0 -31
  395. package/dist/cjs/internals/simulation/middleware/engine.js.map +0 -1
  396. package/dist/cjs/internals/simulation/middleware/index.js +0 -20
  397. package/dist/cjs/internals/simulation/middleware/index.js.map +0 -1
  398. package/dist/cjs/internals/simulation/middleware/internal-methods/accounts.js +0 -30
  399. package/dist/cjs/internals/simulation/middleware/internal-methods/accounts.js.map +0 -1
  400. package/dist/cjs/internals/simulation/middleware/internal-methods/index.js +0 -20
  401. package/dist/cjs/internals/simulation/middleware/internal-methods/index.js.map +0 -1
  402. package/dist/cjs/internals/simulation/middleware/internal-methods/middleware.js +0 -37
  403. package/dist/cjs/internals/simulation/middleware/internal-methods/middleware.js.map +0 -1
  404. package/dist/cjs/internals/simulation/middleware/internal-methods/provider-state.js +0 -23
  405. package/dist/cjs/internals/simulation/middleware/internal-methods/provider-state.js.map +0 -1
  406. package/dist/cjs/internals/simulation/middleware/mock.js +0 -23
  407. package/dist/cjs/internals/simulation/middleware/mock.js.map +0 -1
  408. package/dist/cjs/internals/simulation/options.js +0 -24
  409. package/dist/cjs/internals/simulation/options.js.map +0 -1
  410. package/dist/cjs/internals/simulation/simulation.js +0 -124
  411. package/dist/cjs/internals/simulation/simulation.js.map +0 -1
  412. package/dist/cjs/internals/simulation/store/index.js +0 -23
  413. package/dist/cjs/internals/simulation/store/index.js.map +0 -1
  414. package/dist/cjs/internals/simulation/store/mocks.js +0 -52
  415. package/dist/cjs/internals/simulation/store/mocks.js.map +0 -1
  416. package/dist/cjs/internals/simulation/store/notifications.js +0 -52
  417. package/dist/cjs/internals/simulation/store/notifications.js.map +0 -1
  418. package/dist/cjs/internals/simulation/store/state.js +0 -64
  419. package/dist/cjs/internals/simulation/store/state.js.map +0 -1
  420. package/dist/cjs/internals/simulation/store/store.js +0 -57
  421. package/dist/cjs/internals/simulation/store/store.js.map +0 -1
  422. package/dist/cjs/internals/simulation/store/ui.js +0 -48
  423. package/dist/cjs/internals/simulation/store/ui.js.map +0 -1
  424. package/dist/cjs/internals/structs.js +0 -165
  425. package/dist/cjs/internals/structs.js.map +0 -1
  426. package/dist/cjs/matchers.js +0 -120
  427. package/dist/cjs/matchers.js.map +0 -1
  428. package/dist/cjs/options.js +0 -23
  429. package/dist/cjs/options.js.map +0 -1
  430. package/dist/cjs/setup.js +0 -10
  431. package/dist/cjs/setup.js.map +0 -1
  432. package/dist/cjs/types.js +0 -6
  433. package/dist/cjs/types.js.map +0 -1
  434. package/dist/esm/environment.js +0 -121
  435. package/dist/esm/environment.js.map +0 -1
  436. package/dist/esm/helpers.js +0 -163
  437. package/dist/esm/helpers.js.map +0 -1
  438. package/dist/esm/index.js +0 -6
  439. package/dist/esm/index.js.map +0 -1
  440. package/dist/esm/internals/environment.js +0 -14
  441. package/dist/esm/internals/environment.js.map +0 -1
  442. package/dist/esm/internals/index.js +0 -8
  443. package/dist/esm/internals/index.js.map +0 -1
  444. package/dist/esm/internals/logger.js +0 -4
  445. package/dist/esm/internals/logger.js.map +0 -1
  446. package/dist/esm/internals/request.js +0 -77
  447. package/dist/esm/internals/request.js.map +0 -1
  448. package/dist/esm/internals/server.js +0 -64
  449. package/dist/esm/internals/server.js.map +0 -1
  450. package/dist/esm/internals/simulation/constants.js +0 -12
  451. package/dist/esm/internals/simulation/constants.js.map +0 -1
  452. package/dist/esm/internals/simulation/controllers.js +0 -90
  453. package/dist/esm/internals/simulation/controllers.js.map +0 -1
  454. package/dist/esm/internals/simulation/files.js +0 -19
  455. package/dist/esm/internals/simulation/files.js.map +0 -1
  456. package/dist/esm/internals/simulation/index.js +0 -7
  457. package/dist/esm/internals/simulation/index.js.map +0 -1
  458. package/dist/esm/internals/simulation/interface.js +0 -95
  459. package/dist/esm/internals/simulation/interface.js.map +0 -1
  460. package/dist/esm/internals/simulation/methods/constants.js +0 -69
  461. package/dist/esm/internals/simulation/methods/constants.js.map +0 -1
  462. package/dist/esm/internals/simulation/methods/hooks/encryption.js +0 -39
  463. package/dist/esm/internals/simulation/methods/hooks/encryption.js.map +0 -1
  464. package/dist/esm/internals/simulation/methods/hooks/get-locale.js +0 -13
  465. package/dist/esm/internals/simulation/methods/hooks/get-locale.js.map +0 -1
  466. package/dist/esm/internals/simulation/methods/hooks/index.js +0 -8
  467. package/dist/esm/internals/simulation/methods/hooks/index.js.map +0 -1
  468. package/dist/esm/internals/simulation/methods/hooks/interface.js +0 -18
  469. package/dist/esm/internals/simulation/methods/hooks/interface.js.map +0 -1
  470. package/dist/esm/internals/simulation/methods/hooks/notifications.js +0 -58
  471. package/dist/esm/internals/simulation/methods/hooks/notifications.js.map +0 -1
  472. package/dist/esm/internals/simulation/methods/hooks/show-dialog.js +0 -38
  473. package/dist/esm/internals/simulation/methods/hooks/show-dialog.js.map +0 -1
  474. package/dist/esm/internals/simulation/methods/hooks/state.js +0 -74
  475. package/dist/esm/internals/simulation/methods/hooks/state.js.map +0 -1
  476. package/dist/esm/internals/simulation/methods/index.js +0 -3
  477. package/dist/esm/internals/simulation/methods/index.js.map +0 -1
  478. package/dist/esm/internals/simulation/methods/specifications.js +0 -84
  479. package/dist/esm/internals/simulation/methods/specifications.js.map +0 -1
  480. package/dist/esm/internals/simulation/middleware/engine.js +0 -33
  481. package/dist/esm/internals/simulation/middleware/engine.js.map +0 -1
  482. package/dist/esm/internals/simulation/middleware/index.js +0 -3
  483. package/dist/esm/internals/simulation/middleware/index.js.map +0 -1
  484. package/dist/esm/internals/simulation/middleware/internal-methods/accounts.js +0 -31
  485. package/dist/esm/internals/simulation/middleware/internal-methods/accounts.js.map +0 -1
  486. package/dist/esm/internals/simulation/middleware/internal-methods/index.js +0 -3
  487. package/dist/esm/internals/simulation/middleware/internal-methods/index.js.map +0 -1
  488. package/dist/esm/internals/simulation/middleware/internal-methods/middleware.js +0 -37
  489. package/dist/esm/internals/simulation/middleware/internal-methods/middleware.js.map +0 -1
  490. package/dist/esm/internals/simulation/middleware/internal-methods/provider-state.js +0 -23
  491. package/dist/esm/internals/simulation/middleware/internal-methods/provider-state.js.map +0 -1
  492. package/dist/esm/internals/simulation/middleware/mock.js +0 -18
  493. package/dist/esm/internals/simulation/middleware/mock.js.map +0 -1
  494. package/dist/esm/internals/simulation/options.js +0 -20
  495. package/dist/esm/internals/simulation/options.js.map +0 -1
  496. package/dist/esm/internals/simulation/simulation.js +0 -128
  497. package/dist/esm/internals/simulation/simulation.js.map +0 -1
  498. package/dist/esm/internals/simulation/store/index.js +0 -6
  499. package/dist/esm/internals/simulation/store/index.js.map +0 -1
  500. package/dist/esm/internals/simulation/store/mocks.js +0 -32
  501. package/dist/esm/internals/simulation/store/mocks.js.map +0 -1
  502. package/dist/esm/internals/simulation/store/notifications.js +0 -30
  503. package/dist/esm/internals/simulation/store/notifications.js.map +0 -1
  504. package/dist/esm/internals/simulation/store/state.js +0 -47
  505. package/dist/esm/internals/simulation/store/state.js.map +0 -1
  506. package/dist/esm/internals/simulation/store/store.js +0 -50
  507. package/dist/esm/internals/simulation/store/store.js.map +0 -1
  508. package/dist/esm/internals/simulation/store/ui.js +0 -21
  509. package/dist/esm/internals/simulation/store/ui.js.map +0 -1
  510. package/dist/esm/internals/structs.js +0 -135
  511. package/dist/esm/internals/structs.js.map +0 -1
  512. package/dist/esm/matchers.js +0 -111
  513. package/dist/esm/matchers.js.map +0 -1
  514. package/dist/esm/options.js +0 -20
  515. package/dist/esm/options.js.map +0 -1
  516. package/dist/esm/setup.js +0 -6
  517. package/dist/esm/setup.js.map +0 -1
  518. package/dist/esm/types.js +0 -3
  519. package/dist/esm/types.js.map +0 -1
@@ -0,0 +1,97 @@
1
+ import {
2
+ decryptImplementation,
3
+ encryptImplementation
4
+ } from "./chunk-VYKYQSUI.mjs";
5
+ import {
6
+ getGetLocaleMethodImplementation
7
+ } from "./chunk-MSQ7Q2VJ.mjs";
8
+ import {
9
+ getCreateInterfaceImplementation,
10
+ getGetInterfaceImplementation
11
+ } from "./chunk-OC64PNDU.mjs";
12
+ import {
13
+ getShowInAppNotificationImplementation,
14
+ getShowNativeNotificationImplementation
15
+ } from "./chunk-AKFRQ5EJ.mjs";
16
+ import {
17
+ getShowDialogImplementation
18
+ } from "./chunk-DEFFA5IJ.mjs";
19
+ import {
20
+ getClearSnapStateMethodImplementation,
21
+ getGetSnapStateMethodImplementation,
22
+ getUpdateSnapStateMethodImplementation
23
+ } from "./chunk-6RDNSELT.mjs";
24
+ import {
25
+ EXCLUDED_SNAP_ENDOWMENTS,
26
+ EXCLUDED_SNAP_PERMISSIONS
27
+ } from "./chunk-I5LVU57H.mjs";
28
+
29
+ // src/internals/simulation/methods/specifications.ts
30
+ import {
31
+ endowmentPermissionBuilders,
32
+ buildSnapEndowmentSpecifications,
33
+ buildSnapRestrictedMethodSpecifications
34
+ } from "@metamask/snaps-rpc-methods";
35
+ import { DEFAULT_ENDOWMENTS } from "@metamask/snaps-utils";
36
+ function resolve(result) {
37
+ return () => result;
38
+ }
39
+ function asyncResolve(result) {
40
+ return async () => result;
41
+ }
42
+ function getPermissionSpecifications({
43
+ controllerMessenger,
44
+ hooks,
45
+ runSaga,
46
+ options
47
+ }) {
48
+ return {
49
+ ...buildSnapEndowmentSpecifications(EXCLUDED_SNAP_ENDOWMENTS),
50
+ ...buildSnapRestrictedMethodSpecifications(EXCLUDED_SNAP_PERMISSIONS, {
51
+ // Shared hooks.
52
+ ...hooks,
53
+ // Encryption and decryption hooks.
54
+ // TODO: Swap these out for the real implementations.
55
+ encrypt: encryptImplementation,
56
+ decrypt: decryptImplementation,
57
+ // Snaps-specific hooks.
58
+ clearSnapState: getClearSnapStateMethodImplementation(runSaga),
59
+ getLocale: getGetLocaleMethodImplementation(options),
60
+ getSnapState: getGetSnapStateMethodImplementation(runSaga),
61
+ getUnlockPromise: asyncResolve(true),
62
+ // TODO: Allow the user to specify the result of this function.
63
+ isOnPhishingList: resolve(false),
64
+ maybeUpdatePhishingList: asyncResolve(),
65
+ showDialog: getShowDialogImplementation(runSaga),
66
+ showInAppNotification: getShowInAppNotificationImplementation(runSaga),
67
+ showNativeNotification: getShowNativeNotificationImplementation(runSaga),
68
+ updateSnapState: getUpdateSnapStateMethodImplementation(runSaga),
69
+ createInterface: getCreateInterfaceImplementation(controllerMessenger),
70
+ getInterface: getGetInterfaceImplementation(controllerMessenger)
71
+ })
72
+ };
73
+ }
74
+ async function getEndowments(permissionController, snapId) {
75
+ const allEndowments = await Object.keys(endowmentPermissionBuilders).reduce(async (promise, permissionName) => {
76
+ const accumulator = await promise;
77
+ if (permissionController.hasPermission(snapId, permissionName)) {
78
+ const endowments = await permissionController.getEndowments(
79
+ snapId,
80
+ permissionName
81
+ );
82
+ if (endowments) {
83
+ return accumulator.concat(endowments);
84
+ }
85
+ }
86
+ return accumulator;
87
+ }, Promise.resolve([]));
88
+ return [.../* @__PURE__ */ new Set([...DEFAULT_ENDOWMENTS, ...allEndowments])];
89
+ }
90
+
91
+ export {
92
+ resolve,
93
+ asyncResolve,
94
+ getPermissionSpecifications,
95
+ getEndowments
96
+ };
97
+ //# sourceMappingURL=chunk-EOCDSPT7.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/internals/simulation/methods/specifications.ts"],"sourcesContent":["import type { GenericPermissionController } from '@metamask/permission-controller';\nimport {\n endowmentPermissionBuilders,\n buildSnapEndowmentSpecifications,\n buildSnapRestrictedMethodSpecifications,\n} from '@metamask/snaps-rpc-methods';\nimport type { SnapId } from '@metamask/snaps-sdk';\nimport { DEFAULT_ENDOWMENTS } from '@metamask/snaps-utils';\n\nimport type { RootControllerMessenger } from '../controllers';\nimport type { SimulationOptions } from '../options';\nimport type { RunSagaFunction } from '../store';\nimport {\n EXCLUDED_SNAP_ENDOWMENTS,\n EXCLUDED_SNAP_PERMISSIONS,\n} from './constants';\nimport {\n getGetLocaleMethodImplementation,\n getClearSnapStateMethodImplementation,\n getGetSnapStateMethodImplementation,\n getUpdateSnapStateMethodImplementation,\n getShowDialogImplementation,\n getShowInAppNotificationImplementation,\n getShowNativeNotificationImplementation,\n encryptImplementation,\n decryptImplementation,\n getCreateInterfaceImplementation,\n getGetInterfaceImplementation,\n} from './hooks';\n\nexport type PermissionSpecificationsHooks = {\n /**\n * A hook that returns the user's secret recovery phrase.\n *\n * @returns The user's secret recovery phrase.\n */\n getMnemonic: () => Promise<Uint8Array>;\n};\n\nexport type GetPermissionSpecificationsOptions = {\n controllerMessenger: RootControllerMessenger;\n hooks: PermissionSpecificationsHooks;\n runSaga: RunSagaFunction;\n options: SimulationOptions;\n};\n\n/**\n * Get a function which resolves with the specified result.\n *\n * @param result - The result to return.\n * @returns The function implementation.\n */\nexport function resolve(result: unknown) {\n return () => result;\n}\n\n/**\n * Get a function which resolves with the specified result.\n *\n * @param result - The result to return. If not specified, the function will\n * resolve with `undefined`.\n * @returns The function implementation.\n */\nexport function asyncResolve(result?: unknown) {\n return async () => result;\n}\n\n/**\n * Get the permission specifications for the Snap.\n *\n * @param options - The options.\n * @param options.controllerMessenger - The controller messenger.\n * @param options.hooks - The hooks.\n * @param options.runSaga - The function to run a saga outside the usual Redux\n * flow.\n * @param options.options - The simulation options.\n * @returns The permission specifications for the Snap.\n */\nexport function getPermissionSpecifications({\n controllerMessenger,\n hooks,\n runSaga,\n options,\n}: GetPermissionSpecificationsOptions) {\n return {\n ...buildSnapEndowmentSpecifications(EXCLUDED_SNAP_ENDOWMENTS),\n ...buildSnapRestrictedMethodSpecifications(EXCLUDED_SNAP_PERMISSIONS, {\n // Shared hooks.\n ...hooks,\n\n // Encryption and decryption hooks.\n // TODO: Swap these out for the real implementations.\n encrypt: encryptImplementation,\n decrypt: decryptImplementation,\n\n // Snaps-specific hooks.\n clearSnapState: getClearSnapStateMethodImplementation(runSaga),\n getLocale: getGetLocaleMethodImplementation(options),\n getSnapState: getGetSnapStateMethodImplementation(runSaga),\n getUnlockPromise: asyncResolve(true),\n\n // TODO: Allow the user to specify the result of this function.\n isOnPhishingList: resolve(false),\n\n maybeUpdatePhishingList: asyncResolve(),\n showDialog: getShowDialogImplementation(runSaga),\n showInAppNotification: getShowInAppNotificationImplementation(runSaga),\n showNativeNotification: getShowNativeNotificationImplementation(runSaga),\n updateSnapState: getUpdateSnapStateMethodImplementation(runSaga),\n createInterface: getCreateInterfaceImplementation(controllerMessenger),\n getInterface: getGetInterfaceImplementation(controllerMessenger),\n }),\n };\n}\n\n/**\n * Get the endowments for the Snap.\n *\n * @param permissionController - The permission controller.\n * @param snapId - The ID of the Snap.\n * @returns The endowments for the Snap.\n */\nexport async function getEndowments(\n permissionController: GenericPermissionController,\n snapId: SnapId,\n) {\n const allEndowments = await Object.keys(endowmentPermissionBuilders).reduce<\n Promise<string[]>\n >(async (promise, permissionName) => {\n const accumulator = await promise;\n if (permissionController.hasPermission(snapId, permissionName)) {\n const endowments = await permissionController.getEndowments(\n snapId,\n permissionName,\n );\n\n if (endowments) {\n return accumulator.concat(endowments as string[]);\n }\n }\n\n return accumulator;\n }, Promise.resolve([]));\n\n return [...new Set([...DEFAULT_ENDOWMENTS, ...allEndowments])];\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,OACK;AAEP,SAAS,0BAA0B;AA6C5B,SAAS,QAAQ,QAAiB;AACvC,SAAO,MAAM;AACf;AASO,SAAS,aAAa,QAAkB;AAC7C,SAAO,YAAY;AACrB;AAaO,SAAS,4BAA4B;AAAA,EAC1C;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,GAAuC;AACrC,SAAO;AAAA,IACL,GAAG,iCAAiC,wBAAwB;AAAA,IAC5D,GAAG,wCAAwC,2BAA2B;AAAA;AAAA,MAEpE,GAAG;AAAA;AAAA;AAAA,MAIH,SAAS;AAAA,MACT,SAAS;AAAA;AAAA,MAGT,gBAAgB,sCAAsC,OAAO;AAAA,MAC7D,WAAW,iCAAiC,OAAO;AAAA,MACnD,cAAc,oCAAoC,OAAO;AAAA,MACzD,kBAAkB,aAAa,IAAI;AAAA;AAAA,MAGnC,kBAAkB,QAAQ,KAAK;AAAA,MAE/B,yBAAyB,aAAa;AAAA,MACtC,YAAY,4BAA4B,OAAO;AAAA,MAC/C,uBAAuB,uCAAuC,OAAO;AAAA,MACrE,wBAAwB,wCAAwC,OAAO;AAAA,MACvE,iBAAiB,uCAAuC,OAAO;AAAA,MAC/D,iBAAiB,iCAAiC,mBAAmB;AAAA,MACrE,cAAc,8BAA8B,mBAAmB;AAAA,IACjE,CAAC;AAAA,EACH;AACF;AASA,eAAsB,cACpB,sBACA,QACA;AACA,QAAM,gBAAgB,MAAM,OAAO,KAAK,2BAA2B,EAAE,OAEnE,OAAO,SAAS,mBAAmB;AACnC,UAAM,cAAc,MAAM;AAC1B,QAAI,qBAAqB,cAAc,QAAQ,cAAc,GAAG;AAC9D,YAAM,aAAa,MAAM,qBAAqB;AAAA,QAC5C;AAAA,QACA;AAAA,MACF;AAEA,UAAI,YAAY;AACd,eAAO,YAAY,OAAO,UAAsB;AAAA,MAClD;AAAA,IACF;AAEA,WAAO;AAAA,EACT,GAAG,QAAQ,QAAQ,CAAC,CAAC,CAAC;AAEtB,SAAO,CAAC,GAAG,oBAAI,IAAI,CAAC,GAAG,oBAAoB,GAAG,aAAa,CAAC,CAAC;AAC/D;","names":[]}
@@ -0,0 +1,36 @@
1
+ import {
2
+ DEFAULT_LOCALE,
3
+ DEFAULT_SRP
4
+ } from "./chunk-JXOKRTEH.mjs";
5
+
6
+ // src/internals/simulation/options.ts
7
+ import { JsonStruct } from "@metamask/utils";
8
+ import {
9
+ create,
10
+ defaulted,
11
+ nullable,
12
+ object,
13
+ optional,
14
+ record,
15
+ string
16
+ } from "superstruct";
17
+ var SimulationOptionsStruct = object({
18
+ secretRecoveryPhrase: defaulted(optional(string()), DEFAULT_SRP),
19
+ locale: defaulted(optional(string()), DEFAULT_LOCALE),
20
+ state: defaulted(optional(nullable(record(string(), JsonStruct))), null),
21
+ unencryptedState: defaulted(
22
+ optional(nullable(record(string(), JsonStruct))),
23
+ null
24
+ )
25
+ });
26
+ function getOptions(options) {
27
+ return create(
28
+ options,
29
+ SimulationOptionsStruct
30
+ );
31
+ }
32
+
33
+ export {
34
+ getOptions
35
+ };
36
+ //# sourceMappingURL=chunk-FPFX5AKR.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/internals/simulation/options.ts"],"sourcesContent":["import { JsonStruct } from '@metamask/utils';\nimport type { Infer } from 'superstruct';\nimport {\n create,\n defaulted,\n nullable,\n object,\n optional,\n record,\n string,\n} from 'superstruct';\n\nimport { DEFAULT_LOCALE, DEFAULT_SRP } from './constants';\n\nconst SimulationOptionsStruct = object({\n secretRecoveryPhrase: defaulted(optional(string()), DEFAULT_SRP),\n locale: defaulted(optional(string()), DEFAULT_LOCALE),\n state: defaulted(optional(nullable(record(string(), JsonStruct))), null),\n unencryptedState: defaulted(\n optional(nullable(record(string(), JsonStruct))),\n null,\n ),\n});\n\n/**\n * Options for the simulation.\n *\n * @property secretRecoveryPhrase - The secret recovery phrase to use. This is\n * used to derive addresses and private keys. Defaults to a test recovery\n * phrase.\n * @property locale - The locale to use. Defaults to `en`.\n * @property state - The initial state of the Snap, if any. Defaults to `null`.\n */\nexport type SimulationUserOptions = Infer<typeof SimulationOptionsStruct>;\n\n/**\n * Options for the simulation, with defaults filled in.\n *\n * See {@link SimulationUserOptions} for documentation.\n */\nexport type SimulationOptions = Required<SimulationUserOptions>;\n\n/**\n * Get the options for the simulation.\n *\n * @param options - The user options. Any options not specified will be filled\n * in with default values.\n * @returns The simulation options.\n */\nexport function getOptions(options: SimulationUserOptions): SimulationOptions {\n return create(\n options,\n SimulationOptionsStruct,\n ) as Required<SimulationUserOptions>;\n}\n"],"mappings":";;;;;;AAAA,SAAS,kBAAkB;AAE3B;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OACK;AAIP,IAAM,0BAA0B,OAAO;AAAA,EACrC,sBAAsB,UAAU,SAAS,OAAO,CAAC,GAAG,WAAW;AAAA,EAC/D,QAAQ,UAAU,SAAS,OAAO,CAAC,GAAG,cAAc;AAAA,EACpD,OAAO,UAAU,SAAS,SAAS,OAAO,OAAO,GAAG,UAAU,CAAC,CAAC,GAAG,IAAI;AAAA,EACvE,kBAAkB;AAAA,IAChB,SAAS,SAAS,OAAO,OAAO,GAAG,UAAU,CAAC,CAAC;AAAA,IAC/C;AAAA,EACF;AACF,CAAC;AA2BM,SAAS,WAAW,SAAmD;AAC5E,SAAO;AAAA,IACL;AAAA,IACA;AAAA,EACF;AACF;","names":[]}
@@ -0,0 +1 @@
1
+ //# sourceMappingURL=chunk-HBT34TJ2.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
@@ -0,0 +1,80 @@
1
+ import {
2
+ getInterface
3
+ } from "./chunk-WL2GRM5E.mjs";
4
+ import {
5
+ clearNotifications,
6
+ getNotifications
7
+ } from "./chunk-AIZADBRK.mjs";
8
+
9
+ // src/internals/request.ts
10
+ import { unwrapError } from "@metamask/snaps-utils";
11
+ import { getSafeJson, hasProperty, isPlainObject } from "@metamask/utils";
12
+ import { nanoid } from "@reduxjs/toolkit";
13
+ function handleRequest({
14
+ snapId,
15
+ store,
16
+ executionService,
17
+ handler,
18
+ controllerMessenger,
19
+ runSaga,
20
+ request: { id = nanoid(), origin = "https://metamask.io", ...options }
21
+ }) {
22
+ const promise = executionService.handleRpcRequest(snapId, {
23
+ origin,
24
+ handler,
25
+ request: {
26
+ jsonrpc: "2.0",
27
+ id: 1,
28
+ ...options
29
+ }
30
+ }).then((result) => {
31
+ const notifications = getNotifications(store.getState());
32
+ store.dispatch(clearNotifications());
33
+ const content = getContentFromResult(result, snapId, controllerMessenger);
34
+ return {
35
+ id: String(id),
36
+ response: {
37
+ result: getSafeJson(result)
38
+ },
39
+ notifications,
40
+ content
41
+ };
42
+ }).catch((error) => {
43
+ const [unwrappedError] = unwrapError(error);
44
+ return {
45
+ id: String(id),
46
+ response: {
47
+ error: unwrappedError.serialize()
48
+ },
49
+ notifications: []
50
+ };
51
+ });
52
+ promise.getInterface = async () => {
53
+ return await runSaga(
54
+ getInterface,
55
+ runSaga,
56
+ snapId,
57
+ controllerMessenger
58
+ ).toPromise();
59
+ };
60
+ return promise;
61
+ }
62
+ function getContentFromResult(result, snapId, controllerMessenger) {
63
+ if (isPlainObject(result) && hasProperty(result, "id")) {
64
+ return controllerMessenger.call(
65
+ "SnapInterfaceController:getInterface",
66
+ snapId,
67
+ result.id
68
+ ).content;
69
+ }
70
+ if (isPlainObject(result) && hasProperty(result, "content")) {
71
+ return result.content;
72
+ }
73
+ return void 0;
74
+ }
75
+
76
+ export {
77
+ handleRequest,
78
+ getContentFromResult
79
+ };
80
+ //# sourceMappingURL=chunk-HBVDXIVN.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/internals/request.ts"],"sourcesContent":["import type { AbstractExecutionService } from '@metamask/snaps-controllers';\nimport type { SnapId, Component } from '@metamask/snaps-sdk';\nimport type { HandlerType } from '@metamask/snaps-utils';\nimport { unwrapError } from '@metamask/snaps-utils';\nimport { getSafeJson, hasProperty, isPlainObject } from '@metamask/utils';\nimport { nanoid } from '@reduxjs/toolkit';\n\nimport type { RequestOptions, SnapRequest } from '../types';\nimport {\n clearNotifications,\n getInterface,\n getNotifications,\n} from './simulation';\nimport type { RunSagaFunction, Store } from './simulation';\nimport type { RootControllerMessenger } from './simulation/controllers';\n\nexport type HandleRequestOptions = {\n snapId: SnapId;\n store: Store;\n executionService: AbstractExecutionService<unknown>;\n handler: HandlerType;\n controllerMessenger: RootControllerMessenger;\n runSaga: RunSagaFunction;\n request: RequestOptions;\n};\n\n/**\n * Send a JSON-RPC request to the Snap, and wrap the response in a\n * {@link SnapResponse} object.\n *\n * @param options - The request options.\n * @param options.snapId - The ID of the Snap to send the request to.\n * @param options.store - The Redux store.\n * @param options.executionService - The execution service to use to send the\n * request.\n * @param options.handler - The handler to use to send the request.\n * @param options.controllerMessenger - The controller messenger used to call actions.\n * @param options.runSaga - A function to run a saga outside the usual Redux\n * flow.\n * @param options.request - The request to send.\n * @param options.request.id - The ID of the request. If not provided, a random\n * ID will be generated.\n * @param options.request.origin - The origin of the request. Defaults to\n * `https://metamask.io`.\n * @returns The response, wrapped in a {@link SnapResponse} object.\n */\nexport function handleRequest({\n snapId,\n store,\n executionService,\n handler,\n controllerMessenger,\n runSaga,\n request: { id = nanoid(), origin = 'https://metamask.io', ...options },\n}: HandleRequestOptions): SnapRequest {\n const promise = executionService\n .handleRpcRequest(snapId, {\n origin,\n handler,\n request: {\n jsonrpc: '2.0',\n id: 1,\n ...options,\n },\n })\n .then((result) => {\n const notifications = getNotifications(store.getState());\n store.dispatch(clearNotifications());\n\n const content = getContentFromResult(result, snapId, controllerMessenger);\n\n return {\n id: String(id),\n response: {\n result: getSafeJson(result),\n },\n notifications,\n content,\n };\n })\n .catch((error) => {\n const [unwrappedError] = unwrapError(error);\n\n return {\n id: String(id),\n response: {\n error: unwrappedError.serialize(),\n },\n notifications: [],\n };\n }) as unknown as SnapRequest;\n\n promise.getInterface = async () => {\n return await runSaga(\n getInterface,\n runSaga,\n snapId,\n controllerMessenger,\n ).toPromise();\n };\n\n return promise;\n}\n\n/**\n * Get the response content either from the SnapInterfaceController or the response object if there is one.\n *\n * @param result - The handler result object.\n * @param snapId - The Snap ID.\n * @param controllerMessenger - The controller messenger.\n * @returns The content components if any.\n */\nexport function getContentFromResult(\n result: unknown,\n snapId: SnapId,\n controllerMessenger: RootControllerMessenger,\n): Component | undefined {\n if (isPlainObject(result) && hasProperty(result, 'id')) {\n return controllerMessenger.call(\n 'SnapInterfaceController:getInterface',\n snapId,\n result.id as string,\n ).content;\n }\n\n if (isPlainObject(result) && hasProperty(result, 'content')) {\n return result.content as Component;\n }\n\n return undefined;\n}\n"],"mappings":";;;;;;;;;AAGA,SAAS,mBAAmB;AAC5B,SAAS,aAAa,aAAa,qBAAqB;AACxD,SAAS,cAAc;AAyChB,SAAS,cAAc;AAAA,EAC5B;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA,SAAS,EAAE,KAAK,OAAO,GAAG,SAAS,uBAAuB,GAAG,QAAQ;AACvE,GAAsC;AACpC,QAAM,UAAU,iBACb,iBAAiB,QAAQ;AAAA,IACxB;AAAA,IACA;AAAA,IACA,SAAS;AAAA,MACP,SAAS;AAAA,MACT,IAAI;AAAA,MACJ,GAAG;AAAA,IACL;AAAA,EACF,CAAC,EACA,KAAK,CAAC,WAAW;AAChB,UAAM,gBAAgB,iBAAiB,MAAM,SAAS,CAAC;AACvD,UAAM,SAAS,mBAAmB,CAAC;AAEnC,UAAM,UAAU,qBAAqB,QAAQ,QAAQ,mBAAmB;AAExE,WAAO;AAAA,MACL,IAAI,OAAO,EAAE;AAAA,MACb,UAAU;AAAA,QACR,QAAQ,YAAY,MAAM;AAAA,MAC5B;AAAA,MACA;AAAA,MACA;AAAA,IACF;AAAA,EACF,CAAC,EACA,MAAM,CAAC,UAAU;AAChB,UAAM,CAAC,cAAc,IAAI,YAAY,KAAK;AAE1C,WAAO;AAAA,MACL,IAAI,OAAO,EAAE;AAAA,MACb,UAAU;AAAA,QACR,OAAO,eAAe,UAAU;AAAA,MAClC;AAAA,MACA,eAAe,CAAC;AAAA,IAClB;AAAA,EACF,CAAC;AAEH,UAAQ,eAAe,YAAY;AACjC,WAAO,MAAM;AAAA,MACX;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACF,EAAE,UAAU;AAAA,EACd;AAEA,SAAO;AACT;AAUO,SAAS,qBACd,QACA,QACA,qBACuB;AACvB,MAAI,cAAc,MAAM,KAAK,YAAY,QAAQ,IAAI,GAAG;AACtD,WAAO,oBAAoB;AAAA,MACzB;AAAA,MACA;AAAA,MACA,OAAO;AAAA,IACT,EAAE;AAAA,EACJ;AAEA,MAAI,cAAc,MAAM,KAAK,YAAY,QAAQ,SAAS,GAAG;AAC3D,WAAO,OAAO;AAAA,EAChB;AAEA,SAAO;AACT;","names":[]}
@@ -0,0 +1,39 @@
1
+ import {
2
+ createInternalMethodsMiddleware
3
+ } from "./chunk-6KNT4UMX.mjs";
4
+ import {
5
+ createMockMiddleware
6
+ } from "./chunk-BJMTD7H2.mjs";
7
+ import {
8
+ DEFAULT_JSON_RPC_ENDPOINT
9
+ } from "./chunk-JXOKRTEH.mjs";
10
+
11
+ // src/internals/simulation/middleware/engine.ts
12
+ import { createFetchMiddleware } from "@metamask/eth-json-rpc-middleware";
13
+ import { JsonRpcEngine } from "@metamask/json-rpc-engine";
14
+ import { createSnapsMethodMiddleware } from "@metamask/snaps-rpc-methods";
15
+ function createJsonRpcEngine({
16
+ store,
17
+ hooks,
18
+ permissionMiddleware,
19
+ endpoint = DEFAULT_JSON_RPC_ENDPOINT
20
+ }) {
21
+ const engine = new JsonRpcEngine();
22
+ engine.push(createMockMiddleware(store));
23
+ engine.push(createInternalMethodsMiddleware(hooks));
24
+ engine.push(createSnapsMethodMiddleware(true, hooks));
25
+ engine.push(permissionMiddleware);
26
+ engine.push(
27
+ createFetchMiddleware({
28
+ btoa: globalThis.btoa,
29
+ fetch: globalThis.fetch,
30
+ rpcUrl: endpoint
31
+ })
32
+ );
33
+ return engine;
34
+ }
35
+
36
+ export {
37
+ createJsonRpcEngine
38
+ };
39
+ //# sourceMappingURL=chunk-HMF2CKYT.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/internals/simulation/middleware/engine.ts"],"sourcesContent":["import { createFetchMiddleware } from '@metamask/eth-json-rpc-middleware';\nimport type { JsonRpcMiddleware } from '@metamask/json-rpc-engine';\nimport { JsonRpcEngine } from '@metamask/json-rpc-engine';\nimport type { RestrictedMethodParameters } from '@metamask/permission-controller';\nimport { createSnapsMethodMiddleware } from '@metamask/snaps-rpc-methods';\nimport type { Json } from '@metamask/utils';\n\nimport { DEFAULT_JSON_RPC_ENDPOINT } from '../constants';\nimport type { MiddlewareHooks } from '../simulation';\nimport type { Store } from '../store';\nimport { createInternalMethodsMiddleware } from './internal-methods';\nimport { createMockMiddleware } from './mock';\n\nexport type CreateJsonRpcEngineOptions = {\n store: Store;\n hooks: MiddlewareHooks;\n permissionMiddleware: JsonRpcMiddleware<RestrictedMethodParameters, Json>;\n endpoint?: string;\n};\n\n/**\n * Create a JSON-RPC engine for use in a simulated environment. This engine\n * should be used to handle all JSON-RPC requests. It is set up to handle\n * requests that would normally be handled internally by the MetaMask client, as\n * well as Snap-specific requests.\n *\n * @param options - The options to use when creating the engine.\n * @param options.store - The Redux store to use.\n * @param options.hooks - Any hooks used by the middleware handlers.\n * @param options.permissionMiddleware - The permission middleware to use.\n * @param options.endpoint - The JSON-RPC endpoint to use for Ethereum requests.\n * @returns A JSON-RPC engine.\n */\nexport function createJsonRpcEngine({\n store,\n hooks,\n permissionMiddleware,\n endpoint = DEFAULT_JSON_RPC_ENDPOINT,\n}: CreateJsonRpcEngineOptions) {\n const engine = new JsonRpcEngine();\n engine.push(createMockMiddleware(store));\n engine.push(createInternalMethodsMiddleware(hooks));\n engine.push(createSnapsMethodMiddleware(true, hooks));\n engine.push(permissionMiddleware);\n engine.push(\n createFetchMiddleware({\n btoa: globalThis.btoa,\n fetch: globalThis.fetch,\n rpcUrl: endpoint,\n }),\n );\n\n return engine;\n}\n"],"mappings":";;;;;;;;;;;AAAA,SAAS,6BAA6B;AAEtC,SAAS,qBAAqB;AAE9B,SAAS,mCAAmC;AA6BrC,SAAS,oBAAoB;AAAA,EAClC;AAAA,EACA;AAAA,EACA;AAAA,EACA,WAAW;AACb,GAA+B;AAC7B,QAAM,SAAS,IAAI,cAAc;AACjC,SAAO,KAAK,qBAAqB,KAAK,CAAC;AACvC,SAAO,KAAK,gCAAgC,KAAK,CAAC;AAClD,SAAO,KAAK,4BAA4B,MAAM,KAAK,CAAC;AACpD,SAAO,KAAK,oBAAoB;AAChC,SAAO;AAAA,IACL,sBAAsB;AAAA,MACpB,MAAM,WAAW;AAAA,MACjB,OAAO,WAAW;AAAA,MAClB,QAAQ;AAAA,IACV,CAAC;AAAA,EACH;AAEA,SAAO;AACT;","names":[]}
@@ -0,0 +1 @@
1
+ "use strict";//# sourceMappingURL=chunk-HP56MLQ3.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"names":[],"mappings":""}
@@ -0,0 +1,69 @@
1
+ // src/internals/simulation/methods/constants.ts
2
+ var EXCLUDED_SNAP_ENDOWMENTS = [];
3
+ var EXCLUDED_SNAP_PERMISSIONS = [];
4
+ var UNRESTRICTED_METHODS = Object.freeze([
5
+ "eth_blockNumber",
6
+ "eth_call",
7
+ "eth_chainId",
8
+ "eth_coinbase",
9
+ "eth_decrypt",
10
+ "eth_estimateGas",
11
+ "eth_feeHistory",
12
+ "eth_gasPrice",
13
+ "eth_getBalance",
14
+ "eth_getBlockByHash",
15
+ "eth_getBlockByNumber",
16
+ "eth_getBlockTransactionCountByHash",
17
+ "eth_getBlockTransactionCountByNumber",
18
+ "eth_getCode",
19
+ "eth_getEncryptionPublicKey",
20
+ "eth_getFilterChanges",
21
+ "eth_getFilterLogs",
22
+ "eth_getLogs",
23
+ "eth_getProof",
24
+ "eth_getStorageAt",
25
+ "eth_getTransactionByBlockHashAndIndex",
26
+ "eth_getTransactionByBlockNumberAndIndex",
27
+ "eth_getTransactionByHash",
28
+ "eth_getTransactionCount",
29
+ "eth_getTransactionReceipt",
30
+ "eth_getUncleByBlockHashAndIndex",
31
+ "eth_getUncleByBlockNumberAndIndex",
32
+ "eth_getUncleCountByBlockHash",
33
+ "eth_getUncleCountByBlockNumber",
34
+ "eth_getWork",
35
+ "eth_hashrate",
36
+ "eth_mining",
37
+ "eth_newBlockFilter",
38
+ "eth_newFilter",
39
+ "eth_newPendingTransactionFilter",
40
+ "eth_protocolVersion",
41
+ "eth_sendRawTransaction",
42
+ "eth_sendTransaction",
43
+ "eth_sign",
44
+ "eth_signTypedData",
45
+ "eth_signTypedData_v1",
46
+ "eth_signTypedData_v3",
47
+ "eth_signTypedData_v4",
48
+ "eth_submitHashrate",
49
+ "eth_submitWork",
50
+ "eth_syncing",
51
+ "eth_uninstallFilter",
52
+ "metamask_getProviderState",
53
+ "metamask_watchAsset",
54
+ "net_listening",
55
+ "net_peerCount",
56
+ "net_version",
57
+ "personal_ecRecover",
58
+ "personal_sign",
59
+ "wallet_watchAsset",
60
+ "web3_clientVersion",
61
+ "web3_sha3"
62
+ ]);
63
+
64
+ export {
65
+ EXCLUDED_SNAP_ENDOWMENTS,
66
+ EXCLUDED_SNAP_PERMISSIONS,
67
+ UNRESTRICTED_METHODS
68
+ };
69
+ //# sourceMappingURL=chunk-I5LVU57H.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/internals/simulation/methods/constants.ts"],"sourcesContent":["export const EXCLUDED_SNAP_ENDOWMENTS = [];\n\nexport const EXCLUDED_SNAP_PERMISSIONS = [];\n\n/**\n * All unrestricted methods recognized by the `PermissionController`.\n * Unrestricted methods are ignored by the permission system, but every\n * JSON-RPC request seen by the permission system must correspond to a\n * restricted or unrestricted method, or the request will be rejected with a\n * \"method not found\" error.\n */\nexport const UNRESTRICTED_METHODS = Object.freeze([\n 'eth_blockNumber',\n 'eth_call',\n 'eth_chainId',\n 'eth_coinbase',\n 'eth_decrypt',\n 'eth_estimateGas',\n 'eth_feeHistory',\n 'eth_gasPrice',\n 'eth_getBalance',\n 'eth_getBlockByHash',\n 'eth_getBlockByNumber',\n 'eth_getBlockTransactionCountByHash',\n 'eth_getBlockTransactionCountByNumber',\n 'eth_getCode',\n 'eth_getEncryptionPublicKey',\n 'eth_getFilterChanges',\n 'eth_getFilterLogs',\n 'eth_getLogs',\n 'eth_getProof',\n 'eth_getStorageAt',\n 'eth_getTransactionByBlockHashAndIndex',\n 'eth_getTransactionByBlockNumberAndIndex',\n 'eth_getTransactionByHash',\n 'eth_getTransactionCount',\n 'eth_getTransactionReceipt',\n 'eth_getUncleByBlockHashAndIndex',\n 'eth_getUncleByBlockNumberAndIndex',\n 'eth_getUncleCountByBlockHash',\n 'eth_getUncleCountByBlockNumber',\n 'eth_getWork',\n 'eth_hashrate',\n 'eth_mining',\n 'eth_newBlockFilter',\n 'eth_newFilter',\n 'eth_newPendingTransactionFilter',\n 'eth_protocolVersion',\n 'eth_sendRawTransaction',\n 'eth_sendTransaction',\n 'eth_sign',\n 'eth_signTypedData',\n 'eth_signTypedData_v1',\n 'eth_signTypedData_v3',\n 'eth_signTypedData_v4',\n 'eth_submitHashrate',\n 'eth_submitWork',\n 'eth_syncing',\n 'eth_uninstallFilter',\n 'metamask_getProviderState',\n 'metamask_watchAsset',\n 'net_listening',\n 'net_peerCount',\n 'net_version',\n 'personal_ecRecover',\n 'personal_sign',\n 'wallet_watchAsset',\n 'web3_clientVersion',\n 'web3_sha3',\n]);\n"],"mappings":";AAAO,IAAM,2BAA2B,CAAC;AAElC,IAAM,4BAA4B,CAAC;AASnC,IAAM,uBAAuB,OAAO,OAAO;AAAA,EAChD;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,CAAC;","names":[]}
@@ -0,0 +1 @@
1
+ //# sourceMappingURL=chunk-I7FLOZU7.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
@@ -0,0 +1,33 @@
1
+ // src/internals/simulation/store/mocks.ts
2
+ import { createSelector, createSlice } from "@reduxjs/toolkit";
3
+ var INITIAL_STATE = {
4
+ jsonRpc: {}
5
+ };
6
+ var mocksSlice = createSlice({
7
+ name: "mocks",
8
+ initialState: INITIAL_STATE,
9
+ reducers: {
10
+ addJsonRpcMock: (state, action) => {
11
+ state.jsonRpc[action.payload.method] = action.payload.result;
12
+ },
13
+ removeJsonRpcMock: (state, action) => {
14
+ delete state.jsonRpc[action.payload];
15
+ }
16
+ }
17
+ });
18
+ var { addJsonRpcMock, removeJsonRpcMock } = mocksSlice.actions;
19
+ var getJsonRpcMocks = (state) => state.mocks.jsonRpc;
20
+ var getJsonRpcMock = createSelector(
21
+ getJsonRpcMocks,
22
+ (_, method) => method,
23
+ (jsonRpcMocks, method) => jsonRpcMocks[method]
24
+ );
25
+
26
+ export {
27
+ mocksSlice,
28
+ addJsonRpcMock,
29
+ removeJsonRpcMock,
30
+ getJsonRpcMocks,
31
+ getJsonRpcMock
32
+ };
33
+ //# sourceMappingURL=chunk-J2ID3DS7.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/internals/simulation/store/mocks.ts"],"sourcesContent":["import type { Json } from '@metamask/utils';\nimport type { PayloadAction } from '@reduxjs/toolkit';\nimport { createSelector, createSlice } from '@reduxjs/toolkit';\n\nimport type { ApplicationState } from './store';\n\nexport type JsonRpcMock = {\n method: string;\n result: Json;\n};\n\nexport type MocksState = {\n jsonRpc: Record<string, Json>;\n};\n\n/**\n * The initial notifications state.\n */\nconst INITIAL_STATE: MocksState = {\n jsonRpc: {},\n};\n\nexport const mocksSlice = createSlice({\n name: 'mocks',\n initialState: INITIAL_STATE,\n reducers: {\n addJsonRpcMock: (state, action: PayloadAction<JsonRpcMock>) => {\n // @ts-expect-error - TS2589: Type instantiation is excessively deep and\n // possibly infinite.\n state.jsonRpc[action.payload.method] = action.payload.result;\n },\n removeJsonRpcMock: (state, action: PayloadAction<string>) => {\n delete state.jsonRpc[action.payload];\n },\n },\n});\n\nexport const { addJsonRpcMock, removeJsonRpcMock } = mocksSlice.actions;\n\n/**\n * Get the JSON-RPC mocks from the state.\n *\n * @param state - The application state.\n * @returns The JSON-RPC mocks.\n */\nexport const getJsonRpcMocks = (state: ApplicationState) => state.mocks.jsonRpc;\n\n/**\n * Get the JSON-RPC mock for a given method from the state.\n */\nexport const getJsonRpcMock = createSelector(\n getJsonRpcMocks,\n (_: unknown, method: string) => method,\n (jsonRpcMocks, method) => jsonRpcMocks[method],\n);\n"],"mappings":";AAEA,SAAS,gBAAgB,mBAAmB;AAgB5C,IAAM,gBAA4B;AAAA,EAChC,SAAS,CAAC;AACZ;AAEO,IAAM,aAAa,YAAY;AAAA,EACpC,MAAM;AAAA,EACN,cAAc;AAAA,EACd,UAAU;AAAA,IACR,gBAAgB,CAAC,OAAO,WAAuC;AAG7D,YAAM,QAAQ,OAAO,QAAQ,MAAM,IAAI,OAAO,QAAQ;AAAA,IACxD;AAAA,IACA,mBAAmB,CAAC,OAAO,WAAkC;AAC3D,aAAO,MAAM,QAAQ,OAAO,OAAO;AAAA,IACrC;AAAA,EACF;AACF,CAAC;AAEM,IAAM,EAAE,gBAAgB,kBAAkB,IAAI,WAAW;AAQzD,IAAM,kBAAkB,CAAC,UAA4B,MAAM,MAAM;AAKjE,IAAM,iBAAiB;AAAA,EAC5B;AAAA,EACA,CAAC,GAAY,WAAmB;AAAA,EAChC,CAAC,cAAc,WAAW,aAAa,MAAM;AAC/C;","names":[]}
@@ -0,0 +1,34 @@
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});// src/internals/simulation/store/ui.ts
2
+ var _toolkit = require('@reduxjs/toolkit');
3
+ var INITIAL_STATE = {
4
+ current: null
5
+ };
6
+ var uiSlice = _toolkit.createSlice.call(void 0, {
7
+ name: "ui",
8
+ initialState: INITIAL_STATE,
9
+ reducers: {
10
+ setInterface(state, action) {
11
+ state.current = action.payload;
12
+ },
13
+ closeInterface(state) {
14
+ state.current = null;
15
+ }
16
+ }
17
+ });
18
+ var resolveInterface = _toolkit.createAction.call(void 0,
19
+ `${uiSlice.name}/resolveInterface`
20
+ );
21
+ var { setInterface, closeInterface } = uiSlice.actions;
22
+ var getCurrentInterface = _toolkit.createSelector.call(void 0,
23
+ (state) => state.ui,
24
+ (ui) => ui.current
25
+ );
26
+
27
+
28
+
29
+
30
+
31
+
32
+
33
+ exports.uiSlice = uiSlice; exports.resolveInterface = resolveInterface; exports.setInterface = setInterface; exports.closeInterface = closeInterface; exports.getCurrentInterface = getCurrentInterface;
34
+ //# sourceMappingURL=chunk-JA7RJLI7.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/internals/simulation/store/ui.ts"],"names":[],"mappings":";AAEA,SAAS,cAAc,gBAAgB,mBAAmB;AAa1D,IAAM,gBAAyB;AAAA,EAC7B,SAAS;AACX;AAEO,IAAM,UAAU,YAAY;AAAA,EACjC,MAAM;AAAA,EACN,cAAc;AAAA,EACd,UAAU;AAAA,IACR,aAAa,OAAO,QAAkC;AACpD,YAAM,UAAU,OAAO;AAAA,IACzB;AAAA,IACA,eAAe,OAAO;AACpB,YAAM,UAAU;AAAA,IAClB;AAAA,EACF;AACF,CAAC;AAEM,IAAM,mBAAmB;AAAA,EAC9B,GAAG,QAAQ,IAAI;AACjB;AAEO,IAAM,EAAE,cAAc,eAAe,IAAI,QAAQ;AAEjD,IAAM,sBAAsB;AAAA,EACjC,CAAC,UAA4B,MAAM;AAAA,EACnC,CAAC,OAAO,GAAG;AACb","sourcesContent":["import type { DialogType } from '@metamask/snaps-sdk';\nimport type { PayloadAction } from '@reduxjs/toolkit';\nimport { createAction, createSelector, createSlice } from '@reduxjs/toolkit';\n\nimport type { ApplicationState } from './store';\n\nexport type Interface = {\n type: DialogType;\n id: string;\n};\n\nexport type UiState = {\n current?: Interface | null;\n};\n\nconst INITIAL_STATE: UiState = {\n current: null,\n};\n\nexport const uiSlice = createSlice({\n name: 'ui',\n initialState: INITIAL_STATE,\n reducers: {\n setInterface(state, action: PayloadAction<Interface>) {\n state.current = action.payload;\n },\n closeInterface(state) {\n state.current = null;\n },\n },\n});\n\nexport const resolveInterface = createAction<unknown>(\n `${uiSlice.name}/resolveInterface`,\n);\n\nexport const { setInterface, closeInterface } = uiSlice.actions;\n\nexport const getCurrentInterface = createSelector(\n (state: ApplicationState) => state.ui,\n (ui) => ui.current,\n);\n"]}
@@ -0,0 +1 @@
1
+ //# sourceMappingURL=chunk-JB2H2XEL.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
@@ -0,0 +1,21 @@
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});// src/internals/simulation/methods/hooks/interface.ts
2
+ function getCreateInterfaceImplementation(controllerMessenger) {
3
+ return async (snapId, content) => controllerMessenger.call(
4
+ "SnapInterfaceController:createInterface",
5
+ snapId,
6
+ content
7
+ );
8
+ }
9
+ function getGetInterfaceImplementation(controllerMessenger) {
10
+ return (snapId, id) => controllerMessenger.call(
11
+ "SnapInterfaceController:getInterface",
12
+ snapId,
13
+ id
14
+ );
15
+ }
16
+
17
+
18
+
19
+
20
+ exports.getCreateInterfaceImplementation = getCreateInterfaceImplementation; exports.getGetInterfaceImplementation = getGetInterfaceImplementation;
21
+ //# sourceMappingURL=chunk-JDN3VGMO.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/internals/simulation/methods/hooks/interface.ts"],"names":[],"mappings":";AAUO,SAAS,iCACd,qBACA;AACA,SAAO,OAAO,QAAgB,YAC5B,oBAAoB;AAAA,IAClB;AAAA,IACA;AAAA,IACA;AAAA,EACF;AACJ;AAQO,SAAS,8BACd,qBACA;AACA,SAAO,CAAC,QAAgB,OACtB,oBAAoB;AAAA,IAClB;AAAA,IACA;AAAA,IACA;AAAA,EACF;AACJ","sourcesContent":["import type { Component, SnapId } from '@metamask/snaps-sdk';\n\nimport type { RootControllerMessenger } from '../../controllers';\n\n/**\n * Get the implementation of the `createInterface` hook.\n *\n * @param controllerMessenger - The controller messenger used to call actions.\n * @returns The implementation of the `createInterface` hook.\n */\nexport function getCreateInterfaceImplementation(\n controllerMessenger: RootControllerMessenger,\n) {\n return async (snapId: SnapId, content: Component) =>\n controllerMessenger.call(\n 'SnapInterfaceController:createInterface',\n snapId,\n content,\n );\n}\n\n/**\n * Get the implementation of the `getInterface` hook.\n *\n * @param controllerMessenger - The controller messenger used to call actions.\n * @returns The implementation of the `getInterface` hook.\n */\nexport function getGetInterfaceImplementation(\n controllerMessenger: RootControllerMessenger,\n) {\n return (snapId: SnapId, id: string) =>\n controllerMessenger.call(\n 'SnapInterfaceController:getInterface',\n snapId,\n id,\n );\n}\n"]}
@@ -0,0 +1,57 @@
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
2
+
3
+ var _chunkJA7RJLI7js = require('./chunk-JA7RJLI7.js');
4
+
5
+
6
+ var _chunk34GS3AHAjs = require('./chunk-34GS3AHA.js');
7
+
8
+
9
+ var _chunkON6M4WG5js = require('./chunk-ON6M4WG5.js');
10
+
11
+
12
+
13
+ var _chunk4WCFXE73js = require('./chunk-4WCFXE73.js');
14
+
15
+ // src/internals/simulation/store/store.ts
16
+ var _toolkit = require('@reduxjs/toolkit');
17
+ var _reduxsaga = require('redux-saga'); var _reduxsaga2 = _interopRequireDefault(_reduxsaga);
18
+ function createStore(password, { state, unencryptedState }) {
19
+ const sagaMiddleware = _reduxsaga2.default.call(void 0, );
20
+ const store = _toolkit.configureStore.call(void 0, {
21
+ reducer: {
22
+ mocks: _chunk34GS3AHAjs.mocksSlice.reducer,
23
+ notifications: _chunkON6M4WG5js.notificationsSlice.reducer,
24
+ state: _chunk4WCFXE73js.stateSlice.reducer,
25
+ ui: _chunkJA7RJLI7js.uiSlice.reducer
26
+ },
27
+ middleware: (getDefaultMiddleware) => getDefaultMiddleware({ thunk: false }).concat(sagaMiddleware)
28
+ });
29
+ if (state) {
30
+ store.dispatch(
31
+ _chunk4WCFXE73js.setState.call(void 0, {
32
+ state: JSON.stringify({
33
+ password,
34
+ value: state
35
+ }),
36
+ encrypted: true
37
+ })
38
+ );
39
+ }
40
+ if (unencryptedState) {
41
+ store.dispatch(
42
+ _chunk4WCFXE73js.setState.call(void 0, {
43
+ state: JSON.stringify(unencryptedState),
44
+ encrypted: false
45
+ })
46
+ );
47
+ }
48
+ return {
49
+ store,
50
+ runSaga: sagaMiddleware.run.bind(sagaMiddleware)
51
+ };
52
+ }
53
+
54
+
55
+
56
+ exports.createStore = createStore;
57
+ //# sourceMappingURL=chunk-JGQJFYU4.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/internals/simulation/store/store.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,SAAS,sBAAsB;AAC/B,OAAO,0BAA0B;AAiB1B,SAAS,YACd,UACA,EAAE,OAAO,iBAAiB,GAC1B;AACA,QAAM,iBAAiB,qBAAqB;AAC5C,QAAM,QAAQ,eAAe;AAAA,IAC3B,SAAS;AAAA,MACP,OAAO,WAAW;AAAA,MAClB,eAAe,mBAAmB;AAAA,MAClC,OAAO,WAAW;AAAA,MAClB,IAAI,QAAQ;AAAA,IACd;AAAA,IACA,YAAY,CAAC,yBACX,qBAAqB,EAAE,OAAO,MAAM,CAAC,EAAE,OAAO,cAAc;AAAA,EAChE,CAAC;AAGD,MAAI,OAAO;AACT,UAAM;AAAA,MACJ,SAAS;AAAA,QACP,OAAO,KAAK,UAAU;AAAA,UACpB;AAAA,UACA,OAAO;AAAA,QACT,CAAC;AAAA,QACD,WAAW;AAAA,MACb,CAAC;AAAA,IACH;AAAA,EACF;AAEA,MAAI,kBAAkB;AACpB,UAAM;AAAA,MACJ,SAAS;AAAA,QACP,OAAO,KAAK,UAAU,gBAAgB;AAAA,QACtC,WAAW;AAAA,MACb,CAAC;AAAA,IACH;AAAA,EACF;AAEA,SAAO;AAAA,IACL;AAAA,IACA,SAAS,eAAe,IAAI,KAAK,cAAc;AAAA,EACjD;AACF","sourcesContent":["import { configureStore } from '@reduxjs/toolkit';\nimport createSagaMiddleware from 'redux-saga';\n\nimport type { SimulationOptions } from '../options';\nimport { mocksSlice } from './mocks';\nimport { notificationsSlice } from './notifications';\nimport { setState, stateSlice } from './state';\nimport { uiSlice } from './ui';\n\n/**\n * Create a Redux store.\n *\n * @param password - The password to use for state encryption.\n * @param options - The simulation options.\n * @param options.state - The initial state for the Snap.\n * @param options.unencryptedState - The initial unencrypted state for the Snap.\n * @returns A Redux store with the default state.\n */\nexport function createStore(\n password: string,\n { state, unencryptedState }: SimulationOptions,\n) {\n const sagaMiddleware = createSagaMiddleware();\n const store = configureStore({\n reducer: {\n mocks: mocksSlice.reducer,\n notifications: notificationsSlice.reducer,\n state: stateSlice.reducer,\n ui: uiSlice.reducer,\n },\n middleware: (getDefaultMiddleware) =>\n getDefaultMiddleware({ thunk: false }).concat(sagaMiddleware),\n });\n\n // Set initial state for the Snap.\n if (state) {\n store.dispatch(\n setState({\n state: JSON.stringify({\n password,\n value: state,\n }),\n encrypted: true,\n }),\n );\n }\n\n if (unencryptedState) {\n store.dispatch(\n setState({\n state: JSON.stringify(unencryptedState),\n encrypted: false,\n }),\n );\n }\n\n return {\n store,\n runSaga: sagaMiddleware.run.bind(sagaMiddleware),\n };\n}\n\nexport type Store = ReturnType<typeof createStore>['store'];\nexport type ApplicationState = ReturnType<Store['getState']>;\nexport type RunSagaFunction = ReturnType<typeof createStore>['runSaga'];\n"]}