1*9b2597baSEvan Bacon// <link rel="preload" href="/_expo/static/css/xxxxxx.css" as="style"> 2*9b2597baSEvan Baconexport function appendLinkToHtml( 3*9b2597baSEvan Bacon html: string, 4*9b2597baSEvan Bacon links: { rel: string; href: string; as?: string }[] 5*9b2597baSEvan Bacon) { 6*9b2597baSEvan Bacon return html.replace( 7*9b2597baSEvan Bacon '</head>', 8*9b2597baSEvan Bacon links 9*9b2597baSEvan Bacon .map((link) => { 10*9b2597baSEvan Bacon let linkTag = `<link rel="${link.rel}"`; 11*9b2597baSEvan Bacon 12*9b2597baSEvan Bacon if (link.href) linkTag += ` href="${link.href}"`; 13*9b2597baSEvan Bacon if (link.as) linkTag += ` as="${link.as}"`; 14*9b2597baSEvan Bacon 15*9b2597baSEvan Bacon linkTag += '>'; 16*9b2597baSEvan Bacon 17*9b2597baSEvan Bacon return linkTag; 18*9b2597baSEvan Bacon }) 19*9b2597baSEvan Bacon .join('') + '</head>' 20*9b2597baSEvan Bacon ); 21*9b2597baSEvan Bacon} 22*9b2597baSEvan Bacon 23*9b2597baSEvan Baconexport function appendScriptsToHtml(html: string, scripts: string[]) { 24*9b2597baSEvan Bacon return html.replace( 25*9b2597baSEvan Bacon '</body>', 26*9b2597baSEvan Bacon scripts.map((script) => `<script src="${script}" defer></script>`).join('') + '</body>' 27*9b2597baSEvan Bacon ); 28*9b2597baSEvan Bacon} 29