@b3dotfun/sdk 0.0.88-alpha.5 → 0.0.88-alpha.7

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 (198) hide show
  1. package/dist/cjs/anyspend/react/components/AnySpend.d.ts +6 -0
  2. package/dist/cjs/anyspend/react/components/AnySpend.js +5 -5
  3. package/dist/cjs/anyspend/react/components/AnySpendCustomExactIn.d.ts +6 -0
  4. package/dist/cjs/anyspend/react/components/AnySpendCustomExactIn.js +3 -3
  5. package/dist/cjs/anyspend/react/components/AnySpendDeposit.d.ts +7 -1
  6. package/dist/cjs/anyspend/react/components/AnySpendDeposit.js +2 -2
  7. package/dist/cjs/anyspend/react/components/AnyspendDepositHype.d.ts +4 -0
  8. package/dist/cjs/anyspend/react/components/common/CryptoReceiveSection.d.ts +3 -1
  9. package/dist/cjs/anyspend/react/components/common/CryptoReceiveSection.js +3 -2
  10. package/dist/cjs/anyspend/react/components/common/OrderDetails.d.ts +4 -0
  11. package/dist/cjs/anyspend/react/components/common/OrderDetails.js +33 -5
  12. package/dist/cjs/anyspend/react/components/common/PanelOnramp.d.ts +3 -1
  13. package/dist/cjs/anyspend/react/components/common/PanelOnramp.js +3 -2
  14. package/dist/cjs/anyspend/react/components/common/PaymentStripeWeb2.js +3 -4
  15. package/dist/cjs/anyspend/react/hooks/useAnyspendCreateOnrampOrder.js +1 -1
  16. package/dist/cjs/anyspend/react/hooks/useAnyspendCreateOrder.js +1 -1
  17. package/dist/cjs/anyspend/react/hooks/useCreateDepositFirstOrder.js +1 -1
  18. package/dist/cjs/anyspend/react/hooks/useValidatedClientReferenceId.js +1 -1
  19. package/dist/cjs/global-account/react/components/B3DynamicModal.js +2 -3
  20. package/dist/cjs/global-account/react/components/B3Provider/AuthenticationProvider.d.ts +5 -0
  21. package/dist/cjs/global-account/react/components/B3Provider/AuthenticationProvider.js +12 -0
  22. package/dist/cjs/global-account/react/components/B3Provider/B3Provider.d.ts +2 -18
  23. package/dist/cjs/global-account/react/components/B3Provider/B3Provider.js +23 -57
  24. package/dist/cjs/global-account/react/components/B3Provider/B3Provider.native.d.ts +5 -5
  25. package/dist/cjs/global-account/react/components/B3Provider/B3Provider.native.js +38 -35
  26. package/dist/cjs/global-account/react/components/B3Provider/useB3.d.ts +14 -4
  27. package/dist/cjs/global-account/react/components/B3Provider/useB3.js +4 -11
  28. package/dist/cjs/global-account/react/components/B3Provider/useB3Account.js +5 -2
  29. package/dist/cjs/global-account/react/components/B3Provider/useB3Config.d.ts +10 -2
  30. package/dist/cjs/global-account/react/components/B3Provider/useB3Config.js +18 -17
  31. package/dist/cjs/global-account/react/components/ManageAccount/ProfileSection.js +1 -2
  32. package/dist/cjs/global-account/react/components/ManageAccount/channels/DiscordChannel.js +6 -6
  33. package/dist/cjs/global-account/react/components/ManageAccount/channels/EmailChannel.js +7 -7
  34. package/dist/cjs/global-account/react/components/ManageAccount/channels/PhoneChannel.js +7 -7
  35. package/dist/cjs/global-account/react/components/ManageAccount/channels/TelegramChannel.js +5 -5
  36. package/dist/cjs/global-account/react/components/RequestPermissions/RequestPermissions.js +8 -9
  37. package/dist/cjs/global-account/react/components/SignInWithB3/SignIn.js +1 -1
  38. package/dist/cjs/global-account/react/components/SignInWithB3/SignInWithB3Privy.js +1 -1
  39. package/dist/cjs/global-account/react/components/SignInWithB3/steps/LoginStep.js +1 -1
  40. package/dist/cjs/global-account/react/components/SignInWithB3/steps/LoginStepCustom.js +1 -1
  41. package/dist/cjs/global-account/react/components/StyleRoot.js +3 -3
  42. package/dist/cjs/global-account/react/components/custom/ManageAccountButton.js +1 -2
  43. package/dist/cjs/global-account/react/components/index.d.ts +1 -2
  44. package/dist/cjs/global-account/react/components/index.js +3 -6
  45. package/dist/cjs/global-account/react/hooks/index.d.ts +1 -0
  46. package/dist/cjs/global-account/react/hooks/index.js +3 -1
  47. package/dist/cjs/global-account/react/hooks/useAuth.js +1 -2
  48. package/dist/cjs/global-account/react/hooks/useClient.js +1 -1
  49. package/dist/cjs/global-account/react/hooks/useHandleConnectWithPrivy.js +1 -1
  50. package/dist/cjs/global-account/react/hooks/useNotifications.js +14 -14
  51. package/dist/cjs/global-account/react/hooks/useTokenBalance.js +5 -5
  52. package/dist/cjs/global-account/react/hooks/useUser.d.ts +60 -0
  53. package/dist/cjs/global-account/react/hooks/useUser.js +20 -0
  54. package/dist/cjs/global-account/react/hooks/useUserQuery.js +9 -35
  55. package/dist/cjs/global-account/react/index.native.d.ts +0 -2
  56. package/dist/cjs/global-account/react/index.native.js +1 -5
  57. package/dist/cjs/global-account/react/stores/configStore.d.ts +24 -0
  58. package/dist/cjs/global-account/react/stores/configStore.js +30 -0
  59. package/dist/cjs/global-account/react/stores/index.d.ts +1 -0
  60. package/dist/cjs/global-account/react/stores/index.js +3 -1
  61. package/dist/cjs/global-account/react/stores/useModalStore.d.ts +6 -0
  62. package/dist/cjs/global-account/react/stores/userStore.d.ts +22 -0
  63. package/dist/cjs/global-account/react/stores/userStore.js +30 -0
  64. package/dist/esm/anyspend/react/components/AnySpend.d.ts +6 -0
  65. package/dist/esm/anyspend/react/components/AnySpend.js +6 -6
  66. package/dist/esm/anyspend/react/components/AnySpendCustomExactIn.d.ts +6 -0
  67. package/dist/esm/anyspend/react/components/AnySpendCustomExactIn.js +3 -3
  68. package/dist/esm/anyspend/react/components/AnySpendDeposit.d.ts +7 -1
  69. package/dist/esm/anyspend/react/components/AnySpendDeposit.js +2 -2
  70. package/dist/esm/anyspend/react/components/AnyspendDepositHype.d.ts +4 -0
  71. package/dist/esm/anyspend/react/components/common/CryptoReceiveSection.d.ts +3 -1
  72. package/dist/esm/anyspend/react/components/common/CryptoReceiveSection.js +3 -2
  73. package/dist/esm/anyspend/react/components/common/OrderDetails.d.ts +4 -0
  74. package/dist/esm/anyspend/react/components/common/OrderDetails.js +35 -7
  75. package/dist/esm/anyspend/react/components/common/PanelOnramp.d.ts +3 -1
  76. package/dist/esm/anyspend/react/components/common/PanelOnramp.js +3 -2
  77. package/dist/esm/anyspend/react/components/common/PaymentStripeWeb2.js +3 -4
  78. package/dist/esm/anyspend/react/hooks/useAnyspendCreateOnrampOrder.js +2 -2
  79. package/dist/esm/anyspend/react/hooks/useAnyspendCreateOrder.js +2 -2
  80. package/dist/esm/anyspend/react/hooks/useCreateDepositFirstOrder.js +2 -2
  81. package/dist/esm/anyspend/react/hooks/useValidatedClientReferenceId.js +2 -2
  82. package/dist/esm/global-account/react/components/B3DynamicModal.js +3 -4
  83. package/dist/esm/global-account/react/components/B3Provider/AuthenticationProvider.d.ts +5 -0
  84. package/dist/esm/global-account/react/components/B3Provider/AuthenticationProvider.js +10 -0
  85. package/dist/esm/global-account/react/components/B3Provider/B3Provider.d.ts +2 -18
  86. package/dist/esm/global-account/react/components/B3Provider/B3Provider.js +22 -58
  87. package/dist/esm/global-account/react/components/B3Provider/B3Provider.native.d.ts +5 -5
  88. package/dist/esm/global-account/react/components/B3Provider/B3Provider.native.js +36 -36
  89. package/dist/esm/global-account/react/components/B3Provider/useB3.d.ts +14 -4
  90. package/dist/esm/global-account/react/components/B3Provider/useB3.js +4 -11
  91. package/dist/esm/global-account/react/components/B3Provider/useB3Account.js +5 -2
  92. package/dist/esm/global-account/react/components/B3Provider/useB3Config.d.ts +10 -2
  93. package/dist/esm/global-account/react/components/B3Provider/useB3Config.js +18 -17
  94. package/dist/esm/global-account/react/components/ManageAccount/ProfileSection.js +2 -3
  95. package/dist/esm/global-account/react/components/ManageAccount/channels/DiscordChannel.js +2 -2
  96. package/dist/esm/global-account/react/components/ManageAccount/channels/EmailChannel.js +2 -2
  97. package/dist/esm/global-account/react/components/ManageAccount/channels/PhoneChannel.js +2 -2
  98. package/dist/esm/global-account/react/components/ManageAccount/channels/TelegramChannel.js +2 -2
  99. package/dist/esm/global-account/react/components/RequestPermissions/RequestPermissions.js +2 -3
  100. package/dist/esm/global-account/react/components/SignInWithB3/SignIn.js +2 -2
  101. package/dist/esm/global-account/react/components/SignInWithB3/SignInWithB3Privy.js +2 -2
  102. package/dist/esm/global-account/react/components/SignInWithB3/steps/LoginStep.js +2 -2
  103. package/dist/esm/global-account/react/components/SignInWithB3/steps/LoginStepCustom.js +2 -2
  104. package/dist/esm/global-account/react/components/StyleRoot.js +3 -3
  105. package/dist/esm/global-account/react/components/custom/ManageAccountButton.js +2 -3
  106. package/dist/esm/global-account/react/components/index.d.ts +1 -2
  107. package/dist/esm/global-account/react/components/index.js +1 -2
  108. package/dist/esm/global-account/react/hooks/index.d.ts +1 -0
  109. package/dist/esm/global-account/react/hooks/index.js +1 -0
  110. package/dist/esm/global-account/react/hooks/useAuth.js +2 -3
  111. package/dist/esm/global-account/react/hooks/useClient.js +2 -2
  112. package/dist/esm/global-account/react/hooks/useHandleConnectWithPrivy.js +2 -2
  113. package/dist/esm/global-account/react/hooks/useNotifications.js +2 -2
  114. package/dist/esm/global-account/react/hooks/useTokenBalance.js +6 -6
  115. package/dist/esm/global-account/react/hooks/useUser.d.ts +60 -0
  116. package/dist/esm/global-account/react/hooks/useUser.js +17 -0
  117. package/dist/esm/global-account/react/hooks/useUserQuery.js +1 -27
  118. package/dist/esm/global-account/react/index.native.d.ts +0 -2
  119. package/dist/esm/global-account/react/index.native.js +0 -2
  120. package/dist/esm/global-account/react/stores/configStore.d.ts +24 -0
  121. package/dist/esm/global-account/react/stores/configStore.js +27 -0
  122. package/dist/esm/global-account/react/stores/index.d.ts +1 -0
  123. package/dist/esm/global-account/react/stores/index.js +1 -0
  124. package/dist/esm/global-account/react/stores/useModalStore.d.ts +6 -0
  125. package/dist/esm/global-account/react/stores/userStore.d.ts +22 -0
  126. package/dist/esm/global-account/react/stores/userStore.js +27 -0
  127. package/dist/types/anyspend/react/components/AnySpend.d.ts +6 -0
  128. package/dist/types/anyspend/react/components/AnySpendCustomExactIn.d.ts +6 -0
  129. package/dist/types/anyspend/react/components/AnySpendDeposit.d.ts +7 -1
  130. package/dist/types/anyspend/react/components/AnyspendDepositHype.d.ts +4 -0
  131. package/dist/types/anyspend/react/components/common/CryptoReceiveSection.d.ts +3 -1
  132. package/dist/types/anyspend/react/components/common/OrderDetails.d.ts +4 -0
  133. package/dist/types/anyspend/react/components/common/PanelOnramp.d.ts +3 -1
  134. package/dist/types/global-account/react/components/B3Provider/AuthenticationProvider.d.ts +5 -0
  135. package/dist/types/global-account/react/components/B3Provider/B3Provider.d.ts +2 -18
  136. package/dist/types/global-account/react/components/B3Provider/B3Provider.native.d.ts +5 -5
  137. package/dist/types/global-account/react/components/B3Provider/useB3.d.ts +14 -4
  138. package/dist/types/global-account/react/components/B3Provider/useB3Config.d.ts +10 -2
  139. package/dist/types/global-account/react/components/index.d.ts +1 -2
  140. package/dist/types/global-account/react/hooks/index.d.ts +1 -0
  141. package/dist/types/global-account/react/hooks/useUser.d.ts +60 -0
  142. package/dist/types/global-account/react/index.native.d.ts +0 -2
  143. package/dist/types/global-account/react/stores/configStore.d.ts +24 -0
  144. package/dist/types/global-account/react/stores/index.d.ts +1 -0
  145. package/dist/types/global-account/react/stores/useModalStore.d.ts +6 -0
  146. package/dist/types/global-account/react/stores/userStore.d.ts +22 -0
  147. package/package.json +1 -1
  148. package/src/anyspend/react/components/AnySpend.tsx +18 -2
  149. package/src/anyspend/react/components/AnySpendCustomExactIn.tsx +13 -0
  150. package/src/anyspend/react/components/AnySpendDeposit.tsx +15 -0
  151. package/src/anyspend/react/components/AnyspendDepositHype.tsx +4 -0
  152. package/src/anyspend/react/components/common/CryptoReceiveSection.tsx +5 -1
  153. package/src/anyspend/react/components/common/OrderDetails.tsx +54 -42
  154. package/src/anyspend/react/components/common/PanelOnramp.tsx +5 -1
  155. package/src/anyspend/react/components/common/PaymentStripeWeb2.tsx +3 -4
  156. package/src/anyspend/react/hooks/useAnyspendCreateOnrampOrder.ts +2 -2
  157. package/src/anyspend/react/hooks/useAnyspendCreateOrder.ts +2 -2
  158. package/src/anyspend/react/hooks/useCreateDepositFirstOrder.ts +2 -2
  159. package/src/anyspend/react/hooks/useValidatedClientReferenceId.ts +2 -2
  160. package/src/global-account/react/components/B3DynamicModal.tsx +3 -4
  161. package/src/global-account/react/components/B3Provider/AuthenticationProvider.tsx +19 -0
  162. package/src/global-account/react/components/B3Provider/B3Provider.native.tsx +43 -54
  163. package/src/global-account/react/components/B3Provider/B3Provider.tsx +32 -117
  164. package/src/global-account/react/components/B3Provider/useB3.ts +4 -13
  165. package/src/global-account/react/components/B3Provider/useB3Account.ts +6 -2
  166. package/src/global-account/react/components/B3Provider/useB3Config.ts +18 -31
  167. package/src/global-account/react/components/ManageAccount/ProfileSection.tsx +2 -4
  168. package/src/global-account/react/components/ManageAccount/channels/DiscordChannel.tsx +2 -2
  169. package/src/global-account/react/components/ManageAccount/channels/EmailChannel.tsx +2 -2
  170. package/src/global-account/react/components/ManageAccount/channels/PhoneChannel.tsx +2 -2
  171. package/src/global-account/react/components/ManageAccount/channels/TelegramChannel.tsx +2 -2
  172. package/src/global-account/react/components/RequestPermissions/RequestPermissions.tsx +4 -4
  173. package/src/global-account/react/components/SignInWithB3/SignIn.tsx +2 -2
  174. package/src/global-account/react/components/SignInWithB3/SignInWithB3Privy.tsx +2 -2
  175. package/src/global-account/react/components/SignInWithB3/steps/LoginStep.tsx +2 -2
  176. package/src/global-account/react/components/SignInWithB3/steps/LoginStepCustom.tsx +2 -2
  177. package/src/global-account/react/components/StyleRoot.tsx +3 -3
  178. package/src/global-account/react/components/custom/ManageAccountButton.tsx +2 -3
  179. package/src/global-account/react/components/index.ts +1 -2
  180. package/src/global-account/react/hooks/index.ts +1 -0
  181. package/src/global-account/react/hooks/useAuth.ts +2 -3
  182. package/src/global-account/react/hooks/useClient.ts +2 -2
  183. package/src/global-account/react/hooks/useHandleConnectWithPrivy.tsx +2 -2
  184. package/src/global-account/react/hooks/useNotifications.ts +2 -2
  185. package/src/global-account/react/hooks/useTokenBalance.tsx +8 -7
  186. package/src/global-account/react/hooks/useUser.ts +20 -0
  187. package/src/global-account/react/hooks/useUserQuery.ts +1 -40
  188. package/src/global-account/react/index.native.ts +0 -2
  189. package/src/global-account/react/stores/configStore.ts +51 -0
  190. package/src/global-account/react/stores/index.ts +1 -0
  191. package/src/global-account/react/stores/useModalStore.ts +6 -0
  192. package/src/global-account/react/stores/userStore.ts +41 -0
  193. package/dist/cjs/global-account/react/components/B3Provider/types.d.ts +0 -27
  194. package/dist/cjs/global-account/react/components/B3Provider/types.js +0 -24
  195. package/dist/esm/global-account/react/components/B3Provider/types.d.ts +0 -27
  196. package/dist/esm/global-account/react/components/B3Provider/types.js +0 -21
  197. package/dist/types/global-account/react/components/B3Provider/types.d.ts +0 -27
  198. package/src/global-account/react/components/B3Provider/types.ts +0 -50
@@ -39,4 +39,10 @@ export declare function AnySpend(props: {
39
39
  hideBottomNavigation?: boolean;
40
40
  /** When true, disables URL parameter management for swap configuration */
41
41
  disableUrlParamManagement?: boolean;
42
+ /** Custom URL to redirect to when clicking "Return to Home" on complete order screen */
43
+ returnToHomeUrl?: string;
44
+ /** Custom label for recipient display (e.g., "OBSN Telegram Bot") */
45
+ customRecipientLabel?: string;
46
+ /** Custom label for the return home button (overrides "Return to Home" / "Close") */
47
+ returnHomeLabel?: string;
42
48
  }): import("react/jsx-runtime").JSX.Element;
@@ -57,10 +57,10 @@ function AnySpend(props) {
57
57
  const fingerprintConfig = (0, AnySpendFingerprintWrapper_1.getFingerprintConfig)();
58
58
  return ((0, jsx_runtime_1.jsx)(AnySpendFingerprintWrapper_1.AnySpendFingerprintWrapper, { fingerprint: fingerprintConfig, children: (0, jsx_runtime_1.jsx)(AnySpendInner, { ...props }) }));
59
59
  }
60
- function AnySpendInner({ sourceChainId, destinationTokenAddress, destinationTokenChainId, mode = "modal", defaultActiveTab = "crypto", loadOrder, hideTransactionHistoryButton, recipientAddress: recipientAddressFromProps, onTokenSelect, onSuccess, customUsdInputValues, hideHeader, hideBottomNavigation = false, disableUrlParamManagement = false, }) {
60
+ function AnySpendInner({ sourceChainId, destinationTokenAddress, destinationTokenChainId, mode = "modal", defaultActiveTab = "crypto", loadOrder, hideTransactionHistoryButton, recipientAddress: recipientAddressFromProps, onTokenSelect, onSuccess, customUsdInputValues, hideHeader, hideBottomNavigation = false, disableUrlParamManagement = false, returnToHomeUrl, customRecipientLabel, returnHomeLabel, }) {
61
61
  const searchParams = (0, react_2.useSearchParamsSSR)();
62
62
  const router = (0, react_2.useRouter)();
63
- const { partnerId } = (0, react_2.useB3)();
63
+ const { partnerId } = (0, react_2.useB3Config)();
64
64
  const setB3ModalContentType = (0, react_2.useModalStore)(state => state.setB3ModalContentType);
65
65
  // Determine if we're in "buy mode" based on whether destination token props are provided
66
66
  const isBuyMode = !!(destinationTokenAddress && destinationTokenChainId);
@@ -825,7 +825,7 @@ function AnySpendInner({ sourceChainId, destinationTokenAddress, destinationToke
825
825
  navigateBack();
826
826
  // Reset payment methods when going back
827
827
  resetPaymentMethods();
828
- } })) }) }));
828
+ }, returnToHomeUrl: returnToHomeUrl, returnHomeLabel: returnHomeLabel })) }) }));
829
829
  const mainView = ((0, jsx_runtime_1.jsxs)("div", { className: "mx-auto flex w-[460px] max-w-full flex-col items-center gap-2 pt-5", children: [(0, jsx_runtime_1.jsxs)("div", { className: "flex w-full max-w-full flex-col items-center gap-2 px-5", children: [isBuyMode && !hideHeader && ((0, jsx_runtime_1.jsxs)("div", { className: "mb-4 flex flex-col items-center gap-3 text-center", children: [selectedDstToken.metadata?.logoURI && ((0, jsx_runtime_1.jsx)("div", { className: "relative", children: (0, jsx_runtime_1.jsx)("img", { src: selectedDstToken.metadata.logoURI, alt: selectedDstToken.symbol, className: "border-as-stroke h-12 w-12 rounded-full border-2 shadow-md" }) })), (0, jsx_runtime_1.jsx)("div", { children: (0, jsx_runtime_1.jsxs)("h1", { className: "text-as-primary text-xl font-bold", children: ["Buy ", selectedDstToken.symbol] }) })] })), (0, jsx_runtime_1.jsx)(TabSection_1.TabSection, { activeTab: activeTab, setActiveTab: tab => {
830
830
  setActiveTab(tab);
831
831
  // Reset payment methods when switching tabs
@@ -840,7 +840,7 @@ function AnySpendInner({ sourceChainId, destinationTokenAddress, destinationToke
840
840
  else {
841
841
  setActivePanel(panelIndex);
842
842
  }
843
- }, _recipientAddress: effectiveRecipientAddress, destinationToken: selectedDstToken, destinationChainId: selectedDstChainId, destinationAmount: dstAmount, onDestinationTokenChange: setSelectedDstToken, onDestinationChainChange: setSelectedDstChainId, fiatPaymentMethodIndex: PanelView.FIAT_PAYMENT_METHOD, recipientSelectionPanelIndex: PanelView.RECIPIENT_SELECTION, hideDstToken: isBuyMode, anyspendQuote: anyspendQuote, onShowPointsDetail: () => navigateToPanel(PanelView.POINTS_DETAIL, "forward"), onShowFeeDetail: () => navigateToPanel(PanelView.FEE_DETAIL, "forward"), customUsdInputValues: customUsdInputValues }) })), activeTab === "crypto" && ((0, jsx_runtime_1.jsx)("div", { className: "z-10 -my-6 flex justify-center", children: (0, jsx_runtime_1.jsx)(react_2.Button, { variant: "ghost", className: (0, cn_1.cn)("border-as-stroke bg-as-surface-primary h-10 w-10 rounded-xl border-2 sm:h-8 sm:w-8 sm:rounded-xl", isBuyMode && "cursor-default", selectedDstChainId === anyspend_1.HYPERLIQUID_CHAIN_ID && "cursor-not-allowed opacity-50"), onClick: () => {
843
+ }, _recipientAddress: effectiveRecipientAddress, destinationToken: selectedDstToken, destinationChainId: selectedDstChainId, destinationAmount: dstAmount, onDestinationTokenChange: setSelectedDstToken, onDestinationChainChange: setSelectedDstChainId, fiatPaymentMethodIndex: PanelView.FIAT_PAYMENT_METHOD, recipientSelectionPanelIndex: PanelView.RECIPIENT_SELECTION, hideDstToken: isBuyMode, anyspendQuote: anyspendQuote, onShowPointsDetail: () => navigateToPanel(PanelView.POINTS_DETAIL, "forward"), onShowFeeDetail: () => navigateToPanel(PanelView.FEE_DETAIL, "forward"), customUsdInputValues: customUsdInputValues, customRecipientLabel: customRecipientLabel }) })), activeTab === "crypto" && ((0, jsx_runtime_1.jsx)("div", { className: "z-10 -my-6 flex justify-center", children: (0, jsx_runtime_1.jsx)(react_2.Button, { variant: "ghost", className: (0, cn_1.cn)("border-as-stroke bg-as-surface-primary h-10 w-10 rounded-xl border-2 sm:h-8 sm:w-8 sm:rounded-xl", isBuyMode && "cursor-default", selectedDstChainId === anyspend_1.HYPERLIQUID_CHAIN_ID && "cursor-not-allowed opacity-50"), onClick: () => {
844
844
  if (isBuyMode) {
845
845
  return;
846
846
  }
@@ -857,7 +857,7 @@ function AnySpendInner({ sourceChainId, destinationTokenAddress, destinationToke
857
857
  // Swap amounts
858
858
  setSrcAmount(dstAmount);
859
859
  setDstAmount(srcAmount);
860
- }, children: (0, jsx_runtime_1.jsx)("div", { className: "relative flex items-center justify-center transition-opacity", children: (0, jsx_runtime_1.jsx)(lucide_react_1.ArrowDown, { className: "text-as-primary/50 h-5 w-5" }) }) }) })), activeTab === "crypto" && ((0, jsx_runtime_1.jsx)(CryptoReceiveSection_1.CryptoReceiveSection, { isDepositMode: false, isBuyMode: isBuyMode, effectiveRecipientAddress: effectiveRecipientAddress, recipientName: recipientName || undefined, onSelectRecipient: () => navigateToPanel(PanelView.RECIPIENT_SELECTION, "forward"), dstAmount: dstAmount, dstToken: selectedDstToken, selectedDstChainId: selectedDstChainId, setSelectedDstChainId: setSelectedDstChainId, setSelectedDstToken: setSelectedDstToken, isSrcInputDirty: isSrcInputDirty, onChangeDstAmount: value => {
860
+ }, children: (0, jsx_runtime_1.jsx)("div", { className: "relative flex items-center justify-center transition-opacity", children: (0, jsx_runtime_1.jsx)(lucide_react_1.ArrowDown, { className: "text-as-primary/50 h-5 w-5" }) }) }) })), activeTab === "crypto" && ((0, jsx_runtime_1.jsx)(CryptoReceiveSection_1.CryptoReceiveSection, { isDepositMode: false, isBuyMode: isBuyMode, effectiveRecipientAddress: effectiveRecipientAddress, recipientName: recipientName || undefined, customRecipientLabel: customRecipientLabel, onSelectRecipient: () => navigateToPanel(PanelView.RECIPIENT_SELECTION, "forward"), dstAmount: dstAmount, dstToken: selectedDstToken, selectedDstChainId: selectedDstChainId, setSelectedDstChainId: setSelectedDstChainId, setSelectedDstToken: setSelectedDstToken, isSrcInputDirty: isSrcInputDirty, onChangeDstAmount: value => {
861
861
  setIsSrcInputDirty(false);
862
862
  setDstAmount(value);
863
863
  }, anyspendQuote: anyspendQuote, onShowPointsDetail: () => navigateToPanel(PanelView.POINTS_DETAIL, "forward"), onShowFeeDetail: () => navigateToPanel(PanelView.FEE_DETAIL, "forward") }))] }), (0, jsx_runtime_1.jsxs)(react_3.motion.div, { initial: { opacity: 0, y: 20, filter: "blur(10px)" }, animate: { opacity: 1, y: 0, filter: "blur(0px)" }, transition: { duration: 0.3, delay: 0.2, ease: "easeInOut" }, className: (0, cn_1.cn)("mt-4 flex w-full max-w-[460px] flex-col gap-2"), children: [(0, jsx_runtime_1.jsx)(react_2.ShinyButton, { accentColor: "hsl(var(--as-brand))", disabled: btnInfo.disable, onClick: onMainButtonClick, className: (0, cn_1.cn)("as-main-button relative w-full", btnInfo.error ? "!bg-as-red" : btnInfo.disable ? "!bg-as-on-surface-2" : "!bg-as-brand"), textClassName: (0, cn_1.cn)(btnInfo.error ? "text-white" : btnInfo.disable ? "text-as-secondary" : "text-white"), children: (0, jsx_runtime_1.jsxs)("div", { className: "flex items-center justify-center gap-2", children: [btnInfo.loading && (0, jsx_runtime_1.jsx)(lucide_react_1.Loader2, { className: "h-4 w-4 animate-spin" }), btnInfo.text] }) }), !hideTransactionHistoryButton && (globalAddress || effectiveRecipientAddress) ? ((0, jsx_runtime_1.jsxs)(react_2.Button, { variant: "link", onClick: onClickHistory, className: "text-as-primary/50 hover:text-as-primary flex items-center gap-1 transition-colors", children: [(0, jsx_runtime_1.jsx)(lucide_react_1.HistoryIcon, { className: "h-4 w-4" }), " ", (0, jsx_runtime_1.jsx)("span", { className: "pr-4", children: "Transaction History" })] })) : null] })] }), (0, jsx_runtime_1.jsx)("div", { className: "w-full", children: (0, jsx_runtime_1.jsx)(react_2.TabsPrimitive, { defaultValue: "swap", onValueChange: value => {
@@ -32,6 +32,12 @@ export interface AnySpendCustomExactInProps {
32
32
  anyspendPrice: GetQuoteResponse | undefined;
33
33
  isLoadingAnyspendPrice: boolean;
34
34
  }) => React.JSX.Element;
35
+ /** Custom URL to redirect to when clicking "Return to Home" on complete order screen */
36
+ returnToHomeUrl?: string;
37
+ /** Custom label for recipient display (e.g., "OBSN Telegram Bot") */
38
+ customRecipientLabel?: string;
39
+ /** Custom label for the return home button (overrides "Return to Home" / "Close") */
40
+ returnHomeLabel?: string;
35
41
  }
36
42
  export declare function AnySpendCustomExactIn(props: AnySpendCustomExactInProps): import("react/jsx-runtime").JSX.Element;
37
43
  export {};
@@ -31,7 +31,7 @@ function AnySpendCustomExactIn(props) {
31
31
  const fingerprintConfig = (0, AnySpendFingerprintWrapper_1.getFingerprintConfig)();
32
32
  return ((0, jsx_runtime_1.jsx)(AnySpendFingerprintWrapper_1.AnySpendFingerprintWrapper, { fingerprint: fingerprintConfig, children: (0, jsx_runtime_1.jsx)(AnySpendCustomExactInInner, { ...props }) }));
33
33
  }
34
- function AnySpendCustomExactInInner({ loadOrder, mode = "modal", recipientAddress, paymentType = "crypto", sourceTokenAddress, sourceTokenChainId, destinationToken, destinationChainId, onSuccess, onOpenCustomModal, mainFooter, onTokenSelect, customUsdInputValues, preferEoa, customExactInConfig, orderType = "custom_exact_in", minDestinationAmount, header, }) {
34
+ function AnySpendCustomExactInInner({ loadOrder, mode = "modal", recipientAddress, paymentType = "crypto", sourceTokenAddress, sourceTokenChainId, destinationToken, destinationChainId, onSuccess, onOpenCustomModal, mainFooter, onTokenSelect, customUsdInputValues, preferEoa, customExactInConfig, orderType = "custom_exact_in", minDestinationAmount, header, returnToHomeUrl, customRecipientLabel, returnHomeLabel, }) {
35
35
  const actionLabel = customExactInConfig?.action ?? "Custom Execution";
36
36
  const DESTINATION_TOKEN_DETAILS = {
37
37
  SYMBOL: destinationToken.symbol ?? "TOKEN",
@@ -181,7 +181,7 @@ function AnySpendCustomExactInInner({ loadOrder, mode = "modal", recipientAddres
181
181
  }
182
182
  };
183
183
  const headerContent = header ? (header({ anyspendPrice: anyspendQuote, isLoadingAnyspendPrice: isLoadingAnyspendQuote })) : ((0, jsx_runtime_1.jsx)("div", { className: "mb-4 flex flex-col items-center gap-3 text-center", children: (0, jsx_runtime_1.jsxs)("div", { children: [(0, jsx_runtime_1.jsx)("h1", { className: "text-as-primary text-xl font-bold", children: actionLabel }), (0, jsx_runtime_1.jsx)("p", { className: "text-as-secondary text-sm", children: "Pay from any token to execute a custom exact-in transaction." })] }) }));
184
- const mainView = ((0, jsx_runtime_1.jsxs)("div", { className: "anyspend-custom-exact-in-container mx-auto flex w-[460px] max-w-full flex-col items-center gap-2", children: [headerContent, (0, jsx_runtime_1.jsx)("div", { className: "relative flex w-full max-w-[calc(100vw-32px)] flex-col gap-2", children: (0, jsx_runtime_1.jsxs)("div", { className: "relative flex w-full max-w-[calc(100vw-32px)] flex-col gap-2", children: [paymentType === "crypto" ? ((0, jsx_runtime_1.jsx)(CryptoPaySection_1.CryptoPaySection, { selectedSrcChainId: selectedSrcChainId, setSelectedSrcChainId: setSelectedSrcChainId, selectedSrcToken: selectedSrcToken, setSelectedSrcToken: setSelectedSrcToken, srcAmount: srcAmount, setSrcAmount: setSrcAmount, isSrcInputDirty: isSrcInputDirty, setIsSrcInputDirty: setIsSrcInputDirty, selectedCryptoPaymentMethod: effectiveCryptoPaymentMethod, onSelectCryptoPaymentMethod: () => setActivePanel(useAnyspendFlow_1.PanelView.CRYPTO_PAYMENT_METHOD), anyspendQuote: anyspendQuote, onTokenSelect: onTokenSelect })) : ((0, jsx_runtime_1.jsx)(react_2.motion.div, { initial: { opacity: 0, y: 20, filter: "blur(10px)" }, animate: { opacity: 1, y: 0, filter: "blur(0px)" }, transition: { duration: 0.3, delay: 0, ease: "easeInOut" }, children: (0, jsx_runtime_1.jsx)(PanelOnramp_1.PanelOnramp, { srcAmountOnRamp: srcAmount, setSrcAmountOnRamp: setSrcAmount, selectedPaymentMethod: selectedFiatPaymentMethod, setActivePanel: setActivePanel, _recipientAddress: selectedRecipientOrDefault, destinationToken: selectedDstToken, destinationChainId: selectedDstChainId, dstTokenSymbol: DESTINATION_TOKEN_DETAILS.SYMBOL, hideDstToken: true, destinationAmount: dstAmount, onDestinationTokenChange: () => { }, onDestinationChainChange: () => { }, fiatPaymentMethodIndex: useAnyspendFlow_1.PanelView.FIAT_PAYMENT_METHOD, recipientSelectionPanelIndex: useAnyspendFlow_1.PanelView.RECIPIENT_SELECTION, anyspendQuote: anyspendQuote, onShowPointsDetail: () => setActivePanel(useAnyspendFlow_1.PanelView.POINTS_DETAIL), onShowFeeDetail: () => setActivePanel(useAnyspendFlow_1.PanelView.FEE_DETAIL), customUsdInputValues: customUsdInputValues }) })), (0, jsx_runtime_1.jsx)("div", { className: (0, cn_1.cn)("relative -my-1 flex h-0 items-center justify-center", paymentType === "fiat" && "hidden"), children: (0, jsx_runtime_1.jsx)(react_1.Button, { variant: "ghost", className: (0, cn_1.cn)("swap-direction-button border-as-stroke bg-as-surface-primary z-10 h-10 w-10 cursor-default rounded-xl border-2 sm:h-8 sm:w-8 sm:rounded-xl"), children: (0, jsx_runtime_1.jsx)("div", { className: "relative flex items-center justify-center transition-opacity", children: (0, jsx_runtime_1.jsx)(lucide_react_1.ArrowDown, { className: "text-as-primary/50 h-5 w-5" }) }) }) }), paymentType === "crypto" && ((0, jsx_runtime_1.jsx)(CryptoReceiveSection_1.CryptoReceiveSection, { isDepositMode: false, isBuyMode: true, effectiveRecipientAddress: selectedRecipientOrDefault, recipientName: recipientName || undefined, onSelectRecipient: () => setActivePanel(useAnyspendFlow_1.PanelView.RECIPIENT_SELECTION), dstAmount: dstAmount, dstToken: selectedDstToken, dstTokenSymbol: DESTINATION_TOKEN_DETAILS.SYMBOL, dstTokenLogoURI: DESTINATION_TOKEN_DETAILS.LOGO_URI, selectedDstChainId: selectedDstChainId, setSelectedDstChainId: () => { }, setSelectedDstToken: () => { }, isSrcInputDirty: isSrcInputDirty, onChangeDstAmount: value => {
184
+ const mainView = ((0, jsx_runtime_1.jsxs)("div", { className: "anyspend-custom-exact-in-container mx-auto flex w-[460px] max-w-full flex-col items-center gap-2", children: [headerContent, (0, jsx_runtime_1.jsx)("div", { className: "relative flex w-full max-w-[calc(100vw-32px)] flex-col gap-2", children: (0, jsx_runtime_1.jsxs)("div", { className: "relative flex w-full max-w-[calc(100vw-32px)] flex-col gap-2", children: [paymentType === "crypto" ? ((0, jsx_runtime_1.jsx)(CryptoPaySection_1.CryptoPaySection, { selectedSrcChainId: selectedSrcChainId, setSelectedSrcChainId: setSelectedSrcChainId, selectedSrcToken: selectedSrcToken, setSelectedSrcToken: setSelectedSrcToken, srcAmount: srcAmount, setSrcAmount: setSrcAmount, isSrcInputDirty: isSrcInputDirty, setIsSrcInputDirty: setIsSrcInputDirty, selectedCryptoPaymentMethod: effectiveCryptoPaymentMethod, onSelectCryptoPaymentMethod: () => setActivePanel(useAnyspendFlow_1.PanelView.CRYPTO_PAYMENT_METHOD), anyspendQuote: anyspendQuote, onTokenSelect: onTokenSelect })) : ((0, jsx_runtime_1.jsx)(react_2.motion.div, { initial: { opacity: 0, y: 20, filter: "blur(10px)" }, animate: { opacity: 1, y: 0, filter: "blur(0px)" }, transition: { duration: 0.3, delay: 0, ease: "easeInOut" }, children: (0, jsx_runtime_1.jsx)(PanelOnramp_1.PanelOnramp, { srcAmountOnRamp: srcAmount, setSrcAmountOnRamp: setSrcAmount, selectedPaymentMethod: selectedFiatPaymentMethod, setActivePanel: setActivePanel, _recipientAddress: selectedRecipientOrDefault, destinationToken: selectedDstToken, destinationChainId: selectedDstChainId, dstTokenSymbol: DESTINATION_TOKEN_DETAILS.SYMBOL, hideDstToken: true, destinationAmount: dstAmount, onDestinationTokenChange: () => { }, onDestinationChainChange: () => { }, fiatPaymentMethodIndex: useAnyspendFlow_1.PanelView.FIAT_PAYMENT_METHOD, recipientSelectionPanelIndex: useAnyspendFlow_1.PanelView.RECIPIENT_SELECTION, anyspendQuote: anyspendQuote, onShowPointsDetail: () => setActivePanel(useAnyspendFlow_1.PanelView.POINTS_DETAIL), onShowFeeDetail: () => setActivePanel(useAnyspendFlow_1.PanelView.FEE_DETAIL), customUsdInputValues: customUsdInputValues, customRecipientLabel: customRecipientLabel }) })), (0, jsx_runtime_1.jsx)("div", { className: (0, cn_1.cn)("relative -my-1 flex h-0 items-center justify-center", paymentType === "fiat" && "hidden"), children: (0, jsx_runtime_1.jsx)(react_1.Button, { variant: "ghost", className: (0, cn_1.cn)("swap-direction-button border-as-stroke bg-as-surface-primary z-10 h-10 w-10 cursor-default rounded-xl border-2 sm:h-8 sm:w-8 sm:rounded-xl"), children: (0, jsx_runtime_1.jsx)("div", { className: "relative flex items-center justify-center transition-opacity", children: (0, jsx_runtime_1.jsx)(lucide_react_1.ArrowDown, { className: "text-as-primary/50 h-5 w-5" }) }) }) }), paymentType === "crypto" && ((0, jsx_runtime_1.jsx)(CryptoReceiveSection_1.CryptoReceiveSection, { isDepositMode: false, isBuyMode: true, effectiveRecipientAddress: selectedRecipientOrDefault, recipientName: recipientName || undefined, customRecipientLabel: customRecipientLabel, onSelectRecipient: () => setActivePanel(useAnyspendFlow_1.PanelView.RECIPIENT_SELECTION), dstAmount: dstAmount, dstToken: selectedDstToken, dstTokenSymbol: DESTINATION_TOKEN_DETAILS.SYMBOL, dstTokenLogoURI: DESTINATION_TOKEN_DETAILS.LOGO_URI, selectedDstChainId: selectedDstChainId, setSelectedDstChainId: () => { }, setSelectedDstToken: () => { }, isSrcInputDirty: isSrcInputDirty, onChangeDstAmount: value => {
185
185
  setIsSrcInputDirty(false);
186
186
  setSrcAmount(value);
187
187
  }, anyspendQuote: anyspendQuote, onShowPointsDetail: () => setActivePanel(useAnyspendFlow_1.PanelView.POINTS_DETAIL), onShowFeeDetail: () => setActivePanel(useAnyspendFlow_1.PanelView.FEE_DETAIL) }))] }) }), (0, jsx_runtime_1.jsx)(react_2.motion.div, { initial: { opacity: 0, y: 20, filter: "blur(10px)" }, animate: { opacity: 1, y: 0, filter: "blur(0px)" }, transition: { duration: 0.3, delay: 0.2, ease: "easeInOut" }, className: (0, cn_1.cn)("mt-4 flex w-full max-w-[460px] flex-col gap-2"), children: (0, jsx_runtime_1.jsx)(react_1.ShinyButton, { accentColor: "hsl(var(--as-brand))", disabled: btnInfo.disable, onClick: onMainButtonClick, className: (0, cn_1.cn)("as-main-button relative w-full", btnInfo.error ? "!bg-as-red" : btnInfo.disable ? "!bg-as-on-surface-2" : "!bg-as-brand"), textClassName: (0, cn_1.cn)(btnInfo.error ? "text-white" : btnInfo.disable ? "text-as-secondary" : "text-white"), children: (0, jsx_runtime_1.jsxs)("div", { className: "flex items-center justify-center gap-2", children: [btnInfo.loading && (0, jsx_runtime_1.jsx)(lucide_react_1.Loader2, { className: "h-4 w-4 animate-spin" }), btnInfo.text] }) }) }), mainFooter ? mainFooter : null] }));
@@ -264,7 +264,7 @@ function AnySpendCustomExactInInner({ loadOrder, mode = "modal", recipientAddres
264
264
  const orderDetailsView = ((0, jsx_runtime_1.jsx)("div", { className: "mx-auto w-[460px] max-w-full", children: (0, jsx_runtime_1.jsx)("div", { className: "relative flex flex-col gap-4", children: oat && ((0, jsx_runtime_1.jsx)(OrderDetails_1.OrderDetails, { mode: mode, order: oat.data.order, depositTxs: oat.data.depositTxs, relayTxs: oat.data.relayTxs, executeTx: oat.data.executeTx, refundTxs: oat.data.refundTxs, cryptoPaymentMethod: paymentType === "fiat" ? CryptoPaymentMethod_1.CryptoPaymentMethodType.NONE : effectiveCryptoPaymentMethod, selectedCryptoPaymentMethod: effectiveCryptoPaymentMethod, onPaymentMethodChange: setSelectedCryptoPaymentMethod, onBack: () => {
265
265
  setOrderId(undefined);
266
266
  setActivePanel(useAnyspendFlow_1.PanelView.MAIN);
267
- }, disableUrlParamManagement: true, points: oat.data.points || undefined })) }) }));
267
+ }, disableUrlParamManagement: true, points: oat.data.points || undefined, returnToHomeUrl: returnToHomeUrl, returnHomeLabel: returnHomeLabel })) }) }));
268
268
  const loadingView = ((0, jsx_runtime_1.jsx)("div", { className: "mx-auto flex w-full flex-col items-center gap-4 p-5", children: (0, jsx_runtime_1.jsx)("div", { className: "text-as-primary", children: "Loading order details..." }) }));
269
269
  const recipientSelectionView = ((0, jsx_runtime_1.jsx)(RecipientSelection_1.RecipientSelection, { initialValue: selectedRecipientOrDefault || "", onBack: () => setActivePanel(useAnyspendFlow_1.PanelView.MAIN), onConfirm: address => {
270
270
  setSelectedRecipientAddress(address);
@@ -83,6 +83,12 @@ export interface AnySpendDepositProps {
83
83
  topChainsCount?: number;
84
84
  /** Callback when close button is clicked */
85
85
  onClose?: () => void;
86
+ /** Custom URL to redirect to when clicking "Return to Home" on complete order screen */
87
+ returnToHomeUrl?: string;
88
+ /** Custom label for recipient display (e.g., "OBSN Telegram Bot") */
89
+ customRecipientLabel?: string;
90
+ /** Custom label for the return home button (overrides "Return to Home" / "Close") */
91
+ returnHomeLabel?: string;
86
92
  }
87
93
  /**
88
94
  * A flexible deposit component that wraps AnySpendCustomExactIn with optional chain selection.
@@ -119,4 +125,4 @@ export interface AnySpendDepositProps {
119
125
  * onSuccess={(amount) => console.log(`Deposited ${amount}`)}
120
126
  * />
121
127
  */
122
- export declare function AnySpendDeposit({ loadOrder, mode, recipientAddress, paymentType: initialPaymentType, sourceTokenAddress, sourceTokenChainId: initialSourceChainId, destinationToken, destinationChainId, onSuccess, onOpenCustomModal, mainFooter, onTokenSelect, customUsdInputValues, preferEoa, minDestinationAmount, header, orderType, depositContractConfig, showChainSelection, supportedChains, minPoolSize, topChainsCount, onClose, }: AnySpendDepositProps): import("react/jsx-runtime").JSX.Element | null;
128
+ export declare function AnySpendDeposit({ loadOrder, mode, recipientAddress, paymentType: initialPaymentType, sourceTokenAddress, sourceTokenChainId: initialSourceChainId, destinationToken, destinationChainId, onSuccess, onOpenCustomModal, mainFooter, onTokenSelect, customUsdInputValues, preferEoa, minDestinationAmount, header, orderType, depositContractConfig, showChainSelection, supportedChains, minPoolSize, topChainsCount, onClose, returnToHomeUrl, customRecipientLabel, returnHomeLabel, }: AnySpendDepositProps): import("react/jsx-runtime").JSX.Element | null;
@@ -98,7 +98,7 @@ function ChainIcon({ chainId, className }) {
98
98
  * onSuccess={(amount) => console.log(`Deposited ${amount}`)}
99
99
  * />
100
100
  */
101
- function AnySpendDeposit({ loadOrder, mode = "modal", recipientAddress, paymentType: initialPaymentType, sourceTokenAddress, sourceTokenChainId: initialSourceChainId, destinationToken, destinationChainId, onSuccess, onOpenCustomModal, mainFooter, onTokenSelect, customUsdInputValues, preferEoa, minDestinationAmount, header, orderType, depositContractConfig, showChainSelection, supportedChains = DEFAULT_SUPPORTED_CHAINS, minPoolSize = DEFAULT_MIN_POOL_SIZE, topChainsCount = 3, onClose, }) {
101
+ function AnySpendDeposit({ loadOrder, mode = "modal", recipientAddress, paymentType: initialPaymentType, sourceTokenAddress, sourceTokenChainId: initialSourceChainId, destinationToken, destinationChainId, onSuccess, onOpenCustomModal, mainFooter, onTokenSelect, customUsdInputValues, preferEoa, minDestinationAmount, header, orderType, depositContractConfig, showChainSelection, supportedChains = DEFAULT_SUPPORTED_CHAINS, minPoolSize = DEFAULT_MIN_POOL_SIZE, topChainsCount = 3, onClose, returnToHomeUrl, customRecipientLabel, returnHomeLabel, }) {
102
102
  const { connectedEOAWallet } = (0, react_1.useAccountWallet)();
103
103
  const eoaAddress = connectedEOAWallet?.getAccount()?.address;
104
104
  // Determine if we should show chain selection
@@ -186,5 +186,5 @@ function AnySpendDeposit({ loadOrder, mode = "modal", recipientAddress, paymentT
186
186
  // Check if destination is Hyperliquid
187
187
  const isHyperliquidDeposit = destinationChainId === anyspend_1.HYPERLIQUID_CHAIN_ID;
188
188
  // Deposit view
189
- return ((0, jsx_runtime_1.jsxs)("div", { className: "anyspend-deposit anyspend-deposit-form relative", children: [shouldShowChainSelection && ((0, jsx_runtime_1.jsxs)("button", { onClick: handleBack, className: "anyspend-deposit-back-button text-as-secondary hover:text-as-primary absolute left-4 top-4 z-10 flex items-center gap-1", children: [(0, jsx_runtime_1.jsx)("svg", { className: "anyspend-deposit-back-icon h-5 w-5", fill: "none", viewBox: "0 0 24 24", stroke: "currentColor", children: (0, jsx_runtime_1.jsx)("path", { strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: 2, d: "M15 19l-7-7 7-7" }) }), (0, jsx_runtime_1.jsx)("span", { className: "anyspend-deposit-back-text text-sm", children: "Back" })] })), onClose && ((0, jsx_runtime_1.jsx)("button", { onClick: onClose, className: "anyspend-deposit-close-button text-as-secondary hover:text-as-primary absolute right-4 top-4 z-10", children: (0, jsx_runtime_1.jsx)("svg", { className: "h-6 w-6", fill: "none", viewBox: "0 0 24 24", stroke: "currentColor", children: (0, jsx_runtime_1.jsx)("path", { strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: 2, d: "M6 18L18 6M6 6l12 12" }) }) })), (0, jsx_runtime_1.jsx)("div", { className: (0, cn_1.cn)("anyspend-deposit-form-content", shouldShowChainSelection && "pt-8"), children: isHyperliquidDeposit ? ((0, jsx_runtime_1.jsx)(AnySpend_1.AnySpend, { loadOrder: loadOrder, mode: mode, defaultActiveTab: paymentType, recipientAddress: recipientAddress, sourceChainId: selectedChainId, destinationTokenAddress: destinationToken.address, destinationTokenChainId: destinationChainId, onSuccess: txHash => onSuccess?.(txHash ?? ""), onTokenSelect: onTokenSelect, customUsdInputValues: customUsdInputValues, hideHeader: true, hideBottomNavigation: true, disableUrlParamManagement: true }, selectedChainId)) : ((0, jsx_runtime_1.jsx)(AnySpendCustomExactIn_1.AnySpendCustomExactIn, { loadOrder: loadOrder, mode: mode, recipientAddress: recipientAddress, paymentType: paymentType, sourceTokenAddress: sourceTokenAddress, sourceTokenChainId: selectedChainId, destinationToken: destinationToken, destinationChainId: destinationChainId, orderType: effectiveOrderType, minDestinationAmount: minDestinationAmount, header: header ?? defaultHeader, onSuccess: onSuccess, onOpenCustomModal: onOpenCustomModal, mainFooter: mainFooter, onTokenSelect: onTokenSelect, customUsdInputValues: customUsdInputValues, preferEoa: preferEoa, customExactInConfig: depositContractConfig }, selectedChainId)) }), (0, jsx_runtime_1.jsx)(WarningText_1.ChainWarningText, { chainId: destinationChainId, className: "px-4 pb-4" })] }));
189
+ return ((0, jsx_runtime_1.jsxs)("div", { className: "anyspend-deposit anyspend-deposit-form relative", children: [shouldShowChainSelection && ((0, jsx_runtime_1.jsxs)("button", { onClick: handleBack, className: "anyspend-deposit-back-button text-as-secondary hover:text-as-primary absolute left-4 top-4 z-10 flex items-center gap-1", children: [(0, jsx_runtime_1.jsx)("svg", { className: "anyspend-deposit-back-icon h-5 w-5", fill: "none", viewBox: "0 0 24 24", stroke: "currentColor", children: (0, jsx_runtime_1.jsx)("path", { strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: 2, d: "M15 19l-7-7 7-7" }) }), (0, jsx_runtime_1.jsx)("span", { className: "anyspend-deposit-back-text text-sm", children: "Back" })] })), onClose && ((0, jsx_runtime_1.jsx)("button", { onClick: onClose, className: "anyspend-deposit-close-button text-as-secondary hover:text-as-primary absolute right-4 top-4 z-10", children: (0, jsx_runtime_1.jsx)("svg", { className: "h-6 w-6", fill: "none", viewBox: "0 0 24 24", stroke: "currentColor", children: (0, jsx_runtime_1.jsx)("path", { strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: 2, d: "M6 18L18 6M6 6l12 12" }) }) })), (0, jsx_runtime_1.jsx)("div", { className: (0, cn_1.cn)("anyspend-deposit-form-content", shouldShowChainSelection && "pt-8"), children: isHyperliquidDeposit ? ((0, jsx_runtime_1.jsx)(AnySpend_1.AnySpend, { loadOrder: loadOrder, mode: mode, defaultActiveTab: paymentType, recipientAddress: recipientAddress, sourceChainId: selectedChainId, destinationTokenAddress: destinationToken.address, destinationTokenChainId: destinationChainId, onSuccess: txHash => onSuccess?.(txHash ?? ""), onTokenSelect: onTokenSelect, customUsdInputValues: customUsdInputValues, hideHeader: true, hideBottomNavigation: true, disableUrlParamManagement: true, returnToHomeUrl: returnToHomeUrl, customRecipientLabel: customRecipientLabel, returnHomeLabel: returnHomeLabel }, selectedChainId)) : ((0, jsx_runtime_1.jsx)(AnySpendCustomExactIn_1.AnySpendCustomExactIn, { loadOrder: loadOrder, mode: mode, recipientAddress: recipientAddress, paymentType: paymentType, sourceTokenAddress: sourceTokenAddress, sourceTokenChainId: selectedChainId, destinationToken: destinationToken, destinationChainId: destinationChainId, orderType: effectiveOrderType, minDestinationAmount: minDestinationAmount, header: header ?? defaultHeader, onSuccess: onSuccess, onOpenCustomModal: onOpenCustomModal, mainFooter: mainFooter, onTokenSelect: onTokenSelect, customUsdInputValues: customUsdInputValues, preferEoa: preferEoa, customExactInConfig: depositContractConfig, returnToHomeUrl: returnToHomeUrl, customRecipientLabel: customRecipientLabel, returnHomeLabel: returnHomeLabel }, selectedChainId)) }), (0, jsx_runtime_1.jsx)(WarningText_1.ChainWarningText, { chainId: destinationChainId, className: "px-4 pb-4" })] }));
190
190
  }
@@ -22,5 +22,9 @@ export interface AnySpendDepositHypeProps {
22
22
  }) => void;
23
23
  customUsdInputValues?: string[];
24
24
  preferEoa?: boolean;
25
+ /** Custom URL to redirect to when clicking "Return to Home" on complete order screen */
26
+ returnToHomeUrl?: string;
27
+ /** Custom label for recipient display (e.g., "OBSN Telegram Bot") */
28
+ customRecipientLabel?: string;
25
29
  }
26
30
  export declare function AnySpendDepositHype({ loadOrder, mode, recipientAddress, paymentType, sourceTokenAddress, sourceTokenChainId, onSuccess, onOpenCustomModal, mainFooter, onTokenSelect, customUsdInputValues, preferEoa, }: AnySpendDepositHypeProps): import("react/jsx-runtime").JSX.Element | null;
@@ -4,6 +4,8 @@ interface CryptoReceiveSectionProps {
4
4
  isBuyMode?: boolean;
5
5
  effectiveRecipientAddress?: string;
6
6
  recipientName?: string;
7
+ /** Custom label for recipient display (overrides recipientName) */
8
+ customRecipientLabel?: string;
7
9
  onSelectRecipient: () => void;
8
10
  dstAmount: string;
9
11
  dstToken: components["schemas"]["Token"];
@@ -18,5 +20,5 @@ interface CryptoReceiveSectionProps {
18
20
  onShowPointsDetail?: () => void;
19
21
  onShowFeeDetail?: () => void;
20
22
  }
21
- export declare function CryptoReceiveSection({ isDepositMode, isBuyMode, effectiveRecipientAddress, recipientName, onSelectRecipient, dstAmount, dstToken, selectedDstChainId, setSelectedDstChainId, setSelectedDstToken, isSrcInputDirty, onChangeDstAmount, anyspendQuote, dstTokenSymbol, dstTokenLogoURI, onShowPointsDetail, onShowFeeDetail, }: CryptoReceiveSectionProps): import("react/jsx-runtime").JSX.Element;
23
+ export declare function CryptoReceiveSection({ isDepositMode, isBuyMode, effectiveRecipientAddress, recipientName, customRecipientLabel, onSelectRecipient, dstAmount, dstToken, selectedDstChainId, setSelectedDstChainId, setSelectedDstToken, isSrcInputDirty, onChangeDstAmount, anyspendQuote, dstTokenSymbol, dstTokenLogoURI, onShowPointsDetail, onShowFeeDetail, }: CryptoReceiveSectionProps): import("react/jsx-runtime").JSX.Element;
22
24
  export {};
@@ -11,8 +11,9 @@ const lucide_react_1 = require("lucide-react");
11
11
  const react_1 = require("motion/react");
12
12
  const OrderTokenAmount_1 = require("./OrderTokenAmount");
13
13
  const PointsBadge_1 = require("./PointsBadge");
14
- function CryptoReceiveSection({ isDepositMode = false, isBuyMode = false, effectiveRecipientAddress, recipientName, onSelectRecipient, dstAmount, dstToken, selectedDstChainId, setSelectedDstChainId, setSelectedDstToken, isSrcInputDirty, onChangeDstAmount, anyspendQuote, dstTokenSymbol, dstTokenLogoURI, onShowPointsDetail, onShowFeeDetail, }) {
15
- return ((0, jsx_runtime_1.jsxs)(react_1.motion.div, { initial: { opacity: 0, y: 20, filter: "blur(10px)" }, animate: { opacity: 1, y: 0, filter: "blur(0px)" }, transition: { duration: 0.3, delay: 0.1, ease: "easeInOut" }, className: "receive-section bg-as-surface-secondary border-as-border-secondary relative flex w-full flex-col gap-2 rounded-2xl border p-4 sm:p-6", children: [(0, jsx_runtime_1.jsxs)("div", { className: "flex w-full items-center justify-between", children: [(0, jsx_runtime_1.jsxs)("div", { className: "text-as-primary/50 flex h-7 items-center gap-1.5 text-sm", children: [isDepositMode ? "Deposit" : "Receive", isSrcInputDirty && anyspendQuote?.data?.fee && onShowFeeDetail && ((0, jsx_runtime_1.jsx)("button", { onClick: onShowFeeDetail, className: "text-as-primary/40 hover:text-as-primary/60 transition-colors", children: (0, jsx_runtime_1.jsx)(lucide_react_1.Info, { className: "h-4 w-4" }) }))] }), effectiveRecipientAddress ? ((0, jsx_runtime_1.jsx)("button", { className: (0, cn_1.cn)("text-as-tertiarry flex h-7 items-center gap-2 rounded-lg"), onClick: onSelectRecipient, children: (0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsx)("span", { className: "text-as-tertiarry flex items-center gap-1 text-sm", children: recipientName ? (0, utils_1.formatUsername)(recipientName) : (0, formatAddress_1.shortenAddress)(effectiveRecipientAddress || "") }), (0, jsx_runtime_1.jsx)(lucide_react_1.ChevronRight, { className: "h-4 w-4" })] }) })) : ((0, jsx_runtime_1.jsx)("button", { className: "text-as-primary/70 flex items-center gap-1 rounded-lg", onClick: onSelectRecipient, children: (0, jsx_runtime_1.jsx)("div", { className: "text-sm font-medium", children: "Select recipient" }) }))] }), isBuyMode || isDepositMode ? (
14
+ function CryptoReceiveSection({ isDepositMode = false, isBuyMode = false, effectiveRecipientAddress, recipientName, customRecipientLabel, onSelectRecipient, dstAmount, dstToken, selectedDstChainId, setSelectedDstChainId, setSelectedDstToken, isSrcInputDirty, onChangeDstAmount, anyspendQuote, dstTokenSymbol, dstTokenLogoURI, onShowPointsDetail, onShowFeeDetail, }) {
15
+ return ((0, jsx_runtime_1.jsxs)(react_1.motion.div, { initial: { opacity: 0, y: 20, filter: "blur(10px)" }, animate: { opacity: 1, y: 0, filter: "blur(0px)" }, transition: { duration: 0.3, delay: 0.1, ease: "easeInOut" }, className: "receive-section bg-as-surface-secondary border-as-border-secondary relative flex w-full flex-col gap-2 rounded-2xl border p-4 sm:p-6", children: [(0, jsx_runtime_1.jsxs)("div", { className: "flex w-full items-center justify-between", children: [(0, jsx_runtime_1.jsxs)("div", { className: "text-as-primary/50 flex h-7 items-center gap-1.5 text-sm", children: [isDepositMode ? "Deposit" : "Receive", isSrcInputDirty && anyspendQuote?.data?.fee && onShowFeeDetail && ((0, jsx_runtime_1.jsx)("button", { onClick: onShowFeeDetail, className: "text-as-primary/40 hover:text-as-primary/60 transition-colors", children: (0, jsx_runtime_1.jsx)(lucide_react_1.Info, { className: "h-4 w-4" }) }))] }), effectiveRecipientAddress ? ((0, jsx_runtime_1.jsx)("button", { className: (0, cn_1.cn)("text-as-tertiarry flex h-7 items-center gap-2 rounded-lg"), onClick: onSelectRecipient, children: (0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsx)("span", { className: "text-as-tertiarry flex items-center gap-1 text-sm", children: customRecipientLabel ||
16
+ (recipientName ? (0, utils_1.formatUsername)(recipientName) : (0, formatAddress_1.shortenAddress)(effectiveRecipientAddress || "")) }), (0, jsx_runtime_1.jsx)(lucide_react_1.ChevronRight, { className: "h-4 w-4" })] }) })) : ((0, jsx_runtime_1.jsx)("button", { className: "text-as-primary/70 flex items-center gap-1 rounded-lg", onClick: onSelectRecipient, children: (0, jsx_runtime_1.jsx)("div", { className: "text-sm font-medium", children: "Select recipient" }) }))] }), isBuyMode || isDepositMode ? (
16
17
  // Fixed destination token display for buy mode and deposit mode
17
18
  (0, jsx_runtime_1.jsxs)("div", { className: "flex items-center justify-between", children: [(0, jsx_runtime_1.jsx)("div", { className: "text-as-primary text-2xl font-bold", children: dstAmount || "0" }), (0, jsx_runtime_1.jsxs)("div", { className: "bg-as-brand/10 border-as-brand/30 flex items-center gap-3 rounded-xl border px-4 py-3", children: [(dstTokenLogoURI || dstToken.metadata?.logoURI) && ((0, jsx_runtime_1.jsxs)("div", { className: "relative", children: [(0, jsx_runtime_1.jsx)("img", { src: dstTokenLogoURI || dstToken.metadata?.logoURI, alt: dstTokenSymbol || dstToken.symbol, className: "h-8 w-8 rounded-full" }), anyspend_1.ALL_CHAINS[dstToken.chainId]?.logoUrl && ((0, jsx_runtime_1.jsx)("img", { src: anyspend_1.ALL_CHAINS[dstToken.chainId].logoUrl, alt: "Chain", className: "absolute -bottom-1 -right-1 h-4 w-4 rounded-full border border-white" }))] })), (0, jsx_runtime_1.jsx)("span", { className: "text-as-brand text-lg font-bold", children: dstTokenSymbol || dstToken.symbol })] })] })) : (
18
19
  // Token selection for regular swap mode
@@ -13,6 +13,10 @@ interface OrderDetailsProps {
13
13
  onBack?: () => void;
14
14
  disableUrlParamManagement?: boolean;
15
15
  points?: number | undefined;
16
+ /** Custom URL to redirect to when clicking "Return to Home" on complete order screen */
17
+ returnToHomeUrl?: string;
18
+ /** Custom label for the return home button (overrides "Return to Home" / "Close") */
19
+ returnHomeLabel?: string;
16
20
  }
17
21
  export declare const OrderDetails: import("react").NamedExoticComponent<OrderDetailsProps>;
18
22
  export declare const OrderDetailsLoadingView: import("react/jsx-runtime").JSX.Element;
@@ -137,11 +137,11 @@ function roundTokenAmount(amount) {
137
137
  const roundedDecimalPart = digits.join("");
138
138
  return `${wholePart}.${roundedDecimalPart}`;
139
139
  }
140
- exports.OrderDetails = (0, react_5.memo)(function OrderDetails({ mode = "modal", order, depositTxs, relayTxs, executeTx, refundTxs, cryptoPaymentMethod, selectedCryptoPaymentMethod, onPaymentMethodChange, onBack, disableUrlParamManagement = false, points, }) {
140
+ exports.OrderDetails = (0, react_5.memo)(function OrderDetails({ mode = "modal", order, depositTxs, relayTxs, executeTx, refundTxs, cryptoPaymentMethod, selectedCryptoPaymentMethod, onPaymentMethodChange, onBack, disableUrlParamManagement = false, points, returnToHomeUrl, returnHomeLabel, }) {
141
141
  const router = (0, hooks_1.useRouter)();
142
142
  const searchParams = (0, hooks_1.useSearchParams)();
143
143
  // Get theme from B3Provider context
144
- const { theme } = (0, react_1.useB3)();
144
+ const { theme } = (0, react_1.useB3Config)();
145
145
  const colorMode = theme || "light";
146
146
  // Read crypto payment method from URL parameters
147
147
  const cryptoPaymentMethodFromUrl = searchParams.get("cryptoPaymentMethod");
@@ -271,6 +271,34 @@ exports.OrderDetails = (0, react_5.memo)(function OrderDetails({ mode = "modal",
271
271
  cleanupUrlParams();
272
272
  onBack?.();
273
273
  }, [cleanupUrlParams, onBack]);
274
+ // Handle "Return to Home" click - redirects to custom URL if provided
275
+ const handleReturnToHome = (0, react_5.useCallback)(() => {
276
+ if (returnToHomeUrl) {
277
+ // Validate URL to prevent Open Redirect / XSS attacks
278
+ try {
279
+ const url = new URL(returnToHomeUrl, window.location.origin);
280
+ // Only allow http/https protocols
281
+ if (url.protocol === "http:" || url.protocol === "https:") {
282
+ window.location.href = url.href;
283
+ return;
284
+ }
285
+ }
286
+ catch {
287
+ // If URL parsing fails, check if it's a safe relative URL
288
+ if (returnToHomeUrl.startsWith("/") && !returnToHomeUrl.startsWith("//")) {
289
+ window.location.href = returnToHomeUrl;
290
+ return;
291
+ }
292
+ }
293
+ // Fallback to handleBack if URL is not safe
294
+ handleBack();
295
+ }
296
+ else {
297
+ handleBack();
298
+ }
299
+ }, [returnToHomeUrl, handleBack]);
300
+ // Reusable "Return to Home" / "Close" button
301
+ const returnHomeOrCloseButton = ((0, jsx_runtime_1.jsx)("button", { className: "order-close-button order-details-close-btn bg-as-brand flex w-full items-center justify-center gap-2 rounded-lg p-2 font-semibold text-white", onClick: returnToHomeUrl ? handleReturnToHome : mode === "page" ? handleBack : handleCloseModal, children: returnHomeLabel ? (returnHomeLabel) : mode === "page" ? ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: ["Return to Home ", (0, jsx_runtime_1.jsx)(lucide_react_1.Home, { className: "ml-2 h-4 w-4" })] })) : ("Close") }));
274
302
  (0, react_5.useEffect)(() => {
275
303
  if (txSuccess) {
276
304
  react_2.toast.success("Transaction successful! We are processing your order.", { duration: 10000 });
@@ -344,7 +372,7 @@ exports.OrderDetails = (0, react_5.memo)(function OrderDetails({ mode = "modal",
344
372
  : `Received ${(0, number_1.formatTokenAmount)(BigInt(dTx.amount), srcToken.decimals)} ${srcToken.symbol}`, chainId: order.srcChain, tx: dTx, isProcessing: false }, dTx.txHash)))
345
373
  : null, refundTxs
346
374
  ? refundTxs.map(rTx => ((0, jsx_runtime_1.jsx)(TransactionDetails, { title: `Refunded ${(0, number_1.formatTokenAmount)(BigInt(rTx.amount), srcToken.decimals)} ${srcToken.symbol}`, chainId: order.srcChain, tx: rTx, isProcessing: false }, rTx.txHash)))
347
- : null] }) })] }) }), order.errorDetails && ((0, jsx_runtime_1.jsx)("div", { className: "flex justify-center", children: (0, jsx_runtime_1.jsx)("span", { className: "text-as-primary/50 text-center text-sm", style: { maxWidth: "40ch" }, children: (0, anyspend_1.getErrorDisplay)(order.errorDetails) }) })), (0, jsx_runtime_1.jsx)("button", { className: "order-close-button order-details-close-btn bg-as-brand flex w-full items-center justify-center gap-2 rounded-lg p-2 font-semibold text-white", onClick: mode === "page" ? handleBack : handleCloseModal, children: mode === "page" ? ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: ["Return to Home ", (0, jsx_runtime_1.jsx)(lucide_react_1.Home, { className: "ml-2 h-4 w-4" })] })) : ("Close") })] }));
375
+ : null] }) })] }) }), order.errorDetails && ((0, jsx_runtime_1.jsx)("div", { className: "flex justify-center", children: (0, jsx_runtime_1.jsx)("span", { className: "text-as-primary/50 text-center text-sm", style: { maxWidth: "40ch" }, children: (0, anyspend_1.getErrorDisplay)(order.errorDetails) }) })), returnHomeOrCloseButton] }));
348
376
  }
349
377
  if (executeTx) {
350
378
  return ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsx)(OrderStatus_1.OrderStatus, { order: order, selectedCryptoPaymentMethod: effectiveCryptoPaymentMethod }), (0, jsx_runtime_1.jsx)(OrderDetailsCollapsible_1.OrderDetailsCollapsible, { order: order, dstToken: dstToken, tournament: tournament, nft: nft, recipientName: recipientName, formattedExpectedDstAmount: formattedExpectedDstAmount, points: points, isOpen: orderDetailsOpen, onOpenChange: setOrderDetailsOpen }), (0, jsx_runtime_1.jsx)(Accordion_1.Accordion, { type: "single", collapsible: true, className: "order-details-accordion w-full", children: (0, jsx_runtime_1.jsxs)(Accordion_1.AccordionItem, { value: "execute-details", className: "order-details-execute-item", children: [(0, jsx_runtime_1.jsx)(Accordion_1.AccordionTrigger, { className: "accordion-trigger", children: "Transaction Details" }), (0, jsx_runtime_1.jsx)(Accordion_1.AccordionContent, { className: "accordion-content pl-2", children: (0, jsx_runtime_1.jsxs)("div", { className: "relative flex w-full flex-col gap-4", children: [(0, jsx_runtime_1.jsx)("div", { className: "bg-as-surface-secondary absolute bottom-2 left-4 top-2 z-[5] w-2", children: (0, jsx_runtime_1.jsx)(react_4.motion.div, { className: "bg-as-border-primary absolute left-[2px] top-0 z-10 w-[3px]", initial: { height: "0%" }, animate: { height: "100%" }, transition: { duration: 1.5, ease: "easeInOut" } }) }), depositTxs
@@ -369,7 +397,7 @@ exports.OrderDetails = (0, react_5.memo)(function OrderDetails({ mode = "modal",
369
397
  dstToken,
370
398
  recipientName,
371
399
  centerTruncate: centerTruncate_1.default,
372
- }), (0, jsx_runtime_1.jsx)(lucide_react_1.ExternalLink, { className: "ml-2 h-4 w-4" })] }) }) }), order.type === "join_tournament" && order.status === "executed" && ((0, jsx_runtime_1.jsxs)(react_1.ShinyButton, { accentColor: "hsl(var(--as-brand))", textColor: "text-white", className: "flex w-full items-center gap-2", disabled: txLoading || isSwitchingOrExecuting, onClick: handleCloseModal, children: [(0, jsx_runtime_1.jsx)("span", { className: "pl-4", children: "Continue to Tournament" }), (0, jsx_runtime_1.jsx)(lucide_react_1.ChevronRight, { className: "h-4 w-4" })] })), order.status === "executed" && ((0, jsx_runtime_1.jsx)("button", { className: "order-close-button order-details-close-btn bg-as-brand flex w-full items-center justify-center gap-2 rounded-lg p-2 font-semibold text-white", onClick: mode === "page" ? handleBack : handleCloseModal, children: mode === "page" ? ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: ["Return to Home ", (0, jsx_runtime_1.jsx)(lucide_react_1.Home, { className: "ml-2 h-4 w-4" })] })) : ("Close") }))] }));
400
+ }), (0, jsx_runtime_1.jsx)(lucide_react_1.ExternalLink, { className: "ml-2 h-4 w-4" })] }) }) }), order.type === "join_tournament" && order.status === "executed" && ((0, jsx_runtime_1.jsxs)(react_1.ShinyButton, { accentColor: "hsl(var(--as-brand))", textColor: "text-white", className: "flex w-full items-center gap-2", disabled: txLoading || isSwitchingOrExecuting, onClick: handleCloseModal, children: [(0, jsx_runtime_1.jsx)("span", { className: "pl-4", children: "Continue to Tournament" }), (0, jsx_runtime_1.jsx)(lucide_react_1.ChevronRight, { className: "h-4 w-4" })] })), order.status === "executed" && returnHomeOrCloseButton] }));
373
401
  }
374
402
  if (relayTxs.length > 0 && relayTxs.every(tx => tx.status === "success")) {
375
403
  return ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsx)(OrderStatus_1.OrderStatus, { order: order, selectedCryptoPaymentMethod: effectiveCryptoPaymentMethod }), (0, jsx_runtime_1.jsx)(OrderDetailsCollapsible_1.OrderDetailsCollapsible, { order: order, dstToken: dstToken, tournament: tournament, nft: nft, recipientName: recipientName, formattedExpectedDstAmount: formattedExpectedDstAmount, points: points, isOpen: orderDetailsOpen, onOpenChange: setOrderDetailsOpen }), (0, jsx_runtime_1.jsx)(Accordion_1.Accordion, { type: "single", collapsible: true, className: "order-details-accordion w-full", children: (0, jsx_runtime_1.jsxs)(Accordion_1.AccordionItem, { value: "more-details", className: "order-details-more-item", children: [(0, jsx_runtime_1.jsx)(Accordion_1.AccordionTrigger, { className: "accordion-trigger", children: "More Details" }), (0, jsx_runtime_1.jsx)(Accordion_1.AccordionContent, { className: "accordion-content pl-2", children: (0, jsx_runtime_1.jsxs)("div", { className: "relative flex w-full flex-col gap-4", children: [(0, jsx_runtime_1.jsx)("div", { className: "bg-as-surface-secondary absolute bottom-2 left-4 top-2 z-[5] w-2", children: (0, jsx_runtime_1.jsx)(react_4.motion.div, { className: "bg-as-border-primary absolute left-[2px] top-0 z-10 w-[3px]", initial: { height: "0%" }, animate: { height: "100%" }, transition: { duration: 1.5, ease: "easeInOut" } }) }), depositTxs
@@ -390,7 +418,7 @@ exports.OrderDetails = (0, react_5.memo)(function OrderDetails({ mode = "modal",
390
418
  ? "Depositing Hype Duel"
391
419
  : order.type === "custom" || order.type === "custom_exact_in"
392
420
  ? "Executing Contract"
393
- : "Processing Bridge", chainId: order.dstChain, isProcessing: true, tx: null, delay: 1 }))] }) })] }) }), order.type === "join_tournament" && order.status === "executed" && ((0, jsx_runtime_1.jsxs)(react_1.ShinyButton, { accentColor: "hsl(var(--as-brand))", textColor: "text-white", className: "flex w-full items-center gap-2", disabled: txLoading || isSwitchingOrExecuting, onClick: handleCloseModal, children: [(0, jsx_runtime_1.jsx)("span", { className: "pl-4", children: "Continue to Tournament" }), (0, jsx_runtime_1.jsx)(lucide_react_1.ChevronRight, { className: "h-4 w-4" })] })), order.status === "executed" && ((0, jsx_runtime_1.jsx)("button", { className: "order-close-button order-details-close-btn bg-as-brand flex w-full items-center justify-center gap-2 rounded-lg p-2 font-semibold text-white", onClick: mode === "page" ? handleBack : handleCloseModal, children: mode === "page" ? ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: ["Return to Home ", (0, jsx_runtime_1.jsx)(lucide_react_1.Home, { className: "ml-2 h-4 w-4" })] })) : ("Close") }))] }));
421
+ : "Processing Bridge", chainId: order.dstChain, isProcessing: true, tx: null, delay: 1 }))] }) })] }) }), order.type === "join_tournament" && order.status === "executed" && ((0, jsx_runtime_1.jsxs)(react_1.ShinyButton, { accentColor: "hsl(var(--as-brand))", textColor: "text-white", className: "flex w-full items-center gap-2", disabled: txLoading || isSwitchingOrExecuting, onClick: handleCloseModal, children: [(0, jsx_runtime_1.jsx)("span", { className: "pl-4", children: "Continue to Tournament" }), (0, jsx_runtime_1.jsx)(lucide_react_1.ChevronRight, { className: "h-4 w-4" })] })), order.status === "executed" && returnHomeOrCloseButton] }));
394
422
  }
395
423
  // This boolean indicates that user finish payment, and waiting for the deposit to be confirmed. We get this from query params (waitingForDeposit=true)
396
424
  const waitingForDeposit = new URLSearchParams(window.location.search).get("waitingForDeposit") === "true";
@@ -1,7 +1,7 @@
1
1
  import { components } from "../../../../anyspend/types/api";
2
2
  import { GetQuoteResponse } from "../../../../anyspend/types/api_req_res";
3
3
  import { FiatPaymentMethod } from "./FiatPaymentMethod";
4
- export declare function PanelOnramp({ srcAmountOnRamp, setSrcAmountOnRamp, selectedPaymentMethod, setActivePanel, _recipientAddress, destinationToken, destinationChainId, destinationAmount, onDestinationTokenChange, onDestinationChainChange, fiatPaymentMethodIndex, recipientSelectionPanelIndex, dstTokenSymbol, hideDstToken, anyspendQuote, onShowPointsDetail, onShowFeeDetail, customUsdInputValues, }: {
4
+ export declare function PanelOnramp({ srcAmountOnRamp, setSrcAmountOnRamp, selectedPaymentMethod, setActivePanel, _recipientAddress, destinationToken, destinationChainId, destinationAmount, onDestinationTokenChange, onDestinationChainChange, fiatPaymentMethodIndex, recipientSelectionPanelIndex, dstTokenSymbol, hideDstToken, anyspendQuote, onShowPointsDetail, onShowFeeDetail, customUsdInputValues, customRecipientLabel, }: {
5
5
  srcAmountOnRamp: string;
6
6
  setSrcAmountOnRamp: (amount: string) => void;
7
7
  selectedPaymentMethod?: FiatPaymentMethod;
@@ -20,4 +20,6 @@ export declare function PanelOnramp({ srcAmountOnRamp, setSrcAmountOnRamp, selec
20
20
  onShowPointsDetail?: () => void;
21
21
  onShowFeeDetail?: () => void;
22
22
  customUsdInputValues?: string[];
23
+ /** Custom label for recipient display (overrides recipientName) */
24
+ customRecipientLabel?: string;
23
25
  }): import("react/jsx-runtime").JSX.Element;
@@ -13,7 +13,7 @@ const FiatPaymentMethod_1 = require("./FiatPaymentMethod");
13
13
  const OrderTokenAmountFiat_1 = require("./OrderTokenAmountFiat");
14
14
  const PointsBadge_1 = require("./PointsBadge");
15
15
  const ONE_CHAR_WIDTH = 30;
16
- function PanelOnramp({ srcAmountOnRamp, setSrcAmountOnRamp, selectedPaymentMethod, setActivePanel, _recipientAddress, destinationToken, destinationChainId, destinationAmount, onDestinationTokenChange, onDestinationChainChange, fiatPaymentMethodIndex, recipientSelectionPanelIndex, dstTokenSymbol, hideDstToken = false, anyspendQuote, onShowPointsDetail, onShowFeeDetail, customUsdInputValues = ["5", "10", "20", "25"], }) {
16
+ function PanelOnramp({ srcAmountOnRamp, setSrcAmountOnRamp, selectedPaymentMethod, setActivePanel, _recipientAddress, destinationToken, destinationChainId, destinationAmount, onDestinationTokenChange, onDestinationChainChange, fiatPaymentMethodIndex, recipientSelectionPanelIndex, dstTokenSymbol, hideDstToken = false, anyspendQuote, onShowPointsDetail, onShowFeeDetail, customUsdInputValues = ["5", "10", "20", "25"], customRecipientLabel, }) {
17
17
  // Helper function to get fees from anyspend quote
18
18
  const getFeeFromApi = (paymentMethod) => {
19
19
  // Try to get fee from anyspend quote first (most accurate)
@@ -90,7 +90,8 @@ function PanelOnramp({ srcAmountOnRamp, setSrcAmountOnRamp, selectedPaymentMetho
90
90
  .filter(v => !isNaN(Number(v)))
91
91
  .map(value => ((0, jsx_runtime_1.jsxs)("button", { onClick: () => handleQuickAmount(value), className: `bg-as-surface-secondary border-as-border-secondary hover:border-as-border-secondary h-7 w-14 rounded-lg border text-sm font-medium transition-all duration-200 ${srcAmountOnRamp === value
92
92
  ? "border-as-border-secondary bg-as-surface-secondary"
93
- : "bg-as-surface-secondary hover:bg-as-surface-secondary"}`, children: ["$", value] }, value))) }), destinationToken && destinationChainId && !hideDstToken && ((0, jsx_runtime_1.jsx)(OrderTokenAmountFiat_1.OrderTokenAmountFiat, { address: _recipientAddress, context: "to", inputValue: destinationAmount || "0", onChangeInput: () => { }, chainId: destinationChainId, setChainId: onDestinationChainChange || (() => { }), token: destinationToken, setToken: onDestinationTokenChange || (() => { }) }))] }), (0, jsx_runtime_1.jsxs)("div", { className: "border-as-border-secondary bg-as-surface-secondary mt-4 flex w-full flex-col gap-3 rounded-xl border p-4", children: [(0, jsx_runtime_1.jsxs)("div", { className: "flex w-full items-center justify-between gap-2", children: [(0, jsx_runtime_1.jsx)("span", { className: "text-as-tertiarry flex items-center text-sm", children: "Recipient" }), _recipientAddress ? ((0, jsx_runtime_1.jsxs)("button", { className: "text-as-tertiarry flex h-7 items-center gap-1 text-sm transition-colors hover:text-blue-700", onClick: () => setActivePanel(recipientSelectionPanelIndex), children: [(0, jsx_runtime_1.jsx)("span", { className: "text-sm", children: recipientName ? (0, utils_1.formatUsername)(recipientName) : (0, formatAddress_1.formatAddress)(_recipientAddress) }), (0, jsx_runtime_1.jsx)(lucide_react_1.ChevronRight, { size: 16 })] })) : ((0, jsx_runtime_1.jsxs)("button", { className: "text-as-tertiarry flex h-7 items-center gap-1 text-sm transition-colors hover:text-blue-700", onClick: () => setActivePanel(5), children: [(0, jsx_runtime_1.jsx)(lucide_react_1.Wallet, { className: "text-as-brand", size: 16 }), "Select recipient", (0, jsx_runtime_1.jsx)(lucide_react_1.ChevronRight, { size: 16 })] }))] }), (0, jsx_runtime_1.jsx)("div", { className: "divider w-full" }), (0, jsx_runtime_1.jsxs)("div", { className: "flex items-center justify-between gap-4", children: [(0, jsx_runtime_1.jsx)("span", { className: "text-as-tertiarry text-sm", children: "Expected to receive" }), (0, jsx_runtime_1.jsxs)("div", { className: "flex flex-wrap items-center justify-end gap-1", children: [(0, jsx_runtime_1.jsxs)("span", { className: "text-as-primary font-semibold", children: [destinationAmount || "0", " ", dstTokenSymbol || destinationToken?.symbol || ""] }), (0, jsx_runtime_1.jsxs)("div", { className: "flex items-center gap-1", children: [(0, jsx_runtime_1.jsxs)("span", { className: "text-as-tertiarry text-sm", children: ["on ", destinationChainId ? chain_1.ALL_CHAINS[destinationChainId]?.name : ""] }), destinationToken && destinationChainId && destinationToken.metadata?.logoURI && ((0, jsx_runtime_1.jsx)("img", { src: chain_1.ALL_CHAINS[destinationChainId]?.logoUrl, alt: "Chain", className: "h-4 w-4 rounded-full" }))] })] })] }), (0, jsx_runtime_1.jsx)("div", { className: "divider w-full" }), (0, jsx_runtime_1.jsx)("div", { className: "", children: (0, jsx_runtime_1.jsxs)("div", { className: "flex items-center justify-between", children: [(0, jsx_runtime_1.jsxs)("div", { className: "flex items-center gap-1.5", children: [(0, jsx_runtime_1.jsx)("span", { className: "text-as-tertiarry text-sm", children: "Total" }), anyspendQuote?.data?.fee && onShowFeeDetail && ((0, jsx_runtime_1.jsx)("button", { onClick: onShowFeeDetail, className: "text-as-primary/40 hover:text-as-primary/60 transition-colors", children: (0, jsx_runtime_1.jsx)(lucide_react_1.Info, { className: "h-4 w-4" }) })), anyspendQuote?.data?.pointsAmount && anyspendQuote?.data?.pointsAmount > 0 && ((0, jsx_runtime_1.jsx)(PointsBadge_1.PointsBadge, { pointsAmount: anyspendQuote.data.pointsAmount, pointsMultiplier: anyspendQuote.data.pointsMultiplier, onClick: () => onShowPointsDetail?.() }))] }), (0, jsx_runtime_1.jsxs)("div", { className: "flex flex-col items-end gap-0.5", children: [(0, jsx_runtime_1.jsxs)("span", { className: "text-as-primary font-semibold", children: ["$", getTotalAmount(selectedPaymentMethod || FiatPaymentMethod_1.FiatPaymentMethod.NONE).toFixed(2)] }), (() => {
93
+ : "bg-as-surface-secondary hover:bg-as-surface-secondary"}`, children: ["$", value] }, value))) }), destinationToken && destinationChainId && !hideDstToken && ((0, jsx_runtime_1.jsx)(OrderTokenAmountFiat_1.OrderTokenAmountFiat, { address: _recipientAddress, context: "to", inputValue: destinationAmount || "0", onChangeInput: () => { }, chainId: destinationChainId, setChainId: onDestinationChainChange || (() => { }), token: destinationToken, setToken: onDestinationTokenChange || (() => { }) }))] }), (0, jsx_runtime_1.jsxs)("div", { className: "border-as-border-secondary bg-as-surface-secondary mt-4 flex w-full flex-col gap-3 rounded-xl border p-4", children: [(0, jsx_runtime_1.jsxs)("div", { className: "flex w-full items-center justify-between gap-2", children: [(0, jsx_runtime_1.jsx)("span", { className: "text-as-tertiarry flex items-center text-sm", children: "Recipient" }), _recipientAddress ? ((0, jsx_runtime_1.jsxs)("button", { className: "text-as-tertiarry flex h-7 items-center gap-1 text-sm transition-colors hover:text-blue-700", onClick: () => setActivePanel(recipientSelectionPanelIndex), children: [(0, jsx_runtime_1.jsx)("span", { className: "text-sm", children: customRecipientLabel ||
94
+ (recipientName ? (0, utils_1.formatUsername)(recipientName) : (0, formatAddress_1.formatAddress)(_recipientAddress)) }), (0, jsx_runtime_1.jsx)(lucide_react_1.ChevronRight, { size: 16 })] })) : ((0, jsx_runtime_1.jsxs)("button", { className: "text-as-tertiarry flex h-7 items-center gap-1 text-sm transition-colors hover:text-blue-700", onClick: () => setActivePanel(5), children: [(0, jsx_runtime_1.jsx)(lucide_react_1.Wallet, { className: "text-as-brand", size: 16 }), "Select recipient", (0, jsx_runtime_1.jsx)(lucide_react_1.ChevronRight, { size: 16 })] }))] }), (0, jsx_runtime_1.jsx)("div", { className: "divider w-full" }), (0, jsx_runtime_1.jsxs)("div", { className: "flex items-center justify-between gap-4", children: [(0, jsx_runtime_1.jsx)("span", { className: "text-as-tertiarry text-sm", children: "Expected to receive" }), (0, jsx_runtime_1.jsxs)("div", { className: "flex flex-wrap items-center justify-end gap-1", children: [(0, jsx_runtime_1.jsxs)("span", { className: "text-as-primary font-semibold", children: [destinationAmount || "0", " ", dstTokenSymbol || destinationToken?.symbol || ""] }), (0, jsx_runtime_1.jsxs)("div", { className: "flex items-center gap-1", children: [(0, jsx_runtime_1.jsxs)("span", { className: "text-as-tertiarry text-sm", children: ["on ", destinationChainId ? chain_1.ALL_CHAINS[destinationChainId]?.name : ""] }), destinationToken && destinationChainId && destinationToken.metadata?.logoURI && ((0, jsx_runtime_1.jsx)("img", { src: chain_1.ALL_CHAINS[destinationChainId]?.logoUrl, alt: "Chain", className: "h-4 w-4 rounded-full" }))] })] })] }), (0, jsx_runtime_1.jsx)("div", { className: "divider w-full" }), (0, jsx_runtime_1.jsx)("div", { className: "", children: (0, jsx_runtime_1.jsxs)("div", { className: "flex items-center justify-between", children: [(0, jsx_runtime_1.jsxs)("div", { className: "flex items-center gap-1.5", children: [(0, jsx_runtime_1.jsx)("span", { className: "text-as-tertiarry text-sm", children: "Total" }), anyspendQuote?.data?.fee && onShowFeeDetail && ((0, jsx_runtime_1.jsx)("button", { onClick: onShowFeeDetail, className: "text-as-primary/40 hover:text-as-primary/60 transition-colors", children: (0, jsx_runtime_1.jsx)(lucide_react_1.Info, { className: "h-4 w-4" }) })), anyspendQuote?.data?.pointsAmount && anyspendQuote?.data?.pointsAmount > 0 && ((0, jsx_runtime_1.jsx)(PointsBadge_1.PointsBadge, { pointsAmount: anyspendQuote.data.pointsAmount, pointsMultiplier: anyspendQuote.data.pointsMultiplier, onClick: () => onShowPointsDetail?.() }))] }), (0, jsx_runtime_1.jsxs)("div", { className: "flex flex-col items-end gap-0.5", children: [(0, jsx_runtime_1.jsxs)("span", { className: "text-as-primary font-semibold", children: ["$", getTotalAmount(selectedPaymentMethod || FiatPaymentMethod_1.FiatPaymentMethod.NONE).toFixed(2)] }), (() => {
94
95
  // For fiat payments, show the fee from the payment method
95
96
  const fiatFee = getFeeFromApi(selectedPaymentMethod || FiatPaymentMethod_1.FiatPaymentMethod.NONE);
96
97
  if (fiatFee !== null && fiatFee > 0) {
@@ -5,11 +5,10 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.default = PaymentStripeWeb2;
7
7
  const jsx_runtime_1 = require("react/jsx-runtime");
8
- const payment_utils_1 = require("../../../../shared/utils/payment.utils");
9
8
  const react_1 = require("../../../../anyspend/react");
10
9
  const react_2 = require("../../../../global-account/react");
11
10
  const number_1 = require("../../../../shared/utils/number");
12
- const payment_utils_2 = require("../../../../shared/utils/payment.utils");
11
+ const payment_utils_1 = require("../../../../shared/utils/payment.utils");
13
12
  const react_stripe_js_1 = require("@stripe/react-stripe-js");
14
13
  const lucide_react_1 = require("lucide-react");
15
14
  const react_3 = require("react");
@@ -17,7 +16,7 @@ const AnySpendFingerprintWrapper_1 = require("../AnySpendFingerprintWrapper");
17
16
  const HowItWorks_1 = __importDefault(require("./HowItWorks"));
18
17
  const PaymentMethodIcons_1 = __importDefault(require("./PaymentMethodIcons"));
19
18
  function PaymentStripeWeb2({ order, stripePaymentIntentId, onPaymentSuccess }) {
20
- const { theme, stripePublishableKey } = (0, react_2.useB3)();
19
+ const { theme, stripePublishableKey } = (0, react_2.useB3Config)();
21
20
  const fingerprintConfig = (0, AnySpendFingerprintWrapper_1.getFingerprintConfig)();
22
21
  const { clientSecret, isLoadingStripeClientSecret, stripeClientSecretError } = (0, react_1.useStripeClientSecret)(stripePaymentIntentId);
23
22
  if (isLoadingStripeClientSecret) {
@@ -59,7 +58,7 @@ function StripePaymentForm({ order, clientSecret, onPaymentSuccess, }) {
59
58
  try {
60
59
  const paymentIntent = await stripe.retrievePaymentIntent(clientSecret);
61
60
  const amount = paymentIntent.paymentIntent?.amount
62
- ? (0, payment_utils_2.formatStripeAmount)(paymentIntent.paymentIntent.amount)
61
+ ? (0, payment_utils_1.formatStripeAmount)(paymentIntent.paymentIntent.amount)
63
62
  : null;
64
63
  setAmount(amount);
65
64
  }
@@ -17,7 +17,7 @@ const useValidatedClientReferenceId_1 = require("./useValidatedClientReferenceId
17
17
  */
18
18
  function useAnyspendCreateOnrampOrder({ onSuccess, onError } = {}) {
19
19
  // Get B3 context values
20
- const { partnerId } = (0, react_1.useB3)();
20
+ const { partnerId } = (0, react_1.useB3Config)();
21
21
  // Get validated client reference ID from B3 context
22
22
  const createValidatedClientReferenceId = (0, useValidatedClientReferenceId_1.useValidatedClientReferenceId)();
23
23
  // Get fingerprint data
@@ -15,7 +15,7 @@ const useValidatedClientReferenceId_1 = require("./useValidatedClientReferenceId
15
15
  */
16
16
  function useAnyspendCreateOrder({ onSuccess, onError } = {}) {
17
17
  // Get B3 context values
18
- const { partnerId } = (0, react_1.useB3)();
18
+ const { partnerId } = (0, react_1.useB3Config)();
19
19
  // Get validated client reference ID from B3 context
20
20
  const createValidatedClientReferenceId = (0, useValidatedClientReferenceId_1.useValidatedClientReferenceId)();
21
21
  // Get fingerprint data
@@ -12,7 +12,7 @@ const react_2 = require("react");
12
12
  * This order type doesn't require srcAmount - the user deposits tokens after the order is created.
13
13
  */
14
14
  function useCreateDepositFirstOrder({ onSuccess, onError } = {}) {
15
- const { partnerId } = (0, react_1.useB3)();
15
+ const { partnerId } = (0, react_1.useB3Config)();
16
16
  const { data: fpData } = (0, fingerprintjs_pro_react_1.useVisitorData)({ extendedResult: true }, { immediate: true });
17
17
  const visitorData = fpData && {
18
18
  requestId: fpData.requestId,
@@ -9,7 +9,7 @@ const react_2 = require("react");
9
9
  * Gets the createClientReferenceId function from B3 context and validates the result
10
10
  */
11
11
  function useValidatedClientReferenceId() {
12
- const { createClientReferenceId } = (0, react_1.useB3)();
12
+ const { createClientReferenceId } = (0, react_1.useB3Config)();
13
13
  const createValidatedClientReferenceId = (0, react_2.useCallback)(async (params) => {
14
14
  // If no function provided, return undefined
15
15
  if (!createClientReferenceId) {
@@ -17,7 +17,6 @@ const framer_motion_1 = require("framer-motion");
17
17
  const react_3 = require("react");
18
18
  const react_4 = require("thirdweb/react");
19
19
  const AvatarEditor_1 = require("./AvatarEditor/AvatarEditor");
20
- const useB3_1 = require("./B3Provider/useB3");
21
20
  const Deposit_1 = require("./Deposit/Deposit");
22
21
  const LinkAccount_1 = require("./LinkAccount/LinkAccount");
23
22
  const LinkNewAccount_1 = require("./LinkAccount/LinkNewAccount");
@@ -26,8 +25,8 @@ const NotificationsContent_1 = __importDefault(require("./ManageAccount/Notifica
26
25
  const RequestPermissions_1 = require("./RequestPermissions/RequestPermissions");
27
26
  const Send_1 = require("./Send/Send");
28
27
  const SignInWithB3Flow_1 = require("./SignInWithB3/SignInWithB3Flow");
29
- const TurnkeyAuthModal_1 = require("./TurnkeyAuthModal");
30
28
  const index_1 = require("./Toast/index");
29
+ const TurnkeyAuthModal_1 = require("./TurnkeyAuthModal");
31
30
  const dialog_1 = require("./ui/dialog");
32
31
  const drawer_1 = require("./ui/drawer");
33
32
  const debug = (0, debug_1.debugB3React)("B3DynamicModal");
@@ -36,7 +35,7 @@ function B3DynamicModal() {
36
35
  const setB3ModalOpen = (0, react_2.useModalStore)(state => state.setB3ModalOpen);
37
36
  const contentType = (0, react_2.useModalStore)(state => state.contentType);
38
37
  const navigateBack = (0, react_2.useModalStore)(state => state.navigateBack);
39
- const { theme } = (0, useB3_1.useB3)();
38
+ const { theme } = (0, react_2.useB3Config)();
40
39
  const isMobile = (0, react_2.useIsMobile)();
41
40
  const prevIsOpenRef = (0, react_3.useRef)(isOpen);
42
41
  const { wallet } = (0, react_2.useGlobalAccount)();
@@ -0,0 +1,5 @@
1
+ declare const AuthenticationProvider: ({ partnerId, automaticallySetFirstEoa, }: {
2
+ partnerId: string;
3
+ automaticallySetFirstEoa: boolean;
4
+ }) => null;
5
+ export default AuthenticationProvider;
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const hooks_1 = require("../../hooks");
4
+ const useAutoSelectWallet_1 = require("../../hooks/useAutoSelectWallet");
5
+ const AuthenticationProvider = ({ partnerId, automaticallySetFirstEoa, }) => {
6
+ (0, hooks_1.useAuthentication)(partnerId);
7
+ (0, useAutoSelectWallet_1.useAutoSelectWallet)({
8
+ enabled: automaticallySetFirstEoa,
9
+ });
10
+ return null;
11
+ };
12
+ exports.default = AuthenticationProvider;
@@ -5,15 +5,14 @@ import "@relayprotocol/relay-kit-ui/styles.css";
5
5
  import { Account, Wallet } from "thirdweb/wallets";
6
6
  import { CreateConnectorFn } from "wagmi";
7
7
  import { ClientType } from "../../../client-manager";
8
- import { B3ContextType } from "./types";
9
8
  /**
10
9
  * Main B3Provider component
11
10
  */
12
- export declare function B3Provider({ theme, children, accountOverride, environment, automaticallySetFirstEoa, simDuneApiKey, toaster: _toaster, clientType, rpcUrls, partnerId, stripePublishableKey, onConnect, connectors, overrideDefaultConnectors, createClientReferenceId, enableTurnkey, }: {
11
+ export declare function B3Provider({ theme, children, accountOverride, environment, automaticallySetFirstEoa, simDuneApiKey, toaster: _toaster, clientType, rpcUrls, partnerId, stripePublishableKey, onConnect, connectors, overrideDefaultConnectors, createClientReferenceId, enableTurnkey, defaultPermissions, }: {
13
12
  theme: "light" | "dark";
14
13
  children: React.ReactNode;
15
14
  accountOverride?: Account;
16
- environment: B3ContextType["environment"];
15
+ environment?: "development" | "production";
17
16
  automaticallySetFirstEoa?: boolean;
18
17
  simDuneApiKey?: string;
19
18
  toaster?: {
@@ -30,20 +29,5 @@ export declare function B3Provider({ theme, children, accountOverride, environme
30
29
  overrideDefaultConnectors?: boolean;
31
30
  createClientReferenceId?: (params: CreateOrderParams | CreateOnrampOrderParams) => Promise<string>;
32
31
  enableTurnkey?: boolean;
33
- }): import("react/jsx-runtime").JSX.Element;
34
- /**
35
- * Inner provider component that provides the actual B3Context
36
- */
37
- export declare function InnerProvider({ children, accountOverride, environment, defaultPermissions, automaticallySetFirstEoa, theme, clientType, partnerId, stripePublishableKey, createClientReferenceId, enableTurnkey, }: {
38
- children: React.ReactNode;
39
- accountOverride?: Account;
40
- environment: B3ContextType["environment"];
41
32
  defaultPermissions?: PermissionsConfig;
42
- automaticallySetFirstEoa: boolean;
43
- theme: "light" | "dark";
44
- clientType?: ClientType;
45
- partnerId: string;
46
- stripePublishableKey?: string;
47
- createClientReferenceId?: (params: CreateOrderParams | CreateOnrampOrderParams) => Promise<string>;
48
- enableTurnkey?: boolean;
49
33
  }): import("react/jsx-runtime").JSX.Element;