1
0
Fork 0

Remove asmscript from build

This commit is contained in:
Pafnooty 2025-05-08 23:39:40 +03:00
parent af8df2bd6f
commit da1bbb839d
3 changed files with 4 additions and 26 deletions

2
.gitignore vendored
View File

@ -173,3 +173,5 @@ dist
# Finder (MacOS) folder config
.DS_Store
error.log
package-lock.json

View File

@ -1,6 +1,5 @@
import { plugin, $, type BunPlugin } from "bun";
import path from 'path';
import asc from 'assemblyscript/asc';
interface WasmLoaderConfig {
production?: boolean;
@ -11,7 +10,7 @@ const wasmPlugin = ({ production, portable }: WasmLoaderConfig = {}): BunPlugin
const p: BunPlugin = {
name: "WASM loader",
async setup(build) {
build.onLoad({ filter: /\.(c(pp)?|wasm(\.ts)?)$/ }, async (args) => {
build.onLoad({ filter: /\.(c(pp)?|wasm)$/ }, async (args) => {
let wasmPath = path.resolve(import.meta.dir, '..', 'dist', 'tmp.wasm');
let jsContent: string = `
async function instantiate(url) {
@ -45,29 +44,7 @@ const wasmPlugin = ({ production, portable }: WasmLoaderConfig = {}): BunPlugin
export default module;
`;
if (args.path.endsWith('.ts')) {
if (portable) {
const contents = await Bun.file(args.path).text();
return {
contents: `import "assemblyscript/std/portable/index.js";\n${contents}`,
loader: 'tsx',
}
}
const jsPath = wasmPath.replace(/\.wasm$/, '.js');
const ascArgs = [
args.path,
'--outFile', wasmPath,
'--bindings', 'esm',
'-Ospeed'
];
const { error, stderr } = await asc.main(ascArgs);
if (error) {
console.error(stderr.toString(), error.message);
throw error;
}
jsContent = await Bun.file(jsPath).text();
} else if (args.path.endsWith('.wasm')) {
if (args.path.endsWith('.wasm')) {
wasmPath = args.path;
} else {
const buildAssets = path.resolve(import.meta.dir, 'assets');

View File

@ -22,7 +22,6 @@
"@types/bun": "latest",
"@types/html-minifier": "4.0.5",
"@types/inquirer": "9.0.7",
"assemblyscript": "0.27.29",
"browser-detect": "0.2.28",
"eruda": "3.2.3",
"html-minifier": "4.0.0",