-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathbuildDoc.js
More file actions
30 lines (22 loc) · 836 Bytes
/
buildDoc.js
File metadata and controls
30 lines (22 loc) · 836 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
const rules = require('./defaultRules')
const { ruleDetail } = require('./index.js')
const { file } = require("@polycuber/script.cli")
var indexContent = ''
const rulesByObject = rules.reduce((prev, cur) => {
if (!prev[cur.sObject]) {
prev[cur.sObject] = []
}
prev[cur.sObject].push(cur)
return prev
}, {})
Object.keys(rulesByObject).forEach(objectName => {
const rules = rulesByObject[objectName]
const rulesIndexContent = rules.map(rule => `[${rule.message}](./Sample%20Rules/${objectName}/index.md) `).join('\n')
indexContent = indexContent + `### ${objectName}
${rulesIndexContent}
`
const content = rules.map(ruleDetail).join('\n')
file.write.text(`./Sample Rules/${objectName}/index.md`, `# ${objectName}
${content}`)
})
file.write.text('./Sample Rules/index.md', indexContent)