@b3dotfun/sdk 0.0.18 → 0.0.19-alpha.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (59) hide show
  1. package/README.md +29 -51
  2. package/dist/cjs/anyspend/react/components/AnySpend.js +21 -2
  3. package/dist/cjs/anyspend/react/components/common/FiatPaymentMethod.js +2 -2
  4. package/dist/cjs/anyspend/react/providers/AnyspendProvider.d.ts +1 -2
  5. package/dist/cjs/anyspend/react/providers/AnyspendProvider.js +2 -3
  6. package/dist/cjs/global-account/react/components/B3Provider/B3Provider.d.ts +3 -1
  7. package/dist/cjs/global-account/react/components/B3Provider/B3Provider.js +2 -2
  8. package/dist/cjs/global-account/react/components/B3Provider/B3Provider.native.js +3 -1
  9. package/dist/cjs/global-account/react/components/index.d.ts +1 -0
  10. package/dist/cjs/global-account/react/components/index.js +4 -2
  11. package/dist/cjs/global-account/react/components/ui/Loading.js +1 -1
  12. package/dist/cjs/shared/thirdweb/generated/@tanstack/react-query.gen.d.ts +4 -4
  13. package/dist/cjs/shared/thirdweb/generated/@tanstack/react-query.gen.js +360 -313
  14. package/dist/cjs/shared/thirdweb/generated/client.gen.d.ts +2 -2
  15. package/dist/cjs/shared/thirdweb/generated/sdk.gen.d.ts +2 -2
  16. package/dist/cjs/shared/thirdweb/generated/sdk.gen.js +398 -398
  17. package/dist/cjs/shared/thirdweb/generated/types.gen.d.ts +135 -135
  18. package/dist/esm/anyspend/react/components/AnySpend.js +21 -2
  19. package/dist/esm/anyspend/react/components/common/FiatPaymentMethod.js +2 -2
  20. package/dist/esm/anyspend/react/providers/AnyspendProvider.d.ts +1 -2
  21. package/dist/esm/anyspend/react/providers/AnyspendProvider.js +2 -3
  22. package/dist/esm/global-account/react/components/B3Provider/B3Provider.d.ts +3 -1
  23. package/dist/esm/global-account/react/components/B3Provider/B3Provider.js +3 -3
  24. package/dist/esm/global-account/react/components/B3Provider/B3Provider.native.js +3 -1
  25. package/dist/esm/global-account/react/components/index.d.ts +1 -0
  26. package/dist/esm/global-account/react/components/index.js +1 -0
  27. package/dist/esm/global-account/react/components/ui/Loading.js +1 -1
  28. package/dist/esm/shared/thirdweb/generated/@tanstack/react-query.gen.d.ts +4 -4
  29. package/dist/esm/shared/thirdweb/generated/@tanstack/react-query.gen.js +363 -316
  30. package/dist/esm/shared/thirdweb/generated/client.gen.d.ts +2 -2
  31. package/dist/esm/shared/thirdweb/generated/client.gen.js +1 -1
  32. package/dist/esm/shared/thirdweb/generated/sdk.gen.d.ts +2 -2
  33. package/dist/esm/shared/thirdweb/generated/sdk.gen.js +399 -399
  34. package/dist/esm/shared/thirdweb/generated/types.gen.d.ts +135 -135
  35. package/dist/types/anyspend/react/providers/AnyspendProvider.d.ts +1 -2
  36. package/dist/types/global-account/react/components/B3Provider/B3Provider.d.ts +3 -1
  37. package/dist/types/global-account/react/components/index.d.ts +1 -0
  38. package/dist/types/shared/thirdweb/generated/@tanstack/react-query.gen.d.ts +4 -4
  39. package/dist/types/shared/thirdweb/generated/client.gen.d.ts +2 -2
  40. package/dist/types/shared/thirdweb/generated/sdk.gen.d.ts +2 -2
  41. package/dist/types/shared/thirdweb/generated/types.gen.d.ts +135 -135
  42. package/package.json +2 -2
  43. package/src/anyspend/react/components/AnySpend.tsx +25 -6
  44. package/src/anyspend/react/components/common/FiatPaymentMethod.tsx +2 -2
  45. package/src/anyspend/react/providers/AnyspendProvider.tsx +5 -9
  46. package/src/global-account/react/components/B3Provider/B3Provider.native.tsx +1 -0
  47. package/src/global-account/react/components/B3Provider/B3Provider.tsx +11 -5
  48. package/src/global-account/react/components/index.ts +1 -0
  49. package/src/global-account/react/components/ui/Loading.tsx +1 -1
  50. package/src/shared/thirdweb/generated/@tanstack/react-query.gen.ts +1886 -1220
  51. package/src/shared/thirdweb/generated/client.gen.ts +11 -4
  52. package/src/shared/thirdweb/generated/sdk.gen.ts +1083 -809
  53. package/src/shared/thirdweb/generated/types.gen.ts +3953 -3862
  54. /package/dist/cjs/{anyspend/react/providers → global-account/react/components/B3Provider}/RelayKitProviderWrapper.d.ts +0 -0
  55. /package/dist/cjs/{anyspend/react/providers → global-account/react/components/B3Provider}/RelayKitProviderWrapper.js +0 -0
  56. /package/dist/esm/{anyspend/react/providers → global-account/react/components/B3Provider}/RelayKitProviderWrapper.d.ts +0 -0
  57. /package/dist/esm/{anyspend/react/providers → global-account/react/components/B3Provider}/RelayKitProviderWrapper.js +0 -0
  58. /package/dist/types/{anyspend/react/providers → global-account/react/components/B3Provider}/RelayKitProviderWrapper.d.ts +0 -0
  59. /package/src/{anyspend/react/providers → global-account/react/components/B3Provider}/RelayKitProviderWrapper.tsx +0 -0
@@ -291,6 +291,26 @@ function AnySpendInner({ destinationTokenAddress, destinationTokenChainId, isMai
291
291
  useEffect(() => {
292
292
  setRecipientAddress(recipientAddressFromProps || globalAddress);
293
293
  }, [recipientAddressFromProps, globalAddress]);
294
+ // Get geo-based onramp options for fiat payments
295
+ const { geoData, coinbaseAvailablePaymentMethods, isStripeOnrampSupported, stripeWeb2Support } = useGeoOnrampOptions(isMainnet, srcAmountOnRamp);
296
+ // Helper function to map payment method to onramp vendor
297
+ const getOnrampVendor = (paymentMethod) => {
298
+ switch (paymentMethod) {
299
+ case FiatPaymentMethod.COINBASE_PAY:
300
+ return "coinbase";
301
+ case FiatPaymentMethod.STRIPE:
302
+ // Determine if it's stripe onramp or stripe-web2 based on support
303
+ if (isStripeOnrampSupported) {
304
+ return "stripe";
305
+ }
306
+ else if (stripeWeb2Support?.isSupport) {
307
+ return "stripe-web2";
308
+ }
309
+ return undefined;
310
+ default:
311
+ return undefined;
312
+ }
313
+ };
294
314
  // Get anyspend price
295
315
  const activeInputAmountInWei = isSrcInputDirty
296
316
  ? parseUnits(srcAmount.replace(/,/g, ""), selectedSrcToken.decimals).toString()
@@ -314,6 +334,7 @@ function AnySpendInner({ destinationTokenAddress, destinationTokenChainId, isMai
314
334
  type: "swap",
315
335
  tradeType: "EXACT_INPUT",
316
336
  amount: srcAmountOnrampInWei,
337
+ onrampVendor: getOnrampVendor(selectedFiatPaymentMethod),
317
338
  });
318
339
  const recipientProfile = useProfile({ address: recipientAddress });
319
340
  const recipientName = recipientProfile.data?.name?.replace(/\.b3\.fun/g, "");
@@ -518,8 +539,6 @@ function AnySpendInner({ destinationTokenAddress, destinationTokenChainId, isMai
518
539
  toast.error("Failed to create order: " + error.message);
519
540
  },
520
541
  });
521
- // Get geo-based onramp options for fiat payments
522
- const { geoData, coinbaseAvailablePaymentMethods, isStripeOnrampSupported, stripeWeb2Support } = useGeoOnrampOptions(isMainnet, srcAmountOnRamp);
523
542
  // Determine button state and text
524
543
  const btnInfo = useMemo(() => {
525
544
  if (activeInputAmountInWei === "0")
@@ -14,8 +14,8 @@ export function FiatPaymentMethodComponent({ selectedPaymentMethod, setSelectedP
14
14
  const getFeeFromApi = (paymentMethod) => {
15
15
  switch (paymentMethod) {
16
16
  case FiatPaymentMethod.COINBASE_PAY:
17
- // Coinbase doesn't provide fee info in API, use hardcoded $0.02
18
- return "0.02";
17
+ // Coinbase doesn't provide fee info in API, return null
18
+ return null;
19
19
  case FiatPaymentMethod.STRIPE:
20
20
  // Get fee from Stripe API response
21
21
  if (stripeWeb2Support && "formattedFeeUsd" in stripeWeb2Support) {
@@ -1,7 +1,6 @@
1
1
  import { ReactNode } from "react";
2
2
  interface AnyspendProviderProps {
3
3
  children: ReactNode;
4
- simDuneApiKey?: string;
5
4
  }
6
5
  /**
7
6
  * AnyspendProvider is a top-level provider that wraps your application to provide
@@ -25,5 +24,5 @@ interface AnyspendProviderProps {
25
24
  * }
26
25
  * ```
27
26
  */
28
- export declare const AnyspendProvider: ({ children, simDuneApiKey }: AnyspendProviderProps) => import("react/jsx-runtime").JSX.Element;
27
+ export declare const AnyspendProvider: ({ children }: AnyspendProviderProps) => import("react/jsx-runtime").JSX.Element;
29
28
  export {};
@@ -4,7 +4,6 @@ import { TooltipProvider } from "../../../global-account/react/index.js";
4
4
  import { QueryClient, QueryClientProvider } from "@tanstack/react-query";
5
5
  import { useState } from "react";
6
6
  import { StripeRedirectHandler } from "./StripeRedirectHandler.js";
7
- import { RelayKitProviderWrapper } from "./RelayKitProviderWrapper.js";
8
7
  const defaultQueryClientConfig = {
9
8
  defaultOptions: {
10
9
  queries: {
@@ -36,7 +35,7 @@ const defaultQueryClientConfig = {
36
35
  * }
37
36
  * ```
38
37
  */
39
- export const AnyspendProvider = function AnyspendProvider({ children, simDuneApiKey }) {
38
+ export const AnyspendProvider = function AnyspendProvider({ children }) {
40
39
  const [queryClient] = useState(() => new QueryClient(defaultQueryClientConfig));
41
- return (_jsx(QueryClientProvider, { client: queryClient, children: _jsx(RelayKitProviderWrapper, { isMainnet: true, simDuneApiKey: simDuneApiKey, children: _jsxs(TooltipProvider, { children: [_jsx(StripeRedirectHandler, {}), children] }) }) }));
40
+ return (_jsx(QueryClientProvider, { client: queryClient, children: _jsxs(TooltipProvider, { children: [_jsx(StripeRedirectHandler, {}), children] }) }));
42
41
  };
@@ -6,12 +6,14 @@ export declare const wagmiConfig: import("wagmi").Config<readonly [import("viem"
6
6
  /**
7
7
  * Main B3Provider component
8
8
  */
9
- export declare function B3Provider({ theme, children, accountOverride, environment, automaticallySetFirstEoa, }: {
9
+ export declare function B3Provider({ isMainnetAnySpend, theme, children, accountOverride, environment, automaticallySetFirstEoa, simDuneApiKey, }: {
10
+ isMainnetAnySpend?: boolean;
10
11
  theme: "light" | "dark";
11
12
  children: React.ReactNode;
12
13
  accountOverride?: Account;
13
14
  environment: B3ContextType["environment"];
14
15
  automaticallySetFirstEoa?: boolean;
16
+ simDuneApiKey?: string;
15
17
  }): import("react/jsx-runtime").JSX.Element;
16
18
  /**
17
19
  * Inner provider component that provides the actual B3Context
@@ -1,5 +1,5 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- import { TooltipProvider, useAuthStore } from "../../../../global-account/react/index.js";
2
+ import { RelayKitProviderWrapper, TooltipProvider, useAuthStore } from "../../../../global-account/react/index.js";
3
3
  import { supportedChains } from "../../../../shared/constants/chains/supported.js";
4
4
  import { QueryClient, QueryClientProvider } from "@tanstack/react-query";
5
5
  import { useCallback, useEffect, useState } from "react";
@@ -27,8 +27,8 @@ const queryClient = new QueryClient();
27
27
  /**
28
28
  * Main B3Provider component
29
29
  */
30
- export function B3Provider({ theme = "light", children, accountOverride, environment, automaticallySetFirstEoa, }) {
31
- return (_jsx(WagmiProvider, { config: wagmiConfig, children: _jsx(QueryClientProvider, { client: queryClient, children: _jsx(ThirdwebProvider, { children: _jsx(TooltipProvider, { children: _jsxs(InnerProvider, { accountOverride: accountOverride, environment: environment, theme: theme, automaticallySetFirstEoa: !!automaticallySetFirstEoa, children: [children, _jsx(StyleRoot, { id: "b3-root" }), _jsx(Toaster, { theme: theme })] }) }) }) }) }));
30
+ export function B3Provider({ isMainnetAnySpend = true, theme = "light", children, accountOverride, environment, automaticallySetFirstEoa, simDuneApiKey, }) {
31
+ return (_jsx(WagmiProvider, { config: wagmiConfig, children: _jsx(QueryClientProvider, { client: queryClient, children: _jsx(ThirdwebProvider, { children: _jsx(TooltipProvider, { children: _jsx(InnerProvider, { accountOverride: accountOverride, environment: environment, theme: theme, automaticallySetFirstEoa: !!automaticallySetFirstEoa, children: _jsxs(RelayKitProviderWrapper, { isMainnet: isMainnetAnySpend, simDuneApiKey: simDuneApiKey, children: [children, _jsx(StyleRoot, { id: "b3-root" }), _jsx(Toaster, { theme: theme })] }) }) }) }) }) }));
32
32
  }
33
33
  /**
34
34
  * Inner provider component that provides the actual B3Context
@@ -17,7 +17,9 @@ const queryClient = new QueryClient();
17
17
  /**
18
18
  * Main B3Provider component
19
19
  */
20
- export function B3Provider({ isMainnetAnySpend = true, theme = "light", children, accountOverride, environment, }) {
20
+ export function B3Provider({
21
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
22
+ isMainnetAnySpend = true, theme = "light", children, accountOverride, environment, }) {
21
23
  return (_jsx(QueryClientProvider, { client: queryClient, children: _jsx(ThirdwebProvider, { children: _jsx(InnerProvider, { accountOverride: accountOverride, environment: environment, theme: theme, children: children }) }) }));
22
24
  }
23
25
  /**
@@ -1,3 +1,4 @@
1
+ export { RelayKitProviderWrapper } from "./B3Provider/RelayKitProviderWrapper";
1
2
  export { B3DynamicModal } from "./B3DynamicModal";
2
3
  export { B3Provider, InnerProvider } from "./B3Provider/B3Provider";
3
4
  export { B3Context, type B3ContextType } from "./B3Provider/types";
@@ -1,4 +1,5 @@
1
1
  // Core Components
2
+ export { RelayKitProviderWrapper } from "./B3Provider/RelayKitProviderWrapper.js";
2
3
  export { B3DynamicModal } from "./B3DynamicModal.js";
3
4
  export { B3Provider, InnerProvider } from "./B3Provider/B3Provider.js";
4
5
  export { B3Context } from "./B3Provider/types.js";
@@ -9,7 +9,7 @@ export function Loading({ className, size = "md", variant = "white" }) {
9
9
  }[size];
10
10
  const variantClass = {
11
11
  primary: "text-b3-react-primary",
12
- white: "text-white opacity-50",
12
+ white: "opacity-50",
13
13
  }[variant];
14
14
  return (_jsx("div", { className: cn("relative", sizeClass, className), children: _jsx(Loader2, { className: cn("animate-spin", sizeClass, variantClass) }) }));
15
15
  }
@@ -1,8 +1,8 @@
1
- import { type Options } from '../sdk.gen';
2
- import { type UseMutationOptions, type InfiniteData } from '@tanstack/react-query';
3
- import type { GetV1WebhooksData, PostV1WebhooksData, PostV1WebhooksError, PostV1WebhooksResponse, DeleteV1WebhooksByWebhookIdData, DeleteV1WebhooksByWebhookIdError, DeleteV1WebhooksByWebhookIdResponse, PatchV1WebhooksByWebhookIdData, PatchV1WebhooksByWebhookIdError, PatchV1WebhooksByWebhookIdResponse, PostV1WebhooksTestData, PostV1WebhooksTestError, PostV1WebhooksTestResponse, GetV1EventsData, GetV1EventsError, GetV1EventsByContractAddressData, GetV1EventsByContractAddressError, GetV1EventsByContractAddressBySignatureData, GetV1EventsByContractAddressBySignatureError, GetV1TransactionsData, GetV1TransactionsError, GetV1TransactionsByContractAddressData, GetV1TransactionsByContractAddressError, GetV1TransactionsByContractAddressBySignatureData, GetV1TransactionsByContractAddressBySignatureError, GetV1TokensTransfersTransactionByTransactionHashData, GetV1TokensTransfersByContractAddressData, GetV1TokensTransfersData, GetV1TokensErc20ByOwnerAddressData, GetV1TokensErc721ByOwnerAddressData, GetV1TokensErc1155ByOwnerAddressData, GetV1TokensPriceSupportedData, GetV1TokensPriceData, GetV1TokensLookupData, GetV1ResolveByInputData, GetV1BlocksData, GetV1BlocksError, GetV1ContractsAbiByContractAddressData, GetV1ContractsMetadataByContractAddressData, PostV1DecodeByContractAddressData, PostV1DecodeByContractAddressError, PostV1DecodeByContractAddressResponse, GetV1NftsBalanceByOwnerAddressData, GetV1NftsCollectionsByContractAddressData, GetV1NftsData, GetV1NftsOwnersByContractAddressData, GetV1NftsOwnersByContractAddressByTokenIdData, GetV1NftsTransfersData, GetV1NftsTransfersTransactionByTransactionHashData, GetV1NftsTransfersByContractAddressData, GetV1NftsByContractAddressData, GetV1NftsTransfersByContractAddressByTokenIdData, GetV1NftsByContractAddressByTokenIdData, GetV1NftsMetadataRefreshByContractAddressData, GetV1NftsMetadataRefreshByContractAddressByTokenIdData, GetV1WalletsByWalletAddressTransactionsData, GetV1WalletsByWalletAddressTransactionsError } from '../types.gen';
1
+ import { type Options } from "../sdk.gen";
2
+ import { type UseMutationOptions, type InfiniteData } from "@tanstack/react-query";
3
+ import type { GetV1WebhooksData, PostV1WebhooksData, PostV1WebhooksError, PostV1WebhooksResponse, DeleteV1WebhooksByWebhookIdData, DeleteV1WebhooksByWebhookIdError, DeleteV1WebhooksByWebhookIdResponse, PatchV1WebhooksByWebhookIdData, PatchV1WebhooksByWebhookIdError, PatchV1WebhooksByWebhookIdResponse, PostV1WebhooksTestData, PostV1WebhooksTestError, PostV1WebhooksTestResponse, GetV1EventsData, GetV1EventsError, GetV1EventsByContractAddressData, GetV1EventsByContractAddressError, GetV1EventsByContractAddressBySignatureData, GetV1EventsByContractAddressBySignatureError, GetV1TransactionsData, GetV1TransactionsError, GetV1TransactionsByContractAddressData, GetV1TransactionsByContractAddressError, GetV1TransactionsByContractAddressBySignatureData, GetV1TransactionsByContractAddressBySignatureError, GetV1TokensTransfersTransactionByTransactionHashData, GetV1TokensTransfersByContractAddressData, GetV1TokensTransfersData, GetV1TokensErc20ByOwnerAddressData, GetV1TokensErc721ByOwnerAddressData, GetV1TokensErc1155ByOwnerAddressData, GetV1TokensPriceSupportedData, GetV1TokensPriceData, GetV1TokensLookupData, GetV1ResolveByInputData, GetV1BlocksData, GetV1BlocksError, GetV1ContractsAbiByContractAddressData, GetV1ContractsMetadataByContractAddressData, PostV1DecodeByContractAddressData, PostV1DecodeByContractAddressError, PostV1DecodeByContractAddressResponse, GetV1NftsBalanceByOwnerAddressData, GetV1NftsCollectionsByContractAddressData, GetV1NftsData, GetV1NftsOwnersByContractAddressData, GetV1NftsOwnersByContractAddressByTokenIdData, GetV1NftsTransfersData, GetV1NftsTransfersTransactionByTransactionHashData, GetV1NftsTransfersByContractAddressData, GetV1NftsByContractAddressData, GetV1NftsTransfersByContractAddressByTokenIdData, GetV1NftsByContractAddressByTokenIdData, GetV1NftsMetadataRefreshByContractAddressData, GetV1NftsMetadataRefreshByContractAddressByTokenIdData, GetV1WalletsByWalletAddressTransactionsData, GetV1WalletsByWalletAddressTransactionsError } from "../types.gen";
4
4
  export type QueryKey<TOptions extends Options> = [
5
- Pick<TOptions, 'baseUrl' | 'body' | 'headers' | 'path' | 'query'> & {
5
+ Pick<TOptions, "baseUrl" | "body" | "headers" | "path" | "query"> & {
6
6
  _id: string;
7
7
  _infinite?: boolean;
8
8
  }