0xtrails 0.6.2 → 0.6.4

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 (44) hide show
  1. package/dist/{ccip-CZfykYU7.js → ccip-B4OF5VSU.js} +1 -1
  2. package/dist/constants.d.ts +1 -0
  3. package/dist/constants.d.ts.map +1 -1
  4. package/dist/{index-S9pphnT9.js → index-Bja6TsJC.js} +18023 -17983
  5. package/dist/index.js +118 -115
  6. package/dist/prepareSend.d.ts.map +1 -1
  7. package/dist/transactionIntent/handlers/crossChain.d.ts +2 -1
  8. package/dist/transactionIntent/handlers/crossChain.d.ts.map +1 -1
  9. package/dist/transactionIntent/handlers/sameChainSameToken.d.ts +2 -1
  10. package/dist/transactionIntent/handlers/sameChainSameToken.d.ts.map +1 -1
  11. package/dist/transactionIntent/quote/quoteHelpers.d.ts +1 -1
  12. package/dist/transactionIntent/quote/quoteHelpers.d.ts.map +1 -1
  13. package/dist/transactionIntent/types.d.ts +1 -0
  14. package/dist/transactionIntent/types.d.ts.map +1 -1
  15. package/dist/widget/components/ClassicSwap.d.ts.map +1 -1
  16. package/dist/widget/components/FeeOption.d.ts +6 -1
  17. package/dist/widget/components/FeeOption.d.ts.map +1 -1
  18. package/dist/widget/components/FeeOptions.d.ts.map +1 -1
  19. package/dist/widget/components/Pay.d.ts.map +1 -1
  20. package/dist/widget/components/PoolDeposit.d.ts.map +1 -1
  21. package/dist/widget/hooks/useQuote.d.ts +2 -1
  22. package/dist/widget/hooks/useQuote.d.ts.map +1 -1
  23. package/dist/widget/hooks/useSendForm.d.ts.map +1 -1
  24. package/dist/widget/index.js +1 -1
  25. package/dist/widget/providers/TrailsProvider.d.ts +2 -0
  26. package/dist/widget/providers/TrailsProvider.d.ts.map +1 -1
  27. package/dist/widget/widget.d.ts +1 -0
  28. package/dist/widget/widget.d.ts.map +1 -1
  29. package/package.json +2 -2
  30. package/src/constants.ts +5 -0
  31. package/src/prepareSend.ts +3 -0
  32. package/src/transactionIntent/handlers/crossChain.ts +3 -0
  33. package/src/transactionIntent/handlers/sameChainSameToken.ts +3 -0
  34. package/src/transactionIntent/quote/quoteHelpers.ts +7 -2
  35. package/src/transactionIntent/types.ts +1 -0
  36. package/src/widget/components/ClassicSwap.tsx +10 -1
  37. package/src/widget/components/FeeOption.tsx +52 -38
  38. package/src/widget/components/FeeOptions.tsx +57 -10
  39. package/src/widget/components/Pay.tsx +23 -8
  40. package/src/widget/components/PoolDeposit.tsx +10 -1
  41. package/src/widget/hooks/useQuote.ts +4 -0
  42. package/src/widget/hooks/useSendForm.ts +6 -0
  43. package/src/widget/providers/TrailsProvider.tsx +7 -1
  44. package/src/widget/widget.tsx +1 -0
@@ -1 +1 @@
1
- {"version":3,"file":"useQuote.d.ts","sourceRoot":"","sources":["../../../src/widget/hooks/useQuote.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"useQuote.d.ts","sourceRoot":"","sources":["../../../src/widget/hooks/useQuote.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"useSendForm.d.ts","sourceRoot":"","sources":["../../../src/widget/hooks/useSendForm.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"useSendForm.d.ts","sourceRoot":"","sources":["../../../src/widget/hooks/useSendForm.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { Z as s, a2 as e, a1 as l, c as o } from "../index-S9pphnT9.js";
1
+ import { Z as s, a2 as e, a1 as l, c as o } from "../index-Bja6TsJC.js";
2
2
  export {
3
3
  s as TrailsProvider,
4
4
  e as TrailsWidget,
@@ -5,6 +5,7 @@ export interface TrailsConfig {
5
5
  sequenceIndexerUrl: string;
6
6
  sequenceNodeGatewayUrl: string;
7
7
  sequenceMetadataUrl: string;
8
+ sequenceApiUrl: string;
8
9
  walletConnectProjectId: string;
9
10
  slippageTolerance: string | number;
10
11
  debug: boolean;
@@ -18,6 +19,7 @@ export interface TrailsProviderProps {
18
19
  sequenceIndexerUrl?: string;
19
20
  sequenceNodeGatewayUrl?: string;
20
21
  sequenceMetadataUrl?: string;
22
+ sequenceApiUrl?: string;
21
23
  walletConnectProjectId?: string;
22
24
  slippageTolerance?: string | number;
23
25
  debug?: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"TrailsProvider.d.ts","sourceRoot":"","sources":["../../../src/widget/providers/TrailsProvider.tsx"],"names":[],"mappings":"AAmBA,MAAM,MAAM,WAAW,GAAG,MAAM,GAAG,KAAK,GAAG,OAAO,GAAG,eAAe,CAAA;AAEpE,MAAM,WAAW,YAAY;IAC3B,YAAY,EAAE,MAAM,CAAA;IACpB,YAAY,EAAE,MAAM,CAAA;IACpB,kBAAkB,EAAE,MAAM,CAAA;IAC1B,sBAAsB,EAAE,MAAM,CAAA;IAC9B,mBAAmB,EAAE,MAAM,CAAA;IAC3B,sBAAsB,EAAE,MAAM,CAAA;IAC9B,iBAAiB,EAAE,MAAM,GAAG,MAAM,CAAA;IAClC,KAAK,EAAE,OAAO,CAAA;IACd,UAAU,EAAE,MAAM,GAAG,SAAS,CAAA;CAC/B;AAED,MAAM,WAAW,mBAAmB;IAClC,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;IACzB,MAAM,EAAE;QACN,YAAY,EAAE,MAAM,CAAA;QACpB,YAAY,CAAC,EAAE,MAAM,CAAA;QACrB,kBAAkB,CAAC,EAAE,MAAM,CAAA;QAC3B,sBAAsB,CAAC,EAAE,MAAM,CAAA;QAC/B,mBAAmB,CAAC,EAAE,MAAM,CAAA;QAC5B,sBAAsB,CAAC,EAAE,MAAM,CAAA;QAC/B,iBAAiB,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;QACnC,KAAK,CAAC,EAAE,OAAO,CAAA;KAChB,CAAA;CACF;AAED,eAAO,MAAM,aAAa,8CAA2C,CAAA;AAErE,eAAO,MAAM,cAAc,GAAI,sBAAsB,mBAAmB,4CA+DvE,CAAA;AAED,eAAO,MAAM,SAAS,QAAO,QAAQ,CAAC,YAAY,CAQjD,CAAA"}
1
+ {"version":3,"file":"TrailsProvider.d.ts","sourceRoot":"","sources":["../../../src/widget/providers/TrailsProvider.tsx"],"names":[],"mappings":"AAoBA,MAAM,MAAM,WAAW,GAAG,MAAM,GAAG,KAAK,GAAG,OAAO,GAAG,eAAe,CAAA;AAEpE,MAAM,WAAW,YAAY;IAC3B,YAAY,EAAE,MAAM,CAAA;IACpB,YAAY,EAAE,MAAM,CAAA;IACpB,kBAAkB,EAAE,MAAM,CAAA;IAC1B,sBAAsB,EAAE,MAAM,CAAA;IAC9B,mBAAmB,EAAE,MAAM,CAAA;IAC3B,cAAc,EAAE,MAAM,CAAA;IACtB,sBAAsB,EAAE,MAAM,CAAA;IAC9B,iBAAiB,EAAE,MAAM,GAAG,MAAM,CAAA;IAClC,KAAK,EAAE,OAAO,CAAA;IACd,UAAU,EAAE,MAAM,GAAG,SAAS,CAAA;CAC/B;AAED,MAAM,WAAW,mBAAmB;IAClC,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;IACzB,MAAM,EAAE;QACN,YAAY,EAAE,MAAM,CAAA;QACpB,YAAY,CAAC,EAAE,MAAM,CAAA;QACrB,kBAAkB,CAAC,EAAE,MAAM,CAAA;QAC3B,sBAAsB,CAAC,EAAE,MAAM,CAAA;QAC/B,mBAAmB,CAAC,EAAE,MAAM,CAAA;QAC5B,cAAc,CAAC,EAAE,MAAM,CAAA;QACvB,sBAAsB,CAAC,EAAE,MAAM,CAAA;QAC/B,iBAAiB,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;QACnC,KAAK,CAAC,EAAE,OAAO,CAAA;KAChB,CAAA;CACF;AAED,eAAO,MAAM,aAAa,8CAA2C,CAAA;AAErE,eAAO,MAAM,cAAc,GAAI,sBAAsB,mBAAmB,4CAkEvE,CAAA;AAED,eAAO,MAAM,SAAS,QAAO,QAAQ,CAAC,YAAY,CAQjD,CAAA"}
@@ -99,6 +99,7 @@ export type TrailsWidgetProps = {
99
99
  appImageUrl?: string;
100
100
  appDescription?: string;
101
101
  payMessage?: string;
102
+ isSmartWallet?: boolean;
102
103
  };
103
104
  export interface TrailsWidgetRef {
104
105
  openModal: () => void;
@@ -1 +1 @@
1
- {"version":3,"file":"widget.d.ts","sourceRoot":"","sources":["../../src/widget/widget.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"widget.d.ts","sourceRoot":"","sources":["../../src/widget/widget.tsx"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "0xtrails",
3
- "version": "0.6.2",
3
+ "version": "0.6.4",
4
4
  "description": "SDK for Trails",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -32,7 +32,7 @@
32
32
  "@0xsequence/network": "^2.3.30",
33
33
  "@0xsequence/sessions": "^2.3.30",
34
34
  "@0xsequence/signhub": "^2.3.30",
35
- "@0xsequence/trails-api": "^0.5.1",
35
+ "@0xsequence/trails-api": "^0.5.3",
36
36
  "@0xsequence/wallet-primitives": "^0.0.0-20250917144328",
37
37
  "@aave/react": "^0.7.0",
38
38
  "@databeat/tracker": "^0.9.3",
package/src/constants.ts CHANGED
@@ -32,6 +32,11 @@ export const PROD_SEQUENCE_INDEXER_URL = "https://indexer.sequence.app"
32
32
  export const PROD_SEQUENCE_METADATA_URL = "https://metadata.sequence.app"
33
33
  export const PROD_TRAILS_API_URL = "https://trails-api.sequence.app"
34
34
 
35
+ // NOTE: sequence api is not used, however we pass through this context to
36
+ // the sequence hooks config in the case of a double nesting of context
37
+ // when trails is used inside of the sequence wallet app.
38
+ export const PROD_SEQUENCE_API_URL = "https://api.sequence.app"
39
+
35
40
  export const DATABEAT_SERVER = "https://databeat.sequence.app"
36
41
  export const DATABEAT_KEY =
37
42
  "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJhcHAiOiJzZXEtdHJhaWxzIiwiZXhwIjoyMDI4MTIwOTg4fQ.KZIjEziul_nZ4kjEXudvfqeWmVekc5ftXKx_EqDrmZU"
@@ -85,6 +85,7 @@ export async function prepareSend(
85
85
  executeIntentFn,
86
86
  sequenceProjectAccessKey,
87
87
  sequenceIndexerUrl,
88
+ isSmartWallet,
88
89
  } = options
89
90
  let { sourceTokenPriceUsd, destinationTokenPriceUsd } = options
90
91
 
@@ -412,6 +413,7 @@ export async function prepareSend(
412
413
  executeIntentFn,
413
414
  sequenceProjectAccessKey,
414
415
  sequenceIndexerUrl,
416
+ isSmartWallet,
415
417
  })
416
418
  }
417
419
 
@@ -455,6 +457,7 @@ export async function prepareSend(
455
457
  executeIntentFn,
456
458
  sequenceProjectAccessKey,
457
459
  sequenceIndexerUrl,
460
+ isSmartWallet,
458
461
  })
459
462
  }
460
463
 
@@ -130,6 +130,7 @@ export async function handleCrossChain({
130
130
  executeIntentFn,
131
131
  sequenceProjectAccessKey,
132
132
  sequenceIndexerUrl,
133
+ isSmartWallet,
133
134
  }: {
134
135
  mainSignerAddress: string
135
136
  originChainId: number
@@ -174,6 +175,7 @@ export async function handleCrossChain({
174
175
  }) => Promise<ExecuteIntentResponse>
175
176
  sequenceProjectAccessKey?: string
176
177
  sequenceIndexerUrl?: string
178
+ isSmartWallet?: boolean
177
179
  }): Promise<PrepareSendReturn> {
178
180
  const salt = Date.now().toString()
179
181
 
@@ -193,6 +195,7 @@ export async function handleCrossChain({
193
195
  quoteProvider,
194
196
  undefined, // connector - not available in this context
195
197
  walletId, // walletId - use this to check for Sequence wallets
198
+ isSmartWallet, // isSmartWallet - force onlyNativeGasFee when true
196
199
  )
197
200
 
198
201
  logger.console.log(
@@ -72,6 +72,7 @@ export async function handleSameChainSameToken({
72
72
  executeIntentFn,
73
73
  sequenceProjectAccessKey,
74
74
  sequenceIndexerUrl,
75
+ isSmartWallet,
75
76
  }: {
76
77
  mainSignerAddress: string
77
78
  originTokenAddress: string
@@ -108,6 +109,7 @@ export async function handleSameChainSameToken({
108
109
  }) => Promise<ExecuteIntentResponse>
109
110
  sequenceProjectAccessKey?: string
110
111
  sequenceIndexerUrl?: string
112
+ isSmartWallet?: boolean
111
113
  }): Promise<PrepareSendReturn> {
112
114
  logger.console.log("[trails-sdk] isToSameToken && isToSameChain")
113
115
  const testnet = isTestnetDebugMode()
@@ -151,6 +153,7 @@ export async function handleSameChainSameToken({
151
153
  quoteProvider || "",
152
154
  undefined, // connector - not available in this context
153
155
  walletId, // walletId - use this to check for Sequence wallets
156
+ isSmartWallet, // isSmartWallet - force onlyNativeGasFee when true
154
157
  )
155
158
 
156
159
  logger.console.log(
@@ -25,6 +25,7 @@ export async function getIntentArgs(
25
25
  provider?: string | null,
26
26
  connector?: Connector | undefined,
27
27
  walletId?: string | undefined,
28
+ isSmartWallet?: boolean,
28
29
  ): Promise<QuoteIntentRequest> {
29
30
  const hasCustomCalldata = getIsCustomCalldata(destinationCalldata)
30
31
 
@@ -44,12 +45,16 @@ export async function getIntentArgs(
44
45
  originChainId,
45
46
  )
46
47
 
47
- // Set onlyNativeGasFee to true if wallet is Sequence or smart contract
48
- const onlyNativeGasFee = isSequence || isSmartContract
48
+ // Set onlyNativeGasFee to true if:
49
+ // 1. isSmartWallet prop is explicitly set to true, OR
50
+ // 2. wallet is Sequence or smart contract
51
+ const onlyNativeGasFee =
52
+ isSmartWallet === true || isSequence || isSmartContract
49
53
 
50
54
  logger.console.log("[trails-sdk] Wallet check for onlyNativeGasFee:", {
51
55
  isSequence,
52
56
  isSmartContract,
57
+ isSmartWallet,
53
58
  onlyNativeGasFee,
54
59
  walletId,
55
60
  connectorName: connector?.name,
@@ -64,6 +64,7 @@ export type PrepareSendOptions = {
64
64
  selectedFeeOption?: FeeOption | null
65
65
  walletId?: string
66
66
  abortSignal?: AbortSignal
67
+ isSmartWallet?: boolean
67
68
  // Optional mutation callbacks for React Query integration
68
69
  commitIntentFn?: (intent: Intent) => Promise<CommitIntentResponse>
69
70
  executeIntentFn?: (params: {
@@ -30,6 +30,8 @@ import { Identicon } from "./Identicon.js"
30
30
  import { truncateAddress } from "../../utils.js"
31
31
  import { DynamicSizeInputField } from "./DynamicSizeInputField.js"
32
32
  import { FeeOptions } from "./FeeOptions.js"
33
+ import { isFeeOptionDisabled } from "./FeeOption.js"
34
+ import type { ProcessedFeeOption } from "../hooks/useSelectedFeeOption.js"
33
35
 
34
36
  interface ClassicSwapProps {
35
37
  selectedToken: Token | null
@@ -802,7 +804,14 @@ export const ClassicSwap: React.FC<ClassicSwapProps> = ({
802
804
  isLoadingQuote ||
803
805
  !prepareSendQuote ||
804
806
  prepareSendQuote?.noSufficientBalance ||
805
- isSameTokenWithoutCustomCalldata
807
+ isSameTokenWithoutCustomCalldata ||
808
+ selectedFeeOption
809
+ ? isFeeOptionDisabled(selectedFeeOption as ProcessedFeeOption, {
810
+ originToken: originToken!,
811
+ originTokenBalance: originToken?.balance ?? "0",
812
+ originTokenAmount: sellAmount,
813
+ })
814
+ : false
806
815
  }
807
816
  className="w-full font-semibold py-4 px-4 trails-border-radius-button transition-colors bg-blue-500 hover:bg-blue-600 disabled:bg-gray-300 text-white disabled:text-gray-500 disabled:cursor-not-allowed cursor-pointer relative"
808
817
  >
@@ -11,7 +11,7 @@ import { logger } from "../../logger.js"
11
11
  interface FeeOptionProps {
12
12
  option: ProcessedFeeOption
13
13
  isSelected: boolean
14
- onClick: () => void
14
+ onClick?: () => void
15
15
  chainId?: number
16
16
  originTokenInfo?: {
17
17
  originToken: Token
@@ -20,6 +20,46 @@ interface FeeOptionProps {
20
20
  }
21
21
  }
22
22
 
23
+ export const isFeeOptionDisabled = (
24
+ option: ProcessedFeeOption,
25
+ originTokenInfo?: {
26
+ originToken: Token
27
+ originTokenBalance: string
28
+ originTokenAmount: string
29
+ },
30
+ ) => {
31
+ try {
32
+ const originTokenAddress = originTokenInfo?.originToken?.contractAddress
33
+ const optionAddress = option.tokenAddress
34
+ const isOriginFeeOption =
35
+ originTokenAddress &&
36
+ optionAddress &&
37
+ normalizeAddress(originTokenAddress) === normalizeAddress(optionAddress)
38
+
39
+ let isInsufficientOriginBalance = false
40
+
41
+ if (isOriginFeeOption && originTokenInfo) {
42
+ const balanceInWei = BigInt(originTokenInfo.originTokenBalance ?? "0")
43
+ const originTokenAmountInWei = parseUnits(
44
+ originTokenInfo.originTokenAmount ?? "0",
45
+ originTokenInfo.originToken?.contractInfo?.decimals ?? 18,
46
+ )
47
+ const feeAmountInWei = BigInt(option.amount ?? "0")
48
+
49
+ isInsufficientOriginBalance =
50
+ originTokenAmountInWei + feeAmountInWei > balanceInWei
51
+ }
52
+
53
+ return option.notEnoughBalance || isInsufficientOriginBalance
54
+ } catch (error) {
55
+ logger.console.error(
56
+ "[trails-sdk] [FEE-OPTION] error checking if fee option is disabled",
57
+ error,
58
+ )
59
+ return true
60
+ }
61
+ }
62
+
23
63
  export const FeeOption: React.FC<FeeOptionProps> = ({
24
64
  option,
25
65
  isSelected,
@@ -28,50 +68,24 @@ export const FeeOption: React.FC<FeeOptionProps> = ({
28
68
  originTokenInfo,
29
69
  }) => {
30
70
  const isDisabled = useMemo(() => {
31
- try {
32
- const originTokenAddress = originTokenInfo?.originToken?.contractAddress
33
- const optionAddress = option.tokenAddress
34
- const isOriginFeeOption =
35
- originTokenAddress &&
36
- optionAddress &&
37
- normalizeAddress(originTokenAddress) === normalizeAddress(optionAddress)
38
-
39
- let isInsufficientOriginBalance = false
40
-
41
- if (isOriginFeeOption && originTokenInfo) {
42
- const balanceInWei = BigInt(originTokenInfo.originTokenBalance ?? "0")
43
- const originTokenAmountInWei = parseUnits(
44
- originTokenInfo.originTokenAmount ?? "0",
45
- originTokenInfo.originToken?.contractInfo?.decimals ?? 18,
46
- )
47
- const feeAmountInWei = BigInt(option.amount ?? "0")
48
-
49
- isInsufficientOriginBalance =
50
- originTokenAmountInWei + feeAmountInWei > balanceInWei
51
- }
52
-
53
- return option.notEnoughBalance || isInsufficientOriginBalance
54
- } catch (error) {
55
- logger.console.error(
56
- "[trails-sdk] [FEE-OPTION] error checking if fee option is disabled",
57
- error,
58
- )
59
- return true
60
- }
71
+ return isFeeOptionDisabled(option, originTokenInfo)
61
72
  }, [originTokenInfo, option])
62
73
 
74
+ const isClickable = Boolean(onClick) && !isDisabled
63
75
  const button = (
64
76
  <button
65
77
  type="button"
66
- className={`w-full flex items-center justify-between p-1.5 trails-border-radius-input border transition-colors ${
78
+ className={`w-full flex items-center justify-between p-1.5 trails-border-radius-input transition-colors ${
67
79
  isDisabled
68
- ? "cursor-not-allowed opacity-50 bg-gray-100 dark:bg-gray-800 border-gray-300 dark:border-gray-600"
69
- : isSelected
70
- ? "cursor-pointer trails-bg-primary/10 border-blue-500 bg-blue-50 dark:bg-blue-900/20"
71
- : "cursor-pointer trails-bg-card trails-border-primary hover:trails-hover-bg"
80
+ ? "border cursor-not-allowed opacity-50 bg-gray-100 dark:bg-gray-800 border-gray-300 dark:border-gray-600"
81
+ : !isClickable
82
+ ? "cursor-default trails-bg-card"
83
+ : isSelected
84
+ ? "border cursor-pointer trails-bg-primary/10 border-blue-500 bg-blue-50 dark:bg-blue-900/20"
85
+ : "border cursor-pointer trails-bg-card trails-border-primary hover:trails-hover-bg"
72
86
  }`}
73
- onClick={isDisabled ? undefined : onClick}
74
- disabled={isDisabled}
87
+ onClick={isClickable ? onClick : undefined}
88
+ disabled={isDisabled || !isClickable}
75
89
  >
76
90
  <div className="flex items-center space-x-2">
77
91
  <TokenImage
@@ -6,7 +6,10 @@ import { useSelectedFundMethod } from "../hooks/useSelectedFundMethod.js"
6
6
  import type { ProcessedFeeOption } from "../hooks/useSelectedFeeOption.js"
7
7
  import { logger } from "../../logger.js"
8
8
  import type { FeeOption } from "@0xsequence/trails-api"
9
- import { FeeOption as FeeOptionComponent } from "./FeeOption.js"
9
+ import {
10
+ FeeOption as FeeOptionComponent,
11
+ isFeeOptionDisabled,
12
+ } from "./FeeOption.js"
10
13
  import { isNativeToken, normalizeAddress } from "../../utils.js"
11
14
  import type { Token } from "../hooks/useOriginSelectedToken.js"
12
15
 
@@ -90,7 +93,11 @@ export const FeeOptions: React.FC<FeeOptionsProps> = ({
90
93
  const selectedOption = getSelectedOption()
91
94
 
92
95
  // Use nativeGasOption as fallback when selectedOption is null/undefined
93
- const displayOption = selectedOption || nativeGasOption
96
+ const displayOption = selectedOption
97
+ ? isFeeOptionDisabled(selectedOption as ProcessedFeeOption, originTokenInfo)
98
+ ? nativeGasOption
99
+ : selectedOption
100
+ : nativeGasOption
94
101
 
95
102
  const handleFeeOptionSelect = (option: FeeOption) => {
96
103
  // For native gas (zero/ETH address), set to null to trigger non-gasless flow
@@ -111,6 +118,35 @@ export const FeeOptions: React.FC<FeeOptionsProps> = ({
111
118
  setIsOpen(false)
112
119
  }
113
120
 
121
+ if (processedFeeOptions.length === 1 && selectedOption) {
122
+ return (
123
+ <div className="space-y-1" ref={accordionRef}>
124
+ <div className="p-2">
125
+ <div className="flex justify-between items-center mb-2">
126
+ <div className="text-xs font-medium trails-text-primary">
127
+ Gas Fee Option
128
+ </div>
129
+ </div>
130
+ <div className="mt-2 space-y-1">
131
+ <FeeOptionComponent
132
+ key={`${selectedOption?.tokenAddress}-0`}
133
+ option={selectedOption as ProcessedFeeOption}
134
+ isSelected={
135
+ isNativeToken(selectedOption?.tokenAddress)
136
+ ? selectedFeeOption === null ||
137
+ isNativeToken(selectedFeeOption?.tokenAddress)
138
+ : normalizeAddress(selectedFeeOption?.tokenAddress) ===
139
+ normalizeAddress(selectedOption?.tokenAddress)
140
+ }
141
+ chainId={selectedOption?.chainId || chainId}
142
+ originTokenInfo={originTokenInfo}
143
+ />
144
+ </div>
145
+ </div>
146
+ </div>
147
+ )
148
+ }
149
+
114
150
  return (
115
151
  <div className="space-y-1" ref={accordionRef}>
116
152
  <div className="p-2">
@@ -126,8 +162,17 @@ export const FeeOptions: React.FC<FeeOptionsProps> = ({
126
162
  {/* Accordion Header */}
127
163
  <button
128
164
  type="button"
129
- onClick={() => setIsOpen(!isOpen)}
130
- className="w-full flex items-center justify-between p-1.5 trails-border-radius-input border trails-border-primary hover:trails-hover-bg transition-colors cursor-pointer"
165
+ onClick={
166
+ processedFeeOptions.length === 1
167
+ ? undefined
168
+ : () => setIsOpen(!isOpen)
169
+ }
170
+ disabled={processedFeeOptions.length === 1}
171
+ className={`w-full flex items-center justify-between p-1.5 trails-border-radius-input border trails-border-primary transition-colors ${
172
+ processedFeeOptions.length === 1
173
+ ? "cursor-default"
174
+ : "hover:trails-hover-bg cursor-pointer"
175
+ }`}
131
176
  >
132
177
  <div className="flex items-center space-x-2">
133
178
  {displayOption && (
@@ -154,16 +199,18 @@ export const FeeOptions: React.FC<FeeOptionsProps> = ({
154
199
  </div>
155
200
  </div>
156
201
  )}
157
- <ChevronDown
158
- className={`w-3 h-3 trails-text-muted transition-transform ${
159
- isOpen ? "transform rotate-180" : ""
160
- }`}
161
- />
202
+ {processedFeeOptions.length > 1 && (
203
+ <ChevronDown
204
+ className={`w-3 h-3 trails-text-muted transition-transform ${
205
+ isOpen ? "transform rotate-180" : ""
206
+ }`}
207
+ />
208
+ )}
162
209
  </div>
163
210
  </button>
164
211
 
165
212
  {/* Accordion Content */}
166
- {isOpen && (
213
+ {isOpen && processedFeeOptions.length > 1 && (
167
214
  <div className="mt-2 space-y-1">
168
215
  {/* All Fee Options (including native gas) */}
169
216
  {processedFeeOptions.map((option, index) => (
@@ -38,6 +38,8 @@ import { FundingMethodSelectorButton } from "./FundingMethodSelectorButton.js"
38
38
  import { PercentageMaxButtons } from "./PercentageMaxButtons.js"
39
39
  import { useDynamicInputStyles } from "./DynamicInputStyles.js"
40
40
  import { DynamicSizeInputField } from "./DynamicSizeInputField.js"
41
+ import { isFeeOptionDisabled } from "./FeeOption.js"
42
+ import type { ProcessedFeeOption } from "../hooks/useSelectedFeeOption.js"
41
43
 
42
44
  interface PayProps {
43
45
  selectedToken?: any // Origin token (optional - user can select)
@@ -1019,18 +1021,23 @@ export const Pay: React.FC<PayProps> = ({
1019
1021
  ) : null}
1020
1022
 
1021
1023
  {/* Fee Options */}
1022
- {fundMethod !== "qr-code" && fundMethod !== "exchange" && (
1024
+ {fundMethod !== "qr-code" && fundMethod !== "exchange" && originToken && (
1023
1025
  <FeeOptions
1024
1026
  processedFeeOptions={processedFeeOptions}
1025
1027
  selectedFeeOption={selectedFeeOption}
1026
1028
  setSelectedFeeOption={(feeOption) => setSelectedFeeOption(feeOption)}
1027
- chainId={originToken?.chainId}
1029
+ chainId={originToken.chainId}
1028
1030
  isRefetching={isLoadingQuote}
1029
- originTokenInfo={{
1030
- originToken: originToken!,
1031
- originTokenBalance: originToken?.balance ?? "0",
1032
- originTokenAmount: tokenAmountForBackend ?? "0",
1033
- }}
1031
+ originTokenInfo={
1032
+ originToken
1033
+ ? {
1034
+ originToken,
1035
+ originTokenBalance: originToken.balance ?? "0",
1036
+ originTokenAmount:
1037
+ prepareSendQuote?.originAmountFormatted ?? "0",
1038
+ }
1039
+ : undefined
1040
+ }
1034
1041
  />
1035
1042
  )}
1036
1043
 
@@ -1058,7 +1065,15 @@ export const Pay: React.FC<PayProps> = ({
1058
1065
  !destinationTokenAddress ||
1059
1066
  !isValidCustomToken ||
1060
1067
  prepareSendQuote?.noSufficientBalance ||
1061
- !prepareSendQuote
1068
+ !prepareSendQuote ||
1069
+ selectedFeeOption
1070
+ ? isFeeOptionDisabled(selectedFeeOption as ProcessedFeeOption, {
1071
+ originToken: originToken,
1072
+ originTokenBalance: originToken?.balance ?? "0",
1073
+ originTokenAmount:
1074
+ prepareSendQuote?.originAmountFormatted ?? "0",
1075
+ })
1076
+ : false
1062
1077
  }
1063
1078
  className="w-full font-semibold py-4 px-4 trails-border-radius-button transition-colors bg-blue-500 hover:bg-blue-600 disabled:bg-gray-300 text-white disabled:text-gray-500 disabled:cursor-not-allowed cursor-pointer relative"
1064
1079
  >
@@ -40,6 +40,8 @@ import { generateAaveDepositCalldata } from "../../aave.js"
40
40
  import { generateMorphoDepositCalldata } from "../../morpho.js"
41
41
  import { TRAILS_ROUTER_PLACEHOLDER_AMOUNT } from "../../trailsRouter.js"
42
42
  import { ScreenHeader } from "./ScreenHeader.js"
43
+ import type { ProcessedFeeOption } from "../hooks/useSelectedFeeOption.js"
44
+ import { isFeeOptionDisabled } from "./FeeOption.js"
43
45
 
44
46
  interface PoolDepositProps {
45
47
  account?: Account
@@ -626,7 +628,14 @@ export const PoolDeposit: React.FC<PoolDepositProps> = ({
626
628
  !selectedPool ||
627
629
  isLoadingQuote ||
628
630
  !prepareSendQuote ||
629
- prepareSendQuote?.noSufficientBalance
631
+ prepareSendQuote?.noSufficientBalance ||
632
+ selectedFeeOption
633
+ ? isFeeOptionDisabled(selectedFeeOption as ProcessedFeeOption, {
634
+ originToken: originToken!,
635
+ originTokenBalance: originToken?.balance ?? "0",
636
+ originTokenAmount: amount ?? "0",
637
+ })
638
+ : false
630
639
  }
631
640
  className={`w-full font-semibold py-4 px-4 trails-border-radius-button transition-colors bg-blue-500 hover:bg-blue-600 disabled:bg-gray-300 text-white disabled:text-gray-500 disabled:cursor-not-allowed cursor-pointer relative`}
632
641
  >
@@ -72,6 +72,7 @@ export type UseQuoteProps = {
72
72
  abortSignal?: AbortSignal
73
73
  apiKey?: string | null
74
74
  nodeGatewayEnv?: "prod" | "dev" | "local" | "cors-anywhere"
75
+ isSmartWallet?: boolean | null
75
76
  }
76
77
 
77
78
  export type SwapReturn = {
@@ -149,6 +150,7 @@ export function useQuote({
149
150
  nodeGatewayEnv,
150
151
  abortSignal: externalAbortSignal,
151
152
  apiKey,
153
+ isSmartWallet,
152
154
  }: Partial<UseQuoteProps> = {}): UseQuoteReturn {
153
155
  // Set node gateway environment override for this quote session
154
156
  if (nodeGatewayEnv) {
@@ -212,6 +214,7 @@ export function useQuote({
212
214
  slippageTolerance,
213
215
  quoteProvider,
214
216
  apiKey,
217
+ isSmartWallet,
215
218
  ],
216
219
  queryFn: async () => {
217
220
  try {
@@ -467,6 +470,7 @@ export function useQuote({
467
470
  sequenceProjectAccessKey,
468
471
  originPublicClient: originPublicClient ?? undefined,
469
472
  destinationPublicClient: destinationPublicClient ?? undefined,
473
+ isSmartWallet: isSmartWallet ?? undefined,
470
474
  }
471
475
 
472
476
  logger.console.log("[trails-sdk] options", options)
@@ -50,6 +50,7 @@ import {
50
50
  useSelectedFeeOption,
51
51
  type ProcessedFeeOption,
52
52
  } from "./useSelectedFeeOption.js"
53
+ import { useWidgetProps } from "./useWidgetProps.js"
53
54
 
54
55
  export interface Token {
55
56
  id: number
@@ -206,6 +207,9 @@ export function useSendForm({
206
207
  const { connector } = useAccount()
207
208
  const walletId = connector?.id
208
209
 
210
+ // Read isSmartWallet from widget props
211
+ const { isSmartWallet } = useWidgetProps()
212
+
209
213
  // Auto-set quoteProvider to "lifi" if either from or to chain is etherlink
210
214
  const effectiveQuoteProvider = useMemo(() => {
211
215
  if (!quoteProvider || quoteProvider === "auto") {
@@ -918,6 +922,7 @@ export function useSendForm({
918
922
  sequenceProjectAccessKey: trailsApiKey,
919
923
  originPublicClient: originChainPublicClient ?? undefined,
920
924
  destinationPublicClient: destinationChainPublicClient ?? undefined,
925
+ isSmartWallet,
921
926
  }
922
927
 
923
928
  logger.console.log(
@@ -1009,6 +1014,7 @@ export function useSendForm({
1009
1014
  buildQuoteInputsFingerprint,
1010
1015
  originChainPublicClient,
1011
1016
  destinationChainPublicClient,
1017
+ isSmartWallet,
1012
1018
  ])
1013
1019
 
1014
1020
  // Auto-fetch quotes when inputs change (debounced)