@rozoai/intent-pay 0.1.38-beta.1 → 0.1.38-beta.11
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/build/components/Common/TokenChainLogo/index.d.ts +1 -7
- package/build/components/Spinners/TokenLogoSpinner/index.d.ts +1 -6
- package/build/hooks/useDepositAddressOptions.d.ts +2 -3
- package/build/hooks/usePaymentState.d.ts +5 -11
- package/build/hooks/useRozoPay.d.ts +4 -4
- package/build/hooks/useSolanaPaymentOptions.d.ts +1 -1
- package/build/hooks/useStellarPaymentOptions.d.ts +1 -1
- package/build/hooks/useWalletPaymentOptions.d.ts +7 -12
- package/build/package.json.js +2 -2
- package/build/payment/createPaymentPayload.d.ts +3 -3
- package/build/payment/paymentFsm.d.ts +2 -25
- package/build/provider/PayContext.d.ts +5 -3
- package/build/provider/RozoPayProvider.d.ts +91 -12
- package/build/provider/StellarContextProvider.d.ts +8 -0
- package/build/src/components/Common/AmountInput/index.js +2 -2
- package/build/src/components/Common/AmountInput/index.js.map +1 -1
- package/build/src/components/Common/ConnectorList/index.js +4 -2
- package/build/src/components/Common/ConnectorList/index.js.map +1 -1
- package/build/src/components/Common/OptionsList/styles.js +5 -5
- package/build/src/components/Common/OptionsList/styles.js.map +1 -1
- package/build/src/components/Common/OrderHeader/index.js +32 -16
- package/build/src/components/Common/OrderHeader/index.js.map +1 -1
- package/build/src/components/Common/TokenChainLogo/index.js +3 -26
- package/build/src/components/Common/TokenChainLogo/index.js.map +1 -1
- package/build/src/components/Pages/MobileConnectors/index.js +10 -4
- package/build/src/components/Pages/MobileConnectors/index.js.map +1 -1
- package/build/src/components/Pages/PayWithToken/index.js +4 -15
- package/build/src/components/Pages/PayWithToken/index.js.map +1 -1
- package/build/src/components/Pages/SelectDepositAddressChain/index.js +17 -6
- package/build/src/components/Pages/SelectDepositAddressChain/index.js.map +1 -1
- package/build/src/components/Pages/SelectMethod/index.js +6 -2
- package/build/src/components/Pages/SelectMethod/index.js.map +1 -1
- package/build/src/components/Pages/Solana/PayWithSolanaToken/index.js +26 -64
- package/build/src/components/Pages/Solana/PayWithSolanaToken/index.js.map +1 -1
- package/build/src/components/Pages/Stellar/ConnectStellar/index.js +114 -67
- package/build/src/components/Pages/Stellar/ConnectStellar/index.js.map +1 -1
- package/build/src/components/Pages/Stellar/ConnectorStellar/index.js +6 -1
- package/build/src/components/Pages/Stellar/ConnectorStellar/index.js.map +1 -1
- package/build/src/components/Pages/Stellar/PayWithStellarToken/index.js +46 -40
- package/build/src/components/Pages/Stellar/PayWithStellarToken/index.js.map +1 -1
- package/build/src/components/Pages/WaitingDepositAddress/index.js +33 -110
- package/build/src/components/Pages/WaitingDepositAddress/index.js.map +1 -1
- package/build/src/components/RozoPayButton/index.js +45 -18
- package/build/src/components/RozoPayButton/index.js.map +1 -1
- package/build/src/components/RozoPayModal/index.js +67 -11
- package/build/src/components/RozoPayModal/index.js.map +1 -1
- package/build/src/components/Spinners/TokenLogoSpinner/index.js +2 -5
- package/build/src/components/Spinners/TokenLogoSpinner/index.js.map +1 -1
- package/build/src/defaultConnectors.js +5 -2
- package/build/src/defaultConnectors.js.map +1 -1
- package/build/src/hooks/useAutoConnectGate.js +7 -3
- package/build/src/hooks/useAutoConnectGate.js.map +1 -1
- package/build/src/hooks/useDepositAddressOptions.js +9 -19
- package/build/src/hooks/useDepositAddressOptions.js.map +1 -1
- package/build/src/hooks/useExternalPaymentOptions.js +1 -1
- package/build/src/hooks/usePaymentState.js +72 -193
- package/build/src/hooks/usePaymentState.js.map +1 -1
- package/build/src/hooks/useRozoPay.js +2 -4
- package/build/src/hooks/useRozoPay.js.map +1 -1
- package/build/src/hooks/useSolanaPaymentOptions.js +13 -45
- package/build/src/hooks/useSolanaPaymentOptions.js.map +1 -1
- package/build/src/hooks/useStellarPaymentOptions.js +11 -40
- package/build/src/hooks/useStellarPaymentOptions.js.map +1 -1
- package/build/src/hooks/useTokenOptions.js +3 -4
- package/build/src/hooks/useTokenOptions.js.map +1 -1
- package/build/src/hooks/useWalletPaymentOptions.js +22 -54
- package/build/src/hooks/useWalletPaymentOptions.js.map +1 -1
- package/build/src/payment/createPaymentPayload.js +72 -42
- package/build/src/payment/createPaymentPayload.js.map +1 -1
- package/build/src/payment/paymentEffects.js +8 -120
- package/build/src/payment/paymentEffects.js.map +1 -1
- package/build/src/payment/paymentFsm.js.map +1 -1
- package/build/src/provider/AnalyticsProvider.js +16 -3
- package/build/src/provider/AnalyticsProvider.js.map +1 -1
- package/build/src/provider/RozoPayProvider.js +6 -0
- package/build/src/provider/RozoPayProvider.js.map +1 -1
- package/build/src/provider/StellarContextProvider.js +44 -2
- package/build/src/provider/StellarContextProvider.js.map +1 -1
- package/build/src/types/chainAddress.js +11 -3
- package/build/src/types/chainAddress.js.map +1 -1
- package/build/src/utils/format.js +41 -84
- package/build/src/utils/format.js.map +1 -1
- package/build/src/utils/localstorage.js +14 -1
- package/build/src/utils/localstorage.js.map +1 -1
- package/build/src/utils/stellar/walletconnect.module.js +115 -17
- package/build/src/utils/stellar/walletconnect.module.js.map +1 -1
- package/build/src/utils/token.js +5 -21
- package/build/src/utils/token.js.map +1 -1
- package/build/src/wallets/walletConfigs.js +1 -1
- package/build/src/wallets/walletConfigs.js.map +1 -1
- package/build/utils/format.d.ts +19 -45
- package/build/utils/localstorage.d.ts +1 -1
- package/build/utils/stellar/walletconnect.module.d.ts +12 -0
- package/build/utils/token.d.ts +2 -6
- package/package.json +2 -2
- package/build/src/utils/wallets.js +0 -12
- package/build/src/utils/wallets.js.map +0 -1
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { getKnownToken,
|
|
1
|
+
import { getKnownToken, normalizeTokenAddress } from '@rozoai/intent-common';
|
|
2
2
|
import { useQuery } from '@tanstack/react-query';
|
|
3
3
|
import { useMemo } from 'react';
|
|
4
4
|
import { DEFAULT_ROZO_APP_ID } from '../constants/rozoConfig.js';
|
|
5
|
-
import {
|
|
5
|
+
import { formatTokenAmount } from '../utils/format.js';
|
|
6
6
|
import { useSupportedChains } from './useSupportedChains.js';
|
|
7
7
|
|
|
8
8
|
/**
|
|
@@ -13,28 +13,24 @@ import { useSupportedChains } from './useSupportedChains.js';
|
|
|
13
13
|
* 2. Filtering to only show currently supported chains and tokens
|
|
14
14
|
*
|
|
15
15
|
* CURRENTLY SUPPORTED CHAINS & TOKENS IN WALLET PAYMENT OPTIONS:
|
|
16
|
-
* - Base (Chain ID: 8453) -
|
|
17
|
-
* - Polygon (Chain ID: 137) -
|
|
18
|
-
* - Ethereum (Chain ID: 1) -
|
|
19
|
-
* -
|
|
20
|
-
* -
|
|
21
|
-
* -
|
|
22
|
-
* - Stellar / Rozo Stellar - XLM, USDC (native Stellar tokens)
|
|
23
|
-
*
|
|
24
|
-
* Source of truth: this list is derived from `supportedTokens` in
|
|
25
|
-
* pay-common/src/token.ts via `useSupportedChains()` — update that map,
|
|
26
|
-
* not this comment, to change what's actually shown.
|
|
16
|
+
* - Base (Chain ID: 8453) - USDC
|
|
17
|
+
* - Polygon (Chain ID: 137) - USDC
|
|
18
|
+
* - Ethereum (Chain ID: 1) - USDC
|
|
19
|
+
* - BSC (Chain ID: 56) - USDT (when MugglePay app, BSC preferred, or user has BSC USDT balance, even if disabled)
|
|
20
|
+
* - Rozo Solana - USDC (native Solana USDC)
|
|
21
|
+
* - Rozo Stellar - USDC/XLM (native Stellar tokens)
|
|
27
22
|
*
|
|
28
23
|
* Note: The SDK supports many more chains/tokens (see pay-common/src/chain.ts and token.ts)
|
|
29
24
|
* but wallet payment options are currently filtered to the above for optimal user experience.
|
|
30
25
|
*/
|
|
31
26
|
// SUPPORTED CHAINS: Only these chains are currently active in wallet payment options
|
|
32
27
|
function useWalletPaymentOptions({ trpc, address, usdRequired, destChainId, isDepositFlow, payParams, log: _log, }) {
|
|
33
|
-
//
|
|
28
|
+
// Fetch under the caller's appId, or the shared DEFAULT_ROZO_APP_ID when
|
|
29
|
+
// none was passed — same fallback as paymentEffects and createPaymentPayload,
|
|
30
|
+
// so balances are visible for every integration regardless of appId config.
|
|
34
31
|
const stableAppId = useMemo(() => {
|
|
35
32
|
return payParams?.appId ?? DEFAULT_ROZO_APP_ID;
|
|
36
33
|
}, [payParams?.appId]);
|
|
37
|
-
// Memoize array dependencies to keep a stable query key
|
|
38
34
|
const memoizedPreferredChains = useMemo(() => payParams?.preferredChains,
|
|
39
35
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
40
36
|
[JSON.stringify(payParams?.preferredChains)]);
|
|
@@ -42,16 +38,11 @@ function useWalletPaymentOptions({ trpc, address, usdRequired, destChainId, isDe
|
|
|
42
38
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
43
39
|
[JSON.stringify(payParams?.preferredTokens)]);
|
|
44
40
|
const { chains, tokens } = useSupportedChains();
|
|
45
|
-
|
|
46
|
-
const evmChainIds = useMemo(() => {
|
|
47
|
-
return new Set(chains.filter((c) => c.type === "evm").map((c) => c.chainId));
|
|
48
|
-
}, [chains]);
|
|
41
|
+
const evmChainIds = useMemo(() => new Set(chains.filter((c) => c.type === "evm").map((c) => c.chainId)), [chains]);
|
|
49
42
|
const { data, isLoading, refetch } = useQuery({
|
|
50
43
|
enabled: address != null &&
|
|
51
44
|
usdRequired != null &&
|
|
52
|
-
destChainId != null
|
|
53
|
-
payParams?.appId != null &&
|
|
54
|
-
payParams.appId !== DEFAULT_ROZO_APP_ID,
|
|
45
|
+
destChainId != null,
|
|
55
46
|
queryKey: [
|
|
56
47
|
"walletPaymentOptions",
|
|
57
48
|
address,
|
|
@@ -66,16 +57,13 @@ function useWalletPaymentOptions({ trpc, address, usdRequired, destChainId, isDe
|
|
|
66
57
|
// Source of truth for Intent API calls: chain + token pairing.
|
|
67
58
|
const evmPreferredTokens = (memoizedPreferredTokens ?? [])
|
|
68
59
|
.filter((t) => evmChainIds.has(t.chainId))
|
|
69
|
-
.map((t) => ({
|
|
70
|
-
chain: t.chainId,
|
|
71
|
-
address: t.token,
|
|
72
|
-
}));
|
|
60
|
+
.map((t) => ({ chain: t.chainId, address: t.token }));
|
|
73
61
|
// Backward-compat for local proxy implementations that still read this field.
|
|
74
62
|
const evmPreferredTokenAddresses = evmPreferredTokens.map((t) => t.address);
|
|
75
63
|
return trpc.getWalletPaymentOptions.query({
|
|
76
64
|
payerAddress: address,
|
|
77
65
|
usdRequired: isDepositFlow ? undefined : usdRequired,
|
|
78
|
-
destChainId,
|
|
66
|
+
destChainId: destChainId,
|
|
79
67
|
preferredChains: memoizedPreferredChains,
|
|
80
68
|
preferredTokens: evmPreferredTokens,
|
|
81
69
|
preferredTokenAddress: evmPreferredTokenAddresses,
|
|
@@ -89,20 +77,14 @@ function useWalletPaymentOptions({ trpc, address, usdRequired, destChainId, isDe
|
|
|
89
77
|
const filteredOptions = useMemo(() => {
|
|
90
78
|
if (!data)
|
|
91
79
|
return [];
|
|
92
|
-
// Filter out chains/tokens we don't support yet in wallet payment options.
|
|
93
|
-
// Compare token addresses case-insensitively: the supported-tokens registry
|
|
94
|
-
// stores EVM natives lowercase (0xeeee…) while the API returns them EIP-55
|
|
95
|
-
// checksummed (0xEeee…), so a strict `===` would drop native ETH/BNB/POL.
|
|
96
80
|
const isSupported = (o) => chains.some((c) => c.chainId === o.balance.token.chainId &&
|
|
97
|
-
tokens.some((t) =>
|
|
98
|
-
normalizeTokenAddress(c.chainId, o.balance.token.token)));
|
|
99
|
-
// If preferredTokens is provided and not empty, filter by matching chainId and token address
|
|
81
|
+
tokens.some((t) => t.token === o.balance.token.token));
|
|
100
82
|
const matchesPreferredTokens = (o) => {
|
|
101
83
|
if (!memoizedPreferredTokens || memoizedPreferredTokens.length === 0) {
|
|
102
|
-
return true;
|
|
84
|
+
return true;
|
|
103
85
|
}
|
|
104
86
|
return memoizedPreferredTokens.some((pt) => pt.chainId === o.balance.token.chainId &&
|
|
105
|
-
normalizeTokenAddress(
|
|
87
|
+
normalizeTokenAddress(pt.chainId, pt.token) ===
|
|
106
88
|
normalizeTokenAddress(o.balance.token.chainId, o.balance.token.token));
|
|
107
89
|
};
|
|
108
90
|
return data
|
|
@@ -112,25 +94,11 @@ function useWalletPaymentOptions({ trpc, address, usdRequired, destChainId, isDe
|
|
|
112
94
|
const usd = isDepositFlow ? 0 : usdRequired || 0;
|
|
113
95
|
const value = {
|
|
114
96
|
...item,
|
|
115
|
-
required: {
|
|
116
|
-
...item.required,
|
|
117
|
-
usd,
|
|
118
|
-
},
|
|
97
|
+
required: { ...item.required, usd },
|
|
119
98
|
};
|
|
120
|
-
|
|
121
|
-
const knownToken = getKnownToken(item.balance.token.chainId, item.balance.token.token);
|
|
122
|
-
const fiatISO = knownToken?.fiatISO ?? item.balance.token.fiatISO;
|
|
123
|
-
const isNative = isNativeToken(item.balance.token.token);
|
|
99
|
+
const destinationFiatISO = getKnownToken(item.balance.token.chainId, item.balance.token.token)?.fiatISO;
|
|
124
100
|
if (item.balance.usd < usd) {
|
|
125
|
-
|
|
126
|
-
value.disabledReason = `Balance too low: ${roundTokenAmount(item.balance.amount, item.balance.token)} ${item.balance.token.symbol}`;
|
|
127
|
-
}
|
|
128
|
-
else if (fiatISO) {
|
|
129
|
-
value.disabledReason = `Balance too low: ${item.balance.usd.toFixed(2)} ${fiatISO}`;
|
|
130
|
-
}
|
|
131
|
-
else {
|
|
132
|
-
value.disabledReason = `Balance too low: ${roundTokenAmount(item.balance.amount, item.balance.token)} ${item.balance.token.symbol}`;
|
|
133
|
-
}
|
|
101
|
+
value.disabledReason = `Balance too low: ${formatTokenAmount(item.balance.usd, 6)} ${destinationFiatISO}`;
|
|
134
102
|
}
|
|
135
103
|
return value;
|
|
136
104
|
});
|
|
@@ -138,7 +106,7 @@ function useWalletPaymentOptions({ trpc, address, usdRequired, destChainId, isDe
|
|
|
138
106
|
return {
|
|
139
107
|
options: filteredOptions,
|
|
140
108
|
isLoading,
|
|
141
|
-
refreshOptions:
|
|
109
|
+
refreshOptions: refetch,
|
|
142
110
|
};
|
|
143
111
|
}
|
|
144
112
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useWalletPaymentOptions.js","sources":["../../../src/hooks/useWalletPaymentOptions.ts"],"sourcesContent":[null],"names":[],"mappings":";;;;;;;
|
|
1
|
+
{"version":3,"file":"useWalletPaymentOptions.js","sources":["../../../src/hooks/useWalletPaymentOptions.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
|
|
@@ -1,8 +1,41 @@
|
|
|
1
|
-
import { FeeType, getOrderDestChainId, getKnownToken, rozoSolana, baseEURC, baseUSDC, rozoStellar, generateIntentTitle, mergedMetadata } from '@rozoai/intent-common';
|
|
2
|
-
import { formatUnits } from 'viem';
|
|
1
|
+
import { FeeType, getOrderDestChainId, getKnownToken, rozoSolana, baseEURC, baseUSDC, rozoStellar, generateIntentTitle, rozoStellarUSDC, rozoStellarEURC, mergedMetadata } from '@rozoai/intent-common';
|
|
2
|
+
import { formatUnits, parseUnits } from 'viem';
|
|
3
3
|
import { DEFAULT_ROZO_APP_ID } from '../constants/rozoConfig.js';
|
|
4
|
-
import { tokenBaseAmountToDecimalString } from '../utils/format.js';
|
|
5
4
|
|
|
5
|
+
/**
|
|
6
|
+
* Round a decimal amount string to `decimals` fraction digits, string-only
|
|
7
|
+
* (no `Number()` round-trip), so large-magnitude amounts don't lose
|
|
8
|
+
* precision before being scaled to atomic units via `parseUnits`.
|
|
9
|
+
*/
|
|
10
|
+
function roundDecimalString(value, decimals) {
|
|
11
|
+
const [wholeRaw, fracRaw = ""] = value.split(".");
|
|
12
|
+
const whole = wholeRaw || "0";
|
|
13
|
+
if (fracRaw.length <= decimals) {
|
|
14
|
+
return decimals === 0 ? whole : `${whole}.${fracRaw.padEnd(decimals, "0")}`;
|
|
15
|
+
}
|
|
16
|
+
const kept = fracRaw.slice(0, decimals);
|
|
17
|
+
const roundUp = fracRaw.charCodeAt(decimals) >= "5".charCodeAt(0);
|
|
18
|
+
if (!roundUp) {
|
|
19
|
+
return decimals === 0 ? whole : `${whole}.${kept}`;
|
|
20
|
+
}
|
|
21
|
+
// Propagate the carry through `whole.kept` as a single integer string.
|
|
22
|
+
const digits = (whole + kept).split("");
|
|
23
|
+
let i = digits.length - 1;
|
|
24
|
+
while (i >= 0) {
|
|
25
|
+
if (digits[i] === "9") {
|
|
26
|
+
digits[i] = "0";
|
|
27
|
+
i--;
|
|
28
|
+
}
|
|
29
|
+
else {
|
|
30
|
+
digits[i] = String(Number(digits[i]) + 1);
|
|
31
|
+
break;
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
const carried = i < 0 ? "1" + digits.join("") : digits.join("");
|
|
35
|
+
const newWhole = carried.slice(0, carried.length - decimals) || "0";
|
|
36
|
+
const newFrac = carried.slice(carried.length - decimals);
|
|
37
|
+
return decimals === 0 ? newWhole : `${newWhole}.${newFrac}`;
|
|
38
|
+
}
|
|
6
39
|
/**
|
|
7
40
|
* Resolve the final destination address from PayParams, handling EVM, Solana
|
|
8
41
|
* and Stellar destinations in a single place.
|
|
@@ -30,51 +63,30 @@ function buildCreatePaymentPayload(ctx) {
|
|
|
30
63
|
const appId = payParams.appId ?? DEFAULT_ROZO_APP_ID;
|
|
31
64
|
const feeType = feeTypeOverride ?? payParams.feeType ?? FeeType.ExactIn;
|
|
32
65
|
// --------------------------------------------------
|
|
33
|
-
// Destination token / amount
|
|
66
|
+
// Destination token / amount
|
|
34
67
|
// --------------------------------------------------
|
|
35
|
-
// Two distinct amounts flow through here:
|
|
36
|
-
// - `rawAmountUnitsStr` (destination payout): what the recipient receives,
|
|
37
|
-
// always in destination-token units (e.g. 1.3 USDC).
|
|
38
|
-
// - `sourceAmountUnitsStr` (source amount): what the user actually pays, in
|
|
39
|
-
// source-token units (e.g. 0.016885 SOL). For 1:1-USD sources this equals
|
|
40
|
-
// the destination amount, but for native tokens it differs.
|
|
41
68
|
let toChain;
|
|
42
69
|
let toTokenAddress;
|
|
43
70
|
let rawAmountUnitsStr;
|
|
44
|
-
let
|
|
71
|
+
let tokenDecimals;
|
|
45
72
|
if (order) {
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
toChain = getOrderDestChainId(order) ?? payParams.toChain;
|
|
49
|
-
toTokenAddress = order.destFinalCallTokenAmount.token.token ?? payParams.toToken;
|
|
73
|
+
toChain = getOrderDestChainId(order);
|
|
74
|
+
toTokenAddress = order.destFinalCallTokenAmount.token.token;
|
|
50
75
|
const token = getKnownToken(toChain, toTokenAddress);
|
|
51
76
|
if (!token) {
|
|
52
77
|
throw new Error(`Token not found for chain ${toChain} and token ${toTokenAddress}`);
|
|
53
78
|
}
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
// cross-token bridges like SOL -> USDC).
|
|
57
|
-
rawAmountUnitsStr = formatUnits(BigInt(order.destFinalCallTokenAmount.amount), order.destFinalCallTokenAmount.token.decimals);
|
|
79
|
+
tokenDecimals = token.decimals;
|
|
80
|
+
rawAmountUnitsStr = formatUnits(BigInt(order.destFinalCallTokenAmount.amount), tokenDecimals);
|
|
58
81
|
}
|
|
59
82
|
else {
|
|
60
83
|
toChain = payParams.toChain;
|
|
61
84
|
toTokenAddress = payParams.toToken;
|
|
85
|
+
const token = getKnownToken(toChain, toTokenAddress);
|
|
86
|
+
tokenDecimals = token?.decimals ?? 18;
|
|
62
87
|
rawAmountUnitsStr = payParams.toUnits ?? "0";
|
|
63
88
|
}
|
|
64
|
-
|
|
65
|
-
// depends ONLY on the selected wallet option, not on whether we have a
|
|
66
|
-
// hydrated order — so compute it independently of the branch above (an order
|
|
67
|
-
// lacking `org` is narrowed to undefined by callers, which must NOT drop the
|
|
68
|
-
// source amount and silently fall back to the destination amount).
|
|
69
|
-
//
|
|
70
|
-
// required.amount is normally integer base units, but some endpoints return a
|
|
71
|
-
// human-readable decimal string, so use the decimal-tolerant converter. Keep
|
|
72
|
-
// full precision — do NOT round to 2 dp (that would corrupt native-token
|
|
73
|
-
// amounts, e.g. 0.016885 SOL -> 0.02 SOL).
|
|
74
|
-
if (walletOption) {
|
|
75
|
-
sourceAmountUnitsStr = tokenBaseAmountToDecimalString(walletOption.required.amount, walletOption.required.token.decimals);
|
|
76
|
-
}
|
|
77
|
-
const rawAmountNumber = Number(rawAmountUnitsStr);
|
|
89
|
+
const rawAmountAtomic = parseUnits(roundDecimalString(rawAmountUnitsStr, tokenDecimals), tokenDecimals);
|
|
78
90
|
// --------------------------------------------------
|
|
79
91
|
// Preferred payment method (what user will pay with)
|
|
80
92
|
// --------------------------------------------------
|
|
@@ -99,19 +111,22 @@ function buildCreatePaymentPayload(ctx) {
|
|
|
99
111
|
// --------------------------------------------------
|
|
100
112
|
// Fee handling
|
|
101
113
|
// --------------------------------------------------
|
|
102
|
-
//
|
|
103
|
-
//
|
|
104
|
-
//
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
const
|
|
114
|
+
// Fee comes from the wallet quote as a float USD value; it's not the
|
|
115
|
+
// backend-critical amount, so precision only needs to hold to the
|
|
116
|
+
// token's atomic-unit resolution.
|
|
117
|
+
const feeUsd = walletOption?.fees.usd ?? 0;
|
|
118
|
+
const feeAtomic = feeType === FeeType.ExactIn ? 0n : parseUnits(feeUsd.toFixed(tokenDecimals), tokenDecimals);
|
|
119
|
+
const calculatedAtomic = rawAmountAtomic - feeAtomic;
|
|
120
|
+
// Clamp to zero to avoid negative amounts when fees exceed amount
|
|
121
|
+
const safeAtomic = calculatedAtomic < 0n ? 0n : calculatedAtomic;
|
|
108
122
|
// --------------------------------------------------
|
|
109
123
|
// Address & metadata
|
|
110
124
|
// --------------------------------------------------
|
|
111
125
|
const toAddress = resolveDestinationAddress(payParams);
|
|
112
126
|
const isAbleToIncludeReceiverMemo = [rozoSolana.chainId, rozoStellar.chainId].includes(toChain);
|
|
127
|
+
// Title is for display only — use metadata.intent if set, otherwise generate.
|
|
128
|
+
// payParams.intent is reserved for the top-level API field (e.g. "stellar_direct").
|
|
113
129
|
const title = payParams.metadata?.intent ??
|
|
114
|
-
payParams.intent ??
|
|
115
130
|
generateIntentTitle({
|
|
116
131
|
toChainId: toChain,
|
|
117
132
|
toTokenAddress: toTokenAddress,
|
|
@@ -124,6 +139,21 @@ function buildCreatePaymentPayload(ctx) {
|
|
|
124
139
|
...order.userMetadata,
|
|
125
140
|
}
|
|
126
141
|
: {};
|
|
142
|
+
// --------------------------------------------------
|
|
143
|
+
// Stellar Direct Settlement: auto-detect same-chain USDC→USDC
|
|
144
|
+
// --------------------------------------------------
|
|
145
|
+
// When both source and destination are Stellar USDC, the backend can settle
|
|
146
|
+
// directly (one on-chain transfer, 0 fee, no hub hop). We opt-in by sending
|
|
147
|
+
// intent: "stellar_direct". Consumer can also override via payParams.intent.
|
|
148
|
+
// Both destination and source must be Stellar with the SAME token (USDC or EURC)
|
|
149
|
+
const isStellarSameToken = toChain === rozoStellar.chainId &&
|
|
150
|
+
preferredChain === rozoStellar.chainId &&
|
|
151
|
+
toTokenAddress.toLowerCase() === preferredTokenAddress.toLowerCase();
|
|
152
|
+
const isSupportedStellarToken = toTokenAddress.toLowerCase() === rozoStellarUSDC.token.toLowerCase() ||
|
|
153
|
+
toTokenAddress.toLowerCase() === rozoStellarEURC.token.toLowerCase();
|
|
154
|
+
const isStellarDirect = isStellarSameToken && isSupportedStellarToken;
|
|
155
|
+
// When isStellarDirect, always force intent to "stellar_direct" regardless of consumer override
|
|
156
|
+
const intent = isStellarDirect ? "stellar_direct" : payParams.intent;
|
|
127
157
|
const payload = {
|
|
128
158
|
apiVersion,
|
|
129
159
|
title,
|
|
@@ -134,8 +164,7 @@ function buildCreatePaymentPayload(ctx) {
|
|
|
134
164
|
toAddress,
|
|
135
165
|
preferredChain,
|
|
136
166
|
preferredTokenAddress,
|
|
137
|
-
toUnits:
|
|
138
|
-
...(sourceAmountUnitsStr ? { preferredAmountUnits: sourceAmountUnitsStr } : {}),
|
|
167
|
+
toUnits: formatUnits(safeAtomic, tokenDecimals),
|
|
139
168
|
...(isAbleToIncludeReceiverMemo && payParams.receiverMemo
|
|
140
169
|
? { receiverMemo: payParams.receiverMemo }
|
|
141
170
|
: {}),
|
|
@@ -144,6 +173,7 @@ function buildCreatePaymentPayload(ctx) {
|
|
|
144
173
|
...orderMetadata,
|
|
145
174
|
...payParams.metadata,
|
|
146
175
|
}),
|
|
176
|
+
...(intent ? { intent } : {}),
|
|
147
177
|
};
|
|
148
178
|
return payload;
|
|
149
179
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createPaymentPayload.js","sources":["../../../src/payment/createPaymentPayload.ts"],"sourcesContent":[null],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"createPaymentPayload.js","sources":["../../../src/payment/createPaymentPayload.ts"],"sourcesContent":[null],"names":[],"mappings":";;;;AAsBA;;;;AAIG;AACH,SAAS,kBAAkB,CAAC,KAAa,EAAE,QAAgB,EAAA;AACzD,IAAA,MAAM,CAAC,QAAQ,EAAE,OAAO,GAAG,EAAE,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;AAClD,IAAA,MAAM,KAAK,GAAG,QAAQ,IAAI,GAAG,CAAC;AAC9B,IAAA,IAAI,OAAO,CAAC,MAAM,IAAI,QAAQ,EAAE;QAC9B,OAAO,QAAQ,KAAK,CAAC,GAAG,KAAK,GAAG,CAAA,EAAG,KAAK,CAAI,CAAA,EAAA,OAAO,CAAC,MAAM,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAA,CAAE,CAAC;KAC7E;IAED,MAAM,IAAI,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC;AACxC,IAAA,MAAM,OAAO,GAAG,OAAO,CAAC,UAAU,CAAC,QAAQ,CAAC,IAAI,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;IAClE,IAAI,CAAC,OAAO,EAAE;AACZ,QAAA,OAAO,QAAQ,KAAK,CAAC,GAAG,KAAK,GAAG,CAAG,EAAA,KAAK,CAAI,CAAA,EAAA,IAAI,EAAE,CAAC;KACpD;;AAGD,IAAA,MAAM,MAAM,GAAG,CAAC,KAAK,GAAG,IAAI,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC;AACxC,IAAA,IAAI,CAAC,GAAG,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC;AAC1B,IAAA,OAAO,CAAC,IAAI,CAAC,EAAE;AACb,QAAA,IAAI,MAAM,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE;AACrB,YAAA,MAAM,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC;AAChB,YAAA,CAAC,EAAE,CAAC;SACL;aAAM;AACL,YAAA,MAAM,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;YAC1C,MAAM;SACP;KACF;IACD,MAAM,OAAO,GAAG,CAAC,GAAG,CAAC,GAAG,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AAChE,IAAA,MAAM,QAAQ,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,OAAO,CAAC,MAAM,GAAG,QAAQ,CAAC,IAAI,GAAG,CAAC;AACpE,IAAA,MAAM,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,GAAG,QAAQ,CAAC,CAAC;AACzD,IAAA,OAAO,QAAQ,KAAK,CAAC,GAAG,QAAQ,GAAG,CAAG,EAAA,QAAQ,CAAI,CAAA,EAAA,OAAO,EAAE,CAAC;AAC9D,CAAC;AAuBD;;;AAGG;AACG,SAAU,yBAAyB,CAAC,SAAoB,EAAA;AAC5D,IAAA,IAAI,SAAS,CAAC,eAAe,IAAI,SAAS,CAAC,eAAe,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE;QACxE,OAAO,SAAS,CAAC,eAAe,CAAC;KAClC;AACD,IAAA,IAAI,SAAS,CAAC,gBAAgB,IAAI,SAAS,CAAC,gBAAgB,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE;QAC1E,OAAO,SAAS,CAAC,gBAAgB,CAAC;KACnC;AACD,IAAA,OAAO,SAAS,CAAC,SAAS,IAAI,EAAE,CAAC;AACnC,CAAC;AAED;;;;;;;;AAQG;AACG,SAAU,yBAAyB,CAAC,GAAyB,EAAA;AACjE,IAAA,MAAM,EACJ,SAAS,EACT,KAAK,EACL,YAAY,EACZ,UAAU,GAAG,IAAI,EACjB,eAAe,EACf,oBAAoB,GAAG,KAAK,GAC7B,GAAG,GAAG,CAAC;AAER,IAAA,MAAM,KAAK,GAAG,SAAS,CAAC,KAAK,IAAI,mBAAmB,CAAC;IACrD,MAAM,OAAO,GAAG,eAAe,IAAI,SAAS,CAAC,OAAO,IAAI,OAAO,CAAC,OAAO,CAAC;;;;AAKxE,IAAA,IAAI,OAAe,CAAC;AACpB,IAAA,IAAI,cAAsB,CAAC;AAC3B,IAAA,IAAI,iBAAyB,CAAC;AAC9B,IAAA,IAAI,aAAqB,CAAC;IAE1B,IAAI,KAAK,EAAE;AACT,QAAA,OAAO,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;QACrC,cAAc,GAAG,KAAK,CAAC,wBAAwB,CAAC,KAAK,CAAC,KAAK,CAAC;QAE5D,MAAM,KAAK,GAAG,aAAa,CAAC,OAAO,EAAE,cAAc,CAAC,CAAC;QACrD,IAAI,CAAC,KAAK,EAAE;YACV,MAAM,IAAI,KAAK,CAAC,CAAA,0BAAA,EAA6B,OAAO,CAAc,WAAA,EAAA,cAAc,CAAE,CAAA,CAAC,CAAC;SACrF;AAED,QAAA,aAAa,GAAG,KAAK,CAAC,QAAQ,CAAC;AAC/B,QAAA,iBAAiB,GAAG,WAAW,CAAC,MAAM,CAAC,KAAK,CAAC,wBAAwB,CAAC,MAAM,CAAC,EAAE,aAAa,CAAC,CAAC;KAC/F;SAAM;AACL,QAAA,OAAO,GAAG,SAAS,CAAC,OAAO,CAAC;AAC5B,QAAA,cAAc,GAAG,SAAS,CAAC,OAAO,CAAC;QACnC,MAAM,KAAK,GAAG,aAAa,CAAC,OAAO,EAAE,cAAc,CAAC,CAAC;AACrD,QAAA,aAAa,GAAG,KAAK,EAAE,QAAQ,IAAI,EAAE,CAAC;AACtC,QAAA,iBAAiB,GAAG,SAAS,CAAC,OAAO,IAAI,GAAG,CAAC;KAC9C;AAED,IAAA,MAAM,eAAe,GAAG,UAAU,CAChC,kBAAkB,CAAC,iBAAiB,EAAE,aAAa,CAAC,EACpD,aAAa,CACd,CAAC;;;;AAKF,IAAA,IAAI,cAAsB,CAAC;AAC3B,IAAA,IAAI,qBAA6B,CAAC;IAElC,IAAI,YAAY,EAAE;QAChB,cAAc,GAAG,YAAY,CAAC,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC;QACrD,qBAAqB,GAAG,YAAY,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC;;AAG1D,QAAA,IAAI,cAAc,KAAK,UAAU,CAAC,OAAO,EAAE;AACzC,YAAA,cAAc,GAAG,UAAU,CAAC,OAAO,CAAC;SACrC;KACF;SAAM;;;QAGL,MAAM,SAAS,GAAG,aAAa,CAAC,OAAO,EAAE,cAAc,CAAC,CAAC;AACzD,QAAA,MAAM,aAAa,GAAG,SAAS,EAAE,OAAO,KAAK,KAAK,CAAC;AAEnD,QAAA,cAAc,GAAG,aAAa,GAAG,QAAQ,CAAC,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAC;AACrE,QAAA,qBAAqB,GAAG,aAAa,GAAG,QAAQ,CAAC,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC;KACzE;;;;;;;IAQD,MAAM,MAAM,GAAG,YAAY,EAAE,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC;IAC3C,MAAM,SAAS,GAAG,OAAO,KAAK,OAAO,CAAC,OAAO,GAAG,EAAE,GAAG,UAAU,CAAC,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC,EAAE,aAAa,CAAC,CAAC;AAC9G,IAAA,MAAM,gBAAgB,GAAG,eAAe,GAAG,SAAS,CAAC;;AAGrD,IAAA,MAAM,UAAU,GAAG,gBAAgB,GAAG,EAAE,GAAG,EAAE,GAAG,gBAAgB,CAAC;;;;AAKjE,IAAA,MAAM,SAAS,GAAG,yBAAyB,CAAC,SAAS,CAAC,CAAC;AAEvD,IAAA,MAAM,2BAA2B,GAAG,CAAC,UAAU,CAAC,OAAO,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;;;AAIhG,IAAA,MAAM,KAAK,GACT,SAAS,CAAC,QAAQ,EAAE,MAAM;AAC1B,QAAA,mBAAmB,CAAC;AAClB,YAAA,SAAS,EAAE,OAAO;AAClB,YAAA,cAAc,EAAE,cAAc;AAC9B,YAAA,gBAAgB,EAAE,cAAc;YAChC,qBAAqB;AACtB,SAAA,CAAC,CAAC;AAEL,IAAA,MAAM,aAAa,GACjB,oBAAoB,IAAI,KAAK;AAC3B,UAAE;YACE,GAAG,KAAK,CAAC,QAAQ;YACjB,GAAG,KAAK,CAAC,YAAY;AACtB,SAAA;UACD,EAAE,CAAC;;;;;;;;AAST,IAAA,MAAM,kBAAkB,GACtB,OAAO,KAAK,WAAW,CAAC,OAAO;QAC/B,cAAc,KAAK,WAAW,CAAC,OAAO;QACtC,cAAc,CAAC,WAAW,EAAE,KAAK,qBAAqB,CAAC,WAAW,EAAE,CAAC;AACvE,IAAA,MAAM,uBAAuB,GAC3B,cAAc,CAAC,WAAW,EAAE,KAAK,eAAe,CAAC,KAAK,CAAC,WAAW,EAAE;QACpE,cAAc,CAAC,WAAW,EAAE,KAAK,eAAe,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC;AACvE,IAAA,MAAM,eAAe,GAAG,kBAAkB,IAAI,uBAAuB,CAAC;;AAGtE,IAAA,MAAM,MAAM,GAAG,eAAe,GAAG,gBAAgB,GAAG,SAAS,CAAC,MAAM,CAAC;AAErE,IAAA,MAAM,OAAO,GAA2B;QACtC,UAAU;QACV,KAAK;QACL,OAAO;QACP,KAAK;QACL,OAAO;AACP,QAAA,OAAO,EAAE,cAAc;QACvB,SAAS;QACT,cAAc;QACd,qBAAqB;AACrB,QAAA,OAAO,EAAE,WAAW,CAAC,UAAU,EAAE,aAAa,CAAC;AAC/C,QAAA,IAAI,2BAA2B,IAAI,SAAS,CAAC,YAAY;AACvD,cAAE,EAAE,YAAY,EAAE,SAAS,CAAC,YAAY,EAAE;cACxC,EAAE,CAAC;AACP,QAAA,WAAW,EAAE,SAAS,CAAC,QAAQ,EAAE,WAAW,IAAI,EAAE;QAClD,QAAQ,EAAE,cAAc,CAAC;AACvB,YAAA,GAAG,aAAa;YAChB,GAAG,SAAS,CAAC,QAAQ;SACtB,CAAC;AACF,QAAA,IAAI,MAAM,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC;KAC9B,CAAC;AAEF,IAAA,OAAO,OAAO,CAAC;AACjB;;;;"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { assert, getKnownToken, TokenLogo, resolveOrderId, getPayment, PaymentStatus, formatPaymentResponseToHydratedOrder, createPayment
|
|
1
|
+
import { assert, getKnownToken, TokenLogo, resolveOrderId, getPayment, PaymentStatus, formatPaymentResponseToHydratedOrder, createPayment } from '@rozoai/intent-common';
|
|
2
2
|
import { parseUnits } from 'viem';
|
|
3
3
|
import { DEFAULT_ROZO_APP_ID } from '../constants/rozoConfig.js';
|
|
4
4
|
import { parseErrorMessage } from '../utils/errorParser.js';
|
|
@@ -132,29 +132,6 @@ async function runSetPayParamsEffects(store, trpc, event, apiVersion = "v2", isL
|
|
|
132
132
|
const isDepositFlow = payParams.toUnits == null;
|
|
133
133
|
assert(!isDepositFlow || payParams.externalId == null, "PayParams: externalId unsupported in deposit mode");
|
|
134
134
|
try {
|
|
135
|
-
// const orderPreview = await trpc.previewOrder.query({
|
|
136
|
-
// // appId: payParams.appId,
|
|
137
|
-
// appId: DEFAULT_ROZO_APP_ID,
|
|
138
|
-
// toChain: payParams.toChain,
|
|
139
|
-
// toToken: payParams.toToken,
|
|
140
|
-
// toUnits,
|
|
141
|
-
// toAddress: payParams.toAddress,
|
|
142
|
-
// toCallData: payParams.toCallData,
|
|
143
|
-
// isAmountEditable: payParams.toUnits == null,
|
|
144
|
-
// metadata: {
|
|
145
|
-
// intent: payParams.intent ?? "Pay",
|
|
146
|
-
// items: [],
|
|
147
|
-
// payer: {
|
|
148
|
-
// paymentOptions: payParams.paymentOptions,
|
|
149
|
-
// preferredChains: payParams.preferredChains,
|
|
150
|
-
// preferredTokens: payParams.preferredTokens,
|
|
151
|
-
// evmChains: payParams.evmChains,
|
|
152
|
-
// },
|
|
153
|
-
// },
|
|
154
|
-
// externalId: payParams.externalId,
|
|
155
|
-
// userMetadata: payParams.metadata,
|
|
156
|
-
// refundAddress: payParams.refundAddress,
|
|
157
|
-
// });
|
|
158
135
|
const token = getKnownToken(payParams.toChain, payParams.toToken);
|
|
159
136
|
const orgId = () => {
|
|
160
137
|
const chars = "abcdefghijklmnopqrstuvwxyz0123456789";
|
|
@@ -177,9 +154,9 @@ async function runSetPayParamsEffects(store, trpc, event, apiVersion = "v2", isL
|
|
|
177
154
|
token: payParams.toToken,
|
|
178
155
|
symbol: token?.symbol ?? "USDC",
|
|
179
156
|
usd: 1,
|
|
180
|
-
|
|
157
|
+
priceFromUsd: 1,
|
|
181
158
|
decimals: token?.decimals ?? 18,
|
|
182
|
-
displayDecimals:
|
|
159
|
+
displayDecimals: token?.displayDecimals ?? 6,
|
|
183
160
|
logoSourceURI: token?.logoSourceURI ?? TokenLogo.USDC,
|
|
184
161
|
logoURI: token?.logoURI ?? TokenLogo.USDC,
|
|
185
162
|
maxAcceptUsd: 100000,
|
|
@@ -204,7 +181,7 @@ async function runSetPayParamsEffects(store, trpc, event, apiVersion = "v2", isL
|
|
|
204
181
|
intentStatus: "payment_unpaid",
|
|
205
182
|
metadata: {
|
|
206
183
|
intent: payParams.intent ?? "Pay",
|
|
207
|
-
...
|
|
184
|
+
...payParams.metadata,
|
|
208
185
|
},
|
|
209
186
|
externalId: payParams.externalId,
|
|
210
187
|
userMetadata: payParams.metadata,
|
|
@@ -300,7 +277,7 @@ async function runHydratePayParamsEffects(store, trpc, prev, event, log, apiVers
|
|
|
300
277
|
order,
|
|
301
278
|
walletOption,
|
|
302
279
|
apiVersion,
|
|
303
|
-
feeTypeOverride:
|
|
280
|
+
feeTypeOverride: payParams.feeType,
|
|
304
281
|
includeOrderMetadata: true,
|
|
305
282
|
});
|
|
306
283
|
log?.(`[Payment Effect]: payload: ${JSON.stringify(payload, null, 2)}`);
|
|
@@ -324,7 +301,8 @@ async function runHydratePayParamsEffects(store, trpc, prev, event, log, apiVers
|
|
|
324
301
|
}
|
|
325
302
|
// END ROZO API CALL
|
|
326
303
|
try {
|
|
327
|
-
if (typeof rozoPaymentResponse === "undefined" ||
|
|
304
|
+
if (typeof rozoPaymentResponse === "undefined" ||
|
|
305
|
+
rozoPaymentResponse === null) {
|
|
328
306
|
throw new Error("Payment data not found");
|
|
329
307
|
}
|
|
330
308
|
const hydratedOrder = formatPaymentResponseToHydratedOrder({
|
|
@@ -343,101 +321,11 @@ async function runHydratePayParamsEffects(store, trpc, prev, event, log, apiVers
|
|
|
343
321
|
async function runHydratePayIdEffects(store, trpc, prev, event, apiVersion = "v2") {
|
|
344
322
|
const order = prev.order;
|
|
345
323
|
try {
|
|
346
|
-
// const { hydratedOrder } = await trpc.hydrateOrder.query({
|
|
347
|
-
// id: order.id.toString(),
|
|
348
|
-
// refundAddress: event.refundAddress,
|
|
349
|
-
// });
|
|
350
324
|
const orderData = await getPayment(order.id.toString(), apiVersion);
|
|
351
325
|
if (!orderData?.data) {
|
|
352
326
|
throw new Error("Order not found");
|
|
353
327
|
}
|
|
354
|
-
const
|
|
355
|
-
const hydratedOrder = {
|
|
356
|
-
id: order.id ?? BigInt(orderData.data.id),
|
|
357
|
-
mode: RozoPayOrderMode.HYDRATED,
|
|
358
|
-
intentAddr: orderData.data.source.receiverAddress,
|
|
359
|
-
preferredChainId: order.preferredChainId ?? null,
|
|
360
|
-
preferredTokenAddress: order.preferredTokenAddress ?? null,
|
|
361
|
-
// handoffAddr: orderData.data.metadata.receivingAddress as Address,
|
|
362
|
-
// escrowContractAddress: orderData.data.metadata
|
|
363
|
-
// .receivingAddress as `0x${string}`,
|
|
364
|
-
// bridgerContractAddress: orderData.data.metadata
|
|
365
|
-
// .receivingAddress as `0x${string}`,
|
|
366
|
-
// bridgeTokenOutOptions: [
|
|
367
|
-
// {
|
|
368
|
-
// token: {
|
|
369
|
-
// chainId: order.destFinalCallTokenAmount.token.chainId,
|
|
370
|
-
// token: order.destFinalCallTokenAmount.token.token,
|
|
371
|
-
// symbol: order.destFinalCallTokenAmount.token.symbol,
|
|
372
|
-
// usd: 1,
|
|
373
|
-
// priceFromUsd: 1,
|
|
374
|
-
// decimals: token?.decimals ?? 18,
|
|
375
|
-
// displayDecimals: 2,
|
|
376
|
-
// logoSourceURI: order.destFinalCallTokenAmount.token.logoSourceURI,
|
|
377
|
-
// logoURI: order.destFinalCallTokenAmount.token.logoURI,
|
|
378
|
-
// maxAcceptUsd: 100000,
|
|
379
|
-
// maxSendUsd: 0,
|
|
380
|
-
// },
|
|
381
|
-
// amount: order.destFinalCallTokenAmount
|
|
382
|
-
// .amount as unknown as `${bigint}`,
|
|
383
|
-
// usd: Number(order.destFinalCallTokenAmount.usd),
|
|
384
|
-
// },
|
|
385
|
-
// ],
|
|
386
|
-
// selectedBridgeTokenOutAddr: null,
|
|
387
|
-
// selectedBridgeTokenOutAmount: null,
|
|
388
|
-
destFinalCallTokenAmount: {
|
|
389
|
-
token: {
|
|
390
|
-
chainId: order.destFinalCallTokenAmount.token.chainId,
|
|
391
|
-
token: order.destFinalCallTokenAmount.token.token,
|
|
392
|
-
symbol: order.destFinalCallTokenAmount.token.symbol,
|
|
393
|
-
usd: 1,
|
|
394
|
-
priceFromUsd: order.destFinalCallTokenAmount.token.priceFromUsd,
|
|
395
|
-
decimals: token?.decimals ?? 18,
|
|
396
|
-
displayDecimals: 2,
|
|
397
|
-
logoSourceURI: order.destFinalCallTokenAmount.token.logoSourceURI,
|
|
398
|
-
logoURI: order.destFinalCallTokenAmount.token.logoURI,
|
|
399
|
-
maxAcceptUsd: 100000,
|
|
400
|
-
maxSendUsd: 0,
|
|
401
|
-
},
|
|
402
|
-
amount: parseUnits(order.destFinalCallTokenAmount.amount, token?.decimals ?? 18).toString(),
|
|
403
|
-
usd: Number(order.destFinalCallTokenAmount.usd),
|
|
404
|
-
},
|
|
405
|
-
usdValue: Number(order.destFinalCallTokenAmount.usd),
|
|
406
|
-
destFinalCall: {
|
|
407
|
-
to: orderData.data.destination.receiverAddress,
|
|
408
|
-
value: BigInt("0"),
|
|
409
|
-
data: "0x",
|
|
410
|
-
},
|
|
411
|
-
refundAddr: order.refundAddr || null,
|
|
412
|
-
nonce: orderData.data.nonce,
|
|
413
|
-
sourceTokenAmount: null,
|
|
414
|
-
sourceFulfillerAddr: null,
|
|
415
|
-
sourceInitiateTxHash: null,
|
|
416
|
-
sourceStartTxHash: null,
|
|
417
|
-
sourceStatus: RozoPayOrderStatusSource.WAITING_PAYMENT,
|
|
418
|
-
destStatus: RozoPayOrderStatusDest.PENDING,
|
|
419
|
-
intentStatus: RozoPayIntentStatus.UNPAID,
|
|
420
|
-
destFastFinishTxHash: null,
|
|
421
|
-
destClaimTxHash: null,
|
|
422
|
-
// passedToAddress: null,
|
|
423
|
-
redirectUri: null,
|
|
424
|
-
// sourceInitiateUpdatedAt: null,
|
|
425
|
-
createdAt: order.createdAt,
|
|
426
|
-
lastUpdatedAt: Math.floor(Date.now() / 1000),
|
|
427
|
-
orgId: orderData.data.id,
|
|
428
|
-
metadata: mergedMetadata({
|
|
429
|
-
...(orderData?.data.metadata ?? {}),
|
|
430
|
-
...(order?.metadata ?? {}),
|
|
431
|
-
...(order.userMetadata ?? {}),
|
|
432
|
-
}),
|
|
433
|
-
externalId: orderData.data.externalId?.toString() ?? orderData.data.id ?? null,
|
|
434
|
-
userMetadata: null,
|
|
435
|
-
expirationTs: orderData.data.expirationTs,
|
|
436
|
-
org: {
|
|
437
|
-
orgId: orderData.data.id,
|
|
438
|
-
name: "",
|
|
439
|
-
},
|
|
440
|
-
};
|
|
328
|
+
const hydratedOrder = formatPaymentResponseToHydratedOrder(orderData.data);
|
|
441
329
|
store.dispatch({
|
|
442
330
|
type: "order_hydrated",
|
|
443
331
|
order: hydratedOrder,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"paymentEffects.js","sources":["../../../src/payment/paymentEffects.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"paymentEffects.js","sources":["../../../src/payment/paymentEffects.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
|