Skip to content

Commit

Permalink
feat: Update website
Browse files Browse the repository at this point in the history
  • Loading branch information
wenty22 committed Feb 7, 2025
1 parent 354b55f commit cc36a2d
Show file tree
Hide file tree
Showing 5 changed files with 61 additions and 27 deletions.
5 changes: 5 additions & 0 deletions .changeset/beige-cups-poke.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
---
'@node-real/walletkit': patch
---

Update website
2 changes: 1 addition & 1 deletion packages/walletkit/src/core/configs/getDefaultConfig.ts
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ export function getDefaultConfig(config: WalletKitConfig): DefaultConfig {
closeModalAfterConnected: true,
closeModalOnEsc: true,
closeModalOnOverlayClick: true,
openModalOnWrongNetwork: false,
openModalOnWrongNetwork: true,

onError(_err: any, description: string) {
if (description) {
Expand Down
1 change: 1 addition & 0 deletions packages/walletkit/src/core/index.ts
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
// utils
export * from '@/core/base/utils/mobile';
export * from '@/core/base/utils/css';
export * from '@/core/base/utils/common';

// providers
export type { BaseWallet, WalletType } from '@/core/configs/types';
Expand Down
69 changes: 52 additions & 17 deletions website/src/pages/index.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -104,7 +104,12 @@ const config: WalletKitConfig = {
### 4. Add related components
```tsx live=false
import { WalletKitProvider, ConnectModal, SwitchNetworkModal } from '@node-real/walletkit';
import {
WalletKitProvider,
ConnectModal,
SwitchNetworkModal,
ConnectButton,
} from '@node-real/walletkit';

const queryClient = new QueryClient();

Expand Down Expand Up @@ -135,6 +140,7 @@ import {
ConnectModal,
useConnectModal,
WalletKitConfig,
ConnectButton,
} from '@node-real/walletkit';
import { AppProps } from 'next/app';

Expand Down Expand Up @@ -172,10 +178,6 @@ export default function App({ Component, pageProps }: AppProps) {
</QueryClientProvider>
);
}

function ConnectButton() {
// ...
}
```
## Embed modal into page
Expand Down Expand Up @@ -563,27 +565,36 @@ interface CustomizedTronConfig {
}
```

### 3. WalletProps
### 3. Wallet

```tsx live=false
export interface WalletProps {
id: string;
export interface BaseBehavior {
platforms: PlatformType[];
connectType: ConnectType;
isInstalled?: () => boolean | undefined;
getAppLink?: () => string | undefined;
getUri?: (uri: string) => string | undefined;
}

export interface WalletConfig {
name: string;
logos: {
default: ReactElement | { [x in ColorMode]: ReactElement };
transparent?: ReactElement | { [x in ColorMode]: ReactElement };
default: React.ReactElement | { [x in ColorMode]: React.ReactElement };
transparent?: React.ReactElement | { [x in ColorMode]: React.ReactElement };
};
downloadUrls: {
default: string | undefined;
};
spinnerColor?: string;
showQRCode?: boolean;
isInstalled: () => boolean | undefined;
}

export interface BaseWallet<T extends BaseBehavior = BaseBehavior> extends WalletConfig {
id: string;
walletType: WalletType;
isDisabled?: boolean;
getCreateConnectorFn: () => CreateConnectorFn;
getDeepLink: () => string | undefined;
getQRCodeUri?: (uri: string) => string;
render?: (props: WalletRenderProps) => ReactNode;
isVisible?: boolean;
render?: (props: WalletRenderProps) => React.ReactNode;
behaviors: T[];
}

export interface WalletRenderProps {
Expand All @@ -592,9 +603,33 @@ export interface WalletRenderProps {
wallet: {
id: string;
name: string;
logo: ReactElement;
logo: React.ReactElement;
isDisabled?: boolean;
isVisible?: boolean;
walletType: WalletType;
};
onClick: (e: React.MouseEvent<Element, MouseEvent>) => void;
}

// evm wallet
export interface EvmWalletBehavior extends BaseBehavior {
getCreateConnectorFn?: () => CreateConnectorFn;
}
export interface EvmWallet extends BaseWallet<EvmWalletBehavior> {}

// solana wallet
export interface SolanaWalletBehavior extends BaseBehavior {
getAdapter?: () => Adapter;
}
export interface SolanaWallet extends BaseWallet<SolanaWalletBehavior> {
adapterName: string;
}

// tron wallet
export interface TronWalletBehavior extends BaseBehavior {
getAdapter?: () => Adapter;
}
export interface TronWallet extends BaseWallet<TronWalletBehavior> {
adapterName: string;
}
```
11 changes: 2 additions & 9 deletions website/src/playground/example.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -3,28 +3,21 @@ import { useDisconnect, useAccount } from 'wagmi';
import {
SwitchNetworkModal,
EmbeddedConnectModal,
useConnectModal,
ConnectModal,
useSwitchNetworkModal,
ConnectButton,
} from '@node-real/walletkit';
import { useSolanaWallet } from '@node-real/walletkit/solana';
import { useTronWallet } from '@node-real/walletkit/tron';
import { Playground } from './Playground';

export function BaseExample() {
const Content = () => {
const { onOpen } = useConnectModal();
const { isConnected } = useAppAccount();

return (
<Box borderRadius={8} border="1px solid readable.border" p={16}>
{isConnected ? (
<ConnectedInfo />
) : (
<Button size="sm" onClick={() => onOpen()}>
open connect modal
</Button>
)}
{isConnected ? <ConnectedInfo /> : <ConnectButton />}
<ConnectModal />
</Box>
);
Expand Down

0 comments on commit cc36a2d

Please sign in to comment.