@metamask/profile-sync-controller 0.1.0 → 0.1.2

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 (167) hide show
  1. package/CHANGELOG.md +24 -1
  2. package/dist/{chunk-DHHBHLVN.mjs → chunk-2XGRQBXI.mjs} +4 -4
  3. package/dist/{chunk-2MVOZPBN.js → chunk-5C53GKTU.js} +14 -6
  4. package/dist/chunk-5C53GKTU.js.map +1 -0
  5. package/dist/{chunk-K6G7X6PX.js → chunk-5SXXO4MV.js} +9 -9
  6. package/dist/{chunk-BFE6TB7Y.mjs → chunk-5TOWF6UW.mjs} +2 -2
  7. package/dist/{chunk-W7JFFMEZ.mjs → chunk-7SW3CC66.mjs} +13 -5
  8. package/dist/chunk-7SW3CC66.mjs.map +1 -0
  9. package/dist/{chunk-JTDFOATG.js → chunk-AK7OTIWA.js} +3 -3
  10. package/dist/{chunk-772MKTIO.mjs → chunk-AUFUOKJW.mjs} +2 -2
  11. package/dist/{chunk-6TK7544L.js → chunk-AVOOINGJ.js} +27 -27
  12. package/dist/{chunk-UEZI2POO.mjs → chunk-AXWK4Y23.mjs} +4 -4
  13. package/dist/{chunk-VTM5T7Y4.mjs → chunk-B5DBQDB3.mjs} +2 -2
  14. package/dist/{chunk-7FCK4BY3.js → chunk-B6CSNLGE.js} +3 -3
  15. package/dist/{chunk-XUPRRLBI.js → chunk-BOET676P.js} +8 -8
  16. package/dist/{chunk-YWA77VMP.mjs → chunk-CAIIVJAO.mjs} +1 -1
  17. package/dist/chunk-CAIIVJAO.mjs.map +1 -0
  18. package/dist/{chunk-3FJQHCCQ.mjs → chunk-FCT2LIGH.mjs} +5 -5
  19. package/dist/{chunk-GLS4QZF6.mjs → chunk-FQ5SDMRE.mjs} +1 -1
  20. package/dist/chunk-FQ5SDMRE.mjs.map +1 -0
  21. package/dist/{chunk-BVM4HBM4.js → chunk-FRVMGTOY.js} +13 -39
  22. package/dist/chunk-FRVMGTOY.js.map +1 -0
  23. package/dist/{chunk-WAS6V24H.js → chunk-GWBBZZVV.js} +39 -30
  24. package/dist/chunk-GWBBZZVV.js.map +1 -0
  25. package/dist/chunk-H4TDS65R.js +81 -0
  26. package/dist/chunk-H4TDS65R.js.map +1 -0
  27. package/dist/chunk-IGY2S5BC.js +36 -0
  28. package/dist/{chunk-UWRKMJBI.mjs → chunk-JLDFMYAH.mjs} +3 -3
  29. package/dist/{chunk-QE2F5AZL.mjs → chunk-K5UKU454.mjs} +2 -2
  30. package/dist/{chunk-QHL6SQTC.mjs → chunk-KKB3U6KO.mjs} +10 -36
  31. package/dist/chunk-KKB3U6KO.mjs.map +1 -0
  32. package/dist/{chunk-JAGWB4JI.mjs → chunk-LSVRA3X2.mjs} +13 -34
  33. package/dist/chunk-LSVRA3X2.mjs.map +1 -0
  34. package/dist/{chunk-DLXLU44Z.js → chunk-NLHLVVOO.js} +21 -21
  35. package/dist/{chunk-GLDUXN2T.js → chunk-P4DUDLMY.js} +24 -24
  36. package/dist/{chunk-LUKNP4HM.js → chunk-P52TG263.js} +19 -19
  37. package/dist/{chunk-T77FC4PB.js → chunk-PBRUOBEQ.js} +1 -1
  38. package/dist/chunk-PBRUOBEQ.js.map +1 -0
  39. package/dist/chunk-PTR4DAX6.js +79 -0
  40. package/dist/{chunk-LHDVZNW5.js → chunk-Q5WIUNX5.js} +37 -37
  41. package/dist/{chunk-PRDECQM6.mjs → chunk-QU3RCIV3.mjs} +15 -6
  42. package/dist/chunk-QU3RCIV3.mjs.map +1 -0
  43. package/dist/{chunk-4OMJ7A6A.js → chunk-SMKTWM6I.js} +1 -1
  44. package/dist/chunk-SMKTWM6I.js.map +1 -0
  45. package/dist/{chunk-JWTNHCVG.js → chunk-T3FNDVE3.js} +13 -13
  46. package/dist/{chunk-PNZGAAT4.mjs → chunk-TGFMKARH.mjs} +5 -4
  47. package/dist/chunk-TGFMKARH.mjs.map +1 -0
  48. package/dist/chunk-U5UIDVOO.mjs +36 -0
  49. package/dist/{chunk-7VMXBDXN.mjs → chunk-WB6MUIML.mjs} +2 -2
  50. package/dist/{chunk-IZHWP5VW.mjs → chunk-WJCKQLKK.mjs} +9 -9
  51. package/dist/{chunk-LN2BY2QF.mjs → chunk-Y46NMA3V.mjs} +3 -3
  52. package/dist/{chunk-ARWL2LBB.js → chunk-YASNOFBV.js} +38 -37
  53. package/dist/chunk-YASNOFBV.js.map +1 -0
  54. package/dist/controllers/authentication/AuthenticationController.js +15 -13
  55. package/dist/controllers/authentication/AuthenticationController.mjs +16 -14
  56. package/dist/controllers/authentication/auth-snap-requests.js +1 -1
  57. package/dist/controllers/authentication/auth-snap-requests.mjs +1 -1
  58. package/dist/controllers/authentication/index.js +16 -15
  59. package/dist/controllers/authentication/index.mjs +17 -16
  60. package/dist/controllers/authentication/services.js +12 -12
  61. package/dist/controllers/authentication/services.mjs +11 -11
  62. package/dist/controllers/index.js +20 -21
  63. package/dist/controllers/index.mjs +19 -20
  64. package/dist/controllers/user-storage/UserStorageController.js +18 -16
  65. package/dist/controllers/user-storage/UserStorageController.mjs +19 -17
  66. package/dist/controllers/user-storage/encryption/cache.js +1 -1
  67. package/dist/controllers/user-storage/encryption/cache.mjs +1 -1
  68. package/dist/controllers/user-storage/encryption/encryption.js +3 -3
  69. package/dist/controllers/user-storage/encryption/encryption.mjs +2 -2
  70. package/dist/controllers/user-storage/encryption/index.js +4 -4
  71. package/dist/controllers/user-storage/encryption/index.mjs +3 -3
  72. package/dist/controllers/user-storage/encryption/utils.js +1 -1
  73. package/dist/controllers/user-storage/encryption/utils.mjs +1 -1
  74. package/dist/controllers/user-storage/index.js +19 -18
  75. package/dist/controllers/user-storage/index.mjs +20 -19
  76. package/dist/controllers/user-storage/schema.js +5 -5
  77. package/dist/controllers/user-storage/schema.mjs +4 -4
  78. package/dist/controllers/user-storage/services.js +15 -15
  79. package/dist/controllers/user-storage/services.mjs +14 -14
  80. package/dist/index.js +20 -21
  81. package/dist/index.mjs +19 -20
  82. package/dist/sdk/authentication-jwt-bearer/flow-siwe.js +6 -6
  83. package/dist/sdk/authentication-jwt-bearer/flow-siwe.mjs +5 -5
  84. package/dist/sdk/authentication-jwt-bearer/flow-srp.js +6 -6
  85. package/dist/sdk/authentication-jwt-bearer/flow-srp.mjs +5 -5
  86. package/dist/sdk/authentication-jwt-bearer/services.js +5 -5
  87. package/dist/sdk/authentication-jwt-bearer/services.mjs +4 -4
  88. package/dist/sdk/authentication-jwt-bearer/types.js +3 -3
  89. package/dist/sdk/authentication-jwt-bearer/types.mjs +2 -2
  90. package/dist/sdk/authentication.js +8 -8
  91. package/dist/sdk/authentication.mjs +7 -7
  92. package/dist/sdk/encryption.js +3 -3
  93. package/dist/sdk/encryption.mjs +2 -2
  94. package/dist/sdk/env.js +3 -3
  95. package/dist/sdk/env.mjs +2 -2
  96. package/dist/sdk/errors.js +1 -1
  97. package/dist/sdk/errors.mjs +1 -1
  98. package/dist/sdk/index.js +11 -11
  99. package/dist/sdk/index.mjs +10 -10
  100. package/dist/sdk/user-storage.js +5 -5
  101. package/dist/sdk/user-storage.mjs +4 -4
  102. package/dist/sdk/utils/eip-6963-metamask-provider.js +1 -1
  103. package/dist/sdk/utils/eip-6963-metamask-provider.mjs +1 -1
  104. package/dist/sdk/utils/messaging-signing-snap-requests.js +1 -1
  105. package/dist/sdk/utils/messaging-signing-snap-requests.mjs +1 -1
  106. package/dist/tsconfig.build.tsbuildinfo +1 -1
  107. package/dist/types/controllers/authentication/AuthenticationController.d.ts +2 -1
  108. package/dist/types/controllers/authentication/AuthenticationController.d.ts.map +1 -1
  109. package/dist/types/controllers/authentication/__fixtures__/index.d.ts +0 -1
  110. package/dist/types/controllers/authentication/__fixtures__/index.d.ts.map +1 -1
  111. package/dist/types/controllers/authentication/services.d.ts +2 -1
  112. package/dist/types/controllers/authentication/services.d.ts.map +1 -1
  113. package/dist/types/controllers/user-storage/UserStorageController.d.ts +1 -0
  114. package/dist/types/controllers/user-storage/UserStorageController.d.ts.map +1 -1
  115. package/dist/types/controllers/user-storage/__fixtures__/index.d.ts +0 -1
  116. package/dist/types/controllers/user-storage/__fixtures__/index.d.ts.map +1 -1
  117. package/dist/types/sdk/authentication-jwt-bearer/types.d.ts +1 -1
  118. package/dist/types/sdk/authentication-jwt-bearer/types.d.ts.map +1 -1
  119. package/dist/types/sdk/env.d.ts +2 -2
  120. package/dist/types/sdk/env.d.ts.map +1 -1
  121. package/package.json +1 -1
  122. package/dist/chunk-26CCETCM.mjs +0 -70
  123. package/dist/chunk-2MVOZPBN.js.map +0 -1
  124. package/dist/chunk-4OMJ7A6A.js.map +0 -1
  125. package/dist/chunk-ARWL2LBB.js.map +0 -1
  126. package/dist/chunk-BVM4HBM4.js.map +0 -1
  127. package/dist/chunk-GJJT2CAL.js +0 -3342
  128. package/dist/chunk-GJJT2CAL.js.map +0 -1
  129. package/dist/chunk-GLS4QZF6.mjs.map +0 -1
  130. package/dist/chunk-JAGWB4JI.mjs.map +0 -1
  131. package/dist/chunk-JMU3OVPK.mjs +0 -3342
  132. package/dist/chunk-JMU3OVPK.mjs.map +0 -1
  133. package/dist/chunk-PNZGAAT4.mjs.map +0 -1
  134. package/dist/chunk-PRDECQM6.mjs.map +0 -1
  135. package/dist/chunk-QHL6SQTC.mjs.map +0 -1
  136. package/dist/chunk-QILE6KIE.js +0 -79
  137. package/dist/chunk-T77FC4PB.js.map +0 -1
  138. package/dist/chunk-V46WVGWN.js +0 -70
  139. package/dist/chunk-VYE2DKST.js +0 -102
  140. package/dist/chunk-VYE2DKST.js.map +0 -1
  141. package/dist/chunk-W7JFFMEZ.mjs.map +0 -1
  142. package/dist/chunk-WAS6V24H.js.map +0 -1
  143. package/dist/chunk-YWA77VMP.mjs.map +0 -1
  144. /package/dist/{chunk-DHHBHLVN.mjs.map → chunk-2XGRQBXI.mjs.map} +0 -0
  145. /package/dist/{chunk-K6G7X6PX.js.map → chunk-5SXXO4MV.js.map} +0 -0
  146. /package/dist/{chunk-BFE6TB7Y.mjs.map → chunk-5TOWF6UW.mjs.map} +0 -0
  147. /package/dist/{chunk-JTDFOATG.js.map → chunk-AK7OTIWA.js.map} +0 -0
  148. /package/dist/{chunk-772MKTIO.mjs.map → chunk-AUFUOKJW.mjs.map} +0 -0
  149. /package/dist/{chunk-6TK7544L.js.map → chunk-AVOOINGJ.js.map} +0 -0
  150. /package/dist/{chunk-UEZI2POO.mjs.map → chunk-AXWK4Y23.mjs.map} +0 -0
  151. /package/dist/{chunk-VTM5T7Y4.mjs.map → chunk-B5DBQDB3.mjs.map} +0 -0
  152. /package/dist/{chunk-7FCK4BY3.js.map → chunk-B6CSNLGE.js.map} +0 -0
  153. /package/dist/{chunk-XUPRRLBI.js.map → chunk-BOET676P.js.map} +0 -0
  154. /package/dist/{chunk-3FJQHCCQ.mjs.map → chunk-FCT2LIGH.mjs.map} +0 -0
  155. /package/dist/{chunk-V46WVGWN.js.map → chunk-IGY2S5BC.js.map} +0 -0
  156. /package/dist/{chunk-UWRKMJBI.mjs.map → chunk-JLDFMYAH.mjs.map} +0 -0
  157. /package/dist/{chunk-QE2F5AZL.mjs.map → chunk-K5UKU454.mjs.map} +0 -0
  158. /package/dist/{chunk-DLXLU44Z.js.map → chunk-NLHLVVOO.js.map} +0 -0
  159. /package/dist/{chunk-GLDUXN2T.js.map → chunk-P4DUDLMY.js.map} +0 -0
  160. /package/dist/{chunk-LUKNP4HM.js.map → chunk-P52TG263.js.map} +0 -0
  161. /package/dist/{chunk-QILE6KIE.js.map → chunk-PTR4DAX6.js.map} +0 -0
  162. /package/dist/{chunk-LHDVZNW5.js.map → chunk-Q5WIUNX5.js.map} +0 -0
  163. /package/dist/{chunk-JWTNHCVG.js.map → chunk-T3FNDVE3.js.map} +0 -0
  164. /package/dist/{chunk-26CCETCM.mjs.map → chunk-U5UIDVOO.mjs.map} +0 -0
  165. /package/dist/{chunk-7VMXBDXN.mjs.map → chunk-WB6MUIML.mjs.map} +0 -0
  166. /package/dist/{chunk-IZHWP5VW.mjs.map → chunk-WJCKQLKK.mjs.map} +0 -0
  167. /package/dist/{chunk-LN2BY2QF.mjs.map → chunk-Y46NMA3V.mjs.map} +0 -0
package/CHANGELOG.md CHANGED
@@ -7,11 +7,34 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
7
7
 
8
8
  ## [Unreleased]
9
9
 
10
+ ## [0.1.2]
11
+
12
+ ### Added
13
+
14
+ - added platform field when logging in to receive correct OIDC access token ([#4480](https://github.com/MetaMask/core/pull/4480))
15
+ - added metametrics validation in constructor ([#4480](https://github.com/MetaMask/core/pull/4480))
16
+
17
+ ### Changed
18
+
19
+ - updated the `getMetaMetricsId` interface to support async calls to metametrics ID ([#4477](https://github.com/MetaMask/core/pull/4477))
20
+
21
+ ## [0.1.1]
22
+
23
+ ### Added
24
+
25
+ - export `defaultState` for `AuthenticationController` and `UserStorageController`. ([#4441](https://github.com/MetaMask/core/pull/4441))
26
+
27
+ ### Changed
28
+
29
+ - `AuthType`, `Env`, `Platform` are changed from const enums to enums ([#4441](https://github.com/MetaMask/core/pull/4441))
30
+
10
31
  ## [0.1.0]
11
32
 
12
33
  ### Added
13
34
 
14
35
  - Initial release
15
36
 
16
- [Unreleased]: https://github.com/MetaMask/core/compare/@metamask/profile-sync-controller@0.1.0...HEAD
37
+ [Unreleased]: https://github.com/MetaMask/core/compare/@metamask/profile-sync-controller@0.1.2...HEAD
38
+ [0.1.2]: https://github.com/MetaMask/core/compare/@metamask/profile-sync-controller@0.1.1...@metamask/profile-sync-controller@0.1.2
39
+ [0.1.1]: https://github.com/MetaMask/core/compare/@metamask/profile-sync-controller@0.1.0...@metamask/profile-sync-controller@0.1.1
17
40
  [0.1.0]: https://github.com/MetaMask/core/releases/tag/@metamask/profile-sync-controller@0.1.0
@@ -1,12 +1,12 @@
1
1
  import {
2
2
  createEntryPath
3
- } from "./chunk-772MKTIO.mjs";
3
+ } from "./chunk-AUFUOKJW.mjs";
4
4
  import {
5
5
  encryption_default
6
- } from "./chunk-BFE6TB7Y.mjs";
6
+ } from "./chunk-5TOWF6UW.mjs";
7
7
  import {
8
8
  getEnvUrls
9
- } from "./chunk-GLS4QZF6.mjs";
9
+ } from "./chunk-FQ5SDMRE.mjs";
10
10
 
11
11
  // src/controllers/user-storage/services.ts
12
12
  import log from "loglevel";
@@ -67,4 +67,4 @@ export {
67
67
  getUserStorage,
68
68
  upsertUserStorage
69
69
  };
70
- //# sourceMappingURL=chunk-DHHBHLVN.mjs.map
70
+ //# sourceMappingURL=chunk-2XGRQBXI.mjs.map
@@ -1,16 +1,24 @@
1
1
  "use strict";Object.defineProperty(exports, "__esModule", {value: true});
2
2
 
3
3
 
4
- var _chunk4OMJ7A6Ajs = require('./chunk-4OMJ7A6A.js');
4
+ var _chunkSMKTWM6Ijs = require('./chunk-SMKTWM6I.js');
5
5
 
6
6
  // src/controllers/authentication/services.ts
7
- var ENV_URLS = _chunk4OMJ7A6Ajs.getEnvUrls.call(void 0, "prd" /* PRD */);
7
+ var ENV_URLS = _chunkSMKTWM6Ijs.getEnvUrls.call(void 0, "prd" /* PRD */);
8
8
  var AUTH_ENDPOINT = ENV_URLS.authApiUrl;
9
9
  var AUTH_NONCE_ENDPOINT = `${AUTH_ENDPOINT}/api/v2/nonce`;
10
10
  var AUTH_LOGIN_ENDPOINT = `${AUTH_ENDPOINT}/api/v2/srp/login`;
11
11
  var OIDC_ENDPOINT = ENV_URLS.oidcApiUrl || "";
12
12
  var OIDC_TOKENS_ENDPOINT = `${OIDC_ENDPOINT}/oauth2/token`;
13
- var OIDC_CLIENT_ID = _chunk4OMJ7A6Ajs.getOidcClientId.call(void 0, "prd" /* PRD */, "extension" /* EXTENSION */);
13
+ var OIDC_CLIENT_ID = (platform) => {
14
+ if (platform === "extension") {
15
+ return _chunkSMKTWM6Ijs.getOidcClientId.call(void 0, "prd" /* PRD */, "extension" /* EXTENSION */);
16
+ }
17
+ if (platform === "mobile") {
18
+ return _chunkSMKTWM6Ijs.getOidcClientId.call(void 0, "prd" /* PRD */, "mobile" /* MOBILE */);
19
+ }
20
+ throw new Error(`Unsupported platform - ${platform}`);
21
+ };
14
22
  var OIDC_GRANT_TYPE = "urn:ietf:params:oauth:grant-type:jwt-bearer";
15
23
  async function getNonce(publicKey) {
16
24
  const nonceUrl = new URL(AUTH_NONCE_ENDPOINT);
@@ -55,13 +63,13 @@ async function login(rawMessage, signature, clientMetaMetrics) {
55
63
  return null;
56
64
  }
57
65
  }
58
- async function getAccessToken(jwtToken) {
66
+ async function getAccessToken(jwtToken, platform) {
59
67
  const headers = new Headers({
60
68
  "Content-Type": "application/x-www-form-urlencoded"
61
69
  });
62
70
  const urlEncodedBody = new URLSearchParams();
63
71
  urlEncodedBody.append("grant_type", OIDC_GRANT_TYPE);
64
- urlEncodedBody.append("client_id", OIDC_CLIENT_ID);
72
+ urlEncodedBody.append("client_id", OIDC_CLIENT_ID(platform));
65
73
  urlEncodedBody.append("assertion", jwtToken);
66
74
  try {
67
75
  const response = await fetch(OIDC_TOKENS_ENDPOINT, {
@@ -95,4 +103,4 @@ function createLoginRawMessage(nonce, publicKey) {
95
103
 
96
104
 
97
105
  exports.AUTH_NONCE_ENDPOINT = AUTH_NONCE_ENDPOINT; exports.AUTH_LOGIN_ENDPOINT = AUTH_LOGIN_ENDPOINT; exports.OIDC_TOKENS_ENDPOINT = OIDC_TOKENS_ENDPOINT; exports.getNonce = getNonce; exports.login = login; exports.getAccessToken = getAccessToken; exports.createLoginRawMessage = createLoginRawMessage;
98
- //# sourceMappingURL=chunk-2MVOZPBN.js.map
106
+ //# sourceMappingURL=chunk-5C53GKTU.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/controllers/authentication/services.ts"],"names":[],"mappings":";;;;;;AAEA,IAAM,WAAW,0BAAkB;AAEnC,IAAM,gBAAwB,SAAS;AAChC,IAAM,sBAAsB,GAAG,aAAa;AAC5C,IAAM,sBAAsB,GAAG,aAAa;AAEnD,IAAM,gBAAwB,SAAS,cAAc;AAC9C,IAAM,uBAAuB,GAAG,aAAa;AACpD,IAAM,iBAAiB,CAAC,aAAqC;AAC3D,MAAI,aAAa,aAAa;AAC5B,WAAO,4DAA2C;AAAA,EACpD;AACA,MAAI,aAAa,UAAU;AACzB,WAAO,sDAAwC;AAAA,EACjD;AAEA,QAAM,IAAI,MAAM,0BAA0B,QAAkB,EAAE;AAChE;AACA,IAAM,kBAAkB;AAYxB,eAAsB,SAAS,WAA2C;AACxE,QAAM,WAAW,IAAI,IAAI,mBAAmB;AAC5C,WAAS,aAAa,IAAI,cAAc,SAAS;AAEjD,MAAI;AACF,UAAM,gBAAgB,MAAM,MAAM,SAAS,SAAS,CAAC;AACrD,QAAI,CAAC,cAAc,IAAI;AACrB,aAAO;AAAA,IACT;AAEA,UAAM,YAA2B,MAAM,cAAc,KAAK;AAC1D,WAAO,WAAW,SAAS;AAAA,EAC7B,SAAS,GAAG;AACV,YAAQ,MAAM,2DAA2D,CAAC;AAC1E,WAAO;AAAA,EACT;AACF;AAqCA,eAAsB,MACpB,YACA,WACA,mBAC+B;AAC/B,MAAI;AACF,UAAM,WAAW,MAAM,MAAM,qBAAqB;AAAA,MAChD,QAAQ;AAAA,MACR,SAAS;AAAA,QACP,gBAAgB;AAAA,MAClB;AAAA,MACA,MAAM,KAAK,UAAU;AAAA,QACnB;AAAA;AAAA,QAEA,aAAa;AAAA,QACb,aAAa;AAAA;AAAA,UAEX,gBAAgB,kBAAkB;AAAA,UAClC,OAAO,kBAAkB;AAAA,QAC3B;AAAA,MACF,CAAC;AAAA,IACH,CAAC;AAED,QAAI,CAAC,SAAS,IAAI;AAChB,aAAO;AAAA,IACT;AAEA,UAAM,gBAA+B,MAAM,SAAS,KAAK;AACzD,WAAO,iBAAiB;AAAA,EAC1B,SAAS,GAAG;AACV,YAAQ,MAAM,uDAAuD,CAAC;AACtE,WAAO;AAAA,EACT;AACF;AAoBA,eAAsB,eACpB,UACA,UACwB;AACxB,QAAM,UAAU,IAAI,QAAQ;AAAA,IAC1B,gBAAgB;AAAA,EAClB,CAAC;AAED,QAAM,iBAAiB,IAAI,gBAAgB;AAC3C,iBAAe,OAAO,cAAc,eAAe;AACnD,iBAAe,OAAO,aAAa,eAAe,QAAQ,CAAC;AAC3D,iBAAe,OAAO,aAAa,QAAQ;AAE3C,MAAI;AACF,UAAM,WAAW,MAAM,MAAM,sBAAsB;AAAA,MACjD,QAAQ;AAAA,MACR;AAAA,MACA,MAAM,eAAe,SAAS;AAAA,IAChC,CAAC;AAED,QAAI,CAAC,SAAS,IAAI;AAChB,aAAO;AAAA,IACT;AAEA,UAAM,sBAA0C,MAAM,SAAS,KAAK;AACpE,WAAO,qBAAqB,gBAAgB;AAAA,EAC9C,SAAS,GAAG;AACV,YAAQ;AAAA,MACN;AAAA,MACA;AAAA,IACF;AACA,WAAO;AAAA,EACT;AACF;AASO,SAAS,sBACd,OACA,WACgC;AAChC,SAAO,YAAY,KAAK,IAAI,SAAS;AACvC","sourcesContent":["import { Env, Platform, getEnvUrls, getOidcClientId } from '../../sdk';\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"]}
@@ -1,21 +1,21 @@
1
1
  "use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
2
2
 
3
- var _chunk7FCK4BY3js = require('./chunk-7FCK4BY3.js');
3
+ var _chunkB6CSNLGEjs = require('./chunk-B6CSNLGE.js');
4
4
 
5
5
 
6
- var _chunkJTDFOATGjs = require('./chunk-JTDFOATG.js');
6
+ var _chunkAK7OTIWAjs = require('./chunk-AK7OTIWA.js');
7
7
 
8
8
 
9
- var _chunk4OMJ7A6Ajs = require('./chunk-4OMJ7A6A.js');
9
+ var _chunkSMKTWM6Ijs = require('./chunk-SMKTWM6I.js');
10
10
 
11
11
  // src/controllers/user-storage/services.ts
12
12
  var _loglevel = require('loglevel'); var _loglevel2 = _interopRequireDefault(_loglevel);
13
- var ENV_URLS = _chunk4OMJ7A6Ajs.getEnvUrls.call(void 0, "prd" /* PRD */);
13
+ var ENV_URLS = _chunkSMKTWM6Ijs.getEnvUrls.call(void 0, "prd" /* PRD */);
14
14
  var USER_STORAGE_API = ENV_URLS.userStorageApiUrl;
15
15
  var USER_STORAGE_ENDPOINT = `${USER_STORAGE_API}/api/v1/userstorage`;
16
16
  async function getUserStorage(opts) {
17
17
  try {
18
- const path = _chunk7FCK4BY3js.createEntryPath.call(void 0, opts.entryKey, opts.storageKey);
18
+ const path = _chunkB6CSNLGEjs.createEntryPath.call(void 0, opts.entryKey, opts.storageKey);
19
19
  const url = new URL(`${USER_STORAGE_ENDPOINT}${path}`);
20
20
  const userStorageResponse = await fetch(url.toString(), {
21
21
  headers: {
@@ -34,7 +34,7 @@ async function getUserStorage(opts) {
34
34
  if (!encryptedData) {
35
35
  return null;
36
36
  }
37
- const decryptedData = _chunkJTDFOATGjs.encryption_default.decryptString(
37
+ const decryptedData = _chunkAK7OTIWAjs.encryption_default.decryptString(
38
38
  encryptedData,
39
39
  opts.storageKey
40
40
  );
@@ -45,8 +45,8 @@ async function getUserStorage(opts) {
45
45
  }
46
46
  }
47
47
  async function upsertUserStorage(data, opts) {
48
- const encryptedData = _chunkJTDFOATGjs.encryption_default.encryptString(data, opts.storageKey);
49
- const path = _chunk7FCK4BY3js.createEntryPath.call(void 0, opts.entryKey, opts.storageKey);
48
+ const encryptedData = _chunkAK7OTIWAjs.encryption_default.encryptString(data, opts.storageKey);
49
+ const path = _chunkB6CSNLGEjs.createEntryPath.call(void 0, opts.entryKey, opts.storageKey);
50
50
  const url = new URL(`${USER_STORAGE_ENDPOINT}${path}`);
51
51
  const res = await fetch(url.toString(), {
52
52
  method: "PUT",
@@ -67,4 +67,4 @@ async function upsertUserStorage(data, opts) {
67
67
 
68
68
 
69
69
  exports.USER_STORAGE_API = USER_STORAGE_API; exports.USER_STORAGE_ENDPOINT = USER_STORAGE_ENDPOINT; exports.getUserStorage = getUserStorage; exports.upsertUserStorage = upsertUserStorage;
70
- //# sourceMappingURL=chunk-K6G7X6PX.js.map
70
+ //# sourceMappingURL=chunk-5SXXO4MV.js.map
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  encryption_default
3
- } from "./chunk-QE2F5AZL.mjs";
3
+ } from "./chunk-K5UKU454.mjs";
4
4
 
5
5
  // src/controllers/user-storage/encryption/index.ts
6
6
  var encryption_default2 = encryption_default;
@@ -8,4 +8,4 @@ var encryption_default2 = encryption_default;
8
8
  export {
9
9
  encryption_default2 as encryption_default
10
10
  };
11
- //# sourceMappingURL=chunk-BFE6TB7Y.mjs.map
11
+ //# sourceMappingURL=chunk-5TOWF6UW.mjs.map
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  getEnvUrls,
3
3
  getOidcClientId
4
- } from "./chunk-GLS4QZF6.mjs";
4
+ } from "./chunk-FQ5SDMRE.mjs";
5
5
 
6
6
  // src/controllers/authentication/services.ts
7
7
  var ENV_URLS = getEnvUrls("prd" /* PRD */);
@@ -10,7 +10,15 @@ var AUTH_NONCE_ENDPOINT = `${AUTH_ENDPOINT}/api/v2/nonce`;
10
10
  var AUTH_LOGIN_ENDPOINT = `${AUTH_ENDPOINT}/api/v2/srp/login`;
11
11
  var OIDC_ENDPOINT = ENV_URLS.oidcApiUrl || "";
12
12
  var OIDC_TOKENS_ENDPOINT = `${OIDC_ENDPOINT}/oauth2/token`;
13
- var OIDC_CLIENT_ID = getOidcClientId("prd" /* PRD */, "extension" /* EXTENSION */);
13
+ var OIDC_CLIENT_ID = (platform) => {
14
+ if (platform === "extension") {
15
+ return getOidcClientId("prd" /* PRD */, "extension" /* EXTENSION */);
16
+ }
17
+ if (platform === "mobile") {
18
+ return getOidcClientId("prd" /* PRD */, "mobile" /* MOBILE */);
19
+ }
20
+ throw new Error(`Unsupported platform - ${platform}`);
21
+ };
14
22
  var OIDC_GRANT_TYPE = "urn:ietf:params:oauth:grant-type:jwt-bearer";
15
23
  async function getNonce(publicKey) {
16
24
  const nonceUrl = new URL(AUTH_NONCE_ENDPOINT);
@@ -55,13 +63,13 @@ async function login(rawMessage, signature, clientMetaMetrics) {
55
63
  return null;
56
64
  }
57
65
  }
58
- async function getAccessToken(jwtToken) {
66
+ async function getAccessToken(jwtToken, platform) {
59
67
  const headers = new Headers({
60
68
  "Content-Type": "application/x-www-form-urlencoded"
61
69
  });
62
70
  const urlEncodedBody = new URLSearchParams();
63
71
  urlEncodedBody.append("grant_type", OIDC_GRANT_TYPE);
64
- urlEncodedBody.append("client_id", OIDC_CLIENT_ID);
72
+ urlEncodedBody.append("client_id", OIDC_CLIENT_ID(platform));
65
73
  urlEncodedBody.append("assertion", jwtToken);
66
74
  try {
67
75
  const response = await fetch(OIDC_TOKENS_ENDPOINT, {
@@ -95,4 +103,4 @@ export {
95
103
  getAccessToken,
96
104
  createLoginRawMessage
97
105
  };
98
- //# sourceMappingURL=chunk-W7JFFMEZ.mjs.map
106
+ //# sourceMappingURL=chunk-7SW3CC66.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/controllers/authentication/services.ts"],"sourcesContent":["import { Env, Platform, getEnvUrls, getOidcClientId } from '../../sdk';\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"],"mappings":";;;;;;AAEA,IAAM,WAAW,0BAAkB;AAEnC,IAAM,gBAAwB,SAAS;AAChC,IAAM,sBAAsB,GAAG,aAAa;AAC5C,IAAM,sBAAsB,GAAG,aAAa;AAEnD,IAAM,gBAAwB,SAAS,cAAc;AAC9C,IAAM,uBAAuB,GAAG,aAAa;AACpD,IAAM,iBAAiB,CAAC,aAAqC;AAC3D,MAAI,aAAa,aAAa;AAC5B,WAAO,4DAA2C;AAAA,EACpD;AACA,MAAI,aAAa,UAAU;AACzB,WAAO,sDAAwC;AAAA,EACjD;AAEA,QAAM,IAAI,MAAM,0BAA0B,QAAkB,EAAE;AAChE;AACA,IAAM,kBAAkB;AAYxB,eAAsB,SAAS,WAA2C;AACxE,QAAM,WAAW,IAAI,IAAI,mBAAmB;AAC5C,WAAS,aAAa,IAAI,cAAc,SAAS;AAEjD,MAAI;AACF,UAAM,gBAAgB,MAAM,MAAM,SAAS,SAAS,CAAC;AACrD,QAAI,CAAC,cAAc,IAAI;AACrB,aAAO;AAAA,IACT;AAEA,UAAM,YAA2B,MAAM,cAAc,KAAK;AAC1D,WAAO,WAAW,SAAS;AAAA,EAC7B,SAAS,GAAG;AACV,YAAQ,MAAM,2DAA2D,CAAC;AAC1E,WAAO;AAAA,EACT;AACF;AAqCA,eAAsB,MACpB,YACA,WACA,mBAC+B;AAC/B,MAAI;AACF,UAAM,WAAW,MAAM,MAAM,qBAAqB;AAAA,MAChD,QAAQ;AAAA,MACR,SAAS;AAAA,QACP,gBAAgB;AAAA,MAClB;AAAA,MACA,MAAM,KAAK,UAAU;AAAA,QACnB;AAAA;AAAA,QAEA,aAAa;AAAA,QACb,aAAa;AAAA;AAAA,UAEX,gBAAgB,kBAAkB;AAAA,UAClC,OAAO,kBAAkB;AAAA,QAC3B;AAAA,MACF,CAAC;AAAA,IACH,CAAC;AAED,QAAI,CAAC,SAAS,IAAI;AAChB,aAAO;AAAA,IACT;AAEA,UAAM,gBAA+B,MAAM,SAAS,KAAK;AACzD,WAAO,iBAAiB;AAAA,EAC1B,SAAS,GAAG;AACV,YAAQ,MAAM,uDAAuD,CAAC;AACtE,WAAO;AAAA,EACT;AACF;AAoBA,eAAsB,eACpB,UACA,UACwB;AACxB,QAAM,UAAU,IAAI,QAAQ;AAAA,IAC1B,gBAAgB;AAAA,EAClB,CAAC;AAED,QAAM,iBAAiB,IAAI,gBAAgB;AAC3C,iBAAe,OAAO,cAAc,eAAe;AACnD,iBAAe,OAAO,aAAa,eAAe,QAAQ,CAAC;AAC3D,iBAAe,OAAO,aAAa,QAAQ;AAE3C,MAAI;AACF,UAAM,WAAW,MAAM,MAAM,sBAAsB;AAAA,MACjD,QAAQ;AAAA,MACR;AAAA,MACA,MAAM,eAAe,SAAS;AAAA,IAChC,CAAC;AAED,QAAI,CAAC,SAAS,IAAI;AAChB,aAAO;AAAA,IACT;AAEA,UAAM,sBAA0C,MAAM,SAAS,KAAK;AACpE,WAAO,qBAAqB,gBAAgB;AAAA,EAC9C,SAAS,GAAG;AACV,YAAQ;AAAA,MACN;AAAA,MACA;AAAA,IACF;AACA,WAAO;AAAA,EACT;AACF;AASO,SAAS,sBACd,OACA,WACgC;AAChC,SAAO,YAAY,KAAK,IAAI,SAAS;AACvC;","names":[]}
@@ -1,11 +1,11 @@
1
1
  "use strict";Object.defineProperty(exports, "__esModule", {value: true});
2
2
 
3
- var _chunkJWTNHCVGjs = require('./chunk-JWTNHCVG.js');
3
+ var _chunkT3FNDVE3js = require('./chunk-T3FNDVE3.js');
4
4
 
5
5
  // src/controllers/user-storage/encryption/index.ts
6
- var encryption_default2 = _chunkJWTNHCVGjs.encryption_default;
6
+ var encryption_default2 = _chunkT3FNDVE3js.encryption_default;
7
7
 
8
8
 
9
9
 
10
10
  exports.encryption_default = encryption_default2;
11
- //# sourceMappingURL=chunk-JTDFOATG.js.map
11
+ //# sourceMappingURL=chunk-AK7OTIWA.js.map
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  createSHA256Hash
3
- } from "./chunk-QE2F5AZL.mjs";
3
+ } from "./chunk-K5UKU454.mjs";
4
4
 
5
5
  // src/controllers/user-storage/schema.ts
6
6
  var USER_STORAGE_ENTRIES = {
@@ -22,4 +22,4 @@ export {
22
22
  USER_STORAGE_ENTRIES,
23
23
  createEntryPath
24
24
  };
25
- //# sourceMappingURL=chunk-772MKTIO.mjs.map
25
+ //# sourceMappingURL=chunk-AUFUOKJW.mjs.map
@@ -2,7 +2,7 @@
2
2
 
3
3
 
4
4
 
5
- var _chunkXUPRRLBIjs = require('./chunk-XUPRRLBI.js');
5
+ var _chunkBOET676Pjs = require('./chunk-BOET676P.js');
6
6
 
7
7
 
8
8
  var _chunkRG4II6WHjs = require('./chunk-RG4II6WH.js');
@@ -17,7 +17,7 @@ var _chunkMBTBE4P5js = require('./chunk-MBTBE4P5.js');
17
17
 
18
18
 
19
19
 
20
- var _chunkV46WVGWNjs = require('./chunk-V46WVGWN.js');
20
+ var _chunkIGY2S5BCjs = require('./chunk-IGY2S5BC.js');
21
21
 
22
22
  // src/sdk/authentication-jwt-bearer/flow-srp.ts
23
23
  var defaultEIP6963SigningOptions = {
@@ -44,45 +44,45 @@ var _config, _options, _getAuthSession, getAuthSession_fn, _login, login_fn, _cr
44
44
  var SRPJwtBearerAuth = class {
45
45
  constructor(config, options) {
46
46
  // convert expiresIn from seconds to milliseconds and use 90% of expiresIn
47
- _chunkV46WVGWNjs.__privateAdd.call(void 0, this, _getAuthSession);
48
- _chunkV46WVGWNjs.__privateAdd.call(void 0, this, _login);
49
- _chunkV46WVGWNjs.__privateAdd.call(void 0, this, _createSrpLoginRawMessage);
50
- _chunkV46WVGWNjs.__privateAdd.call(void 0, this, _config, void 0);
51
- _chunkV46WVGWNjs.__privateAdd.call(void 0, this, _options, void 0);
52
- _chunkV46WVGWNjs.__privateSet.call(void 0, this, _config, config);
53
- _chunkV46WVGWNjs.__privateSet.call(void 0, this, _options, {
47
+ _chunkIGY2S5BCjs.__privateAdd.call(void 0, this, _getAuthSession);
48
+ _chunkIGY2S5BCjs.__privateAdd.call(void 0, this, _login);
49
+ _chunkIGY2S5BCjs.__privateAdd.call(void 0, this, _createSrpLoginRawMessage);
50
+ _chunkIGY2S5BCjs.__privateAdd.call(void 0, this, _config, void 0);
51
+ _chunkIGY2S5BCjs.__privateAdd.call(void 0, this, _options, void 0);
52
+ _chunkIGY2S5BCjs.__privateSet.call(void 0, this, _config, config);
53
+ _chunkIGY2S5BCjs.__privateSet.call(void 0, this, _options, {
54
54
  storage: options.storage,
55
55
  signing: options.signing ?? defaultEIP6963SigningOptions
56
56
  });
57
57
  }
58
58
  async getAccessToken() {
59
- const session = await _chunkV46WVGWNjs.__privateMethod.call(void 0, this, _getAuthSession, getAuthSession_fn).call(this);
59
+ const session = await _chunkIGY2S5BCjs.__privateMethod.call(void 0, this, _getAuthSession, getAuthSession_fn).call(this);
60
60
  if (session) {
61
61
  return session.token.accessToken;
62
62
  }
63
- const loginResponse = await _chunkV46WVGWNjs.__privateMethod.call(void 0, this, _login, login_fn).call(this);
63
+ const loginResponse = await _chunkIGY2S5BCjs.__privateMethod.call(void 0, this, _login, login_fn).call(this);
64
64
  return loginResponse.token.accessToken;
65
65
  }
66
66
  async getUserProfile() {
67
- const session = await _chunkV46WVGWNjs.__privateMethod.call(void 0, this, _getAuthSession, getAuthSession_fn).call(this);
67
+ const session = await _chunkIGY2S5BCjs.__privateMethod.call(void 0, this, _getAuthSession, getAuthSession_fn).call(this);
68
68
  if (session) {
69
69
  return session.profile;
70
70
  }
71
- const loginResponse = await _chunkV46WVGWNjs.__privateMethod.call(void 0, this, _login, login_fn).call(this);
71
+ const loginResponse = await _chunkIGY2S5BCjs.__privateMethod.call(void 0, this, _login, login_fn).call(this);
72
72
  return loginResponse.profile;
73
73
  }
74
74
  async getIdentifier() {
75
- return await _chunkV46WVGWNjs.__privateGet.call(void 0, this, _options).signing.getIdentifier();
75
+ return await _chunkIGY2S5BCjs.__privateGet.call(void 0, this, _options).signing.getIdentifier();
76
76
  }
77
77
  async signMessage(message) {
78
- return await _chunkV46WVGWNjs.__privateGet.call(void 0, this, _options).signing.signMessage(message);
78
+ return await _chunkIGY2S5BCjs.__privateGet.call(void 0, this, _options).signing.signMessage(message);
79
79
  }
80
80
  };
81
81
  _config = new WeakMap();
82
82
  _options = new WeakMap();
83
83
  _getAuthSession = new WeakSet();
84
84
  getAuthSession_fn = async function() {
85
- const auth = await _chunkV46WVGWNjs.__privateGet.call(void 0, this, _options).storage.getLoginResponse();
85
+ const auth = await _chunkIGY2S5BCjs.__privateGet.call(void 0, this, _options).storage.getLoginResponse();
86
86
  if (!auth) {
87
87
  return null;
88
88
  }
@@ -97,26 +97,26 @@ getAuthSession_fn = async function() {
97
97
  _login = new WeakSet();
98
98
  login_fn = async function() {
99
99
  const address = await this.getIdentifier();
100
- const nonceRes = await _chunkXUPRRLBIjs.getNonce.call(void 0, address, _chunkV46WVGWNjs.__privateGet.call(void 0, this, _config).env);
101
- const publicKey = await _chunkV46WVGWNjs.__privateGet.call(void 0, this, _options).signing.getIdentifier();
102
- const rawMessage = _chunkV46WVGWNjs.__privateMethod.call(void 0, this, _createSrpLoginRawMessage, createSrpLoginRawMessage_fn).call(this, nonceRes.nonce, publicKey);
100
+ const nonceRes = await _chunkBOET676Pjs.getNonce.call(void 0, address, _chunkIGY2S5BCjs.__privateGet.call(void 0, this, _config).env);
101
+ const publicKey = await _chunkIGY2S5BCjs.__privateGet.call(void 0, this, _options).signing.getIdentifier();
102
+ const rawMessage = _chunkIGY2S5BCjs.__privateMethod.call(void 0, this, _createSrpLoginRawMessage, createSrpLoginRawMessage_fn).call(this, nonceRes.nonce, publicKey);
103
103
  const signature = await this.signMessage(rawMessage);
104
- const authResponse = await _chunkXUPRRLBIjs.authenticate.call(void 0,
104
+ const authResponse = await _chunkBOET676Pjs.authenticate.call(void 0,
105
105
  rawMessage,
106
106
  signature,
107
- _chunkV46WVGWNjs.__privateGet.call(void 0, this, _config).type,
108
- _chunkV46WVGWNjs.__privateGet.call(void 0, this, _config).env
107
+ _chunkIGY2S5BCjs.__privateGet.call(void 0, this, _config).type,
108
+ _chunkIGY2S5BCjs.__privateGet.call(void 0, this, _config).env
109
109
  );
110
- const tokenResponse = await _chunkXUPRRLBIjs.authorizeOIDC.call(void 0,
110
+ const tokenResponse = await _chunkBOET676Pjs.authorizeOIDC.call(void 0,
111
111
  authResponse.token,
112
- _chunkV46WVGWNjs.__privateGet.call(void 0, this, _config).env,
113
- _chunkV46WVGWNjs.__privateGet.call(void 0, this, _config).platform
112
+ _chunkIGY2S5BCjs.__privateGet.call(void 0, this, _config).env,
113
+ _chunkIGY2S5BCjs.__privateGet.call(void 0, this, _config).platform
114
114
  );
115
115
  const result = {
116
116
  profile: authResponse.profile,
117
117
  token: tokenResponse
118
118
  };
119
- await _chunkV46WVGWNjs.__privateGet.call(void 0, this, _options).storage.setLoginResponse(result);
119
+ await _chunkIGY2S5BCjs.__privateGet.call(void 0, this, _options).storage.setLoginResponse(result);
120
120
  return result;
121
121
  };
122
122
  _createSrpLoginRawMessage = new WeakSet();
@@ -127,4 +127,4 @@ createSrpLoginRawMessage_fn = function(nonce, publicKey) {
127
127
 
128
128
 
129
129
  exports.SRPJwtBearerAuth = SRPJwtBearerAuth;
130
- //# sourceMappingURL=chunk-6TK7544L.js.map
130
+ //# sourceMappingURL=chunk-AVOOINGJ.js.map
@@ -1,10 +1,10 @@
1
1
  import {
2
2
  createSHA256Hash,
3
3
  encryption_default
4
- } from "./chunk-VTM5T7Y4.mjs";
4
+ } from "./chunk-B5DBQDB3.mjs";
5
5
  import {
6
6
  getEnvUrls
7
- } from "./chunk-GLS4QZF6.mjs";
7
+ } from "./chunk-FQ5SDMRE.mjs";
8
8
  import {
9
9
  NotFoundError,
10
10
  UserStorageError,
@@ -13,7 +13,7 @@ import {
13
13
  import {
14
14
  __privateAdd,
15
15
  __privateMethod
16
- } from "./chunk-26CCETCM.mjs";
16
+ } from "./chunk-U5UIDVOO.mjs";
17
17
 
18
18
  // src/sdk/user-storage.ts
19
19
  var STORAGE_URL = (env, feature, entry) => `${getEnvUrls(env).userStorageApiUrl}/api/v1/userstorage/${feature}/${entry}`;
@@ -141,4 +141,4 @@ export {
141
141
  STORAGE_URL,
142
142
  UserStorage
143
143
  };
144
- //# sourceMappingURL=chunk-UEZI2POO.mjs.map
144
+ //# sourceMappingURL=chunk-AXWK4Y23.mjs.map
@@ -2,7 +2,7 @@ import {
2
2
  __privateAdd,
3
3
  __privateGet,
4
4
  __privateMethod
5
- } from "./chunk-26CCETCM.mjs";
5
+ } from "./chunk-U5UIDVOO.mjs";
6
6
 
7
7
  // src/sdk/encryption.ts
8
8
  import { gcm } from "@noble/ciphers/aes";
@@ -137,4 +137,4 @@ export {
137
137
  encryption_default,
138
138
  createSHA256Hash
139
139
  };
140
- //# sourceMappingURL=chunk-VTM5T7Y4.mjs.map
140
+ //# sourceMappingURL=chunk-B5DBQDB3.mjs.map
@@ -1,6 +1,6 @@
1
1
  "use strict";Object.defineProperty(exports, "__esModule", {value: true});
2
2
 
3
- var _chunkJWTNHCVGjs = require('./chunk-JWTNHCVG.js');
3
+ var _chunkT3FNDVE3js = require('./chunk-T3FNDVE3.js');
4
4
 
5
5
  // src/controllers/user-storage/schema.ts
6
6
  var USER_STORAGE_ENTRIES = {
@@ -14,7 +14,7 @@ function createEntryPath(entryKey, storageKey) {
14
14
  if (!entry) {
15
15
  throw new Error(`user-storage - invalid entry provided: ${entryKey}`);
16
16
  }
17
- const hashedKey = _chunkJWTNHCVGjs.createSHA256Hash.call(void 0, entry.entryName + storageKey);
17
+ const hashedKey = _chunkT3FNDVE3js.createSHA256Hash.call(void 0, entry.entryName + storageKey);
18
18
  return `/${entry.path}/${hashedKey}`;
19
19
  }
20
20
 
@@ -22,4 +22,4 @@ function createEntryPath(entryKey, storageKey) {
22
22
 
23
23
 
24
24
  exports.USER_STORAGE_ENTRIES = USER_STORAGE_ENTRIES; exports.createEntryPath = createEntryPath;
25
- //# sourceMappingURL=chunk-7FCK4BY3.js.map
25
+ //# sourceMappingURL=chunk-B6CSNLGE.js.map
@@ -1,7 +1,7 @@
1
1
  "use strict";Object.defineProperty(exports, "__esModule", {value: true});
2
2
 
3
3
 
4
- var _chunk4OMJ7A6Ajs = require('./chunk-4OMJ7A6A.js');
4
+ var _chunkSMKTWM6Ijs = require('./chunk-SMKTWM6I.js');
5
5
 
6
6
 
7
7
 
@@ -10,11 +10,11 @@ var _chunk4OMJ7A6Ajs = require('./chunk-4OMJ7A6A.js');
10
10
  var _chunkMBTBE4P5js = require('./chunk-MBTBE4P5.js');
11
11
 
12
12
  // src/sdk/authentication-jwt-bearer/services.ts
13
- var NONCE_URL = (env) => `${_chunk4OMJ7A6Ajs.getEnvUrls.call(void 0, env).authApiUrl}/api/v2/nonce`;
14
- var PAIR_IDENTIFIERS = (env) => `${_chunk4OMJ7A6Ajs.getEnvUrls.call(void 0, env).authApiUrl}/api/v2/identifiers/pair`;
15
- var OIDC_TOKEN_URL = (env) => `${_chunk4OMJ7A6Ajs.getEnvUrls.call(void 0, env).oidcApiUrl}/oauth2/token`;
16
- var SRP_LOGIN_URL = (env) => `${_chunk4OMJ7A6Ajs.getEnvUrls.call(void 0, env).authApiUrl}/api/v2/srp/login`;
17
- var SIWE_LOGIN_URL = (env) => `${_chunk4OMJ7A6Ajs.getEnvUrls.call(void 0, env).authApiUrl}/api/v2/siwe/login`;
13
+ var NONCE_URL = (env) => `${_chunkSMKTWM6Ijs.getEnvUrls.call(void 0, env).authApiUrl}/api/v2/nonce`;
14
+ var PAIR_IDENTIFIERS = (env) => `${_chunkSMKTWM6Ijs.getEnvUrls.call(void 0, env).authApiUrl}/api/v2/identifiers/pair`;
15
+ var OIDC_TOKEN_URL = (env) => `${_chunkSMKTWM6Ijs.getEnvUrls.call(void 0, env).oidcApiUrl}/oauth2/token`;
16
+ var SRP_LOGIN_URL = (env) => `${_chunkSMKTWM6Ijs.getEnvUrls.call(void 0, env).authApiUrl}/api/v2/srp/login`;
17
+ var SIWE_LOGIN_URL = (env) => `${_chunkSMKTWM6Ijs.getEnvUrls.call(void 0, env).authApiUrl}/api/v2/siwe/login`;
18
18
  var getAuthenticationUrl = (authType, env) => {
19
19
  switch (authType) {
20
20
  case "SRP" /* SRP */:
@@ -81,7 +81,7 @@ async function authorizeOIDC(jwtToken, env, platform) {
81
81
  });
82
82
  const urlEncodedBody = new URLSearchParams();
83
83
  urlEncodedBody.append("grant_type", grantType);
84
- urlEncodedBody.append("client_id", _chunk4OMJ7A6Ajs.getOidcClientId.call(void 0, env, platform));
84
+ urlEncodedBody.append("client_id", _chunkSMKTWM6Ijs.getOidcClientId.call(void 0, env, platform));
85
85
  urlEncodedBody.append("assertion", jwtToken);
86
86
  try {
87
87
  const response = await fetch(OIDC_TOKEN_URL(env), {
@@ -154,4 +154,4 @@ async function authenticate(rawMessage, signature, authType, env) {
154
154
 
155
155
 
156
156
  exports.NONCE_URL = NONCE_URL; exports.PAIR_IDENTIFIERS = PAIR_IDENTIFIERS; exports.OIDC_TOKEN_URL = OIDC_TOKEN_URL; exports.SRP_LOGIN_URL = SRP_LOGIN_URL; exports.SIWE_LOGIN_URL = SIWE_LOGIN_URL; exports.pairIdentifiers = pairIdentifiers; exports.getNonce = getNonce; exports.authorizeOIDC = authorizeOIDC; exports.authenticate = authenticate;
157
- //# sourceMappingURL=chunk-XUPRRLBI.js.map
157
+ //# sourceMappingURL=chunk-BOET676P.js.map
@@ -8,4 +8,4 @@ var AuthType = /* @__PURE__ */ ((AuthType2) => {
8
8
  export {
9
9
  AuthType
10
10
  };
11
- //# sourceMappingURL=chunk-YWA77VMP.mjs.map
11
+ //# sourceMappingURL=chunk-CAIIVJAO.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/sdk/authentication-jwt-bearer/types.ts"],"sourcesContent":["import type { Env, Platform } from '../env';\n\nexport enum AuthType {\n /* sign in using a private key derived from your secret recovery phrase (SRP). \n Uses message signing snap to perform this operation */\n SRP = 'SRP',\n\n /* sign in with Ethereum */\n SiWE = 'SiWE',\n}\n\nexport type AuthConfig = {\n env: Env;\n platform: Platform;\n type: AuthType;\n};\n\nexport type AccessToken = {\n /**\n * The JWT Access Token\n */\n accessToken: string;\n /**\n * Expiration in seconds\n */\n expiresIn: number;\n /**\n * Date in milliseconds\n */\n obtainedAt: number;\n};\n\nexport type UserProfile = {\n /**\n * The \"Identifier\" used to log in with.\n */\n identifierId: string;\n /**\n * The Unique profile for a logged in user. A Profile can be logged in via multiple Identifiers\n */\n profileId: string;\n /**\n * Server MetaMetrics ID. Allows grouping of user events cross platform.\n */\n metaMetricsId: string;\n};\n\nexport type LoginResponse = {\n token: AccessToken;\n profile: UserProfile;\n};\n\nexport type IBaseAuth = {\n getAccessToken: () => Promise<string>;\n getUserProfile: () => Promise<UserProfile>;\n getIdentifier: () => Promise<string>;\n signMessage: (message: string) => Promise<string>;\n};\n\nexport type AuthStorageOptions = {\n getLoginResponse: () => Promise<LoginResponse | null>;\n setLoginResponse: (val: LoginResponse) => Promise<void>;\n};\n\nexport type AuthSigningOptions = {\n signMessage: (message: string) => Promise<string>;\n getIdentifier: () => Promise<string>;\n};\n\nexport type ErrorMessage = {\n message: string;\n error: string;\n};\n\nexport type Pair = {\n identifier: string;\n encryptedStorageKey: string;\n identifierType: 'SIWE' | 'SRP';\n signMessage: (message: string) => Promise<string>;\n};\n"],"mappings":";AAEO,IAAK,WAAL,kBAAKA,cAAL;AAGL,EAAAA,UAAA,SAAM;AAGN,EAAAA,UAAA,UAAO;AANG,SAAAA;AAAA,GAAA;","names":["AuthType"]}
@@ -1,13 +1,13 @@
1
1
  import {
2
2
  SIWEJwtBearerAuth
3
- } from "./chunk-UWRKMJBI.mjs";
3
+ } from "./chunk-JLDFMYAH.mjs";
4
4
  import {
5
5
  SRPJwtBearerAuth
6
- } from "./chunk-LN2BY2QF.mjs";
6
+ } from "./chunk-Y46NMA3V.mjs";
7
7
  import {
8
8
  getNonce,
9
9
  pairIdentifiers
10
- } from "./chunk-7VMXBDXN.mjs";
10
+ } from "./chunk-WB6MUIML.mjs";
11
11
  import {
12
12
  PairError,
13
13
  UnsupportedAuthTypeError
@@ -17,7 +17,7 @@ import {
17
17
  __privateGet,
18
18
  __privateMethod,
19
19
  __privateSet
20
- } from "./chunk-26CCETCM.mjs";
20
+ } from "./chunk-U5UIDVOO.mjs";
21
21
 
22
22
  // src/sdk/authentication.ts
23
23
  var _type, _env, _sdk, _assertSIWE, assertSIWE_fn;
@@ -103,4 +103,4 @@ assertSIWE_fn = function(type, sdk) {
103
103
  export {
104
104
  JwtBearerAuth
105
105
  };
106
- //# sourceMappingURL=chunk-3FJQHCCQ.mjs.map
106
+ //# sourceMappingURL=chunk-FCT2LIGH.mjs.map
@@ -74,4 +74,4 @@ export {
74
74
  getEnvUrls,
75
75
  getOidcClientId
76
76
  };
77
- //# sourceMappingURL=chunk-GLS4QZF6.mjs.map
77
+ //# sourceMappingURL=chunk-FQ5SDMRE.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/sdk/env.ts"],"sourcesContent":["export enum Env {\n DEV = 'dev',\n UAT = 'uat',\n PRD = 'prd',\n}\n\nexport enum Platform {\n MOBILE = 'mobile',\n EXTENSION = 'extension',\n PORTFOLIO = 'portfolio',\n INFURA = 'infura',\n}\n\ntype EnvUrlsEntry = {\n authApiUrl: string;\n oidcApiUrl: string;\n userStorageApiUrl: string;\n};\n\nconst ENV_URLS: Record<Env, EnvUrlsEntry> = {\n dev: {\n authApiUrl: 'https://authentication.dev-api.cx.metamask.io',\n oidcApiUrl: 'https://oidc.dev-api.cx.metamask.io',\n userStorageApiUrl: 'https://user-storage.dev-api.cx.metamask.io',\n },\n uat: {\n authApiUrl: 'https://authentication.uat-api.cx.metamask.io',\n oidcApiUrl: 'https://oidc.uat-api.cx.metamask.io',\n userStorageApiUrl: 'https://user-storage.uat-api.cx.metamask.io',\n },\n prd: {\n authApiUrl: 'https://authentication.api.cx.metamask.io',\n oidcApiUrl: 'https://oidc.api.cx.metamask.io',\n userStorageApiUrl: 'https://user-storage.api.cx.metamask.io',\n },\n};\n\n/**\n * Validates and returns correct environment endpoints\n *\n * @param env - environment field\n * @returns the correct environment url\n * @throws on invalid environment passed\n */\nexport function getEnvUrls(env: Env): EnvUrlsEntry {\n if (!ENV_URLS[env]) {\n throw new Error('invalid environment configuration');\n }\n return ENV_URLS[env];\n}\n\n/**\n * Returns the valid OIDC Client ID (used during authorization)\n *\n * @param env - environment field\n * @param platform - platform field\n * @returns the OIDC client id for the environment\n */\nexport function getOidcClientId(env: Env, platform: Platform): string {\n const clientIds = {\n [Env.DEV]: {\n [Platform.PORTFOLIO]: 'c7ca94a0-5d52-4635-9502-1a50a9c410cc',\n [Platform.MOBILE]: 'e83c7cc9-267d-4fb4-8fec-f0e3bbe5ae8e',\n [Platform.EXTENSION]: 'f1a963d7-50dc-4cb5-8d81-f1f3654f0df3',\n [Platform.INFURA]: 'bd887006-0d55-481a-a395-5ff9a0dc52c9',\n },\n [Env.UAT]: {\n [Platform.PORTFOLIO]: '8f2dd4ac-db07-4819-9ba5-1ee0ec1b56d1',\n [Platform.MOBILE]: 'c3cfdcd2-51d6-4fae-ad2c-ff238c8fef53',\n [Platform.EXTENSION]: 'a9de167c-c9a6-43d8-af39-d301fd44c485',\n [Platform.INFURA]: '01929890-7002-4c97-9913-8f6c09a6d674',\n },\n [Env.PRD]: {\n [Platform.PORTFOLIO]: '35e1cd62-49c5-4be8-8b6e-a5212f2d2cfb',\n [Platform.MOBILE]: '75fa62a3-9ca0-4b91-9fe5-76bec86b0257',\n [Platform.EXTENSION]: '1132f10a-b4e5-4390-a5f2-d9c6022db564',\n [Platform.INFURA]: '', // unset\n },\n };\n\n if (!clientIds[env]) {\n throw new Error(`invalid env ${env}: cannot determine oidc client id`);\n }\n\n if (!clientIds[env][platform]) {\n throw new Error(\n `invalid env ${env} and platform ${platform} combination: cannot determine oidc client id`,\n );\n }\n\n return clientIds[env][platform];\n}\n"],"mappings":";AAAO,IAAK,MAAL,kBAAKA,SAAL;AACL,EAAAA,KAAA,SAAM;AACN,EAAAA,KAAA,SAAM;AACN,EAAAA,KAAA,SAAM;AAHI,SAAAA;AAAA,GAAA;AAML,IAAK,WAAL,kBAAKC,cAAL;AACL,EAAAA,UAAA,YAAS;AACT,EAAAA,UAAA,eAAY;AACZ,EAAAA,UAAA,eAAY;AACZ,EAAAA,UAAA,YAAS;AAJC,SAAAA;AAAA,GAAA;AAaZ,IAAM,WAAsC;AAAA,EAC1C,KAAK;AAAA,IACH,YAAY;AAAA,IACZ,YAAY;AAAA,IACZ,mBAAmB;AAAA,EACrB;AAAA,EACA,KAAK;AAAA,IACH,YAAY;AAAA,IACZ,YAAY;AAAA,IACZ,mBAAmB;AAAA,EACrB;AAAA,EACA,KAAK;AAAA,IACH,YAAY;AAAA,IACZ,YAAY;AAAA,IACZ,mBAAmB;AAAA,EACrB;AACF;AASO,SAAS,WAAW,KAAwB;AACjD,MAAI,CAAC,SAAS,GAAG,GAAG;AAClB,UAAM,IAAI,MAAM,mCAAmC;AAAA,EACrD;AACA,SAAO,SAAS,GAAG;AACrB;AASO,SAAS,gBAAgB,KAAU,UAA4B;AACpE,QAAM,YAAY;AAAA,IAChB,CAAC,eAAO,GAAG;AAAA,MACT,CAAC,2BAAkB,GAAG;AAAA,MACtB,CAAC,qBAAe,GAAG;AAAA,MACnB,CAAC,2BAAkB,GAAG;AAAA,MACtB,CAAC,qBAAe,GAAG;AAAA,IACrB;AAAA,IACA,CAAC,eAAO,GAAG;AAAA,MACT,CAAC,2BAAkB,GAAG;AAAA,MACtB,CAAC,qBAAe,GAAG;AAAA,MACnB,CAAC,2BAAkB,GAAG;AAAA,MACtB,CAAC,qBAAe,GAAG;AAAA,IACrB;AAAA,IACA,CAAC,eAAO,GAAG;AAAA,MACT,CAAC,2BAAkB,GAAG;AAAA,MACtB,CAAC,qBAAe,GAAG;AAAA,MACnB,CAAC,2BAAkB,GAAG;AAAA,MACtB,CAAC,qBAAe,GAAG;AAAA;AAAA,IACrB;AAAA,EACF;AAEA,MAAI,CAAC,UAAU,GAAG,GAAG;AACnB,UAAM,IAAI,MAAM,eAAe,GAAG,mCAAmC;AAAA,EACvE;AAEA,MAAI,CAAC,UAAU,GAAG,EAAE,QAAQ,GAAG;AAC7B,UAAM,IAAI;AAAA,MACR,eAAe,GAAG,iBAAiB,QAAQ;AAAA,IAC7C;AAAA,EACF;AAEA,SAAO,UAAU,GAAG,EAAE,QAAQ;AAChC;","names":["Env","Platform"]}