Fix veilid-wasm errors so it compiles, emit TypeScript types.

- `wrap_api_future` function did not exist, so I used `wrap_api_future_plain` since the return type appears to be a base64 encoded string.
- Argument order for `create_dht_record` was incorrectly swapped.
- `veilid_core::json_as_base64` does not exist, don't exactly know what to replace it with for serde serialization, but I commented it out for now.
- Removed `--no-typescript` flag from `wasm-buildgen` so that TypeScript types are emitted.
This commit is contained in:
Brandon Vandegrift 2023-08-15 13:47:26 -04:00
parent 2d2983e16e
commit fae12b234d
2 changed files with 9 additions and 9 deletions

View File

@ -161,7 +161,7 @@ pub struct VeilidWASMConfig {
#[derive(Debug, Deserialize, Serialize)]
pub struct VeilidRouteBlob {
pub route_id: veilid_core::RouteId,
#[serde(with = "veilid_core::json_as_base64")]
// #[serde(with = "veilid_core::json_as_base64")]
pub blob: Vec<u8>,
}
@ -429,7 +429,7 @@ pub fn routing_context_create_dht_record(id: u32, schema: String, kind: u32) ->
};
let dht_record_descriptor = routing_context
.create_dht_record(crypto_kind, schema)
.create_dht_record(schema, crypto_kind)
.await?;
APIResult::Ok(dht_record_descriptor)
})
@ -1347,7 +1347,7 @@ pub fn crypto_decrypt_aead(
.unwrap()
});
wrap_api_future(async move {
wrap_api_future_plain(async move {
let veilid_api = get_veilid_api()?;
let crypto = veilid_api.crypto()?;
let csv = crypto.get(kind).ok_or_else(|| {
@ -1396,7 +1396,7 @@ pub fn crypto_encrypt_aead(
.unwrap()
});
wrap_api_future(async move {
wrap_api_future_plain(async move {
let veilid_api = get_veilid_api()?;
let crypto = veilid_api.crypto()?;
let csv = crypto.get(kind).ok_or_else(|| {
@ -1438,7 +1438,7 @@ pub fn crypto_crypt_no_auth(
let shared_secret: veilid_core::SharedSecret =
veilid_core::deserialize_json(&shared_secret).unwrap();
wrap_api_future(async move {
wrap_api_future_plain(async move {
let veilid_api = get_veilid_api()?;
let crypto = veilid_api.crypto()?;
let csv = crypto.get(kind).ok_or_else(|| {
@ -1449,8 +1449,8 @@ pub fn crypto_crypt_no_auth(
)
})?;
csv.crypt_in_place_no_auth(&mut body, &nonce, &shared_secret);
let out = data_encoding::BASE64URL_NOPAD.encode(&out);
APIResult::Ok(body)
let out = data_encoding::BASE64URL_NOPAD.encode(&body);
APIResult::Ok(out)
})
}

View File

@ -28,7 +28,7 @@ if [[ "$1" == "release" ]]; then
cargo build --target wasm32-unknown-unknown --release
mkdir -p $OUTPUTDIR
wasm-bindgen --out-dir $OUTPUTDIR --target web --no-typescript $INPUTDIR/veilid_wasm.wasm
wasm-bindgen --out-dir $OUTPUTDIR --target web $INPUTDIR/veilid_wasm.wasm
wasm-strip $OUTPUTDIR/veilid_wasm_bg.wasm
else
OUTPUTDIR=../target/wasm32-unknown-unknown/debug/pkg
@ -36,7 +36,7 @@ else
RUSTFLAGS="-O -g" cargo build --target wasm32-unknown-unknown
mkdir -p $OUTPUTDIR
wasm-bindgen --out-dir $OUTPUTDIR --target web --no-typescript --keep-debug --debug $INPUTDIR/veilid_wasm.wasm
wasm-bindgen --out-dir $OUTPUTDIR --target web --keep-debug --debug $INPUTDIR/veilid_wasm.wasm
./wasm-sourcemap.py $OUTPUTDIR/veilid_wasm_bg.wasm -o $OUTPUTDIR/veilid_wasm_bg.wasm.map --dwarfdump $DWARFDUMP
# wasm-strip $OUTPUTDIR/veilid_wasm_bg.wasm
fi