@metamask/profile-sync-controller 8.1.1 → 10.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 (303) hide show
  1. package/CHANGELOG.md +22 -1
  2. package/README.md +32 -0
  3. package/auth/mocks/package.json +2 -2
  4. package/dist/controllers/authentication/AuthenticationController.cjs +53 -86
  5. package/dist/controllers/authentication/AuthenticationController.cjs.map +1 -1
  6. package/dist/controllers/authentication/AuthenticationController.d.cts +11 -23
  7. package/dist/controllers/authentication/AuthenticationController.d.cts.map +1 -1
  8. package/dist/controllers/authentication/AuthenticationController.d.mts +11 -23
  9. package/dist/controllers/authentication/AuthenticationController.d.mts.map +1 -1
  10. package/dist/controllers/authentication/AuthenticationController.mjs +53 -86
  11. package/dist/controllers/authentication/AuthenticationController.mjs.map +1 -1
  12. package/dist/controllers/authentication/index.cjs +1 -1
  13. package/dist/controllers/authentication/index.cjs.map +1 -1
  14. package/dist/controllers/authentication/index.d.cts +1 -1
  15. package/dist/controllers/authentication/index.d.cts.map +1 -1
  16. package/dist/controllers/authentication/index.d.mts +1 -1
  17. package/dist/controllers/authentication/index.d.mts.map +1 -1
  18. package/dist/controllers/authentication/index.mjs +1 -1
  19. package/dist/controllers/authentication/index.mjs.map +1 -1
  20. package/dist/controllers/authentication/mocks/index.cjs.map +1 -0
  21. package/dist/controllers/authentication/mocks/index.d.cts.map +1 -0
  22. package/dist/controllers/authentication/mocks/index.d.mts.map +1 -0
  23. package/dist/controllers/authentication/mocks/index.mjs.map +1 -0
  24. package/dist/controllers/authentication/mocks/mockResponses.cjs +34 -0
  25. package/dist/controllers/authentication/mocks/mockResponses.cjs.map +1 -0
  26. package/dist/controllers/authentication/mocks/mockResponses.d.cts +55 -0
  27. package/dist/controllers/authentication/mocks/mockResponses.d.cts.map +1 -0
  28. package/dist/controllers/authentication/mocks/mockResponses.d.mts +55 -0
  29. package/dist/controllers/authentication/mocks/mockResponses.d.mts.map +1 -0
  30. package/dist/controllers/authentication/mocks/mockResponses.mjs +28 -0
  31. package/dist/controllers/authentication/mocks/mockResponses.mjs.map +1 -0
  32. package/dist/controllers/user-storage/UserStorageController.cjs +71 -127
  33. package/dist/controllers/user-storage/UserStorageController.cjs.map +1 -1
  34. package/dist/controllers/user-storage/UserStorageController.d.cts +5 -4
  35. package/dist/controllers/user-storage/UserStorageController.d.cts.map +1 -1
  36. package/dist/controllers/user-storage/UserStorageController.d.mts +5 -4
  37. package/dist/controllers/user-storage/UserStorageController.d.mts.map +1 -1
  38. package/dist/controllers/user-storage/UserStorageController.mjs +71 -127
  39. package/dist/controllers/user-storage/UserStorageController.mjs.map +1 -1
  40. package/dist/controllers/user-storage/account-syncing/controller-integration.cjs +2 -2
  41. package/dist/controllers/user-storage/account-syncing/controller-integration.cjs.map +1 -1
  42. package/dist/controllers/user-storage/account-syncing/controller-integration.mjs +2 -2
  43. package/dist/controllers/user-storage/account-syncing/controller-integration.mjs.map +1 -1
  44. package/dist/controllers/user-storage/account-syncing/sync-utils.cjs +1 -0
  45. package/dist/controllers/user-storage/account-syncing/sync-utils.cjs.map +1 -1
  46. package/dist/controllers/user-storage/account-syncing/sync-utils.d.cts.map +1 -1
  47. package/dist/controllers/user-storage/account-syncing/sync-utils.d.mts.map +1 -1
  48. package/dist/controllers/user-storage/account-syncing/sync-utils.mjs +1 -0
  49. package/dist/controllers/user-storage/account-syncing/sync-utils.mjs.map +1 -1
  50. package/dist/controllers/user-storage/account-syncing/utils.cjs +2 -2
  51. package/dist/controllers/user-storage/account-syncing/utils.cjs.map +1 -1
  52. package/dist/controllers/user-storage/account-syncing/utils.mjs +2 -2
  53. package/dist/controllers/user-storage/account-syncing/utils.mjs.map +1 -1
  54. package/dist/controllers/user-storage/index.cjs +1 -1
  55. package/dist/controllers/user-storage/index.cjs.map +1 -1
  56. package/dist/controllers/user-storage/index.d.cts +1 -1
  57. package/dist/controllers/user-storage/index.d.cts.map +1 -1
  58. package/dist/controllers/user-storage/index.d.mts +1 -1
  59. package/dist/controllers/user-storage/index.d.mts.map +1 -1
  60. package/dist/controllers/user-storage/index.mjs +1 -1
  61. package/dist/controllers/user-storage/index.mjs.map +1 -1
  62. package/dist/controllers/user-storage/mocks/index.cjs.map +1 -0
  63. package/dist/controllers/user-storage/mocks/index.d.cts.map +1 -0
  64. package/dist/controllers/user-storage/mocks/index.d.mts.map +1 -0
  65. package/dist/controllers/user-storage/mocks/index.mjs.map +1 -0
  66. package/dist/controllers/user-storage/{__fixtures__ → mocks}/mockResponses.cjs +3 -3
  67. package/dist/controllers/user-storage/mocks/mockResponses.cjs.map +1 -0
  68. package/dist/controllers/user-storage/{__fixtures__ → mocks}/mockResponses.d.cts +1 -1
  69. package/dist/controllers/user-storage/mocks/mockResponses.d.cts.map +1 -0
  70. package/dist/controllers/user-storage/{__fixtures__ → mocks}/mockResponses.d.mts +1 -1
  71. package/dist/controllers/user-storage/mocks/mockResponses.d.mts.map +1 -0
  72. package/dist/controllers/user-storage/{__fixtures__ → mocks}/mockResponses.mjs +3 -3
  73. package/dist/controllers/user-storage/mocks/mockResponses.mjs.map +1 -0
  74. package/dist/controllers/user-storage/mocks/mockStorage.cjs.map +1 -0
  75. package/dist/controllers/user-storage/mocks/mockStorage.d.cts.map +1 -0
  76. package/dist/controllers/user-storage/mocks/mockStorage.d.mts.map +1 -0
  77. package/dist/controllers/user-storage/mocks/mockStorage.mjs.map +1 -0
  78. package/dist/controllers/user-storage/network-syncing/controller-integration.cjs +14 -14
  79. package/dist/controllers/user-storage/network-syncing/controller-integration.cjs.map +1 -1
  80. package/dist/controllers/user-storage/network-syncing/controller-integration.d.cts +3 -3
  81. package/dist/controllers/user-storage/network-syncing/controller-integration.d.cts.map +1 -1
  82. package/dist/controllers/user-storage/network-syncing/controller-integration.d.mts +3 -3
  83. package/dist/controllers/user-storage/network-syncing/controller-integration.d.mts.map +1 -1
  84. package/dist/controllers/user-storage/network-syncing/controller-integration.mjs +14 -14
  85. package/dist/controllers/user-storage/network-syncing/controller-integration.mjs.map +1 -1
  86. package/dist/controllers/user-storage/network-syncing/services.cjs +27 -23
  87. package/dist/controllers/user-storage/network-syncing/services.cjs.map +1 -1
  88. package/dist/controllers/user-storage/network-syncing/services.d.cts +16 -7
  89. package/dist/controllers/user-storage/network-syncing/services.d.cts.map +1 -1
  90. package/dist/controllers/user-storage/network-syncing/services.d.mts +16 -7
  91. package/dist/controllers/user-storage/network-syncing/services.d.mts.map +1 -1
  92. package/dist/controllers/user-storage/network-syncing/services.mjs +27 -23
  93. package/dist/controllers/user-storage/network-syncing/services.mjs.map +1 -1
  94. package/dist/controllers/user-storage/network-syncing/sync-mutations.cjs.map +1 -1
  95. package/dist/controllers/user-storage/network-syncing/sync-mutations.d.cts +13 -5
  96. package/dist/controllers/user-storage/network-syncing/sync-mutations.d.cts.map +1 -1
  97. package/dist/controllers/user-storage/network-syncing/sync-mutations.d.mts +13 -5
  98. package/dist/controllers/user-storage/network-syncing/sync-mutations.d.mts.map +1 -1
  99. package/dist/controllers/user-storage/network-syncing/sync-mutations.mjs.map +1 -1
  100. package/dist/controllers/user-storage/types.cjs +3 -0
  101. package/dist/controllers/user-storage/types.cjs.map +1 -0
  102. package/dist/controllers/user-storage/types.d.cts +23 -0
  103. package/dist/controllers/user-storage/types.d.cts.map +1 -0
  104. package/dist/controllers/user-storage/types.d.mts +23 -0
  105. package/dist/controllers/user-storage/types.d.mts.map +1 -0
  106. package/dist/controllers/user-storage/types.mjs +2 -0
  107. package/dist/controllers/user-storage/types.mjs.map +1 -0
  108. package/dist/sdk/authentication-jwt-bearer/flow-srp.cjs +7 -8
  109. package/dist/sdk/authentication-jwt-bearer/flow-srp.cjs.map +1 -1
  110. package/dist/sdk/authentication-jwt-bearer/flow-srp.d.cts +2 -0
  111. package/dist/sdk/authentication-jwt-bearer/flow-srp.d.cts.map +1 -1
  112. package/dist/sdk/authentication-jwt-bearer/flow-srp.d.mts +2 -0
  113. package/dist/sdk/authentication-jwt-bearer/flow-srp.d.mts.map +1 -1
  114. package/dist/sdk/authentication-jwt-bearer/flow-srp.mjs +8 -9
  115. package/dist/sdk/authentication-jwt-bearer/flow-srp.mjs.map +1 -1
  116. package/dist/sdk/authentication-jwt-bearer/services.cjs +10 -2
  117. package/dist/sdk/authentication-jwt-bearer/services.cjs.map +1 -1
  118. package/dist/sdk/authentication-jwt-bearer/services.d.cts +3 -1
  119. package/dist/sdk/authentication-jwt-bearer/services.d.cts.map +1 -1
  120. package/dist/sdk/authentication-jwt-bearer/services.d.mts +3 -1
  121. package/dist/sdk/authentication-jwt-bearer/services.d.mts.map +1 -1
  122. package/dist/sdk/authentication-jwt-bearer/services.mjs +10 -2
  123. package/dist/sdk/authentication-jwt-bearer/services.mjs.map +1 -1
  124. package/dist/sdk/authentication-jwt-bearer/types.cjs.map +1 -1
  125. package/dist/sdk/authentication-jwt-bearer/types.mjs.map +1 -1
  126. package/dist/sdk/authentication.cjs.map +1 -1
  127. package/dist/sdk/authentication.d.cts +1 -1
  128. package/dist/sdk/authentication.d.cts.map +1 -1
  129. package/dist/sdk/authentication.d.mts +1 -1
  130. package/dist/sdk/authentication.d.mts.map +1 -1
  131. package/dist/sdk/authentication.mjs.map +1 -1
  132. package/dist/sdk/mocks/auth.cjs +44 -0
  133. package/dist/sdk/mocks/auth.cjs.map +1 -0
  134. package/dist/sdk/{__fixtures__/mock-auth.d.cts → mocks/auth.d.cts} +22 -25
  135. package/dist/sdk/mocks/auth.d.cts.map +1 -0
  136. package/dist/sdk/{__fixtures__/mock-auth.d.mts → mocks/auth.d.mts} +22 -25
  137. package/dist/sdk/mocks/auth.d.mts.map +1 -0
  138. package/dist/sdk/mocks/auth.mjs +41 -0
  139. package/dist/sdk/mocks/auth.mjs.map +1 -0
  140. package/dist/sdk/mocks/userstorage.cjs +43 -0
  141. package/dist/sdk/mocks/userstorage.cjs.map +1 -0
  142. package/dist/sdk/mocks/userstorage.d.cts +10 -0
  143. package/dist/sdk/mocks/userstorage.d.cts.map +1 -0
  144. package/dist/sdk/mocks/userstorage.d.mts +10 -0
  145. package/dist/sdk/mocks/userstorage.d.mts.map +1 -0
  146. package/dist/sdk/mocks/userstorage.mjs +15 -0
  147. package/dist/sdk/mocks/userstorage.mjs.map +1 -0
  148. package/dist/sdk/user-storage.cjs +34 -39
  149. package/dist/sdk/user-storage.cjs.map +1 -1
  150. package/dist/sdk/user-storage.d.cts +11 -6
  151. package/dist/sdk/user-storage.d.cts.map +1 -1
  152. package/dist/sdk/user-storage.d.mts +11 -6
  153. package/dist/sdk/user-storage.d.mts.map +1 -1
  154. package/dist/sdk/user-storage.mjs +34 -39
  155. package/dist/sdk/user-storage.mjs.map +1 -1
  156. package/dist/sdk/utils/messaging-signing-snap-requests.cjs +12 -1
  157. package/dist/sdk/utils/messaging-signing-snap-requests.cjs.map +1 -1
  158. package/dist/sdk/utils/messaging-signing-snap-requests.d.cts +6 -0
  159. package/dist/sdk/utils/messaging-signing-snap-requests.d.cts.map +1 -1
  160. package/dist/sdk/utils/messaging-signing-snap-requests.d.mts +6 -0
  161. package/dist/sdk/utils/messaging-signing-snap-requests.d.mts.map +1 -1
  162. package/dist/sdk/utils/messaging-signing-snap-requests.mjs +10 -0
  163. package/dist/sdk/utils/messaging-signing-snap-requests.mjs.map +1 -1
  164. package/dist/shared/types/services.cjs +3 -0
  165. package/dist/shared/types/services.cjs.map +1 -0
  166. package/dist/shared/types/services.d.cts +10 -0
  167. package/dist/shared/types/services.d.cts.map +1 -0
  168. package/dist/shared/types/services.d.mts +10 -0
  169. package/dist/shared/types/services.d.mts.map +1 -0
  170. package/dist/shared/types/services.mjs +2 -0
  171. package/dist/shared/types/services.mjs.map +1 -0
  172. package/package.json +14 -14
  173. package/user-storage/mocks/package.json +2 -2
  174. package/dist/controllers/authentication/__fixtures__/index.cjs.map +0 -1
  175. package/dist/controllers/authentication/__fixtures__/index.d.cts.map +0 -1
  176. package/dist/controllers/authentication/__fixtures__/index.d.mts.map +0 -1
  177. package/dist/controllers/authentication/__fixtures__/index.mjs.map +0 -1
  178. package/dist/controllers/authentication/__fixtures__/mockResponses.cjs +0 -47
  179. package/dist/controllers/authentication/__fixtures__/mockResponses.cjs.map +0 -1
  180. package/dist/controllers/authentication/__fixtures__/mockResponses.d.cts +0 -23
  181. package/dist/controllers/authentication/__fixtures__/mockResponses.d.cts.map +0 -1
  182. package/dist/controllers/authentication/__fixtures__/mockResponses.d.mts +0 -23
  183. package/dist/controllers/authentication/__fixtures__/mockResponses.d.mts.map +0 -1
  184. package/dist/controllers/authentication/__fixtures__/mockResponses.mjs +0 -41
  185. package/dist/controllers/authentication/__fixtures__/mockResponses.mjs.map +0 -1
  186. package/dist/controllers/authentication/__fixtures__/mockServices.cjs +0 -37
  187. package/dist/controllers/authentication/__fixtures__/mockServices.cjs.map +0 -1
  188. package/dist/controllers/authentication/__fixtures__/mockServices.d.cts +0 -10
  189. package/dist/controllers/authentication/__fixtures__/mockServices.d.cts.map +0 -1
  190. package/dist/controllers/authentication/__fixtures__/mockServices.d.mts +0 -10
  191. package/dist/controllers/authentication/__fixtures__/mockServices.d.mts.map +0 -1
  192. package/dist/controllers/authentication/__fixtures__/mockServices.mjs +0 -35
  193. package/dist/controllers/authentication/__fixtures__/mockServices.mjs.map +0 -1
  194. package/dist/controllers/authentication/services.cjs +0 -132
  195. package/dist/controllers/authentication/services.cjs.map +0 -1
  196. package/dist/controllers/authentication/services.d.cts +0 -72
  197. package/dist/controllers/authentication/services.d.cts.map +0 -1
  198. package/dist/controllers/authentication/services.d.mts +0 -72
  199. package/dist/controllers/authentication/services.d.mts.map +0 -1
  200. package/dist/controllers/authentication/services.mjs +0 -129
  201. package/dist/controllers/authentication/services.mjs.map +0 -1
  202. package/dist/controllers/user-storage/__fixtures__/index.cjs.map +0 -1
  203. package/dist/controllers/user-storage/__fixtures__/index.d.cts.map +0 -1
  204. package/dist/controllers/user-storage/__fixtures__/index.d.mts.map +0 -1
  205. package/dist/controllers/user-storage/__fixtures__/index.mjs.map +0 -1
  206. package/dist/controllers/user-storage/__fixtures__/mockMessenger.cjs +0 -167
  207. package/dist/controllers/user-storage/__fixtures__/mockMessenger.cjs.map +0 -1
  208. package/dist/controllers/user-storage/__fixtures__/mockMessenger.d.cts +0 -105
  209. package/dist/controllers/user-storage/__fixtures__/mockMessenger.d.cts.map +0 -1
  210. package/dist/controllers/user-storage/__fixtures__/mockMessenger.d.mts +0 -105
  211. package/dist/controllers/user-storage/__fixtures__/mockMessenger.d.mts.map +0 -1
  212. package/dist/controllers/user-storage/__fixtures__/mockMessenger.mjs +0 -162
  213. package/dist/controllers/user-storage/__fixtures__/mockMessenger.mjs.map +0 -1
  214. package/dist/controllers/user-storage/__fixtures__/mockResponses.cjs.map +0 -1
  215. package/dist/controllers/user-storage/__fixtures__/mockResponses.d.cts.map +0 -1
  216. package/dist/controllers/user-storage/__fixtures__/mockResponses.d.mts.map +0 -1
  217. package/dist/controllers/user-storage/__fixtures__/mockResponses.mjs.map +0 -1
  218. package/dist/controllers/user-storage/__fixtures__/mockServices.cjs +0 -82
  219. package/dist/controllers/user-storage/__fixtures__/mockServices.cjs.map +0 -1
  220. package/dist/controllers/user-storage/__fixtures__/mockServices.d.cts +0 -15
  221. package/dist/controllers/user-storage/__fixtures__/mockServices.d.cts.map +0 -1
  222. package/dist/controllers/user-storage/__fixtures__/mockServices.d.mts +0 -15
  223. package/dist/controllers/user-storage/__fixtures__/mockServices.d.mts.map +0 -1
  224. package/dist/controllers/user-storage/__fixtures__/mockServices.mjs +0 -76
  225. package/dist/controllers/user-storage/__fixtures__/mockServices.mjs.map +0 -1
  226. package/dist/controllers/user-storage/__fixtures__/mockStorage.cjs.map +0 -1
  227. package/dist/controllers/user-storage/__fixtures__/mockStorage.d.cts.map +0 -1
  228. package/dist/controllers/user-storage/__fixtures__/mockStorage.d.mts.map +0 -1
  229. package/dist/controllers/user-storage/__fixtures__/mockStorage.mjs.map +0 -1
  230. package/dist/controllers/user-storage/__fixtures__/test-utils.cjs +0 -78
  231. package/dist/controllers/user-storage/__fixtures__/test-utils.cjs.map +0 -1
  232. package/dist/controllers/user-storage/__fixtures__/test-utils.d.cts +0 -38
  233. package/dist/controllers/user-storage/__fixtures__/test-utils.d.cts.map +0 -1
  234. package/dist/controllers/user-storage/__fixtures__/test-utils.d.mts +0 -38
  235. package/dist/controllers/user-storage/__fixtures__/test-utils.d.mts.map +0 -1
  236. package/dist/controllers/user-storage/__fixtures__/test-utils.mjs +0 -68
  237. package/dist/controllers/user-storage/__fixtures__/test-utils.mjs.map +0 -1
  238. package/dist/controllers/user-storage/account-syncing/__fixtures__/mockAccounts.cjs +0 -178
  239. package/dist/controllers/user-storage/account-syncing/__fixtures__/mockAccounts.cjs.map +0 -1
  240. package/dist/controllers/user-storage/account-syncing/__fixtures__/mockAccounts.d.cts +0 -91
  241. package/dist/controllers/user-storage/account-syncing/__fixtures__/mockAccounts.d.cts.map +0 -1
  242. package/dist/controllers/user-storage/account-syncing/__fixtures__/mockAccounts.d.mts +0 -91
  243. package/dist/controllers/user-storage/account-syncing/__fixtures__/mockAccounts.d.mts.map +0 -1
  244. package/dist/controllers/user-storage/account-syncing/__fixtures__/mockAccounts.mjs +0 -174
  245. package/dist/controllers/user-storage/account-syncing/__fixtures__/mockAccounts.mjs.map +0 -1
  246. package/dist/controllers/user-storage/account-syncing/__fixtures__/test-utils.cjs +0 -58
  247. package/dist/controllers/user-storage/account-syncing/__fixtures__/test-utils.cjs.map +0 -1
  248. package/dist/controllers/user-storage/account-syncing/__fixtures__/test-utils.d.cts +0 -87
  249. package/dist/controllers/user-storage/account-syncing/__fixtures__/test-utils.d.cts.map +0 -1
  250. package/dist/controllers/user-storage/account-syncing/__fixtures__/test-utils.d.mts +0 -87
  251. package/dist/controllers/user-storage/account-syncing/__fixtures__/test-utils.d.mts.map +0 -1
  252. package/dist/controllers/user-storage/account-syncing/__fixtures__/test-utils.mjs +0 -52
  253. package/dist/controllers/user-storage/account-syncing/__fixtures__/test-utils.mjs.map +0 -1
  254. package/dist/controllers/user-storage/network-syncing/__fixtures__/mockNetwork.cjs +0 -43
  255. package/dist/controllers/user-storage/network-syncing/__fixtures__/mockNetwork.cjs.map +0 -1
  256. package/dist/controllers/user-storage/network-syncing/__fixtures__/mockNetwork.d.cts +0 -11
  257. package/dist/controllers/user-storage/network-syncing/__fixtures__/mockNetwork.d.cts.map +0 -1
  258. package/dist/controllers/user-storage/network-syncing/__fixtures__/mockNetwork.d.mts +0 -11
  259. package/dist/controllers/user-storage/network-syncing/__fixtures__/mockNetwork.d.mts.map +0 -1
  260. package/dist/controllers/user-storage/network-syncing/__fixtures__/mockNetwork.mjs +0 -36
  261. package/dist/controllers/user-storage/network-syncing/__fixtures__/mockNetwork.mjs.map +0 -1
  262. package/dist/controllers/user-storage/services.cjs +0 -306
  263. package/dist/controllers/user-storage/services.cjs.map +0 -1
  264. package/dist/controllers/user-storage/services.d.cts +0 -85
  265. package/dist/controllers/user-storage/services.d.cts.map +0 -1
  266. package/dist/controllers/user-storage/services.d.mts +0 -85
  267. package/dist/controllers/user-storage/services.d.mts.map +0 -1
  268. package/dist/controllers/user-storage/services.mjs +0 -276
  269. package/dist/controllers/user-storage/services.mjs.map +0 -1
  270. package/dist/sdk/__fixtures__/mock-auth.cjs +0 -124
  271. package/dist/sdk/__fixtures__/mock-auth.cjs.map +0 -1
  272. package/dist/sdk/__fixtures__/mock-auth.d.cts.map +0 -1
  273. package/dist/sdk/__fixtures__/mock-auth.d.mts.map +0 -1
  274. package/dist/sdk/__fixtures__/mock-auth.mjs +0 -119
  275. package/dist/sdk/__fixtures__/mock-auth.mjs.map +0 -1
  276. package/dist/sdk/__fixtures__/mock-userstorage.cjs +0 -111
  277. package/dist/sdk/__fixtures__/mock-userstorage.cjs.map +0 -1
  278. package/dist/sdk/__fixtures__/mock-userstorage.d.cts +0 -20
  279. package/dist/sdk/__fixtures__/mock-userstorage.d.cts.map +0 -1
  280. package/dist/sdk/__fixtures__/mock-userstorage.d.mts +0 -20
  281. package/dist/sdk/__fixtures__/mock-userstorage.d.mts.map +0 -1
  282. package/dist/sdk/__fixtures__/mock-userstorage.mjs +0 -81
  283. package/dist/sdk/__fixtures__/mock-userstorage.mjs.map +0 -1
  284. package/dist/sdk/__fixtures__/test-utils.cjs +0 -90
  285. package/dist/sdk/__fixtures__/test-utils.cjs.map +0 -1
  286. package/dist/sdk/__fixtures__/test-utils.d.cts +0 -37
  287. package/dist/sdk/__fixtures__/test-utils.d.cts.map +0 -1
  288. package/dist/sdk/__fixtures__/test-utils.d.mts +0 -37
  289. package/dist/sdk/__fixtures__/test-utils.d.mts.map +0 -1
  290. package/dist/sdk/__fixtures__/test-utils.mjs +0 -84
  291. package/dist/sdk/__fixtures__/test-utils.mjs.map +0 -1
  292. /package/dist/controllers/authentication/{__fixtures__ → mocks}/index.cjs +0 -0
  293. /package/dist/controllers/authentication/{__fixtures__ → mocks}/index.d.cts +0 -0
  294. /package/dist/controllers/authentication/{__fixtures__ → mocks}/index.d.mts +0 -0
  295. /package/dist/controllers/authentication/{__fixtures__ → mocks}/index.mjs +0 -0
  296. /package/dist/controllers/user-storage/{__fixtures__ → mocks}/index.cjs +0 -0
  297. /package/dist/controllers/user-storage/{__fixtures__ → mocks}/index.d.cts +0 -0
  298. /package/dist/controllers/user-storage/{__fixtures__ → mocks}/index.d.mts +0 -0
  299. /package/dist/controllers/user-storage/{__fixtures__ → mocks}/index.mjs +0 -0
  300. /package/dist/controllers/user-storage/{__fixtures__ → mocks}/mockStorage.cjs +0 -0
  301. /package/dist/controllers/user-storage/{__fixtures__ → mocks}/mockStorage.d.cts +0 -0
  302. /package/dist/controllers/user-storage/{__fixtures__ → mocks}/mockStorage.d.mts +0 -0
  303. /package/dist/controllers/user-storage/{__fixtures__ → mocks}/mockStorage.mjs +0 -0
@@ -1,129 +0,0 @@
1
- function $importDefault(module) {
2
- if (module?.__esModule) {
3
- return module.default;
4
- }
5
- return module;
6
- }
7
- import $log from "loglevel";
8
- const log = $importDefault($log);
9
- import { Env, Platform, getEnvUrls, getOidcClientId } from "../../shared/env.mjs";
10
- const ENV_URLS = getEnvUrls(Env.PRD);
11
- const AUTH_ENDPOINT = ENV_URLS.authApiUrl;
12
- export const AUTH_NONCE_ENDPOINT = `${AUTH_ENDPOINT}/api/v2/nonce`;
13
- export const AUTH_LOGIN_ENDPOINT = `${AUTH_ENDPOINT}/api/v2/srp/login`;
14
- const OIDC_ENDPOINT = ENV_URLS.oidcApiUrl || '';
15
- export const OIDC_TOKENS_ENDPOINT = `${OIDC_ENDPOINT}/oauth2/token`;
16
- const OIDC_CLIENT_ID = (platform) => {
17
- if (platform === 'extension') {
18
- return getOidcClientId(Env.PRD, Platform.EXTENSION);
19
- }
20
- if (platform === 'mobile') {
21
- return getOidcClientId(Env.PRD, Platform.MOBILE);
22
- }
23
- throw new Error(`Unsupported platform - ${platform}`);
24
- };
25
- const OIDC_GRANT_TYPE = 'urn:ietf:params:oauth:grant-type:jwt-bearer';
26
- /**
27
- * Auth Service - Get Nonce. Used for the initial JWTBearer flow
28
- *
29
- * @param publicKey - public key to associate a nonce with
30
- * @returns the nonce or null if failed
31
- */
32
- export async function getNonce(publicKey) {
33
- const nonceUrl = new URL(AUTH_NONCE_ENDPOINT);
34
- nonceUrl.searchParams.set('identifier', publicKey);
35
- try {
36
- const nonceResponse = await fetch(nonceUrl.toString());
37
- if (!nonceResponse.ok) {
38
- log.error(`authentication-controller/services: unable to get nonce - HTTP ${nonceResponse.status}`);
39
- return null;
40
- }
41
- const nonceJson = await nonceResponse.json();
42
- return nonceJson?.nonce ?? null;
43
- }
44
- catch (e) {
45
- log.error('authentication-controller/services: unable to get nonce', e);
46
- return null;
47
- }
48
- }
49
- /**
50
- * Auth Service - Login. Will perform login with a given signature and will return a single use JWT Token.
51
- *
52
- * @param rawMessage - the original message before signing
53
- * @param signature - the signed message
54
- * @param clientMetaMetrics - optional client metametrics id (to associate on backend)
55
- * @returns The Login Response
56
- */
57
- export async function login(rawMessage, signature, clientMetaMetrics) {
58
- try {
59
- const response = await fetch(AUTH_LOGIN_ENDPOINT, {
60
- method: 'POST',
61
- headers: {
62
- 'Content-Type': 'application/json',
63
- },
64
- body: JSON.stringify({
65
- signature,
66
- raw_message: rawMessage,
67
- metametrics: {
68
- metametrics_id: clientMetaMetrics.metametricsId,
69
- agent: clientMetaMetrics.agent,
70
- },
71
- }),
72
- });
73
- if (!response.ok) {
74
- log.error(`authentication-controller/services: unable to login - HTTP ${response.status}`);
75
- return null;
76
- }
77
- const loginResponse = await response.json();
78
- return loginResponse ?? null;
79
- }
80
- catch (e) {
81
- log.error('authentication-controller/services: unable to login', e);
82
- return null;
83
- }
84
- }
85
- /**
86
- * OIDC Service - Access Token. Trades the Auth Token for an access token (to be used for other authenticated endpoints)
87
- * NOTE - the access token is short lived, which means it is best practice to validate session before calling authenticated endpoints
88
- *
89
- * @param jwtToken - the JWT Auth Token, received from `/login`
90
- * @param platform - the OIDC platform to retrieve access token
91
- * @returns JWT Access token to store and use on authorized endpoints.
92
- */
93
- export async function getAccessToken(jwtToken, platform) {
94
- const headers = new Headers({
95
- 'Content-Type': 'application/x-www-form-urlencoded',
96
- });
97
- const urlEncodedBody = new URLSearchParams();
98
- urlEncodedBody.append('grant_type', OIDC_GRANT_TYPE);
99
- urlEncodedBody.append('client_id', OIDC_CLIENT_ID(platform));
100
- urlEncodedBody.append('assertion', jwtToken);
101
- try {
102
- const response = await fetch(OIDC_TOKENS_ENDPOINT, {
103
- method: 'POST',
104
- headers,
105
- body: urlEncodedBody.toString(),
106
- });
107
- if (!response.ok) {
108
- log.error(`authentication-controller/services: unable to get access token - HTTP ${response.status}`);
109
- return null;
110
- }
111
- const accessTokenResponse = await response.json();
112
- return accessTokenResponse?.access_token ?? null;
113
- }
114
- catch (e) {
115
- log.error('authentication-controller/services: unable to get access token', e);
116
- return null;
117
- }
118
- }
119
- /**
120
- * Utility to create the raw login message for the JWT bearer flow (via SRP)
121
- *
122
- * @param nonce - nonce received from `/nonce` endpoint
123
- * @param publicKey - public key used to retrieve nonce and for message signing
124
- * @returns Raw Message which will be used for signing & logging in.
125
- */
126
- export function createLoginRawMessage(nonce, publicKey) {
127
- return `metamask:${nonce}:${publicKey}`;
128
- }
129
- //# sourceMappingURL=services.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"services.mjs","sourceRoot":"","sources":["../../../src/controllers/authentication/services.ts"],"names":[],"mappings":"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","sourcesContent":["import log from 'loglevel';\n\nimport { Env, Platform, getEnvUrls, getOidcClientId } from '../../shared/env';\n\nconst ENV_URLS = getEnvUrls(Env.PRD);\n\nconst AUTH_ENDPOINT: string = ENV_URLS.authApiUrl;\nexport const AUTH_NONCE_ENDPOINT = `${AUTH_ENDPOINT}/api/v2/nonce`;\nexport const AUTH_LOGIN_ENDPOINT = `${AUTH_ENDPOINT}/api/v2/srp/login`;\n\nconst OIDC_ENDPOINT: string = ENV_URLS.oidcApiUrl || '';\nexport const OIDC_TOKENS_ENDPOINT = `${OIDC_ENDPOINT}/oauth2/token`;\nconst OIDC_CLIENT_ID = (platform: 'mobile' | 'extension') => {\n if (platform === 'extension') {\n return getOidcClientId(Env.PRD, Platform.EXTENSION);\n }\n if (platform === 'mobile') {\n return getOidcClientId(Env.PRD, Platform.MOBILE);\n }\n\n throw new Error(`Unsupported platform - ${platform as string}`);\n};\nconst OIDC_GRANT_TYPE = 'urn:ietf:params:oauth:grant-type:jwt-bearer';\n\nexport type NonceResponse = {\n nonce: string;\n};\n\n/**\n * Auth Service - Get Nonce. Used for the initial JWTBearer flow\n *\n * @param publicKey - public key to associate a nonce with\n * @returns the nonce or null if failed\n */\nexport async function getNonce(publicKey: string): Promise<string | null> {\n const nonceUrl = new URL(AUTH_NONCE_ENDPOINT);\n nonceUrl.searchParams.set('identifier', publicKey);\n\n try {\n const nonceResponse = await fetch(nonceUrl.toString());\n if (!nonceResponse.ok) {\n log.error(\n `authentication-controller/services: unable to get nonce - HTTP ${nonceResponse.status}`,\n );\n return null;\n }\n\n const nonceJson: NonceResponse = await nonceResponse.json();\n return nonceJson?.nonce ?? null;\n } catch (e) {\n log.error('authentication-controller/services: unable to get nonce', e);\n return null;\n }\n}\n\n/**\n * The Login API Server Response Shape\n */\nexport type LoginResponse = {\n token: string;\n\n expires_in: string;\n /**\n * Contains anonymous information about the logged in profile.\n *\n * identifier_id - a deterministic unique identifier on the method used to sign in\n *\n * profile_id - a unique id for a given profile\n *\n * metametrics_id - an anonymous server id\n */\n profile: {\n identifier_id: string;\n\n profile_id: string;\n };\n};\n\ntype ClientMetaMetrics = {\n metametricsId: string;\n agent: 'extension' | 'mobile';\n};\n\n/**\n * Auth Service - Login. Will perform login with a given signature and will return a single use JWT Token.\n *\n * @param rawMessage - the original message before signing\n * @param signature - the signed message\n * @param clientMetaMetrics - optional client metametrics id (to associate on backend)\n * @returns The Login Response\n */\nexport async function login(\n rawMessage: string,\n signature: string,\n clientMetaMetrics: ClientMetaMetrics,\n): Promise<LoginResponse | null> {\n try {\n const response = await fetch(AUTH_LOGIN_ENDPOINT, {\n method: 'POST',\n headers: {\n 'Content-Type': 'application/json',\n },\n body: JSON.stringify({\n signature,\n\n raw_message: rawMessage,\n metametrics: {\n metametrics_id: clientMetaMetrics.metametricsId,\n agent: clientMetaMetrics.agent,\n },\n }),\n });\n\n if (!response.ok) {\n log.error(\n `authentication-controller/services: unable to login - HTTP ${response.status}`,\n );\n return null;\n }\n\n const loginResponse: LoginResponse = await response.json();\n return loginResponse ?? null;\n } catch (e) {\n log.error('authentication-controller/services: unable to login', e);\n return null;\n }\n}\n\n/**\n * The Auth API Token Response Shape\n */\nexport type OAuthTokenResponse = {\n access_token: string;\n\n expires_in: number;\n};\n\n/**\n * OIDC Service - Access Token. Trades the Auth Token for an access token (to be used for other authenticated endpoints)\n * NOTE - the access token is short lived, which means it is best practice to validate session before calling authenticated endpoints\n *\n * @param jwtToken - the JWT Auth Token, received from `/login`\n * @param platform - the OIDC platform to retrieve access token\n * @returns JWT Access token to store and use on authorized endpoints.\n */\nexport async function getAccessToken(\n jwtToken: string,\n platform: ClientMetaMetrics['agent'],\n): Promise<string | null> {\n const headers = new Headers({\n 'Content-Type': 'application/x-www-form-urlencoded',\n });\n\n const urlEncodedBody = new URLSearchParams();\n urlEncodedBody.append('grant_type', OIDC_GRANT_TYPE);\n urlEncodedBody.append('client_id', OIDC_CLIENT_ID(platform));\n urlEncodedBody.append('assertion', jwtToken);\n\n try {\n const response = await fetch(OIDC_TOKENS_ENDPOINT, {\n method: 'POST',\n headers,\n body: urlEncodedBody.toString(),\n });\n\n if (!response.ok) {\n log.error(\n `authentication-controller/services: unable to get access token - HTTP ${response.status}`,\n );\n return null;\n }\n\n const accessTokenResponse: OAuthTokenResponse = await response.json();\n return accessTokenResponse?.access_token ?? null;\n } catch (e) {\n log.error(\n 'authentication-controller/services: unable to get access token',\n e,\n );\n return null;\n }\n}\n\n/**\n * Utility to create the raw login message for the JWT bearer flow (via SRP)\n *\n * @param nonce - nonce received from `/nonce` endpoint\n * @param publicKey - public key used to retrieve nonce and for message signing\n * @returns Raw Message which will be used for signing & logging in.\n */\nexport function createLoginRawMessage(\n nonce: string,\n publicKey: string,\n): `metamask:${string}:${string}` {\n return `metamask:${nonce}:${publicKey}` as const;\n}\n"]}
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.cjs","sourceRoot":"","sources":["../../../../src/controllers/user-storage/__fixtures__/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,sDAAgC;AAChC,oDAA8B","sourcesContent":["export * from './mockResponses';\nexport * from './mockStorage';\n"]}
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.cts","sourceRoot":"","sources":["../../../../src/controllers/user-storage/__fixtures__/index.ts"],"names":[],"mappings":"AAAA,oCAAgC;AAChC,kCAA8B"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.mts","sourceRoot":"","sources":["../../../../src/controllers/user-storage/__fixtures__/index.ts"],"names":[],"mappings":"AAAA,oCAAgC;AAChC,kCAA8B"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.mjs","sourceRoot":"","sources":["../../../../src/controllers/user-storage/__fixtures__/index.ts"],"names":[],"mappings":"AAAA,oCAAgC;AAChC,kCAA8B","sourcesContent":["export * from './mockResponses';\nexport * from './mockStorage';\n"]}
@@ -1,167 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.mockUserStorageMessenger = exports.createCustomUserStorageMessenger = void 0;
4
- const base_controller_1 = require("@metamask/base-controller");
5
- const _1 = require("./index.cjs");
6
- const typedMockFn = (_type) => jest.fn();
7
- /**
8
- * creates a custom user storage messenger, in case tests need different permissions
9
- *
10
- * @param props - overrides
11
- * @param props.overrideEvents - override events
12
- * @returns base messenger, and messenger. You can pass this into the mocks below to mock messenger calls
13
- */
14
- function createCustomUserStorageMessenger(props) {
15
- const baseMessenger = new base_controller_1.Messenger();
16
- const messenger = baseMessenger.getRestricted({
17
- name: 'UserStorageController',
18
- allowedActions: [
19
- 'KeyringController:getState',
20
- 'KeyringController:withKeyring',
21
- 'SnapController:handleRequest',
22
- 'AuthenticationController:getBearerToken',
23
- 'AuthenticationController:getSessionProfile',
24
- 'AuthenticationController:isSignedIn',
25
- 'AuthenticationController:performSignOut',
26
- 'AuthenticationController:performSignIn',
27
- 'AccountsController:listAccounts',
28
- 'AccountsController:updateAccountMetadata',
29
- 'NetworkController:getState',
30
- 'NetworkController:addNetwork',
31
- 'NetworkController:updateNetwork',
32
- 'NetworkController:removeNetwork',
33
- ],
34
- allowedEvents: props?.overrideEvents ?? [
35
- 'KeyringController:lock',
36
- 'KeyringController:unlock',
37
- 'AccountsController:accountAdded',
38
- 'AccountsController:accountRenamed',
39
- 'NetworkController:networkRemoved',
40
- ],
41
- });
42
- return {
43
- baseMessenger,
44
- messenger,
45
- };
46
- }
47
- exports.createCustomUserStorageMessenger = createCustomUserStorageMessenger;
48
- /**
49
- * Jest Mock Utility to generate a mock User Storage Messenger
50
- *
51
- * @param overrideMessengers - override messengers if need to modify the underlying permissions
52
- * @returns series of mocks to actions that can be called
53
- */
54
- function mockUserStorageMessenger(overrideMessengers) {
55
- const { baseMessenger, messenger } = overrideMessengers ?? createCustomUserStorageMessenger();
56
- const mockSnapGetPublicKey = jest.fn().mockResolvedValue('MOCK_PUBLIC_KEY');
57
- const mockSnapSignMessage = jest
58
- .fn()
59
- .mockResolvedValue(_1.MOCK_STORAGE_KEY_SIGNATURE);
60
- const mockAuthGetBearerToken = typedMockFn('AuthenticationController:getBearerToken').mockResolvedValue('MOCK_BEARER_TOKEN');
61
- const mockAuthGetSessionProfile = typedMockFn('AuthenticationController:getSessionProfile').mockResolvedValue({
62
- identifierId: '',
63
- profileId: 'MOCK_PROFILE_ID',
64
- });
65
- const mockAuthPerformSignIn = typedMockFn('AuthenticationController:performSignIn').mockResolvedValue('New Access Token');
66
- const mockAuthIsSignedIn = typedMockFn('AuthenticationController:isSignedIn').mockReturnValue(true);
67
- const mockAuthPerformSignOut = typedMockFn('AuthenticationController:performSignOut');
68
- const mockKeyringWithKeyring = typedMockFn('KeyringController:withKeyring');
69
- const mockAccountsListAccounts = jest.fn();
70
- const mockKeyringGetAccounts = jest.fn();
71
- const mockKeyringAddAccounts = jest.fn();
72
- const mockAccountsUpdateAccountMetadata = typedMockFn('AccountsController:updateAccountMetadata').mockResolvedValue(true);
73
- const mockNetworkControllerGetState = typedMockFn('NetworkController:getState').mockReturnValue({
74
- selectedNetworkClientId: '',
75
- networksMetadata: {},
76
- networkConfigurationsByChainId: {},
77
- });
78
- const mockNetworkControllerAddNetwork = typedMockFn('NetworkController:addNetwork');
79
- const mockNetworkControllerRemoveNetwork = typedMockFn('NetworkController:removeNetwork');
80
- const mockNetworkControllerUpdateNetwork = typedMockFn('NetworkController:updateNetwork');
81
- jest.spyOn(messenger, 'call').mockImplementation((...args) => {
82
- const typedArgs = args;
83
- const [actionType] = typedArgs;
84
- if (actionType === 'SnapController:handleRequest') {
85
- const [, params] = typedArgs;
86
- if (params.request.method === 'getPublicKey') {
87
- return mockSnapGetPublicKey();
88
- }
89
- if (params.request.method === 'signMessage') {
90
- return mockSnapSignMessage();
91
- }
92
- throw new Error(`MOCK_FAIL - unsupported SnapController:handleRequest call: ${params.request.method}`);
93
- }
94
- if (actionType === 'AuthenticationController:getBearerToken') {
95
- return mockAuthGetBearerToken();
96
- }
97
- if (actionType === 'AuthenticationController:getSessionProfile') {
98
- return mockAuthGetSessionProfile();
99
- }
100
- if (actionType === 'AuthenticationController:performSignIn') {
101
- return mockAuthPerformSignIn();
102
- }
103
- if (actionType === 'AuthenticationController:isSignedIn') {
104
- return mockAuthIsSignedIn();
105
- }
106
- if (actionType === 'AuthenticationController:performSignOut') {
107
- return mockAuthPerformSignOut();
108
- }
109
- if (actionType === 'KeyringController:getState') {
110
- return { isUnlocked: true };
111
- }
112
- if (actionType === 'KeyringController:withKeyring') {
113
- const [, ...params] = typedArgs;
114
- const [, operation] = params;
115
- const keyring = {
116
- getAccounts: mockKeyringGetAccounts,
117
- addAccounts: mockKeyringAddAccounts,
118
- };
119
- return operation(keyring);
120
- }
121
- if (actionType === 'AccountsController:listAccounts') {
122
- return mockAccountsListAccounts();
123
- }
124
- if (typedArgs[0] === 'AccountsController:updateAccountMetadata') {
125
- const [, ...params] = typedArgs;
126
- return mockAccountsUpdateAccountMetadata(...params);
127
- }
128
- if (actionType === 'NetworkController:getState') {
129
- return mockNetworkControllerGetState();
130
- }
131
- if (actionType === 'NetworkController:addNetwork') {
132
- const [, ...params] = typedArgs;
133
- return mockNetworkControllerAddNetwork(...params);
134
- }
135
- if (actionType === 'NetworkController:removeNetwork') {
136
- const [, ...params] = typedArgs;
137
- return mockNetworkControllerRemoveNetwork(...params);
138
- }
139
- if (actionType === 'NetworkController:updateNetwork') {
140
- const [, ...params] = typedArgs;
141
- return mockNetworkControllerUpdateNetwork(...params);
142
- }
143
- throw new Error(`MOCK_FAIL - unsupported messenger call: ${actionType}`);
144
- });
145
- return {
146
- baseMessenger,
147
- messenger,
148
- mockSnapGetPublicKey,
149
- mockSnapSignMessage,
150
- mockAuthGetBearerToken,
151
- mockAuthGetSessionProfile,
152
- mockAuthPerformSignIn,
153
- mockAuthIsSignedIn,
154
- mockAuthPerformSignOut,
155
- mockKeyringGetAccounts,
156
- mockKeyringAddAccounts,
157
- mockKeyringWithKeyring,
158
- mockAccountsUpdateAccountMetadata,
159
- mockAccountsListAccounts,
160
- mockNetworkControllerGetState,
161
- mockNetworkControllerAddNetwork,
162
- mockNetworkControllerRemoveNetwork,
163
- mockNetworkControllerUpdateNetwork,
164
- };
165
- }
166
- exports.mockUserStorageMessenger = mockUserStorageMessenger;
167
- //# sourceMappingURL=mockMessenger.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"mockMessenger.cjs","sourceRoot":"","sources":["../../../../src/controllers/user-storage/__fixtures__/mockMessenger.ts"],"names":[],"mappings":";;;AACA,+DAAsD;AAGtD,kCAA+C;AAmB/C,MAAM,WAAW,GAAG,CAQlB,KAAiB,EACjB,EAAE,CAAC,IAAI,CAAC,EAAE,EAAsC,CAAC;AAOnD;;;;;;GAMG;AACH,SAAgB,gCAAgC,CAAC,KAEhD;IACC,MAAM,aAAa,GAAG,IAAI,2BAAS,EAAiC,CAAC;IACrE,MAAM,SAAS,GAAG,aAAa,CAAC,aAAa,CAAC;QAC5C,IAAI,EAAE,uBAAuB;QAC7B,cAAc,EAAE;YACd,4BAA4B;YAC5B,+BAA+B;YAC/B,8BAA8B;YAC9B,yCAAyC;YACzC,4CAA4C;YAC5C,qCAAqC;YACrC,yCAAyC;YACzC,wCAAwC;YACxC,iCAAiC;YACjC,0CAA0C;YAC1C,4BAA4B;YAC5B,8BAA8B;YAC9B,iCAAiC;YACjC,iCAAiC;SAClC;QACD,aAAa,EAAE,KAAK,EAAE,cAAc,IAAI;YACtC,wBAAwB;YACxB,0BAA0B;YAC1B,iCAAiC;YACjC,mCAAmC;YACnC,kCAAkC;SACnC;KACF,CAAC,CAAC;IAEH,OAAO;QACL,aAAa;QACb,SAAS;KACV,CAAC;AACJ,CAAC;AAnCD,4EAmCC;AAOD;;;;;GAKG;AACH,SAAgB,wBAAwB,CACtC,kBAAuC;IAEvC,MAAM,EAAE,aAAa,EAAE,SAAS,EAAE,GAChC,kBAAkB,IAAI,gCAAgC,EAAE,CAAC;IAE3D,MAAM,oBAAoB,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC,iBAAiB,CAAC,iBAAiB,CAAC,CAAC;IAC5E,MAAM,mBAAmB,GAAG,IAAI;SAC7B,EAAE,EAAE;SACJ,iBAAiB,CAAC,6BAA0B,CAAC,CAAC;IAEjD,MAAM,sBAAsB,GAAG,WAAW,CACxC,yCAAyC,CAC1C,CAAC,iBAAiB,CAAC,mBAAmB,CAAC,CAAC;IAEzC,MAAM,yBAAyB,GAAG,WAAW,CAC3C,4CAA4C,CAC7C,CAAC,iBAAiB,CAAC;QAClB,YAAY,EAAE,EAAE;QAChB,SAAS,EAAE,iBAAiB;KAC7B,CAAC,CAAC;IAEH,MAAM,qBAAqB,GAAG,WAAW,CACvC,wCAAwC,CACzC,CAAC,iBAAiB,CAAC,kBAAkB,CAAC,CAAC;IAExC,MAAM,kBAAkB,GAAG,WAAW,CACpC,qCAAqC,CACtC,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;IAExB,MAAM,sBAAsB,GAAG,WAAW,CACxC,yCAAyC,CAC1C,CAAC;IAEF,MAAM,sBAAsB,GAAG,WAAW,CAAC,+BAA+B,CAAC,CAAC;IAE5E,MAAM,wBAAwB,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;IAE3C,MAAM,sBAAsB,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;IACzC,MAAM,sBAAsB,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;IAEzC,MAAM,iCAAiC,GAAG,WAAW,CACnD,0CAA0C,CAC3C,CAAC,iBAAiB,CAAC,IAAa,CAAC,CAAC;IAEnC,MAAM,6BAA6B,GAAG,WAAW,CAC/C,4BAA4B,CAC7B,CAAC,eAAe,CAAC;QAChB,uBAAuB,EAAE,EAAE;QAC3B,gBAAgB,EAAE,EAAE;QACpB,8BAA8B,EAAE,EAAE;KACnC,CAAC,CAAC;IAEH,MAAM,+BAA+B,GAAG,WAAW,CACjD,8BAA8B,CAC/B,CAAC;IAEF,MAAM,kCAAkC,GAAG,WAAW,CACpD,iCAAiC,CAClC,CAAC;IAEF,MAAM,kCAAkC,GAAG,WAAW,CACpD,iCAAiC,CAClC,CAAC;IAEF,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC,kBAAkB,CAAC,CAAC,GAAG,IAAI,EAAE,EAAE;QAC3D,MAAM,SAAS,GAAG,IAA6B,CAAC;QAChD,MAAM,CAAC,UAAU,CAAC,GAAG,SAAS,CAAC;QAE/B,IAAI,UAAU,KAAK,8BAA8B,EAAE;YACjD,MAAM,CAAC,EAAE,MAAM,CAAC,GAAG,SAAS,CAAC;YAC7B,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,KAAK,cAAc,EAAE;gBAC5C,OAAO,oBAAoB,EAAE,CAAC;aAC/B;YAED,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,KAAK,aAAa,EAAE;gBAC3C,OAAO,mBAAmB,EAAE,CAAC;aAC9B;YAED,MAAM,IAAI,KAAK,CACb,8DACE,MAAM,CAAC,OAAO,CAAC,MACjB,EAAE,CACH,CAAC;SACH;QAED,IAAI,UAAU,KAAK,yCAAyC,EAAE;YAC5D,OAAO,sBAAsB,EAAE,CAAC;SACjC;QAED,IAAI,UAAU,KAAK,4CAA4C,EAAE;YAC/D,OAAO,yBAAyB,EAAE,CAAC;SACpC;QAED,IAAI,UAAU,KAAK,wCAAwC,EAAE;YAC3D,OAAO,qBAAqB,EAAE,CAAC;SAChC;QAED,IAAI,UAAU,KAAK,qCAAqC,EAAE;YACxD,OAAO,kBAAkB,EAAE,CAAC;SAC7B;QAED,IAAI,UAAU,KAAK,yCAAyC,EAAE;YAC5D,OAAO,sBAAsB,EAAE,CAAC;SACjC;QAED,IAAI,UAAU,KAAK,4BAA4B,EAAE;YAC/C,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC;SAC7B;QAED,IAAI,UAAU,KAAK,+BAA+B,EAAE;YAClD,MAAM,CAAC,EAAE,GAAG,MAAM,CAAC,GAAG,SAAS,CAAC;YAChC,MAAM,CAAC,EAAE,SAAS,CAAC,GAAG,MAAM,CAAC;YAE7B,MAAM,OAAO,GAAG;gBACd,WAAW,EAAE,sBAAsB;gBACnC,WAAW,EAAE,sBAAsB;aACJ,CAAC;YAElC,OAAO,SAAS,CAAC,OAAO,CAAC,CAAC;SAC3B;QAED,IAAI,UAAU,KAAK,iCAAiC,EAAE;YACpD,OAAO,wBAAwB,EAAE,CAAC;SACnC;QAED,IAAI,SAAS,CAAC,CAAC,CAAC,KAAK,0CAA0C,EAAE;YAC/D,MAAM,CAAC,EAAE,GAAG,MAAM,CAAC,GAAG,SAAS,CAAC;YAChC,OAAO,iCAAiC,CAAC,GAAG,MAAM,CAAC,CAAC;SACrD;QAED,IAAI,UAAU,KAAK,4BAA4B,EAAE;YAC/C,OAAO,6BAA6B,EAAE,CAAC;SACxC;QAED,IAAI,UAAU,KAAK,8BAA8B,EAAE;YACjD,MAAM,CAAC,EAAE,GAAG,MAAM,CAAC,GAAG,SAAS,CAAC;YAChC,OAAO,+BAA+B,CAAC,GAAG,MAAM,CAAC,CAAC;SACnD;QAED,IAAI,UAAU,KAAK,iCAAiC,EAAE;YACpD,MAAM,CAAC,EAAE,GAAG,MAAM,CAAC,GAAG,SAAS,CAAC;YAChC,OAAO,kCAAkC,CAAC,GAAG,MAAM,CAAC,CAAC;SACtD;QAED,IAAI,UAAU,KAAK,iCAAiC,EAAE;YACpD,MAAM,CAAC,EAAE,GAAG,MAAM,CAAC,GAAG,SAAS,CAAC;YAChC,OAAO,kCAAkC,CAAC,GAAG,MAAM,CAAC,CAAC;SACtD;QAED,MAAM,IAAI,KAAK,CACb,2CAA2C,UAAoB,EAAE,CAClE,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,OAAO;QACL,aAAa;QACb,SAAS;QACT,oBAAoB;QACpB,mBAAmB;QACnB,sBAAsB;QACtB,yBAAyB;QACzB,qBAAqB;QACrB,kBAAkB;QAClB,sBAAsB;QACtB,sBAAsB;QACtB,sBAAsB;QACtB,sBAAsB;QACtB,iCAAiC;QACjC,wBAAwB;QACxB,6BAA6B;QAC7B,+BAA+B;QAC/B,kCAAkC;QAClC,kCAAkC;KACnC,CAAC;AACJ,CAAC;AA/KD,4DA+KC","sourcesContent":["import type { NotNamespacedBy } from '@metamask/base-controller';\nimport { Messenger } from '@metamask/base-controller';\nimport type { EthKeyring } from '@metamask/keyring-internal-api';\n\nimport { MOCK_STORAGE_KEY_SIGNATURE } from '.';\nimport type {\n AllowedActions,\n AllowedEvents,\n UserStorageControllerMessenger,\n} from '..';\n\ntype GetHandler<ActionType extends AllowedActions['type']> = Extract<\n AllowedActions,\n { type: ActionType }\n>['handler'];\n\ntype CallParams = {\n [K in AllowedActions['type']]: [\n K,\n ...Parameters<Extract<AllowedActions, { type: K }>['handler']>,\n ];\n}[AllowedActions['type']];\n\nconst typedMockFn = <\n ActionType extends AllowedActions['type'],\n Handler = GetHandler<ActionType>,\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n Func extends (...args: any) => any = Handler extends (...args: any[]) => any\n ? Handler\n : never,\n>(\n _type: ActionType,\n) => jest.fn<ReturnType<Func>, Parameters<Func>>();\n\ntype ExternalEvents = NotNamespacedBy<\n 'UserStorageController',\n AllowedEvents['type']\n>;\n\n/**\n * creates a custom user storage messenger, in case tests need different permissions\n *\n * @param props - overrides\n * @param props.overrideEvents - override events\n * @returns base messenger, and messenger. You can pass this into the mocks below to mock messenger calls\n */\nexport function createCustomUserStorageMessenger(props?: {\n overrideEvents?: ExternalEvents[];\n}) {\n const baseMessenger = new Messenger<AllowedActions, AllowedEvents>();\n const messenger = baseMessenger.getRestricted({\n name: 'UserStorageController',\n allowedActions: [\n 'KeyringController:getState',\n 'KeyringController:withKeyring',\n 'SnapController:handleRequest',\n 'AuthenticationController:getBearerToken',\n 'AuthenticationController:getSessionProfile',\n 'AuthenticationController:isSignedIn',\n 'AuthenticationController:performSignOut',\n 'AuthenticationController:performSignIn',\n 'AccountsController:listAccounts',\n 'AccountsController:updateAccountMetadata',\n 'NetworkController:getState',\n 'NetworkController:addNetwork',\n 'NetworkController:updateNetwork',\n 'NetworkController:removeNetwork',\n ],\n allowedEvents: props?.overrideEvents ?? [\n 'KeyringController:lock',\n 'KeyringController:unlock',\n 'AccountsController:accountAdded',\n 'AccountsController:accountRenamed',\n 'NetworkController:networkRemoved',\n ],\n });\n\n return {\n baseMessenger,\n messenger,\n };\n}\n\ntype OverrideMessengers = {\n baseMessenger: Messenger<AllowedActions, AllowedEvents>;\n messenger: UserStorageControllerMessenger;\n};\n\n/**\n * Jest Mock Utility to generate a mock User Storage Messenger\n *\n * @param overrideMessengers - override messengers if need to modify the underlying permissions\n * @returns series of mocks to actions that can be called\n */\nexport function mockUserStorageMessenger(\n overrideMessengers?: OverrideMessengers,\n) {\n const { baseMessenger, messenger } =\n overrideMessengers ?? createCustomUserStorageMessenger();\n\n const mockSnapGetPublicKey = jest.fn().mockResolvedValue('MOCK_PUBLIC_KEY');\n const mockSnapSignMessage = jest\n .fn()\n .mockResolvedValue(MOCK_STORAGE_KEY_SIGNATURE);\n\n const mockAuthGetBearerToken = typedMockFn(\n 'AuthenticationController:getBearerToken',\n ).mockResolvedValue('MOCK_BEARER_TOKEN');\n\n const mockAuthGetSessionProfile = typedMockFn(\n 'AuthenticationController:getSessionProfile',\n ).mockResolvedValue({\n identifierId: '',\n profileId: 'MOCK_PROFILE_ID',\n });\n\n const mockAuthPerformSignIn = typedMockFn(\n 'AuthenticationController:performSignIn',\n ).mockResolvedValue('New Access Token');\n\n const mockAuthIsSignedIn = typedMockFn(\n 'AuthenticationController:isSignedIn',\n ).mockReturnValue(true);\n\n const mockAuthPerformSignOut = typedMockFn(\n 'AuthenticationController:performSignOut',\n );\n\n const mockKeyringWithKeyring = typedMockFn('KeyringController:withKeyring');\n\n const mockAccountsListAccounts = jest.fn();\n\n const mockKeyringGetAccounts = jest.fn();\n const mockKeyringAddAccounts = jest.fn();\n\n const mockAccountsUpdateAccountMetadata = typedMockFn(\n 'AccountsController:updateAccountMetadata',\n ).mockResolvedValue(true as never);\n\n const mockNetworkControllerGetState = typedMockFn(\n 'NetworkController:getState',\n ).mockReturnValue({\n selectedNetworkClientId: '',\n networksMetadata: {},\n networkConfigurationsByChainId: {},\n });\n\n const mockNetworkControllerAddNetwork = typedMockFn(\n 'NetworkController:addNetwork',\n );\n\n const mockNetworkControllerRemoveNetwork = typedMockFn(\n 'NetworkController:removeNetwork',\n );\n\n const mockNetworkControllerUpdateNetwork = typedMockFn(\n 'NetworkController:updateNetwork',\n );\n\n jest.spyOn(messenger, 'call').mockImplementation((...args) => {\n const typedArgs = args as unknown as CallParams;\n const [actionType] = typedArgs;\n\n if (actionType === 'SnapController:handleRequest') {\n const [, params] = typedArgs;\n if (params.request.method === 'getPublicKey') {\n return mockSnapGetPublicKey();\n }\n\n if (params.request.method === 'signMessage') {\n return mockSnapSignMessage();\n }\n\n throw new Error(\n `MOCK_FAIL - unsupported SnapController:handleRequest call: ${\n params.request.method as string\n }`,\n );\n }\n\n if (actionType === 'AuthenticationController:getBearerToken') {\n return mockAuthGetBearerToken();\n }\n\n if (actionType === 'AuthenticationController:getSessionProfile') {\n return mockAuthGetSessionProfile();\n }\n\n if (actionType === 'AuthenticationController:performSignIn') {\n return mockAuthPerformSignIn();\n }\n\n if (actionType === 'AuthenticationController:isSignedIn') {\n return mockAuthIsSignedIn();\n }\n\n if (actionType === 'AuthenticationController:performSignOut') {\n return mockAuthPerformSignOut();\n }\n\n if (actionType === 'KeyringController:getState') {\n return { isUnlocked: true };\n }\n\n if (actionType === 'KeyringController:withKeyring') {\n const [, ...params] = typedArgs;\n const [, operation] = params;\n\n const keyring = {\n getAccounts: mockKeyringGetAccounts,\n addAccounts: mockKeyringAddAccounts,\n } as unknown as EthKeyring<never>;\n\n return operation(keyring);\n }\n\n if (actionType === 'AccountsController:listAccounts') {\n return mockAccountsListAccounts();\n }\n\n if (typedArgs[0] === 'AccountsController:updateAccountMetadata') {\n const [, ...params] = typedArgs;\n return mockAccountsUpdateAccountMetadata(...params);\n }\n\n if (actionType === 'NetworkController:getState') {\n return mockNetworkControllerGetState();\n }\n\n if (actionType === 'NetworkController:addNetwork') {\n const [, ...params] = typedArgs;\n return mockNetworkControllerAddNetwork(...params);\n }\n\n if (actionType === 'NetworkController:removeNetwork') {\n const [, ...params] = typedArgs;\n return mockNetworkControllerRemoveNetwork(...params);\n }\n\n if (actionType === 'NetworkController:updateNetwork') {\n const [, ...params] = typedArgs;\n return mockNetworkControllerUpdateNetwork(...params);\n }\n\n throw new Error(\n `MOCK_FAIL - unsupported messenger call: ${actionType as string}`,\n );\n });\n\n return {\n baseMessenger,\n messenger,\n mockSnapGetPublicKey,\n mockSnapSignMessage,\n mockAuthGetBearerToken,\n mockAuthGetSessionProfile,\n mockAuthPerformSignIn,\n mockAuthIsSignedIn,\n mockAuthPerformSignOut,\n mockKeyringGetAccounts,\n mockKeyringAddAccounts,\n mockKeyringWithKeyring,\n mockAccountsUpdateAccountMetadata,\n mockAccountsListAccounts,\n mockNetworkControllerGetState,\n mockNetworkControllerAddNetwork,\n mockNetworkControllerRemoveNetwork,\n mockNetworkControllerUpdateNetwork,\n };\n}\n"]}
@@ -1,105 +0,0 @@
1
- /// <reference types="jest" />
2
- import type { NotNamespacedBy } from "@metamask/base-controller";
3
- import { Messenger } from "@metamask/base-controller";
4
- import type { EthKeyring } from "@metamask/keyring-internal-api";
5
- import type { AllowedActions, AllowedEvents, UserStorageControllerMessenger } from "../index.cjs";
6
- type ExternalEvents = NotNamespacedBy<'UserStorageController', AllowedEvents['type']>;
7
- /**
8
- * creates a custom user storage messenger, in case tests need different permissions
9
- *
10
- * @param props - overrides
11
- * @param props.overrideEvents - override events
12
- * @returns base messenger, and messenger. You can pass this into the mocks below to mock messenger calls
13
- */
14
- export declare function createCustomUserStorageMessenger(props?: {
15
- overrideEvents?: ExternalEvents[];
16
- }): {
17
- baseMessenger: Messenger<AllowedActions, AllowedEvents>;
18
- messenger: import("@metamask/base-controller").RestrictedMessenger<"UserStorageController", import("@metamask/snaps-controllers").HandleSnapRequest | {
19
- type: "AuthenticationController:isSignedIn";
20
- handler: () => boolean;
21
- } | {
22
- type: "AuthenticationController:performSignIn";
23
- handler: () => Promise<string>;
24
- } | {
25
- type: "AuthenticationController:performSignOut";
26
- handler: () => void;
27
- } | {
28
- type: "AuthenticationController:getBearerToken";
29
- handler: () => Promise<string>;
30
- } | {
31
- type: "AuthenticationController:getSessionProfile";
32
- handler: () => Promise<{
33
- identifierId: string;
34
- profileId: string;
35
- }>;
36
- } | import("@metamask/keyring-controller").KeyringControllerGetStateAction | import("@metamask/accounts-controller").AccountsControllerListAccountsAction | import("@metamask/accounts-controller").AccountsControllerUpdateAccountMetadataAction | import("@metamask/keyring-controller").KeyringControllerWithKeyringAction | import("@metamask/network-controller").NetworkControllerGetStateAction | import("@metamask/network-controller").NetworkControllerAddNetworkAction | import("@metamask/network-controller").NetworkControllerRemoveNetworkAction | import("@metamask/network-controller").NetworkControllerUpdateNetworkAction, import("@metamask/keyring-controller").KeyringControllerLockEvent | import("@metamask/keyring-controller").KeyringControllerUnlockEvent | import("../index.cjs").UserStorageControllerStateChangeEvent | import("@metamask/accounts-controller").AccountsControllerAccountAddedEvent | import("@metamask/accounts-controller").AccountsControllerAccountRenamedEvent | import("@metamask/network-controller").NetworkControllerNetworkRemovedEvent, "SnapController:handleRequest" | "KeyringController:getState" | "AuthenticationController:isSignedIn" | "AuthenticationController:performSignIn" | "AuthenticationController:performSignOut" | "AuthenticationController:getBearerToken" | "AuthenticationController:getSessionProfile" | "AccountsController:listAccounts" | "AccountsController:updateAccountMetadata" | "KeyringController:withKeyring" | "NetworkController:getState" | "NetworkController:addNetwork" | "NetworkController:removeNetwork" | "NetworkController:updateNetwork", "KeyringController:lock" | "KeyringController:unlock" | "AccountsController:accountAdded" | "AccountsController:accountRenamed" | "NetworkController:networkRemoved">;
37
- };
38
- type OverrideMessengers = {
39
- baseMessenger: Messenger<AllowedActions, AllowedEvents>;
40
- messenger: UserStorageControllerMessenger;
41
- };
42
- /**
43
- * Jest Mock Utility to generate a mock User Storage Messenger
44
- *
45
- * @param overrideMessengers - override messengers if need to modify the underlying permissions
46
- * @returns series of mocks to actions that can be called
47
- */
48
- export declare function mockUserStorageMessenger(overrideMessengers?: OverrideMessengers): {
49
- baseMessenger: Messenger<AllowedActions, AllowedEvents>;
50
- messenger: import("@metamask/base-controller").RestrictedMessenger<"UserStorageController", import("@metamask/snaps-controllers").HandleSnapRequest | {
51
- type: "AuthenticationController:isSignedIn";
52
- handler: () => boolean;
53
- } | {
54
- type: "AuthenticationController:performSignIn";
55
- handler: () => Promise<string>;
56
- } | {
57
- type: "AuthenticationController:performSignOut";
58
- handler: () => void;
59
- } | {
60
- type: "AuthenticationController:getBearerToken";
61
- handler: () => Promise<string>;
62
- } | {
63
- type: "AuthenticationController:getSessionProfile";
64
- handler: () => Promise<{
65
- identifierId: string;
66
- profileId: string;
67
- }>;
68
- } | import("@metamask/keyring-controller").KeyringControllerGetStateAction | import("@metamask/accounts-controller").AccountsControllerListAccountsAction | import("@metamask/accounts-controller").AccountsControllerUpdateAccountMetadataAction | import("@metamask/keyring-controller").KeyringControllerWithKeyringAction | import("@metamask/network-controller").NetworkControllerGetStateAction | import("@metamask/network-controller").NetworkControllerAddNetworkAction | import("@metamask/network-controller").NetworkControllerRemoveNetworkAction | import("@metamask/network-controller").NetworkControllerUpdateNetworkAction, import("@metamask/keyring-controller").KeyringControllerLockEvent | import("@metamask/keyring-controller").KeyringControllerUnlockEvent | import("../index.cjs").UserStorageControllerStateChangeEvent | import("@metamask/accounts-controller").AccountsControllerAccountAddedEvent | import("@metamask/accounts-controller").AccountsControllerAccountRenamedEvent | import("@metamask/network-controller").NetworkControllerNetworkRemovedEvent, "SnapController:handleRequest" | "KeyringController:getState" | "AuthenticationController:isSignedIn" | "AuthenticationController:performSignIn" | "AuthenticationController:performSignOut" | "AuthenticationController:getBearerToken" | "AuthenticationController:getSessionProfile" | "AccountsController:listAccounts" | "AccountsController:updateAccountMetadata" | "KeyringController:withKeyring" | "NetworkController:getState" | "NetworkController:addNetwork" | "NetworkController:removeNetwork" | "NetworkController:updateNetwork", "KeyringController:lock" | "KeyringController:unlock" | "AccountsController:accountAdded" | "AccountsController:accountRenamed" | "NetworkController:networkRemoved">;
69
- mockSnapGetPublicKey: jest.Mock<any, any>;
70
- mockSnapSignMessage: jest.Mock<any, any>;
71
- mockAuthGetBearerToken: jest.Mock<Promise<string>, []>;
72
- mockAuthGetSessionProfile: jest.Mock<Promise<{
73
- identifierId: string;
74
- profileId: string;
75
- }>, []>;
76
- mockAuthPerformSignIn: jest.Mock<Promise<string>, []>;
77
- mockAuthIsSignedIn: jest.Mock<boolean, []>;
78
- mockAuthPerformSignOut: jest.Mock<void, []>;
79
- mockKeyringGetAccounts: jest.Mock<any, any>;
80
- mockKeyringAddAccounts: jest.Mock<any, any>;
81
- mockKeyringWithKeyring: jest.Mock<Promise<unknown>, [selector: import("@metamask/keyring-controller").KeyringSelector, operation: (keyring: EthKeyring<import("@metamask/utils").Json>) => Promise<unknown>]>;
82
- mockAccountsUpdateAccountMetadata: jest.Mock<void, [accountId: string, metadata: Partial<{
83
- name: string;
84
- importTime: number;
85
- keyring: {
86
- type: string;
87
- };
88
- nameLastUpdatedAt?: number | undefined;
89
- snap?: {
90
- name: string;
91
- id: string;
92
- enabled: boolean;
93
- } | undefined;
94
- lastSelected?: number | undefined;
95
- }>]>;
96
- mockAccountsListAccounts: jest.Mock<any, any>;
97
- mockNetworkControllerGetState: jest.Mock<import("@metamask/network-controller").NetworkState, []>;
98
- mockNetworkControllerAddNetwork: jest.Mock<import("@metamask/network-controller").NetworkConfiguration, [fields: import("@metamask/network-controller").AddNetworkFields]>;
99
- mockNetworkControllerRemoveNetwork: jest.Mock<void, [chainId: `0x${string}`]>;
100
- mockNetworkControllerUpdateNetwork: jest.Mock<Promise<import("@metamask/network-controller").NetworkConfiguration>, [`0x${string}`, import("@metamask/network-controller").UpdateNetworkFields, ({
101
- replacementSelectedRpcEndpointIndex?: number | undefined;
102
- } | undefined)?]>;
103
- };
104
- export {};
105
- //# sourceMappingURL=mockMessenger.d.cts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"mockMessenger.d.cts","sourceRoot":"","sources":["../../../../src/controllers/user-storage/__fixtures__/mockMessenger.ts"],"names":[],"mappings":";AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,kCAAkC;AACjE,OAAO,EAAE,SAAS,EAAE,kCAAkC;AACtD,OAAO,KAAK,EAAE,UAAU,EAAE,uCAAuC;AAGjE,OAAO,KAAK,EACV,cAAc,EACd,aAAa,EACb,8BAA8B,EAC/B,qBAAW;AAyBZ,KAAK,cAAc,GAAG,eAAe,CACnC,uBAAuB,EACvB,aAAa,CAAC,MAAM,CAAC,CACtB,CAAC;AAEF;;;;;;GAMG;AACH,wBAAgB,gCAAgC,CAAC,KAAK,CAAC,EAAE;IACvD,cAAc,CAAC,EAAE,cAAc,EAAE,CAAC;CACnC;;;;;;;;;;;;;;;;;;;;;EAiCA;AAED,KAAK,kBAAkB,GAAG;IACxB,aAAa,EAAE,SAAS,CAAC,cAAc,EAAE,aAAa,CAAC,CAAC;IACxD,SAAS,EAAE,8BAA8B,CAAC;CAC3C,CAAC;AAEF;;;;;GAKG;AACH,wBAAgB,wBAAwB,CACtC,kBAAkB,CAAC,EAAE,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA8KxC"}
@@ -1,105 +0,0 @@
1
- /// <reference types="jest" />
2
- import type { NotNamespacedBy } from "@metamask/base-controller";
3
- import { Messenger } from "@metamask/base-controller";
4
- import type { EthKeyring } from "@metamask/keyring-internal-api";
5
- import type { AllowedActions, AllowedEvents, UserStorageControllerMessenger } from "../index.mjs";
6
- type ExternalEvents = NotNamespacedBy<'UserStorageController', AllowedEvents['type']>;
7
- /**
8
- * creates a custom user storage messenger, in case tests need different permissions
9
- *
10
- * @param props - overrides
11
- * @param props.overrideEvents - override events
12
- * @returns base messenger, and messenger. You can pass this into the mocks below to mock messenger calls
13
- */
14
- export declare function createCustomUserStorageMessenger(props?: {
15
- overrideEvents?: ExternalEvents[];
16
- }): {
17
- baseMessenger: Messenger<AllowedActions, AllowedEvents>;
18
- messenger: import("@metamask/base-controller").RestrictedMessenger<"UserStorageController", import("@metamask/snaps-controllers").HandleSnapRequest | {
19
- type: "AuthenticationController:isSignedIn";
20
- handler: () => boolean;
21
- } | {
22
- type: "AuthenticationController:performSignIn";
23
- handler: () => Promise<string>;
24
- } | {
25
- type: "AuthenticationController:performSignOut";
26
- handler: () => void;
27
- } | {
28
- type: "AuthenticationController:getBearerToken";
29
- handler: () => Promise<string>;
30
- } | {
31
- type: "AuthenticationController:getSessionProfile";
32
- handler: () => Promise<{
33
- identifierId: string;
34
- profileId: string;
35
- }>;
36
- } | import("@metamask/keyring-controller").KeyringControllerGetStateAction | import("@metamask/accounts-controller").AccountsControllerListAccountsAction | import("@metamask/accounts-controller").AccountsControllerUpdateAccountMetadataAction | import("@metamask/keyring-controller").KeyringControllerWithKeyringAction | import("@metamask/network-controller").NetworkControllerGetStateAction | import("@metamask/network-controller").NetworkControllerAddNetworkAction | import("@metamask/network-controller").NetworkControllerRemoveNetworkAction | import("@metamask/network-controller").NetworkControllerUpdateNetworkAction, import("@metamask/keyring-controller").KeyringControllerLockEvent | import("@metamask/keyring-controller").KeyringControllerUnlockEvent | import("../index.mjs").UserStorageControllerStateChangeEvent | import("@metamask/accounts-controller").AccountsControllerAccountAddedEvent | import("@metamask/accounts-controller").AccountsControllerAccountRenamedEvent | import("@metamask/network-controller").NetworkControllerNetworkRemovedEvent, "SnapController:handleRequest" | "KeyringController:getState" | "AuthenticationController:isSignedIn" | "AuthenticationController:performSignIn" | "AuthenticationController:performSignOut" | "AuthenticationController:getBearerToken" | "AuthenticationController:getSessionProfile" | "AccountsController:listAccounts" | "AccountsController:updateAccountMetadata" | "KeyringController:withKeyring" | "NetworkController:getState" | "NetworkController:addNetwork" | "NetworkController:removeNetwork" | "NetworkController:updateNetwork", "KeyringController:lock" | "KeyringController:unlock" | "AccountsController:accountAdded" | "AccountsController:accountRenamed" | "NetworkController:networkRemoved">;
37
- };
38
- type OverrideMessengers = {
39
- baseMessenger: Messenger<AllowedActions, AllowedEvents>;
40
- messenger: UserStorageControllerMessenger;
41
- };
42
- /**
43
- * Jest Mock Utility to generate a mock User Storage Messenger
44
- *
45
- * @param overrideMessengers - override messengers if need to modify the underlying permissions
46
- * @returns series of mocks to actions that can be called
47
- */
48
- export declare function mockUserStorageMessenger(overrideMessengers?: OverrideMessengers): {
49
- baseMessenger: Messenger<AllowedActions, AllowedEvents>;
50
- messenger: import("@metamask/base-controller").RestrictedMessenger<"UserStorageController", import("@metamask/snaps-controllers").HandleSnapRequest | {
51
- type: "AuthenticationController:isSignedIn";
52
- handler: () => boolean;
53
- } | {
54
- type: "AuthenticationController:performSignIn";
55
- handler: () => Promise<string>;
56
- } | {
57
- type: "AuthenticationController:performSignOut";
58
- handler: () => void;
59
- } | {
60
- type: "AuthenticationController:getBearerToken";
61
- handler: () => Promise<string>;
62
- } | {
63
- type: "AuthenticationController:getSessionProfile";
64
- handler: () => Promise<{
65
- identifierId: string;
66
- profileId: string;
67
- }>;
68
- } | import("@metamask/keyring-controller").KeyringControllerGetStateAction | import("@metamask/accounts-controller").AccountsControllerListAccountsAction | import("@metamask/accounts-controller").AccountsControllerUpdateAccountMetadataAction | import("@metamask/keyring-controller").KeyringControllerWithKeyringAction | import("@metamask/network-controller").NetworkControllerGetStateAction | import("@metamask/network-controller").NetworkControllerAddNetworkAction | import("@metamask/network-controller").NetworkControllerRemoveNetworkAction | import("@metamask/network-controller").NetworkControllerUpdateNetworkAction, import("@metamask/keyring-controller").KeyringControllerLockEvent | import("@metamask/keyring-controller").KeyringControllerUnlockEvent | import("../index.mjs").UserStorageControllerStateChangeEvent | import("@metamask/accounts-controller").AccountsControllerAccountAddedEvent | import("@metamask/accounts-controller").AccountsControllerAccountRenamedEvent | import("@metamask/network-controller").NetworkControllerNetworkRemovedEvent, "SnapController:handleRequest" | "KeyringController:getState" | "AuthenticationController:isSignedIn" | "AuthenticationController:performSignIn" | "AuthenticationController:performSignOut" | "AuthenticationController:getBearerToken" | "AuthenticationController:getSessionProfile" | "AccountsController:listAccounts" | "AccountsController:updateAccountMetadata" | "KeyringController:withKeyring" | "NetworkController:getState" | "NetworkController:addNetwork" | "NetworkController:removeNetwork" | "NetworkController:updateNetwork", "KeyringController:lock" | "KeyringController:unlock" | "AccountsController:accountAdded" | "AccountsController:accountRenamed" | "NetworkController:networkRemoved">;
69
- mockSnapGetPublicKey: jest.Mock<any, any>;
70
- mockSnapSignMessage: jest.Mock<any, any>;
71
- mockAuthGetBearerToken: jest.Mock<Promise<string>, []>;
72
- mockAuthGetSessionProfile: jest.Mock<Promise<{
73
- identifierId: string;
74
- profileId: string;
75
- }>, []>;
76
- mockAuthPerformSignIn: jest.Mock<Promise<string>, []>;
77
- mockAuthIsSignedIn: jest.Mock<boolean, []>;
78
- mockAuthPerformSignOut: jest.Mock<void, []>;
79
- mockKeyringGetAccounts: jest.Mock<any, any>;
80
- mockKeyringAddAccounts: jest.Mock<any, any>;
81
- mockKeyringWithKeyring: jest.Mock<Promise<unknown>, [selector: import("@metamask/keyring-controller").KeyringSelector, operation: (keyring: EthKeyring<import("@metamask/utils").Json>) => Promise<unknown>]>;
82
- mockAccountsUpdateAccountMetadata: jest.Mock<void, [accountId: string, metadata: Partial<{
83
- name: string;
84
- importTime: number;
85
- keyring: {
86
- type: string;
87
- };
88
- nameLastUpdatedAt?: number | undefined;
89
- snap?: {
90
- name: string;
91
- id: string;
92
- enabled: boolean;
93
- } | undefined;
94
- lastSelected?: number | undefined;
95
- }>]>;
96
- mockAccountsListAccounts: jest.Mock<any, any>;
97
- mockNetworkControllerGetState: jest.Mock<import("@metamask/network-controller").NetworkState, []>;
98
- mockNetworkControllerAddNetwork: jest.Mock<import("@metamask/network-controller").NetworkConfiguration, [fields: import("@metamask/network-controller").AddNetworkFields]>;
99
- mockNetworkControllerRemoveNetwork: jest.Mock<void, [chainId: `0x${string}`]>;
100
- mockNetworkControllerUpdateNetwork: jest.Mock<Promise<import("@metamask/network-controller").NetworkConfiguration>, [`0x${string}`, import("@metamask/network-controller").UpdateNetworkFields, ({
101
- replacementSelectedRpcEndpointIndex?: number | undefined;
102
- } | undefined)?]>;
103
- };
104
- export {};
105
- //# sourceMappingURL=mockMessenger.d.mts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"mockMessenger.d.mts","sourceRoot":"","sources":["../../../../src/controllers/user-storage/__fixtures__/mockMessenger.ts"],"names":[],"mappings":";AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,kCAAkC;AACjE,OAAO,EAAE,SAAS,EAAE,kCAAkC;AACtD,OAAO,KAAK,EAAE,UAAU,EAAE,uCAAuC;AAGjE,OAAO,KAAK,EACV,cAAc,EACd,aAAa,EACb,8BAA8B,EAC/B,qBAAW;AAyBZ,KAAK,cAAc,GAAG,eAAe,CACnC,uBAAuB,EACvB,aAAa,CAAC,MAAM,CAAC,CACtB,CAAC;AAEF;;;;;;GAMG;AACH,wBAAgB,gCAAgC,CAAC,KAAK,CAAC,EAAE;IACvD,cAAc,CAAC,EAAE,cAAc,EAAE,CAAC;CACnC;;;;;;;;;;;;;;;;;;;;;EAiCA;AAED,KAAK,kBAAkB,GAAG;IACxB,aAAa,EAAE,SAAS,CAAC,cAAc,EAAE,aAAa,CAAC,CAAC;IACxD,SAAS,EAAE,8BAA8B,CAAC;CAC3C,CAAC;AAEF;;;;;GAKG;AACH,wBAAgB,wBAAwB,CACtC,kBAAkB,CAAC,EAAE,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA8KxC"}