Skip to content

Commit c7970b5

Browse files
authored
Expose import maps when generating web template (#2542)
1 parent f0af970 commit c7970b5

File tree

1 file changed

+16
-10
lines changed

1 file changed

+16
-10
lines changed

Diff for: scripts/build-web.js

+16-10
Original file line numberDiff line numberDiff line change
@@ -11,20 +11,26 @@ const mainVersion = pkg.version;
1111
const binaryenVersion = pkg.dependencies.binaryen.version;
1212
const longVersion = pkg.dependencies.long.version;
1313

14-
const distUrl = mainVersion === "0.0.0" ? `../dist/` : `https://cdn.jsdelivr.net/npm/assemblyscript@${mainVersion}/dist/`;
14+
const distUrl = mainVersion === "0.0.0" ? `./` : `https://cdn.jsdelivr.net/npm/assemblyscript@${mainVersion}/dist/`;
1515
const binaryenUrl = `https://cdn.jsdelivr.net/npm/binaryen@${binaryenVersion}/index.js`;
1616
const longUrl = `https://cdn.jsdelivr.net/npm/long@${longVersion}/index.js`;
17-
18-
fs.writeFileSync(path.join(dirname, "..", "dist", "web.html"), `<script async src="https://cdn.jsdelivr.net/npm/[email protected]/dist/es-module-shims.js"></script>
19-
<script type="importmap">
20-
{
17+
const importmap = {
2118
"imports": {
22-
"binaryen": ${JSON.stringify(binaryenUrl)},
23-
"long": ${JSON.stringify(longUrl)},
24-
"assemblyscript": ${JSON.stringify(distUrl + "assemblyscript.js")},
25-
"assemblyscript/asc": ${JSON.stringify(distUrl + "asc.js")}
19+
"assemblyscript": `${distUrl}assemblyscript.js`,
20+
"assemblyscript/asc": `${distUrl}asc.js`,
21+
"binaryen": binaryenUrl,
22+
"long": longUrl
2623
}
27-
}
24+
};
25+
26+
fs.writeFileSync(path.join(dirname, "..", "dist", "importmap.json"), `${JSON.stringify(importmap, null, 2)}
27+
`);
28+
fs.writeFileSync(path.join(dirname, "..", "dist", "importmap.js"), `export const importmap = ${JSON.stringify(importmap, null, 2)}
29+
export default importmap;
30+
`);
31+
fs.writeFileSync(path.join(dirname, "..", "dist", "web.html"), `<script async src="https://cdn.jsdelivr.net/npm/es-module-shims@1/dist/es-module-shims.js"></script>
32+
<script type="importmap">
33+
${JSON.stringify(importmap, null, 2)}
2834
</script>
2935
<script type="module">
3036
import asc from "assemblyscript/asc";

0 commit comments

Comments
 (0)