-
Notifications
You must be signed in to change notification settings - Fork 28
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
TypeScript Support #1195
Comments
What are the impacts on these:
Please provide more UX-related information on implementations for developers. |
Source maps work across browsers
This needs more testing, but around 100ms overhead for parsing something like this RXJS file including generating source maps. Results will be cached. This can also probably be improved
Scripts can be created with either |
Larger projects consist of dozens and sometimes hundreds of script files, simple concatenation of JS files (classic scripts) takes a few milliseconds, TS transpilation will take seconds if not tens? |
There will be some unavoidable overhead/cost in opting in, but I wouldn't expect it to be anywhere near that. |
As long as the results are cached, and so only the changed files are transpiled, this sounds really great to me. It's not like there's a way to run TS files natively, so any workflow typescript developers use already involves some transpilation. Having it done natively by the Editor is a big deal. I assume it will work the same way if they use the VSCode plugin to automatically sync ts files to our cloud? |
Yep, that should work to. I think TS devs currently transpile before syncing (which will still be possible), but they can also sync TS directly and rely on editor for transpilation. |
I wonder if we could kick off the transpilation process as soon as the user saves the .ts file in the editor. By the time he gets to launch it, it will likely be transpiled already. |
The UX has to be well implemented with the case of not-immediate results. For example if user saved a file, and server started transpilation, while user refreshes Launcher then there is a problem:
So definitely a few things need to be cleared out and well communicated:
|
This file seems to be used in most benchmarks. Current tests is around 100ms on MBP M2, which is not 0, but likely only a small fraction of the time to load it.
I believe this should never happen. If a file is requested, it should reflect the current state. There should not be a difference between the TS and JS. Realistically though, this will depend on how fast transpilation is in real world projects.
Attribute parsing is on the TS itself and does not depend upon transpilation. See playcanvas/attribute-parser#9
I believe this should work due to the source mapping, but needs more investigation. |
This ticket is to track the feature of TypeScript support to the editor as a native way of creating Scripts.
#Tasks
The text was updated successfully, but these errors were encountered: