@rozoai/intent-pay 0.1.57 → 0.1.59-beta.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.
Files changed (56) hide show
  1. package/README.md +21 -0
  2. package/build/components/Common/TokenChainLogo/index.d.ts +7 -1
  3. package/build/components/Pages/WaitingDepositAddress/index.d.ts +26 -0
  4. package/build/components/RozoPayButton/types.d.ts +5 -3
  5. package/build/components/Spinners/TokenLogoSpinner/index.d.ts +6 -1
  6. package/build/hooks/useDepositAddressOptions.d.ts +3 -2
  7. package/build/hooks/useSolanaPaymentOptions.d.ts +1 -1
  8. package/build/hooks/useStellarPaymentOptions.d.ts +1 -1
  9. package/build/hooks/useWalletPaymentOptions.d.ts +10 -5
  10. package/build/package.json.js +1 -1
  11. package/build/payment/createPaymentPayload.d.ts +6 -4
  12. package/build/payment/nativeSpendable.d.ts +1 -0
  13. package/build/payment/paymentFsm.d.ts +25 -2
  14. package/build/provider/PayContext.d.ts +3 -3
  15. package/build/src/components/Common/ConnectorList/index.js +2 -3
  16. package/build/src/components/Common/ConnectorList/index.js.map +1 -1
  17. package/build/src/components/Common/TokenChainLogo/index.js +27 -3
  18. package/build/src/components/Common/TokenChainLogo/index.js.map +1 -1
  19. package/build/src/components/Pages/SelectMethod/index.js.map +1 -1
  20. package/build/src/components/Pages/Solana/PayWithSolanaToken/index.js +9 -4
  21. package/build/src/components/Pages/Solana/PayWithSolanaToken/index.js.map +1 -1
  22. package/build/src/components/Pages/Stellar/PayWithStellarToken/index.js +9 -4
  23. package/build/src/components/Pages/Stellar/PayWithStellarToken/index.js.map +1 -1
  24. package/build/src/components/Pages/WaitingDepositAddress/index.js +38 -12
  25. package/build/src/components/Pages/WaitingDepositAddress/index.js.map +1 -1
  26. package/build/src/components/RozoPayModal/index.js.map +1 -1
  27. package/build/src/components/Spinners/TokenLogoSpinner/index.js +6 -2
  28. package/build/src/components/Spinners/TokenLogoSpinner/index.js.map +1 -1
  29. package/build/src/hooks/useDepositAddressOptions.js +21 -11
  30. package/build/src/hooks/useDepositAddressOptions.js.map +1 -1
  31. package/build/src/hooks/usePaymentState.js +98 -60
  32. package/build/src/hooks/usePaymentState.js.map +1 -1
  33. package/build/src/hooks/useSolanaPaymentOptions.js +59 -15
  34. package/build/src/hooks/useSolanaPaymentOptions.js.map +1 -1
  35. package/build/src/hooks/useStellarPaymentOptions.js +47 -19
  36. package/build/src/hooks/useStellarPaymentOptions.js.map +1 -1
  37. package/build/src/hooks/useSupportedChains.js +3 -2
  38. package/build/src/hooks/useSupportedChains.js.map +1 -1
  39. package/build/src/hooks/useTokenOptions.js +13 -8
  40. package/build/src/hooks/useTokenOptions.js.map +1 -1
  41. package/build/src/hooks/useWalletPaymentOptions.js +33 -17
  42. package/build/src/hooks/useWalletPaymentOptions.js.map +1 -1
  43. package/build/src/payment/createPaymentPayload.js +40 -37
  44. package/build/src/payment/createPaymentPayload.js.map +1 -1
  45. package/build/src/payment/nativeSpendable.js +10 -0
  46. package/build/src/payment/nativeSpendable.js.map +1 -0
  47. package/build/src/payment/paymentFsm.js.map +1 -1
  48. package/build/src/utils/feeCache.js +3 -13
  49. package/build/src/utils/feeCache.js.map +1 -1
  50. package/build/src/utils/format.js +22 -1
  51. package/build/src/utils/format.js.map +1 -1
  52. package/build/src/utils/token.js +70 -13
  53. package/build/src/utils/token.js.map +1 -1
  54. package/build/utils/format.d.ts +39 -1
  55. package/build/utils/token.d.ts +21 -3
  56. package/package.json +2 -2
@@ -1 +1 @@
1
- {"version":3,"file":"useSolanaPaymentOptions.js","sources":["../../../src/hooks/useSolanaPaymentOptions.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"useSolanaPaymentOptions.js","sources":["../../../src/hooks/useSolanaPaymentOptions.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
@@ -1,22 +1,29 @@
1
- import { normalizeTokenAddress, rozoStellar, getKnownToken } from '@rozoai/intent-common';
1
+ import { isNativeToken, getKnownToken } 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 { formatTokenAmount } from '../utils/format.js';
5
+ import { formatNativeInsufficientBalance, formatTokenAmount, roundTokenAmount } from '../utils/format.js';
6
6
  import { useSupportedChains } from './useSupportedChains.js';
7
+ import { sourceTokenChainId, normalizeSourceTokenAddress } from '../utils/token.js';
7
8
 
8
9
  /** Wallet payment options. User picks one. */
9
10
  function useStellarPaymentOptions({ trpc, address, usdRequired, isDepositFlow, payParams, }) {
10
11
  const { chains, tokens } = useSupportedChains();
11
- const stellarChainIds = useMemo(() => new Set(chains.filter((c) => c.type === "stellar").map((c) => c.chainId)), [chains]);
12
- // Fetch under caller's appId, or DEFAULT_ROZO_APP_ID when none passed.
13
- const stableAppId = useMemo(() => payParams?.appId ?? DEFAULT_ROZO_APP_ID, [payParams?.appId]);
12
+ // Get Stellar chain IDs from supported chains
13
+ const stellarChainIds = useMemo(() => {
14
+ return new Set(chains.filter((c) => c.type === "stellar").map((c) => c.chainId));
15
+ }, [chains]);
16
+ const stableAppId = useMemo(() => {
17
+ return payParams?.appId;
18
+ }, [payParams]);
14
19
  const memoizedPreferredTokens = useMemo(() => payParams?.preferredTokens,
15
20
  // eslint-disable-next-line react-hooks/exhaustive-deps
16
21
  [JSON.stringify(payParams?.preferredTokens)]);
17
22
  const { data, isLoading, refetch } = useQuery({
18
23
  enabled: address != null &&
19
- usdRequired != null,
24
+ usdRequired != null &&
25
+ stableAppId != null &&
26
+ stableAppId !== DEFAULT_ROZO_APP_ID,
20
27
  queryKey: [
21
28
  "stellarPaymentOptions",
22
29
  address,
@@ -27,14 +34,18 @@ function useStellarPaymentOptions({ trpc, address, usdRequired, isDepositFlow, p
27
34
  ],
28
35
  queryFn: () => {
29
36
  const stellarPreferredTokenAddresses = (memoizedPreferredTokens ?? [])
30
- .filter((t) => stellarChainIds.has(t.chainId))
31
- .map((t) => t.token);
37
+ .filter((t) => stellarChainIds.has(sourceTokenChainId(t.chainId)))
38
+ .map((t) => (t.symbol === "XLM" && isNativeToken(t.token) ? "XLM" : t.token));
39
+ // Preserve the existing hint behavior for non-XLM lists. The local
40
+ // proxy ranks these addresses; explicit restrictions stay in the SDK.
41
+ const isRestrictive = stellarPreferredTokenAddresses.length > 0 &&
42
+ !stellarPreferredTokenAddresses.includes("XLM");
32
43
  return trpc.getStellarPaymentOptions.query({
33
44
  stellarAddress: address,
34
45
  // API expects undefined for deposit flow.
35
46
  usdRequired: isDepositFlow ? undefined : usdRequired,
36
47
  appId: stableAppId,
37
- preferredTokenAddress: stellarPreferredTokenAddresses,
48
+ preferredTokenAddress: isRestrictive ? stellarPreferredTokenAddresses : undefined,
38
49
  });
39
50
  },
40
51
  staleTime: 30_000,
@@ -49,25 +60,42 @@ function useStellarPaymentOptions({ trpc, address, usdRequired, isDepositFlow, p
49
60
  .filter((option) => {
50
61
  const tokenChainId = option.balance.token.chainId;
51
62
  const tokenAddress = option.balance.token.token;
63
+ // If preferredTokens is provided and not empty, filter by matching chainId and token address
52
64
  if (preferredTokens && preferredTokens.length > 0) {
53
- return preferredTokens.some((pt) => pt.chainId === tokenChainId &&
54
- normalizeTokenAddress(tokenChainId, pt.token) ===
55
- normalizeTokenAddress(tokenChainId, tokenAddress));
65
+ return preferredTokens.some((pt) => sourceTokenChainId(pt.chainId) === sourceTokenChainId(tokenChainId) &&
66
+ normalizeSourceTokenAddress(pt.chainId, pt.token) ===
67
+ normalizeSourceTokenAddress(tokenChainId, tokenAddress));
56
68
  }
57
69
  // Otherwise, check against supported tokens
58
- return tokens.some((t) => normalizeTokenAddress(t.chainId, t.token) ===
59
- normalizeTokenAddress(tokenChainId, tokenAddress) &&
60
- t.chainId === rozoStellar.chainId);
70
+ return tokens.some((t) => normalizeSourceTokenAddress(t.chainId, t.token) ===
71
+ normalizeSourceTokenAddress(tokenChainId, tokenAddress) &&
72
+ sourceTokenChainId(t.chainId) === sourceTokenChainId(tokenChainId));
61
73
  })
62
74
  .map((item) => {
63
75
  const usd = isDepositFlow ? 0 : usdRequired || 0;
64
76
  const value = {
65
77
  ...item,
66
- required: { ...item.required, usd },
78
+ required: {
79
+ ...item.required,
80
+ usd,
81
+ },
67
82
  };
68
- const destinationFiatISO = getKnownToken(item.balance.token.chainId, item.balance.token.token)?.fiatISO;
83
+ // Set `disabledReason` manually (based on current usdRequired state, not API Request)
84
+ const knownToken = getKnownToken(item.balance.token.chainId, item.balance.token.token);
85
+ const fiatISO = knownToken?.fiatISO ?? item.balance.token.fiatISO;
86
+ const isNative = isNativeToken(item.balance.token.token);
69
87
  if (item.balance.usd < usd) {
70
- value.disabledReason = `Balance too low: ${formatTokenAmount(item.balance.usd, 6)} ${destinationFiatISO}`;
88
+ if (isNative) {
89
+ if (!value.disabledReason || value.disabledReason.startsWith("Balance too low:")) {
90
+ value.disabledReason = formatNativeInsufficientBalance(item.balance);
91
+ }
92
+ }
93
+ else if (fiatISO) {
94
+ value.disabledReason = `Balance too low: ${formatTokenAmount(item.balance.usd, 6)} ${fiatISO}`;
95
+ }
96
+ else {
97
+ value.disabledReason = `Balance too low: ${roundTokenAmount(item.balance.amount, item.balance.token)} ${item.balance.token.symbol}`;
98
+ }
71
99
  }
72
100
  return value;
73
101
  });
@@ -75,7 +103,7 @@ function useStellarPaymentOptions({ trpc, address, usdRequired, isDepositFlow, p
75
103
  return {
76
104
  options: filteredOptions,
77
105
  isLoading,
78
- refreshOptions: refetch,
106
+ refreshOptions: () => refetch().then(() => { }),
79
107
  };
80
108
  }
81
109
 
@@ -1 +1 @@
1
- {"version":3,"file":"useStellarPaymentOptions.js","sources":["../../../src/hooks/useStellarPaymentOptions.ts"],"sourcesContent":[null],"names":[],"mappings":";;;;;;;AAcA;AACM,SAAU,wBAAwB,CAAC,EACvC,IAAI,EACJ,OAAO,EACP,WAAW,EACX,aAAa,EACb,SAAS,GAOV,EAAA;IACC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,kBAAkB,EAAE;AAE/C,IAAA,MAAM,eAAe,GAAG,OAAO,CAC7B,MAAM,IAAI,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC,EAC/E,CAAC,MAAM,CAAC,CACT;;AAGD,IAAA,MAAM,WAAW,GAAG,OAAO,CACzB,MAAM,SAAS,EAAE,KAAK,IAAI,mBAAmB,EAC7C,CAAC,SAAS,EAAE,KAAK,CAAC,CACnB;IAED,MAAM,uBAAuB,GAAG,OAAO,CACrC,MAAM,SAAS,EAAE,eAAe;;IAEhC,CAAC,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE,eAAe,CAAC,CAAC,CAC7C;IAED,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,GAAG,QAAQ,CAA+B;QAC1E,OAAO,EACL,OAAO,IAAI,IAAI;AACf,YAAA,WAAW,IAAI,IAAI;AACrB,QAAA,QAAQ,EAAE;YACR,uBAAuB;YACvB,OAAO;YACP,WAAW;YACX,aAAa;YACb,WAAW;YACX,uBAAuB;AACxB,SAAA;QACD,OAAO,EAAE,MAAK;AACZ,YAAA,MAAM,8BAA8B,GAAG,CAAC,uBAAuB,IAAI,EAAE;AAClE,iBAAA,MAAM,CAAC,CAAC,CAAC,KAAK,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC;iBAC5C,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC;AAEtB,YAAA,OAAO,IAAI,CAAC,wBAAwB,CAAC,KAAK,CAAC;AACzC,gBAAA,cAAc,EAAE,OAAQ;;gBAExB,WAAW,EAAE,aAAa,GAAG,SAAS,GAAG,WAAW;AACpD,gBAAA,KAAK,EAAE,WAAW;AAClB,gBAAA,qBAAqB,EAAE,8BAA8B;AACtD,aAAA,CAAC;QACJ,CAAC;AACD,QAAA,SAAS,EAAE,MAAM;AACjB,QAAA,KAAK,EAAE,CAAC;AACR,QAAA,oBAAoB,EAAE,KAAK;AAC5B,KAAA,CAAC;AAEF,IAAA,MAAM,eAAe,GAAG,OAAO,CAAC,MAAK;AACnC,QAAA,IAAI,CAAC,IAAI;AAAE,YAAA,OAAO,EAAE;AAEpB,QAAA,MAAM,eAAe,GAAG,SAAS,EAAE,eAAe;AAElD,QAAA,OAAO;AACJ,aAAA,MAAM,CAAC,CAAC,MAAM,KAAI;YACjB,MAAM,YAAY,GAAG,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO;YACjD,MAAM,YAAY,GAAG,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK;YAE/C,IAAI,eAAe,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE;AACjD,gBAAA,OAAO,eAAe,CAAC,IAAI,CACzB,CAAC,EAAE,KACD,EAAE,CAAC,OAAO,KAAK,YAAY;AAC3B,oBAAA,qBAAqB,CAAC,YAAY,EAAE,EAAE,CAAC,KAAK,CAAC;AAC3C,wBAAA,qBAAqB,CAAC,YAAY,EAAE,YAAY,CAAC,CACtD;YACH;;AAGA,YAAA,OAAO,MAAM,CAAC,IAAI,CAChB,CAAC,CAAC,KACA,qBAAqB,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC;AACvC,gBAAA,qBAAqB,CAAC,YAAY,EAAE,YAAY,CAAC;AACnD,gBAAA,CAAC,CAAC,OAAO,KAAK,WAAW,CAAC,OAAO,CACpC;AACH,QAAA,CAAC;AACA,aAAA,GAAG,CAAC,CAAC,IAAI,KAAI;AACZ,YAAA,MAAM,GAAG,GAAG,aAAa,GAAG,CAAC,GAAG,WAAW,IAAI,CAAC;AAChD,YAAA,MAAM,KAAK,GAAwB;AACjC,gBAAA,GAAG,IAAI;gBACP,QAAQ,EAAE,EAAE,GAAG,IAAI,CAAC,QAAQ,EAAE,GAAG,EAAE;aACpC;YACD,MAAM,kBAAkB,GAAG,aAAa,CACtC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,EAC1B,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CACzB,EAAE,OAAO;YACV,IAAI,IAAI,CAAC,OAAO,CAAC,GAAG,GAAG,GAAG,EAAE;AAC1B,gBAAA,KAAK,CAAC,cAAc,GAAG,CAAA,iBAAA,EAAoB,iBAAiB,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC,CAAA,CAAA,EAAI,kBAAkB,EAAE;YAC3G;AACA,YAAA,OAAO,KAAK;AACd,QAAA,CAAC,CAA0B;AAC/B,IAAA,CAAC,EAAE,CAAC,IAAI,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,EAAE,SAAS,EAAE,eAAe,CAAC,CAAC;IAE1E,OAAO;AACL,QAAA,OAAO,EAAE,eAAe;QACxB,SAAS;AACT,QAAA,cAAc,EAAE,OAAO;KACxB;AACH;;"}
1
+ {"version":3,"file":"useStellarPaymentOptions.js","sources":["../../../src/hooks/useStellarPaymentOptions.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
- import { supportedTokens, supportedChains } from '@rozoai/intent-common';
1
+ import { supportedChains } from '@rozoai/intent-common';
2
+ import { sourcePaymentTokens } from '../utils/token.js';
2
3
 
3
4
  function useSupportedChains() {
4
5
  return {
@@ -9,7 +10,7 @@ function useSupportedChains() {
9
10
  /**
10
11
  * Array of supported tokens for payment widget.
11
12
  */
12
- tokens: Array.from(supportedTokens.values()).flat().filter(Boolean),
13
+ tokens: sourcePaymentTokens,
13
14
  };
14
15
  }
15
16
 
@@ -1 +1 @@
1
- {"version":3,"file":"useSupportedChains.js","sources":["../../../src/hooks/useSupportedChains.tsx"],"sourcesContent":[null],"names":[],"mappings":";;SAEgB,kBAAkB,GAAA;IAIhC,OAAO;AACL;;AAEG;AACH,QAAA,MAAM,EAAE,eAAe,CAAC,MAAM,CAAC,OAAO,CAAC;AACvC;;AAEG;AACH,QAAA,MAAM,EAAE,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC;KACpE;AACH;;"}
1
+ {"version":3,"file":"useSupportedChains.js","sources":["../../../src/hooks/useSupportedChains.tsx"],"sourcesContent":[null],"names":[],"mappings":";;;SAGgB,kBAAkB,GAAA;IAIhC,OAAO;AACL;;AAEG;AACH,QAAA,MAAM,EAAE,eAAe,CAAC,MAAM,CAAC,OAAO,CAAC;AACvC;;AAEG;AACH,QAAA,MAAM,EAAE,mBAAmB;KAC5B;AACH;;"}
@@ -1,11 +1,12 @@
1
1
  import { jsx } from 'react/jsx-runtime';
2
- import { getChainName, normalizeTokenAddress } from '@rozoai/intent-common';
2
+ import { getChainName } from '@rozoai/intent-common';
3
3
  import { useMemo, useCallback, useRef, useEffect } from 'react';
4
4
  import TokenChainLogo from '../components/Common/TokenChainLogo/index.js';
5
5
  import { ROUTES } from '../constants/routes.js';
6
6
  import { ROZO_EVENTS } from '../lib/analytics/events.js';
7
7
  import { useAnalytics } from '../provider/AnalyticsProvider.js';
8
8
  import { formatUsd, roundTokenAmount } from '../utils/format.js';
9
+ import { sourceTokenChainId, normalizeSourceTokenAddress } from '../utils/token.js';
9
10
  import { suggestedSourceRank } from '../utils/suggestedSource.js';
10
11
  import { usePayContext } from './usePayContext.js';
11
12
 
@@ -103,8 +104,9 @@ function useTokenOptions(mode) {
103
104
  const chainId = parseInt(chainIdStr, 10);
104
105
  if (isNaN(chainId))
105
106
  return false;
106
- return preferredTokens.some((pt) => pt.chainId === chainId &&
107
- normalizeTokenAddress(chainId, pt.token) === normalizeTokenAddress(chainId, tokenAddress));
107
+ return preferredTokens.some((pt) => sourceTokenChainId(pt.chainId) === sourceTokenChainId(chainId) &&
108
+ normalizeSourceTokenAddress(pt.chainId, pt.token) ===
109
+ normalizeSourceTokenAddress(chainId, tokenAddress));
108
110
  };
109
111
  // Option ids are "chainId-tokenAddress" (see isTokenPreferred above).
110
112
  const optionSuggestedRank = (option) => {
@@ -118,10 +120,12 @@ function useTokenOptions(mode) {
118
120
  };
119
121
  // Memoize the sorted optionsList and reassign to optionsList to preserve invariant
120
122
  const sortedOptionsList = useMemo(() => {
121
- return optionsList.map((option) => ({
123
+ return optionsList
124
+ .map((option) => ({
122
125
  ...option,
123
126
  badge: optionSuggestedRank(option) === 0 ? "Last used" : undefined,
124
- })).sort((a, b) => {
127
+ }))
128
+ .sort((a, b) => {
125
129
  // First: sort by disabled state (enabled tokens first)
126
130
  const dDisabled = (a.disabled ? 1 : 0) - (b.disabled ? 1 : 0);
127
131
  if (dDisabled !== 0)
@@ -146,6 +150,7 @@ function useTokenOptions(mode) {
146
150
  const refreshOptions = useCallback(async () => {
147
151
  const { ethWalletAddress, solanaPubKey, stellarPubKey } = paymentState;
148
152
  const refreshPromises = [];
153
+ // Only refresh EVM options if we have EVM address and need EVM data
149
154
  if (["evm", "all"].includes(mode) &&
150
155
  ethWalletAddress &&
151
156
  (!walletPaymentOptions.options || walletPaymentOptions.options.length === 0)) {
@@ -367,7 +372,7 @@ function getEvmTokenOptions(options, isDepositFlow, setSelectedTokenOption, setR
367
372
  title,
368
373
  subtitle,
369
374
  icons: [
370
- jsx(TokenChainLogo, { token: option.balance.token }, getRozoTokenKey(option.balance.token)),
375
+ jsx(TokenChainLogo, { token: option.balance.token, nativeAsChainIcon: true }, getRozoTokenKey(option.balance.token)),
371
376
  ],
372
377
  onClick: () => {
373
378
  capture(ROZO_EVENTS.CHAIN_SELECTED, {
@@ -408,7 +413,7 @@ function getSolanaTokenOptions(options, isDepositFlow, setSelectedSolanaTokenOpt
408
413
  title,
409
414
  subtitle,
410
415
  icons: [
411
- jsx(TokenChainLogo, { token: option.balance.token }, getRozoTokenKey(option.balance.token)),
416
+ jsx(TokenChainLogo, { token: option.balance.token, nativeAsChainIcon: true }, getRozoTokenKey(option.balance.token)),
412
417
  ],
413
418
  onClick: () => {
414
419
  capture(ROZO_EVENTS.CHAIN_SELECTED, {
@@ -449,7 +454,7 @@ function getStellarTokenOptions(options, isDepositFlow, setSelectedStellarTokenO
449
454
  title,
450
455
  subtitle,
451
456
  icons: [
452
- jsx(TokenChainLogo, { token: option.balance.token }, getRozoTokenKey(option.balance.token)),
457
+ jsx(TokenChainLogo, { token: option.balance.token, nativeAsChainIcon: true }, getRozoTokenKey(option.balance.token)),
453
458
  ],
454
459
  onClick: () => {
455
460
  capture(ROZO_EVENTS.CHAIN_SELECTED, {
@@ -1 +1 @@
1
- {"version":3,"file":"useTokenOptions.js","sources":["../../../src/hooks/useTokenOptions.tsx"],"sourcesContent":[null],"names":["_jsx"],"mappings":"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"}
1
+ {"version":3,"file":"useTokenOptions.js","sources":["../../../src/hooks/useTokenOptions.tsx"],"sourcesContent":[null],"names":["_jsx"],"mappings":"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"}
@@ -1,9 +1,11 @@
1
- import { getKnownToken, normalizeTokenAddress } from '@rozoai/intent-common';
1
+ import { ethAddress } from 'viem';
2
+ import { normalizeSourceTokenAddress, sourceTokenChainId } from '../utils/token.js';
2
3
  import { useQuery } from '@tanstack/react-query';
3
4
  import { useMemo } from 'react';
4
5
  import { DEFAULT_ROZO_APP_ID } from '../constants/rozoConfig.js';
5
- import { formatTokenAmount } from '../utils/format.js';
6
+ import { formatTokenAmount, formatNativeInsufficientBalance } from '../utils/format.js';
6
7
  import { useSupportedChains } from './useSupportedChains.js';
8
+ import { isNativeToken } from '@rozoai/intent-common';
7
9
 
8
10
  /**
9
11
  * Wallet payment options. User picks one.
@@ -13,13 +15,18 @@ import { useSupportedChains } from './useSupportedChains.js';
13
15
  * 2. Filtering to only show currently supported chains and tokens
14
16
  *
15
17
  * CURRENTLY SUPPORTED CHAINS & TOKENS IN WALLET PAYMENT OPTIONS:
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)
18
+ * - Base (Chain ID: 8453) - USDC, native ETH
19
+ * - Polygon (Chain ID: 137) - USDC, native POL
20
+ * - Ethereum (Chain ID: 1) - USDC, native ETH
21
+ * - BSC (Chain ID: 56) - USDT, native BNB (when MugglePay app, BSC preferred, or user has BSC USDT balance, even if disabled)
22
+ * - Rozo Solana - USDC (native Solana USDC), native SOL
21
23
  * - Rozo Stellar - USDC/XLM (native Stellar tokens)
22
24
  *
25
+ * Native sources are opt-in per response: the SDK never synthesizes them, it
26
+ * only decides whether balances the proxy returns survive isSupported and the
27
+ * preferredTokens filter. EVM natives live in sourcePaymentTokens, not
28
+ * supportedTokens (see utils/token.ts).
29
+ *
23
30
  * Note: The SDK supports many more chains/tokens (see pay-common/src/chain.ts and token.ts)
24
31
  * but wallet payment options are currently filtered to the above for optimal user experience.
25
32
  */
@@ -40,9 +47,7 @@ function useWalletPaymentOptions({ trpc, address, usdRequired, destChainId, isDe
40
47
  const { chains, tokens } = useSupportedChains();
41
48
  const evmChainIds = useMemo(() => new Set(chains.filter((c) => c.type === "evm").map((c) => c.chainId)), [chains]);
42
49
  const { data, isLoading, refetch } = useQuery({
43
- enabled: address != null &&
44
- usdRequired != null &&
45
- destChainId != null,
50
+ enabled: address != null && usdRequired != null && destChainId != null,
46
51
  queryKey: [
47
52
  "walletPaymentOptions",
48
53
  address,
@@ -57,7 +62,10 @@ function useWalletPaymentOptions({ trpc, address, usdRequired, destChainId, isDe
57
62
  // Source of truth for Intent API calls: chain + token pairing.
58
63
  const evmPreferredTokens = (memoizedPreferredTokens ?? [])
59
64
  .filter((t) => evmChainIds.has(t.chainId))
60
- .map((t) => ({ chain: t.chainId, address: t.token }));
65
+ .map((t) => ({
66
+ chain: t.chainId,
67
+ address: isNativeToken(t.token) ? ethAddress : t.token,
68
+ }));
61
69
  // Backward-compat for local proxy implementations that still read this field.
62
70
  const evmPreferredTokenAddresses = evmPreferredTokens.map((t) => t.address);
63
71
  return trpc.getWalletPaymentOptions.query({
@@ -78,7 +86,9 @@ function useWalletPaymentOptions({ trpc, address, usdRequired, destChainId, isDe
78
86
  if (!data)
79
87
  return [];
80
88
  const isSupported = (o) => chains.some((c) => c.chainId === o.balance.token.chainId &&
81
- tokens.some((t) => t.token === o.balance.token.token));
89
+ tokens.some((t) => t.chainId === c.chainId &&
90
+ normalizeSourceTokenAddress(c.chainId, t.token) ===
91
+ normalizeSourceTokenAddress(c.chainId, o.balance.token.token)));
82
92
  // Hard filter, not a ranking hint: any balance not matching a
83
93
  // preferredTokens entry is dropped entirely. RozoPayButton's own type
84
94
  // docs describe preferredTokens as restricting wallet payment options
@@ -88,9 +98,9 @@ function useWalletPaymentOptions({ trpc, address, usdRequired, destChainId, isDe
88
98
  if (!memoizedPreferredTokens || memoizedPreferredTokens.length === 0) {
89
99
  return true;
90
100
  }
91
- return memoizedPreferredTokens.some((pt) => pt.chainId === o.balance.token.chainId &&
92
- normalizeTokenAddress(pt.chainId, pt.token) ===
93
- normalizeTokenAddress(o.balance.token.chainId, o.balance.token.token));
101
+ return memoizedPreferredTokens.some((pt) => sourceTokenChainId(pt.chainId) === sourceTokenChainId(o.balance.token.chainId) &&
102
+ normalizeSourceTokenAddress(pt.chainId, pt.token) ===
103
+ normalizeSourceTokenAddress(o.balance.token.chainId, o.balance.token.token));
94
104
  };
95
105
  return data
96
106
  .filter(isSupported)
@@ -101,9 +111,15 @@ function useWalletPaymentOptions({ trpc, address, usdRequired, destChainId, isDe
101
111
  ...item,
102
112
  required: { ...item.required, usd },
103
113
  };
104
- const destinationFiatISO = getKnownToken(item.balance.token.chainId, item.balance.token.token)?.fiatISO;
105
114
  if (item.balance.usd < usd) {
106
- value.disabledReason = `Balance too low: ${formatTokenAmount(item.balance.usd, 6)} ${destinationFiatISO}`;
115
+ const usdBalance = `$${formatTokenAmount(item.balance.usd, 2)}`;
116
+ if (isNativeToken(item.balance.token.token) &&
117
+ (!value.disabledReason || value.disabledReason.startsWith("Balance too low:"))) {
118
+ value.disabledReason = formatNativeInsufficientBalance(item.balance);
119
+ }
120
+ else if (!value.disabledReason) {
121
+ value.disabledReason = `Balance too low: ${usdBalance}`;
122
+ }
107
123
  }
108
124
  return value;
109
125
  });
@@ -1 +1 @@
1
- {"version":3,"file":"useWalletPaymentOptions.js","sources":["../../../src/hooks/useWalletPaymentOptions.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"useWalletPaymentOptions.js","sources":["../../../src/hooks/useWalletPaymentOptions.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
@@ -1,7 +1,8 @@
1
- import { TokenSymbol, FeeType, getOrderDestChainId, getKnownToken, rozoSolana, baseEURC, baseUSDC, rozoStellar, generateIntentTitle, rozoStellarUSDC, rozoStellarEURC, mergedMetadata, solana, stellar } from '@rozoai/intent-common';
2
- import { parseUnits, formatUnits, getAddress } from 'viem';
1
+ import { TokenSymbol, FeeType, getOrderDestChainId, getKnownToken, solana, solanaSOL, rozoSolana, baseEURC, baseUSDC, rozoStellar, generateIntentTitle, mergedMetadata, stellar, supportedTokens, supportedPayoutTokens } from '@rozoai/intent-common';
2
+ import { parseUnits, formatUnits } from 'viem';
3
3
  import { DEFAULT_ROZO_APP_ID } from '../constants/rozoConfig.js';
4
- import { convertPreferredSymbolsToTokens } from '../utils/token.js';
4
+ import { tokenBaseAmountToDecimalString } from '../utils/format.js';
5
+ import { convertPreferredSymbolsToTokens, normalizeSourceTokenAddress, sourceTokenChainId } from '../utils/token.js';
5
6
 
6
7
  /**
7
8
  * Round a decimal amount string to `decimals` fraction digits, string-only
@@ -37,6 +38,17 @@ function roundDecimalString(value, decimals) {
37
38
  const newFrac = carried.slice(carried.length - decimals);
38
39
  return decimals === 0 ? newWhole : `${newWhole}.${newFrac}`;
39
40
  }
41
+ /** Direct settlement only applies to identical supported Stellar assets. */
42
+ function resolveStellarDirectIntent(destChainId, destTokenAddress, sourceChainId, sourceTokenAddress, requestedIntent) {
43
+ const isSameSupportedToken = destChainId === rozoStellar.chainId &&
44
+ sourceChainId === rozoStellar.chainId &&
45
+ destTokenAddress === sourceTokenAddress &&
46
+ supportedTokens.get(rozoStellar.chainId)?.some((token) => token.token === destTokenAddress) &&
47
+ supportedPayoutTokens.get(rozoStellar.chainId)?.some((token) => token.token === destTokenAddress);
48
+ if (isSameSupportedToken)
49
+ return "stellar_direct";
50
+ return requestedIntent === "stellar_direct" ? undefined : requestedIntent;
51
+ }
40
52
  /**
41
53
  * Resolve the final destination address from PayParams, handling EVM, Solana
42
54
  * and Stellar destinations in a single place.
@@ -54,13 +66,13 @@ function resolveDestinationAddress(payParams) {
54
66
  * payId mode has no RozoPayButton props to read preferredTokens from, so
55
67
  * source stablecoin filtering must mirror the destination: EURC destination
56
68
  * → source restricted to EURC; any other destination → source restricted to
57
- * USDC/USDT (EURC balances can't fund a USD destination, and vice versa).
69
+ * USDC/USDT/USDT0 (EURC balances can't fund a USD destination, and vice versa).
58
70
  * Non-stablecoin source options (native tokens etc.) are unaffected — this
59
- * filter only ever narrows within [USDC, USDT, EURC].
71
+ * filter only ever narrows within [USDC, USDT, USDT0, EURC].
60
72
  */
61
73
  function derivePayIdPreferredTokens(destTokenSymbol, preferredSymbolOverride) {
62
74
  const preferredSymbol = preferredSymbolOverride ??
63
- (destTokenSymbol === TokenSymbol.EURC ? [TokenSymbol.EURC] : [TokenSymbol.USDC, TokenSymbol.USDT]);
75
+ (destTokenSymbol === TokenSymbol.EURC ? [TokenSymbol.EURC] : [TokenSymbol.USDC, TokenSymbol.USDT, TokenSymbol.USDT0]);
64
76
  return {
65
77
  preferredSymbol,
66
78
  preferredTokens: convertPreferredSymbolsToTokens(preferredSymbol, undefined),
@@ -104,6 +116,12 @@ function buildCreatePaymentPayload(ctx) {
104
116
  rawAmountUnitsStr = payParams.toUnits ?? "0";
105
117
  }
106
118
  const rawAmountAtomic = parseUnits(roundDecimalString(rawAmountUnitsStr, tokenDecimals), tokenDecimals);
119
+ // Source amount is token-denominated and differs from the destination for
120
+ // native/cross-chain payments. Preserve the API quote without Number()
121
+ // coercion so a payment is never silently rounded.
122
+ const sourceAmountUnitsStr = walletOption?.required.amount != null
123
+ ? tokenBaseAmountToDecimalString(walletOption.required.amount, walletOption.required.token.decimals)
124
+ : undefined;
107
125
  // --------------------------------------------------
108
126
  // Preferred payment method (what user will pay with)
109
127
  // --------------------------------------------------
@@ -112,9 +130,12 @@ function buildCreatePaymentPayload(ctx) {
112
130
  if (walletOption) {
113
131
  preferredChain = walletOption.required.token.chainId;
114
132
  preferredTokenAddress = walletOption.required.token.token;
115
- // Special-case: Solana wallet should pay into Rozo Solana bridge chain
116
- if (preferredChain === rozoSolana.chainId) {
133
+ // The proxy uses 501 locally; Intents quotes native SOL on 900.
134
+ if (preferredChain === solana.chainId &&
135
+ walletOption.required.token.symbol === "SOL" &&
136
+ normalizeSourceTokenAddress(preferredChain, preferredTokenAddress) === solanaSOL.token) {
117
137
  preferredChain = rozoSolana.chainId;
138
+ preferredTokenAddress = solanaSOL.token;
118
139
  }
119
140
  }
120
141
  else {
@@ -147,21 +168,7 @@ function buildCreatePaymentPayload(ctx) {
147
168
  ...order.userMetadata,
148
169
  }
149
170
  : {};
150
- // --------------------------------------------------
151
- // Stellar Direct Settlement: auto-detect same-chain USDC→USDC
152
- // --------------------------------------------------
153
- // When both source and destination are Stellar USDC, the backend can settle
154
- // directly (one on-chain transfer, 0 fee, no hub hop). We opt-in by sending
155
- // intent: "stellar_direct". Consumer can also override via payParams.intent.
156
- // Both destination and source must be Stellar with the SAME token (USDC or EURC)
157
- const isStellarSameToken = toChain === rozoStellar.chainId &&
158
- preferredChain === rozoStellar.chainId &&
159
- toTokenAddress.toLowerCase() === preferredTokenAddress.toLowerCase();
160
- const isSupportedStellarToken = toTokenAddress.toLowerCase() === rozoStellarUSDC.token.toLowerCase() ||
161
- toTokenAddress.toLowerCase() === rozoStellarEURC.token.toLowerCase();
162
- const isStellarDirect = isStellarSameToken && isSupportedStellarToken;
163
- // When isStellarDirect, always force intent to "stellar_direct" regardless of consumer override
164
- const intent = isStellarDirect ? "stellar_direct" : payParams.intent;
171
+ const intent = resolveStellarDirectIntent(toChain, toTokenAddress, preferredChain, preferredTokenAddress, payParams.intent);
165
172
  const payload = {
166
173
  apiVersion,
167
174
  title,
@@ -173,6 +180,7 @@ function buildCreatePaymentPayload(ctx) {
173
180
  preferredChain,
174
181
  preferredTokenAddress,
175
182
  toUnits: formatUnits(rawAmountAtomic, tokenDecimals),
183
+ ...(sourceAmountUnitsStr ? { preferredAmountUnits: sourceAmountUnitsStr } : {}),
176
184
  ...(isAbleToIncludeReceiverMemo && payParams.receiverMemo
177
185
  ? { receiverMemo: payParams.receiverMemo }
178
186
  : {}),
@@ -193,9 +201,7 @@ function buildDepositWalletOption(option, fees, fallbackUsd) {
193
201
  token: option.token.token,
194
202
  symbol: option.token.symbol,
195
203
  },
196
- usd: fees?.source?.amount != null
197
- ? parseFloat(fees.source.amount)
198
- : fallbackUsd,
204
+ usd: fees?.source?.amount != null ? parseFloat(fees.source.amount) : fallbackUsd,
199
205
  },
200
206
  fees: {
201
207
  usd: fees?.source?.fee != null ? parseFloat(fees.source.fee) : 0,
@@ -245,20 +251,17 @@ function resolveWalletPaymentAmount(order, option) {
245
251
  throw new Error("[PAY TOKEN] hydrated order has no source quote");
246
252
  }
247
253
  const token = option.required.token;
248
- const normalizeChainId = (chainId) => {
249
- if (chainId === solana.chainId)
250
- return rozoSolana.chainId;
251
- if (chainId === stellar.chainId)
252
- return rozoStellar.chainId;
253
- return chainId;
254
- };
255
- const normalizeTokenAddress = (address) => address.startsWith("0x") ? getAddress(address) : address;
254
+ const normalizeChainId = (chainId) => chainId === stellar.chainId ? rozoStellar.chainId : sourceTokenChainId(chainId);
256
255
  if (normalizeChainId(quote.chainId) !== normalizeChainId(token.chainId) ||
257
- normalizeTokenAddress(quote.tokenAddress) !== normalizeTokenAddress(token.token)) {
256
+ normalizeSourceTokenAddress(quote.chainId, quote.tokenAddress) !==
257
+ normalizeSourceTokenAddress(token.chainId, token.token)) {
258
258
  throw new Error("[PAY TOKEN] hydrated source quote does not match selected token");
259
259
  }
260
- return parseUnits(quote.amount, token.decimals);
260
+ const amount = parseUnits(quote.amount, token.decimals);
261
+ if (amount <= 0n)
262
+ throw new Error("[PAY TOKEN] hydrated source quote amount must be positive");
263
+ return amount;
261
264
  }
262
265
 
263
- export { buildCreatePaymentPayload, buildDepositWalletOption, derivePayIdPreferredTokens, resolveDepositSourceAmount, resolveDestinationAddress, resolveWalletPaymentAmount, withWalletSourceQuote };
266
+ export { buildCreatePaymentPayload, buildDepositWalletOption, derivePayIdPreferredTokens, resolveDepositSourceAmount, resolveDestinationAddress, resolveStellarDirectIntent, resolveWalletPaymentAmount, withWalletSourceQuote };
264
267
  //# sourceMappingURL=createPaymentPayload.js.map