const React = require("react"); const PropTypes = require("prop-types"); const e = React.createElement; function MainPage({ title, description, scripts, styles, webpackManifest, content }) { return e( "html", { lang: "en" }, e( "head", null, e("meta", { charSet: "utf-8" }), e("title", null, title), e("meta", { httpEquiv: "X-UA-Compatible", content: "IE=edge,chrome=1" }), e("meta", { name: "description", content: description }), e("meta", { name: "viewport", content: "width=device-width,initial-scale=1,maximum-scale=1" }), e("meta", { name: "timestamp", content: new Date().toISOString() }), e("link", { rel: "shortcut icon", href: "/favicon.ico" }), e("script", { dangerouslySetInnerHTML: { __html: "window.Promise || document.write('\\x3Cscript src=\"/_polyfills/es6-promise.min.js\">\\x3C/script>\\x3Cscript>ES6Promise.polyfill()\\x3C/script>')" } }), e("script", { dangerouslySetInnerHTML: { __html: "window.fetch || document.write('\\x3Cscript src=\"/_polyfills/fetch.min.js\">\\x3C/script>')" } }), e("script", { dangerouslySetInnerHTML: { __html: "window.webpackManifest = " + JSON.stringify(webpackManifest) } }), styles.map(s => e("link", { key: s, rel: "stylesheet", href: s })) ), e( "body", null, e("div", { id: "root", dangerouslySetInnerHTML: { __html: content } }), scripts.map(s => e("script", { key: s, src: s })) ) ); } MainPage.propTypes = { title: PropTypes.string, description: PropTypes.string, scripts: PropTypes.arrayOf(PropTypes.string), styles: PropTypes.arrayOf(PropTypes.string), webpackManifest: PropTypes.object, content: PropTypes.string }; MainPage.defaultProps = { title: "UNPKG", description: "The CDN for everything on npm", scripts: [], styles: [], webpackManifest: {}, content: "" }; module.exports = MainPage;