@rozoai/intent-pay 0.1.21-beta.9 → 0.1.22-beta.1
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/README.md +2 -0
- package/build/components/{DaimoPayModal → RozoPayModal}/ConnectWithQRCode.d.ts +1 -1
- package/build/hooks/usePaymentState.d.ts +1 -1
- package/build/index.d.ts +6 -6
- package/build/package.json.js +3 -3
- package/build/payment/paymentEventContext.d.ts +2 -0
- package/build/provider/{DaimoPayProvider.d.ts → RozoPayProvider.d.ts} +1 -4
- package/build/provider/StellarContextProvider.d.ts +5 -8
- package/build/src/components/Common/ConnectorList/index.js +1 -1
- package/build/src/components/Common/Modal/index.js +2 -2
- package/build/src/components/Common/OrderHeader/index.js +1 -1
- package/build/src/components/Common/SelectAnotherMethodButton/index.js +1 -1
- package/build/src/components/Common/Tooltip/index.js +1 -1
- package/build/src/components/Pages/Confirmation/index.js +1 -1
- package/build/src/components/Pages/Connectors/index.js +1 -1
- package/build/src/components/Pages/Error/index.js +1 -1
- package/build/src/components/Pages/MobileConnectors/index.js +1 -1
- package/build/src/components/Pages/PayWithToken/index.js +6 -3
- package/build/src/components/Pages/PayWithToken/index.js.map +1 -1
- package/build/src/components/Pages/SelectDepositAddressChain/index.js +1 -1
- package/build/src/components/Pages/SelectDepositAddressChain/index.js.map +1 -1
- package/build/src/components/Pages/SelectMethod/index.js +10 -4
- package/build/src/components/Pages/SelectMethod/index.js.map +1 -1
- package/build/src/components/Pages/SelectWalletAmount/index.js +1 -1
- package/build/src/components/Pages/Solana/PayWithSolanaToken/index.js +1 -1
- package/build/src/components/Pages/Stellar/ConnectStellar/index.js +9 -5
- package/build/src/components/Pages/Stellar/ConnectStellar/index.js.map +1 -1
- package/build/src/components/Pages/Stellar/PayWithStellarToken/index.js +2 -3
- package/build/src/components/Pages/Stellar/PayWithStellarToken/index.js.map +1 -1
- package/build/src/components/Pages/WaitingDepositAddress/index.js +10 -8
- package/build/src/components/Pages/WaitingDepositAddress/index.js.map +1 -1
- package/build/src/components/{DaimoPayButton → RozoPayButton}/index.js +2 -2
- package/build/src/components/RozoPayButton/index.js.map +1 -0
- package/build/src/components/RozoPayButton/styles.js.map +1 -0
- package/build/src/components/RozoPayModal/ConnectUsing.js.map +1 -0
- package/build/src/components/RozoPayModal/ConnectWithInjector/index.js.map +1 -0
- package/build/src/components/RozoPayModal/ConnectWithInjector/styles.js.map +1 -0
- package/build/src/components/{DaimoPayModal → RozoPayModal}/ConnectWithQRCode.js +2 -2
- package/build/src/components/RozoPayModal/ConnectWithQRCode.js.map +1 -0
- package/build/src/components/{DaimoPayModal → RozoPayModal}/index.js +2 -2
- package/build/src/components/RozoPayModal/index.js.map +1 -0
- package/build/src/components/{DaimoPayThemeProvider/DaimoPayThemeProvider.js → RozoPayThemeProvider/RozoPayThemeProvider.js} +1 -1
- package/build/src/components/RozoPayThemeProvider/RozoPayThemeProvider.js.map +1 -0
- package/build/src/defaultConfig.js +1 -0
- package/build/src/defaultConfig.js.map +1 -1
- package/build/src/hooks/useContactSupport.js +1 -1
- package/build/src/hooks/usePaymentState.js +5 -5
- package/build/src/hooks/usePaymentState.js.map +1 -1
- package/build/src/hooks/{useDaimoPay.js → useRozoPay.js} +2 -1
- package/build/src/hooks/useRozoPay.js.map +1 -0
- package/build/src/hooks/{useDaimoPayStatus.js → useRozoPayStatus.js} +2 -2
- package/build/src/hooks/useRozoPayStatus.js.map +1 -0
- package/build/src/hooks/{useDaimoPayUI.js → useRozoPayUI.js} +1 -1
- package/build/src/hooks/useRozoPayUI.js.map +1 -0
- package/build/src/index.js +5 -5
- package/build/src/payment/paymentEventContext.js.map +1 -1
- package/build/src/provider/{DaimoPayProvider.js → RozoPayProvider.js} +26 -45
- package/build/src/provider/RozoPayProvider.js.map +1 -0
- package/build/src/provider/StellarContextProvider.js +70 -60
- package/build/src/provider/StellarContextProvider.js.map +1 -1
- package/build/src/utils/index.js +11 -1
- package/build/src/utils/index.js.map +1 -1
- package/build/src/utils/stellar/singleton-import.js +58 -36
- package/build/src/utils/stellar/singleton-import.js.map +1 -1
- package/build/src/utils/stellar/walletconnect.module.js +190 -165
- package/build/src/utils/stellar/walletconnect.module.js.map +1 -1
- package/build/src/utils/trpc.js +1 -1
- package/build/utils/stellar/index.d.ts +3 -2
- package/build/utils/stellar/singleton-import.d.ts +6 -12
- package/build/utils/stellar/walletconnect.module.d.ts +28 -28
- package/package.json +14 -13
- package/build/src/components/DaimoPayButton/index.js.map +0 -1
- package/build/src/components/DaimoPayButton/styles.js.map +0 -1
- package/build/src/components/DaimoPayModal/ConnectUsing.js.map +0 -1
- package/build/src/components/DaimoPayModal/ConnectWithInjector/index.js.map +0 -1
- package/build/src/components/DaimoPayModal/ConnectWithInjector/styles.js.map +0 -1
- package/build/src/components/DaimoPayModal/ConnectWithQRCode.js.map +0 -1
- package/build/src/components/DaimoPayModal/index.js.map +0 -1
- package/build/src/components/DaimoPayThemeProvider/DaimoPayThemeProvider.js.map +0 -1
- package/build/src/hooks/useDaimoPay.js.map +0 -1
- package/build/src/hooks/useDaimoPayStatus.js.map +0 -1
- package/build/src/hooks/useDaimoPayUI.js.map +0 -1
- package/build/src/provider/DaimoPayProvider.js.map +0 -1
- package/build/src/utils/stellar/types.js +0 -67
- package/build/src/utils/stellar/types.js.map +0 -1
- package/src/index.ts +0 -52
- /package/build/components/{DaimoPayButton → RozoPayButton}/index.d.ts +0 -0
- /package/build/components/{DaimoPayButton → RozoPayButton}/styles.d.ts +0 -0
- /package/build/components/{DaimoPayButton → RozoPayButton}/types.d.ts +0 -0
- /package/build/components/{DaimoPayModal → RozoPayModal}/ConnectUsing.d.ts +0 -0
- /package/build/components/{DaimoPayModal → RozoPayModal}/ConnectWithInjector/index.d.ts +0 -0
- /package/build/components/{DaimoPayModal → RozoPayModal}/ConnectWithInjector/styles.d.ts +0 -0
- /package/build/components/{DaimoPayModal → RozoPayModal}/index.d.ts +0 -0
- /package/build/components/{DaimoPayThemeProvider/DaimoPayThemeProvider.d.ts → RozoPayThemeProvider/RozoPayThemeProvider.d.ts} +0 -0
- /package/build/hooks/{useDaimoPay.d.ts → useRozoPay.d.ts} +0 -0
- /package/build/hooks/{useDaimoPayStatus.d.ts → useRozoPayStatus.d.ts} +0 -0
- /package/build/hooks/{useDaimoPayUI.d.ts → useRozoPayUI.d.ts} +0 -0
- /package/build/src/components/{DaimoPayButton → RozoPayButton}/styles.js +0 -0
- /package/build/src/components/{DaimoPayModal → RozoPayModal}/ConnectUsing.js +0 -0
- /package/build/src/components/{DaimoPayModal → RozoPayModal}/ConnectWithInjector/index.js +0 -0
- /package/build/src/components/{DaimoPayModal → RozoPayModal}/ConnectWithInjector/styles.js +0 -0
|
@@ -1,39 +1,61 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
1
|
+
import '@reown/appkit/networks';
|
|
2
|
+
import { WalletConnectModule } from './walletconnect.module.js';
|
|
3
|
+
|
|
4
|
+
let initialized = false;
|
|
5
|
+
let initPromise;
|
|
6
|
+
let isConsumerInit = false;
|
|
7
|
+
async function getStellarKitInstance(config) {
|
|
8
|
+
if (initialized) {
|
|
9
|
+
config?.log?.("[Rozo] StellarWalletsKit already initialized");
|
|
10
|
+
return { isConsumerInit };
|
|
11
|
+
}
|
|
12
|
+
if (initPromise) {
|
|
13
|
+
config?.log?.("[Rozo] Waiting for StellarWalletsKit initialization...");
|
|
14
|
+
await initPromise;
|
|
15
|
+
return { isConsumerInit };
|
|
16
|
+
}
|
|
17
|
+
initPromise = (async () => {
|
|
18
|
+
try {
|
|
19
|
+
const { StellarWalletsKit } = await import('@creit.tech/stellar-wallets-kit/sdk');
|
|
20
|
+
const { Networks } = await import('@creit.tech/stellar-wallets-kit/types');
|
|
21
|
+
const { defaultModules } = await import('@creit.tech/stellar-wallets-kit/modules/utils');
|
|
22
|
+
const { activeModules } = await import('@creit.tech/stellar-wallets-kit/state');
|
|
23
|
+
// Consumer already called StellarWalletsKit.init() — activeModules non-empty
|
|
24
|
+
const consumerAlreadyInit = activeModules && activeModules.value.length > 0;
|
|
25
|
+
if (consumerAlreadyInit) {
|
|
26
|
+
config?.log?.("[Rozo] StellarWalletsKit already initialized by consumer, reusing");
|
|
27
|
+
isConsumerInit = true;
|
|
28
|
+
}
|
|
29
|
+
else {
|
|
30
|
+
StellarWalletsKit.init({
|
|
31
|
+
network: config?.network || Networks.PUBLIC,
|
|
32
|
+
selectedWalletId: config?.selectedWalletId || "freighter",
|
|
33
|
+
modules: config?.modules || [
|
|
34
|
+
...(defaultModules ? defaultModules() : []),
|
|
35
|
+
new WalletConnectModule({
|
|
36
|
+
url: "https://rozo.ai",
|
|
37
|
+
projectId: "7440dd8acf85933ffcc775ec6675d4a9",
|
|
38
|
+
description: `Visa Layer for Stablecoins`,
|
|
39
|
+
name: "Rozo",
|
|
40
|
+
icons: ["https://rozo.ai/rozo-logo.png"],
|
|
41
|
+
network: Networks.PUBLIC,
|
|
42
|
+
}),
|
|
43
|
+
],
|
|
44
|
+
});
|
|
45
|
+
isConsumerInit = false;
|
|
46
|
+
config?.log?.("[Rozo] StellarWalletsKit initialized successfully");
|
|
47
|
+
}
|
|
48
|
+
initialized = true;
|
|
49
|
+
}
|
|
50
|
+
catch (error) {
|
|
51
|
+
initPromise = undefined;
|
|
52
|
+
config?.log?.(`[Rozo] Failed to initialize StellarWalletsKit: ${error}`);
|
|
53
|
+
throw error;
|
|
54
|
+
}
|
|
55
|
+
})();
|
|
56
|
+
await initPromise;
|
|
57
|
+
return { isConsumerInit };
|
|
36
58
|
}
|
|
37
59
|
|
|
38
|
-
export {
|
|
60
|
+
export { getStellarKitInstance };
|
|
39
61
|
//# sourceMappingURL=singleton-import.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"singleton-import.js","sources":["../../../../src/utils/stellar/singleton-import.ts"],"sourcesContent":[null],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"singleton-import.js","sources":["../../../../src/utils/stellar/singleton-import.ts"],"sourcesContent":[null],"names":[],"mappings":";;;AAEA,IAAI,WAAW,GAAG,KAAK,CAAC;AACxB,IAAI,WAAsC,CAAC;AAE3C,IAAI,cAAc,GAAG,KAAK,CAAC;AAEpB,eAAe,qBAAqB,CAAC,MAK3C,EAAA;IACC,IAAI,WAAW,EAAE;AACf,QAAA,MAAM,EAAE,GAAG,GAAG,8CAA8C,CAAC,CAAC;QAC9D,OAAO,EAAE,cAAc,EAAE,CAAC;KAC3B;IAED,IAAI,WAAW,EAAE;AACf,QAAA,MAAM,EAAE,GAAG,GAAG,wDAAwD,CAAC,CAAC;AACxE,QAAA,MAAM,WAAW,CAAC;QAClB,OAAO,EAAE,cAAc,EAAE,CAAC;KAC3B;AAED,IAAA,WAAW,GAAG,CAAC,YAAW;AACxB,QAAA,IAAI;YACF,MAAM,EAAE,iBAAiB,EAAE,GAAG,MAAM,OAClC,qCAAqC,CACtC,CAAC;YACF,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,OACzB,uCAAuC,CACxC,CAAC;YACF,MAAM,EAAE,cAAc,EAAE,GAAG,MAAM,OAC/B,+CAA+C,CAChD,CAAC;YACF,MAAM,EAAE,aAAa,EAAE,GAAG,MAAM,OAC9B,uCAAuC,CACxC,CAAC;;YAGF,MAAM,mBAAmB,GACvB,aAAa,IAAI,aAAa,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC;YAElD,IAAI,mBAAmB,EAAE;AACvB,gBAAA,MAAM,EAAE,GAAG,GACT,mEAAmE,CACpE,CAAC;gBACF,cAAc,GAAG,IAAI,CAAC;aACvB;iBAAM;gBACL,iBAAiB,CAAC,IAAI,CAAC;AACrB,oBAAA,OAAO,EAAG,MAAM,EAAE,OAAe,IAAI,QAAQ,CAAC,MAAM;AACpD,oBAAA,gBAAgB,EAAE,MAAM,EAAE,gBAAgB,IAAI,WAAW;AACzD,oBAAA,OAAO,EAAE,MAAM,EAAE,OAAO,IAAI;wBAC1B,IAAI,cAAc,GAAG,cAAc,EAAE,GAAG,EAAE,CAAC;AAC3C,wBAAA,IAAI,mBAAmB,CAAC;AACtB,4BAAA,GAAG,EAAE,iBAAiB;AACtB,4BAAA,SAAS,EAAE,kCAAkC;AAC7C,4BAAA,WAAW,EAAE,CAA4B,0BAAA,CAAA;AACzC,4BAAA,IAAI,EAAE,MAAM;4BACZ,KAAK,EAAE,CAAC,+BAA+B,CAAC;4BACxC,OAAO,EAAE,QAAQ,CAAC,MAAM;yBACzB,CAAC;AACH,qBAAA;AACF,iBAAA,CAAC,CAAC;gBACH,cAAc,GAAG,KAAK,CAAC;AACvB,gBAAA,MAAM,EAAE,GAAG,GAAG,mDAAmD,CAAC,CAAC;aACpE;YAED,WAAW,GAAG,IAAI,CAAC;SACpB;QAAC,OAAO,KAAK,EAAE;YACd,WAAW,GAAG,SAAS,CAAC;YACxB,MAAM,EAAE,GAAG,GAAG,kDAAkD,KAAK,CAAA,CAAE,CAAC,CAAC;AACzE,YAAA,MAAM,KAAK,CAAC;SACb;KACF,GAAG,CAAC;AAEL,IAAA,MAAM,WAAW,CAAC;IAClB,OAAO,EAAE,cAAc,EAAE,CAAC;AAC5B;;;;"}
|
|
@@ -1,124 +1,164 @@
|
|
|
1
1
|
import { createAppKit } from '@reown/appkit';
|
|
2
2
|
import { SignClient } from '@walletconnect/sign-client';
|
|
3
3
|
import { parseError } from '../index.js';
|
|
4
|
-
import {
|
|
4
|
+
import { mainnet } from '@reown/appkit/networks';
|
|
5
5
|
|
|
6
|
-
const
|
|
7
|
-
const accounts = session.namespaces.stellar.accounts.map((account) => ({
|
|
8
|
-
network: account.split(":")[1],
|
|
9
|
-
publicKey: account.split(":")[2],
|
|
10
|
-
}));
|
|
11
|
-
return {
|
|
12
|
-
id: session.topic,
|
|
13
|
-
name: session.peer.metadata.name,
|
|
14
|
-
description: session.peer.metadata.description,
|
|
15
|
-
url: session.peer.metadata.url,
|
|
16
|
-
icons: session.peer.metadata.icons[0],
|
|
17
|
-
accounts,
|
|
18
|
-
};
|
|
19
|
-
};
|
|
6
|
+
const WALLET_CONNECT_ID = "wallet_connect";
|
|
20
7
|
const PUBLIC_NETWORK_NAME = "Public Global Stellar Network ; September 2015";
|
|
8
|
+
/**
|
|
9
|
+
* In-memory store for WalletConnect session paths (publicKey → topic mappings).
|
|
10
|
+
* Replaces the previous `activeSession` string so signTransaction can find the
|
|
11
|
+
* correct session by the signer's public key rather than relying on a single
|
|
12
|
+
* stored topic that can go stale.
|
|
13
|
+
*/
|
|
14
|
+
let wcSessionPaths = [];
|
|
21
15
|
class WalletConnectModule {
|
|
22
16
|
wcParams;
|
|
23
17
|
moduleType = "BRIDGE_WALLET";
|
|
24
|
-
productId =
|
|
25
|
-
productName = "
|
|
18
|
+
productId = WALLET_CONNECT_ID;
|
|
19
|
+
productName = "WalletConnect";
|
|
26
20
|
productUrl = "https://walletconnect.com/";
|
|
27
21
|
productIcon = "https://stellar.creit.tech/wallet-icons/walletconnect.png";
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
22
|
+
modal;
|
|
23
|
+
signClient;
|
|
24
|
+
constructor(wcParams) {
|
|
25
|
+
this.wcParams = wcParams;
|
|
26
|
+
// Initialize SignClient first — this creates exactly ONE WalletConnect Core.
|
|
27
|
+
// createAppKit() is called after so it reuses the same Core instance via
|
|
28
|
+
// manualWCControl, avoiding the "WalletConnect Core is already initialized"
|
|
29
|
+
// double-init that caused key-store mismatches and relay decryption failures.
|
|
30
|
+
SignClient.init({
|
|
31
|
+
projectId: wcParams.projectId,
|
|
32
|
+
metadata: {
|
|
33
|
+
name: wcParams.name,
|
|
34
|
+
url: wcParams.url,
|
|
35
|
+
description: wcParams.description,
|
|
36
|
+
icons: wcParams.icons,
|
|
37
|
+
},
|
|
38
|
+
...(wcParams.signClientOptions || {}),
|
|
39
|
+
})
|
|
40
|
+
.then((client) => {
|
|
41
|
+
// Forward the WalletConnect URI to the AppKit modal automatically.
|
|
42
|
+
client.on("display_uri", (uri) => {
|
|
43
|
+
this.modal.open({ uri });
|
|
44
|
+
});
|
|
45
|
+
// Clean up session paths when a session is deleted from the wallet side.
|
|
46
|
+
client.on("session_delete", (ev) => {
|
|
47
|
+
wcSessionPaths = wcSessionPaths.filter((p) => p.topic !== ev.topic);
|
|
48
|
+
});
|
|
49
|
+
this.signClient = client;
|
|
50
|
+
if (wcParams.onSessionDeleted) {
|
|
51
|
+
client.on("session_delete", (ev) => {
|
|
52
|
+
wcParams.onSessionDeleted(ev.topic);
|
|
53
|
+
});
|
|
54
|
+
}
|
|
55
|
+
})
|
|
56
|
+
.catch(console.error);
|
|
57
|
+
// AppKit is used only for the QR-code modal UI. manualWCControl: true tells
|
|
58
|
+
// it not to create its own WalletConnect Core — it reuses the one SignClient
|
|
59
|
+
// already created above.
|
|
60
|
+
this.modal = createAppKit({
|
|
61
|
+
projectId: wcParams.projectId,
|
|
62
|
+
manualWCControl: true,
|
|
63
|
+
enableReconnect: true,
|
|
64
|
+
// mainnet is required by AppKit types; Stellar sessions are handled
|
|
65
|
+
// entirely through the SignClient, not through AppKit adapters.
|
|
66
|
+
networks: [mainnet],
|
|
67
|
+
metadata: {
|
|
68
|
+
name: wcParams.name,
|
|
69
|
+
url: wcParams.url,
|
|
70
|
+
description: wcParams.description,
|
|
71
|
+
icons: wcParams.icons,
|
|
72
|
+
},
|
|
73
|
+
featuredWalletIds: [
|
|
74
|
+
// Freighter
|
|
75
|
+
"997a355c8f682468706a76cff1b004a7115f505fb962dac54b6e9b442dd1c380",
|
|
76
|
+
// Lobstr
|
|
77
|
+
"76a3d548a08cf402f5c7d021f24fd2881d767084b387a5325df88bc3d4b6f21b",
|
|
78
|
+
],
|
|
79
|
+
...(wcParams.appKitOptions || {}),
|
|
80
|
+
});
|
|
81
|
+
}
|
|
31
82
|
async isAvailable() {
|
|
32
|
-
return
|
|
83
|
+
return !!this.signClient && !!this.modal;
|
|
33
84
|
}
|
|
34
85
|
async isPlatformWrapper() {
|
|
35
86
|
const options = [
|
|
36
|
-
{
|
|
37
|
-
provider: "freighter",
|
|
38
|
-
platform: "mobile",
|
|
39
|
-
},
|
|
87
|
+
{ provider: "freighter", platform: "mobile" },
|
|
40
88
|
];
|
|
41
|
-
return !!options.find(({ provider, platform }) =>
|
|
42
|
-
|
|
43
|
-
window.stellar?.platform === platform);
|
|
44
|
-
});
|
|
89
|
+
return !!options.find(({ provider, platform }) => window.stellar?.provider === provider &&
|
|
90
|
+
window.stellar?.platform === platform);
|
|
45
91
|
}
|
|
46
|
-
|
|
47
|
-
this.
|
|
48
|
-
|
|
49
|
-
this.setSession(wcParams.sessionId);
|
|
50
|
-
}
|
|
51
|
-
if (wcParams.client && wcParams.modal) {
|
|
52
|
-
this.client = wcParams.client;
|
|
53
|
-
this.qrModal = wcParams.modal;
|
|
54
|
-
}
|
|
55
|
-
else {
|
|
56
|
-
SignClient.init({
|
|
57
|
-
projectId: wcParams.projectId,
|
|
58
|
-
metadata: {
|
|
59
|
-
name: wcParams.name,
|
|
60
|
-
url: wcParams.url,
|
|
61
|
-
description: wcParams.description,
|
|
62
|
-
icons: wcParams.icons,
|
|
63
|
-
},
|
|
64
|
-
})
|
|
65
|
-
.then((client) => {
|
|
66
|
-
this.client = client;
|
|
67
|
-
// Create Stellar network configuration
|
|
68
|
-
const stellarNetwork = defineStellarChain(wcParams.network === PUBLIC_NETWORK_NAME
|
|
69
|
-
? STELLAR_NETWORKS.pubnet
|
|
70
|
-
: STELLAR_NETWORKS.testnet);
|
|
71
|
-
this.qrModal = createAppKit({
|
|
72
|
-
projectId: wcParams.projectId,
|
|
73
|
-
networks: [stellarNetwork],
|
|
74
|
-
manualWCControl: true,
|
|
75
|
-
});
|
|
76
|
-
if (wcParams.onSessionDeleted) {
|
|
77
|
-
this.onSessionDeleted(wcParams.onSessionDeleted);
|
|
78
|
-
}
|
|
79
|
-
})
|
|
80
|
-
.catch(console.error);
|
|
92
|
+
async runChecks() {
|
|
93
|
+
if (!(await this.isAvailable())) {
|
|
94
|
+
throw parseError(new Error("WalletConnect module has not been started yet."));
|
|
81
95
|
}
|
|
82
96
|
}
|
|
83
97
|
async getAddress() {
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
98
|
+
await this.runChecks();
|
|
99
|
+
const { uri, approval } = await this.signClient.connect({
|
|
100
|
+
requiredNamespaces: {
|
|
101
|
+
stellar: {
|
|
102
|
+
methods: [WalletConnectAllowedMethods.SIGN],
|
|
103
|
+
chains: wcParams_allowedChains(this.wcParams),
|
|
104
|
+
events: [],
|
|
105
|
+
},
|
|
106
|
+
},
|
|
107
|
+
optionalNamespaces: {
|
|
108
|
+
stellar: {
|
|
109
|
+
methods: [WalletConnectAllowedMethods.SIGN_AND_SUBMIT],
|
|
110
|
+
chains: wcParams_allowedChains(this.wcParams),
|
|
111
|
+
events: [],
|
|
112
|
+
},
|
|
113
|
+
},
|
|
96
114
|
});
|
|
115
|
+
if (uri) {
|
|
116
|
+
this.modal.open({ uri });
|
|
117
|
+
}
|
|
118
|
+
try {
|
|
119
|
+
const session = await approval();
|
|
120
|
+
const accounts = session.namespaces.stellar.accounts.map((account) => account.split(":")[2]);
|
|
121
|
+
// Store publicKey → topic mappings for use in signTransaction.
|
|
122
|
+
wcSessionPaths = [
|
|
123
|
+
...wcSessionPaths,
|
|
124
|
+
...accounts.map((publicKey) => ({
|
|
125
|
+
publicKey,
|
|
126
|
+
topic: session.topic,
|
|
127
|
+
})),
|
|
128
|
+
];
|
|
129
|
+
this.modal.close();
|
|
130
|
+
return { address: accounts[0] };
|
|
131
|
+
}
|
|
132
|
+
catch (e) {
|
|
133
|
+
this.modal.close();
|
|
134
|
+
throw parseError(e);
|
|
135
|
+
}
|
|
97
136
|
}
|
|
98
137
|
async signTransaction(xdr, opts) {
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
138
|
+
await this.runChecks();
|
|
139
|
+
// Find the session for the requested signer address.
|
|
140
|
+
// Falls back to the first available session if no address is specified.
|
|
141
|
+
const targetPath = wcSessionPaths.find((p) => p.publicKey === opts?.address) ??
|
|
142
|
+
wcSessionPaths[0];
|
|
143
|
+
if (!targetPath) {
|
|
144
|
+
throw parseError(new Error("No WalletConnect session found or it expired for the selected address."));
|
|
145
|
+
}
|
|
146
|
+
const chainId = opts?.networkPassphrase === PUBLIC_NETWORK_NAME
|
|
147
|
+
? WalletConnectTargetChain.PUBLIC
|
|
148
|
+
: WalletConnectTargetChain.TESTNET;
|
|
149
|
+
const result = await this.signClient
|
|
150
|
+
.request({
|
|
151
|
+
topic: targetPath.topic,
|
|
152
|
+
chainId,
|
|
153
|
+
request: {
|
|
154
|
+
method: WalletConnectAllowedMethods.SIGN,
|
|
155
|
+
params: { xdr },
|
|
156
|
+
},
|
|
118
157
|
})
|
|
119
158
|
.catch((e) => {
|
|
120
159
|
throw parseError(e);
|
|
121
160
|
});
|
|
161
|
+
return { signedTxXdr: result.signedXDR };
|
|
122
162
|
}
|
|
123
163
|
async signAuthEntry() {
|
|
124
164
|
throw {
|
|
@@ -138,102 +178,87 @@ class WalletConnectModule {
|
|
|
138
178
|
message: 'WalletConnect does not support the "getNetwork" function',
|
|
139
179
|
};
|
|
140
180
|
}
|
|
141
|
-
/**
|
|
142
|
-
* Allows manually setting the current active session to be used in the kit when doing WalletConnect requests
|
|
143
|
-
*
|
|
144
|
-
* @param sessionId The session ID is a placeholder for the session "topic", term used in WalletConnect
|
|
145
|
-
* */
|
|
146
181
|
setSession(sessionId) {
|
|
147
|
-
|
|
182
|
+
// Legacy compat: add a synthetic path entry so existing callers that
|
|
183
|
+
// pass a sessionId still work. The publicKey is unknown here so we
|
|
184
|
+
// store an empty string; signTransaction will still match via topic
|
|
185
|
+
// when no address is provided.
|
|
186
|
+
if (!wcSessionPaths.find((p) => p.topic === sessionId)) {
|
|
187
|
+
wcSessionPaths.push({ publicKey: "", topic: sessionId });
|
|
188
|
+
}
|
|
148
189
|
}
|
|
149
190
|
onSessionDeleted(cb) {
|
|
150
|
-
if (!this.
|
|
191
|
+
if (!this.signClient) {
|
|
151
192
|
throw new Error("WalletConnect is not running yet");
|
|
152
193
|
}
|
|
153
|
-
this.
|
|
194
|
+
this.signClient.on("session_delete", (data) => {
|
|
154
195
|
cb(data.topic);
|
|
155
196
|
});
|
|
156
197
|
}
|
|
198
|
+
/** @deprecated Use getAddress() which handles connection automatically. */
|
|
157
199
|
async connectWalletConnect() {
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
: WalletConnectTargetChain.TESTNET,
|
|
170
|
-
],
|
|
171
|
-
events: [],
|
|
172
|
-
},
|
|
173
|
-
},
|
|
174
|
-
});
|
|
175
|
-
const session = await new Promise((resolve, reject) => {
|
|
176
|
-
// Open QRCode modal if a URI was returned (i.e. we're not connecting an existing pairing).
|
|
177
|
-
if (uri) {
|
|
178
|
-
this.qrModal.open({ uri });
|
|
179
|
-
}
|
|
180
|
-
// Await session approval from the wallet.
|
|
181
|
-
approval()
|
|
182
|
-
.then((session) => {
|
|
183
|
-
this.qrModal.close();
|
|
184
|
-
resolve(session);
|
|
185
|
-
})
|
|
186
|
-
.catch((error) => {
|
|
187
|
-
this.qrModal.close();
|
|
188
|
-
reject(error);
|
|
189
|
-
});
|
|
190
|
-
}).then(parseWalletConnectSession);
|
|
191
|
-
this.setSession(session.id);
|
|
192
|
-
return session;
|
|
193
|
-
}
|
|
194
|
-
catch (e) {
|
|
195
|
-
this.qrModal.close();
|
|
196
|
-
console.error(e);
|
|
197
|
-
throw new Error("There was an error when trying to connect");
|
|
198
|
-
}
|
|
200
|
+
return this.getAddress().then((r) => {
|
|
201
|
+
const path = wcSessionPaths.find((p) => p.publicKey === r.address);
|
|
202
|
+
return {
|
|
203
|
+
id: path?.topic ?? "",
|
|
204
|
+
name: this.wcParams.name,
|
|
205
|
+
description: this.wcParams.description,
|
|
206
|
+
url: this.wcParams.url,
|
|
207
|
+
icons: this.wcParams.icons[0] ?? "",
|
|
208
|
+
accounts: [{ network: "pubnet", publicKey: r.address }],
|
|
209
|
+
};
|
|
210
|
+
});
|
|
199
211
|
}
|
|
200
212
|
async disconnect() {
|
|
201
|
-
if (!this.
|
|
213
|
+
if (!this.signClient) {
|
|
202
214
|
throw new Error("WalletConnect is not running yet");
|
|
203
215
|
}
|
|
204
|
-
const sessions =
|
|
216
|
+
const sessions = this.signClient.session.values;
|
|
205
217
|
for (const session of sessions) {
|
|
206
|
-
await this.closeSession(session.
|
|
218
|
+
await this.closeSession(session.topic);
|
|
207
219
|
}
|
|
208
220
|
}
|
|
209
221
|
async closeSession(sessionId, reason) {
|
|
210
|
-
if (!this.
|
|
222
|
+
if (!this.signClient) {
|
|
211
223
|
throw new Error("WalletConnect is not running yet");
|
|
212
224
|
}
|
|
213
|
-
|
|
225
|
+
wcSessionPaths = wcSessionPaths.filter((p) => p.topic !== sessionId);
|
|
226
|
+
await this.signClient.disconnect({
|
|
214
227
|
topic: sessionId,
|
|
215
|
-
reason: {
|
|
216
|
-
message: reason || "Session closed",
|
|
217
|
-
code: -1,
|
|
218
|
-
},
|
|
228
|
+
reason: { message: reason ?? "Session closed", code: -1 },
|
|
219
229
|
});
|
|
220
230
|
}
|
|
221
231
|
async getSessions() {
|
|
222
|
-
if (!this.
|
|
232
|
+
if (!this.signClient) {
|
|
223
233
|
throw new Error("WalletConnect is not running yet");
|
|
224
234
|
}
|
|
225
|
-
return this.
|
|
226
|
-
}
|
|
227
|
-
async getTargetSession(params) {
|
|
228
|
-
const activeSessions = await this.getSessions();
|
|
229
|
-
let targetSession = activeSessions.find((session) => session.id === this.activeSession ||
|
|
230
|
-
!!session.accounts.find((a) => a.publicKey === params?.publicKey));
|
|
231
|
-
if (!targetSession) {
|
|
232
|
-
targetSession = await this.connectWalletConnect();
|
|
233
|
-
}
|
|
234
|
-
return targetSession;
|
|
235
|
+
return this.signClient.session.values.map(parseWalletConnectSession);
|
|
235
236
|
}
|
|
236
237
|
}
|
|
238
|
+
// ---------------------------------------------------------------------------
|
|
239
|
+
// Helpers
|
|
240
|
+
// ---------------------------------------------------------------------------
|
|
241
|
+
function wcParams_allowedChains(params) {
|
|
242
|
+
if (params.allowedChains)
|
|
243
|
+
return params.allowedChains;
|
|
244
|
+
return params.network === PUBLIC_NETWORK_NAME
|
|
245
|
+
? [WalletConnectTargetChain.PUBLIC]
|
|
246
|
+
: [WalletConnectTargetChain.TESTNET];
|
|
247
|
+
}
|
|
248
|
+
const parseWalletConnectSession = (session) => {
|
|
249
|
+
const accounts = session.namespaces.stellar.accounts.map((account) => ({
|
|
250
|
+
network: account.split(":")[1],
|
|
251
|
+
publicKey: account.split(":")[2],
|
|
252
|
+
}));
|
|
253
|
+
return {
|
|
254
|
+
id: session.topic,
|
|
255
|
+
name: session.peer.metadata.name,
|
|
256
|
+
description: session.peer.metadata.description,
|
|
257
|
+
url: session.peer.metadata.url,
|
|
258
|
+
icons: session.peer.metadata.icons[0],
|
|
259
|
+
accounts,
|
|
260
|
+
};
|
|
261
|
+
};
|
|
237
262
|
var WalletConnectTargetChain;
|
|
238
263
|
(function (WalletConnectTargetChain) {
|
|
239
264
|
WalletConnectTargetChain["PUBLIC"] = "stellar:pubnet";
|
|
@@ -245,5 +270,5 @@ var WalletConnectAllowedMethods;
|
|
|
245
270
|
WalletConnectAllowedMethods["SIGN_AND_SUBMIT"] = "stellar_signAndSubmitXDR";
|
|
246
271
|
})(WalletConnectAllowedMethods || (WalletConnectAllowedMethods = {}));
|
|
247
272
|
|
|
248
|
-
export { WalletConnectAllowedMethods, WalletConnectModule, WalletConnectTargetChain };
|
|
273
|
+
export { WALLET_CONNECT_ID, WalletConnectAllowedMethods, WalletConnectModule, WalletConnectTargetChain };
|
|
249
274
|
//# sourceMappingURL=walletconnect.module.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"walletconnect.module.js","sources":["../../../../src/utils/stellar/walletconnect.module.ts"],"sourcesContent":[null],"names":[],"mappings":";;;;;
|
|
1
|
+
{"version":3,"file":"walletconnect.module.js","sources":["../../../../src/utils/stellar/walletconnect.module.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
|
package/build/src/utils/trpc.js
CHANGED
|
@@ -6,7 +6,7 @@ function createTrpcClient(apiUrl, sessionId) {
|
|
|
6
6
|
httpBatchLink({
|
|
7
7
|
url: apiUrl,
|
|
8
8
|
headers: {
|
|
9
|
-
// TODO: The version here must use the latest version of @
|
|
9
|
+
// TODO: The version here must use the latest version of @rozoai/intent-pay, so that the API can function for the payment confirmation flow.
|
|
10
10
|
"x-pay-version": "1.14.4",
|
|
11
11
|
"x-session-id": sessionId,
|
|
12
12
|
},
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
export * from "./types";
|
|
2
|
+
export * from "./walletconnect.module";
|
|
2
3
|
export { defineStellarChain, isStellarChain, STELLAR_NETWORKS } from "./types";
|
|
3
4
|
export type { StellarChainConfig } from "./types";
|
|
4
|
-
export { WalletConnectModule, WalletConnectTargetChain, } from "
|
|
5
|
-
export type {
|
|
5
|
+
export { WalletConnectAllowedMethods, WalletConnectModule, WalletConnectTargetChain, } from "./walletconnect.module";
|
|
6
|
+
export type { IParsedWalletConnectSession, IWalletConnectConstructorParams, } from "./walletconnect.module";
|
|
@@ -1,15 +1,9 @@
|
|
|
1
|
-
|
|
2
|
-
* Initialises StellarWalletsKit (v2 static class) exactly once.
|
|
3
|
-
*
|
|
4
|
-
* In v2 the kit is a static singleton by design — there is no instance to
|
|
5
|
-
* store. Calling StellarWalletsKit.init() a second time is a no-op (the kit
|
|
6
|
-
* guards against double-init internally), so this helper is safe to call from
|
|
7
|
-
* multiple places.
|
|
8
|
-
*/
|
|
9
|
-
export declare function initStellarKit(config?: {
|
|
1
|
+
export declare function getStellarKitInstance(config?: {
|
|
10
2
|
log?: (msg: string) => void;
|
|
11
|
-
|
|
12
|
-
network?: any;
|
|
3
|
+
network?: string;
|
|
13
4
|
selectedWalletId?: string;
|
|
14
5
|
modules?: any[];
|
|
15
|
-
}): Promise<
|
|
6
|
+
}): Promise<{
|
|
7
|
+
isConsumerInit: boolean;
|
|
8
|
+
}>;
|
|
9
|
+
export declare function resetStellarKitInstance(): void;
|