UNPKG

1.21 kBJavaScriptView Raw
1/*
2* @adonisjs/mrm-preset
3*
4* (c) Harminder Virk <virk@adonisjs.com>
5*
6* For the full copyright and license information, please view the LICENSE
7* file that was distributed with this source code.
8*/
9
10const { template } = require('mrm-core')
11const { join } = require('path')
12const debug = require('debug')('adonis:mrm-contributing')
13
14const mergeConfig = require('../utils/mergeConfig')
15const saveFile = require('../utils/saveFile')
16
17/**
18 * Creates CONTRIBUTING.md file. The `in template` is dependent
19 * upon various config values. However, the `out template` is
20 * always `CONTRIBUTING.md` file.
21 *
22 * @method task
23 *
24 * @param {Object} config
25 *
26 * @return {void}
27 */
28function task (config) {
29 mergeConfig(config, { force: false })
30
31 /**
32 * Choosing which template to use
33 */
34 let templateFile = 'CONTRIBUTING.md'
35 if (config.core) {
36 templateFile = 'CONTRIBUTING_CORE.md'
37 } else if (config.ts) {
38 templateFile = 'CONTRIBUTING_TS.md'
39 }
40
41 debug('template file %s', templateFile)
42
43 const file = template('CONTRIBUTING.md', join(__dirname, 'templates', templateFile))
44 file.apply()
45
46 saveFile(file, config.force)
47}
48
49task.description = 'Adds CONTRIBUTING.md file'
50module.exports = task