Finishing the project commands TS port #1449
Open
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.
Description and Context
This wraps up the work to port all of the project command files to TS. I had to make some yargs typing changes to make things work well. I'm trying to strike the balance between getting value out of the yargs types, and making this so clunky to use that it's too much of a hassle to follow the patterns.
I had to make a few changes:
makeYargsBuilder
util was incorrectly matching on command buckets for help output. For example, runninghs project create --help
was returning the help output forhs project --hlep
. I fixed this by matching on the last command that the user ran (e.g "create" inhs project create --help
)CommandModule
interface is a little annoying to use because it makes the builder optional, and changes the type from a simple function to something else. I created some overrides that simplifies that type for our use casesmakeYargsBuilder
nowScreenshots
TODO
Who to Notify