3 var _ = require('lodash'),
4 docdown = require('docdown'),
5 fs = require('fs-extra'),
6 path = require('path');
8 var basePath = path.join(__dirname, '..', '..'),
9 docPath = path.join(basePath, 'doc'),
10 readmePath = path.join(docPath, 'README.md');
12 var pkg = require('../../package.json'),
13 version = pkg.version;
18 '<% if (name == "templateSettings" || !/^(?:methods|properties|seq)$/i.test(category)) {' +
19 'print("[Ⓝ](https://www.npmjs.com/package/lodash." + name.toLowerCase() + " \\"See the npm package\\")")' +
22 'path': path.join(basePath, 'lodash.js'),
23 'title': '<a href="https://lodash.com/">lodash</a> <span>v' + version + '</span>',
25 'url': 'https://github.com/lodash/lodash/blob/' + version + '/lodash.js'
35 function postprocess(string) {
36 // Fix docdown bug by wrapping symbol property identifiers in brackets.
37 return string.replace(/\.(Symbol\.(?:[a-z]+[A-Z]?)+)/g, '[$1]');
40 /*----------------------------------------------------------------------------*/
42 function onComplete(error) {
48 function build(type) {
49 var options = _.defaults({}, config.base, config[type]),
50 markdown = docdown(options);
52 fs.writeFile(readmePath, postprocess(markdown), onComplete);
55 build(_.last(process.argv));