in packages/appsync-modelgen-plugin/src/languages/swift-declaration-block.ts [338:354]
private generateArgsStr(args: MethodArgument[]): string {
const res: string[] = args.reduce((acc: string[], arg) => {
const type = arg.flags.isList ? this.getListType(arg) : escapeKeywords(arg.type);
if (arg.flags.handleListNullabilityTransparently) {
const isArgOptional = arg.flags.isList ? arg.flags.isListNullable : arg.flags.optional
const val: string | null = arg.value ? arg.value : isArgOptional ? 'nil' : arg.flags.isList ? '[]' : null;
acc.push([escapeKeywords(arg.name), ': ', type, isArgOptional ? '?' : '', val ? ` = ${val}` : ''].join(''));
}
else {
const val: string | null = arg.value ? arg.value : arg.flags.isList ? '[]' : arg.flags.optional ? 'nil' : null;
acc.push([escapeKeywords(arg.name), ': ', type, arg.flags.optional ? '?' : '', val ? ` = ${val}` : ''].join(''));
}
return acc;
}, []);
return res.length > 1 ? indentMultiline(res.join(',\n')) : res.join(',');
}