import { useContext } from 'react' import { getPolkadotExtensionModule } from '../../core' import { PolkadotExtensionState, ProviderConfigs } from '../../core/interfaces' import { PolkadotConnectorContext } from './context' export function usePolkadotConnector() { const { setExtensionModules, setConnectionPromise } = usePolkadotConnectorContext() function connect(providerConfigs: ProviderConfigs) { const extensionModules = getPolkadotExtensionModule(providerConfigs) const promise = new Promise((resolve, reject) => { setConnectionPromise({ resolve, reject }) }) setExtensionModules(extensionModules) return promise } return { connect } } export function usePolkadotConnectorContext() { const { extensionModules, setExtensionModules, connectionPromise, setConnectionPromise } = useContext(PolkadotConnectorContext) return { extensionModules, setExtensionModules, connectionPromise, setConnectionPromise } }