Small changes to make j2cl and closure happier with this lib #69
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
First, introduces a JS file for
@externs
, so that closure-compiler knows about the types and fields we insist will be present at runtime. If we had a real type for the constructor (instead of just Function), we would make a specific type for that instead. Without VCE, j2cl is believing that there is an actual module (closure, ecmascript, etc) names VueCustomElement instead of just a js.dot.separated.object. In theory we could change the name to something like name="VueCustomElement.createElement" instead, and mark the namespace as global, but it turns out that doesnt work in GWT2, so this hopefully serves as a consistent way to do it for everyone.Finally, closure has changed its rules about invoking goog.define, the changes made here make it happy with our code. Chances are excellent we'll need to revisit
superdevmode
later and put it somewhere shared, but for now this at least compiles correctly.