Convert pack wasm to ESM (#463)

* Convert pack wasm to ESM

* Cleanup clean scripts

* Adjust
This commit is contained in:
Jaco
2023-01-27 10:26:14 +02:00
committed by GitHub
parent 6f06fe6b2a
commit f3a5b7e373
7 changed files with 15 additions and 28 deletions
+1 -1
View File
@@ -5,5 +5,5 @@
set -e
./scripts/clean-js.sh
yarn polkadot-dev-clean-build
yarn polkadot-dev-build-ts
+1 -1
View File
@@ -32,7 +32,7 @@ echo "*** Optimising WASM output"
# convert wasm to base64 structure
echo "*** Packing WASM into baseX"
node ../scripts/pack-wasm-base.cjs
node ../scripts/pack-wasm-base.mjs
# build asmjs version from the input (optimised) WASM
echo "*** Building asm.js version"
-10
View File
@@ -1,10 +0,0 @@
#!/usr/bin/env bash
# Copyright 2019-2023 @polkadot/wasm authors & contributors
# This software may be modified and distributed under the terms
# of the Apache-2.0 license. See the LICENSE file for details.
set -e
# cleanup old
echo "*** Cleaning old builds"
rm -rf build packages/*/build*
+1 -4
View File
@@ -5,11 +5,8 @@
set -e
./scripts/clean-js.sh
yarn polkadot-dev-clean-build
echo "*** Cleaning wasm"
cd packages/wasm-crypto
cargo clean
cd ../..
@@ -1,22 +1,22 @@
// Copyright 2019-2023 @polkadot/wasm authors & contributors
// SPDX-License-Identifier: Apache-2.0
const fflate = require('fflate/node');
const fs = require('fs');
const mkdirp = require('mkdirp');
const { formatNumber } = require('@polkadot/util');
import { zlibSync } from 'fflate/node';
import fs from 'fs';
import { formatNumber } from '@polkadot/util';
const DIR_DENO = `./${process.env.PKG_NAME}-wasm/build-deno/deno`;
const DIR_CJS = `./${process.env.PKG_NAME}-wasm/build/cjs`;
const HDR = `// Copyright 2019-${new Date().getFullYear()} @polkadot/${process.env.PKG_NAME}-wasm authors & contributors\n// SPDX-License-Identifier: Apache-2.0\n\n// Generated as part of the build, do not edit\n`;
const data = fs.readFileSync(`./${process.env.PKG_NAME}/build-wasm/wasm_opt.wasm`);
const compressed = Buffer.from(fflate.zlibSync(data, { level: 9 }));
const compressed = Buffer.from(zlibSync(data, { level: 9 }));
const base64 = compressed.toString('base64');
console.log(`*** Compressed WASM: in=${formatNumber(data.length)}, out=${formatNumber(compressed.length)}, opt=${(100 * compressed.length / data.length).toFixed(2)}%, base64=${formatNumber(base64.length)}`);
mkdirp.sync(DIR_DENO);
fs.mkdirSync(DIR_DENO, { recursive: true });
fs.writeFileSync(`${DIR_CJS}/bytes.js`, `${HDR}
const lenIn = ${compressed.length};