@console-wallet/dapp-sdk 2.0.0 → 2.0.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 (229) hide show
  1. package/dist/cjs/api/client.api.d.ts +12 -0
  2. package/dist/cjs/api/client.api.js +5 -1
  3. package/dist/cjs/api/client.api.js.map +1 -1
  4. package/dist/cjs/api/generated-indexer-api.d.ts +15 -15
  5. package/dist/cjs/api/generated-indexer-api.js +206 -212
  6. package/dist/cjs/api/generated-indexer-api.js.map +1 -1
  7. package/dist/cjs/api/generated-wallet-api.d.ts +36 -36
  8. package/dist/cjs/api/generated-wallet-api.js +113 -119
  9. package/dist/cjs/api/generated-wallet-api.js.map +1 -1
  10. package/dist/cjs/api/generated-wc-api.d.ts +219 -0
  11. package/dist/cjs/api/generated-wc-api.js +248 -0
  12. package/dist/cjs/api/generated-wc-api.js.map +1 -0
  13. package/dist/cjs/api/index.d.ts +1 -0
  14. package/dist/cjs/api/index.js +2 -1
  15. package/dist/cjs/api/index.js.map +1 -1
  16. package/dist/cjs/assets/assets/icons/close.svg +4 -0
  17. package/dist/cjs/assets/assets/images/extension.png +0 -0
  18. package/dist/cjs/assets/assets/images/walletConnect.png +0 -0
  19. package/dist/cjs/assets/icons/close.svg +4 -0
  20. package/dist/cjs/assets/images/extension.png +0 -0
  21. package/dist/cjs/assets/images/walletConnect.png +0 -0
  22. package/dist/cjs/constants/config.constants.d.ts +1 -0
  23. package/dist/cjs/constants/config.constants.js +2 -1
  24. package/dist/cjs/constants/config.constants.js.map +1 -1
  25. package/dist/cjs/constants/wc.constants.d.ts +1 -0
  26. package/dist/cjs/constants/wc.constants.js +5 -0
  27. package/dist/cjs/constants/wc.constants.js.map +1 -0
  28. package/dist/cjs/helpers/handleResponse.helper.d.ts +2 -1
  29. package/dist/cjs/helpers/handleResponse.helper.js +11 -1
  30. package/dist/cjs/helpers/handleResponse.helper.js.map +1 -1
  31. package/dist/cjs/helpers/mobile-check.helper.d.ts +7 -0
  32. package/dist/cjs/helpers/mobile-check.helper.js +27 -0
  33. package/dist/cjs/helpers/mobile-check.helper.js.map +1 -0
  34. package/dist/cjs/index.d.ts +2 -1
  35. package/dist/cjs/index.js +1 -0
  36. package/dist/cjs/index.js.map +1 -1
  37. package/dist/cjs/requests/connect.d.ts +1 -1
  38. package/dist/cjs/requests/connect.js +90 -15
  39. package/dist/cjs/requests/connect.js.map +1 -1
  40. package/dist/cjs/requests/disconnect.js +47 -13
  41. package/dist/cjs/requests/disconnect.js.map +1 -1
  42. package/dist/cjs/requests/getAccounts.js +50 -13
  43. package/dist/cjs/requests/getAccounts.js.map +1 -1
  44. package/dist/cjs/requests/getActiveAccount.js +50 -13
  45. package/dist/cjs/requests/getActiveAccount.js.map +1 -1
  46. package/dist/cjs/requests/getActiveNetwork.js +52 -13
  47. package/dist/cjs/requests/getActiveNetwork.js.map +1 -1
  48. package/dist/cjs/requests/getBalance.js +49 -16
  49. package/dist/cjs/requests/getBalance.js.map +1 -1
  50. package/dist/cjs/requests/getCoinsBalance.js +49 -16
  51. package/dist/cjs/requests/getCoinsBalance.js.map +1 -1
  52. package/dist/cjs/requests/getIsConnected.js +50 -13
  53. package/dist/cjs/requests/getIsConnected.js.map +1 -1
  54. package/dist/cjs/requests/getNodeOffers.js +47 -14
  55. package/dist/cjs/requests/getNodeOffers.js.map +1 -1
  56. package/dist/cjs/requests/getNodeTransfer.js +47 -14
  57. package/dist/cjs/requests/getNodeTransfer.js.map +1 -1
  58. package/dist/cjs/requests/getNodeTransfers.js +49 -16
  59. package/dist/cjs/requests/getNodeTransfers.js.map +1 -1
  60. package/dist/cjs/requests/getOffers.js +47 -14
  61. package/dist/cjs/requests/getOffers.js.map +1 -1
  62. package/dist/cjs/requests/getStatus.js +57 -13
  63. package/dist/cjs/requests/getStatus.js.map +1 -1
  64. package/dist/cjs/requests/getTransfer.js +49 -14
  65. package/dist/cjs/requests/getTransfer.js.map +1 -1
  66. package/dist/cjs/requests/getTransfers.js +49 -16
  67. package/dist/cjs/requests/getTransfers.js.map +1 -1
  68. package/dist/cjs/requests/getWalletVersion.js +57 -13
  69. package/dist/cjs/requests/getWalletVersion.js.map +1 -1
  70. package/dist/cjs/requests/ledgerApi.js +51 -23
  71. package/dist/cjs/requests/ledgerApi.js.map +1 -1
  72. package/dist/cjs/requests/signMessage.js +48 -15
  73. package/dist/cjs/requests/signMessage.js.map +1 -1
  74. package/dist/cjs/requests/singBatch.js +47 -14
  75. package/dist/cjs/requests/singBatch.js.map +1 -1
  76. package/dist/cjs/requests/submitCommands.js +55 -22
  77. package/dist/cjs/requests/submitCommands.js.map +1 -1
  78. package/dist/cjs/requests/submitInstructionChoice.js +55 -22
  79. package/dist/cjs/requests/submitInstructionChoice.js.map +1 -1
  80. package/dist/cjs/services/index.d.ts +0 -0
  81. package/dist/cjs/services/index.js +2 -0
  82. package/dist/cjs/services/index.js.map +1 -0
  83. package/dist/cjs/services/indexedDB/index.d.ts +1 -0
  84. package/dist/cjs/services/indexedDB/index.js +5 -0
  85. package/dist/cjs/services/indexedDB/index.js.map +1 -0
  86. package/dist/cjs/services/indexedDB/wc-session.storage.d.ts +10 -0
  87. package/dist/cjs/services/indexedDB/wc-session.storage.js +60 -0
  88. package/dist/cjs/services/indexedDB/wc-session.storage.js.map +1 -0
  89. package/dist/cjs/services/wc-service/connector-select.d.ts +7 -0
  90. package/dist/cjs/services/wc-service/connector-select.js +70 -0
  91. package/dist/cjs/services/wc-service/connector-select.js.map +1 -0
  92. package/dist/cjs/services/wc-service/index.d.ts +0 -0
  93. package/dist/cjs/services/wc-service/index.js +2 -0
  94. package/dist/cjs/services/wc-service/index.js.map +1 -0
  95. package/dist/cjs/services/wc-service/prepare-wc.d.ts +1 -0
  96. package/dist/cjs/services/wc-service/prepare-wc.js +15 -0
  97. package/dist/cjs/services/wc-service/prepare-wc.js.map +1 -0
  98. package/dist/cjs/services/wc-service/wc-request-separator.d.ts +1 -0
  99. package/dist/cjs/services/wc-service/wc-request-separator.js +27 -0
  100. package/dist/cjs/services/wc-service/wc-request-separator.js.map +1 -0
  101. package/dist/cjs/services/wc-service/wc-service.d.ts +35 -0
  102. package/dist/cjs/services/wc-service/wc-service.js +189 -0
  103. package/dist/cjs/services/wc-service/wc-service.js.map +1 -0
  104. package/dist/cjs/styles.css +110 -0
  105. package/dist/cjs/triggersNative/onAccountsChanged.js +45 -30
  106. package/dist/cjs/triggersNative/onAccountsChanged.js.map +1 -1
  107. package/dist/cjs/triggersNative/onConnectionStatusChanged.js +48 -33
  108. package/dist/cjs/triggersNative/onConnectionStatusChanged.js.map +1 -1
  109. package/dist/cjs/triggersNative/onTxChanged.js +24 -9
  110. package/dist/cjs/triggersNative/onTxChanged.js.map +1 -1
  111. package/dist/cjs/types/communication.types.d.ts +1 -0
  112. package/dist/cjs/types/connect.type.d.ts +9 -0
  113. package/dist/cjs/types/connect.type.js +7 -0
  114. package/dist/cjs/types/connect.type.js.map +1 -1
  115. package/dist/esm/api/client.api.d.ts +12 -0
  116. package/dist/esm/api/client.api.js +5 -1
  117. package/dist/esm/api/client.api.js.map +1 -1
  118. package/dist/esm/api/generated-indexer-api.d.ts +15 -15
  119. package/dist/esm/api/generated-indexer-api.js +207 -213
  120. package/dist/esm/api/generated-indexer-api.js.map +1 -1
  121. package/dist/esm/api/generated-wallet-api.d.ts +36 -36
  122. package/dist/esm/api/generated-wallet-api.js +114 -120
  123. package/dist/esm/api/generated-wallet-api.js.map +1 -1
  124. package/dist/esm/api/generated-wc-api.d.ts +219 -0
  125. package/dist/esm/api/generated-wc-api.js +242 -0
  126. package/dist/esm/api/generated-wc-api.js.map +1 -0
  127. package/dist/esm/api/index.d.ts +1 -0
  128. package/dist/esm/api/index.js +1 -0
  129. package/dist/esm/api/index.js.map +1 -1
  130. package/dist/esm/assets/assets/icons/close.svg +4 -0
  131. package/dist/esm/assets/assets/images/extension.png +0 -0
  132. package/dist/esm/assets/assets/images/walletConnect.png +0 -0
  133. package/dist/esm/assets/icons/close.svg +4 -0
  134. package/dist/esm/assets/images/extension.png +0 -0
  135. package/dist/esm/assets/images/walletConnect.png +0 -0
  136. package/dist/esm/constants/config.constants.d.ts +1 -0
  137. package/dist/esm/constants/config.constants.js +1 -0
  138. package/dist/esm/constants/config.constants.js.map +1 -1
  139. package/dist/esm/constants/wc.constants.d.ts +1 -0
  140. package/dist/esm/constants/wc.constants.js +2 -0
  141. package/dist/esm/constants/wc.constants.js.map +1 -0
  142. package/dist/esm/helpers/handleResponse.helper.d.ts +2 -1
  143. package/dist/esm/helpers/handleResponse.helper.js +9 -0
  144. package/dist/esm/helpers/handleResponse.helper.js.map +1 -1
  145. package/dist/esm/helpers/mobile-check.helper.d.ts +7 -0
  146. package/dist/esm/helpers/mobile-check.helper.js +23 -0
  147. package/dist/esm/helpers/mobile-check.helper.js.map +1 -0
  148. package/dist/esm/index.d.ts +2 -1
  149. package/dist/esm/index.js +1 -0
  150. package/dist/esm/index.js.map +1 -1
  151. package/dist/esm/requests/connect.d.ts +1 -1
  152. package/dist/esm/requests/connect.js +91 -16
  153. package/dist/esm/requests/connect.js.map +1 -1
  154. package/dist/esm/requests/disconnect.js +48 -14
  155. package/dist/esm/requests/disconnect.js.map +1 -1
  156. package/dist/esm/requests/getAccounts.js +51 -14
  157. package/dist/esm/requests/getAccounts.js.map +1 -1
  158. package/dist/esm/requests/getActiveAccount.js +51 -14
  159. package/dist/esm/requests/getActiveAccount.js.map +1 -1
  160. package/dist/esm/requests/getActiveNetwork.js +53 -14
  161. package/dist/esm/requests/getActiveNetwork.js.map +1 -1
  162. package/dist/esm/requests/getBalance.js +50 -17
  163. package/dist/esm/requests/getBalance.js.map +1 -1
  164. package/dist/esm/requests/getCoinsBalance.js +50 -17
  165. package/dist/esm/requests/getCoinsBalance.js.map +1 -1
  166. package/dist/esm/requests/getIsConnected.js +51 -14
  167. package/dist/esm/requests/getIsConnected.js.map +1 -1
  168. package/dist/esm/requests/getNodeOffers.js +48 -15
  169. package/dist/esm/requests/getNodeOffers.js.map +1 -1
  170. package/dist/esm/requests/getNodeTransfer.js +48 -15
  171. package/dist/esm/requests/getNodeTransfer.js.map +1 -1
  172. package/dist/esm/requests/getNodeTransfers.js +50 -17
  173. package/dist/esm/requests/getNodeTransfers.js.map +1 -1
  174. package/dist/esm/requests/getOffers.js +48 -15
  175. package/dist/esm/requests/getOffers.js.map +1 -1
  176. package/dist/esm/requests/getStatus.js +58 -14
  177. package/dist/esm/requests/getStatus.js.map +1 -1
  178. package/dist/esm/requests/getTransfer.js +50 -15
  179. package/dist/esm/requests/getTransfer.js.map +1 -1
  180. package/dist/esm/requests/getTransfers.js +50 -17
  181. package/dist/esm/requests/getTransfers.js.map +1 -1
  182. package/dist/esm/requests/getWalletVersion.js +59 -15
  183. package/dist/esm/requests/getWalletVersion.js.map +1 -1
  184. package/dist/esm/requests/ledgerApi.js +53 -25
  185. package/dist/esm/requests/ledgerApi.js.map +1 -1
  186. package/dist/esm/requests/signMessage.js +49 -16
  187. package/dist/esm/requests/signMessage.js.map +1 -1
  188. package/dist/esm/requests/singBatch.js +48 -15
  189. package/dist/esm/requests/singBatch.js.map +1 -1
  190. package/dist/esm/requests/submitCommands.js +56 -23
  191. package/dist/esm/requests/submitCommands.js.map +1 -1
  192. package/dist/esm/requests/submitInstructionChoice.js +56 -23
  193. package/dist/esm/requests/submitInstructionChoice.js.map +1 -1
  194. package/dist/esm/services/index.d.ts +0 -0
  195. package/dist/esm/services/index.js +2 -0
  196. package/dist/esm/services/index.js.map +1 -0
  197. package/dist/esm/services/indexedDB/index.d.ts +1 -0
  198. package/dist/esm/services/indexedDB/index.js +2 -0
  199. package/dist/esm/services/indexedDB/index.js.map +1 -0
  200. package/dist/esm/services/indexedDB/wc-session.storage.d.ts +10 -0
  201. package/dist/esm/services/indexedDB/wc-session.storage.js +51 -0
  202. package/dist/esm/services/indexedDB/wc-session.storage.js.map +1 -0
  203. package/dist/esm/services/wc-service/connector-select.d.ts +7 -0
  204. package/dist/esm/services/wc-service/connector-select.js +65 -0
  205. package/dist/esm/services/wc-service/connector-select.js.map +1 -0
  206. package/dist/esm/services/wc-service/index.d.ts +0 -0
  207. package/dist/esm/services/wc-service/index.js +2 -0
  208. package/dist/esm/services/wc-service/index.js.map +1 -0
  209. package/dist/esm/services/wc-service/prepare-wc.d.ts +1 -0
  210. package/dist/esm/services/wc-service/prepare-wc.js +11 -0
  211. package/dist/esm/services/wc-service/prepare-wc.js.map +1 -0
  212. package/dist/esm/services/wc-service/wc-request-separator.d.ts +1 -0
  213. package/dist/esm/services/wc-service/wc-request-separator.js +23 -0
  214. package/dist/esm/services/wc-service/wc-request-separator.js.map +1 -0
  215. package/dist/esm/services/wc-service/wc-service.d.ts +35 -0
  216. package/dist/esm/services/wc-service/wc-service.js +185 -0
  217. package/dist/esm/services/wc-service/wc-service.js.map +1 -0
  218. package/dist/esm/styles.css +110 -0
  219. package/dist/esm/triggersNative/onAccountsChanged.js +45 -30
  220. package/dist/esm/triggersNative/onAccountsChanged.js.map +1 -1
  221. package/dist/esm/triggersNative/onConnectionStatusChanged.js +48 -33
  222. package/dist/esm/triggersNative/onConnectionStatusChanged.js.map +1 -1
  223. package/dist/esm/triggersNative/onTxChanged.js +24 -9
  224. package/dist/esm/triggersNative/onTxChanged.js.map +1 -1
  225. package/dist/esm/types/communication.types.d.ts +1 -0
  226. package/dist/esm/types/connect.type.d.ts +9 -0
  227. package/dist/esm/types/connect.type.js +7 -0
  228. package/dist/esm/types/connect.type.js.map +1 -1
  229. package/package.json +12 -8
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.isExpectedResponse = exports.isPossibleResponseType = void 0;
3
+ exports.isExpectedMobileResponse = exports.isExpectedResponse = exports.isPossibleResponseType = void 0;
4
4
  const constants_1 = require("../constants");
5
5
  const types_1 = require("../types");
6
6
  const isPossibleResponseType = (str) => {
@@ -23,4 +23,14 @@ const isExpectedResponse = (event, id, type) => {
23
23
  }
24
24
  };
25
25
  exports.isExpectedResponse = isExpectedResponse;
26
+ const isExpectedMobileResponse = (event, id, type) => {
27
+ if (type) {
28
+ console.log('🚀 ~ file: handleResponse.helper.ts:38 ~ type:', type, event.type === type, event.id == id);
29
+ return event.type === type && event.id == id;
30
+ }
31
+ else {
32
+ return (0, exports.isPossibleResponseType)(event.type || '') && event.id == id;
33
+ }
34
+ };
35
+ exports.isExpectedMobileResponse = isExpectedMobileResponse;
26
36
  //# sourceMappingURL=handleResponse.helper.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"handleResponse.helper.js","sourceRoot":"","sources":["../../../src/helpers/handleResponse.helper.ts"],"names":[],"mappings":";;;AAAA,4CAA6C;AAC7C,oCAA2C;AAGpC,MAAM,sBAAsB,GAAG,CAAC,GAAW,EAAiC,EAAE;IACnF,MAAM,UAAU,GAAsB,MAAM,CAAC,MAAM,CAAC,uBAAe,CAAC,CAAC;IACrE,OAAO,UAAU,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,GAAG,KAAK,GAAG,IAAI,WAAW,CAAC,CAAC;AAC/D,CAAC,CAAC;AAHW,QAAA,sBAAsB,0BAGjC;AAEK,MAAM,kBAAkB,GAAG,CAChC,KAAmB,EACnB,EAAU,EACV,IAA6B,EACpB,EAAE;IACX,IAAI,IAAI,EAAE;QACR,OAAO,CACL,KAAK,CAAC,MAAM,KAAK,MAAM;YACvB,KAAK,CAAC,IAAI,EAAE,MAAM,KAAK,yBAAa;YACpC,KAAK,CAAC,IAAI,EAAE,IAAI,KAAK,IAAI;YACzB,KAAK,CAAC,IAAI,EAAE,EAAE,IAAI,EAAE,CACrB,CAAC;KACH;SAAM;QACL,OAAO,CACL,KAAK,CAAC,MAAM,KAAK,MAAM;YACvB,KAAK,CAAC,IAAI,EAAE,MAAM,KAAK,yBAAa;YACpC,IAAA,8BAAsB,EAAC,KAAK,CAAC,IAAI,EAAE,IAAI,IAAI,EAAE,CAAC;YAC9C,KAAK,CAAC,IAAI,EAAE,EAAE,IAAI,EAAE,CACrB,CAAC;KACH;AACH,CAAC,CAAC;AApBW,QAAA,kBAAkB,sBAoB7B"}
1
+ {"version":3,"file":"handleResponse.helper.js","sourceRoot":"","sources":["../../../src/helpers/handleResponse.helper.ts"],"names":[],"mappings":";;;AAAA,4CAA6C;AAC7C,oCAA2C;AAGpC,MAAM,sBAAsB,GAAG,CAAC,GAAW,EAAiC,EAAE;IACnF,MAAM,UAAU,GAAsB,MAAM,CAAC,MAAM,CAAC,uBAAe,CAAC,CAAC;IACrE,OAAO,UAAU,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,GAAG,KAAK,GAAG,IAAI,WAAW,CAAC,CAAC;AAC/D,CAAC,CAAC;AAHW,QAAA,sBAAsB,0BAGjC;AAEK,MAAM,kBAAkB,GAAG,CAChC,KAAmB,EACnB,EAAU,EACV,IAA6B,EACpB,EAAE;IACX,IAAI,IAAI,EAAE;QACR,OAAO,CACL,KAAK,CAAC,MAAM,KAAK,MAAM;YACvB,KAAK,CAAC,IAAI,EAAE,MAAM,KAAK,yBAAa;YACpC,KAAK,CAAC,IAAI,EAAE,IAAI,KAAK,IAAI;YACzB,KAAK,CAAC,IAAI,EAAE,EAAE,IAAI,EAAE,CACrB,CAAC;KACH;SAAM;QACL,OAAO,CACL,KAAK,CAAC,MAAM,KAAK,MAAM;YACvB,KAAK,CAAC,IAAI,EAAE,MAAM,KAAK,yBAAa;YACpC,IAAA,8BAAsB,EAAC,KAAK,CAAC,IAAI,EAAE,IAAI,IAAI,EAAE,CAAC;YAC9C,KAAK,CAAC,IAAI,EAAE,EAAE,IAAI,EAAE,CACrB,CAAC;KACH;AACH,CAAC,CAAC;AApBW,QAAA,kBAAkB,sBAoB7B;AAEK,MAAM,wBAAwB,GAAG,CACtC,KAA8B,EAC9B,EAAU,EACV,IAA6B,EACpB,EAAE;IACX,IAAI,IAAI,EAAE;QACR,OAAO,CAAC,GAAG,CACT,gDAAgD,EAChD,IAAI,EACJ,KAAK,CAAC,IAAI,KAAK,IAAI,EACnB,KAAK,CAAC,EAAE,IAAI,EAAE,CACf,CAAC;QACF,OAAO,KAAK,CAAC,IAAI,KAAK,IAAI,IAAI,KAAK,CAAC,EAAE,IAAI,EAAE,CAAC;KAC9C;SAAM;QACL,OAAO,IAAA,8BAAsB,EAAC,KAAK,CAAC,IAAI,IAAI,EAAE,CAAC,IAAI,KAAK,CAAC,EAAE,IAAI,EAAE,CAAC;KACnE;AACH,CAAC,CAAC;AAhBW,QAAA,wBAAwB,4BAgBnC"}
@@ -0,0 +1,7 @@
1
+ type DeviceInfo = {
2
+ isMobile: boolean;
3
+ isIOS: boolean;
4
+ isAndroid: boolean;
5
+ };
6
+ export declare const getDeviceInfo: () => DeviceInfo;
7
+ export {};
@@ -0,0 +1,27 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getDeviceInfo = void 0;
4
+ const getDeviceInfo = () => {
5
+ if (typeof navigator === 'undefined') {
6
+ return {
7
+ isMobile: false,
8
+ isIOS: false,
9
+ isAndroid: false,
10
+ };
11
+ }
12
+ const ua = navigator.userAgent.toLowerCase();
13
+ const platform = navigator.platform;
14
+ const isAndroid = ua.includes('android');
15
+ const isIOS = ua.includes('iphone') ||
16
+ ua.includes('ipad') ||
17
+ ua.includes('ipod') ||
18
+ (platform === 'MacIntel' && navigator.maxTouchPoints > 1);
19
+ const isMobile = isAndroid || isIOS;
20
+ return {
21
+ isMobile,
22
+ isIOS,
23
+ isAndroid,
24
+ };
25
+ };
26
+ exports.getDeviceInfo = getDeviceInfo;
27
+ //# sourceMappingURL=mobile-check.helper.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mobile-check.helper.js","sourceRoot":"","sources":["../../../src/helpers/mobile-check.helper.ts"],"names":[],"mappings":";;;AAMO,MAAM,aAAa,GAAG,GAAe,EAAE;IAC5C,IAAI,OAAO,SAAS,KAAK,WAAW,EAAE;QACpC,OAAO;YACL,QAAQ,EAAE,KAAK;YACf,KAAK,EAAE,KAAK;YACZ,SAAS,EAAE,KAAK;SACjB,CAAC;KACH;IAED,MAAM,EAAE,GAAG,SAAS,CAAC,SAAS,CAAC,WAAW,EAAE,CAAC;IAC7C,MAAM,QAAQ,GAAG,SAAS,CAAC,QAAQ,CAAC;IAEpC,MAAM,SAAS,GAAG,EAAE,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;IAEzC,MAAM,KAAK,GACT,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC;QACrB,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC;QACnB,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC;QACnB,CAAC,QAAQ,KAAK,UAAU,IAAI,SAAS,CAAC,cAAc,GAAG,CAAC,CAAC,CAAC;IAE5D,MAAM,QAAQ,GAAG,SAAS,IAAI,KAAK,CAAC;IAEpC,OAAO;QACL,QAAQ;QACR,KAAK;QACL,SAAS;KACV,CAAC;AACJ,CAAC,CAAC;AA3BW,QAAA,aAAa,iBA2BxB"}
@@ -1,6 +1,7 @@
1
1
  export * from './types';
2
2
  export * from './constants';
3
3
  export * from './types';
4
+ import './styles.css';
4
5
  export declare const consoleWallet: {
5
6
  onAccountsChanged: (onChange?: ((value: import("./types").GetAccountResponse) => void) | undefined) => void;
6
7
  onConnectionStatusChanged: (onChange?: ((value: import("./types").StatusEvent) => void) | undefined) => void;
@@ -11,7 +12,7 @@ export declare const consoleWallet: {
11
12
  submitCommands: (data: import("./types").SignSendRequest) => Promise<import("./types").SignSendResponse>;
12
13
  signBatch: (data: import("./types").SignBatchRequest) => Promise<import("./types").SignBatchResponse>;
13
14
  submitInstructionChoice: (data: import("./types").SignInstructionChoiceRequest) => Promise<import("./types").SignInstructionChoiceResponse>;
14
- connect: ({ icon, name }: import("./types").ConnectRequest) => Promise<import("./types").ConnectResponse>;
15
+ connect: ({ icon, name, target, }: import("./types").ConnectRequest) => Promise<import("./types").ConnectResponse>;
15
16
  disconnect: () => Promise<void>;
16
17
  isConnected: () => Promise<import("./types").ConnectResponse>;
17
18
  status: () => Promise<import("./types").StatusEvent>;
package/dist/cjs/index.js CHANGED
@@ -8,6 +8,7 @@ const utilsInternal = tslib_1.__importStar(require("./utils"));
8
8
  tslib_1.__exportStar(require("./types"), exports);
9
9
  tslib_1.__exportStar(require("./constants"), exports);
10
10
  tslib_1.__exportStar(require("./types"), exports);
11
+ require("./styles.css");
11
12
  exports.consoleWallet = {
12
13
  ...requests,
13
14
  ...triggersNative,
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;AAAA,6DAAuC;AACvC,yEAAmD;AACnD,+DAAyC;AAEzC,kDAAwB;AACxB,sDAA4B;AAC5B,kDAAwB;AAEX,QAAA,aAAa,GAAG;IAC3B,GAAG,QAAQ;IACX,GAAG,cAAc;CAClB,CAAC;AAEW,QAAA,KAAK,GAAG,EAAE,GAAG,aAAa,EAAE,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;AAAA,6DAAuC;AACvC,yEAAmD;AACnD,+DAAyC;AAEzC,kDAAwB;AACxB,sDAA4B;AAC5B,kDAAwB;AAExB,wBAAsB;AAET,QAAA,aAAa,GAAG;IAC3B,GAAG,QAAQ;IACX,GAAG,cAAc;CAClB,CAAC;AAEW,QAAA,KAAK,GAAG,EAAE,GAAG,aAAa,EAAE,CAAC"}
@@ -11,4 +11,4 @@ import type { ConnectRequest, ConnectResponse } from '../types';
11
11
  * @example
12
12
  * await connect({ name: 'Canton Demo', icon: 'https://example.com/icon.png' });
13
13
  */
14
- export declare const connect: ({ icon, name }: ConnectRequest) => Promise<ConnectResponse>;
14
+ export declare const connect: ({ icon, name, target, }: ConnectRequest) => Promise<ConnectResponse>;
@@ -2,36 +2,33 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.connect = void 0;
4
4
  const constants_1 = require("../constants");
5
+ const wc_constants_1 = require("../constants/wc.constants");
5
6
  const handleResponse_helper_1 = require("../helpers/handleResponse.helper");
7
+ const mobile_check_helper_1 = require("../helpers/mobile-check.helper");
8
+ const connector_select_1 = require("../services/wc-service/connector-select");
9
+ const prepare_wc_1 = require("../services/wc-service/prepare-wc");
10
+ const wc_service_1 = require("../services/wc-service/wc-service");
6
11
  const types_1 = require("../types");
12
+ const checkAvailability_1 = require("./checkAvailability");
7
13
  const getIsConnected_1 = require("./getIsConnected");
8
- /**
9
- * Initiates a connection request to the wallet with optional dApp metadata.
10
- *
11
- * Emits `${PUBLIC_REQUESTS.CONNECT}_RESPONSE` when the user approves or rejects.
12
- * If the dApp origin is not yet connected, the wallet will prompt the user.
13
- *
14
- * @param {string} [name] Human‑readable dApp name shown in the wallet UI.
15
- * @param {string} [icon] Absolute URL to an icon displayed during connect.
16
- * @returns {Promise<ConnectResponse>}
17
- * @example
18
- * await connect({ name: 'Canton Demo', icon: 'https://example.com/icon.png' });
19
- */
20
- const connect = async ({ name, icon, }) => new Promise((resolve, reject) => {
14
+ const type = types_1.PUBLIC_REQUESTS.CONNECT;
15
+ const browserFunction = async ({ name, icon }) => new Promise((resolve, reject) => {
21
16
  const handleRequest = () => {
22
17
  const id = crypto.randomUUID();
23
18
  window.postMessage({
24
- type: types_1.PUBLIC_REQUESTS.CONNECT,
19
+ type,
25
20
  target: constants_1.WALLET_TARGET,
26
21
  sdkVersion: constants_1.PROVIDER_VERSION,
27
22
  id,
23
+ fromOrigin: window.location.origin,
28
24
  name,
29
25
  icon,
30
26
  }, '*');
31
27
  function handleResponse(event) {
32
- if ((0, handleResponse_helper_1.isExpectedResponse)(event, id, `${types_1.PUBLIC_REQUESTS.CONNECT}_RESPONSE`)) {
28
+ if ((0, handleResponse_helper_1.isExpectedResponse)(event, id, `${type}_RESPONSE`)) {
33
29
  window.removeEventListener('message', handleResponse);
34
30
  if (event.data.error) {
31
+ console.log('🚀 ~ file: connect.ts:37 ~ event.data.error:', event.data.error);
35
32
  reject(event.data.error);
36
33
  }
37
34
  else {
@@ -55,5 +52,83 @@ const connect = async ({ name, icon, }) => new Promise((resolve, reject) => {
55
52
  handleRequest();
56
53
  });
57
54
  });
55
+ const mobileFunction = async ({ name, icon, target = 'combined', }) => new Promise((resolve, reject) => {
56
+ const handleRequest = () => {
57
+ const id = crypto.randomUUID();
58
+ wc_service_1.wcSessionService
59
+ .init({
60
+ type,
61
+ target,
62
+ sdkVersion: constants_1.PROVIDER_VERSION,
63
+ id,
64
+ fromOrigin: window.location.origin,
65
+ name,
66
+ icon,
67
+ })
68
+ .then(() => {
69
+ (0, prepare_wc_1.handlePrepareWC)();
70
+ wc_service_1.wcSessionService.addSubscriber(id, (message) => {
71
+ console.log('🚀 ~ file: connect.ts:88 ~ response:', message);
72
+ const response = JSON.parse(message.serializedPayload);
73
+ console.log('🚀 ~ file: connect.ts:90 ~ response:', response);
74
+ console.log('🚀 ~ file: connect.ts:91 ~ isExpectedMobileResponse:', (0, handleResponse_helper_1.isExpectedMobileResponse)(response, id, `${type}_RESPONSE`));
75
+ if ((0, handleResponse_helper_1.isExpectedMobileResponse)(response, id, `${type}_RESPONSE`)) {
76
+ if (response.error) {
77
+ reject(response.error);
78
+ }
79
+ else {
80
+ resolve(response.data);
81
+ document.getElementById(wc_constants_1.WC_PLACEHOLDER_DIV_ID)?.remove();
82
+ }
83
+ }
84
+ });
85
+ });
86
+ };
87
+ (0, getIsConnected_1.isConnected)()
88
+ .then((isConnectedResponse) => {
89
+ if (isConnectedResponse.isConnected) {
90
+ resolve(isConnectedResponse);
91
+ }
92
+ else {
93
+ handleRequest();
94
+ }
95
+ })
96
+ .catch(() => {
97
+ handleRequest();
98
+ });
99
+ });
100
+ /**
101
+ * Initiates a connection request to the wallet with optional dApp metadata.
102
+ *
103
+ * Emits `${PUBLIC_REQUESTS.CONNECT}_RESPONSE` when the user approves or rejects.
104
+ * If the dApp origin is not yet connected, the wallet will prompt the user.
105
+ *
106
+ * @param {string} [name] Human‑readable dApp name shown in the wallet UI.
107
+ * @param {string} [icon] Absolute URL to an icon displayed during connect.
108
+ * @returns {Promise<ConnectResponse>}
109
+ * @example
110
+ * await connect({ name: 'Canton Demo', icon: 'https://example.com/icon.png' });
111
+ */
112
+ const connect = async ({ name, icon, target = 'combined' }) => {
113
+ const deviceInfo = (0, mobile_check_helper_1.getDeviceInfo)();
114
+ console.log('🚀 ~ file: connect.ts:130 ~ deviceInfo:', deviceInfo);
115
+ alert(JSON.stringify(deviceInfo));
116
+ if (target === 'local') {
117
+ await browserFunction({ name, icon, target });
118
+ }
119
+ if (target === 'remote') {
120
+ return await mobileFunction({ name, icon, target });
121
+ }
122
+ const isExtensionInstalled = await (0, checkAvailability_1.checkExtensionAvailability)();
123
+ if (isExtensionInstalled.status === 'notInstalled' || deviceInfo.isMobile) {
124
+ return await mobileFunction({ name, icon, target });
125
+ }
126
+ else {
127
+ return await (0, connector_select_1.selectConnector)({
128
+ mobileFunction: async () => await mobileFunction({ name, icon, target }),
129
+ browserFunction: async () => await browserFunction({ name, icon, target }),
130
+ });
131
+ }
132
+ };
58
133
  exports.connect = connect;
59
134
  //# sourceMappingURL=connect.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"connect.js","sourceRoot":"","sources":["../../../src/requests/connect.ts"],"names":[],"mappings":";;;AAAA,4CAA+D;AAC/D,4EAAsE;AACtE,oCAA2C;AAE3C,qDAA+C;AAE/C;;;;;;;;;;;GAWG;AACI,MAAM,OAAO,GAAiE,KAAK,EAAE,EAC1F,IAAI,EACJ,IAAI,GACL,EAAE,EAAE,CACH,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;IAC9B,MAAM,aAAa,GAAG,GAAG,EAAE;QACzB,MAAM,EAAE,GAAG,MAAM,CAAC,UAAU,EAAE,CAAC;QAE/B,MAAM,CAAC,WAAW,CAChB;YACE,IAAI,EAAE,uBAAe,CAAC,OAAO;YAC7B,MAAM,EAAE,yBAAa;YACrB,UAAU,EAAE,4BAAgB;YAC5B,EAAE;YACF,IAAI;YACJ,IAAI;SACL,EACD,GAAG,CACJ,CAAC;QAEF,SAAS,cAAc,CAAC,KAAmB;YACzC,IAAI,IAAA,0CAAkB,EAAC,KAAK,EAAE,EAAE,EAAE,GAAG,uBAAe,CAAC,OAAO,WAAW,CAAC,EAAE;gBACxE,MAAM,CAAC,mBAAmB,CAAC,SAAS,EAAE,cAAc,CAAC,CAAC;gBAEtD,IAAI,KAAK,CAAC,IAAI,CAAC,KAAK,EAAE;oBACpB,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;iBAC1B;qBAAM;oBACL,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;iBAC1B;aACF;QACH,CAAC;QAED,MAAM,CAAC,gBAAgB,CAAC,SAAS,EAAE,cAAc,CAAC,CAAC;IACrD,CAAC,CAAC;IAEF,IAAA,4BAAW,GAAE;SACV,IAAI,CAAC,CAAC,mBAAmB,EAAE,EAAE;QAC5B,IAAI,mBAAmB,CAAC,WAAW,EAAE;YACnC,OAAO,CAAC,mBAAmB,CAAC,CAAC;YAC7B,OAAO;SACR;aAAM;YACL,aAAa,EAAE,CAAC;SACjB;IACH,CAAC,CAAC;SACD,KAAK,CAAC,GAAG,EAAE;QACV,aAAa,EAAE,CAAC;IAClB,CAAC,CAAC,CAAC;AACP,CAAC,CAAC,CAAC;AA/CQ,QAAA,OAAO,WA+Cf"}
1
+ {"version":3,"file":"connect.js","sourceRoot":"","sources":["../../../src/requests/connect.ts"],"names":[],"mappings":"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"}
@@ -3,27 +3,22 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.disconnect = void 0;
4
4
  const constants_1 = require("../constants");
5
5
  const handleResponse_helper_1 = require("../helpers/handleResponse.helper");
6
+ const prepare_wc_1 = require("../services/wc-service/prepare-wc");
7
+ const wc_request_separator_1 = require("../services/wc-service/wc-request-separator");
8
+ const wc_service_1 = require("../services/wc-service/wc-service");
6
9
  const types_1 = require("../types");
7
- /**
8
- * Terminates the current dApp–wallet connection.
9
- *
10
- * Emits `${PUBLIC_REQUESTS.DISCONNECT}_RESPONSE` when the user confirms.
11
- * After disconnect, most requests will trigger a reconnect prompt.
12
- *
13
- * @returns {Promise<DisconnectResponse>} "disconnected" when completed.
14
- * @example
15
- * await disconnect();
16
- */
17
- const disconnect = async () => new Promise((resolve, reject) => {
10
+ const type = types_1.PUBLIC_REQUESTS.DISCONNECT;
11
+ const browserFunction = async () => new Promise((resolve, reject) => {
18
12
  const id = crypto.randomUUID();
19
13
  window.postMessage({
20
- type: types_1.PUBLIC_REQUESTS.DISCONNECT,
14
+ type,
21
15
  target: constants_1.WALLET_TARGET,
22
16
  sdkVersion: constants_1.PROVIDER_VERSION,
23
17
  id,
18
+ fromOrigin: window.location.origin,
24
19
  }, '*');
25
20
  function handleResponse(event) {
26
- if ((0, handleResponse_helper_1.isExpectedResponse)(event, id, `${types_1.PUBLIC_REQUESTS.DISCONNECT}_RESPONSE`)) {
21
+ if ((0, handleResponse_helper_1.isExpectedResponse)(event, id, `${type}_RESPONSE`)) {
27
22
  window.removeEventListener('message', handleResponse);
28
23
  if (event.data.error) {
29
24
  reject(event.data.error);
@@ -35,5 +30,44 @@ const disconnect = async () => new Promise((resolve, reject) => {
35
30
  }
36
31
  window.addEventListener('message', handleResponse);
37
32
  });
33
+ const mobileFunction = async () => new Promise((resolve, reject) => {
34
+ const id = crypto.randomUUID();
35
+ wc_service_1.wcSessionService
36
+ .sendMessage(JSON.stringify({
37
+ type,
38
+ target: constants_1.WALLET_TARGET,
39
+ sdkVersion: constants_1.PROVIDER_VERSION,
40
+ id,
41
+ fromOrigin: window.location.origin,
42
+ }), type, id)
43
+ .then(() => {
44
+ (0, prepare_wc_1.handlePrepareWC)();
45
+ wc_service_1.wcSessionService.addSubscriber(id, (message) => {
46
+ const response = JSON.parse(message.serializedPayload);
47
+ if ((0, handleResponse_helper_1.isExpectedMobileResponse)(response, id, `${type}_RESPONSE`)) {
48
+ if (response.error) {
49
+ reject(response.error);
50
+ }
51
+ else {
52
+ resolve(response.data);
53
+ }
54
+ }
55
+ });
56
+ });
57
+ });
58
+ /**
59
+ * Terminates the current dApp–wallet connection.
60
+ *
61
+ * Emits `${PUBLIC_REQUESTS.DISCONNECT}_RESPONSE` when the user confirms.
62
+ * After disconnect, most requests will trigger a reconnect prompt.
63
+ *
64
+ * @returns {Promise<DisconnectResponse>} "disconnected" when completed.
65
+ * @example
66
+ * await disconnect();
67
+ */
68
+ const disconnect = async () => {
69
+ const res = await (0, wc_request_separator_1.wcRequestLogicSeparator)(async () => await browserFunction(), async () => await mobileFunction());
70
+ return res;
71
+ };
38
72
  exports.disconnect = disconnect;
39
73
  //# sourceMappingURL=disconnect.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"disconnect.js","sourceRoot":"","sources":["../../../src/requests/disconnect.ts"],"names":[],"mappings":";;;AAAA,4CAA+D;AAC/D,4EAAsE;AACtE,oCAA2C;AAG3C;;;;;;;;;GASG;AACI,MAAM,UAAU,GAAsC,KAAK,IAAI,EAAE,CACtE,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;IAC9B,MAAM,EAAE,GAAG,MAAM,CAAC,UAAU,EAAE,CAAC;IAE/B,MAAM,CAAC,WAAW,CAChB;QACE,IAAI,EAAE,uBAAe,CAAC,UAAU;QAChC,MAAM,EAAE,yBAAa;QACrB,UAAU,EAAE,4BAAgB;QAC5B,EAAE;KACH,EACD,GAAG,CACJ,CAAC;IAEF,SAAS,cAAc,CAAC,KAAmB;QACzC,IAAI,IAAA,0CAAkB,EAAC,KAAK,EAAE,EAAE,EAAE,GAAG,uBAAe,CAAC,UAAU,WAAW,CAAC,EAAE;YAC3E,MAAM,CAAC,mBAAmB,CAAC,SAAS,EAAE,cAAc,CAAC,CAAC;YAEtD,IAAI,KAAK,CAAC,IAAI,CAAC,KAAK,EAAE;gBACpB,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;aAC1B;iBAAM;gBACL,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;aAC1B;SACF;IACH,CAAC;IAED,MAAM,CAAC,gBAAgB,CAAC,SAAS,EAAE,cAAc,CAAC,CAAC;AACrD,CAAC,CAAC,CAAC;AA3BQ,QAAA,UAAU,cA2BlB"}
1
+ {"version":3,"file":"disconnect.js","sourceRoot":"","sources":["../../../src/requests/disconnect.ts"],"names":[],"mappings":";;;AAAA,4CAA+D;AAC/D,4EAAgG;AAChG,kEAAoE;AACpE,sFAAsF;AACtF,kEAAqE;AACrE,oCAA2C;AAG3C,MAAM,IAAI,GAAG,uBAAe,CAAC,UAAU,CAAC;AAExC,MAAM,eAAe,GAAsC,KAAK,IAAI,EAAE,CACpE,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;IAC9B,MAAM,EAAE,GAAG,MAAM,CAAC,UAAU,EAAE,CAAC;IAE/B,MAAM,CAAC,WAAW,CAChB;QACE,IAAI;QACJ,MAAM,EAAE,yBAAa;QACrB,UAAU,EAAE,4BAAgB;QAC5B,EAAE;QACF,UAAU,EAAE,MAAM,CAAC,QAAQ,CAAC,MAAM;KACnC,EACD,GAAG,CACJ,CAAC;IAEF,SAAS,cAAc,CAAC,KAAmB;QACzC,IAAI,IAAA,0CAAkB,EAAC,KAAK,EAAE,EAAE,EAAE,GAAG,IAAI,WAAW,CAAC,EAAE;YACrD,MAAM,CAAC,mBAAmB,CAAC,SAAS,EAAE,cAAc,CAAC,CAAC;YAEtD,IAAI,KAAK,CAAC,IAAI,CAAC,KAAK,EAAE;gBACpB,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;aAC1B;iBAAM;gBACL,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;aAC1B;SACF;IACH,CAAC;IAED,MAAM,CAAC,gBAAgB,CAAC,SAAS,EAAE,cAAc,CAAC,CAAC;AACrD,CAAC,CAAC,CAAC;AAEL,MAAM,cAAc,GAAsC,KAAK,IAAI,EAAE,CACnE,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;IAC9B,MAAM,EAAE,GAAG,MAAM,CAAC,UAAU,EAAE,CAAC;IAE/B,6BAAgB;SACb,WAAW,CACV,IAAI,CAAC,SAAS,CAAC;QACb,IAAI;QACJ,MAAM,EAAE,yBAAa;QACrB,UAAU,EAAE,4BAAgB;QAC5B,EAAE;QACF,UAAU,EAAE,MAAM,CAAC,QAAQ,CAAC,MAAM;KACnC,CAAC,EACF,IAAI,EACJ,EAAE,CACH;SACA,IAAI,CAAC,GAAG,EAAE;QACT,IAAA,4BAAe,GAAE,CAAC;QAClB,6BAAgB,CAAC,aAAa,CAAC,EAAE,EAAE,CAAC,OAAO,EAAE,EAAE;YAC7C,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAC;YACvD,IAAI,IAAA,gDAAwB,EAAC,QAAQ,EAAE,EAAE,EAAE,GAAG,IAAI,WAAW,CAAC,EAAE;gBAC9D,IAAI,QAAQ,CAAC,KAAK,EAAE;oBAClB,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;iBACxB;qBAAM;oBACL,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;iBACxB;aACF;QACH,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACP,CAAC,CAAC,CAAC;AAEL;;;;;;;;;GASG;AACI,MAAM,UAAU,GAAsC,KAAK,IAAI,EAAE;IACtE,MAAM,GAAG,GAAG,MAAM,IAAA,8CAAuB,EACvC,KAAK,IAAI,EAAE,CAAC,MAAM,eAAe,EAAE,EACnC,KAAK,IAAI,EAAE,CAAC,MAAM,cAAc,EAAE,CACnC,CAAC;IAEF,OAAO,GAAyB,CAAC;AACnC,CAAC,CAAC;AAPW,QAAA,UAAU,cAOrB"}
@@ -3,31 +3,25 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.getAccounts = void 0;
4
4
  const constants_1 = require("../constants");
5
5
  const handleResponse_helper_1 = require("../helpers/handleResponse.helper");
6
+ const wc_request_separator_1 = require("../services/wc-service/wc-request-separator");
7
+ const wc_service_1 = require("../services/wc-service/wc-service");
6
8
  const types_1 = require("../types");
7
- /**
8
- * Lists all accounts available to the connected dApp origin.
9
- *
10
- * Emits `${PUBLIC_REQUESTS.GET_ACCOUNTS}_RESPONSE` with an array of wallets.
11
- * Requires a connected origin; otherwise the wallet may trigger a connect flow.
12
- *
13
- * @returns {Promise<GetAccountsResponse>} Accounts array or undefined.
14
- * @example
15
- * const accounts = await getAccounts();
16
- */
17
- const getAccounts = async () => new Promise((resolve, reject) => {
9
+ const type = types_1.PUBLIC_REQUESTS.GET_ACCOUNTS;
10
+ const browserFunction = async () => new Promise((resolve, reject) => {
18
11
  const id = crypto.randomUUID();
19
12
  window.postMessage({
20
- type: types_1.PUBLIC_REQUESTS.GET_ACCOUNTS,
13
+ type,
21
14
  target: constants_1.WALLET_TARGET,
22
15
  sdkVersion: constants_1.PROVIDER_VERSION,
23
16
  id,
17
+ fromOrigin: window.location.origin,
24
18
  }, '*');
25
19
  const timeOut = setTimeout(() => {
26
20
  const error = types_1.EIP_1474_ERROR[types_1.EIP_1474_ERROR_ENUM.ResourceUnavailable];
27
21
  reject(error);
28
22
  }, 500);
29
23
  function handleResponse(event) {
30
- if ((0, handleResponse_helper_1.isExpectedResponse)(event, id, `${types_1.PUBLIC_REQUESTS.GET_ACCOUNTS}_RESPONSE`)) {
24
+ if ((0, handleResponse_helper_1.isExpectedResponse)(event, id, `${type}_RESPONSE`)) {
31
25
  window.removeEventListener('message', handleResponse);
32
26
  clearTimeout(timeOut);
33
27
  if (event.data.error) {
@@ -40,5 +34,48 @@ const getAccounts = async () => new Promise((resolve, reject) => {
40
34
  }
41
35
  window.addEventListener('message', handleResponse);
42
36
  });
37
+ const mobileFunction = async () => new Promise((resolve, reject) => {
38
+ const id = crypto.randomUUID();
39
+ // TODO: add timeout for request
40
+ // const timeOut = setTimeout(() => {
41
+ // const error: ConsoleWalletError = EIP_1474_ERROR[EIP_1474_ERROR_ENUM.ResourceUnavailable];
42
+ // reject(error);
43
+ // }, 500);
44
+ wc_service_1.wcSessionService
45
+ .sendMessage(JSON.stringify({
46
+ type,
47
+ target: constants_1.WALLET_TARGET,
48
+ sdkVersion: constants_1.PROVIDER_VERSION,
49
+ id,
50
+ fromOrigin: window.location.origin,
51
+ }), type, id)
52
+ .then(() => {
53
+ wc_service_1.wcSessionService.addSubscriber(id, (message) => {
54
+ const response = JSON.parse(message.serializedPayload);
55
+ if ((0, handleResponse_helper_1.isExpectedMobileResponse)(response, id, `${type}_RESPONSE`)) {
56
+ if (response.error) {
57
+ reject(response.error);
58
+ }
59
+ else {
60
+ resolve(response.data);
61
+ }
62
+ }
63
+ });
64
+ });
65
+ });
66
+ /**
67
+ * Lists all accounts available to the connected dApp origin.
68
+ *
69
+ * Emits `${PUBLIC_REQUESTS.GET_ACCOUNTS}_RESPONSE` with an array of wallets.
70
+ * Requires a connected origin; otherwise the wallet may trigger a connect flow.
71
+ *
72
+ * @returns {Promise<GetAccountsResponse>} Accounts array or undefined.
73
+ * @example
74
+ * const accounts = await getAccounts();
75
+ */
76
+ const getAccounts = async () => {
77
+ const res = await (0, wc_request_separator_1.wcRequestLogicSeparator)(async () => await browserFunction(), async () => await mobileFunction());
78
+ return res;
79
+ };
43
80
  exports.getAccounts = getAccounts;
44
81
  //# sourceMappingURL=getAccounts.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"getAccounts.js","sourceRoot":"","sources":["../../../src/requests/getAccounts.ts"],"names":[],"mappings":";;;AAAA,4CAA+D;AAC/D,4EAAsE;AACtE,oCAMkB;AAElB;;;;;;;;;GASG;AACI,MAAM,WAAW,GAAuC,KAAK,IAAI,EAAE,CACxE,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;IAC9B,MAAM,EAAE,GAAG,MAAM,CAAC,UAAU,EAAE,CAAC;IAE/B,MAAM,CAAC,WAAW,CAChB;QACE,IAAI,EAAE,uBAAe,CAAC,YAAY;QAClC,MAAM,EAAE,yBAAa;QACrB,UAAU,EAAE,4BAAgB;QAC5B,EAAE;KACH,EACD,GAAG,CACJ,CAAC;IAEF,MAAM,OAAO,GAAG,UAAU,CAAC,GAAG,EAAE;QAC9B,MAAM,KAAK,GAAuB,sBAAc,CAAC,2BAAmB,CAAC,mBAAmB,CAAC,CAAC;QAC1F,MAAM,CAAC,KAAK,CAAC,CAAC;IAChB,CAAC,EAAE,GAAG,CAAC,CAAC;IAER,SAAS,cAAc,CAAC,KAAmB;QACzC,IAAI,IAAA,0CAAkB,EAAC,KAAK,EAAE,EAAE,EAAE,GAAG,uBAAe,CAAC,YAAY,WAAW,CAAC,EAAE;YAC7E,MAAM,CAAC,mBAAmB,CAAC,SAAS,EAAE,cAAc,CAAC,CAAC;YAEtD,YAAY,CAAC,OAAO,CAAC,CAAC;YAEtB,IAAI,KAAK,CAAC,IAAI,CAAC,KAAK,EAAE;gBACpB,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;aAC1B;iBAAM;gBACL,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;aAC1B;SACF;IACH,CAAC;IAED,MAAM,CAAC,gBAAgB,CAAC,SAAS,EAAE,cAAc,CAAC,CAAC;AACrD,CAAC,CAAC,CAAC;AAlCQ,QAAA,WAAW,eAkCnB"}
1
+ {"version":3,"file":"getAccounts.js","sourceRoot":"","sources":["../../../src/requests/getAccounts.ts"],"names":[],"mappings":"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"}
@@ -3,31 +3,25 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.getPrimaryAccount = void 0;
4
4
  const constants_1 = require("../constants");
5
5
  const handleResponse_helper_1 = require("../helpers/handleResponse.helper");
6
+ const wc_request_separator_1 = require("../services/wc-service/wc-request-separator");
7
+ const wc_service_1 = require("../services/wc-service/wc-service");
6
8
  const types_1 = require("../types");
7
- /**
8
- * Returns the active (primary) account selected in the wallet.
9
- *
10
- * Emits `${PUBLIC_REQUESTS.GET_ACTIVE_ACCOUNT}_RESPONSE` with account details.
11
- * If the origin is not connected, the wallet may prevent access or prompt connect.
12
- *
13
- * @returns {Promise<GetAccountResponse>} Active account or undefined.
14
- * @example
15
- * const account = await getPrimaryAccount();
16
- */
17
- const getPrimaryAccount = async () => new Promise((resolve, reject) => {
9
+ const type = types_1.PUBLIC_REQUESTS.GET_ACTIVE_ACCOUNT;
10
+ const browserFunction = async () => new Promise((resolve, reject) => {
18
11
  const id = crypto.randomUUID();
19
12
  window.postMessage({
20
- type: types_1.PUBLIC_REQUESTS.GET_ACTIVE_ACCOUNT,
13
+ type,
21
14
  target: constants_1.WALLET_TARGET,
22
15
  sdkVersion: constants_1.PROVIDER_VERSION,
23
16
  id,
17
+ fromOrigin: window.location.origin,
24
18
  }, '*');
25
19
  const timeOut = setTimeout(() => {
26
20
  const error = types_1.EIP_1474_ERROR[types_1.EIP_1474_ERROR_ENUM.ResourceUnavailable];
27
21
  reject(error);
28
22
  }, 500);
29
23
  function handleResponse(event) {
30
- if ((0, handleResponse_helper_1.isExpectedResponse)(event, id, `${types_1.PUBLIC_REQUESTS.GET_ACTIVE_ACCOUNT}_RESPONSE`)) {
24
+ if ((0, handleResponse_helper_1.isExpectedResponse)(event, id, `${type}_RESPONSE`)) {
31
25
  window.removeEventListener('message', handleResponse);
32
26
  clearTimeout(timeOut);
33
27
  if (event.data.error) {
@@ -40,5 +34,48 @@ const getPrimaryAccount = async () => new Promise((resolve, reject) => {
40
34
  }
41
35
  window.addEventListener('message', handleResponse);
42
36
  });
37
+ const mobileFunction = async () => new Promise((resolve, reject) => {
38
+ const id = crypto.randomUUID();
39
+ // TODO: add timeout for request
40
+ // const timeOut = setTimeout(() => {
41
+ // const error: ConsoleWalletError = EIP_1474_ERROR[EIP_1474_ERROR_ENUM.ResourceUnavailable];
42
+ // reject(error);
43
+ // }, 500);
44
+ wc_service_1.wcSessionService
45
+ .sendMessage(JSON.stringify({
46
+ type,
47
+ target: constants_1.WALLET_TARGET,
48
+ sdkVersion: constants_1.PROVIDER_VERSION,
49
+ id,
50
+ fromOrigin: window.location.origin,
51
+ }), type, id)
52
+ .then(() => {
53
+ wc_service_1.wcSessionService.addSubscriber(id, (message) => {
54
+ const response = JSON.parse(message.serializedPayload);
55
+ if ((0, handleResponse_helper_1.isExpectedMobileResponse)(response, id, `${type}_RESPONSE`)) {
56
+ if (response.error) {
57
+ reject(response.error);
58
+ }
59
+ else {
60
+ resolve(response.data);
61
+ }
62
+ }
63
+ });
64
+ });
65
+ });
66
+ /**
67
+ * Returns the active (primary) account selected in the wallet.
68
+ *
69
+ * Emits `${PUBLIC_REQUESTS.GET_ACTIVE_ACCOUNT}_RESPONSE` with account details.
70
+ * If the origin is not connected, the wallet may prevent access or prompt connect.
71
+ *
72
+ * @returns {Promise<GetAccountResponse>} Active account or undefined.
73
+ * @example
74
+ * const account = await getPrimaryAccount();
75
+ */
76
+ const getPrimaryAccount = async () => {
77
+ const res = await (0, wc_request_separator_1.wcRequestLogicSeparator)(async () => await browserFunction(), async () => await mobileFunction());
78
+ return res;
79
+ };
43
80
  exports.getPrimaryAccount = getPrimaryAccount;
44
81
  //# sourceMappingURL=getActiveAccount.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"getActiveAccount.js","sourceRoot":"","sources":["../../../src/requests/getActiveAccount.ts"],"names":[],"mappings":";;;AAAA,4CAA+D;AAC/D,4EAAsE;AACtE,oCAMkB;AAElB;;;;;;;;;GASG;AACI,MAAM,iBAAiB,GAAsC,KAAK,IAAI,EAAE,CAC7E,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;IAC9B,MAAM,EAAE,GAAG,MAAM,CAAC,UAAU,EAAE,CAAC;IAE/B,MAAM,CAAC,WAAW,CAChB;QACE,IAAI,EAAE,uBAAe,CAAC,kBAAkB;QACxC,MAAM,EAAE,yBAAa;QACrB,UAAU,EAAE,4BAAgB;QAC5B,EAAE;KACH,EACD,GAAG,CACJ,CAAC;IAEF,MAAM,OAAO,GAAG,UAAU,CAAC,GAAG,EAAE;QAC9B,MAAM,KAAK,GAAuB,sBAAc,CAAC,2BAAmB,CAAC,mBAAmB,CAAC,CAAC;QAC1F,MAAM,CAAC,KAAK,CAAC,CAAC;IAChB,CAAC,EAAE,GAAG,CAAC,CAAC;IAER,SAAS,cAAc,CAAC,KAAmB;QACzC,IAAI,IAAA,0CAAkB,EAAC,KAAK,EAAE,EAAE,EAAE,GAAG,uBAAe,CAAC,kBAAkB,WAAW,CAAC,EAAE;YACnF,MAAM,CAAC,mBAAmB,CAAC,SAAS,EAAE,cAAc,CAAC,CAAC;YAEtD,YAAY,CAAC,OAAO,CAAC,CAAC;YAEtB,IAAI,KAAK,CAAC,IAAI,CAAC,KAAK,EAAE;gBACpB,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;aAC1B;iBAAM;gBACL,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;aAC1B;SACF;IACH,CAAC;IAED,MAAM,CAAC,gBAAgB,CAAC,SAAS,EAAE,cAAc,CAAC,CAAC;AACrD,CAAC,CAAC,CAAC;AAlCQ,QAAA,iBAAiB,qBAkCzB"}
1
+ {"version":3,"file":"getActiveAccount.js","sourceRoot":"","sources":["../../../src/requests/getActiveAccount.ts"],"names":[],"mappings":"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"}
@@ -3,31 +3,26 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.getActiveNetwork = void 0;
4
4
  const constants_1 = require("../constants");
5
5
  const handleResponse_helper_1 = require("../helpers/handleResponse.helper");
6
+ const prepare_wc_1 = require("../services/wc-service/prepare-wc");
7
+ const wc_request_separator_1 = require("../services/wc-service/wc-request-separator");
8
+ const wc_service_1 = require("../services/wc-service/wc-service");
6
9
  const types_1 = require("../types");
7
- /**
8
- * Retrieves the currently selected network in the wallet.
9
- *
10
- * Emits `${PUBLIC_REQUESTS.GET_ACTIVE_NETWORK}_RESPONSE` with network information.
11
- * Origin should be connected; otherwise a connect flow may be required.
12
- *
13
- * @returns {Promise<Network>} Active network data.
14
- * @example
15
- * const network = await getActiveNetwork();
16
- */
17
- const getActiveNetwork = async () => new Promise((resolve, reject) => {
10
+ const type = types_1.PUBLIC_REQUESTS.GET_ACTIVE_NETWORK;
11
+ const browserFunction = async () => new Promise((resolve, reject) => {
18
12
  const id = crypto.randomUUID();
19
13
  window.postMessage({
20
- type: types_1.PUBLIC_REQUESTS.GET_ACTIVE_NETWORK,
14
+ type,
21
15
  target: constants_1.WALLET_TARGET,
22
16
  sdkVersion: constants_1.PROVIDER_VERSION,
23
17
  id,
18
+ fromOrigin: window.location.origin,
24
19
  }, '*');
25
20
  const timeOut = setTimeout(() => {
26
21
  const error = types_1.EIP_1474_ERROR[types_1.EIP_1474_ERROR_ENUM.ResourceUnavailable];
27
22
  reject(error);
28
23
  }, 500);
29
24
  function handleResponse(event) {
30
- if ((0, handleResponse_helper_1.isExpectedResponse)(event, id, `${types_1.PUBLIC_REQUESTS.GET_ACTIVE_NETWORK}_RESPONSE`)) {
25
+ if ((0, handleResponse_helper_1.isExpectedResponse)(event, id, `${type}_RESPONSE`)) {
31
26
  window.removeEventListener('message', handleResponse);
32
27
  clearTimeout(timeOut);
33
28
  if (event.data.error) {
@@ -40,5 +35,49 @@ const getActiveNetwork = async () => new Promise((resolve, reject) => {
40
35
  }
41
36
  window.addEventListener('message', handleResponse);
42
37
  });
38
+ const mobileFunction = async () => new Promise((resolve, reject) => {
39
+ const id = crypto.randomUUID();
40
+ // TODO: add timeout for request
41
+ // const timeOut = setTimeout(() => {
42
+ // const error: ConsoleWalletError = EIP_1474_ERROR[EIP_1474_ERROR_ENUM.ResourceUnavailable];
43
+ // reject(error);
44
+ // }, 500);
45
+ wc_service_1.wcSessionService
46
+ .sendMessage(JSON.stringify({
47
+ type,
48
+ target: constants_1.WALLET_TARGET,
49
+ sdkVersion: constants_1.PROVIDER_VERSION,
50
+ id,
51
+ fromOrigin: window.location.origin,
52
+ }), type, id)
53
+ .then(() => {
54
+ (0, prepare_wc_1.handlePrepareWC)();
55
+ wc_service_1.wcSessionService.addSubscriber(id, (message) => {
56
+ const response = JSON.parse(message.serializedPayload);
57
+ if ((0, handleResponse_helper_1.isExpectedMobileResponse)(response, id, `${type}_RESPONSE`)) {
58
+ if (response.error) {
59
+ reject(response.error);
60
+ }
61
+ else {
62
+ resolve(response.data);
63
+ }
64
+ }
65
+ });
66
+ });
67
+ });
68
+ /**
69
+ * Retrieves the currently selected network in the wallet.
70
+ *
71
+ * Emits `${PUBLIC_REQUESTS.GET_ACTIVE_NETWORK}_RESPONSE` with network information.
72
+ * Origin should be connected; otherwise a connect flow may be required.
73
+ *
74
+ * @returns {Promise<Network>} Active network data.
75
+ * @example
76
+ * const network = await getActiveNetwork();
77
+ */
78
+ const getActiveNetwork = async () => {
79
+ const res = await (0, wc_request_separator_1.wcRequestLogicSeparator)(async () => await browserFunction(), async () => await mobileFunction());
80
+ return res;
81
+ };
43
82
  exports.getActiveNetwork = getActiveNetwork;
44
83
  //# sourceMappingURL=getActiveNetwork.js.map