@cosmology/ast
Version:
Cosmos TypeScript AST generation
16 lines (15 loc) • 474 B
JavaScript
import * as t from '@babel/types';
export { getTypeUrlWithPkgAndName, getTypeUrl, getAminoTypeName } from '@cosmology/utils';
export const arrayTypeNDim = (body, n) => {
if (!n || n <= 1)
return t.tsArrayType(body);
return t.tsArrayType(arrayTypeNDim(body, n - 1));
};
export const protoFieldsToArray = (proto) => {
return Object.keys(proto.fields).map(name => {
return {
name,
...proto.fields[name]
};
});
};