Cleanup: Single source of default project contents #2211
Merged
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.
Fixes #1423
Makes it easier to change the default project contents (for example, bumping the p5 version) because it doesn't need to be changed in so many different places.
Changes:
server/domain-objects/createDefaultFiles.jsas the "single source of truth" for default file contents and export the local constantsdefaultCSS,defaultHTML,defaultSketch.createDefaultFiles.jsinstead. (server/scripts/examples.js,client/modules/IDE/reducers/files.js)initialStatefunction fromclient/modules/IDE/reducers/files.jsand use this function instead of duplicating the defaultfilesarray. (client/modules/Preview/,client/testData/testReduxStore.js)Next Steps:
serverwith very repetitive code for creatingfilesarrays. These can be cleaned up in a future PR by creating a utility function.I have verified that this pull request:
npm run lint)npm run test)developbranch.Fixes #123