@enjin-io/snap
Version:
MetaMask snap for interacting with Enjin dApps
35 lines (30 loc) • 974 B
text/typescript
import type { SnapConfig } from '@enjin-io/metamask-enjin-types';
import { getMetamaskState } from '../rpc/getMetamaskState';
import {
defaultConfiguration,
enjinMatrixConfiguration,
enjinRelayConfiguration,
canaryRelayConfiguration,
canaryMatrixConfiguration
} from './predefined';
export function getDefaultConfiguration(networkName?: string): SnapConfig {
switch (networkName) {
case 'enjin-relaychain':
return enjinRelayConfiguration;
case 'enjin-matrixchain':
return enjinMatrixConfiguration;
case 'canary-relaychain':
return canaryRelayConfiguration;
case 'canary-matrixchain':
return canaryMatrixConfiguration;
default:
return defaultConfiguration;
}
}
export async function getConfiguration(): Promise<SnapConfig> {
const state = await getMetamaskState();
if (!state || !state.config) {
return defaultConfiguration;
}
return JSON.parse(<string>state.config) as unknown as SnapConfig;
}