@b3dotfun/sdk 0.0.13 → 0.0.14-alpha.2

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 (76) hide show
  1. package/dist/cjs/anyspend/react/components/AnySpendFingerprintWrapper.d.ts +17 -0
  2. package/dist/cjs/anyspend/react/components/AnySpendFingerprintWrapper.js +40 -0
  3. package/dist/cjs/anyspend/react/components/common/PanelOnrampPayment.d.ts +1 -1
  4. package/dist/cjs/anyspend/react/components/common/PanelOnrampPayment.js +9 -4
  5. package/dist/cjs/anyspend/react/components/common/PaymentStripeWeb2.js +6 -9
  6. package/dist/cjs/anyspend/react/components/index.d.ts +1 -0
  7. package/dist/cjs/anyspend/react/components/index.js +15 -0
  8. package/dist/cjs/anyspend/react/components/webview/WebviewOnrampPayment.d.ts +1 -1
  9. package/dist/cjs/anyspend/react/components/webview/WebviewOnrampPayment.js +6 -1
  10. package/dist/cjs/anyspend/react/hooks/useAnyspendCreateOnrampOrder.d.ts +1 -1
  11. package/dist/cjs/anyspend/react/hooks/useAnyspendCreateOnrampOrder.js +14 -2
  12. package/dist/cjs/anyspend/react/hooks/useAnyspendCreateOrder.js +14 -2
  13. package/dist/cjs/anyspend/react/hooks/useCoinbaseOnrampOptions.d.ts +2 -1
  14. package/dist/cjs/anyspend/react/hooks/useCoinbaseOnrampOptions.js +4 -4
  15. package/dist/cjs/anyspend/react/hooks/useGeoOnrampOptions.d.ts +1 -1
  16. package/dist/cjs/anyspend/react/hooks/useGeoOnrampOptions.js +10 -3
  17. package/dist/cjs/anyspend/react/hooks/useStripeSupport.d.ts +2 -1
  18. package/dist/cjs/anyspend/react/hooks/useStripeSupport.js +4 -4
  19. package/dist/cjs/anyspend/react/providers/StripeRedirectHandler.js +0 -3
  20. package/dist/cjs/anyspend/services/anyspend.d.ts +6 -4
  21. package/dist/cjs/anyspend/services/anyspend.js +14 -4
  22. package/dist/cjs/anyspend/types/fingerprint.d.ts +14 -0
  23. package/dist/cjs/anyspend/types/fingerprint.js +6 -0
  24. package/dist/cjs/global-account/react/hooks/useAuthentication.d.ts +1 -1
  25. package/dist/cjs/global-account/react/hooks/useTokenBalancesByChain.js +0 -1
  26. package/dist/esm/anyspend/react/components/AnySpendFingerprintWrapper.d.ts +17 -0
  27. package/dist/esm/anyspend/react/components/AnySpendFingerprintWrapper.js +36 -0
  28. package/dist/esm/anyspend/react/components/common/PanelOnrampPayment.d.ts +1 -1
  29. package/dist/esm/anyspend/react/components/common/PanelOnrampPayment.js +9 -4
  30. package/dist/esm/anyspend/react/components/common/PaymentStripeWeb2.js +6 -9
  31. package/dist/esm/anyspend/react/components/index.d.ts +1 -0
  32. package/dist/esm/anyspend/react/components/index.js +1 -0
  33. package/dist/esm/anyspend/react/components/webview/WebviewOnrampPayment.d.ts +1 -1
  34. package/dist/esm/anyspend/react/components/webview/WebviewOnrampPayment.js +6 -1
  35. package/dist/esm/anyspend/react/hooks/useAnyspendCreateOnrampOrder.d.ts +1 -1
  36. package/dist/esm/anyspend/react/hooks/useAnyspendCreateOnrampOrder.js +14 -2
  37. package/dist/esm/anyspend/react/hooks/useAnyspendCreateOrder.js +14 -2
  38. package/dist/esm/anyspend/react/hooks/useCoinbaseOnrampOptions.d.ts +2 -1
  39. package/dist/esm/anyspend/react/hooks/useCoinbaseOnrampOptions.js +4 -4
  40. package/dist/esm/anyspend/react/hooks/useGeoOnrampOptions.d.ts +1 -1
  41. package/dist/esm/anyspend/react/hooks/useGeoOnrampOptions.js +10 -3
  42. package/dist/esm/anyspend/react/hooks/useStripeSupport.d.ts +2 -1
  43. package/dist/esm/anyspend/react/hooks/useStripeSupport.js +4 -4
  44. package/dist/esm/anyspend/react/providers/StripeRedirectHandler.js +0 -3
  45. package/dist/esm/anyspend/services/anyspend.d.ts +6 -4
  46. package/dist/esm/anyspend/services/anyspend.js +14 -4
  47. package/dist/esm/anyspend/types/fingerprint.d.ts +14 -0
  48. package/dist/esm/anyspend/types/fingerprint.js +5 -0
  49. package/dist/esm/global-account/react/hooks/useAuthentication.d.ts +1 -1
  50. package/dist/esm/global-account/react/hooks/useTokenBalancesByChain.js +0 -1
  51. package/dist/types/anyspend/react/components/AnySpendFingerprintWrapper.d.ts +17 -0
  52. package/dist/types/anyspend/react/components/common/PanelOnrampPayment.d.ts +1 -1
  53. package/dist/types/anyspend/react/components/index.d.ts +1 -0
  54. package/dist/types/anyspend/react/components/webview/WebviewOnrampPayment.d.ts +1 -1
  55. package/dist/types/anyspend/react/hooks/useAnyspendCreateOnrampOrder.d.ts +1 -1
  56. package/dist/types/anyspend/react/hooks/useCoinbaseOnrampOptions.d.ts +2 -1
  57. package/dist/types/anyspend/react/hooks/useGeoOnrampOptions.d.ts +1 -1
  58. package/dist/types/anyspend/react/hooks/useStripeSupport.d.ts +2 -1
  59. package/dist/types/anyspend/services/anyspend.d.ts +6 -4
  60. package/dist/types/anyspend/types/fingerprint.d.ts +14 -0
  61. package/dist/types/global-account/react/hooks/useAuthentication.d.ts +1 -1
  62. package/package.json +26 -25
  63. package/src/anyspend/react/components/AnySpendFingerprintWrapper.tsx +60 -0
  64. package/src/anyspend/react/components/common/PanelOnrampPayment.tsx +38 -24
  65. package/src/anyspend/react/components/common/PaymentStripeWeb2.tsx +13 -16
  66. package/src/anyspend/react/components/index.ts +1 -0
  67. package/src/anyspend/react/components/webview/WebviewOnrampPayment.tsx +11 -1
  68. package/src/anyspend/react/hooks/useAnyspendCreateOnrampOrder.ts +18 -3
  69. package/src/anyspend/react/hooks/useAnyspendCreateOrder.ts +16 -3
  70. package/src/anyspend/react/hooks/useCoinbaseOnrampOptions.ts +10 -4
  71. package/src/anyspend/react/hooks/useGeoOnrampOptions.ts +15 -4
  72. package/src/anyspend/react/hooks/useStripeSupport.ts +11 -4
  73. package/src/anyspend/react/providers/StripeRedirectHandler.tsx +0 -4
  74. package/src/anyspend/services/anyspend.ts +21 -2
  75. package/src/anyspend/types/fingerprint.ts +15 -0
  76. package/src/global-account/react/hooks/useTokenBalancesByChain.tsx +0 -1
@@ -2,6 +2,7 @@ import { ANYSPEND_MAINNET_BASE_URL, ANYSPEND_TESTNET_BASE_URL } from "@b3dotfun/
2
2
  import { OnrampOptions } from "@b3dotfun/sdk/anyspend/react";
3
3
  import { getNativeToken, isNativeToken } from "@b3dotfun/sdk/anyspend/utils";
4
4
  import invariant from "invariant";
5
+ import { components } from "../types/api";
5
6
  import {
6
7
  CreateOrderResponse,
7
8
  GetCoinbaseOnrampOptionsResponse,
@@ -13,7 +14,7 @@ import {
13
14
  GetStripeSupportedResponse,
14
15
  GetTokenListResponse,
15
16
  } from "../types/api_req_res";
16
- import { components } from "../types/api";
17
+ import { VisitorData } from "../types/fingerprint";
17
18
 
18
19
  // Service functions
19
20
  export const anyspendService = {
@@ -77,6 +78,7 @@ export const anyspendService = {
77
78
  metadata,
78
79
  creatorAddress,
79
80
  partnerId,
81
+ visitorData,
80
82
  }: {
81
83
  isMainnet: boolean;
82
84
  recipientAddress: string;
@@ -91,11 +93,14 @@ export const anyspendService = {
91
93
  metadata: Record<string, any>;
92
94
  creatorAddress?: string;
93
95
  partnerId?: string;
96
+ visitorData?: VisitorData;
94
97
  }) => {
95
98
  const response = await fetch(`${isMainnet ? ANYSPEND_MAINNET_BASE_URL : ANYSPEND_TESTNET_BASE_URL}/orders`, {
96
99
  method: "POST",
97
100
  headers: {
98
101
  "Content-Type": "application/json",
102
+ ...(visitorData?.requestId && { "X-Fingerprint-Request-Id": visitorData.requestId }),
103
+ ...(visitorData?.visitorId && { "X-Fingerprint-Visitor-Id": visitorData.visitorId }),
99
104
  },
100
105
  body: JSON.stringify({
101
106
  recipientAddress,
@@ -145,9 +150,16 @@ export const anyspendService = {
145
150
  return data;
146
151
  },
147
152
 
148
- getCoinbaseOnrampOptions: async (isMainnet: boolean, country: string): Promise<GetCoinbaseOnrampOptionsResponse> => {
153
+ getCoinbaseOnrampOptions: async (
154
+ isMainnet: boolean,
155
+ country: string,
156
+ visitorData?: VisitorData,
157
+ ): Promise<GetCoinbaseOnrampOptionsResponse> => {
149
158
  const params = new URLSearchParams({
150
159
  country,
160
+ // include fingerprintId and requestId in the query params
161
+ ...(visitorData?.requestId && { requestId: visitorData.requestId }),
162
+ ...(visitorData?.visitorId && { fingerprintId: visitorData.visitorId }),
151
163
  });
152
164
  const response = await fetch(
153
165
  `${isMainnet ? ANYSPEND_MAINNET_BASE_URL : ANYSPEND_TESTNET_BASE_URL}/onramp/coinbase/options?${params.toString()}`,
@@ -160,6 +172,7 @@ export const anyspendService = {
160
172
  isMainnet: boolean,
161
173
  ipAddress: string,
162
174
  usdAmount?: string,
175
+ visitorData?: VisitorData,
163
176
  ): Promise<{ stripeOnramp: boolean; stripeWeb2: boolean }> => {
164
177
  const params = new URLSearchParams({
165
178
  ipAddress,
@@ -167,6 +180,12 @@ export const anyspendService = {
167
180
  });
168
181
  const response = await fetch(
169
182
  `${isMainnet ? ANYSPEND_MAINNET_BASE_URL : ANYSPEND_TESTNET_BASE_URL}/onramp/stripe/supported?${params.toString()}`,
183
+ {
184
+ headers: {
185
+ ...(visitorData?.requestId && { "X-Fingerprint-Request-Id": visitorData.requestId }),
186
+ ...(visitorData?.visitorId && { "X-Fingerprint-Visitor-Id": visitorData.visitorId }),
187
+ },
188
+ },
170
189
  );
171
190
  const data: GetStripeSupportedResponse = await response.json();
172
191
  invariant(response.status === 200, "Failed to check Stripe support");
@@ -0,0 +1,15 @@
1
+ /**
2
+ * Types related to FingerprintJS integration
3
+ * We only need requestId and visitorId from the full FingerprintJS visitor data
4
+ */
5
+
6
+ export interface VisitorData {
7
+ /**
8
+ * @description The unique identifier of the request to get visitor data
9
+ */
10
+ requestId: string;
11
+ /**
12
+ * @description The unique identifier of the visitor
13
+ */
14
+ visitorId: string;
15
+ }
@@ -58,7 +58,6 @@ export function useTokenBalancesByChain({
58
58
  });
59
59
 
60
60
  return {
61
- chainId,
62
61
  ...walletBalance,
63
62
  };
64
63
  }),