I'm reading the source code of js.libraries. But i'm still not really clear about the usage of object, class and trait keyword.
object -- everything that is object in JS or some external declaration, e.g. window, Meteor;
class -- if You can/want write `new Something()`, than propably `Something` is class, e.g. Object, Meteor.Collection
trait -- something like class. You can use it when You want prohibit create new instance from Kotlin or just don't want create new instances, but you want to have typesafe interaction with objects which implements this interface, i.e. with objects which have expected methods and properties.
All in dom*.kt, jquery/*, html5/* are mapping. Additionally, You can see b2Vec2 from box2d.js
Another question how can i upgrade the kotlin.js? is it automatically updated when the kotlin plugin updated?
Unfortunatly no, now it will not updated with kotlin plugin. But You can do it manualy: