Same comment about special case. Maybe factor out default behavior to separate method? (due to JSFunctionToScala pattern match)