From 5b7455e649b656f04966c057e7fcce52be71249e Mon Sep 17 00:00:00 2001 From: verytactical <186486509+verytactical@users.noreply.github.com> Date: Fri, 20 Dec 2024 13:36:25 +0400 Subject: [PATCH] fix: wrong serialization for addresses --- src/bindings/typescript/serializers.ts | 24 ++++++++++++++++-------- 1 file changed, 16 insertions(+), 8 deletions(-) diff --git a/src/bindings/typescript/serializers.ts b/src/bindings/typescript/serializers.ts index 2f23a8583..172d226b1 100644 --- a/src/bindings/typescript/serializers.ts +++ b/src/bindings/typescript/serializers.ts @@ -243,30 +243,38 @@ const boolSerializer: Serializer<{ optional: boolean }> = { const addressSerializer: Serializer<{ optional: boolean }> = { tsType(v) { if (v.optional) { - return "Address | null"; + return "'none' | Address | ExternalAddress | null | undefined"; } else { - return "Address"; + return "'none' | Address | ExternalAddress"; } }, tsLoad(v, slice, field, w) { if (v.optional) { - w.append(`let ${field} = ${slice}.loadMaybeAddress();`); + w.append(`let ${field} = ${slice}.loadMaybeAddress1();`); } else { - w.append(`let ${field} = ${slice}.loadAddress();`); + w.append(`let ${field} = ${slice}.loadAddress1();`); } }, tsLoadTuple(v, reader, field, w) { if (v.optional) { - w.append(`let ${field} = ${reader}.readAddressOpt();`); + w.append(`let ${field} = ${reader}.readAddressOpt1();`); } else { - w.append(`let ${field} = ${reader}.readAddress();`); + w.append(`let ${field} = ${reader}.readAddress1();`); } }, tsStore(v, builder, field, w) { - w.append(`${builder}.storeAddress(${field});`); + if (v.optional) { + w.append(`${builder}.storeMaybeAddress1(${field});`); + } else { + w.append(`${builder}.storeAddress1(${field});`); + } }, tsStoreTuple(v, to, field, w) { - w.append(`${to}.writeAddress(${field});`); + if (v.optional) { + w.append(`${to}.writeMaybeAddress1(${field});`); + } else { + w.append(`${to}.writeAddress1(${field});`); + } }, abiMatcher(src) { if (src.kind === "simple") {