Skip to content
This repository was archived by the owner on Jan 19, 2019. It is now read-only.

Commit a37d5ed

Browse files
PajnJamesHenry
authored andcommitted
Fix: Wrap any parameter with modifiers, not just in constructors (#214)
1 parent cefdfc2 commit a37d5ed

3 files changed

+404
-19
lines changed

lib/ast-converter.js

+15-19
Original file line numberDiff line numberDiff line change
@@ -1217,20 +1217,6 @@ module.exports = function(ast, extra) {
12171217
return convertChild(d.expression);
12181218
}) : [];
12191219

1220-
if (param.modifiers) {
1221-
return {
1222-
type: "TSParameterProperty",
1223-
range: [param.getStart(), param.end],
1224-
loc: getLoc(param, ast),
1225-
accessibility: getTSNodeAccessibility(param),
1226-
isReadonly: param.modifiers.some(function(modifier) {
1227-
return modifier.kind === SyntaxKind.ReadonlyKeyword;
1228-
}),
1229-
parameter: convertedParam,
1230-
decorators: decorators
1231-
};
1232-
}
1233-
12341220
return assign(convertedParam, {
12351221
decorators: decorators
12361222
});
@@ -1499,11 +1485,8 @@ module.exports = function(ast, extra) {
14991485
right: convertChild(node.initializer)
15001486
});
15011487
} else {
1502-
var convertedParameter = convert(node.name, parent);
1503-
if (node.type) {
1504-
convertedParameter.typeAnnotation = convertTypeAnnotation(node.type);
1505-
}
1506-
return convertedParameter;
1488+
parameter = convert(node.name, parent);
1489+
result = parameter;
15071490
}
15081491

15091492
if (node.type) {
@@ -1512,6 +1495,19 @@ module.exports = function(ast, extra) {
15121495
});
15131496
}
15141497

1498+
if (node.modifiers) {
1499+
return {
1500+
type: "TSParameterProperty",
1501+
range: [node.getStart(), node.end],
1502+
loc: getLoc(node, ast),
1503+
accessibility: getTSNodeAccessibility(node),
1504+
isReadonly: node.modifiers.some(function(modifier) {
1505+
return modifier.kind === SyntaxKind.ReadonlyKeyword;
1506+
}),
1507+
parameter: result
1508+
};
1509+
}
1510+
15151511
break;
15161512

15171513
// Classes

0 commit comments

Comments
 (0)