link-packages.js
1 #! /usr/bin/env node 2 3 import { readFile, readdir, stat, unlink } from 'fs/promises'; 4 import { local } from './utils/path.js'; 5 6 for (const repo of await readdir(local`repos`)) { 7 const stats = await stat(local`repos/${repo}`); 8 9 if (!repo.startsWith('.') && stats.isDirectory()) { 10 let pkg; 11 12 try { 13 pkg = JSON.parse(await readFile(local`repos/${repo}/package.json`, 'utf-8')); 14 } catch (e) {} 15 16 if (pkg?.name) { 17 let modules = []; 18 19 try { 20 modules = await readdir(local`repos/${repo}/node_modules/@bablr`); 21 } catch (e) {} 22 23 for (const module_ of modules) { 24 await unlink(local`repos/${repo}/node_modules/@bablr/${module_}`); 25 } 26 27 try { 28 await unlink(local`repos/${repo}/node_modules/bablr`); 29 } catch (e) {} 30 31 try { 32 await unlink(local`repos/${repo}/node_modules/.bin/bablr`); 33 } catch (e) {} 34 35 try { 36 await unlink(local`repos/${repo}/node_modules/.bin/macrome`); 37 } catch (e) {} 38 } 39 } 40 }