Skip to content

Commit 95246a9

Browse files
authored
feat: customize app name (#102)
customize app name
1 parent eccd826 commit 95246a9

File tree

5 files changed

+17
-6
lines changed

5 files changed

+17
-6
lines changed

e2e/zombienet/src/utils.tsx

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,8 @@ export const Wrapper = ({ children, deployments = [] }: Props) => (
4646
deployments={deployments}
4747
defaultCaller={ALICE}
4848
signer={mockSigner}
49-
connectedAccount={{ address: ALICE }}>
49+
connectedAccount={{ address: ALICE }}
50+
appName='Typink Test App'>
5051
{children}
5152
</TypinkProvider>
5253
);

examples/demo-subconnect/src/main.tsx

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@ function TypinApp() {
2222

2323
return (
2424
<TypinkProvider
25+
appName='Demo Typink + SubConnect App'
2526
deployments={deployments}
2627
defaultCaller={DEFAULT_CALLER}
2728
supportedNetworks={SUPPORTED_NETWORK}

examples/demo/src/main.tsx

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,7 @@ function Root() {
3434
return (
3535
<ChakraProvider theme={theme}>
3636
<TypinkProvider
37+
appName='Demo Typink App'
3738
deployments={deployments}
3839
defaultCaller={DEFAULT_CALLER}
3940
supportedNetworks={SUPPORTED_NETWORK}

packages/typink/src/providers/TypinkProvider.tsx

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,9 @@ export interface TypinkProviderProps extends ClientProviderProps, WalletSetupPro
2121
defaultCaller: SubstrateAddress;
2222
}
2323

24-
function TypinkProviderInner({ children, deployments, defaultCaller }: TypinkProviderProps) {
24+
export type TypinkProviderInnerProps = Omit<TypinkProviderProps, 'appName'>
25+
26+
function TypinkProviderInner({ children, deployments, defaultCaller }: TypinkProviderInnerProps) {
2527
const clientContext = useClient();
2628
const walletSetupContext = useWalletSetup();
2729
const walletContext = useWallet();
@@ -66,9 +68,10 @@ export function TypinkProvider({
6668
signer,
6769
connectedAccount,
6870
wallets,
71+
appName,
6972
}: TypinkProviderProps) {
7073
return (
71-
<WalletSetupProvider signer={signer} connectedAccount={connectedAccount} wallets={wallets}>
74+
<WalletSetupProvider signer={signer} connectedAccount={connectedAccount} wallets={wallets} appName={appName}>
7275
<ClientProvider
7376
defaultNetworkId={defaultNetworkId}
7477
cacheMetadata={cacheMetadata}

packages/typink/src/providers/WalletSetupProvider.tsx

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,8 @@ import { WalletProvider, WalletProviderProps } from './WalletProvider.js';
99

1010
// Split these into 2 separate context (one for setup & one for signer & connected account)
1111
export interface WalletSetupContextProps {
12+
appName: string;
13+
1214
// for setting up wallets
1315
connectWallet: (id: string) => void;
1416
disconnect: () => void;
@@ -21,6 +23,7 @@ export interface WalletSetupContextProps {
2123
}
2224

2325
export const WalletSetupContext = createContext<WalletSetupContextProps>({
26+
appName: 'Typink Dapp',
2427
accounts: [],
2528
connectWallet: noop,
2629
disconnect: noop,
@@ -33,6 +36,7 @@ export const useWalletSetup = () => {
3336
};
3437

3538
export interface WalletSetupProviderProps extends WalletProviderProps {
39+
appName: string;
3640
wallets?: Wallet[];
3741
}
3842

@@ -52,6 +56,7 @@ export function WalletSetupProvider({
5256
signer: initialSigner,
5357
connectedAccount: initialConnectedAccount,
5458
wallets: initialWallets,
59+
appName
5560
}: WalletSetupProviderProps) {
5661
const wallets = useMemo(() => initialWallets || DEFAULT_WALLETS, useDeepDeps([initialWallets]));
5762
const [accounts, setAccounts] = useState<InjectedAccount[]>([]);
@@ -98,8 +103,7 @@ export function WalletSetupProvider({
98103

99104
assert(injectedProvider?.enable, `Invalid Wallet: ${targetWallet.id}`);
100105

101-
// TODO customize dapp name?
102-
const injected = await injectedProvider.enable('Sample Dapp');
106+
const injected = await injectedProvider.enable(appName);
103107
const initialConnectedAccounts = await injected.accounts.get();
104108

105109
// TODO keep track of wallet decision?
@@ -126,7 +130,7 @@ export function WalletSetupProvider({
126130
})();
127131

128132
return () => unsub && unsub();
129-
}, [connectedWalletId]);
133+
}, [connectedWalletId, appName]);
130134

131135
const connectWallet = async (walletId: string) => {
132136
setConnectedWalletId(walletId);
@@ -149,6 +153,7 @@ export function WalletSetupProvider({
149153
connectedWallet,
150154
setConnectedAccount,
151155
wallets,
156+
appName
152157
}}>
153158
<WalletProvider signer={signer} connectedAccount={connectedAccount}>
154159
{children}

0 commit comments

Comments
 (0)