12345678910111213141516171819202122232425262728 |
- // Copyright 2017-2020 @polkadot/apps authors & contributors
- // This software may be modified and distributed under the terms
- // of the Apache-2.0 license. See the LICENSE file for details.
- const fs = require('fs');
- const path = require('path');
- module.exports = function findPackages () {
- const pkgRoot = path.join(__dirname, '..', 'packages');
- return fs
- .readdirSync(pkgRoot)
- .filter((entry) => {
- const pkgPath = path.join(pkgRoot, entry);
- return !['.', '..'].includes(entry) &&
- fs.lstatSync(pkgPath).isDirectory() &&
- fs.existsSync(path.join(pkgPath, 'package.json'));
- })
- .map((dir) => {
- const jsonPath = path.join(pkgRoot, dir, 'package.json');
- const { name } = JSON.parse(
- fs.readFileSync(jsonPath).toString('utf-8')
- );
- return { dir, name };
- });
- };
|