diff --git a/.changeset/fix-bytes-type.md b/.changeset/fix-bytes-type.md new file mode 100644 index 0000000..36a4f95 --- /dev/null +++ b/.changeset/fix-bytes-type.md @@ -0,0 +1,5 @@ +--- +"@codama/renderers-vixen-parser": patch +--- + +- Fix IDL bytes type conversion \ No newline at end of file diff --git a/src/getRenderMapVisitor.ts b/src/getRenderMapVisitor.ts index 85797a4..804fee8 100644 --- a/src/getRenderMapVisitor.ts +++ b/src/getRenderMapVisitor.ts @@ -194,6 +194,14 @@ function getArrayTypeTransform(item: TypeNode, outerTypeName: string, idlDefined return `self.${outerTypeName}.into_iter().map(|x| x.into()).collect()`; } + case 'sizePrefixTypeNode': { + return `self.${outerTypeName}.into_iter().map(|x| x.into()).collect()`; + } + + case 'stringTypeNode': { + return `self.${outerTypeName}`; + } + default: console.warn(`Warning!: Default case for array type: ${item.kind} for type ${outerTypeName}`); return `self.${outerTypeName}.to_vec()`; @@ -259,6 +267,9 @@ function getTransform( case 'numberTypeNode': return `self.${typeName}${getNumberTypeTransform(type)}`; + case 'sizePrefixTypeNode': + return getArrayTypeTransform(type.type, typeName, idlDefinedTypes); + default: return `self.${typeName}`; }