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.
- package/README.md +114 -0
- package/dist/src/AbstraxnProvider.d.ts +20 -0
- package/dist/src/AbstraxnProvider.js +2213 -0
- package/dist/src/AbstraxnProvider.js.map +1 -0
- package/dist/src/ConnectButton.css +217 -0
- package/dist/src/ConnectButton.d.ts +71 -0
- package/dist/src/ConnectButton.js +102 -0
- package/dist/src/ConnectButton.js.map +1 -0
- package/dist/src/ExternalWalletButtons.css +319 -0
- package/dist/src/ExternalWalletButtons.d.ts +56 -0
- package/dist/src/ExternalWalletButtons.js +245 -0
- package/dist/src/ExternalWalletButtons.js.map +1 -0
- package/dist/src/OnboardingUI.d.ts +63 -0
- package/dist/src/OnboardingUI.js +66 -0
- package/dist/src/OnboardingUI.js.map +1 -0
- package/dist/src/WalletModal.css +549 -0
- package/dist/src/WalletModal.d.ts +6 -0
- package/dist/src/WalletModal.js +89 -0
- package/dist/src/WalletModal.js.map +1 -0
- package/dist/src/components/OnboardingUI/OnboardingUI.css +727 -0
- package/dist/src/components/OnboardingUI/OnboardingUIReact.d.ts +15 -0
- package/dist/src/components/OnboardingUI/OnboardingUIReact.js +65 -0
- package/dist/src/components/OnboardingUI/OnboardingUIReact.js.map +1 -0
- package/dist/src/components/OnboardingUI/OnboardingUIWeb.d.ts +257 -0
- package/dist/src/components/OnboardingUI/OnboardingUIWeb.js +3454 -0
- package/dist/src/components/OnboardingUI/OnboardingUIWeb.js.map +1 -0
- package/dist/src/components/OnboardingUI/components/EmailForm.d.ts +16 -0
- package/dist/src/components/OnboardingUI/components/EmailForm.js +19 -0
- package/dist/src/components/OnboardingUI/components/EmailForm.js.map +1 -0
- package/dist/src/components/OnboardingUI/components/Modal.d.ts +15 -0
- package/dist/src/components/OnboardingUI/components/Modal.js +68 -0
- package/dist/src/components/OnboardingUI/components/Modal.js.map +1 -0
- package/dist/src/components/OnboardingUI/components/OtpForm.d.ts +19 -0
- package/dist/src/components/OnboardingUI/components/OtpForm.js +58 -0
- package/dist/src/components/OnboardingUI/components/OtpForm.js.map +1 -0
- package/dist/src/components/OnboardingUI/components/PasskeyButton.d.ts +14 -0
- package/dist/src/components/OnboardingUI/components/PasskeyButton.js +22 -0
- package/dist/src/components/OnboardingUI/components/PasskeyButton.js.map +1 -0
- package/dist/src/components/OnboardingUI/components/SocialButtons.d.ts +15 -0
- package/dist/src/components/OnboardingUI/components/SocialButtons.js +15 -0
- package/dist/src/components/OnboardingUI/components/SocialButtons.js.map +1 -0
- package/dist/src/components/OnboardingUI/components/index.d.ts +13 -0
- package/dist/src/components/OnboardingUI/components/index.js +9 -0
- package/dist/src/components/OnboardingUI/components/index.js.map +1 -0
- package/dist/src/components/OnboardingUI/hooks/index.d.ts +7 -0
- package/dist/src/components/OnboardingUI/hooks/index.js +6 -0
- package/dist/src/components/OnboardingUI/hooks/index.js.map +1 -0
- package/dist/src/components/OnboardingUI/hooks/useAuthMethods.d.ts +11 -0
- package/dist/src/components/OnboardingUI/hooks/useAuthMethods.js +146 -0
- package/dist/src/components/OnboardingUI/hooks/useAuthMethods.js.map +1 -0
- package/dist/src/components/OnboardingUI/hooks/useOnboarding.d.ts +21 -0
- package/dist/src/components/OnboardingUI/hooks/useOnboarding.js +135 -0
- package/dist/src/components/OnboardingUI/hooks/useOnboarding.js.map +1 -0
- package/dist/src/components/OnboardingUI/index.d.ts +12 -0
- package/dist/src/components/OnboardingUI/index.js +15 -0
- package/dist/src/components/OnboardingUI/index.js.map +1 -0
- package/dist/src/hooks.d.ts +204 -0
- package/dist/src/hooks.js +394 -0
- package/dist/src/hooks.js.map +1 -0
- package/dist/src/index.d.ts +14 -0
- package/dist/src/index.js +11 -0
- package/dist/src/index.js.map +1 -0
- package/dist/src/types.d.ts +181 -0
- package/dist/src/types.js +2 -0
- package/dist/src/types.js.map +1 -0
- package/dist/src/wagmiConfig.d.ts +147 -0
- package/dist/src/wagmiConfig.js +81 -0
- package/dist/src/wagmiConfig.js.map +1 -0
- package/dist/tsconfig.tsbuildinfo +1 -0
- 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 {};
|