src/language-js/parse/postprocess/index.js/transformChainExpression
function transformChainExpression(node) {
  switch (node.type) {
    case "CallExpression":
      node.type = "OptionalCallExpression";
      node.callee = transformChainExpression(node.callee);
      break;
    case "MemberExpression":
      node.type = "OptionalMemberExpression";
      node.object = transformChainExpression(node.object);
      break;
    // typescript
    case "TSNonNullExpression":
      node.expression = transformChainExpression(node.expression);
      break;
    // No default
  }
  return node;
}