signer-test-sdk-react 0.0.1

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 (70) hide show
  1. package/README.md +114 -0
  2. package/dist/src/AbstraxnProvider.d.ts +20 -0
  3. package/dist/src/AbstraxnProvider.js +2213 -0
  4. package/dist/src/AbstraxnProvider.js.map +1 -0
  5. package/dist/src/ConnectButton.css +217 -0
  6. package/dist/src/ConnectButton.d.ts +71 -0
  7. package/dist/src/ConnectButton.js +102 -0
  8. package/dist/src/ConnectButton.js.map +1 -0
  9. package/dist/src/ExternalWalletButtons.css +319 -0
  10. package/dist/src/ExternalWalletButtons.d.ts +56 -0
  11. package/dist/src/ExternalWalletButtons.js +245 -0
  12. package/dist/src/ExternalWalletButtons.js.map +1 -0
  13. package/dist/src/OnboardingUI.d.ts +63 -0
  14. package/dist/src/OnboardingUI.js +66 -0
  15. package/dist/src/OnboardingUI.js.map +1 -0
  16. package/dist/src/WalletModal.css +549 -0
  17. package/dist/src/WalletModal.d.ts +6 -0
  18. package/dist/src/WalletModal.js +89 -0
  19. package/dist/src/WalletModal.js.map +1 -0
  20. package/dist/src/components/OnboardingUI/OnboardingUI.css +727 -0
  21. package/dist/src/components/OnboardingUI/OnboardingUIReact.d.ts +15 -0
  22. package/dist/src/components/OnboardingUI/OnboardingUIReact.js +65 -0
  23. package/dist/src/components/OnboardingUI/OnboardingUIReact.js.map +1 -0
  24. package/dist/src/components/OnboardingUI/OnboardingUIWeb.d.ts +257 -0
  25. package/dist/src/components/OnboardingUI/OnboardingUIWeb.js +3454 -0
  26. package/dist/src/components/OnboardingUI/OnboardingUIWeb.js.map +1 -0
  27. package/dist/src/components/OnboardingUI/components/EmailForm.d.ts +16 -0
  28. package/dist/src/components/OnboardingUI/components/EmailForm.js +19 -0
  29. package/dist/src/components/OnboardingUI/components/EmailForm.js.map +1 -0
  30. package/dist/src/components/OnboardingUI/components/Modal.d.ts +15 -0
  31. package/dist/src/components/OnboardingUI/components/Modal.js +68 -0
  32. package/dist/src/components/OnboardingUI/components/Modal.js.map +1 -0
  33. package/dist/src/components/OnboardingUI/components/OtpForm.d.ts +19 -0
  34. package/dist/src/components/OnboardingUI/components/OtpForm.js +58 -0
  35. package/dist/src/components/OnboardingUI/components/OtpForm.js.map +1 -0
  36. package/dist/src/components/OnboardingUI/components/PasskeyButton.d.ts +14 -0
  37. package/dist/src/components/OnboardingUI/components/PasskeyButton.js +22 -0
  38. package/dist/src/components/OnboardingUI/components/PasskeyButton.js.map +1 -0
  39. package/dist/src/components/OnboardingUI/components/SocialButtons.d.ts +15 -0
  40. package/dist/src/components/OnboardingUI/components/SocialButtons.js +15 -0
  41. package/dist/src/components/OnboardingUI/components/SocialButtons.js.map +1 -0
  42. package/dist/src/components/OnboardingUI/components/index.d.ts +13 -0
  43. package/dist/src/components/OnboardingUI/components/index.js +9 -0
  44. package/dist/src/components/OnboardingUI/components/index.js.map +1 -0
  45. package/dist/src/components/OnboardingUI/hooks/index.d.ts +7 -0
  46. package/dist/src/components/OnboardingUI/hooks/index.js +6 -0
  47. package/dist/src/components/OnboardingUI/hooks/index.js.map +1 -0
  48. package/dist/src/components/OnboardingUI/hooks/useAuthMethods.d.ts +11 -0
  49. package/dist/src/components/OnboardingUI/hooks/useAuthMethods.js +146 -0
  50. package/dist/src/components/OnboardingUI/hooks/useAuthMethods.js.map +1 -0
  51. package/dist/src/components/OnboardingUI/hooks/useOnboarding.d.ts +21 -0
  52. package/dist/src/components/OnboardingUI/hooks/useOnboarding.js +135 -0
  53. package/dist/src/components/OnboardingUI/hooks/useOnboarding.js.map +1 -0
  54. package/dist/src/components/OnboardingUI/index.d.ts +12 -0
  55. package/dist/src/components/OnboardingUI/index.js +15 -0
  56. package/dist/src/components/OnboardingUI/index.js.map +1 -0
  57. package/dist/src/hooks.d.ts +204 -0
  58. package/dist/src/hooks.js +394 -0
  59. package/dist/src/hooks.js.map +1 -0
  60. package/dist/src/index.d.ts +14 -0
  61. package/dist/src/index.js +11 -0
  62. package/dist/src/index.js.map +1 -0
  63. package/dist/src/types.d.ts +181 -0
  64. package/dist/src/types.js +2 -0
  65. package/dist/src/types.js.map +1 -0
  66. package/dist/src/wagmiConfig.d.ts +147 -0
  67. package/dist/src/wagmiConfig.js +81 -0
  68. package/dist/src/wagmiConfig.js.map +1 -0
  69. package/dist/tsconfig.tsbuildinfo +1 -0
  70. package/package.json +68 -0
package/README.md ADDED
@@ -0,0 +1,114 @@
1
+ # @abstraxn/signer-react
2
+
3
+ **React SDK** for Abstraxn Wallet - React components, hooks, and providers for seamless Web3 wallet integration.
4
+
5
+ This package provides React-specific components and hooks that use `@abstraxn/signer-core` under the hood.
6
+
7
+ ## 📦 Installation
8
+
9
+ ```bash
10
+ npm install @abstraxn/signer-react
11
+ ```
12
+
13
+ **Requirements:**
14
+ - React 18.0.0 or higher
15
+ - Node.js 16.0.0 or higher
16
+ - `@abstraxn/signer-core` (installed automatically as a dependency)
17
+
18
+ ## 🚀 Quick Start
19
+
20
+ ### 1. Wrap Your App with AbstraxnProvider
21
+
22
+ ```tsx
23
+ import { AbstraxnProvider, type AbstraxnProviderConfig } from '@abstraxn/signer-react';
24
+ import { StrictMode } from 'react';
25
+ import { createRoot } from 'react-dom/client';
26
+ import App from './App';
27
+
28
+ const providerConfig: AbstraxnProviderConfig = {
29
+ apiKey: 'your-api-key-here',
30
+ };
31
+
32
+ createRoot(document.getElementById('root')!).render(
33
+ <StrictMode>
34
+ <AbstraxnProvider config={providerConfig}>
35
+ <App />
36
+ </AbstraxnProvider>
37
+ </StrictMode>,
38
+ );
39
+ ```
40
+
41
+ ### 2. Use the ConnectButton Component
42
+
43
+ ```tsx
44
+ import { ConnectButton } from "@abstraxn/signer-react";
45
+
46
+ function App() {
47
+ return (
48
+ <div>
49
+ <ConnectButton
50
+ connectText="Connect Wallet"
51
+ connectedText="Connected"
52
+ showAddress={true}
53
+ />
54
+ </div>
55
+ );
56
+ }
57
+ ```
58
+
59
+ ### 3. Or Use Hooks for Custom Integration
60
+
61
+ ```tsx
62
+ import { useAbstraxnWallet } from "@abstraxn/signer-react";
63
+
64
+ function HookConnectButton() {
65
+ const { showOnboarding, loading } = useAbstraxnWallet();
66
+
67
+ return (
68
+ <button
69
+ onClick={showOnboarding}
70
+ disabled={loading}
71
+ className="demo-connect-button"
72
+ >
73
+ {loading ? 'Connecting...' : 'Connect via Hook'}
74
+ </button>
75
+ );
76
+ }
77
+ ```
78
+
79
+ ## ✨ Features
80
+
81
+ - 🔐 **Multiple Auth Methods**: Email OTP, Social login (Google, Discord, X), Passkey, External wallets
82
+ - 💼 **Wallet Management**: Connect, disconnect, view wallet info, export wallets
83
+ - 🎨 **Beautiful UI Components**: Pre-built ConnectButton, WalletModal, and OnboardingUI
84
+ - 🌓 **Theme Support**: Light and dark themes
85
+ - 🔄 **Auto-Reconnect**: Automatic session restoration
86
+ - 📱 **Responsive Design**: Works on all devices
87
+ - ⚡ **TypeScript**: Full TypeScript support
88
+ - 🌐 **Multi-Chain**: Support for multiple blockchain networks
89
+
90
+ ## 📚 Components
91
+
92
+ - `AbstraxnProvider` - Context provider
93
+ - `ConnectButton` - Ready-to-use connect button
94
+ - `WalletModal` - Wallet management modal
95
+ - `OnboardingUI` - Authentication UI component
96
+
97
+ ## 🪝 Hooks
98
+
99
+ - `useAbstraxnWallet()` - Main wallet hook
100
+ - `useIsConnected()` - Check connection status
101
+ - `useAddress()` - Get wallet address
102
+ - `useWhoami()` - Get user information
103
+ - `useExternalWalletInfo()` - External wallet information
104
+ - `usePrepareTransaction()` - Prepare and sign transactions
105
+ - `useExportWallet()` - Export wallet
106
+
107
+ ## 🔗 Related Packages
108
+
109
+ - **@abstraxn/signer-core** - Core SDK (dependency)
110
+ - **@abstraxn/signer** - Backward compatible wrapper (deprecated)
111
+
112
+ ## 📝 License
113
+
114
+ MIT
@@ -0,0 +1,20 @@
1
+ /**
2
+ * Abstraxn Wallet Provider - React Context Provider
3
+ * Wrap your app with this provider to use Abstraxn Wallet SDK
4
+ */
5
+ import { type ReactNode } from 'react';
6
+ import type { AbstraxnProviderConfig, AbstraxnContextValue } from './types';
7
+ export declare const AbstraxnContext: import("react").Context<AbstraxnContextValue | null>;
8
+ interface AbstraxnProviderProps {
9
+ config: AbstraxnProviderConfig;
10
+ children: ReactNode;
11
+ }
12
+ /**
13
+ * Main AbstraxnProvider component with optional WagmiProvider wrapper
14
+ */
15
+ export declare function AbstraxnProvider({ config, children }: AbstraxnProviderProps): import("react/jsx-runtime").JSX.Element;
16
+ /**
17
+ * Hook to access Abstraxn Wallet context
18
+ */
19
+ export declare function useAbstraxnWallet(): AbstraxnContextValue;
20
+ export {};