1 | #!/usr/bin/env node
|
2 | require = require('esm')(module)
|
3 | const fs = require('fs')
|
4 | const { promisify } = require('util')
|
5 | const { each } = require('@ctx-core/array')
|
6 | const { each__package__json } = require('../lib')
|
7 | const readFile = promisify(fs.readFile)
|
8 | const writeFile = promisify(fs.writeFile)
|
9 | const { keys } = Object
|
10 | main()
|
11 | async function main() {
|
12 | await each__package__json(`${__dirname}/../../*/package.json`, async package__json => {
|
13 | const txt = await readFile(package__json)
|
14 | const json = JSON.parse(txt)
|
15 | const json__ = {}
|
16 | each(keys(json), key => {
|
17 | if (key === 'main') {
|
18 | json__.main = json[key]
|
19 | json__.module = json[key]
|
20 | } else if (key === 'module') {
|
21 | json__.main = json[key]
|
22 | json__.module = json[key]
|
23 | } else if (key === 'homepage') {
|
24 | json__.homepage = json[key]
|
25 | json__.publishConfig = {
|
26 | access: 'public',
|
27 | }
|
28 | } else {
|
29 | json__[key] = json[key]
|
30 | }
|
31 | })
|
32 | await writeFile(package__json, JSON.stringify(json__, null, '\t'))
|
33 | })
|
34 | }
|