ghost-keychain/packages/extension-ui/src/createView.tsx
2020-01-06 15:27:25 +01:00

29 lines
800 B
TypeScript

// Copyright 2019-2020 @polkadot/extension-ui authors & contributors
// This software may be modified and distributed under the terms
// of the Apache-2.0 license. See the LICENSE file for details.
import React, { Suspense } from 'react';
import ReactDOM from 'react-dom';
import { HashRouter } from 'react-router-dom';
import { Fonts, View } from './components';
export default function createView (Entry: React.ComponentType, rootId = 'root'): void {
const rootElement = document.getElementById(rootId);
if (!rootElement) {
throw new Error(`Unable to find element with id '${rootId}'`);
}
ReactDOM.render(
<Suspense fallback='...'>
<Fonts />
<View>
<HashRouter>
<Entry />
</HashRouter>
</View>
</Suspense>,
rootElement
);
}