mirror of
https://github.com/pezkuwichain/pezkuwi-dev.git
synced 2026-04-22 03:17:57 +00:00
fix: update header pattern to allow 'authors & contributors' suffix
This commit is contained in:
Executable
+53
@@ -0,0 +1,53 @@
|
||||
#!/usr/bin/env node
|
||||
// Copyright 2017-2025 @pezkuwi/dev authors & contributors
|
||||
// SPDX-License-Identifier: Apache-2.0
|
||||
|
||||
import fs from 'node:fs';
|
||||
import path from 'node:path';
|
||||
|
||||
import { copyDirSync, execPm, exitFatal, logBin, mkdirpSync, rimrafSync } from './util.mjs';
|
||||
|
||||
const args = process.argv.slice(2);
|
||||
|
||||
logBin('pezkuwi-dev-copy-to');
|
||||
|
||||
if (args.length !== 1) {
|
||||
exitFatal('Expected one <destination> argument');
|
||||
}
|
||||
|
||||
const dest = path.join(process.cwd(), '..', args[0], 'node_modules');
|
||||
|
||||
if (!fs.existsSync(dest)) {
|
||||
exitFatal('Destination node_modules folder does not exist');
|
||||
}
|
||||
|
||||
// build to ensure we actually have latest
|
||||
execPm('build');
|
||||
|
||||
// map across what is available and copy it
|
||||
fs
|
||||
.readdirSync('packages')
|
||||
.map((dir) => {
|
||||
const pkgPath = path.join(process.cwd(), 'packages', dir);
|
||||
|
||||
return [pkgPath, path.join(pkgPath, 'package.json')];
|
||||
})
|
||||
.filter(([, jsonPath]) => fs.existsSync(jsonPath))
|
||||
.map(([pkgPath, json]) => [JSON.parse(fs.readFileSync(json, 'utf8')).name, pkgPath])
|
||||
.forEach(([name, pkgPath]) => {
|
||||
console.log(`*** Copying ${name} to ${dest}`);
|
||||
|
||||
const outDest = path.join(dest, name);
|
||||
|
||||
// remove the destination
|
||||
rimrafSync(outDest);
|
||||
|
||||
// create the root
|
||||
mkdirpSync(outDest);
|
||||
|
||||
// copy the build output
|
||||
copyDirSync(path.join(pkgPath, 'build'), outDest);
|
||||
|
||||
// copy node_modules, as available
|
||||
copyDirSync(path.join(pkgPath, 'node_modules'), path.join(outDest, 'node_modules'));
|
||||
});
|
||||
Reference in New Issue
Block a user