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.
WHY are these changes introduced?
I propose this move to enable CLI plugin developers to use the utilities used by the theme commands.
cli-kit
provides a large collection of utilities for making Shopify CLIs. It contains all of the shared code between the various CLI packages.There even is a theme folder with a limited set of functionality. Rather than be limited by what's there today, I propose that all the building blocks for the theme commands be moved to to
cli-kit
. It will allow CLI plugins like Shopkeeper to tightly integrate with the Shopify CLI.Shopkeeper is a way to address: #4438 and #3509
I have not completed the refactor and open this as a draft because I want to get your buy-in before completing the work. Also, I'm open to discussing the exact list of utilities moved over. My preference is more is better, but let's talk!
Also #4467 prevents me from doing the work locally.
WHAT is this pull request doing?
This PR moves a set of the theme utilities from the
theme
package tocli-kit
.How to test your changes?
Running the CLI test suite should do the job. This is just a relocation of files.
Measuring impact
How do we know this change was effective? Please choose one:
Checklist