autsequi
Version:
Web3modal's provider layer abstraction for simple implementation of web3 wallet connections
34 lines (30 loc) • 952 B
text/typescript
import { IAbstractConnectorOptions } from '../../helpers';
export interface IArkaneConnectorOptions extends IAbstractConnectorOptions {
clientId: string;
nodeUrl?: string;
environment?: string;
}
const ConnectToArkane = (Arkane: any, opts: IArkaneConnectorOptions) => {
return new Promise(async (resolve, reject) => {
if (opts && opts.clientId) {
try {
const options = {
clientId: opts.clientId,
rpcUrl: opts.nodeUrl,
environment: opts.environment,
signMethod: 'POPUP',
};
const provider = await (window as any).Arkane.createArkaneProviderEngine(
options
);
return resolve(provider);
} catch (error) {
console.error(error);
return reject(new Error('Failed to login to Arkane 2'));
}
} else {
return reject(new Error('Please provide an Arkane client id'));
}
});
};
export default ConnectToArkane;