Add TypeScript-enabled Sample Environment and First-Pass Type Declarations#57
Merged
Merged
Conversation
Initial commit of the ExtendScript and Premiere Pro type declaration files. They exist in the raw state that they were initially developed in. Much work is needed.
This is the PProPanel sample, adjusted to take advantage of TypeScript-based type declaration files to build an environment that enables modern tooling around Adobe CEP.
JavaScript syntax highlighting doesn't work in HTML in VSCode. This enables syntax highlighting for the scripts in question.
The "shared" folder is mostly interesting for TypeScript. This repository does not contain any actual TypeScript files yet - it merely has JavaScript and ExtendScript content. It _is_ setup for TypeScript, yes, but nothing makes use of this "feature". For now, leave it out to keep things as simple as possible.
The ExtendScript declaration files got a comment cleanup pass and a few more classes supported. The big win here is the inclusion of Object and ObjectConstructor which somewhat links it to the ECMAScript base.
The massive block of comments at the top was moved out into a ReadMe.md for easier viewing. What's more, the intermediary `PremiereObject1 class was re-implemented so as to provide full type support.
Declaration file authoring is somewhat of a black magic. Hopefully, these comments will help make some of the black magic a little more clear.
Add a ReadMe to the sample that provides some information as to the structure and content of the "project".
The `with` statement was deprecated and should not be used.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
This PR includes the following content:
dom_app) and HTML (dom_html). Each contains its owntsconfig.jsonfile, customized to provide context-specific type annotation support. This enables autocompletion, IntelliSense, and static analysis of JavaScript/ExtendScript when used in TypeScript enabled IDEs (e.g. Visual Studio Code). The project folder contains a-vscodesuffix because it has been somewhat customized for the Visual Studio Code IDE. All such adjustments are contained within the.vscodefolder.Much work can be done to improve both of the above items but these should already prove helpful to users.