thirdweb 5.105.3 → 5.105.4-nightly-1f72396d7fa4748efef179821a7a796b53679bcb-20250629000440

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 (75) hide show
  1. package/dist/cjs/react/web/ui/Bridge/BridgeOrchestrator.js +2 -2
  2. package/dist/cjs/react/web/ui/Bridge/BridgeOrchestrator.js.map +1 -1
  3. package/dist/cjs/react/web/ui/Bridge/BuyWidget.js +1 -1
  4. package/dist/cjs/react/web/ui/Bridge/BuyWidget.js.map +1 -1
  5. package/dist/cjs/react/web/ui/Bridge/CheckoutWidget.js +1 -1
  6. package/dist/cjs/react/web/ui/Bridge/CheckoutWidget.js.map +1 -1
  7. package/dist/cjs/react/web/ui/Bridge/TransactionWidget.js +1 -1
  8. package/dist/cjs/react/web/ui/Bridge/TransactionWidget.js.map +1 -1
  9. package/dist/cjs/react/web/ui/Bridge/payment-selection/PaymentSelection.js +3 -3
  10. package/dist/cjs/react/web/ui/Bridge/payment-selection/PaymentSelection.js.map +1 -1
  11. package/dist/cjs/react/web/ui/Bridge/payment-selection/WalletFiatSelection.js +37 -37
  12. package/dist/cjs/react/web/ui/Bridge/payment-selection/WalletFiatSelection.js.map +1 -1
  13. package/dist/cjs/react/web/ui/PayEmbed.js +11 -4
  14. package/dist/cjs/react/web/ui/PayEmbed.js.map +1 -1
  15. package/dist/cjs/version.js +1 -1
  16. package/dist/cjs/version.js.map +1 -1
  17. package/dist/cjs/wallets/in-app/core/authentication/guest.js +2 -8
  18. package/dist/cjs/wallets/in-app/core/authentication/guest.js.map +1 -1
  19. package/dist/cjs/wallets/in-app/native/native-connector.js +1 -1
  20. package/dist/cjs/wallets/in-app/native/native-connector.js.map +1 -1
  21. package/dist/cjs/wallets/in-app/web/lib/web-connector.js +1 -1
  22. package/dist/cjs/wallets/in-app/web/lib/web-connector.js.map +1 -1
  23. package/dist/esm/react/web/ui/Bridge/BridgeOrchestrator.js +2 -2
  24. package/dist/esm/react/web/ui/Bridge/BridgeOrchestrator.js.map +1 -1
  25. package/dist/esm/react/web/ui/Bridge/BuyWidget.js +1 -1
  26. package/dist/esm/react/web/ui/Bridge/BuyWidget.js.map +1 -1
  27. package/dist/esm/react/web/ui/Bridge/CheckoutWidget.js +1 -1
  28. package/dist/esm/react/web/ui/Bridge/CheckoutWidget.js.map +1 -1
  29. package/dist/esm/react/web/ui/Bridge/TransactionWidget.js +1 -1
  30. package/dist/esm/react/web/ui/Bridge/TransactionWidget.js.map +1 -1
  31. package/dist/esm/react/web/ui/Bridge/payment-selection/PaymentSelection.js +3 -3
  32. package/dist/esm/react/web/ui/Bridge/payment-selection/PaymentSelection.js.map +1 -1
  33. package/dist/esm/react/web/ui/Bridge/payment-selection/WalletFiatSelection.js +37 -37
  34. package/dist/esm/react/web/ui/Bridge/payment-selection/WalletFiatSelection.js.map +1 -1
  35. package/dist/esm/react/web/ui/PayEmbed.js +11 -4
  36. package/dist/esm/react/web/ui/PayEmbed.js.map +1 -1
  37. package/dist/esm/version.js +1 -1
  38. package/dist/esm/version.js.map +1 -1
  39. package/dist/esm/wallets/in-app/core/authentication/guest.js +2 -8
  40. package/dist/esm/wallets/in-app/core/authentication/guest.js.map +1 -1
  41. package/dist/esm/wallets/in-app/native/native-connector.js +1 -1
  42. package/dist/esm/wallets/in-app/native/native-connector.js.map +1 -1
  43. package/dist/esm/wallets/in-app/web/lib/web-connector.js +1 -1
  44. package/dist/esm/wallets/in-app/web/lib/web-connector.js.map +1 -1
  45. package/dist/types/react/web/ui/Bridge/BridgeOrchestrator.d.ts +6 -1
  46. package/dist/types/react/web/ui/Bridge/BridgeOrchestrator.d.ts.map +1 -1
  47. package/dist/types/react/web/ui/Bridge/BuyWidget.d.ts +5 -0
  48. package/dist/types/react/web/ui/Bridge/BuyWidget.d.ts.map +1 -1
  49. package/dist/types/react/web/ui/Bridge/CheckoutWidget.d.ts +5 -0
  50. package/dist/types/react/web/ui/Bridge/CheckoutWidget.d.ts.map +1 -1
  51. package/dist/types/react/web/ui/Bridge/TransactionWidget.d.ts +5 -0
  52. package/dist/types/react/web/ui/Bridge/TransactionWidget.d.ts.map +1 -1
  53. package/dist/types/react/web/ui/Bridge/payment-selection/PaymentSelection.d.ts +6 -1
  54. package/dist/types/react/web/ui/Bridge/payment-selection/PaymentSelection.d.ts.map +1 -1
  55. package/dist/types/react/web/ui/Bridge/payment-selection/WalletFiatSelection.d.ts +2 -1
  56. package/dist/types/react/web/ui/Bridge/payment-selection/WalletFiatSelection.d.ts.map +1 -1
  57. package/dist/types/react/web/ui/PayEmbed.d.ts +0 -1
  58. package/dist/types/react/web/ui/PayEmbed.d.ts.map +1 -1
  59. package/dist/types/version.d.ts +1 -1
  60. package/dist/types/version.d.ts.map +1 -1
  61. package/dist/types/wallets/in-app/core/authentication/guest.d.ts +2 -2
  62. package/dist/types/wallets/in-app/core/authentication/guest.d.ts.map +1 -1
  63. package/package.json +1 -1
  64. package/src/react/web/ui/Bridge/BridgeOrchestrator.tsx +8 -0
  65. package/src/react/web/ui/Bridge/BuyWidget.tsx +7 -0
  66. package/src/react/web/ui/Bridge/CheckoutWidget.tsx +7 -0
  67. package/src/react/web/ui/Bridge/TransactionWidget.tsx +7 -0
  68. package/src/react/web/ui/Bridge/payment-selection/PaymentSelection.tsx +10 -2
  69. package/src/react/web/ui/Bridge/payment-selection/WalletFiatSelection.tsx +133 -124
  70. package/src/react/web/ui/PayEmbed.tsx +17 -1
  71. package/src/version.ts +1 -1
  72. package/src/wallets/in-app/core/authentication/backend.test.ts +1 -0
  73. package/src/wallets/in-app/core/authentication/guest.ts +4 -11
  74. package/src/wallets/in-app/native/native-connector.ts +1 -1
  75. package/src/wallets/in-app/web/lib/web-connector.ts +1 -1
@@ -238,7 +238,6 @@ export type PayEmbedProps = {
238
238
  * }}
239
239
  * />
240
240
  * ```
241
- *
242
241
  * You can also handle ERC20 payments by passing `erc20value` to your transaction:
243
242
  *
244
243
  * ```tsx
@@ -357,6 +356,13 @@ export function PayEmbed(props: PayEmbedProps) {
357
356
  chain={props.payOptions.prefillBuy.chain}
358
357
  client={props.client}
359
358
  onSuccess={() => props.payOptions?.onPurchaseSuccess?.()}
359
+ paymentMethods={
360
+ props.payOptions?.buyWithFiat === false
361
+ ? ["crypto"]
362
+ : props.payOptions?.buyWithCrypto === false
363
+ ? ["card"]
364
+ : ["crypto", "card"]
365
+ }
360
366
  theme={theme}
361
367
  title={metadata?.name || "Buy"}
362
368
  tokenAddress={
@@ -376,6 +382,11 @@ export function PayEmbed(props: PayEmbedProps) {
376
382
  image={metadata?.image}
377
383
  name={metadata?.name || "Checkout"}
378
384
  onSuccess={() => props.payOptions?.onPurchaseSuccess?.()}
385
+ paymentMethods={
386
+ props.payOptions?.buyWithFiat === false
387
+ ? ["crypto"]
388
+ : ["crypto", "card"]
389
+ }
379
390
  seller={props.payOptions.paymentInfo.sellerAddress as Address}
380
391
  theme={theme}
381
392
  tokenAddress={
@@ -392,6 +403,11 @@ export function PayEmbed(props: PayEmbedProps) {
392
403
  description={metadata?.description}
393
404
  image={metadata?.image}
394
405
  onSuccess={() => props.payOptions?.onPurchaseSuccess?.()}
406
+ paymentMethods={
407
+ props.payOptions?.buyWithFiat === false
408
+ ? ["crypto"]
409
+ : ["crypto", "card"]
410
+ }
395
411
  theme={theme}
396
412
  title={metadata?.name}
397
413
  transaction={props.payOptions.transaction}
package/src/version.ts CHANGED
@@ -1 +1 @@
1
- export const version = "5.105.3";
1
+ export const version = "5.105.4-nightly-1f72396d7fa4748efef179821a7a796b53679bcb-20250629000440";
@@ -49,6 +49,7 @@ describe("backendAuthenticate", () => {
49
49
  // Mock failed fetch response
50
50
  const mockFetch = vi.fn().mockResolvedValue({
51
51
  ok: false,
52
+ text: () => Promise.resolve("Failed to generate backend account"),
52
53
  });
53
54
 
54
55
  // Mock dependencies
@@ -2,9 +2,8 @@ import type { ThirdwebClient } from "../../../../client/client.js";
2
2
  import { getClientFetch } from "../../../../utils/fetch.js";
3
3
  import { stringify } from "../../../../utils/json.js";
4
4
  import { randomBytesHex } from "../../../../utils/random.js";
5
- import type { AsyncStorage } from "../../../../utils/storage/AsyncStorage.js";
6
5
  import type { Ecosystem } from "../wallet/types.js";
7
- import { ClientScopedStorage } from "./client-scoped-storage.js";
6
+ import type { ClientScopedStorage } from "./client-scoped-storage.js";
8
7
  import { getLoginCallbackUrl } from "./getLoginPath.js";
9
8
  import type { AuthStoredTokenWithCookieReturnType } from "./types.js";
10
9
 
@@ -14,19 +13,13 @@ import type { AuthStoredTokenWithCookieReturnType } from "./types.js";
14
13
  */
15
14
  export async function guestAuthenticate(args: {
16
15
  client: ThirdwebClient;
17
- storage: AsyncStorage;
16
+ storage: ClientScopedStorage;
18
17
  ecosystem?: Ecosystem;
19
18
  }): Promise<AuthStoredTokenWithCookieReturnType> {
20
- const storage = new ClientScopedStorage({
21
- clientId: args.client.clientId,
22
- ecosystem: args.ecosystem,
23
- storage: args.storage,
24
- });
25
-
26
- let sessionId = await storage.getGuestSessionId();
19
+ let sessionId = await args.storage.getGuestSessionId();
27
20
  if (!sessionId) {
28
21
  sessionId = randomBytesHex(32);
29
- storage.saveGuestSessionId(sessionId);
22
+ args.storage.saveGuestSessionId(sessionId);
30
23
  }
31
24
 
32
25
  const clientFetch = getClientFetch(args.client, args.ecosystem);
@@ -165,7 +165,7 @@ export class InAppNativeConnector implements InAppConnector {
165
165
  return guestAuthenticate({
166
166
  client: this.client,
167
167
  ecosystem: params.ecosystem,
168
- storage: nativeLocalStorage,
168
+ storage: this.storage,
169
169
  });
170
170
  }
171
171
  case "backend": {
@@ -352,7 +352,7 @@ export class InAppWebConnector implements InAppConnector {
352
352
  return guestAuthenticate({
353
353
  client: this.client,
354
354
  ecosystem: this.ecosystem,
355
- storage: webLocalStorage,
355
+ storage: this.storage,
356
356
  });
357
357
  }
358
358
  case "backend": {