Dart on the web frontend too, since start of the project. If you already had a substantial part of the project in JS, then Typescript would prob be better choice.
Dart is pretty mature at this point, with a very solid type system and getting better with extension methods just added and NNBD coming soon. It doesn't have as many packages, but it's pretty good.
> native macOS app — not sure also if Flutter will work for that.
They're working on flutter for desktop and there's a prototype.