21 lines
652 B
JavaScript
21 lines
652 B
JavaScript
import { markHTMLString } from "../escape.js";
|
|
async function renderScript(result, id) {
|
|
if (result._metadata.renderedScripts.has(id)) return;
|
|
result._metadata.renderedScripts.add(id);
|
|
const inlined = result.inlinedScripts.get(id);
|
|
if (inlined != null) {
|
|
if (inlined) {
|
|
return markHTMLString(`<script type="module">${inlined}</script>`);
|
|
} else {
|
|
return "";
|
|
}
|
|
}
|
|
const resolved = await result.resolve(id);
|
|
return markHTMLString(
|
|
`<script type="module" src="${result.userAssetsBase ? (result.base === "/" ? "" : result.base) + result.userAssetsBase : ""}${resolved}"></script>`
|
|
);
|
|
}
|
|
export {
|
|
renderScript
|
|
};
|