44 lines
968 B
Plaintext
44 lines
968 B
Plaintext
// cell remove <alias> - Remove a module from dependencies
|
|
|
|
var shop = use('shop')
|
|
var fd = use('fd')
|
|
|
|
if (args.length < 1) {
|
|
log.console("Usage: cell remove <alias>")
|
|
$_.stop()
|
|
return
|
|
}
|
|
|
|
var alias = args[0]
|
|
|
|
// Check if cell.toml exists
|
|
if (!fd.stat('.cell/cell.toml').isFile) {
|
|
log.error("No cell.toml found.")
|
|
$_.stop()
|
|
return
|
|
}
|
|
|
|
// Get module directory before removing dependency
|
|
var module_dir = shop.get_module_dir(alias)
|
|
|
|
// Remove from dependencies
|
|
if (shop.remove_dependency(alias)) {
|
|
log.console("Removed dependency: " + alias)
|
|
|
|
// Remove module directory
|
|
if (module_dir && fd.stat(module_dir).isDirectory) {
|
|
log.console("Removing module directory: " + module_dir)
|
|
try {
|
|
fd.rmdir(module_dir)
|
|
} catch (e) {
|
|
log.error("Failed to remove module directory: " + e)
|
|
}
|
|
} else {
|
|
log.console("Module directory not found or already removed.")
|
|
}
|
|
} else {
|
|
log.error("Dependency not found: " + alias)
|
|
}
|
|
|
|
$_.stop()
|