@0xsquid/react-hooks 7.3.1 → 7.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/core/connectors/xrpl/Xaman.d.ts +0 -1
- package/dist/core/connectors/xrpl/Xaman.js +2 -11
- package/dist/core/connectors/xrpl/Xaman.js.map +1 -1
- package/dist/core/constants.d.ts +1 -1
- package/dist/core/constants.js +5 -5
- package/dist/core/constants.js.map +1 -1
- package/dist/hooks/wallet/useAutoConnect.js +25 -13
- package/dist/hooks/wallet/useAutoConnect.js.map +1 -1
- package/dist/hooks/wallet/useIntegratorContext.js +3 -3
- package/dist/hooks/wallet/useIntegratorContext.js.map +1 -1
- package/dist/hooks/xrpl/useXrplWallets.js +3 -3
- package/dist/hooks/xrpl/useXrplWallets.js.map +1 -1
- package/dist/services/external/index.d.ts +1 -0
- package/dist/services/external/index.js +1 -0
- package/dist/services/external/index.js.map +1 -1
- package/dist/services/external/xaman.d.ts +13 -0
- package/dist/services/external/xaman.js +33 -0
- package/dist/services/external/xaman.js.map +1 -1
- package/package.json +1 -1
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import type { Xumm } from "xumm";
|
|
2
2
|
import { XrplConnector, XrplNetwork, XrplTransaction } from "../../types/xrpl";
|
|
3
3
|
export declare class XamanConnector implements XrplConnector {
|
|
4
|
-
xummAppId: string;
|
|
5
4
|
xumm: Xumm | null;
|
|
6
5
|
private validateXummInitialized;
|
|
7
6
|
private initializeXumm;
|
|
@@ -1,8 +1,6 @@
|
|
|
1
|
-
import { XamanClient } from "../../../services/external/xaman";
|
|
1
|
+
import { getXummClient, XamanClient } from "../../../services/external/xaman";
|
|
2
2
|
import { XrplTxStatus, } from "../../types/xrpl";
|
|
3
3
|
export class XamanConnector {
|
|
4
|
-
// Xumm app ID, safe to expose on client-side
|
|
5
|
-
xummAppId = "5f341f00-03c6-4f3e-a367-e69698ca8337";
|
|
6
4
|
xumm = null;
|
|
7
5
|
validateXummInitialized() {
|
|
8
6
|
if (!this.xumm) {
|
|
@@ -10,15 +8,8 @@ export class XamanConnector {
|
|
|
10
8
|
}
|
|
11
9
|
}
|
|
12
10
|
async initializeXumm() {
|
|
13
|
-
// the Xumm constructor can run in 3 different environments: Server, Browser, and xApp (Xaman's embedded browser)
|
|
14
|
-
// When running in server, the constructor needs both App ID and API secret
|
|
15
|
-
// When running in xApp or browser envs, the constructor only needs the App ID
|
|
16
|
-
// We cannot initialize the Xumm instance in the constructor
|
|
17
|
-
// as it would throw an error in SRR (API secret is required in server env),
|
|
18
|
-
// so we need to initialize it on the client-side
|
|
19
11
|
if (!this.xumm) {
|
|
20
|
-
|
|
21
|
-
this.xumm = new Xumm(this.xummAppId);
|
|
12
|
+
this.xumm = await getXummClient();
|
|
22
13
|
}
|
|
23
14
|
}
|
|
24
15
|
async connect() {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Xaman.js","sourceRoot":"","sources":["../../../../src/core/connectors/xrpl/Xaman.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,kCAAkC,CAAC;
|
|
1
|
+
{"version":3,"file":"Xaman.js","sourceRoot":"","sources":["../../../../src/core/connectors/xrpl/Xaman.ts"],"names":[],"mappings":"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"}
|
package/dist/core/constants.d.ts
CHANGED
|
@@ -65,7 +65,7 @@ export declare const CHAIN_IDS: {
|
|
|
65
65
|
export declare const chainTypeToDefaultChainIdMap: Record<ChainType, string>;
|
|
66
66
|
export declare const chainTypeToNativeTokenAddressMap: Record<ChainType, string>;
|
|
67
67
|
export declare const defaultConfigValues: AppConfig;
|
|
68
|
-
export declare enum
|
|
68
|
+
export declare enum EvmPriorityConnectors {
|
|
69
69
|
Safe = "safe",
|
|
70
70
|
LedgerLive = "ledgerLive"
|
|
71
71
|
}
|
package/dist/core/constants.js
CHANGED
|
@@ -105,11 +105,11 @@ export const defaultConfigValues = {
|
|
|
105
105
|
critical: 5,
|
|
106
106
|
},
|
|
107
107
|
};
|
|
108
|
-
export var
|
|
109
|
-
(function (
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
})(
|
|
108
|
+
export var EvmPriorityConnectors;
|
|
109
|
+
(function (EvmPriorityConnectors) {
|
|
110
|
+
EvmPriorityConnectors["Safe"] = "safe";
|
|
111
|
+
EvmPriorityConnectors["LedgerLive"] = "ledgerLive";
|
|
112
|
+
})(EvmPriorityConnectors || (EvmPriorityConnectors = {}));
|
|
113
113
|
// Success
|
|
114
114
|
const cctpSuccessStatuses = ["complete"];
|
|
115
115
|
const chainflipSuccessStatuses = ["COMPLETE"];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/core/constants.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/core/constants.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,48 +1,58 @@
|
|
|
1
1
|
import { useCallback, useEffect, useRef } from "react";
|
|
2
2
|
import { useConnect } from "wagmi";
|
|
3
|
-
import {
|
|
3
|
+
import { EvmPriorityConnectors } from "../../core/constants";
|
|
4
4
|
import { useEvmContext } from "../../core/providers/EvmProvider";
|
|
5
5
|
import { useSolanaContext } from "../../core/providers/SolanaProvider";
|
|
6
6
|
import { useSuiContext } from "../../core/providers/SuiProvider";
|
|
7
|
+
import { useXrplContext } from "../../core/providers/XrplProvider";
|
|
8
|
+
import { isXamanXAppContext } from "../../services/external/xaman";
|
|
7
9
|
import { useSquidChains } from "../chains/useSquidChains";
|
|
8
10
|
import { useConfigStore } from "../store/useSquidStore";
|
|
9
|
-
|
|
11
|
+
import { useWallet } from "./useWallet";
|
|
12
|
+
const EVM_PRIORITY_CONNECTOR_IDS = [EvmPriorityConnectors.Safe];
|
|
10
13
|
/**
|
|
11
14
|
* Auto connect to Safe provider if it's present
|
|
12
15
|
* Safe will always be the priority connector
|
|
13
16
|
* Because if it's present, this means the user is on a Safe app iframe
|
|
14
17
|
*/
|
|
15
18
|
export const useAutoConnect = () => {
|
|
16
|
-
const { connect, connectors } = useConnect();
|
|
19
|
+
const { connect: evmConnect, connectors: evmConnectors } = useConnect();
|
|
17
20
|
const { chains } = useSquidChains();
|
|
18
21
|
const { isInitialized } = useConfigStore();
|
|
19
22
|
const hasAttemptedReconnect = useRef(false);
|
|
20
23
|
const { autoConnectEvm } = useEvmContext();
|
|
21
24
|
const { autoConnectSolana } = useSolanaContext();
|
|
22
25
|
const { autoConnectSui } = useSuiContext();
|
|
26
|
+
const { wallets: xrplWallets } = useXrplContext();
|
|
27
|
+
const { connectWallet } = useWallet();
|
|
23
28
|
const autoConnect = useCallback(async () => {
|
|
24
29
|
const queryParameters = new URLSearchParams(window.location.search);
|
|
25
30
|
// TODO: At the moment gnosis was published without the embed parameter in the manifest,
|
|
26
31
|
// but we should ask gnosis to change our app url to https://app.squidrouter.com/?embed="safe"
|
|
27
32
|
// So we could remove the priority connector array and just use the embed parameter
|
|
28
33
|
const embedType = queryParameters.get("embed");
|
|
29
|
-
let
|
|
34
|
+
let evmPriorityConnector;
|
|
30
35
|
if (embedType) {
|
|
31
|
-
|
|
36
|
+
evmPriorityConnector = evmConnectors.find((c) => c.id === embedType);
|
|
32
37
|
}
|
|
33
38
|
else {
|
|
34
|
-
for await (const c of
|
|
35
|
-
if (
|
|
39
|
+
for await (const c of evmConnectors) {
|
|
40
|
+
if (EVM_PRIORITY_CONNECTOR_IDS.includes(c.id)) {
|
|
36
41
|
if (await c.isAuthorized()) {
|
|
37
|
-
|
|
42
|
+
evmPriorityConnector = c;
|
|
38
43
|
break;
|
|
39
44
|
}
|
|
40
45
|
}
|
|
41
46
|
}
|
|
42
47
|
}
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
48
|
+
if (evmPriorityConnector) {
|
|
49
|
+
evmConnect({ connector: evmPriorityConnector });
|
|
50
|
+
}
|
|
51
|
+
else if (isXamanXAppContext()) {
|
|
52
|
+
const xamanXAppWallet = xrplWallets.find((w) => w.connectorId === "xaman-xapp");
|
|
53
|
+
if (xamanXAppWallet) {
|
|
54
|
+
connectWallet({ wallet: xamanXAppWallet });
|
|
55
|
+
}
|
|
46
56
|
}
|
|
47
57
|
else {
|
|
48
58
|
if (chains.length > 0 &&
|
|
@@ -62,13 +72,15 @@ export const useAutoConnect = () => {
|
|
|
62
72
|
}
|
|
63
73
|
}
|
|
64
74
|
}, [
|
|
65
|
-
|
|
66
|
-
|
|
75
|
+
evmConnectors,
|
|
76
|
+
evmConnect,
|
|
67
77
|
chains.length,
|
|
68
78
|
isInitialized,
|
|
69
79
|
autoConnectEvm,
|
|
70
80
|
autoConnectSolana,
|
|
71
81
|
autoConnectSui,
|
|
82
|
+
connectWallet,
|
|
83
|
+
xrplWallets,
|
|
72
84
|
]);
|
|
73
85
|
useEffect(() => {
|
|
74
86
|
autoConnect();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useAutoConnect.js","sourceRoot":"","sources":["../../../src/hooks/wallet/useAutoConnect.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;AACvD,OAAO,
|
|
1
|
+
{"version":3,"file":"useAutoConnect.js","sourceRoot":"","sources":["../../../src/hooks/wallet/useAutoConnect.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { useMemo } from "react";
|
|
2
|
-
import {
|
|
2
|
+
import { EvmPriorityConnectors } from "../../core/constants";
|
|
3
3
|
import { useGnosisContext } from "./useGnosisContext";
|
|
4
4
|
export const useIntegratorContext = () => {
|
|
5
5
|
const { isGnosisContext } = useGnosisContext();
|
|
@@ -10,8 +10,8 @@ export const useIntegratorContext = () => {
|
|
|
10
10
|
*/
|
|
11
11
|
const walletHandledExternally = useMemo(() => {
|
|
12
12
|
const embedTypesHavingExternalWallet = [
|
|
13
|
-
|
|
14
|
-
|
|
13
|
+
EvmPriorityConnectors.LedgerLive,
|
|
14
|
+
EvmPriorityConnectors.Safe,
|
|
15
15
|
];
|
|
16
16
|
const queryParameters = new URLSearchParams(window.location.search);
|
|
17
17
|
const embedType = queryParameters.get("embed");
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useIntegratorContext.js","sourceRoot":"","sources":["../../../src/hooks/wallet/useIntegratorContext.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AAChC,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"useIntegratorContext.js","sourceRoot":"","sources":["../../../src/hooks/wallet/useIntegratorContext.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AAChC,OAAO,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAC7D,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAEtD,MAAM,CAAC,MAAM,oBAAoB,GAAG,GAAG,EAAE;IACvC,MAAM,EAAE,eAAe,EAAE,GAAG,gBAAgB,EAAE,CAAC;IAC/C;;;;OAIG;IACH,MAAM,uBAAuB,GAAY,OAAO,CAAC,GAAG,EAAE;QACpD,MAAM,8BAA8B,GAA4B;YAC9D,qBAAqB,CAAC,UAAU;YAChC,qBAAqB,CAAC,IAAI;SAC3B,CAAC;QACF,MAAM,eAAe,GAAG,IAAI,eAAe,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;QACpE,MAAM,SAAS,GAAG,eAAe,CAAC,GAAG,CAAC,OAAO,CAA0B,CAAC;QAExE,OAAO,CACL,eAAe,IAAI,8BAA8B,CAAC,QAAQ,CAAC,SAAS,CAAC,CACtE,CAAC;IACJ,CAAC,EAAE,CAAC,eAAe,CAAC,CAAC,CAAC;IAEtB,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,EAAE;QAC3B,MAAM,eAAe,GAAG,IAAI,eAAe,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;QACpE,MAAM,SAAS,GAAG,eAAe,CAAC,GAAG,CAAC,OAAO,CAA0B,CAAC;QACxE,OAAO,CAAC,CAAC,SAAS,CAAC;IACrB,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP;;;OAGG;IACH,MAAM,cAAc,GAAG,OAAO,CAAC,GAAG,EAAE;QAClC,IAAI;YACF,OAAO,MAAM,CAAC,IAAI,KAAK,MAAM,CAAC,GAAG,CAAC;SACnC;QAAC,OAAO,CAAC,EAAE;YACV,OAAO,KAAK,CAAC;SACd;IACH,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,OAAO,EAAE,uBAAuB,EAAE,OAAO,EAAE,cAAc,EAAE,CAAC;AAC9D,CAAC,CAAC"}
|
|
@@ -4,10 +4,10 @@ import { XamanConnector } from "../../core/connectors/xrpl/Xaman";
|
|
|
4
4
|
import { XamanQrConnector } from "../../core/connectors/xrpl/XamanQr";
|
|
5
5
|
import { WindowWalletFlag } from "../../core/types/wallet";
|
|
6
6
|
import { walletIconBaseUrl } from "../../core/wallets";
|
|
7
|
+
import { isXamanXAppContext } from "../../services/external/xaman";
|
|
7
8
|
export function useXrplWallets() {
|
|
8
9
|
const wallets = useMemo(() => {
|
|
9
|
-
const
|
|
10
|
-
!!navigator.userAgent.match(/xAppBuilder/i);
|
|
10
|
+
const isXAppContext = isXamanXAppContext();
|
|
11
11
|
const xamanWalletIcon = `${walletIconBaseUrl}/xaman.webp`;
|
|
12
12
|
const xamanXAppWallet = {
|
|
13
13
|
type: ChainType.XRPL,
|
|
@@ -37,7 +37,7 @@ export function useXrplWallets() {
|
|
|
37
37
|
return [
|
|
38
38
|
// when running in Xaman XApp context, use the native connector
|
|
39
39
|
// otherwise use the QR code connector
|
|
40
|
-
|
|
40
|
+
isXAppContext ? xamanXAppWallet : xamanQrWallet,
|
|
41
41
|
];
|
|
42
42
|
}, []);
|
|
43
43
|
return {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useXrplWallets.js","sourceRoot":"","sources":["../../../src/hooks/xrpl/useXrplWallets.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACjD,OAAO,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AAChC,OAAO,EAAE,cAAc,EAAE,MAAM,kCAAkC,CAAC;AAClE,OAAO,EAAE,gBAAgB,EAAE,MAAM,oCAAoC,CAAC;AACtE,OAAO,EAAE,gBAAgB,EAAc,MAAM,yBAAyB,CAAC;AACvE,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"useXrplWallets.js","sourceRoot":"","sources":["../../../src/hooks/xrpl/useXrplWallets.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACjD,OAAO,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AAChC,OAAO,EAAE,cAAc,EAAE,MAAM,kCAAkC,CAAC;AAClE,OAAO,EAAE,gBAAgB,EAAE,MAAM,oCAAoC,CAAC;AACtE,OAAO,EAAE,gBAAgB,EAAc,MAAM,yBAAyB,CAAC;AACvE,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AACvD,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AAEnE,MAAM,UAAU,cAAc;IAC5B,MAAM,OAAO,GAAiB,OAAO,CAAC,GAAG,EAAE;QACzC,MAAM,aAAa,GAAG,kBAAkB,EAAE,CAAC;QAE3C,MAAM,eAAe,GAAG,GAAG,iBAAiB,aAAa,CAAC;QAC1D,MAAM,eAAe,GAAe;YAClC,IAAI,EAAE,SAAS,CAAC,IAAI;YACpB,IAAI,EAAE,OAAO;YACb,UAAU,EAAE,gBAAgB,CAAC,SAAS;YACtC,SAAS,EAAE,IAAI,cAAc,EAAE;YAC/B,WAAW;gBACT,OAAO,IAAI,CAAC;YACd,CAAC;YACD,QAAQ,EAAE,IAAI;YACd,WAAW,EAAE,YAAY;YACzB,aAAa,EAAE,OAAO;YACtB,IAAI,EAAE,eAAe;SACtB,CAAC;QAEF,MAAM,aAAa,GAAe;YAChC,IAAI,EAAE,SAAS,CAAC,IAAI;YACpB,IAAI,EAAE,OAAO;YACb,UAAU,EAAE,gBAAgB,CAAC,OAAO;YACpC,SAAS,EAAE,IAAI,gBAAgB,EAAE;YACjC,gBAAgB,EAAE,IAAI;YACtB,QAAQ,EAAE,IAAI;YACd,WAAW,EAAE,UAAU;YACvB,aAAa,EAAE,OAAO;YACtB,IAAI,EAAE,eAAe;YACrB,UAAU,EAAE,IAAI;SACjB,CAAC;QAEF,OAAO;YACL,+DAA+D;YAC/D,sCAAsC;YACtC,aAAa,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,aAAa;SAChD,CAAC;IACJ,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,OAAO;QACL,OAAO;KACR,CAAC;AACJ,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/services/external/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/services/external/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AACnC,OAAO,EAAE,aAAa,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAC"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { Xumm } from "xumm";
|
|
1
2
|
import { XamanXrplNetwork, XrplNetwork, XrplTransaction } from "../../core/types/xrpl";
|
|
2
3
|
interface XamanQrDataResponse {
|
|
3
4
|
qrMatrix: boolean[][];
|
|
@@ -27,4 +28,16 @@ export declare abstract class XamanClient {
|
|
|
27
28
|
static fetch<T>(endpoint: string, body?: Record<string, any>, signal?: AbortSignal): Promise<T>;
|
|
28
29
|
static getXamanNetwork(network: XrplNetwork): XamanXrplNetwork;
|
|
29
30
|
}
|
|
31
|
+
export declare function isXamanXAppContext(): boolean;
|
|
32
|
+
/**
|
|
33
|
+
* Initializes the Xumm sdk on client-side, if not already initialized.
|
|
34
|
+
* Returns null on server-side.
|
|
35
|
+
*
|
|
36
|
+
* the Xumm constructor can run in 3 different environments: Server, Browser, and xApp (Xaman's embedded browser)
|
|
37
|
+
* When running on the server, the constructor needs both App ID and API secret
|
|
38
|
+
* When running in xApp or browser envs, the constructor only needs the App ID
|
|
39
|
+
* We avoid initializing the Xumm instance on the server
|
|
40
|
+
* as it would throw an error during SRR (API secret is required in server env).
|
|
41
|
+
*/
|
|
42
|
+
export declare function getXummClient(): Promise<Xumm | null>;
|
|
30
43
|
export {};
|
|
@@ -42,4 +42,37 @@ export class XamanClient {
|
|
|
42
42
|
}
|
|
43
43
|
}
|
|
44
44
|
}
|
|
45
|
+
export function isXamanXAppContext() {
|
|
46
|
+
try {
|
|
47
|
+
return (!!navigator.userAgent.match(/xumm\/xapp/i) ||
|
|
48
|
+
!!navigator.userAgent.match(/xAppBuilder/i));
|
|
49
|
+
}
|
|
50
|
+
catch {
|
|
51
|
+
return false;
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
let xummClient = null;
|
|
55
|
+
// Xumm app ID, safe to expose on client-side
|
|
56
|
+
const xummAppId = "5f341f00-03c6-4f3e-a367-e69698ca8337";
|
|
57
|
+
/**
|
|
58
|
+
* Initializes the Xumm sdk on client-side, if not already initialized.
|
|
59
|
+
* Returns null on server-side.
|
|
60
|
+
*
|
|
61
|
+
* the Xumm constructor can run in 3 different environments: Server, Browser, and xApp (Xaman's embedded browser)
|
|
62
|
+
* When running on the server, the constructor needs both App ID and API secret
|
|
63
|
+
* When running in xApp or browser envs, the constructor only needs the App ID
|
|
64
|
+
* We avoid initializing the Xumm instance on the server
|
|
65
|
+
* as it would throw an error during SRR (API secret is required in server env).
|
|
66
|
+
*/
|
|
67
|
+
export async function getXummClient() {
|
|
68
|
+
if (typeof window === "undefined") {
|
|
69
|
+
return null;
|
|
70
|
+
}
|
|
71
|
+
if (xummClient) {
|
|
72
|
+
return xummClient;
|
|
73
|
+
}
|
|
74
|
+
const { Xumm } = await import("xumm");
|
|
75
|
+
xummClient = new Xumm(xummAppId);
|
|
76
|
+
return xummClient;
|
|
77
|
+
}
|
|
45
78
|
//# sourceMappingURL=xaman.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"xaman.js","sourceRoot":"","sources":["../../../src/services/external/xaman.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"xaman.js","sourceRoot":"","sources":["../../../src/services/external/xaman.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EACL,gBAAgB,EAChB,WAAW,GAEZ,MAAM,uBAAuB,CAAC;AAQ/B;;;;;;GAMG;AACH,MAAM,OAAgB,WAAW;IAC/B,MAAM,CAAC,OAAO,GAAG,aAAa,CAAC;IAE/B,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,MAAoB;QACtC,OAAO,IAAI,CAAC,KAAK,CAAsB,SAAS,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC;IACvE,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,OAAe,EAAE,MAAoB;QAC5D,OAAO,IAAI,CAAC,KAAK,CAId,cAAc,EAAE,EAAE,OAAO,EAAE,EAAE,MAAM,CAAC,CAAC;IAC1C,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,EAClB,EAAE,EACF,MAAM,EACN,OAAO,GAKR;QACC,MAAM,YAAY,GAAG,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC;QAEnD,OAAO,IAAI,CAAC,KAAK,CACf,SAAS,EACT,EAAE,EAAE,EAAE,OAAO,EAAE,YAAY,EAAE,EAC7B,MAAM,CACP,CAAC;IACJ,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,KAAK,CAChB,QAAgB,EAChB,IAA0B,EAC1B,MAAoB;QAEpB,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,QAAQ,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;QAE5C,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,GAAG,CAAC,QAAQ,EAAE,EAAE;YACtC,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,IAAI,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS;YACrD,MAAM;SACP,CAAC,CAAC;QAEH,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE;YACX,MAAM,IAAI,KAAK,CAAC,8BAA8B,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC;SAC7D;QAED,OAAO,GAAG,CAAC,IAAI,EAAE,CAAC;IACpB,CAAC;IAED,MAAM,CAAC,eAAe,CAAC,OAAoB;QACzC,QAAQ,OAAO,EAAE;YACf,KAAK,WAAW,CAAC,OAAO;gBACtB,OAAO,gBAAgB,CAAC,OAAO,CAAC;YAClC,KAAK,WAAW,CAAC,OAAO;gBACtB,OAAO,gBAAgB,CAAC,OAAO,CAAC;YAClC;gBACE,MAAM,IAAI,KAAK,CAAC,WAAW,OAAO,mBAAmB,CAAC,CAAC;SAC1D;IACH,CAAC;;AAGH,MAAM,UAAU,kBAAkB;IAChC,IAAI;QACF,OAAO,CACL,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,KAAK,CAAC,aAAa,CAAC;YAC1C,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,KAAK,CAAC,cAAc,CAAC,CAC5C,CAAC;KACH;IAAC,MAAM;QACN,OAAO,KAAK,CAAC;KACd;AACH,CAAC;AAED,IAAI,UAAU,GAAgB,IAAI,CAAC;AACnC,6CAA6C;AAC7C,MAAM,SAAS,GAAG,sCAAsC,CAAC;AAEzD;;;;;;;;;GASG;AACH,MAAM,CAAC,KAAK,UAAU,aAAa;IACjC,IAAI,OAAO,MAAM,KAAK,WAAW,EAAE;QACjC,OAAO,IAAI,CAAC;KACb;IAED,IAAI,UAAU,EAAE;QACd,OAAO,UAAU,CAAC;KACnB;IAED,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,MAAM,CAAC,MAAM,CAAC,CAAC;IAEtC,UAAU,GAAG,IAAI,IAAI,CAAC,SAAS,CAAC,CAAC;IAEjC,OAAO,UAAU,CAAC;AACpB,CAAC"}
|