Skip to content

Commit

Permalink
feat: move prettier config to package.json
Browse files Browse the repository at this point in the history
  • Loading branch information
bingtsingw committed Aug 23, 2022
1 parent c8dbea1 commit 3d74ced
Show file tree
Hide file tree
Showing 3 changed files with 26 additions and 18 deletions.
25 changes: 12 additions & 13 deletions prettier/index.js
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
const { install, packageJson, lines, json, deleteFiles, template } = require('mrm-core');
const { cosmiconfig, hasTypescript, hasLintStaged } = require('../utils');
const { cosmiconfig, hasTypescript, hasLintStaged, prettierConfig } = require('../utils');
const { join } = require('path');

const task = () => {
Expand All @@ -22,22 +22,21 @@ const task = () => {
.save();
}

const prettierrc = json('.prettierrc.json');
prettierrc.merge({
printWidth: 120,
singleQuote: true,
trailingComma: 'all',
proseWrap: 'never',
});
prettierConfig()
.set({
printWidth: 120,
singleQuote: true,
trailingComma: 'all',
proseWrap: 'never',
})
.save();

if (hasTypescript) {
install(['prettier-plugin-organize-imports']);
prettierrc.merge({
plugins: ['prettier-plugin-organize-imports'],
});
prettierConfig()
.merge({ plugins: ['prettier-plugin-organize-imports'] })
.save();
}

prettierrc.save();
};

task.description = 'Add prettier';
Expand Down
8 changes: 3 additions & 5 deletions prisma/index.js
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
const { chmodSync, existsSync } = require('fs');
const { install, packageJson, template, json } = require('mrm-core');
const { join } = require('path');
const { hasPrettier } = require('../utils');
const { hasPrettier, prettierConfig } = require('../utils');

const task = async () => {
const { execa } = await import('execa');
Expand Down Expand Up @@ -32,10 +32,8 @@ const task = async () => {

if (hasPrettier) {
install(['prettier-plugin-prisma']);
json('.prettierrc.json')
.merge({
plugins: ['prettier-plugin-prisma'],
})
prettierConfig()
.merge({ plugins: ['prettier-plugin-prisma'] })
.save();
}
};
Expand Down
11 changes: 11 additions & 0 deletions utils.js
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,16 @@ const cosmiconfig = (name) => {
return configs;
};

const prettierConfig = () => ({
set: (obj) => {
return packageJson().set('prettier', obj);
},
merge: (obj) => {
return packageJson().merge({ prettier: obj });
},
save: packageJson().save,
});

const hasHusky = !!packageJson().get('devDependencies.husky');

const hasPrettier = !!packageJson().get('devDependencies.prettier');
Expand All @@ -36,6 +46,7 @@ const hasLintStaged = !!packageJson().get('devDependencies.lint-staged');

module.exports.removeMatch = removeMatch;
module.exports.cosmiconfig = cosmiconfig;
module.exports.prettierConfig = prettierConfig;
module.exports.hasHusky = hasHusky;
module.exports.hasPrettier = hasPrettier;
module.exports.hasTypescript = hasTypescript;
Expand Down

0 comments on commit 3d74ced

Please sign in to comment.