@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.
- package/dist/cjs/api/client.api.d.ts +12 -0
- package/dist/cjs/api/client.api.js +5 -1
- package/dist/cjs/api/client.api.js.map +1 -1
- package/dist/cjs/api/generated-indexer-api.d.ts +15 -15
- package/dist/cjs/api/generated-indexer-api.js +206 -212
- package/dist/cjs/api/generated-indexer-api.js.map +1 -1
- package/dist/cjs/api/generated-wallet-api.d.ts +36 -36
- package/dist/cjs/api/generated-wallet-api.js +113 -119
- package/dist/cjs/api/generated-wallet-api.js.map +1 -1
- package/dist/cjs/api/generated-wc-api.d.ts +219 -0
- package/dist/cjs/api/generated-wc-api.js +248 -0
- package/dist/cjs/api/generated-wc-api.js.map +1 -0
- package/dist/cjs/api/index.d.ts +1 -0
- package/dist/cjs/api/index.js +2 -1
- package/dist/cjs/api/index.js.map +1 -1
- package/dist/cjs/assets/assets/icons/close.svg +4 -0
- package/dist/cjs/assets/assets/images/extension.png +0 -0
- package/dist/cjs/assets/assets/images/walletConnect.png +0 -0
- package/dist/cjs/assets/icons/close.svg +4 -0
- package/dist/cjs/assets/images/extension.png +0 -0
- package/dist/cjs/assets/images/walletConnect.png +0 -0
- package/dist/cjs/constants/config.constants.d.ts +1 -0
- package/dist/cjs/constants/config.constants.js +2 -1
- package/dist/cjs/constants/config.constants.js.map +1 -1
- package/dist/cjs/constants/wc.constants.d.ts +1 -0
- package/dist/cjs/constants/wc.constants.js +5 -0
- package/dist/cjs/constants/wc.constants.js.map +1 -0
- package/dist/cjs/helpers/handleResponse.helper.d.ts +2 -1
- package/dist/cjs/helpers/handleResponse.helper.js +11 -1
- package/dist/cjs/helpers/handleResponse.helper.js.map +1 -1
- package/dist/cjs/helpers/mobile-check.helper.d.ts +7 -0
- package/dist/cjs/helpers/mobile-check.helper.js +27 -0
- package/dist/cjs/helpers/mobile-check.helper.js.map +1 -0
- package/dist/cjs/index.d.ts +2 -1
- package/dist/cjs/index.js +1 -0
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/requests/connect.d.ts +1 -1
- package/dist/cjs/requests/connect.js +90 -15
- package/dist/cjs/requests/connect.js.map +1 -1
- package/dist/cjs/requests/disconnect.js +47 -13
- package/dist/cjs/requests/disconnect.js.map +1 -1
- package/dist/cjs/requests/getAccounts.js +50 -13
- package/dist/cjs/requests/getAccounts.js.map +1 -1
- package/dist/cjs/requests/getActiveAccount.js +50 -13
- package/dist/cjs/requests/getActiveAccount.js.map +1 -1
- package/dist/cjs/requests/getActiveNetwork.js +52 -13
- package/dist/cjs/requests/getActiveNetwork.js.map +1 -1
- package/dist/cjs/requests/getBalance.js +49 -16
- package/dist/cjs/requests/getBalance.js.map +1 -1
- package/dist/cjs/requests/getCoinsBalance.js +49 -16
- package/dist/cjs/requests/getCoinsBalance.js.map +1 -1
- package/dist/cjs/requests/getIsConnected.js +50 -13
- package/dist/cjs/requests/getIsConnected.js.map +1 -1
- package/dist/cjs/requests/getNodeOffers.js +47 -14
- package/dist/cjs/requests/getNodeOffers.js.map +1 -1
- package/dist/cjs/requests/getNodeTransfer.js +47 -14
- package/dist/cjs/requests/getNodeTransfer.js.map +1 -1
- package/dist/cjs/requests/getNodeTransfers.js +49 -16
- package/dist/cjs/requests/getNodeTransfers.js.map +1 -1
- package/dist/cjs/requests/getOffers.js +47 -14
- package/dist/cjs/requests/getOffers.js.map +1 -1
- package/dist/cjs/requests/getStatus.js +57 -13
- package/dist/cjs/requests/getStatus.js.map +1 -1
- package/dist/cjs/requests/getTransfer.js +49 -14
- package/dist/cjs/requests/getTransfer.js.map +1 -1
- package/dist/cjs/requests/getTransfers.js +49 -16
- package/dist/cjs/requests/getTransfers.js.map +1 -1
- package/dist/cjs/requests/getWalletVersion.js +57 -13
- package/dist/cjs/requests/getWalletVersion.js.map +1 -1
- package/dist/cjs/requests/ledgerApi.js +51 -23
- package/dist/cjs/requests/ledgerApi.js.map +1 -1
- package/dist/cjs/requests/signMessage.js +48 -15
- package/dist/cjs/requests/signMessage.js.map +1 -1
- package/dist/cjs/requests/singBatch.js +47 -14
- package/dist/cjs/requests/singBatch.js.map +1 -1
- package/dist/cjs/requests/submitCommands.js +55 -22
- package/dist/cjs/requests/submitCommands.js.map +1 -1
- package/dist/cjs/requests/submitInstructionChoice.js +55 -22
- package/dist/cjs/requests/submitInstructionChoice.js.map +1 -1
- package/dist/cjs/services/index.d.ts +0 -0
- package/dist/cjs/services/index.js +2 -0
- package/dist/cjs/services/index.js.map +1 -0
- package/dist/cjs/services/indexedDB/index.d.ts +1 -0
- package/dist/cjs/services/indexedDB/index.js +5 -0
- package/dist/cjs/services/indexedDB/index.js.map +1 -0
- package/dist/cjs/services/indexedDB/wc-session.storage.d.ts +10 -0
- package/dist/cjs/services/indexedDB/wc-session.storage.js +60 -0
- package/dist/cjs/services/indexedDB/wc-session.storage.js.map +1 -0
- package/dist/cjs/services/wc-service/connector-select.d.ts +7 -0
- package/dist/cjs/services/wc-service/connector-select.js +70 -0
- package/dist/cjs/services/wc-service/connector-select.js.map +1 -0
- package/dist/cjs/services/wc-service/index.d.ts +0 -0
- package/dist/cjs/services/wc-service/index.js +2 -0
- package/dist/cjs/services/wc-service/index.js.map +1 -0
- package/dist/cjs/services/wc-service/prepare-wc.d.ts +1 -0
- package/dist/cjs/services/wc-service/prepare-wc.js +15 -0
- package/dist/cjs/services/wc-service/prepare-wc.js.map +1 -0
- package/dist/cjs/services/wc-service/wc-request-separator.d.ts +1 -0
- package/dist/cjs/services/wc-service/wc-request-separator.js +27 -0
- package/dist/cjs/services/wc-service/wc-request-separator.js.map +1 -0
- package/dist/cjs/services/wc-service/wc-service.d.ts +35 -0
- package/dist/cjs/services/wc-service/wc-service.js +189 -0
- package/dist/cjs/services/wc-service/wc-service.js.map +1 -0
- package/dist/cjs/styles.css +110 -0
- package/dist/cjs/triggersNative/onAccountsChanged.js +45 -30
- package/dist/cjs/triggersNative/onAccountsChanged.js.map +1 -1
- package/dist/cjs/triggersNative/onConnectionStatusChanged.js +48 -33
- package/dist/cjs/triggersNative/onConnectionStatusChanged.js.map +1 -1
- package/dist/cjs/triggersNative/onTxChanged.js +24 -9
- package/dist/cjs/triggersNative/onTxChanged.js.map +1 -1
- package/dist/cjs/types/communication.types.d.ts +1 -0
- package/dist/cjs/types/connect.type.d.ts +9 -0
- package/dist/cjs/types/connect.type.js +7 -0
- package/dist/cjs/types/connect.type.js.map +1 -1
- package/dist/esm/api/client.api.d.ts +12 -0
- package/dist/esm/api/client.api.js +5 -1
- package/dist/esm/api/client.api.js.map +1 -1
- package/dist/esm/api/generated-indexer-api.d.ts +15 -15
- package/dist/esm/api/generated-indexer-api.js +207 -213
- package/dist/esm/api/generated-indexer-api.js.map +1 -1
- package/dist/esm/api/generated-wallet-api.d.ts +36 -36
- package/dist/esm/api/generated-wallet-api.js +114 -120
- package/dist/esm/api/generated-wallet-api.js.map +1 -1
- package/dist/esm/api/generated-wc-api.d.ts +219 -0
- package/dist/esm/api/generated-wc-api.js +242 -0
- package/dist/esm/api/generated-wc-api.js.map +1 -0
- package/dist/esm/api/index.d.ts +1 -0
- package/dist/esm/api/index.js +1 -0
- package/dist/esm/api/index.js.map +1 -1
- package/dist/esm/assets/assets/icons/close.svg +4 -0
- package/dist/esm/assets/assets/images/extension.png +0 -0
- package/dist/esm/assets/assets/images/walletConnect.png +0 -0
- package/dist/esm/assets/icons/close.svg +4 -0
- package/dist/esm/assets/images/extension.png +0 -0
- package/dist/esm/assets/images/walletConnect.png +0 -0
- package/dist/esm/constants/config.constants.d.ts +1 -0
- package/dist/esm/constants/config.constants.js +1 -0
- package/dist/esm/constants/config.constants.js.map +1 -1
- package/dist/esm/constants/wc.constants.d.ts +1 -0
- package/dist/esm/constants/wc.constants.js +2 -0
- package/dist/esm/constants/wc.constants.js.map +1 -0
- package/dist/esm/helpers/handleResponse.helper.d.ts +2 -1
- package/dist/esm/helpers/handleResponse.helper.js +9 -0
- package/dist/esm/helpers/handleResponse.helper.js.map +1 -1
- package/dist/esm/helpers/mobile-check.helper.d.ts +7 -0
- package/dist/esm/helpers/mobile-check.helper.js +23 -0
- package/dist/esm/helpers/mobile-check.helper.js.map +1 -0
- package/dist/esm/index.d.ts +2 -1
- package/dist/esm/index.js +1 -0
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/requests/connect.d.ts +1 -1
- package/dist/esm/requests/connect.js +91 -16
- package/dist/esm/requests/connect.js.map +1 -1
- package/dist/esm/requests/disconnect.js +48 -14
- package/dist/esm/requests/disconnect.js.map +1 -1
- package/dist/esm/requests/getAccounts.js +51 -14
- package/dist/esm/requests/getAccounts.js.map +1 -1
- package/dist/esm/requests/getActiveAccount.js +51 -14
- package/dist/esm/requests/getActiveAccount.js.map +1 -1
- package/dist/esm/requests/getActiveNetwork.js +53 -14
- package/dist/esm/requests/getActiveNetwork.js.map +1 -1
- package/dist/esm/requests/getBalance.js +50 -17
- package/dist/esm/requests/getBalance.js.map +1 -1
- package/dist/esm/requests/getCoinsBalance.js +50 -17
- package/dist/esm/requests/getCoinsBalance.js.map +1 -1
- package/dist/esm/requests/getIsConnected.js +51 -14
- package/dist/esm/requests/getIsConnected.js.map +1 -1
- package/dist/esm/requests/getNodeOffers.js +48 -15
- package/dist/esm/requests/getNodeOffers.js.map +1 -1
- package/dist/esm/requests/getNodeTransfer.js +48 -15
- package/dist/esm/requests/getNodeTransfer.js.map +1 -1
- package/dist/esm/requests/getNodeTransfers.js +50 -17
- package/dist/esm/requests/getNodeTransfers.js.map +1 -1
- package/dist/esm/requests/getOffers.js +48 -15
- package/dist/esm/requests/getOffers.js.map +1 -1
- package/dist/esm/requests/getStatus.js +58 -14
- package/dist/esm/requests/getStatus.js.map +1 -1
- package/dist/esm/requests/getTransfer.js +50 -15
- package/dist/esm/requests/getTransfer.js.map +1 -1
- package/dist/esm/requests/getTransfers.js +50 -17
- package/dist/esm/requests/getTransfers.js.map +1 -1
- package/dist/esm/requests/getWalletVersion.js +59 -15
- package/dist/esm/requests/getWalletVersion.js.map +1 -1
- package/dist/esm/requests/ledgerApi.js +53 -25
- package/dist/esm/requests/ledgerApi.js.map +1 -1
- package/dist/esm/requests/signMessage.js +49 -16
- package/dist/esm/requests/signMessage.js.map +1 -1
- package/dist/esm/requests/singBatch.js +48 -15
- package/dist/esm/requests/singBatch.js.map +1 -1
- package/dist/esm/requests/submitCommands.js +56 -23
- package/dist/esm/requests/submitCommands.js.map +1 -1
- package/dist/esm/requests/submitInstructionChoice.js +56 -23
- package/dist/esm/requests/submitInstructionChoice.js.map +1 -1
- package/dist/esm/services/index.d.ts +0 -0
- package/dist/esm/services/index.js +2 -0
- package/dist/esm/services/index.js.map +1 -0
- package/dist/esm/services/indexedDB/index.d.ts +1 -0
- package/dist/esm/services/indexedDB/index.js +2 -0
- package/dist/esm/services/indexedDB/index.js.map +1 -0
- package/dist/esm/services/indexedDB/wc-session.storage.d.ts +10 -0
- package/dist/esm/services/indexedDB/wc-session.storage.js +51 -0
- package/dist/esm/services/indexedDB/wc-session.storage.js.map +1 -0
- package/dist/esm/services/wc-service/connector-select.d.ts +7 -0
- package/dist/esm/services/wc-service/connector-select.js +65 -0
- package/dist/esm/services/wc-service/connector-select.js.map +1 -0
- package/dist/esm/services/wc-service/index.d.ts +0 -0
- package/dist/esm/services/wc-service/index.js +2 -0
- package/dist/esm/services/wc-service/index.js.map +1 -0
- package/dist/esm/services/wc-service/prepare-wc.d.ts +1 -0
- package/dist/esm/services/wc-service/prepare-wc.js +11 -0
- package/dist/esm/services/wc-service/prepare-wc.js.map +1 -0
- package/dist/esm/services/wc-service/wc-request-separator.d.ts +1 -0
- package/dist/esm/services/wc-service/wc-request-separator.js +23 -0
- package/dist/esm/services/wc-service/wc-request-separator.js.map +1 -0
- package/dist/esm/services/wc-service/wc-service.d.ts +35 -0
- package/dist/esm/services/wc-service/wc-service.js +185 -0
- package/dist/esm/services/wc-service/wc-service.js.map +1 -0
- package/dist/esm/styles.css +110 -0
- package/dist/esm/triggersNative/onAccountsChanged.js +45 -30
- package/dist/esm/triggersNative/onAccountsChanged.js.map +1 -1
- package/dist/esm/triggersNative/onConnectionStatusChanged.js +48 -33
- package/dist/esm/triggersNative/onConnectionStatusChanged.js.map +1 -1
- package/dist/esm/triggersNative/onTxChanged.js +24 -9
- package/dist/esm/triggersNative/onTxChanged.js.map +1 -1
- package/dist/esm/types/communication.types.d.ts +1 -0
- package/dist/esm/types/connect.type.d.ts +9 -0
- package/dist/esm/types/connect.type.js +7 -0
- package/dist/esm/types/connect.type.js.map +1 -1
- package/package.json +12 -8
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getOffers.js","sourceRoot":"","sources":["../../../src/requests/getOffers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAC/D,OAAO,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAC;
|
|
1
|
+
{"version":3,"file":"getOffers.js","sourceRoot":"","sources":["../../../src/requests/getOffers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAC/D,OAAO,EAAE,wBAAwB,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAC;AAChG,OAAO,EAAE,uBAAuB,EAAE,MAAM,6CAA6C,CAAC;AACtF,OAAO,EAAE,gBAAgB,EAAE,MAAM,mCAAmC,CAAC;AACrE,OAAO,EAAiC,eAAe,EAAE,MAAM,UAAU,CAAC;AAE1E,MAAM,IAAI,GAAG,eAAe,CAAC,kBAAkB,CAAC;AAEhD,MAAM,eAAe,GAAqD,KAAK,EAAE,IAAI,EAAE,EAAE,CACvF,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,aAAa;QACrB,UAAU,EAAE,gBAAgB;QAC5B,EAAE;QACF,UAAU,EAAE,MAAM,CAAC,QAAQ,CAAC,MAAM;QAClC,GAAG,IAAI;KACR,EACD,GAAG,CACJ,CAAC;IAEF,SAAS,cAAc,CAAC,KAAmB;QACzC,IAAI,kBAAkB,CAAC,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,GAAqD,KAAK,EAAE,IAAI,EAAE,EAAE,CACtF,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;IAC9B,MAAM,EAAE,GAAG,MAAM,CAAC,UAAU,EAAE,CAAC;IAE/B,gBAAgB;SACb,WAAW,CACV,IAAI,CAAC,SAAS,CAAC;QACb,IAAI;QACJ,MAAM,EAAE,aAAa;QACrB,UAAU,EAAE,gBAAgB;QAC5B,EAAE;QACF,UAAU,EAAE,MAAM,CAAC,QAAQ,CAAC,MAAM;QAElC,GAAG,IAAI;KACR,CAAC,EACF,IAAI,EACJ,EAAE,CACH;SACA,IAAI,CAAC,GAAG,EAAE;QACT,gBAAgB,CAAC,aAAa,CAAC,EAAE,EAAE,CAAC,OAAO,EAAE,EAAE;YAC7C,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAC;YACvD,IAAI,wBAAwB,CAAC,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;;;;;;;;;;GAUG;AACH,MAAM,CAAC,MAAM,SAAS,GAAqD,KAAK,EAAE,IAAI,EAAE,EAAE;IACxF,MAAM,GAAG,GAAG,MAAM,uBAAuB,CACvC,KAAK,IAAI,EAAE,CAAC,MAAM,eAAe,CAAC,IAAI,CAAC,EACvC,KAAK,IAAI,EAAE,CAAC,MAAM,cAAc,CAAC,IAAI,CAAC,CACvC,CAAC;IAEF,OAAO,GAAqB,CAAC;AAC/B,CAAC,CAAC"}
|
|
@@ -1,30 +1,24 @@
|
|
|
1
1
|
import { EXTENSION_ID, PROVIDER_VERSION, WALLET_TARGET } from '../constants';
|
|
2
|
-
import { isExpectedResponse } from '../helpers/handleResponse.helper';
|
|
2
|
+
import { isExpectedMobileResponse, isExpectedResponse } from '../helpers/handleResponse.helper';
|
|
3
|
+
import { wcRequestLogicSeparator } from '../services/wc-service/wc-request-separator';
|
|
4
|
+
import { wcSessionService } from '../services/wc-service/wc-service';
|
|
3
5
|
import { EIP_1474_ERROR, EIP_1474_ERROR_ENUM, ProviderTypeEnum, PUBLIC_REQUESTS } from '../types';
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
*
|
|
7
|
-
* Emits `${PUBLIC_REQUESTS.GET_IS_CONNECTED_NETWORK}_RESPONSE` from the wallet.
|
|
8
|
-
* Useful for quick status checks without triggering UI flows.
|
|
9
|
-
*
|
|
10
|
-
* @returns {Promise<StatusEvent>}
|
|
11
|
-
* @example
|
|
12
|
-
* const s = await status();
|
|
13
|
-
*/
|
|
14
|
-
export const status = async () => new Promise((resolve, reject) => {
|
|
6
|
+
const type = PUBLIC_REQUESTS.GET_IS_CONNECTED;
|
|
7
|
+
const browserFunction = async () => new Promise((resolve, reject) => {
|
|
15
8
|
const id = crypto.randomUUID();
|
|
16
9
|
window.postMessage({
|
|
17
|
-
type
|
|
10
|
+
type,
|
|
18
11
|
target: WALLET_TARGET,
|
|
19
12
|
sdkVersion: PROVIDER_VERSION,
|
|
20
13
|
id,
|
|
14
|
+
fromOrigin: window.location.origin,
|
|
21
15
|
}, '*');
|
|
22
16
|
const timeOut = setTimeout(() => {
|
|
23
17
|
const error = EIP_1474_ERROR[EIP_1474_ERROR_ENUM.ResourceUnavailable];
|
|
24
18
|
reject(error);
|
|
25
19
|
}, 500);
|
|
26
20
|
function handleResponse(event) {
|
|
27
|
-
if (isExpectedResponse(event, id, `${
|
|
21
|
+
if (isExpectedResponse(event, id, `${type}_RESPONSE`)) {
|
|
28
22
|
window.removeEventListener('message', handleResponse);
|
|
29
23
|
clearTimeout(timeOut);
|
|
30
24
|
if (event.data.error) {
|
|
@@ -44,4 +38,54 @@ export const status = async () => new Promise((resolve, reject) => {
|
|
|
44
38
|
}
|
|
45
39
|
window.addEventListener('message', handleResponse);
|
|
46
40
|
});
|
|
41
|
+
const mobileFunction = async () => new Promise((resolve, reject) => {
|
|
42
|
+
const id = crypto.randomUUID();
|
|
43
|
+
// TODO: add timeout for request
|
|
44
|
+
// const timeOut = setTimeout(() => {
|
|
45
|
+
// const error: ConsoleWalletError = EIP_1474_ERROR[EIP_1474_ERROR_ENUM.ResourceUnavailable];
|
|
46
|
+
// reject(error);
|
|
47
|
+
// }, 500);
|
|
48
|
+
wcSessionService
|
|
49
|
+
.sendMessage(JSON.stringify({
|
|
50
|
+
type,
|
|
51
|
+
target: WALLET_TARGET,
|
|
52
|
+
sdkVersion: PROVIDER_VERSION,
|
|
53
|
+
id,
|
|
54
|
+
fromOrigin: window.location.origin,
|
|
55
|
+
}), type, id)
|
|
56
|
+
.then(() => {
|
|
57
|
+
wcSessionService.addSubscriber(id, (message) => {
|
|
58
|
+
const response = JSON.parse(message.serializedPayload);
|
|
59
|
+
if (isExpectedMobileResponse(response, id, `${type}_RESPONSE`)) {
|
|
60
|
+
if (response.error) {
|
|
61
|
+
reject(response.error);
|
|
62
|
+
}
|
|
63
|
+
else {
|
|
64
|
+
resolve({
|
|
65
|
+
connection: response.data,
|
|
66
|
+
provider: {
|
|
67
|
+
id: '',
|
|
68
|
+
version: PROVIDER_VERSION,
|
|
69
|
+
providerType: ProviderTypeEnum.Mobile,
|
|
70
|
+
},
|
|
71
|
+
});
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
});
|
|
75
|
+
});
|
|
76
|
+
});
|
|
77
|
+
/**
|
|
78
|
+
* Returns the current connection to extension status for the dApp origin.
|
|
79
|
+
*
|
|
80
|
+
* Emits `${PUBLIC_REQUESTS.GET_IS_CONNECTED_NETWORK}_RESPONSE` from the wallet.
|
|
81
|
+
* Useful for quick status checks without triggering UI flows.
|
|
82
|
+
*
|
|
83
|
+
* @returns {Promise<StatusEvent>}
|
|
84
|
+
* @example
|
|
85
|
+
* const s = await status();
|
|
86
|
+
*/
|
|
87
|
+
export const status = async () => {
|
|
88
|
+
const res = await wcRequestLogicSeparator(async () => await browserFunction(), async () => await mobileFunction());
|
|
89
|
+
return res;
|
|
90
|
+
};
|
|
47
91
|
//# sourceMappingURL=getStatus.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getStatus.js","sourceRoot":"","sources":["../../../src/requests/getStatus.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAC7E,OAAO,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAC;
|
|
1
|
+
{"version":3,"file":"getStatus.js","sourceRoot":"","sources":["../../../src/requests/getStatus.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,28 +1,21 @@
|
|
|
1
1
|
import { PROVIDER_VERSION, WALLET_TARGET } from '../constants';
|
|
2
|
-
import { isExpectedResponse } from '../helpers/handleResponse.helper';
|
|
2
|
+
import { isExpectedMobileResponse, isExpectedResponse } from '../helpers/handleResponse.helper';
|
|
3
|
+
import { wcRequestLogicSeparator } from '../services/wc-service/wc-request-separator';
|
|
4
|
+
import { wcSessionService } from '../services/wc-service/wc-service';
|
|
3
5
|
import { PUBLIC_REQUESTS } from '../types';
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
*
|
|
7
|
-
* Emits `${PUBLIC_REQUESTS.GET_TRANSFER_DETAILS}_RESPONSE` with transfer details.
|
|
8
|
-
* Origin should be connected; otherwise a connect flow may be required.
|
|
9
|
-
*
|
|
10
|
-
* @param {TransferRequest} data Request payload with event_id.
|
|
11
|
-
* @returns {Promise<TransferResponse>} Transfer details or null.
|
|
12
|
-
* @example
|
|
13
|
-
* const t = await getTransfer({ ... });
|
|
14
|
-
*/
|
|
15
|
-
export const getTransfer = async (data) => new Promise((resolve, reject) => {
|
|
6
|
+
const type = PUBLIC_REQUESTS.GET_TRANSFER_DETAILS;
|
|
7
|
+
const browserFunction = async (data) => new Promise((resolve, reject) => {
|
|
16
8
|
const id = crypto.randomUUID();
|
|
17
9
|
window.postMessage({
|
|
18
|
-
type
|
|
10
|
+
type,
|
|
19
11
|
target: WALLET_TARGET,
|
|
20
12
|
sdkVersion: PROVIDER_VERSION,
|
|
21
13
|
id,
|
|
14
|
+
fromOrigin: window.location.origin,
|
|
22
15
|
...data,
|
|
23
16
|
}, '*');
|
|
24
17
|
function handleResponse(event) {
|
|
25
|
-
if (isExpectedResponse(event, id, `${
|
|
18
|
+
if (isExpectedResponse(event, id, `${type}_RESPONSE`)) {
|
|
26
19
|
window.removeEventListener('message', handleResponse);
|
|
27
20
|
if (event.data.error) {
|
|
28
21
|
reject(event.data.error);
|
|
@@ -34,4 +27,46 @@ export const getTransfer = async (data) => new Promise((resolve, reject) => {
|
|
|
34
27
|
}
|
|
35
28
|
window.addEventListener('message', handleResponse);
|
|
36
29
|
});
|
|
30
|
+
const mobileFunction = async (data) => new Promise((resolve, reject) => {
|
|
31
|
+
const id = crypto.randomUUID();
|
|
32
|
+
wcSessionService
|
|
33
|
+
.sendMessage(JSON.stringify({
|
|
34
|
+
type,
|
|
35
|
+
target: WALLET_TARGET,
|
|
36
|
+
sdkVersion: PROVIDER_VERSION,
|
|
37
|
+
id,
|
|
38
|
+
fromOrigin: window.location.origin,
|
|
39
|
+
...data,
|
|
40
|
+
}), type, id)
|
|
41
|
+
.then(() => {
|
|
42
|
+
wcSessionService.addSubscriber(id, (message) => {
|
|
43
|
+
const response = JSON.parse(message.serializedPayload);
|
|
44
|
+
if (isExpectedMobileResponse(response, id, `${type}_RESPONSE`)) {
|
|
45
|
+
if (response.error) {
|
|
46
|
+
reject(response.error);
|
|
47
|
+
}
|
|
48
|
+
else {
|
|
49
|
+
resolve(response.data);
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
});
|
|
53
|
+
});
|
|
54
|
+
});
|
|
55
|
+
/**
|
|
56
|
+
* Retrieves detailed information for a single transfer event.
|
|
57
|
+
*
|
|
58
|
+
* Emits `${PUBLIC_REQUESTS.GET_TRANSFER_DETAILS}_RESPONSE` with transfer details.
|
|
59
|
+
* Origin should be connected; otherwise a connect flow may be required.
|
|
60
|
+
*
|
|
61
|
+
* @param {TransferRequest} data Request payload with event_id.
|
|
62
|
+
* @returns {Promise<TransferResponse>} Transfer details or null.
|
|
63
|
+
* @example
|
|
64
|
+
* const t = await getTransfer({ ... });
|
|
65
|
+
*/
|
|
66
|
+
export const getTransfer = async (data) => {
|
|
67
|
+
{
|
|
68
|
+
const res = await wcRequestLogicSeparator(async () => await browserFunction(data), async () => await mobileFunction(data));
|
|
69
|
+
return res;
|
|
70
|
+
}
|
|
71
|
+
};
|
|
37
72
|
//# sourceMappingURL=getTransfer.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getTransfer.js","sourceRoot":"","sources":["../../../src/requests/getTransfer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAC/D,OAAO,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAC;
|
|
1
|
+
{"version":3,"file":"getTransfer.js","sourceRoot":"","sources":["../../../src/requests/getTransfer.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,30 +1,21 @@
|
|
|
1
1
|
import { PROVIDER_VERSION, WALLET_TARGET } from '../constants';
|
|
2
|
-
import { isExpectedResponse } from '../helpers/handleResponse.helper';
|
|
2
|
+
import { isExpectedMobileResponse, isExpectedResponse } from '../helpers/handleResponse.helper';
|
|
3
|
+
import { wcRequestLogicSeparator } from '../services/wc-service/wc-request-separator';
|
|
4
|
+
import { wcSessionService } from '../services/wc-service/wc-service';
|
|
3
5
|
import { PUBLIC_REQUESTS } from '../types';
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
*
|
|
7
|
-
* Emits `${PUBLIC_REQUESTS.GET_TRANSFERS_HISTORY}_RESPONSE` with paged results.
|
|
8
|
-
* Origin should be connected; otherwise a connect flow may be required.
|
|
9
|
-
*
|
|
10
|
-
* @param {TokenTransfersRequest} data Request payload (filters, pagination).
|
|
11
|
-
* @param {TokenTransfersQuery} data.query Indexer query parameters (party filters, paging).
|
|
12
|
-
* @param {CANTON_NETWORK_VARIANTS} data.network Canton network to query against.
|
|
13
|
-
* @returns {Promise<any>} Transfer history payload or null if none.
|
|
14
|
-
* @example
|
|
15
|
-
* const list = await getTokenTransfers({ ... });
|
|
16
|
-
*/
|
|
17
|
-
export const getTokenTransfers = async (data) => new Promise((resolve, reject) => {
|
|
6
|
+
const type = PUBLIC_REQUESTS.GET_TRANSFERS_HISTORY;
|
|
7
|
+
const browserFunction = async (data) => new Promise((resolve, reject) => {
|
|
18
8
|
const id = crypto.randomUUID();
|
|
19
9
|
window.postMessage({
|
|
20
|
-
type
|
|
10
|
+
type,
|
|
21
11
|
target: WALLET_TARGET,
|
|
22
12
|
sdkVersion: PROVIDER_VERSION,
|
|
23
13
|
id,
|
|
14
|
+
fromOrigin: window.location.origin,
|
|
24
15
|
...data,
|
|
25
16
|
}, '*');
|
|
26
17
|
function handleResponse(event) {
|
|
27
|
-
if (isExpectedResponse(event, id, `${
|
|
18
|
+
if (isExpectedResponse(event, id, `${type}_RESPONSE`)) {
|
|
28
19
|
window.removeEventListener('message', handleResponse);
|
|
29
20
|
if (event.data.error) {
|
|
30
21
|
reject(event.data.error);
|
|
@@ -36,4 +27,46 @@ export const getTokenTransfers = async (data) => new Promise((resolve, reject) =
|
|
|
36
27
|
}
|
|
37
28
|
window.addEventListener('message', handleResponse);
|
|
38
29
|
});
|
|
30
|
+
const mobileFunction = async (data) => new Promise((resolve, reject) => {
|
|
31
|
+
const id = crypto.randomUUID();
|
|
32
|
+
wcSessionService
|
|
33
|
+
.sendMessage(JSON.stringify({
|
|
34
|
+
type,
|
|
35
|
+
target: WALLET_TARGET,
|
|
36
|
+
sdkVersion: PROVIDER_VERSION,
|
|
37
|
+
id,
|
|
38
|
+
fromOrigin: window.location.origin,
|
|
39
|
+
...data,
|
|
40
|
+
}), type, id)
|
|
41
|
+
.then(() => {
|
|
42
|
+
wcSessionService.addSubscriber(id, (message) => {
|
|
43
|
+
const response = JSON.parse(message.serializedPayload);
|
|
44
|
+
if (isExpectedMobileResponse(response, id, `${type}_RESPONSE`)) {
|
|
45
|
+
if (response.error) {
|
|
46
|
+
reject(response.error);
|
|
47
|
+
}
|
|
48
|
+
else {
|
|
49
|
+
resolve(response.data);
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
});
|
|
53
|
+
});
|
|
54
|
+
});
|
|
55
|
+
/**
|
|
56
|
+
* Retrieves token transfer history for a party using the indexer.
|
|
57
|
+
*
|
|
58
|
+
* Emits `${PUBLIC_REQUESTS.GET_TRANSFERS_HISTORY}_RESPONSE` with paged results.
|
|
59
|
+
* Origin should be connected; otherwise a connect flow may be required.
|
|
60
|
+
*
|
|
61
|
+
* @param {TokenTransfersRequest} data Request payload (filters, pagination).
|
|
62
|
+
* @param {TokenTransfersQuery} data.query Indexer query parameters (party filters, paging).
|
|
63
|
+
* @param {CANTON_NETWORK_VARIANTS} data.network Canton network to query against.
|
|
64
|
+
* @returns {Promise<any>} Transfer history payload or null if none.
|
|
65
|
+
* @example
|
|
66
|
+
* const list = await getTokenTransfers({ ... });
|
|
67
|
+
*/
|
|
68
|
+
export const getTokenTransfers = async (data) => {
|
|
69
|
+
const res = await wcRequestLogicSeparator(async () => await browserFunction(data), async () => await mobileFunction(data));
|
|
70
|
+
return res;
|
|
71
|
+
};
|
|
39
72
|
//# sourceMappingURL=getTransfers.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getTransfers.js","sourceRoot":"","sources":["../../../src/requests/getTransfers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAC/D,OAAO,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAC;
|
|
1
|
+
{"version":3,"file":"getTransfers.js","sourceRoot":"","sources":["../../../src/requests/getTransfers.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,27 +1,26 @@
|
|
|
1
1
|
import { PROVIDER_VERSION, WALLET_TARGET } from '../constants';
|
|
2
|
-
import { isExpectedResponse } from '../helpers/handleResponse.helper';
|
|
3
|
-
import {
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
* Origin should be connected; otherwise a connect flow may be required.
|
|
9
|
-
*
|
|
10
|
-
* @returns {Promise<WalletVersion>} Connected wallet version.
|
|
11
|
-
* @example
|
|
12
|
-
* const version = await getWalletVersion();
|
|
13
|
-
*/
|
|
14
|
-
export const getWalletVersion = async () => new Promise((resolve, reject) => {
|
|
2
|
+
import { isExpectedMobileResponse, isExpectedResponse } from '../helpers/handleResponse.helper';
|
|
3
|
+
import { wcRequestLogicSeparator } from '../services/wc-service/wc-request-separator';
|
|
4
|
+
import { wcSessionService } from '../services/wc-service/wc-service';
|
|
5
|
+
import { EIP_1474_ERROR, EIP_1474_ERROR_ENUM, PUBLIC_REQUESTS, } from '../types';
|
|
6
|
+
const type = PUBLIC_REQUESTS.GET_VERSION;
|
|
7
|
+
const browserFunction = async () => new Promise((resolve, reject) => {
|
|
15
8
|
const id = crypto.randomUUID();
|
|
16
9
|
window.postMessage({
|
|
17
|
-
type
|
|
10
|
+
type,
|
|
18
11
|
target: WALLET_TARGET,
|
|
19
12
|
sdkVersion: PROVIDER_VERSION,
|
|
20
13
|
id,
|
|
14
|
+
fromOrigin: window.location.origin,
|
|
21
15
|
}, '*');
|
|
16
|
+
const timeOut = setTimeout(() => {
|
|
17
|
+
const error = EIP_1474_ERROR[EIP_1474_ERROR_ENUM.ResourceUnavailable];
|
|
18
|
+
reject(error);
|
|
19
|
+
}, 500);
|
|
22
20
|
function handleResponse(event) {
|
|
23
|
-
if (isExpectedResponse(event, id, `${
|
|
21
|
+
if (isExpectedResponse(event, id, `${type}_RESPONSE`)) {
|
|
24
22
|
window.removeEventListener('message', handleResponse);
|
|
23
|
+
clearTimeout(timeOut);
|
|
25
24
|
if (event.data.error) {
|
|
26
25
|
reject(event.data.error);
|
|
27
26
|
}
|
|
@@ -32,4 +31,49 @@ export const getWalletVersion = async () => new Promise((resolve, reject) => {
|
|
|
32
31
|
}
|
|
33
32
|
window.addEventListener('message', handleResponse);
|
|
34
33
|
});
|
|
34
|
+
const mobileFunction = async () => new Promise((resolve, reject) => {
|
|
35
|
+
const id = crypto.randomUUID();
|
|
36
|
+
// TODO: add timeout for request
|
|
37
|
+
// const timeOut = setTimeout(() => {
|
|
38
|
+
// const error: ConsoleWalletError = EIP_1474_ERROR[EIP_1474_ERROR_ENUM.ResourceUnavailable];
|
|
39
|
+
// reject(error);
|
|
40
|
+
// }, 500);
|
|
41
|
+
wcSessionService
|
|
42
|
+
.sendMessage(JSON.stringify({
|
|
43
|
+
type,
|
|
44
|
+
target: WALLET_TARGET,
|
|
45
|
+
sdkVersion: PROVIDER_VERSION,
|
|
46
|
+
fromOrigin: window.location.origin,
|
|
47
|
+
id,
|
|
48
|
+
}), type, id)
|
|
49
|
+
.then(() => {
|
|
50
|
+
wcSessionService.addSubscriber(id, (message) => {
|
|
51
|
+
const response = JSON.parse(message.serializedPayload);
|
|
52
|
+
if (isExpectedMobileResponse(response, id, `${type}_RESPONSE`)) {
|
|
53
|
+
if (response.error) {
|
|
54
|
+
reject(response.error);
|
|
55
|
+
}
|
|
56
|
+
else {
|
|
57
|
+
resolve(response.data);
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
});
|
|
61
|
+
});
|
|
62
|
+
});
|
|
63
|
+
/**
|
|
64
|
+
* Fetches wallet version
|
|
65
|
+
*
|
|
66
|
+
* Emits `${PUBLIC_REQUESTS.GET_VERSION}_RESPONSE` with connected wallet version.
|
|
67
|
+
* Origin should be connected; otherwise a connect flow may be required.
|
|
68
|
+
*
|
|
69
|
+
* @returns {Promise<WalletVersion>} Connected wallet version.
|
|
70
|
+
* @example
|
|
71
|
+
* const version = await getWalletVersion();
|
|
72
|
+
*/
|
|
73
|
+
export const getWalletVersion = async () => {
|
|
74
|
+
{
|
|
75
|
+
const res = await wcRequestLogicSeparator(async () => await browserFunction(), async () => await mobileFunction());
|
|
76
|
+
return res;
|
|
77
|
+
}
|
|
78
|
+
};
|
|
35
79
|
//# sourceMappingURL=getWalletVersion.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getWalletVersion.js","sourceRoot":"","sources":["../../../src/requests/getWalletVersion.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAC/D,OAAO,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAC;
|
|
1
|
+
{"version":3,"file":"getWalletVersion.js","sourceRoot":"","sources":["../../../src/requests/getWalletVersion.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAC/D,OAAO,EAAE,wBAAwB,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAC;AAChG,OAAO,EAAE,uBAAuB,EAAE,MAAM,6CAA6C,CAAC;AACtF,OAAO,EAAE,gBAAgB,EAAE,MAAM,mCAAmC,CAAC;AACrE,OAAO,EAEL,cAAc,EACd,mBAAmB,EACnB,eAAe,GAEhB,MAAM,UAAU,CAAC;AAElB,MAAM,IAAI,GAAG,eAAe,CAAC,WAAW,CAAC;AAEzC,MAAM,eAAe,GAAiC,KAAK,IAAI,EAAE,CAC/D,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,aAAa;QACrB,UAAU,EAAE,gBAAgB;QAC5B,EAAE;QACF,UAAU,EAAE,MAAM,CAAC,QAAQ,CAAC,MAAM;KACnC,EACD,GAAG,CACJ,CAAC;IAEF,MAAM,OAAO,GAAG,UAAU,CAAC,GAAG,EAAE;QAC9B,MAAM,KAAK,GAAuB,cAAc,CAAC,mBAAmB,CAAC,mBAAmB,CAAC,CAAC;QAC1F,MAAM,CAAC,KAAK,CAAC,CAAC;IAChB,CAAC,EAAE,GAAG,CAAC,CAAC;IAER,SAAS,cAAc,CAAC,KAAmB;QACzC,IAAI,kBAAkB,CAAC,KAAK,EAAE,EAAE,EAAE,GAAG,IAAI,WAAW,CAAC,EAAE;YACrD,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;AAEL,MAAM,cAAc,GAAiC,KAAK,IAAI,EAAE,CAC9D,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;IAC9B,MAAM,EAAE,GAAG,MAAM,CAAC,UAAU,EAAE,CAAC;IAE/B,gCAAgC;IAEhC,qCAAqC;IACrC,+FAA+F;IAC/F,mBAAmB;IACnB,WAAW;IAEX,gBAAgB;SACb,WAAW,CACV,IAAI,CAAC,SAAS,CAAC;QACb,IAAI;QACJ,MAAM,EAAE,aAAa;QACrB,UAAU,EAAE,gBAAgB;QAC5B,UAAU,EAAE,MAAM,CAAC,QAAQ,CAAC,MAAM;QAClC,EAAE;KACH,CAAC,EACF,IAAI,EACJ,EAAE,CACH;SACA,IAAI,CAAC,GAAG,EAAE;QACT,gBAAgB,CAAC,aAAa,CAAC,EAAE,EAAE,CAAC,OAAO,EAAE,EAAE;YAC7C,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAC;YACvD,IAAI,wBAAwB,CAAC,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;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAiC,KAAK,IAAI,EAAE;IACvE;QACE,MAAM,GAAG,GAAG,MAAM,uBAAuB,CACvC,KAAK,IAAI,EAAE,CAAC,MAAM,eAAe,EAAE,EACnC,KAAK,IAAI,EAAE,CAAC,MAAM,cAAc,EAAE,CACnC,CAAC;QAEF,OAAO,GAAoB,CAAC;KAC7B;AACH,CAAC,CAAC"}
|
|
@@ -1,37 +1,22 @@
|
|
|
1
1
|
import { PROVIDER_VERSION, WALLET_TARGET } from '../constants';
|
|
2
|
-
import { isExpectedResponse } from '../helpers/handleResponse.helper';
|
|
3
|
-
import {
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
* Emits `${PUBLIC_REQUESTS.LEDGER_API}_RESPONSE` with an array of wallets.
|
|
9
|
-
* Requires a connected origin; otherwise the wallet may trigger a connect flow.
|
|
10
|
-
*
|
|
11
|
-
* @returns {Promise<LedgerApiResponse>} String or stringified JSON
|
|
12
|
-
* @example
|
|
13
|
-
* const stringifiedResponse = await ledgerApi({
|
|
14
|
-
requestMethod: "GET",
|
|
15
|
-
resource: "/v2/version",
|
|
16
|
-
body: ""});
|
|
17
|
-
*/
|
|
18
|
-
export const ledgerApi = async (request) => new Promise((resolve, reject) => {
|
|
2
|
+
import { isExpectedMobileResponse, isExpectedResponse } from '../helpers/handleResponse.helper';
|
|
3
|
+
import { PUBLIC_REQUESTS } from '../types';
|
|
4
|
+
import { wcRequestLogicSeparator } from '../services/wc-service/wc-request-separator';
|
|
5
|
+
import { wcSessionService } from '../services/wc-service/wc-service';
|
|
6
|
+
const type = PUBLIC_REQUESTS.LEDGER_API;
|
|
7
|
+
const browserFunction = async (data) => new Promise((resolve, reject) => {
|
|
19
8
|
const id = crypto.randomUUID();
|
|
20
9
|
window.postMessage({
|
|
21
|
-
type
|
|
10
|
+
type,
|
|
22
11
|
target: WALLET_TARGET,
|
|
23
12
|
sdkVersion: PROVIDER_VERSION,
|
|
24
13
|
id,
|
|
25
|
-
|
|
14
|
+
fromOrigin: window.location.origin,
|
|
15
|
+
...data,
|
|
26
16
|
}, '*');
|
|
27
|
-
const timeOut = setTimeout(() => {
|
|
28
|
-
const error = EIP_1474_ERROR[EIP_1474_ERROR_ENUM.ResourceUnavailable];
|
|
29
|
-
reject(error);
|
|
30
|
-
}, 500);
|
|
31
17
|
function handleResponse(event) {
|
|
32
|
-
if (isExpectedResponse(event, id, `${
|
|
18
|
+
if (isExpectedResponse(event, id, `${type}_RESPONSE`)) {
|
|
33
19
|
window.removeEventListener('message', handleResponse);
|
|
34
|
-
clearTimeout(timeOut);
|
|
35
20
|
if (event.data.error) {
|
|
36
21
|
reject(event.data.error);
|
|
37
22
|
}
|
|
@@ -42,4 +27,47 @@ export const ledgerApi = async (request) => new Promise((resolve, reject) => {
|
|
|
42
27
|
}
|
|
43
28
|
window.addEventListener('message', handleResponse);
|
|
44
29
|
});
|
|
30
|
+
const mobileFunction = async (data) => new Promise((resolve, reject) => {
|
|
31
|
+
const id = crypto.randomUUID();
|
|
32
|
+
wcSessionService
|
|
33
|
+
.sendMessage(JSON.stringify({
|
|
34
|
+
type,
|
|
35
|
+
target: WALLET_TARGET,
|
|
36
|
+
sdkVersion: PROVIDER_VERSION,
|
|
37
|
+
id,
|
|
38
|
+
fromOrigin: window.location.origin,
|
|
39
|
+
...data,
|
|
40
|
+
}), type, id)
|
|
41
|
+
.then(() => {
|
|
42
|
+
wcSessionService.addSubscriber(id, (message) => {
|
|
43
|
+
const response = JSON.parse(message.serializedPayload);
|
|
44
|
+
if (isExpectedMobileResponse(response, id, `${type}_RESPONSE`)) {
|
|
45
|
+
if (response.error) {
|
|
46
|
+
reject(response.error);
|
|
47
|
+
}
|
|
48
|
+
else {
|
|
49
|
+
resolve(response.data);
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
});
|
|
53
|
+
});
|
|
54
|
+
});
|
|
55
|
+
/**
|
|
56
|
+
* Raw data request to ledger API
|
|
57
|
+
* More info about ledger API: https://github.com/mjuchli-da/cips/blob/205eb941031b476a990a56734ff1a73fd87ef743/cip-0103/cip-0103.md
|
|
58
|
+
*
|
|
59
|
+
* Emits `${PUBLIC_REQUESTS.LEDGER_API}_RESPONSE` with an array of wallets.
|
|
60
|
+
* Requires a connected origin; otherwise the wallet may trigger a connect flow.
|
|
61
|
+
*
|
|
62
|
+
* @returns {Promise<LedgerApiResponse>} String or stringified JSON
|
|
63
|
+
* @example
|
|
64
|
+
* const stringifiedResponse = await ledgerApi({
|
|
65
|
+
requestMethod: "GET",
|
|
66
|
+
resource: "/v2/version",
|
|
67
|
+
body: ""});
|
|
68
|
+
*/
|
|
69
|
+
export const ledgerApi = async (request) => {
|
|
70
|
+
const res = await wcRequestLogicSeparator(async () => await browserFunction(request), async () => await mobileFunction(request));
|
|
71
|
+
return res;
|
|
72
|
+
};
|
|
45
73
|
//# sourceMappingURL=ledgerApi.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ledgerApi.js","sourceRoot":"","sources":["../../../src/requests/ledgerApi.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAC/D,OAAO,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAC;
|
|
1
|
+
{"version":3,"file":"ledgerApi.js","sourceRoot":"","sources":["../../../src/requests/ledgerApi.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,28 +1,21 @@
|
|
|
1
1
|
import { PROVIDER_VERSION, WALLET_TARGET } from '../constants';
|
|
2
|
-
import { isExpectedResponse } from '../helpers/handleResponse.helper';
|
|
2
|
+
import { isExpectedMobileResponse, isExpectedResponse } from '../helpers/handleResponse.helper';
|
|
3
|
+
import { wcRequestLogicSeparator } from '../services/wc-service/wc-request-separator';
|
|
4
|
+
import { wcSessionService } from '../services/wc-service/wc-service';
|
|
3
5
|
import { PUBLIC_REQUESTS } from '../types';
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
*
|
|
7
|
-
* Emits `${PUBLIC_REQUESTS.SIGN_MESSAGE}_RESPONSE` with the signature payload.
|
|
8
|
-
* Origin must be connected and the user may be prompted to approve.
|
|
9
|
-
*
|
|
10
|
-
* @param {SignMessageRequest} payload Message content and metadata to sign.
|
|
11
|
-
* @returns {Promise<SignedMessageResponse>} Signed message payload.
|
|
12
|
-
* @example
|
|
13
|
-
* const sig = await signMessage({ ... });
|
|
14
|
-
*/
|
|
15
|
-
export const signMessage = async (message) => new Promise((resolve, reject) => {
|
|
6
|
+
const type = PUBLIC_REQUESTS.SIGN_MESSAGE;
|
|
7
|
+
const browserFunction = async (data) => new Promise((resolve, reject) => {
|
|
16
8
|
const id = crypto.randomUUID();
|
|
17
9
|
window.postMessage({
|
|
18
|
-
type
|
|
10
|
+
type,
|
|
19
11
|
target: WALLET_TARGET,
|
|
20
12
|
sdkVersion: PROVIDER_VERSION,
|
|
21
13
|
id,
|
|
22
|
-
|
|
14
|
+
fromOrigin: window.location.origin,
|
|
15
|
+
...data,
|
|
23
16
|
}, '*');
|
|
24
17
|
function handleResponse(event) {
|
|
25
|
-
if (isExpectedResponse(event, id, `${
|
|
18
|
+
if (isExpectedResponse(event, id, `${type}_RESPONSE`)) {
|
|
26
19
|
window.removeEventListener('message', handleResponse);
|
|
27
20
|
if (event.data.error) {
|
|
28
21
|
reject(event.data.error);
|
|
@@ -34,4 +27,44 @@ export const signMessage = async (message) => new Promise((resolve, reject) => {
|
|
|
34
27
|
}
|
|
35
28
|
window.addEventListener('message', handleResponse);
|
|
36
29
|
});
|
|
30
|
+
const mobileFunction = async (data) => new Promise((resolve, reject) => {
|
|
31
|
+
const id = crypto.randomUUID();
|
|
32
|
+
wcSessionService
|
|
33
|
+
.sendMessage(JSON.stringify({
|
|
34
|
+
type,
|
|
35
|
+
target: WALLET_TARGET,
|
|
36
|
+
sdkVersion: PROVIDER_VERSION,
|
|
37
|
+
id,
|
|
38
|
+
fromOrigin: window.location.origin,
|
|
39
|
+
...data,
|
|
40
|
+
}), type, id)
|
|
41
|
+
.then(() => {
|
|
42
|
+
wcSessionService.addSubscriber(id, (message) => {
|
|
43
|
+
const response = JSON.parse(message.serializedPayload);
|
|
44
|
+
if (isExpectedMobileResponse(response, id, `${type}_RESPONSE`)) {
|
|
45
|
+
if (response.error) {
|
|
46
|
+
reject(response.error);
|
|
47
|
+
}
|
|
48
|
+
else {
|
|
49
|
+
resolve(response.data);
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
});
|
|
53
|
+
});
|
|
54
|
+
});
|
|
55
|
+
/**
|
|
56
|
+
* Requests the wallet to sign an arbitrary message using the active account.
|
|
57
|
+
*
|
|
58
|
+
* Emits `${PUBLIC_REQUESTS.SIGN_MESSAGE}_RESPONSE` with the signature payload.
|
|
59
|
+
* Origin must be connected and the user may be prompted to approve.
|
|
60
|
+
*
|
|
61
|
+
* @param {SignMessageRequest} payload Message content and metadata to sign.
|
|
62
|
+
* @returns {Promise<SignedMessageResponse>} Signed message payload.
|
|
63
|
+
* @example
|
|
64
|
+
* const sig = await signMessage({ ... });
|
|
65
|
+
*/
|
|
66
|
+
export const signMessage = async (message) => {
|
|
67
|
+
const res = await wcRequestLogicSeparator(async () => await browserFunction(message), async () => await mobileFunction(message));
|
|
68
|
+
return res;
|
|
69
|
+
};
|
|
37
70
|
//# sourceMappingURL=signMessage.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"signMessage.js","sourceRoot":"","sources":["../../../src/requests/signMessage.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAC/D,OAAO,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAC;
|
|
1
|
+
{"version":3,"file":"signMessage.js","sourceRoot":"","sources":["../../../src/requests/signMessage.ts"],"names":[],"mappings":"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"}
|