@metamask/profile-sync-controller 0.4.0 → 0.6.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 (606) hide show
  1. package/CHANGELOG.md +54 -1
  2. package/dist/controllers/authentication/AuthenticationController.cjs +211 -0
  3. package/dist/controllers/authentication/AuthenticationController.cjs.map +1 -0
  4. package/dist/{types/controllers/authentication/AuthenticationController.d.ts → controllers/authentication/AuthenticationController.d.cts} +5 -5
  5. package/dist/controllers/authentication/AuthenticationController.d.cts.map +1 -0
  6. package/dist/controllers/authentication/AuthenticationController.d.mts +78 -0
  7. package/dist/controllers/authentication/AuthenticationController.d.mts.map +1 -0
  8. package/dist/controllers/authentication/AuthenticationController.mjs +206 -11
  9. package/dist/controllers/authentication/AuthenticationController.mjs.map +1 -1
  10. package/dist/controllers/authentication/__fixtures__/index.cjs +18 -0
  11. package/dist/controllers/authentication/__fixtures__/index.cjs.map +1 -0
  12. package/dist/controllers/authentication/__fixtures__/index.d.cts +2 -0
  13. package/dist/controllers/authentication/__fixtures__/index.d.cts.map +1 -0
  14. package/dist/controllers/authentication/__fixtures__/index.d.mts +2 -0
  15. package/dist/controllers/authentication/__fixtures__/index.d.mts.map +1 -0
  16. package/dist/controllers/authentication/__fixtures__/index.mjs +2 -0
  17. package/dist/controllers/authentication/__fixtures__/index.mjs.map +1 -0
  18. package/dist/controllers/authentication/__fixtures__/mockResponses.cjs +52 -0
  19. package/dist/controllers/authentication/__fixtures__/mockResponses.cjs.map +1 -0
  20. package/dist/{types/controllers/authentication/__fixtures__/mockResponses.d.ts → controllers/authentication/__fixtures__/mockResponses.d.cts} +2 -2
  21. package/dist/controllers/authentication/__fixtures__/mockResponses.d.cts.map +1 -0
  22. package/dist/controllers/authentication/__fixtures__/mockResponses.d.mts +23 -0
  23. package/dist/controllers/authentication/__fixtures__/mockResponses.d.mts.map +1 -0
  24. package/dist/controllers/authentication/__fixtures__/mockResponses.mjs +46 -0
  25. package/dist/controllers/authentication/__fixtures__/mockResponses.mjs.map +1 -0
  26. package/dist/controllers/authentication/__fixtures__/mockServices.cjs +37 -0
  27. package/dist/controllers/authentication/__fixtures__/mockServices.cjs.map +1 -0
  28. package/dist/{types/controllers/authentication/__fixtures__/mockServices.d.ts → controllers/authentication/__fixtures__/mockServices.d.cts} +2 -2
  29. package/dist/controllers/authentication/__fixtures__/mockServices.d.cts.map +1 -0
  30. package/dist/controllers/authentication/__fixtures__/mockServices.d.mts +10 -0
  31. package/dist/controllers/authentication/__fixtures__/mockServices.d.mts.map +1 -0
  32. package/dist/controllers/authentication/__fixtures__/mockServices.mjs +35 -0
  33. package/dist/controllers/authentication/__fixtures__/mockServices.mjs.map +1 -0
  34. package/dist/controllers/authentication/auth-snap-requests.cjs +39 -0
  35. package/dist/controllers/authentication/auth-snap-requests.cjs.map +1 -0
  36. package/dist/{types/controllers/authentication/auth-snap-requests.d.ts → controllers/authentication/auth-snap-requests.d.cts} +2 -2
  37. package/dist/controllers/authentication/auth-snap-requests.d.cts.map +1 -0
  38. package/dist/controllers/authentication/auth-snap-requests.d.mts +17 -0
  39. package/dist/controllers/authentication/auth-snap-requests.d.mts.map +1 -0
  40. package/dist/controllers/authentication/auth-snap-requests.mjs +33 -9
  41. package/dist/controllers/authentication/auth-snap-requests.mjs.map +1 -1
  42. package/dist/controllers/authentication/index.cjs +39 -0
  43. package/dist/controllers/authentication/index.cjs.map +1 -0
  44. package/dist/controllers/authentication/index.d.cts +7 -0
  45. package/dist/controllers/authentication/index.d.cts.map +1 -0
  46. package/dist/controllers/authentication/index.d.mts +7 -0
  47. package/dist/controllers/authentication/index.d.mts.map +1 -0
  48. package/dist/controllers/authentication/index.mjs +6 -18
  49. package/dist/controllers/authentication/index.mjs.map +1 -1
  50. package/dist/controllers/authentication/services.cjs +127 -0
  51. package/dist/controllers/authentication/services.cjs.map +1 -0
  52. package/dist/{types/controllers/authentication/services.d.ts → controllers/authentication/services.d.cts} +1 -1
  53. package/dist/controllers/authentication/services.d.cts.map +1 -0
  54. package/dist/controllers/authentication/services.d.mts +70 -0
  55. package/dist/controllers/authentication/services.d.mts.map +1 -0
  56. package/dist/controllers/authentication/services.mjs +118 -19
  57. package/dist/controllers/authentication/services.mjs.map +1 -1
  58. package/dist/controllers/index.cjs +29 -0
  59. package/dist/controllers/index.cjs.map +1 -0
  60. package/dist/controllers/index.d.cts +3 -0
  61. package/dist/controllers/index.d.cts.map +1 -0
  62. package/dist/controllers/index.d.mts +3 -0
  63. package/dist/controllers/index.d.mts.map +1 -0
  64. package/dist/controllers/index.mjs +2 -24
  65. package/dist/controllers/index.mjs.map +1 -1
  66. package/dist/controllers/user-storage/UserStorageController.cjs +462 -0
  67. package/dist/controllers/user-storage/UserStorageController.cjs.map +1 -0
  68. package/dist/{types/controllers/user-storage/UserStorageController.d.ts → controllers/user-storage/UserStorageController.d.cts} +44 -16
  69. package/dist/controllers/user-storage/UserStorageController.d.cts.map +1 -0
  70. package/dist/controllers/user-storage/UserStorageController.d.mts +156 -0
  71. package/dist/controllers/user-storage/UserStorageController.d.mts.map +1 -0
  72. package/dist/controllers/user-storage/UserStorageController.mjs +457 -18
  73. package/dist/controllers/user-storage/UserStorageController.mjs.map +1 -1
  74. package/dist/controllers/user-storage/__fixtures__/index.cjs +19 -0
  75. package/dist/controllers/user-storage/__fixtures__/index.cjs.map +1 -0
  76. package/dist/controllers/user-storage/__fixtures__/index.d.cts +3 -0
  77. package/dist/controllers/user-storage/__fixtures__/index.d.cts.map +1 -0
  78. package/dist/controllers/user-storage/__fixtures__/index.d.mts +3 -0
  79. package/dist/controllers/user-storage/__fixtures__/index.d.mts.map +1 -0
  80. package/dist/controllers/user-storage/__fixtures__/index.mjs +3 -0
  81. package/dist/controllers/user-storage/__fixtures__/index.mjs.map +1 -0
  82. package/dist/controllers/user-storage/__fixtures__/mockAccounts.cjs +127 -0
  83. package/dist/controllers/user-storage/__fixtures__/mockAccounts.cjs.map +1 -0
  84. package/dist/{types/controllers/user-storage/__fixtures__/mockAccounts.d.ts → controllers/user-storage/__fixtures__/mockAccounts.d.cts} +6 -6
  85. package/dist/controllers/user-storage/__fixtures__/mockAccounts.d.cts.map +1 -0
  86. package/dist/controllers/user-storage/__fixtures__/mockAccounts.d.mts +63 -0
  87. package/dist/controllers/user-storage/__fixtures__/mockAccounts.d.mts.map +1 -0
  88. package/dist/controllers/user-storage/__fixtures__/mockAccounts.mjs +123 -0
  89. package/dist/controllers/user-storage/__fixtures__/mockAccounts.mjs.map +1 -0
  90. package/dist/controllers/user-storage/__fixtures__/mockResponses.cjs +48 -0
  91. package/dist/controllers/user-storage/__fixtures__/mockResponses.cjs.map +1 -0
  92. package/dist/{types/controllers/user-storage/__fixtures__/mockResponses.d.ts → controllers/user-storage/__fixtures__/mockResponses.d.cts} +6 -4
  93. package/dist/controllers/user-storage/__fixtures__/mockResponses.d.cts.map +1 -0
  94. package/dist/controllers/user-storage/__fixtures__/mockResponses.d.mts +21 -0
  95. package/dist/controllers/user-storage/__fixtures__/mockResponses.d.mts.map +1 -0
  96. package/dist/controllers/user-storage/__fixtures__/mockResponses.mjs +39 -0
  97. package/dist/controllers/user-storage/__fixtures__/mockResponses.mjs.map +1 -0
  98. package/dist/controllers/user-storage/__fixtures__/mockServices.cjs +41 -0
  99. package/dist/controllers/user-storage/__fixtures__/mockServices.cjs.map +1 -0
  100. package/dist/{types/controllers/user-storage/__fixtures__/mockServices.d.ts → controllers/user-storage/__fixtures__/mockServices.d.cts} +3 -3
  101. package/dist/controllers/user-storage/__fixtures__/mockServices.d.cts.map +1 -0
  102. package/dist/controllers/user-storage/__fixtures__/mockServices.d.mts +11 -0
  103. package/dist/controllers/user-storage/__fixtures__/mockServices.d.mts.map +1 -0
  104. package/dist/controllers/user-storage/__fixtures__/mockServices.mjs +39 -0
  105. package/dist/controllers/user-storage/__fixtures__/mockServices.mjs.map +1 -0
  106. package/dist/controllers/user-storage/__fixtures__/mockStorage.cjs +36 -0
  107. package/dist/controllers/user-storage/__fixtures__/mockStorage.cjs.map +1 -0
  108. package/dist/{types/controllers/user-storage/__fixtures__/mockStorage.d.ts → controllers/user-storage/__fixtures__/mockStorage.d.cts} +2 -2
  109. package/dist/controllers/user-storage/__fixtures__/mockStorage.d.cts.map +1 -0
  110. package/dist/controllers/user-storage/__fixtures__/mockStorage.d.mts +5 -0
  111. package/dist/controllers/user-storage/__fixtures__/mockStorage.d.mts.map +1 -0
  112. package/dist/controllers/user-storage/__fixtures__/mockStorage.mjs +9 -0
  113. package/dist/controllers/user-storage/__fixtures__/mockStorage.mjs.map +1 -0
  114. package/dist/controllers/user-storage/__fixtures__/test-utils.cjs +31 -0
  115. package/dist/controllers/user-storage/__fixtures__/test-utils.cjs.map +1 -0
  116. package/dist/controllers/user-storage/__fixtures__/test-utils.d.cts +14 -0
  117. package/dist/controllers/user-storage/__fixtures__/test-utils.d.cts.map +1 -0
  118. package/dist/controllers/user-storage/__fixtures__/test-utils.d.mts +14 -0
  119. package/dist/controllers/user-storage/__fixtures__/test-utils.d.mts.map +1 -0
  120. package/dist/controllers/user-storage/__fixtures__/test-utils.mjs +27 -0
  121. package/dist/controllers/user-storage/__fixtures__/test-utils.mjs.map +1 -0
  122. package/dist/controllers/user-storage/accounts/constants.cjs +51 -0
  123. package/dist/controllers/user-storage/accounts/constants.cjs.map +1 -0
  124. package/dist/{types/controllers/user-storage/accounts/constants.d.ts → controllers/user-storage/accounts/constants.d.cts} +1 -1
  125. package/dist/controllers/user-storage/accounts/constants.d.cts.map +1 -0
  126. package/dist/controllers/user-storage/accounts/constants.d.mts +4 -0
  127. package/dist/controllers/user-storage/accounts/constants.d.mts.map +1 -0
  128. package/dist/controllers/user-storage/accounts/constants.mjs +47 -11
  129. package/dist/controllers/user-storage/accounts/constants.mjs.map +1 -1
  130. package/dist/controllers/user-storage/accounts/user-storage.cjs +34 -0
  131. package/dist/controllers/user-storage/accounts/user-storage.cjs.map +1 -0
  132. package/dist/{types/controllers/user-storage/accounts/user-storage.d.ts → controllers/user-storage/accounts/user-storage.d.cts} +3 -3
  133. package/dist/controllers/user-storage/accounts/user-storage.d.cts.map +1 -0
  134. package/dist/controllers/user-storage/accounts/user-storage.d.mts +32 -0
  135. package/dist/controllers/user-storage/accounts/user-storage.d.mts.map +1 -0
  136. package/dist/controllers/user-storage/accounts/user-storage.mjs +27 -9
  137. package/dist/controllers/user-storage/accounts/user-storage.mjs.map +1 -1
  138. package/dist/controllers/user-storage/encryption/cache.cjs +79 -0
  139. package/dist/controllers/user-storage/encryption/cache.cjs.map +1 -0
  140. package/dist/{types/controllers/user-storage/encryption/cache.d.ts → controllers/user-storage/encryption/cache.d.cts} +1 -1
  141. package/dist/controllers/user-storage/encryption/cache.d.cts.map +1 -0
  142. package/dist/controllers/user-storage/encryption/cache.d.mts +31 -0
  143. package/dist/controllers/user-storage/encryption/cache.d.mts.map +1 -0
  144. package/dist/controllers/user-storage/encryption/cache.mjs +71 -11
  145. package/dist/controllers/user-storage/encryption/cache.mjs.map +1 -1
  146. package/dist/controllers/user-storage/encryption/encryption.cjs +151 -0
  147. package/dist/controllers/user-storage/encryption/encryption.cjs.map +1 -0
  148. package/dist/{types/controllers/user-storage/encryption/encryption.d.ts → controllers/user-storage/encryption/encryption.d.cts} +2 -2
  149. package/dist/controllers/user-storage/encryption/encryption.d.cts.map +1 -0
  150. package/dist/controllers/user-storage/encryption/encryption.d.mts +27 -0
  151. package/dist/controllers/user-storage/encryption/encryption.d.mts.map +1 -0
  152. package/dist/controllers/user-storage/encryption/encryption.mjs +145 -10
  153. package/dist/controllers/user-storage/encryption/encryption.mjs.map +1 -1
  154. package/dist/controllers/user-storage/encryption/index.cjs +25 -0
  155. package/dist/controllers/user-storage/encryption/index.cjs.map +1 -0
  156. package/dist/controllers/user-storage/encryption/index.d.cts +5 -0
  157. package/dist/controllers/user-storage/encryption/index.d.cts.map +1 -0
  158. package/dist/controllers/user-storage/encryption/index.d.mts +5 -0
  159. package/dist/controllers/user-storage/encryption/index.d.mts.map +1 -0
  160. package/dist/controllers/user-storage/encryption/index.mjs +4 -15
  161. package/dist/controllers/user-storage/encryption/index.mjs.map +1 -1
  162. package/dist/controllers/user-storage/encryption/utils.cjs +17 -0
  163. package/dist/controllers/user-storage/encryption/utils.cjs.map +1 -0
  164. package/dist/{types/controllers/user-storage/encryption/utils.d.ts → controllers/user-storage/encryption/utils.d.cts} +1 -1
  165. package/dist/controllers/user-storage/encryption/utils.d.cts.map +1 -0
  166. package/dist/controllers/user-storage/encryption/utils.d.mts +4 -0
  167. package/dist/controllers/user-storage/encryption/utils.d.mts.map +1 -0
  168. package/dist/controllers/user-storage/encryption/utils.mjs +9 -10
  169. package/dist/controllers/user-storage/encryption/utils.mjs.map +1 -1
  170. package/dist/controllers/user-storage/index.cjs +40 -0
  171. package/dist/controllers/user-storage/index.cjs.map +1 -0
  172. package/dist/controllers/user-storage/index.d.cts +8 -0
  173. package/dist/controllers/user-storage/index.d.cts.map +1 -0
  174. package/dist/controllers/user-storage/index.d.mts +8 -0
  175. package/dist/controllers/user-storage/index.d.mts.map +1 -0
  176. package/dist/controllers/user-storage/index.mjs +7 -30
  177. package/dist/controllers/user-storage/index.mjs.map +1 -1
  178. package/dist/controllers/user-storage/network-syncing/__fixtures__/mockNetwork.cjs +25 -0
  179. package/dist/controllers/user-storage/network-syncing/__fixtures__/mockNetwork.cjs.map +1 -0
  180. package/dist/controllers/user-storage/network-syncing/__fixtures__/mockNetwork.d.cts +4 -0
  181. package/dist/controllers/user-storage/network-syncing/__fixtures__/mockNetwork.d.cts.map +1 -0
  182. package/dist/controllers/user-storage/network-syncing/__fixtures__/mockNetwork.d.mts +4 -0
  183. package/dist/controllers/user-storage/network-syncing/__fixtures__/mockNetwork.d.mts.map +1 -0
  184. package/dist/controllers/user-storage/network-syncing/__fixtures__/mockNetwork.mjs +20 -0
  185. package/dist/controllers/user-storage/network-syncing/__fixtures__/mockNetwork.mjs.map +1 -0
  186. package/dist/controllers/user-storage/network-syncing/controller-integration.cjs +65 -0
  187. package/dist/controllers/user-storage/network-syncing/controller-integration.cjs.map +1 -0
  188. package/dist/controllers/user-storage/network-syncing/controller-integration.d.cts +13 -0
  189. package/dist/controllers/user-storage/network-syncing/controller-integration.d.cts.map +1 -0
  190. package/dist/controllers/user-storage/network-syncing/controller-integration.d.mts +13 -0
  191. package/dist/controllers/user-storage/network-syncing/controller-integration.d.mts.map +1 -0
  192. package/dist/controllers/user-storage/network-syncing/controller-integration.mjs +65 -0
  193. package/dist/controllers/user-storage/network-syncing/controller-integration.mjs.map +1 -0
  194. package/dist/controllers/user-storage/network-syncing/services.cjs +64 -0
  195. package/dist/controllers/user-storage/network-syncing/services.cjs.map +1 -0
  196. package/dist/controllers/user-storage/network-syncing/services.d.cts +21 -0
  197. package/dist/controllers/user-storage/network-syncing/services.d.cts.map +1 -0
  198. package/dist/controllers/user-storage/network-syncing/services.d.mts +21 -0
  199. package/dist/controllers/user-storage/network-syncing/services.d.mts.map +1 -0
  200. package/dist/controllers/user-storage/network-syncing/services.mjs +58 -0
  201. package/dist/controllers/user-storage/network-syncing/services.mjs.map +1 -0
  202. package/dist/controllers/user-storage/network-syncing/sync-all.cjs +171 -0
  203. package/dist/controllers/user-storage/network-syncing/sync-all.cjs.map +1 -0
  204. package/dist/controllers/user-storage/network-syncing/sync-all.d.cts +35 -0
  205. package/dist/controllers/user-storage/network-syncing/sync-all.d.cts.map +1 -0
  206. package/dist/controllers/user-storage/network-syncing/sync-all.d.mts +35 -0
  207. package/dist/controllers/user-storage/network-syncing/sync-all.d.mts.map +1 -0
  208. package/dist/controllers/user-storage/network-syncing/sync-all.mjs +162 -0
  209. package/dist/controllers/user-storage/network-syncing/sync-all.mjs.map +1 -0
  210. package/dist/controllers/user-storage/network-syncing/sync-mutations.cjs +28 -0
  211. package/dist/controllers/user-storage/network-syncing/sync-mutations.cjs.map +1 -0
  212. package/dist/controllers/user-storage/network-syncing/sync-mutations.d.cts +9 -0
  213. package/dist/controllers/user-storage/network-syncing/sync-mutations.d.cts.map +1 -0
  214. package/dist/controllers/user-storage/network-syncing/sync-mutations.d.mts +9 -0
  215. package/dist/controllers/user-storage/network-syncing/sync-mutations.d.mts.map +1 -0
  216. package/dist/controllers/user-storage/network-syncing/sync-mutations.mjs +22 -0
  217. package/dist/controllers/user-storage/network-syncing/sync-mutations.mjs.map +1 -0
  218. package/dist/controllers/user-storage/network-syncing/types.cjs +16 -0
  219. package/dist/controllers/user-storage/network-syncing/types.cjs.map +1 -0
  220. package/dist/controllers/user-storage/network-syncing/types.d.cts +18 -0
  221. package/dist/controllers/user-storage/network-syncing/types.d.cts.map +1 -0
  222. package/dist/controllers/user-storage/network-syncing/types.d.mts +18 -0
  223. package/dist/controllers/user-storage/network-syncing/types.d.mts.map +1 -0
  224. package/dist/controllers/user-storage/network-syncing/types.mjs +11 -0
  225. package/dist/controllers/user-storage/network-syncing/types.mjs.map +1 -0
  226. package/dist/controllers/user-storage/schema.cjs +56 -0
  227. package/dist/controllers/user-storage/schema.cjs.map +1 -0
  228. package/dist/{types/controllers/user-storage/schema.d.ts → controllers/user-storage/schema.d.cts} +2 -1
  229. package/dist/controllers/user-storage/schema.d.cts.map +1 -0
  230. package/dist/controllers/user-storage/schema.d.mts +38 -0
  231. package/dist/controllers/user-storage/schema.d.mts.map +1 -0
  232. package/dist/controllers/user-storage/schema.mjs +48 -16
  233. package/dist/controllers/user-storage/schema.mjs.map +1 -1
  234. package/dist/controllers/user-storage/services.cjs +119 -0
  235. package/dist/controllers/user-storage/services.cjs.map +1 -0
  236. package/dist/{types/controllers/user-storage/services.d.ts → controllers/user-storage/services.d.cts} +4 -5
  237. package/dist/controllers/user-storage/services.d.cts.map +1 -0
  238. package/dist/controllers/user-storage/services.d.mts +48 -0
  239. package/dist/controllers/user-storage/services.d.mts.map +1 -0
  240. package/dist/controllers/user-storage/services.mjs +116 -21
  241. package/dist/controllers/user-storage/services.mjs.map +1 -1
  242. package/dist/controllers/user-storage/utils.cjs +30 -0
  243. package/dist/controllers/user-storage/utils.cjs.map +1 -0
  244. package/dist/controllers/user-storage/utils.d.cts +17 -0
  245. package/dist/controllers/user-storage/utils.d.cts.map +1 -0
  246. package/dist/controllers/user-storage/utils.d.mts +17 -0
  247. package/dist/controllers/user-storage/utils.d.mts.map +1 -0
  248. package/dist/controllers/user-storage/utils.mjs +25 -0
  249. package/dist/controllers/user-storage/utils.mjs.map +1 -0
  250. package/dist/index.cjs +30 -0
  251. package/dist/index.cjs.map +1 -0
  252. package/dist/index.d.cts +4 -0
  253. package/dist/index.d.cts.map +1 -0
  254. package/dist/index.d.mts +4 -0
  255. package/dist/index.d.mts.map +1 -0
  256. package/dist/index.mjs +3 -39
  257. package/dist/index.mjs.map +1 -1
  258. package/dist/sdk/__fixtures__/mock-auth.cjs +139 -0
  259. package/dist/sdk/__fixtures__/mock-auth.cjs.map +1 -0
  260. package/dist/{types/sdk/__fixtures__/mock-auth.d.ts → sdk/__fixtures__/mock-auth.d.cts} +2 -2
  261. package/dist/sdk/__fixtures__/mock-auth.d.cts.map +1 -0
  262. package/dist/sdk/__fixtures__/mock-auth.d.mts +42 -0
  263. package/dist/sdk/__fixtures__/mock-auth.d.mts.map +1 -0
  264. package/dist/sdk/__fixtures__/mock-auth.mjs +134 -0
  265. package/dist/sdk/__fixtures__/mock-auth.mjs.map +1 -0
  266. package/dist/sdk/__fixtures__/mock-userstorage.cjs +58 -0
  267. package/dist/sdk/__fixtures__/mock-userstorage.cjs.map +1 -0
  268. package/dist/{types/sdk/__fixtures__/mock-userstorage.d.ts → sdk/__fixtures__/mock-userstorage.d.cts} +2 -2
  269. package/dist/sdk/__fixtures__/mock-userstorage.d.cts.map +1 -0
  270. package/dist/sdk/__fixtures__/mock-userstorage.d.mts +19 -0
  271. package/dist/sdk/__fixtures__/mock-userstorage.d.mts.map +1 -0
  272. package/dist/sdk/__fixtures__/mock-userstorage.mjs +54 -0
  273. package/dist/sdk/__fixtures__/mock-userstorage.mjs.map +1 -0
  274. package/dist/sdk/__fixtures__/test-utils.cjs +74 -0
  275. package/dist/sdk/__fixtures__/test-utils.cjs.map +1 -0
  276. package/dist/{types/sdk/__fixtures__/test-utils.d.ts → sdk/__fixtures__/test-utils.d.cts} +6 -6
  277. package/dist/sdk/__fixtures__/test-utils.d.cts.map +1 -0
  278. package/dist/sdk/__fixtures__/test-utils.d.mts +25 -0
  279. package/dist/sdk/__fixtures__/test-utils.d.mts.map +1 -0
  280. package/dist/sdk/__fixtures__/test-utils.mjs +69 -0
  281. package/dist/sdk/__fixtures__/test-utils.mjs.map +1 -0
  282. package/dist/sdk/authentication-jwt-bearer/flow-siwe.cjs +106 -0
  283. package/dist/sdk/authentication-jwt-bearer/flow-siwe.cjs.map +1 -0
  284. package/dist/{types/sdk/authentication-jwt-bearer/flow-siwe.d.ts → sdk/authentication-jwt-bearer/flow-siwe.d.cts} +2 -2
  285. package/dist/sdk/authentication-jwt-bearer/flow-siwe.d.cts.map +1 -0
  286. package/dist/sdk/authentication-jwt-bearer/flow-siwe.d.mts +23 -0
  287. package/dist/sdk/authentication-jwt-bearer/flow-siwe.d.mts.map +1 -0
  288. package/dist/sdk/authentication-jwt-bearer/flow-siwe.mjs +101 -11
  289. package/dist/sdk/authentication-jwt-bearer/flow-siwe.mjs.map +1 -1
  290. package/dist/sdk/authentication-jwt-bearer/flow-srp.cjs +111 -0
  291. package/dist/sdk/authentication-jwt-bearer/flow-srp.cjs.map +1 -0
  292. package/dist/{types/sdk/authentication-jwt-bearer/flow-srp.d.ts → sdk/authentication-jwt-bearer/flow-srp.d.cts} +2 -2
  293. package/dist/sdk/authentication-jwt-bearer/flow-srp.d.cts.map +1 -0
  294. package/dist/sdk/authentication-jwt-bearer/flow-srp.d.mts +17 -0
  295. package/dist/sdk/authentication-jwt-bearer/flow-srp.d.mts.map +1 -0
  296. package/dist/sdk/authentication-jwt-bearer/flow-srp.mjs +105 -13
  297. package/dist/sdk/authentication-jwt-bearer/flow-srp.mjs.map +1 -1
  298. package/dist/sdk/authentication-jwt-bearer/services.cjs +180 -0
  299. package/dist/sdk/authentication-jwt-bearer/services.cjs.map +1 -0
  300. package/dist/{types/sdk/authentication-jwt-bearer/services.d.ts → sdk/authentication-jwt-bearer/services.d.cts} +4 -4
  301. package/dist/sdk/authentication-jwt-bearer/services.d.cts.map +1 -0
  302. package/dist/sdk/authentication-jwt-bearer/services.d.mts +63 -0
  303. package/dist/sdk/authentication-jwt-bearer/services.d.mts.map +1 -0
  304. package/dist/sdk/authentication-jwt-bearer/services.mjs +166 -25
  305. package/dist/sdk/authentication-jwt-bearer/services.mjs.map +1 -1
  306. package/dist/sdk/authentication-jwt-bearer/types.cjs +12 -0
  307. package/dist/sdk/authentication-jwt-bearer/types.cjs.map +1 -0
  308. package/dist/{types/sdk/authentication-jwt-bearer/types.d.ts → sdk/authentication-jwt-bearer/types.d.cts} +2 -2
  309. package/dist/sdk/authentication-jwt-bearer/types.d.cts.map +1 -0
  310. package/dist/sdk/authentication-jwt-bearer/types.d.mts +67 -0
  311. package/dist/sdk/authentication-jwt-bearer/types.d.mts.map +1 -0
  312. package/dist/sdk/authentication-jwt-bearer/types.mjs +8 -7
  313. package/dist/sdk/authentication-jwt-bearer/types.mjs.map +1 -1
  314. package/dist/sdk/authentication.cjs +129 -0
  315. package/dist/sdk/authentication.cjs.map +1 -0
  316. package/dist/{types/sdk/authentication.d.ts → sdk/authentication.d.cts} +8 -7
  317. package/dist/sdk/authentication.d.cts.map +1 -0
  318. package/dist/sdk/authentication.d.mts +32 -0
  319. package/dist/sdk/authentication.d.mts.map +1 -0
  320. package/dist/sdk/authentication.mjs +107 -24
  321. package/dist/sdk/authentication.mjs.map +1 -1
  322. package/dist/sdk/encryption.cjs +23 -0
  323. package/dist/sdk/encryption.cjs.map +1 -0
  324. package/dist/sdk/encryption.d.cts +4 -0
  325. package/dist/sdk/encryption.d.cts.map +1 -0
  326. package/dist/sdk/encryption.d.mts +4 -0
  327. package/dist/sdk/encryption.d.mts.map +1 -0
  328. package/dist/sdk/encryption.mjs +3 -13
  329. package/dist/sdk/encryption.mjs.map +1 -1
  330. package/dist/sdk/env.cjs +85 -0
  331. package/dist/sdk/env.cjs.map +1 -0
  332. package/dist/{types/sdk/env.d.ts → sdk/env.d.cts} +1 -1
  333. package/dist/sdk/env.d.cts.map +1 -0
  334. package/dist/sdk/env.d.mts +34 -0
  335. package/dist/sdk/env.d.mts.map +1 -0
  336. package/dist/sdk/env.mjs +78 -12
  337. package/dist/sdk/env.mjs.map +1 -1
  338. package/dist/sdk/errors.cjs +53 -0
  339. package/dist/sdk/errors.cjs.map +1 -0
  340. package/dist/{types/sdk/errors.d.ts → sdk/errors.d.cts} +1 -1
  341. package/dist/sdk/errors.d.cts.map +1 -0
  342. package/dist/sdk/errors.d.mts +22 -0
  343. package/dist/sdk/errors.d.mts.map +1 -0
  344. package/dist/sdk/errors.mjs +42 -19
  345. package/dist/sdk/errors.mjs.map +1 -1
  346. package/dist/sdk/index.cjs +23 -0
  347. package/dist/sdk/index.cjs.map +1 -0
  348. package/dist/sdk/index.d.cts +7 -0
  349. package/dist/sdk/index.d.cts.map +1 -0
  350. package/dist/sdk/index.d.mts +7 -0
  351. package/dist/sdk/index.d.mts.map +1 -0
  352. package/dist/sdk/index.mjs +6 -76
  353. package/dist/sdk/index.mjs.map +1 -1
  354. package/dist/sdk/user-storage.cjs +176 -0
  355. package/dist/sdk/user-storage.cjs.map +1 -0
  356. package/dist/{types/sdk/user-storage.d.ts → sdk/user-storage.d.cts} +4 -4
  357. package/dist/sdk/user-storage.d.cts.map +1 -0
  358. package/dist/sdk/user-storage.d.mts +27 -0
  359. package/dist/sdk/user-storage.d.mts.map +1 -0
  360. package/dist/sdk/user-storage.mjs +146 -16
  361. package/dist/sdk/user-storage.mjs.map +1 -1
  362. package/dist/sdk/utils/eip-6963-metamask-provider.cjs +70 -0
  363. package/dist/sdk/utils/eip-6963-metamask-provider.cjs.map +1 -0
  364. package/dist/{types/sdk/utils/eip-6963-metamask-provider.d.ts → sdk/utils/eip-6963-metamask-provider.d.cts} +2 -2
  365. package/dist/sdk/utils/eip-6963-metamask-provider.d.cts.map +1 -0
  366. package/dist/sdk/utils/eip-6963-metamask-provider.d.mts +25 -0
  367. package/dist/sdk/utils/eip-6963-metamask-provider.d.mts.map +1 -0
  368. package/dist/sdk/utils/eip-6963-metamask-provider.mjs +64 -8
  369. package/dist/sdk/utils/eip-6963-metamask-provider.mjs.map +1 -1
  370. package/dist/sdk/utils/messaging-signing-snap-requests.cjs +89 -0
  371. package/dist/sdk/utils/messaging-signing-snap-requests.cjs.map +1 -0
  372. package/dist/{types/sdk/utils/messaging-signing-snap-requests.d.ts → sdk/utils/messaging-signing-snap-requests.d.cts} +9 -2
  373. package/dist/sdk/utils/messaging-signing-snap-requests.d.cts.map +1 -0
  374. package/dist/sdk/utils/messaging-signing-snap-requests.d.mts +40 -0
  375. package/dist/sdk/utils/messaging-signing-snap-requests.d.mts.map +1 -0
  376. package/dist/sdk/utils/messaging-signing-snap-requests.mjs +80 -14
  377. package/dist/sdk/utils/messaging-signing-snap-requests.mjs.map +1 -1
  378. package/dist/sdk/utils/validate-login-response.cjs +22 -0
  379. package/dist/sdk/utils/validate-login-response.cjs.map +1 -0
  380. package/dist/{types/sdk/utils/validate-login-response.d.ts → sdk/utils/validate-login-response.d.cts} +2 -2
  381. package/dist/sdk/utils/validate-login-response.d.cts.map +1 -0
  382. package/dist/sdk/utils/validate-login-response.d.mts +10 -0
  383. package/dist/sdk/utils/validate-login-response.d.mts.map +1 -0
  384. package/dist/sdk/utils/validate-login-response.mjs +17 -7
  385. package/dist/sdk/utils/validate-login-response.mjs.map +1 -1
  386. package/package.json +20 -14
  387. package/dist/chunk-246Z6L5V.js +0 -534
  388. package/dist/chunk-246Z6L5V.js.map +0 -1
  389. package/dist/chunk-2677XY6G.mjs +0 -107
  390. package/dist/chunk-2677XY6G.mjs.map +0 -1
  391. package/dist/chunk-2CWF7ZTL.mjs +0 -129
  392. package/dist/chunk-2CWF7ZTL.mjs.map +0 -1
  393. package/dist/chunk-2VEMA6OE.mjs +0 -47
  394. package/dist/chunk-2VEMA6OE.mjs.map +0 -1
  395. package/dist/chunk-4LMFZDL4.js +0 -114
  396. package/dist/chunk-4LMFZDL4.js.map +0 -1
  397. package/dist/chunk-4ZGRRVMI.js +0 -133
  398. package/dist/chunk-4ZGRRVMI.js.map +0 -1
  399. package/dist/chunk-5EBUFNAN.mjs +0 -55
  400. package/dist/chunk-5EBUFNAN.mjs.map +0 -1
  401. package/dist/chunk-5MQUI24U.js +0 -47
  402. package/dist/chunk-5MQUI24U.js.map +0 -1
  403. package/dist/chunk-5XSXZTED.mjs +0 -57
  404. package/dist/chunk-5XSXZTED.mjs.map +0 -1
  405. package/dist/chunk-6DAK2U35.mjs +0 -11
  406. package/dist/chunk-6DAK2U35.mjs.map +0 -1
  407. package/dist/chunk-76NMME23.mjs +0 -114
  408. package/dist/chunk-76NMME23.mjs.map +0 -1
  409. package/dist/chunk-76VRE4BI.mjs +0 -18
  410. package/dist/chunk-76VRE4BI.mjs.map +0 -1
  411. package/dist/chunk-7MSQV43P.mjs +0 -77
  412. package/dist/chunk-7MSQV43P.mjs.map +0 -1
  413. package/dist/chunk-BKQE7DB5.js +0 -170
  414. package/dist/chunk-BKQE7DB5.js.map +0 -1
  415. package/dist/chunk-CAIIVJAO.mjs +0 -11
  416. package/dist/chunk-CAIIVJAO.mjs.map +0 -1
  417. package/dist/chunk-CHUZGCDV.js +0 -107
  418. package/dist/chunk-CHUZGCDV.js.map +0 -1
  419. package/dist/chunk-COBJUBZE.mjs +0 -170
  420. package/dist/chunk-COBJUBZE.mjs.map +0 -1
  421. package/dist/chunk-D4SNJOID.mjs +0 -269
  422. package/dist/chunk-D4SNJOID.mjs.map +0 -1
  423. package/dist/chunk-DF24ZX4H.js +0 -76
  424. package/dist/chunk-DF24ZX4H.js.map +0 -1
  425. package/dist/chunk-DRB2MN4T.js +0 -16
  426. package/dist/chunk-DRB2MN4T.js.map +0 -1
  427. package/dist/chunk-EHZFPUJH.mjs +0 -53
  428. package/dist/chunk-EHZFPUJH.mjs.map +0 -1
  429. package/dist/chunk-F6BAOSH2.js +0 -269
  430. package/dist/chunk-F6BAOSH2.js.map +0 -1
  431. package/dist/chunk-GQXYWBFK.js +0 -28
  432. package/dist/chunk-GQXYWBFK.js.map +0 -1
  433. package/dist/chunk-H25EBXG5.mjs +0 -58
  434. package/dist/chunk-H25EBXG5.mjs.map +0 -1
  435. package/dist/chunk-IGY2S5BC.js +0 -36
  436. package/dist/chunk-IGY2S5BC.js.map +0 -1
  437. package/dist/chunk-J7NSK6BO.mjs +0 -133
  438. package/dist/chunk-J7NSK6BO.mjs.map +0 -1
  439. package/dist/chunk-JAQ5TPSZ.js +0 -53
  440. package/dist/chunk-JAQ5TPSZ.js.map +0 -1
  441. package/dist/chunk-KHASG4H3.mjs +0 -11
  442. package/dist/chunk-KHASG4H3.mjs.map +0 -1
  443. package/dist/chunk-KIVBL6OM.js +0 -129
  444. package/dist/chunk-KIVBL6OM.js.map +0 -1
  445. package/dist/chunk-KTCSRECK.mjs +0 -76
  446. package/dist/chunk-KTCSRECK.mjs.map +0 -1
  447. package/dist/chunk-LGXQBALM.mjs +0 -106
  448. package/dist/chunk-LGXQBALM.mjs.map +0 -1
  449. package/dist/chunk-LLG4D2SC.js +0 -157
  450. package/dist/chunk-LLG4D2SC.js.map +0 -1
  451. package/dist/chunk-MBTBE4P5.js +0 -54
  452. package/dist/chunk-MBTBE4P5.js.map +0 -1
  453. package/dist/chunk-MK7ABX2V.mjs +0 -186
  454. package/dist/chunk-MK7ABX2V.mjs.map +0 -1
  455. package/dist/chunk-NIUQ34PY.js +0 -11
  456. package/dist/chunk-NIUQ34PY.js.map +0 -1
  457. package/dist/chunk-NMIF3LSX.mjs +0 -29
  458. package/dist/chunk-NMIF3LSX.mjs.map +0 -1
  459. package/dist/chunk-PBRUOBEQ.js +0 -11
  460. package/dist/chunk-PBRUOBEQ.js.map +0 -1
  461. package/dist/chunk-PCOIRDTO.js +0 -18
  462. package/dist/chunk-PCOIRDTO.js.map +0 -1
  463. package/dist/chunk-PQ5T4GHY.js +0 -55
  464. package/dist/chunk-PQ5T4GHY.js.map +0 -1
  465. package/dist/chunk-PRYLTXW4.js +0 -92
  466. package/dist/chunk-PRYLTXW4.js.map +0 -1
  467. package/dist/chunk-Q5KTSMRE.js +0 -120
  468. package/dist/chunk-Q5KTSMRE.js.map +0 -1
  469. package/dist/chunk-QDGLIUUS.mjs +0 -16
  470. package/dist/chunk-QDGLIUUS.mjs.map +0 -1
  471. package/dist/chunk-RG4II6WH.js +0 -57
  472. package/dist/chunk-RG4II6WH.js.map +0 -1
  473. package/dist/chunk-SZ6WMC6C.mjs +0 -534
  474. package/dist/chunk-SZ6WMC6C.mjs.map +0 -1
  475. package/dist/chunk-T2YURW25.js +0 -77
  476. package/dist/chunk-T2YURW25.js.map +0 -1
  477. package/dist/chunk-TFFQFIJV.mjs +0 -54
  478. package/dist/chunk-TFFQFIJV.mjs.map +0 -1
  479. package/dist/chunk-U5UIDVOO.mjs +0 -36
  480. package/dist/chunk-U5UIDVOO.mjs.map +0 -1
  481. package/dist/chunk-UAXWZN5J.js +0 -58
  482. package/dist/chunk-UAXWZN5J.js.map +0 -1
  483. package/dist/chunk-UHP2Y32K.mjs +0 -92
  484. package/dist/chunk-UHP2Y32K.mjs.map +0 -1
  485. package/dist/chunk-UHX7HJAI.js +0 -11
  486. package/dist/chunk-UHX7HJAI.js.map +0 -1
  487. package/dist/chunk-UIRAMHNM.js +0 -186
  488. package/dist/chunk-UIRAMHNM.js.map +0 -1
  489. package/dist/chunk-YHGWG3EQ.js +0 -29
  490. package/dist/chunk-YHGWG3EQ.js.map +0 -1
  491. package/dist/chunk-YKOMKXG4.mjs +0 -120
  492. package/dist/chunk-YKOMKXG4.mjs.map +0 -1
  493. package/dist/chunk-YLURF2PF.mjs +0 -157
  494. package/dist/chunk-YLURF2PF.mjs.map +0 -1
  495. package/dist/chunk-ZUPTMFEA.mjs +0 -28
  496. package/dist/chunk-ZUPTMFEA.mjs.map +0 -1
  497. package/dist/chunk-ZX2KHPXG.js +0 -106
  498. package/dist/chunk-ZX2KHPXG.js.map +0 -1
  499. package/dist/controllers/authentication/AuthenticationController.js +0 -13
  500. package/dist/controllers/authentication/AuthenticationController.js.map +0 -1
  501. package/dist/controllers/authentication/auth-snap-requests.js +0 -10
  502. package/dist/controllers/authentication/auth-snap-requests.js.map +0 -1
  503. package/dist/controllers/authentication/index.js +0 -19
  504. package/dist/controllers/authentication/index.js.map +0 -1
  505. package/dist/controllers/authentication/services.js +0 -21
  506. package/dist/controllers/authentication/services.js.map +0 -1
  507. package/dist/controllers/index.js +0 -25
  508. package/dist/controllers/index.js.map +0 -1
  509. package/dist/controllers/user-storage/UserStorageController.js +0 -20
  510. package/dist/controllers/user-storage/UserStorageController.js.map +0 -1
  511. package/dist/controllers/user-storage/accounts/constants.js +0 -12
  512. package/dist/controllers/user-storage/accounts/constants.js.map +0 -1
  513. package/dist/controllers/user-storage/accounts/user-storage.js +0 -11
  514. package/dist/controllers/user-storage/accounts/user-storage.js.map +0 -1
  515. package/dist/controllers/user-storage/encryption/cache.js +0 -13
  516. package/dist/controllers/user-storage/encryption/cache.js.map +0 -1
  517. package/dist/controllers/user-storage/encryption/encryption.js +0 -12
  518. package/dist/controllers/user-storage/encryption/encryption.js.map +0 -1
  519. package/dist/controllers/user-storage/encryption/index.js +0 -16
  520. package/dist/controllers/user-storage/encryption/index.js.map +0 -1
  521. package/dist/controllers/user-storage/encryption/utils.js +0 -12
  522. package/dist/controllers/user-storage/encryption/utils.js.map +0 -1
  523. package/dist/controllers/user-storage/index.js +0 -31
  524. package/dist/controllers/user-storage/index.js.map +0 -1
  525. package/dist/controllers/user-storage/schema.js +0 -18
  526. package/dist/controllers/user-storage/schema.js.map +0 -1
  527. package/dist/controllers/user-storage/services.js +0 -22
  528. package/dist/controllers/user-storage/services.js.map +0 -1
  529. package/dist/index.js +0 -40
  530. package/dist/index.js.map +0 -1
  531. package/dist/sdk/authentication-jwt-bearer/flow-siwe.js +0 -13
  532. package/dist/sdk/authentication-jwt-bearer/flow-siwe.js.map +0 -1
  533. package/dist/sdk/authentication-jwt-bearer/flow-srp.js +0 -15
  534. package/dist/sdk/authentication-jwt-bearer/flow-srp.js.map +0 -1
  535. package/dist/sdk/authentication-jwt-bearer/services.js +0 -27
  536. package/dist/sdk/authentication-jwt-bearer/services.js.map +0 -1
  537. package/dist/sdk/authentication-jwt-bearer/types.js +0 -8
  538. package/dist/sdk/authentication-jwt-bearer/types.js.map +0 -1
  539. package/dist/sdk/authentication.js +0 -26
  540. package/dist/sdk/authentication.js.map +0 -1
  541. package/dist/sdk/encryption.js +0 -14
  542. package/dist/sdk/encryption.js.map +0 -1
  543. package/dist/sdk/env.js +0 -14
  544. package/dist/sdk/env.js.map +0 -1
  545. package/dist/sdk/errors.js +0 -20
  546. package/dist/sdk/errors.js.map +0 -1
  547. package/dist/sdk/index.js +0 -77
  548. package/dist/sdk/index.js.map +0 -1
  549. package/dist/sdk/user-storage.js +0 -18
  550. package/dist/sdk/user-storage.js.map +0 -1
  551. package/dist/sdk/utils/eip-6963-metamask-provider.js +0 -10
  552. package/dist/sdk/utils/eip-6963-metamask-provider.js.map +0 -1
  553. package/dist/sdk/utils/messaging-signing-snap-requests.js +0 -16
  554. package/dist/sdk/utils/messaging-signing-snap-requests.js.map +0 -1
  555. package/dist/sdk/utils/validate-login-response.js +0 -8
  556. package/dist/sdk/utils/validate-login-response.js.map +0 -1
  557. package/dist/tsconfig.build.tsbuildinfo +0 -1
  558. package/dist/types/controllers/authentication/AuthenticationController.d.ts.map +0 -1
  559. package/dist/types/controllers/authentication/__fixtures__/index.d.ts +0 -2
  560. package/dist/types/controllers/authentication/__fixtures__/index.d.ts.map +0 -1
  561. package/dist/types/controllers/authentication/__fixtures__/mockResponses.d.ts.map +0 -1
  562. package/dist/types/controllers/authentication/__fixtures__/mockServices.d.ts.map +0 -1
  563. package/dist/types/controllers/authentication/auth-snap-requests.d.ts.map +0 -1
  564. package/dist/types/controllers/authentication/index.d.ts +0 -7
  565. package/dist/types/controllers/authentication/index.d.ts.map +0 -1
  566. package/dist/types/controllers/authentication/services.d.ts.map +0 -1
  567. package/dist/types/controllers/index.d.ts +0 -3
  568. package/dist/types/controllers/index.d.ts.map +0 -1
  569. package/dist/types/controllers/user-storage/UserStorageController.d.ts.map +0 -1
  570. package/dist/types/controllers/user-storage/__fixtures__/index.d.ts +0 -3
  571. package/dist/types/controllers/user-storage/__fixtures__/index.d.ts.map +0 -1
  572. package/dist/types/controllers/user-storage/__fixtures__/mockAccounts.d.ts.map +0 -1
  573. package/dist/types/controllers/user-storage/__fixtures__/mockResponses.d.ts.map +0 -1
  574. package/dist/types/controllers/user-storage/__fixtures__/mockServices.d.ts.map +0 -1
  575. package/dist/types/controllers/user-storage/__fixtures__/mockStorage.d.ts.map +0 -1
  576. package/dist/types/controllers/user-storage/accounts/constants.d.ts.map +0 -1
  577. package/dist/types/controllers/user-storage/accounts/user-storage.d.ts.map +0 -1
  578. package/dist/types/controllers/user-storage/encryption/cache.d.ts.map +0 -1
  579. package/dist/types/controllers/user-storage/encryption/encryption.d.ts.map +0 -1
  580. package/dist/types/controllers/user-storage/encryption/index.d.ts +0 -5
  581. package/dist/types/controllers/user-storage/encryption/index.d.ts.map +0 -1
  582. package/dist/types/controllers/user-storage/encryption/utils.d.ts.map +0 -1
  583. package/dist/types/controllers/user-storage/index.d.ts +0 -8
  584. package/dist/types/controllers/user-storage/index.d.ts.map +0 -1
  585. package/dist/types/controllers/user-storage/schema.d.ts.map +0 -1
  586. package/dist/types/controllers/user-storage/services.d.ts.map +0 -1
  587. package/dist/types/index.d.ts +0 -4
  588. package/dist/types/index.d.ts.map +0 -1
  589. package/dist/types/sdk/__fixtures__/mock-auth.d.ts.map +0 -1
  590. package/dist/types/sdk/__fixtures__/mock-userstorage.d.ts.map +0 -1
  591. package/dist/types/sdk/__fixtures__/test-utils.d.ts.map +0 -1
  592. package/dist/types/sdk/authentication-jwt-bearer/flow-siwe.d.ts.map +0 -1
  593. package/dist/types/sdk/authentication-jwt-bearer/flow-srp.d.ts.map +0 -1
  594. package/dist/types/sdk/authentication-jwt-bearer/services.d.ts.map +0 -1
  595. package/dist/types/sdk/authentication-jwt-bearer/types.d.ts.map +0 -1
  596. package/dist/types/sdk/authentication.d.ts.map +0 -1
  597. package/dist/types/sdk/encryption.d.ts +0 -4
  598. package/dist/types/sdk/encryption.d.ts.map +0 -1
  599. package/dist/types/sdk/env.d.ts.map +0 -1
  600. package/dist/types/sdk/errors.d.ts.map +0 -1
  601. package/dist/types/sdk/index.d.ts +0 -7
  602. package/dist/types/sdk/index.d.ts.map +0 -1
  603. package/dist/types/sdk/user-storage.d.ts.map +0 -1
  604. package/dist/types/sdk/utils/eip-6963-metamask-provider.d.ts.map +0 -1
  605. package/dist/types/sdk/utils/messaging-signing-snap-requests.d.ts.map +0 -1
  606. package/dist/types/sdk/utils/validate-login-response.d.ts.map +0 -1
@@ -0,0 +1,39 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.createSnapSignMessageRequest = exports.createSnapPublicKeyRequest = void 0;
4
+ const snapId = 'npm:@metamask/message-signing-snap';
5
+ /**
6
+ * Constructs Request to Message Signing Snap to get Public Key
7
+ *
8
+ * @returns Snap Public Key Request
9
+ */
10
+ function createSnapPublicKeyRequest() {
11
+ return {
12
+ snapId,
13
+ origin: '',
14
+ handler: 'onRpcRequest',
15
+ request: {
16
+ method: 'getPublicKey',
17
+ },
18
+ };
19
+ }
20
+ exports.createSnapPublicKeyRequest = createSnapPublicKeyRequest;
21
+ /**
22
+ * Constructs Request to get Message Signing Snap to sign a message.
23
+ *
24
+ * @param message - message to sign
25
+ * @returns Snap Sign Message Request
26
+ */
27
+ function createSnapSignMessageRequest(message) {
28
+ return {
29
+ snapId,
30
+ origin: '',
31
+ handler: 'onRpcRequest',
32
+ request: {
33
+ method: 'signMessage',
34
+ params: { message },
35
+ },
36
+ };
37
+ }
38
+ exports.createSnapSignMessageRequest = createSnapSignMessageRequest;
39
+ //# sourceMappingURL=auth-snap-requests.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"auth-snap-requests.cjs","sourceRoot":"","sources":["../../../src/controllers/authentication/auth-snap-requests.ts"],"names":[],"mappings":";;;AAMA,MAAM,MAAM,GAAG,oCAA8C,CAAC;AAE9D;;;;GAIG;AACH,SAAgB,0BAA0B;IACxC,OAAO;QACL,MAAM;QACN,MAAM,EAAE,EAAE;QACV,OAAO,EAAE,cAAqB;QAC9B,OAAO,EAAE;YACP,MAAM,EAAE,cAAc;SACvB;KACF,CAAC;AACJ,CAAC;AATD,gEASC;AAED;;;;;GAKG;AACH,SAAgB,4BAA4B,CAC1C,OAA6B;IAE7B,OAAO;QACL,MAAM;QACN,MAAM,EAAE,EAAE;QACV,OAAO,EAAE,cAAqB;QAC9B,OAAO,EAAE;YACP,MAAM,EAAE,aAAa;YACrB,MAAM,EAAE,EAAE,OAAO,EAAE;SACpB;KACF,CAAC;AACJ,CAAC;AAZD,oEAYC","sourcesContent":["/* eslint-disable @typescript-eslint/no-explicit-any */\nimport type { HandleSnapRequest } from '@metamask/snaps-controllers';\nimport type { SnapId } from '@metamask/snaps-sdk';\n\ntype SnapRPCRequest = Parameters<HandleSnapRequest['handler']>[0];\n\nconst snapId = 'npm:@metamask/message-signing-snap' as SnapId;\n\n/**\n * Constructs Request to Message Signing Snap to get Public Key\n *\n * @returns Snap Public Key Request\n */\nexport function createSnapPublicKeyRequest(): SnapRPCRequest {\n return {\n snapId,\n origin: '',\n handler: 'onRpcRequest' as any,\n request: {\n method: 'getPublicKey',\n },\n };\n}\n\n/**\n * Constructs Request to get Message Signing Snap to sign a message.\n *\n * @param message - message to sign\n * @returns Snap Sign Message Request\n */\nexport function createSnapSignMessageRequest(\n message: `metamask:${string}`,\n): SnapRPCRequest {\n return {\n snapId,\n origin: '',\n handler: 'onRpcRequest' as any,\n request: {\n method: 'signMessage',\n params: { message },\n },\n };\n}\n"]}
@@ -1,4 +1,4 @@
1
- import type { HandleSnapRequest } from '@metamask/snaps-controllers';
1
+ import type { HandleSnapRequest } from "@metamask/snaps-controllers";
2
2
  type SnapRPCRequest = Parameters<HandleSnapRequest['handler']>[0];
3
3
  /**
4
4
  * Constructs Request to Message Signing Snap to get Public Key
@@ -14,4 +14,4 @@ export declare function createSnapPublicKeyRequest(): SnapRPCRequest;
14
14
  */
15
15
  export declare function createSnapSignMessageRequest(message: `metamask:${string}`): SnapRPCRequest;
16
16
  export {};
17
- //# sourceMappingURL=auth-snap-requests.d.ts.map
17
+ //# sourceMappingURL=auth-snap-requests.d.cts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"auth-snap-requests.d.cts","sourceRoot":"","sources":["../../../src/controllers/authentication/auth-snap-requests.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,iBAAiB,EAAE,oCAAoC;AAGrE,KAAK,cAAc,GAAG,UAAU,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAIlE;;;;GAIG;AACH,wBAAgB,0BAA0B,IAAI,cAAc,CAS3D;AAED;;;;;GAKG;AACH,wBAAgB,4BAA4B,CAC1C,OAAO,EAAE,YAAY,MAAM,EAAE,GAC5B,cAAc,CAUhB"}
@@ -0,0 +1,17 @@
1
+ import type { HandleSnapRequest } from "@metamask/snaps-controllers";
2
+ type SnapRPCRequest = Parameters<HandleSnapRequest['handler']>[0];
3
+ /**
4
+ * Constructs Request to Message Signing Snap to get Public Key
5
+ *
6
+ * @returns Snap Public Key Request
7
+ */
8
+ export declare function createSnapPublicKeyRequest(): SnapRPCRequest;
9
+ /**
10
+ * Constructs Request to get Message Signing Snap to sign a message.
11
+ *
12
+ * @param message - message to sign
13
+ * @returns Snap Sign Message Request
14
+ */
15
+ export declare function createSnapSignMessageRequest(message: `metamask:${string}`): SnapRPCRequest;
16
+ export {};
17
+ //# sourceMappingURL=auth-snap-requests.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"auth-snap-requests.d.mts","sourceRoot":"","sources":["../../../src/controllers/authentication/auth-snap-requests.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,iBAAiB,EAAE,oCAAoC;AAGrE,KAAK,cAAc,GAAG,UAAU,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAIlE;;;;GAIG;AACH,wBAAgB,0BAA0B,IAAI,cAAc,CAS3D;AAED;;;;;GAKG;AACH,wBAAgB,4BAA4B,CAC1C,OAAO,EAAE,YAAY,MAAM,EAAE,GAC5B,cAAc,CAUhB"}
@@ -1,10 +1,34 @@
1
- import {
2
- createSnapPublicKeyRequest,
3
- createSnapSignMessageRequest
4
- } from "../../chunk-NMIF3LSX.mjs";
5
- import "../../chunk-U5UIDVOO.mjs";
6
- export {
7
- createSnapPublicKeyRequest,
8
- createSnapSignMessageRequest
9
- };
1
+ const snapId = 'npm:@metamask/message-signing-snap';
2
+ /**
3
+ * Constructs Request to Message Signing Snap to get Public Key
4
+ *
5
+ * @returns Snap Public Key Request
6
+ */
7
+ export function createSnapPublicKeyRequest() {
8
+ return {
9
+ snapId,
10
+ origin: '',
11
+ handler: 'onRpcRequest',
12
+ request: {
13
+ method: 'getPublicKey',
14
+ },
15
+ };
16
+ }
17
+ /**
18
+ * Constructs Request to get Message Signing Snap to sign a message.
19
+ *
20
+ * @param message - message to sign
21
+ * @returns Snap Sign Message Request
22
+ */
23
+ export function createSnapSignMessageRequest(message) {
24
+ return {
25
+ snapId,
26
+ origin: '',
27
+ handler: 'onRpcRequest',
28
+ request: {
29
+ method: 'signMessage',
30
+ params: { message },
31
+ },
32
+ };
33
+ }
10
34
  //# sourceMappingURL=auth-snap-requests.mjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
1
+ {"version":3,"file":"auth-snap-requests.mjs","sourceRoot":"","sources":["../../../src/controllers/authentication/auth-snap-requests.ts"],"names":[],"mappings":"AAMA,MAAM,MAAM,GAAG,oCAA8C,CAAC;AAE9D;;;;GAIG;AACH,MAAM,UAAU,0BAA0B;IACxC,OAAO;QACL,MAAM;QACN,MAAM,EAAE,EAAE;QACV,OAAO,EAAE,cAAqB;QAC9B,OAAO,EAAE;YACP,MAAM,EAAE,cAAc;SACvB;KACF,CAAC;AACJ,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,4BAA4B,CAC1C,OAA6B;IAE7B,OAAO;QACL,MAAM;QACN,MAAM,EAAE,EAAE;QACV,OAAO,EAAE,cAAqB;QAC9B,OAAO,EAAE;YACP,MAAM,EAAE,aAAa;YACrB,MAAM,EAAE,EAAE,OAAO,EAAE;SACpB;KACF,CAAC;AACJ,CAAC","sourcesContent":["/* eslint-disable @typescript-eslint/no-explicit-any */\nimport type { HandleSnapRequest } from '@metamask/snaps-controllers';\nimport type { SnapId } from '@metamask/snaps-sdk';\n\ntype SnapRPCRequest = Parameters<HandleSnapRequest['handler']>[0];\n\nconst snapId = 'npm:@metamask/message-signing-snap' as SnapId;\n\n/**\n * Constructs Request to Message Signing Snap to get Public Key\n *\n * @returns Snap Public Key Request\n */\nexport function createSnapPublicKeyRequest(): SnapRPCRequest {\n return {\n snapId,\n origin: '',\n handler: 'onRpcRequest' as any,\n request: {\n method: 'getPublicKey',\n },\n };\n}\n\n/**\n * Constructs Request to get Message Signing Snap to sign a message.\n *\n * @param message - message to sign\n * @returns Snap Sign Message Request\n */\nexport function createSnapSignMessageRequest(\n message: `metamask:${string}`,\n): SnapRPCRequest {\n return {\n snapId,\n origin: '',\n handler: 'onRpcRequest' as any,\n request: {\n method: 'signMessage',\n params: { message },\n },\n };\n}\n"]}
@@ -0,0 +1,39 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
19
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
20
+ };
21
+ var __importStar = (this && this.__importStar) || function (mod) {
22
+ if (mod && mod.__esModule) return mod;
23
+ var result = {};
24
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
25
+ __setModuleDefault(result, mod);
26
+ return result;
27
+ };
28
+ var __importDefault = (this && this.__importDefault) || function (mod) {
29
+ return (mod && mod.__esModule) ? mod : { "default": mod };
30
+ };
31
+ Object.defineProperty(exports, "__esModule", { value: true });
32
+ exports.Mocks = exports.Controller = void 0;
33
+ const AuthenticationController_1 = __importDefault(require("./AuthenticationController.cjs"));
34
+ exports.Controller = AuthenticationController_1.default;
35
+ const AuthenticationController = AuthenticationController_1.default;
36
+ exports.default = AuthenticationController;
37
+ __exportStar(require("./AuthenticationController.cjs"), exports);
38
+ exports.Mocks = __importStar(require("./__fixtures__/index.cjs"));
39
+ //# sourceMappingURL=index.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.cjs","sourceRoot":"","sources":["../../../src/controllers/authentication/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,8FAAoD;AAG3C,qBAHF,kCAAU,CAGE;AADnB,MAAM,wBAAwB,GAAG,kCAAU,CAAC;AAE5C,kBAAe,wBAAwB,CAAC;AACxC,iEAA2C;AAC3C,kEAAwC","sourcesContent":["import Controller from './AuthenticationController';\n\nconst AuthenticationController = Controller;\nexport { Controller };\nexport default AuthenticationController;\nexport * from './AuthenticationController';\nexport * as Mocks from './__fixtures__';\n"]}
@@ -0,0 +1,7 @@
1
+ import Controller from "./AuthenticationController.cjs";
2
+ declare const AuthenticationController: typeof Controller;
3
+ export { Controller };
4
+ export default AuthenticationController;
5
+ export * from "./AuthenticationController.cjs";
6
+ export * as Mocks from "./__fixtures__/index.cjs";
7
+ //# sourceMappingURL=index.d.cts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.cts","sourceRoot":"","sources":["../../../src/controllers/authentication/index.ts"],"names":[],"mappings":"AAAA,OAAO,UAAU,uCAAmC;AAEpD,QAAA,MAAM,wBAAwB,mBAAa,CAAC;AAC5C,OAAO,EAAE,UAAU,EAAE,CAAC;AACtB,eAAe,wBAAwB,CAAC;AACxC,+CAA2C;AAC3C,OAAO,KAAK,KAAK,iCAAuB"}
@@ -0,0 +1,7 @@
1
+ import Controller from "./AuthenticationController.mjs";
2
+ declare const AuthenticationController: typeof Controller;
3
+ export { Controller };
4
+ export default AuthenticationController;
5
+ export * from "./AuthenticationController.mjs";
6
+ export * as Mocks from "./__fixtures__/index.mjs";
7
+ //# sourceMappingURL=index.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.mts","sourceRoot":"","sources":["../../../src/controllers/authentication/index.ts"],"names":[],"mappings":"AAAA,OAAO,UAAU,uCAAmC;AAEpD,QAAA,MAAM,wBAAwB,mBAAa,CAAC;AAC5C,OAAO,EAAE,UAAU,EAAE,CAAC;AACtB,eAAe,wBAAwB,CAAC;AACxC,+CAA2C;AAC3C,OAAO,KAAK,KAAK,iCAAuB"}
@@ -1,19 +1,7 @@
1
- import {
2
- authentication_default,
3
- fixtures_exports
4
- } from "../../chunk-UHP2Y32K.mjs";
5
- import {
6
- AuthenticationController,
7
- defaultState
8
- } from "../../chunk-D4SNJOID.mjs";
9
- import "../../chunk-LGXQBALM.mjs";
10
- import "../../chunk-NMIF3LSX.mjs";
11
- import "../../chunk-KTCSRECK.mjs";
12
- import "../../chunk-U5UIDVOO.mjs";
13
- export {
14
- AuthenticationController as Controller,
15
- fixtures_exports as Mocks,
16
- authentication_default as default,
17
- defaultState
18
- };
1
+ import Controller from "./AuthenticationController.mjs";
2
+ const AuthenticationController = Controller;
3
+ export { Controller };
4
+ export default AuthenticationController;
5
+ export * from "./AuthenticationController.mjs";
6
+ export * as Mocks from "./__fixtures__/index.mjs";
19
7
  //# sourceMappingURL=index.mjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
1
+ {"version":3,"file":"index.mjs","sourceRoot":"","sources":["../../../src/controllers/authentication/index.ts"],"names":[],"mappings":"AAAA,OAAO,UAAU,uCAAmC;AAEpD,MAAM,wBAAwB,GAAG,UAAU,CAAC;AAC5C,OAAO,EAAE,UAAU,EAAE,CAAC;AACtB,eAAe,wBAAwB,CAAC;AACxC,+CAA2C;AAC3C,OAAO,KAAK,KAAK,iCAAuB","sourcesContent":["import Controller from './AuthenticationController';\n\nconst AuthenticationController = Controller;\nexport { Controller };\nexport default AuthenticationController;\nexport * from './AuthenticationController';\nexport * as Mocks from './__fixtures__';\n"]}
@@ -0,0 +1,127 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.createLoginRawMessage = exports.getAccessToken = exports.login = exports.getNonce = exports.OIDC_TOKENS_ENDPOINT = exports.AUTH_LOGIN_ENDPOINT = exports.AUTH_NONCE_ENDPOINT = void 0;
4
+ const env_1 = require("../../sdk/env.cjs");
5
+ const ENV_URLS = (0, env_1.getEnvUrls)(env_1.Env.PRD);
6
+ const AUTH_ENDPOINT = ENV_URLS.authApiUrl;
7
+ exports.AUTH_NONCE_ENDPOINT = `${AUTH_ENDPOINT}/api/v2/nonce`;
8
+ exports.AUTH_LOGIN_ENDPOINT = `${AUTH_ENDPOINT}/api/v2/srp/login`;
9
+ const OIDC_ENDPOINT = ENV_URLS.oidcApiUrl || '';
10
+ exports.OIDC_TOKENS_ENDPOINT = `${OIDC_ENDPOINT}/oauth2/token`;
11
+ const OIDC_CLIENT_ID = (platform) => {
12
+ if (platform === 'extension') {
13
+ return (0, env_1.getOidcClientId)(env_1.Env.PRD, env_1.Platform.EXTENSION);
14
+ }
15
+ if (platform === 'mobile') {
16
+ return (0, env_1.getOidcClientId)(env_1.Env.PRD, env_1.Platform.MOBILE);
17
+ }
18
+ throw new Error(`Unsupported platform - ${platform}`);
19
+ };
20
+ const OIDC_GRANT_TYPE = 'urn:ietf:params:oauth:grant-type:jwt-bearer';
21
+ /**
22
+ * Auth Service - Get Nonce. Used for the initial JWTBearer flow
23
+ *
24
+ * @param publicKey - public key to associate a nonce with
25
+ * @returns the nonce or null if failed
26
+ */
27
+ async function getNonce(publicKey) {
28
+ const nonceUrl = new URL(exports.AUTH_NONCE_ENDPOINT);
29
+ nonceUrl.searchParams.set('identifier', publicKey);
30
+ try {
31
+ const nonceResponse = await fetch(nonceUrl.toString());
32
+ if (!nonceResponse.ok) {
33
+ return null;
34
+ }
35
+ const nonceJson = await nonceResponse.json();
36
+ return nonceJson?.nonce ?? null;
37
+ }
38
+ catch (e) {
39
+ console.error('authentication-controller/services: unable to get nonce', e);
40
+ return null;
41
+ }
42
+ }
43
+ exports.getNonce = getNonce;
44
+ /**
45
+ * Auth Service - Login. Will perform login with a given signature and will return a single use JWT Token.
46
+ *
47
+ * @param rawMessage - the original message before signing
48
+ * @param signature - the signed message
49
+ * @param clientMetaMetrics - optional client metametrics id (to associate on backend)
50
+ * @returns The Login Response
51
+ */
52
+ async function login(rawMessage, signature, clientMetaMetrics) {
53
+ try {
54
+ const response = await fetch(exports.AUTH_LOGIN_ENDPOINT, {
55
+ method: 'POST',
56
+ headers: {
57
+ 'Content-Type': 'application/json',
58
+ },
59
+ body: JSON.stringify({
60
+ signature,
61
+ // eslint-disable-next-line @typescript-eslint/naming-convention
62
+ raw_message: rawMessage,
63
+ metametrics: {
64
+ // eslint-disable-next-line @typescript-eslint/naming-convention
65
+ metametrics_id: clientMetaMetrics.metametricsId,
66
+ agent: clientMetaMetrics.agent,
67
+ },
68
+ }),
69
+ });
70
+ if (!response.ok) {
71
+ return null;
72
+ }
73
+ const loginResponse = await response.json();
74
+ return loginResponse ?? null;
75
+ }
76
+ catch (e) {
77
+ console.error('authentication-controller/services: unable to login', e);
78
+ return null;
79
+ }
80
+ }
81
+ exports.login = login;
82
+ /**
83
+ * OIDC Service - Access Token. Trades the Auth Token for an access token (to be used for other authenticated endpoints)
84
+ * NOTE - the access token is short lived, which means it is best practice to validate session before calling authenticated endpoints
85
+ *
86
+ * @param jwtToken - the JWT Auth Token, received from `/login`
87
+ * @param platform - the OIDC platform to retrieve access token
88
+ * @returns JWT Access token to store and use on authorized endpoints.
89
+ */
90
+ async function getAccessToken(jwtToken, platform) {
91
+ const headers = new Headers({
92
+ 'Content-Type': 'application/x-www-form-urlencoded',
93
+ });
94
+ const urlEncodedBody = new URLSearchParams();
95
+ urlEncodedBody.append('grant_type', OIDC_GRANT_TYPE);
96
+ urlEncodedBody.append('client_id', OIDC_CLIENT_ID(platform));
97
+ urlEncodedBody.append('assertion', jwtToken);
98
+ try {
99
+ const response = await fetch(exports.OIDC_TOKENS_ENDPOINT, {
100
+ method: 'POST',
101
+ headers,
102
+ body: urlEncodedBody.toString(),
103
+ });
104
+ if (!response.ok) {
105
+ return null;
106
+ }
107
+ const accessTokenResponse = await response.json();
108
+ return accessTokenResponse?.access_token ?? null;
109
+ }
110
+ catch (e) {
111
+ console.error('authentication-controller/services: unable to get access token', e);
112
+ return null;
113
+ }
114
+ }
115
+ exports.getAccessToken = getAccessToken;
116
+ /**
117
+ * Utility to create the raw login message for the JWT bearer flow (via SRP)
118
+ *
119
+ * @param nonce - nonce received from `/nonce` endpoint
120
+ * @param publicKey - public key used to retrieve nonce and for message signing
121
+ * @returns Raw Message which will be used for signing & logging in.
122
+ */
123
+ function createLoginRawMessage(nonce, publicKey) {
124
+ return `metamask:${nonce}:${publicKey}`;
125
+ }
126
+ exports.createLoginRawMessage = createLoginRawMessage;
127
+ //# sourceMappingURL=services.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"services.cjs","sourceRoot":"","sources":["../../../src/controllers/authentication/services.ts"],"names":[],"mappings":"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","sourcesContent":["import { Env, Platform, getEnvUrls, getOidcClientId } from '../../sdk/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 return null;\n }\n\n const nonceJson: NonceResponse = await nonceResponse.json();\n return nonceJson?.nonce ?? null;\n } catch (e) {\n console.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 // eslint-disable-next-line @typescript-eslint/naming-convention\n expires_in: string;\n /**\n * Contains anonymous information about the logged in profile.\n *\n * @property identifier_id - a deterministic unique identifier on the method used to sign in\n * @property profile_id - a unique id for a given profile\n * @property metametrics_id - an anonymous server id\n */\n profile: {\n // eslint-disable-next-line @typescript-eslint/naming-convention\n identifier_id: string;\n // eslint-disable-next-line @typescript-eslint/naming-convention\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 // eslint-disable-next-line @typescript-eslint/naming-convention\n raw_message: rawMessage,\n metametrics: {\n // eslint-disable-next-line @typescript-eslint/naming-convention\n metametrics_id: clientMetaMetrics.metametricsId,\n agent: clientMetaMetrics.agent,\n },\n }),\n });\n\n if (!response.ok) {\n return null;\n }\n\n const loginResponse: LoginResponse = await response.json();\n return loginResponse ?? null;\n } catch (e) {\n console.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 // eslint-disable-next-line @typescript-eslint/naming-convention\n access_token: string;\n // eslint-disable-next-line @typescript-eslint/naming-convention\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 return null;\n }\n\n const accessTokenResponse: OAuthTokenResponse = await response.json();\n return accessTokenResponse?.access_token ?? null;\n } catch (e) {\n console.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"]}
@@ -67,4 +67,4 @@ export declare function getAccessToken(jwtToken: string, platform: ClientMetaMet
67
67
  */
68
68
  export declare function createLoginRawMessage(nonce: string, publicKey: string): `metamask:${string}:${string}`;
69
69
  export {};
70
- //# sourceMappingURL=services.d.ts.map
70
+ //# sourceMappingURL=services.d.cts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"services.d.cts","sourceRoot":"","sources":["../../../src/controllers/authentication/services.ts"],"names":[],"mappings":"AAKA,eAAO,MAAM,mBAAmB,QAAkC,CAAC;AACnE,eAAO,MAAM,mBAAmB,QAAsC,CAAC;AAGvE,eAAO,MAAM,oBAAoB,QAAkC,CAAC;AAapE,MAAM,MAAM,aAAa,GAAG;IAC1B,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AAEF;;;;;GAKG;AACH,wBAAsB,QAAQ,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAgBxE;AAED;;GAEG;AACH,MAAM,MAAM,aAAa,GAAG;IAC1B,KAAK,EAAE,MAAM,CAAC;IAEd,UAAU,EAAE,MAAM,CAAC;IACnB;;;;;;OAMG;IACH,OAAO,EAAE;QAEP,aAAa,EAAE,MAAM,CAAC;QAEtB,UAAU,EAAE,MAAM,CAAC;KACpB,CAAC;CACH,CAAC;AAEF,KAAK,iBAAiB,GAAG;IACvB,aAAa,EAAE,MAAM,CAAC;IACtB,KAAK,EAAE,WAAW,GAAG,QAAQ,CAAC;CAC/B,CAAC;AAEF;;;;;;;GAOG;AACH,wBAAsB,KAAK,CACzB,UAAU,EAAE,MAAM,EAClB,SAAS,EAAE,MAAM,EACjB,iBAAiB,EAAE,iBAAiB,GACnC,OAAO,CAAC,aAAa,GAAG,IAAI,CAAC,CA6B/B;AAED;;GAEG;AACH,MAAM,MAAM,kBAAkB,GAAG;IAE/B,YAAY,EAAE,MAAM,CAAC;IAErB,UAAU,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF;;;;;;;GAOG;AACH,wBAAsB,cAAc,CAClC,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,iBAAiB,CAAC,OAAO,CAAC,GACnC,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CA8BxB;AAED;;;;;;GAMG;AACH,wBAAgB,qBAAqB,CACnC,KAAK,EAAE,MAAM,EACb,SAAS,EAAE,MAAM,GAChB,YAAY,MAAM,IAAI,MAAM,EAAE,CAEhC"}
@@ -0,0 +1,70 @@
1
+ export declare const AUTH_NONCE_ENDPOINT: string;
2
+ export declare const AUTH_LOGIN_ENDPOINT: string;
3
+ export declare const OIDC_TOKENS_ENDPOINT: string;
4
+ export type NonceResponse = {
5
+ nonce: string;
6
+ };
7
+ /**
8
+ * Auth Service - Get Nonce. Used for the initial JWTBearer flow
9
+ *
10
+ * @param publicKey - public key to associate a nonce with
11
+ * @returns the nonce or null if failed
12
+ */
13
+ export declare function getNonce(publicKey: string): Promise<string | null>;
14
+ /**
15
+ * The Login API Server Response Shape
16
+ */
17
+ export type LoginResponse = {
18
+ token: string;
19
+ expires_in: string;
20
+ /**
21
+ * Contains anonymous information about the logged in profile.
22
+ *
23
+ * @property identifier_id - a deterministic unique identifier on the method used to sign in
24
+ * @property profile_id - a unique id for a given profile
25
+ * @property metametrics_id - an anonymous server id
26
+ */
27
+ profile: {
28
+ identifier_id: string;
29
+ profile_id: string;
30
+ };
31
+ };
32
+ type ClientMetaMetrics = {
33
+ metametricsId: string;
34
+ agent: 'extension' | 'mobile';
35
+ };
36
+ /**
37
+ * Auth Service - Login. Will perform login with a given signature and will return a single use JWT Token.
38
+ *
39
+ * @param rawMessage - the original message before signing
40
+ * @param signature - the signed message
41
+ * @param clientMetaMetrics - optional client metametrics id (to associate on backend)
42
+ * @returns The Login Response
43
+ */
44
+ export declare function login(rawMessage: string, signature: string, clientMetaMetrics: ClientMetaMetrics): Promise<LoginResponse | null>;
45
+ /**
46
+ * The Auth API Token Response Shape
47
+ */
48
+ export type OAuthTokenResponse = {
49
+ access_token: string;
50
+ expires_in: number;
51
+ };
52
+ /**
53
+ * OIDC Service - Access Token. Trades the Auth Token for an access token (to be used for other authenticated endpoints)
54
+ * NOTE - the access token is short lived, which means it is best practice to validate session before calling authenticated endpoints
55
+ *
56
+ * @param jwtToken - the JWT Auth Token, received from `/login`
57
+ * @param platform - the OIDC platform to retrieve access token
58
+ * @returns JWT Access token to store and use on authorized endpoints.
59
+ */
60
+ export declare function getAccessToken(jwtToken: string, platform: ClientMetaMetrics['agent']): Promise<string | null>;
61
+ /**
62
+ * Utility to create the raw login message for the JWT bearer flow (via SRP)
63
+ *
64
+ * @param nonce - nonce received from `/nonce` endpoint
65
+ * @param publicKey - public key used to retrieve nonce and for message signing
66
+ * @returns Raw Message which will be used for signing & logging in.
67
+ */
68
+ export declare function createLoginRawMessage(nonce: string, publicKey: string): `metamask:${string}:${string}`;
69
+ export {};
70
+ //# sourceMappingURL=services.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"services.d.mts","sourceRoot":"","sources":["../../../src/controllers/authentication/services.ts"],"names":[],"mappings":"AAKA,eAAO,MAAM,mBAAmB,QAAkC,CAAC;AACnE,eAAO,MAAM,mBAAmB,QAAsC,CAAC;AAGvE,eAAO,MAAM,oBAAoB,QAAkC,CAAC;AAapE,MAAM,MAAM,aAAa,GAAG;IAC1B,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AAEF;;;;;GAKG;AACH,wBAAsB,QAAQ,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAgBxE;AAED;;GAEG;AACH,MAAM,MAAM,aAAa,GAAG;IAC1B,KAAK,EAAE,MAAM,CAAC;IAEd,UAAU,EAAE,MAAM,CAAC;IACnB;;;;;;OAMG;IACH,OAAO,EAAE;QAEP,aAAa,EAAE,MAAM,CAAC;QAEtB,UAAU,EAAE,MAAM,CAAC;KACpB,CAAC;CACH,CAAC;AAEF,KAAK,iBAAiB,GAAG;IACvB,aAAa,EAAE,MAAM,CAAC;IACtB,KAAK,EAAE,WAAW,GAAG,QAAQ,CAAC;CAC/B,CAAC;AAEF;;;;;;;GAOG;AACH,wBAAsB,KAAK,CACzB,UAAU,EAAE,MAAM,EAClB,SAAS,EAAE,MAAM,EACjB,iBAAiB,EAAE,iBAAiB,GACnC,OAAO,CAAC,aAAa,GAAG,IAAI,CAAC,CA6B/B;AAED;;GAEG;AACH,MAAM,MAAM,kBAAkB,GAAG;IAE/B,YAAY,EAAE,MAAM,CAAC;IAErB,UAAU,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF;;;;;;;GAOG;AACH,wBAAsB,cAAc,CAClC,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,iBAAiB,CAAC,OAAO,CAAC,GACnC,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CA8BxB;AAED;;;;;;GAMG;AACH,wBAAgB,qBAAqB,CACnC,KAAK,EAAE,MAAM,EACb,SAAS,EAAE,MAAM,GAChB,YAAY,MAAM,IAAI,MAAM,EAAE,CAEhC"}
@@ -1,21 +1,120 @@
1
- import {
2
- AUTH_LOGIN_ENDPOINT,
3
- AUTH_NONCE_ENDPOINT,
4
- OIDC_TOKENS_ENDPOINT,
5
- createLoginRawMessage,
6
- getAccessToken,
7
- getNonce,
8
- login
9
- } from "../../chunk-LGXQBALM.mjs";
10
- import "../../chunk-KTCSRECK.mjs";
11
- import "../../chunk-U5UIDVOO.mjs";
12
- export {
13
- AUTH_LOGIN_ENDPOINT,
14
- AUTH_NONCE_ENDPOINT,
15
- OIDC_TOKENS_ENDPOINT,
16
- createLoginRawMessage,
17
- getAccessToken,
18
- getNonce,
19
- login
1
+ import { Env, Platform, getEnvUrls, getOidcClientId } from "../../sdk/env.mjs";
2
+ const ENV_URLS = getEnvUrls(Env.PRD);
3
+ const AUTH_ENDPOINT = ENV_URLS.authApiUrl;
4
+ export const AUTH_NONCE_ENDPOINT = `${AUTH_ENDPOINT}/api/v2/nonce`;
5
+ export const AUTH_LOGIN_ENDPOINT = `${AUTH_ENDPOINT}/api/v2/srp/login`;
6
+ const OIDC_ENDPOINT = ENV_URLS.oidcApiUrl || '';
7
+ export const OIDC_TOKENS_ENDPOINT = `${OIDC_ENDPOINT}/oauth2/token`;
8
+ const OIDC_CLIENT_ID = (platform) => {
9
+ if (platform === 'extension') {
10
+ return getOidcClientId(Env.PRD, Platform.EXTENSION);
11
+ }
12
+ if (platform === 'mobile') {
13
+ return getOidcClientId(Env.PRD, Platform.MOBILE);
14
+ }
15
+ throw new Error(`Unsupported platform - ${platform}`);
20
16
  };
17
+ const OIDC_GRANT_TYPE = 'urn:ietf:params:oauth:grant-type:jwt-bearer';
18
+ /**
19
+ * Auth Service - Get Nonce. Used for the initial JWTBearer flow
20
+ *
21
+ * @param publicKey - public key to associate a nonce with
22
+ * @returns the nonce or null if failed
23
+ */
24
+ export async function getNonce(publicKey) {
25
+ const nonceUrl = new URL(AUTH_NONCE_ENDPOINT);
26
+ nonceUrl.searchParams.set('identifier', publicKey);
27
+ try {
28
+ const nonceResponse = await fetch(nonceUrl.toString());
29
+ if (!nonceResponse.ok) {
30
+ return null;
31
+ }
32
+ const nonceJson = await nonceResponse.json();
33
+ return nonceJson?.nonce ?? null;
34
+ }
35
+ catch (e) {
36
+ console.error('authentication-controller/services: unable to get nonce', e);
37
+ return null;
38
+ }
39
+ }
40
+ /**
41
+ * Auth Service - Login. Will perform login with a given signature and will return a single use JWT Token.
42
+ *
43
+ * @param rawMessage - the original message before signing
44
+ * @param signature - the signed message
45
+ * @param clientMetaMetrics - optional client metametrics id (to associate on backend)
46
+ * @returns The Login Response
47
+ */
48
+ export async function login(rawMessage, signature, clientMetaMetrics) {
49
+ try {
50
+ const response = await fetch(AUTH_LOGIN_ENDPOINT, {
51
+ method: 'POST',
52
+ headers: {
53
+ 'Content-Type': 'application/json',
54
+ },
55
+ body: JSON.stringify({
56
+ signature,
57
+ // eslint-disable-next-line @typescript-eslint/naming-convention
58
+ raw_message: rawMessage,
59
+ metametrics: {
60
+ // eslint-disable-next-line @typescript-eslint/naming-convention
61
+ metametrics_id: clientMetaMetrics.metametricsId,
62
+ agent: clientMetaMetrics.agent,
63
+ },
64
+ }),
65
+ });
66
+ if (!response.ok) {
67
+ return null;
68
+ }
69
+ const loginResponse = await response.json();
70
+ return loginResponse ?? null;
71
+ }
72
+ catch (e) {
73
+ console.error('authentication-controller/services: unable to login', e);
74
+ return null;
75
+ }
76
+ }
77
+ /**
78
+ * OIDC Service - Access Token. Trades the Auth Token for an access token (to be used for other authenticated endpoints)
79
+ * NOTE - the access token is short lived, which means it is best practice to validate session before calling authenticated endpoints
80
+ *
81
+ * @param jwtToken - the JWT Auth Token, received from `/login`
82
+ * @param platform - the OIDC platform to retrieve access token
83
+ * @returns JWT Access token to store and use on authorized endpoints.
84
+ */
85
+ export async function getAccessToken(jwtToken, platform) {
86
+ const headers = new Headers({
87
+ 'Content-Type': 'application/x-www-form-urlencoded',
88
+ });
89
+ const urlEncodedBody = new URLSearchParams();
90
+ urlEncodedBody.append('grant_type', OIDC_GRANT_TYPE);
91
+ urlEncodedBody.append('client_id', OIDC_CLIENT_ID(platform));
92
+ urlEncodedBody.append('assertion', jwtToken);
93
+ try {
94
+ const response = await fetch(OIDC_TOKENS_ENDPOINT, {
95
+ method: 'POST',
96
+ headers,
97
+ body: urlEncodedBody.toString(),
98
+ });
99
+ if (!response.ok) {
100
+ return null;
101
+ }
102
+ const accessTokenResponse = await response.json();
103
+ return accessTokenResponse?.access_token ?? null;
104
+ }
105
+ catch (e) {
106
+ console.error('authentication-controller/services: unable to get access token', e);
107
+ return null;
108
+ }
109
+ }
110
+ /**
111
+ * Utility to create the raw login message for the JWT bearer flow (via SRP)
112
+ *
113
+ * @param nonce - nonce received from `/nonce` endpoint
114
+ * @param publicKey - public key used to retrieve nonce and for message signing
115
+ * @returns Raw Message which will be used for signing & logging in.
116
+ */
117
+ export function createLoginRawMessage(nonce, publicKey) {
118
+ return `metamask:${nonce}:${publicKey}`;
119
+ }
21
120
  //# sourceMappingURL=services.mjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
1
+ {"version":3,"file":"services.mjs","sourceRoot":"","sources":["../../../src/controllers/authentication/services.ts"],"names":[],"mappings":"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","sourcesContent":["import { Env, Platform, getEnvUrls, getOidcClientId } from '../../sdk/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 return null;\n }\n\n const nonceJson: NonceResponse = await nonceResponse.json();\n return nonceJson?.nonce ?? null;\n } catch (e) {\n console.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 // eslint-disable-next-line @typescript-eslint/naming-convention\n expires_in: string;\n /**\n * Contains anonymous information about the logged in profile.\n *\n * @property identifier_id - a deterministic unique identifier on the method used to sign in\n * @property profile_id - a unique id for a given profile\n * @property metametrics_id - an anonymous server id\n */\n profile: {\n // eslint-disable-next-line @typescript-eslint/naming-convention\n identifier_id: string;\n // eslint-disable-next-line @typescript-eslint/naming-convention\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 // eslint-disable-next-line @typescript-eslint/naming-convention\n raw_message: rawMessage,\n metametrics: {\n // eslint-disable-next-line @typescript-eslint/naming-convention\n metametrics_id: clientMetaMetrics.metametricsId,\n agent: clientMetaMetrics.agent,\n },\n }),\n });\n\n if (!response.ok) {\n return null;\n }\n\n const loginResponse: LoginResponse = await response.json();\n return loginResponse ?? null;\n } catch (e) {\n console.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 // eslint-disable-next-line @typescript-eslint/naming-convention\n access_token: string;\n // eslint-disable-next-line @typescript-eslint/naming-convention\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 return null;\n }\n\n const accessTokenResponse: OAuthTokenResponse = await response.json();\n return accessTokenResponse?.access_token ?? null;\n } catch (e) {\n console.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"]}