1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556 |
- import fs from 'fs/promises'
- import path from 'path'
- async function main() {
- const threshold = process.env.THRESHOLD || 40
- let output: string
- const diffOutput = await fs.readFile(
- path.resolve(__dirname, '..', 'tmp/diff.txt'),
- 'utf-8'
- )
- const fileDiffs = diffOutput
- .split('\n')
- .map((s) => s.trim())
- .filter((s) => s)
- .map((s) => s.split(':'))
- if (fileDiffs.length === 0) {
- output = ''
- } else {
- const table = fileDiffs.reduce(
- (prev, [source, filename]) => {
- const row = `|${filename}`
- let status: 'Added 🟢' | 'Removed ⛔️'
- if (!source.startsWith('./dist')) {
- status = 'Removed ⛔️'
- } else {
- status = 'Added 🟢'
- }
- return `${prev}
- ${row}|${status}|`
- },
- `| Filename | Status |
- |:---|:---:|`
- )
- output = `**Total changed files:** ${fileDiffs.length}
- ${
- fileDiffs.length >= threshold
- ? `#### 🚔 Attention: the changed file has exceeded the threshold`
- : ''
- }
- <details><summary>:information_source: Files have been changed</summary>
- ${table}
- </details>
- <sub>Generated with :heart: by Element Plus bot</sub>`
- }
- await fs.writeFile(path.resolve(__dirname, '..', 'tmp/diff.md'), output)
- }
- main()
|