specleap-framework 2.0.3 → 2.0.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bin/specleap +38 -4
- package/package.json +1 -1
package/bin/specleap
CHANGED
|
@@ -1,14 +1,48 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
|
|
3
|
-
const { spawn } = require('child_process');
|
|
3
|
+
const { spawn, execSync } = require('child_process');
|
|
4
4
|
const path = require('path');
|
|
5
|
+
const fs = require('fs');
|
|
5
6
|
|
|
6
|
-
//
|
|
7
|
-
const
|
|
7
|
+
// Directorio del paquete npm (donde están todos los archivos)
|
|
8
|
+
const packageDir = path.join(__dirname, '..');
|
|
9
|
+
|
|
10
|
+
// Directorio donde el usuario ejecutó npx (su directorio de trabajo)
|
|
11
|
+
const userCwd = process.cwd();
|
|
12
|
+
|
|
13
|
+
// Carpeta de destino
|
|
14
|
+
const targetDir = path.join(userCwd, 'specleap-framework');
|
|
15
|
+
|
|
16
|
+
console.log('\n🚀 Copiando SpecLeap Framework...\n');
|
|
17
|
+
|
|
18
|
+
// Verificar si ya existe
|
|
19
|
+
if (fs.existsSync(targetDir)) {
|
|
20
|
+
console.error(`❌ Error: El directorio '${targetDir}' ya existe.`);
|
|
21
|
+
console.error(' Por favor elimínalo primero o ejecuta desde otro directorio.\n');
|
|
22
|
+
process.exit(1);
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
// Crear directorio destino
|
|
26
|
+
try {
|
|
27
|
+
fs.mkdirSync(targetDir, { recursive: true });
|
|
28
|
+
|
|
29
|
+
// Copiar todos los archivos del paquete
|
|
30
|
+
execSync(`cp -R "${packageDir}"/* "${targetDir}"/`, { stdio: 'inherit' });
|
|
31
|
+
execSync(`cp -R "${packageDir}"/.??* "${targetDir}"/ 2>/dev/null || true`, { stdio: 'ignore' });
|
|
32
|
+
|
|
33
|
+
console.log(`✅ Archivos copiados a: ${targetDir}\n`);
|
|
34
|
+
|
|
35
|
+
} catch (err) {
|
|
36
|
+
console.error('❌ Error copiando archivos:', err.message);
|
|
37
|
+
process.exit(1);
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
// Ejecutar setup.sh DESDE el directorio copiado
|
|
41
|
+
const setupPath = path.join(targetDir, 'setup.sh');
|
|
8
42
|
|
|
9
43
|
const setup = spawn('bash', [setupPath], {
|
|
10
44
|
stdio: 'inherit',
|
|
11
|
-
cwd:
|
|
45
|
+
cwd: targetDir
|
|
12
46
|
});
|
|
13
47
|
|
|
14
48
|
setup.on('close', (code) => {
|
package/package.json
CHANGED