Files
trackgo-fe/packages/brand/scripts/copy-brand-assets.js
T

32 lines
1.0 KiB
JavaScript

const fs = require('node:fs');
const path = require('node:path');
// Resolve the source directory (packages/brand/public)
const brandPublicDir = path.resolve(__dirname, '../public');
// Resolve the destination directory (public/brand folder in the calling app)
// process.cwd() points to the app folder (e.g., apps/web) when the script is executed
const destDir = path.resolve(process.cwd(), 'public', 'brand');
// Ensure the destination folder exists
if (!fs.existsSync(destDir)) {
fs.mkdirSync(destDir, { recursive: true });
}
// Copy files using fs.cpSync (Available in Node.js 16.7+)
try {
fs.cpSync(brandPublicDir, destDir, {
recursive: true,
force: true, // Overwrite files if they already exist
filter: (src) => {
const filename = path.basename(src);
// Exclude unwanted files
return !['.gitkeep', 'README.md'].includes(filename);
},
});
console.log(`✓ Brand assets successfully copied to ${destDir}`);
} catch (error) {
console.error(`❌ Failed to copy brand assets:`, error.message);
process.exit(1);
}