1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
| // write the json back, preserving the line breaks and indent
| const { writeFile } = require('node:fs/promises')
| const kIndent = Symbol.for('indent')
| const kNewline = Symbol.for('newline')
|
| module.exports = async (path, pkg) => {
| const {
| [kIndent]: indent = 2,
| [kNewline]: newline = '\n',
| } = pkg
| delete pkg._id
| const raw = JSON.stringify(pkg, null, indent) + '\n'
| const data = newline === '\n' ? raw : raw.split('\n').join(newline)
| return writeFile(path, data)
| }
|
|