responsive-system 1.7.18 → 1.7.20

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "responsive-system",
3
- "version": "1.7.18",
3
+ "version": "1.7.20",
4
4
  "description": "Sistema de layout responsivo con auto-scaling para Tailwind CSS",
5
5
  "type": "module",
6
6
  "main": "./dist/responsive-system.cjs",
@@ -413,75 +413,6 @@ export { DEFAULT_BREAKPOINTS, getCurrentBreakpoint, getBreakpointIndex, getBreak
413
413
  console.log(' ✅ hooks/index.ts')
414
414
  }
415
415
 
416
- console.log('📦 Verificando dependencias...')
417
-
418
- // Agregar React a dependencies SOLO si NO está en package.json
419
- if (!hasReactInPackageJson) {
420
- console.log(' ➕ Agregando React a dependencies...')
421
- if (!packageJson.dependencies) {
422
- packageJson.dependencies = {}
423
- }
424
- packageJson.dependencies['react'] = '^19.1.1'
425
- packageJson.dependencies['react-dom'] = '^19.1.1'
426
- needsUpdate = true
427
- } else {
428
- console.log(' ✅ React ya está instalado')
429
- }
430
-
431
- // Agregar Vite si el proyecto está vacío
432
- if (isProjectEmpty && !hasVite) {
433
- console.log(' ➕ Agregando Vite a devDependencies...')
434
- if (!packageJson.devDependencies) {
435
- packageJson.devDependencies = {}
436
- }
437
- packageJson.devDependencies['vite'] = '^7.1.7'
438
- packageJson.devDependencies['@vitejs/plugin-react'] = '^5.0.4'
439
- needsUpdate = true
440
- }
441
-
442
- // Agregar Tailwind y sus dependencias a devDependencies
443
- if (!tailwindInDevDeps) {
444
- console.log(' ➕ Agregando Tailwind y PostCSS a devDependencies...')
445
- if (!packageJson.devDependencies) {
446
- packageJson.devDependencies = {}
447
- }
448
- packageJson.devDependencies['tailwindcss'] = '^4.1.14'
449
- packageJson.devDependencies['@tailwindcss/postcss'] = '^4.1.14'
450
- packageJson.devDependencies['postcss'] = '^8.5.6'
451
- packageJson.devDependencies['autoprefixer'] = '^10.4.21'
452
- needsUpdate = true
453
- }
454
-
455
- // Agregar TypeScript y sus tipos a devDependencies
456
- if (!typescriptInDevDeps) {
457
- console.log(' ➕ Agregando TypeScript a devDependencies...')
458
- if (!packageJson.devDependencies) {
459
- packageJson.devDependencies = {}
460
- }
461
- packageJson.devDependencies['typescript'] = '~5.9.3'
462
- packageJson.devDependencies['@types/react'] = '^19.1.16'
463
- packageJson.devDependencies['@types/react-dom'] = '^19.1.9'
464
- needsUpdate = true
465
- }
466
-
467
- // Agregar "type": "module" si no existe (para evitar warnings)
468
- if (!packageJson.type) {
469
- packageJson.type = 'module'
470
- needsUpdate = true
471
- }
472
-
473
- // Escribir package.json modificado
474
- if (needsUpdate) {
475
- console.log('')
476
- console.log('📝 Actualizando package.json...')
477
- fs.writeFileSync(packageJsonPath, JSON.stringify(packageJson, null, 2))
478
- console.log('✅ package.json actualizado')
479
- console.log('')
480
- console.log('⚠️ Ejecuta "npm install" para instalar las dependencias')
481
- } else {
482
- console.log('✅ Todas las dependencias ya están en package.json')
483
- }
484
-
485
416
  // Función async para manejar la configuración del proyecto
486
417
  (async () => {
487
418
  // Verificar que fs.existsSync esté disponible
@@ -505,14 +436,12 @@ if (needsUpdate) {
505
436
  isAlreadyConfigured = false
506
437
  }
507
438
 
508
- // Si el proyecto está vacío, crear estructura base
509
- if (isProjectEmpty) {
510
- // Si ya está configurado, preguntar si quiere sobrescribir
511
- if (isAlreadyConfigured) {
439
+ // Si el proyecto ya está configurado, preguntar si quiere sobrescribir
440
+ if (isAlreadyConfigured) {
512
441
  console.log('')
513
442
  console.log('⚠️ El proyecto ya está configurado')
514
443
 
515
- if (!isFromNodeModules) {
444
+ if (process.stdin.isTTY) {
516
445
  const rl = readline.createInterface({
517
446
  input: process.stdin,
518
447
  output: process.stdout
@@ -533,21 +462,103 @@ if (needsUpdate) {
533
462
  console.log(' ⚠️ Sobrescribiendo configuración...')
534
463
  console.log('')
535
464
  } else {
536
- // Si ya está configurado, salir
537
- console.log(' Proyecto ya configurado, saltando setup')
538
- process.exit(0)
465
+ // No hay terminal interactivo, usar default
466
+ console.log(' ℹ️ Terminal no interactivo, usando layout "default"')
467
+ console.log('')
539
468
  }
540
469
  }
541
470
 
542
- console.log('')
543
- console.log('📦 Proyecto vacío detectado, creando estructura base...')
544
- console.log('')
545
-
546
- // Preguntar qué layout quiere
471
+ // SIEMPRE preguntar qué layout quiere PRIMERO
547
472
  const selectedLayout = await askLayout()
548
473
  console.log(` ✅ Layout seleccionado: "${selectedLayout}"`)
549
474
  console.log('')
550
475
 
476
+ // Si el proyecto está vacío, crear estructura base
477
+ if (isProjectEmpty) {
478
+ console.log('')
479
+ console.log('📦 Proyecto vacío detectado, creando estructura base...')
480
+ console.log('')
481
+ }
482
+
483
+ console.log('📦 Verificando dependencias...')
484
+
485
+ // Agregar React a dependencies SOLO si NO está en package.json
486
+ if (!hasReactInPackageJson) {
487
+ console.log(' ➕ Agregando React a dependencies...')
488
+ if (!packageJson.dependencies) {
489
+ packageJson.dependencies = {}
490
+ }
491
+ packageJson.dependencies['react'] = '^19.1.1'
492
+ packageJson.dependencies['react-dom'] = '^19.1.1'
493
+ needsUpdate = true
494
+ } else {
495
+ console.log(' ✅ React ya está instalado')
496
+ }
497
+
498
+ // Agregar Vite si el proyecto está vacío
499
+ if (isProjectEmpty && !hasVite) {
500
+ console.log(' ➕ Agregando Vite a devDependencies...')
501
+ if (!packageJson.devDependencies) {
502
+ packageJson.devDependencies = {}
503
+ }
504
+ packageJson.devDependencies['vite'] = '^7.1.7'
505
+ packageJson.devDependencies['@vitejs/plugin-react'] = '^5.0.4'
506
+ needsUpdate = true
507
+ }
508
+
509
+ // Agregar Tailwind y sus dependencias a devDependencies
510
+ if (!tailwindInDevDeps) {
511
+ console.log(' ➕ Agregando Tailwind y PostCSS a devDependencies...')
512
+ if (!packageJson.devDependencies) {
513
+ packageJson.devDependencies = {}
514
+ }
515
+ packageJson.devDependencies['tailwindcss'] = '^4.1.14'
516
+ packageJson.devDependencies['@tailwindcss/postcss'] = '^4.1.14'
517
+ packageJson.devDependencies['postcss'] = '^8.5.6'
518
+ packageJson.devDependencies['autoprefixer'] = '^10.4.21'
519
+ needsUpdate = true
520
+ }
521
+
522
+ // Agregar TypeScript y sus tipos a devDependencies
523
+ if (!typescriptInDevDeps) {
524
+ console.log(' ➕ Agregando TypeScript a devDependencies...')
525
+ if (!packageJson.devDependencies) {
526
+ packageJson.devDependencies = {}
527
+ }
528
+ packageJson.devDependencies['typescript'] = '~5.9.3'
529
+ packageJson.devDependencies['@types/react'] = '^19.1.16'
530
+ packageJson.devDependencies['@types/react-dom'] = '^19.1.9'
531
+ needsUpdate = true
532
+ }
533
+
534
+ // Agregar "type": "module" si no existe (para evitar warnings)
535
+ if (!packageJson.type) {
536
+ packageJson.type = 'module'
537
+ needsUpdate = true
538
+ }
539
+
540
+ // Escribir package.json modificado
541
+ if (needsUpdate) {
542
+ console.log('')
543
+ console.log('📝 Actualizando package.json...')
544
+ fs.writeFileSync(packageJsonPath, JSON.stringify(packageJson, null, 2))
545
+ console.log('✅ package.json actualizado')
546
+ console.log('')
547
+ console.log('📦 Instalando dependencias...')
548
+ try {
549
+ execSync('npm install', { stdio: 'inherit', cwd: projectRoot })
550
+ console.log('✅ Dependencias instaladas')
551
+ console.log('')
552
+ } catch (error) {
553
+ console.error('❌ Error al instalar dependencias:', error.message)
554
+ console.log('⚠️ Por favor ejecuta "npm install" manualmente')
555
+ console.log('')
556
+ }
557
+ } else {
558
+ console.log('✅ Todas las dependencias ya están en package.json')
559
+ console.log('')
560
+ }
561
+
551
562
  // Crear estructura de directorios
552
563
  const dirs = ['src', 'src/components', 'src/components/layout', 'src/pages', 'src/hooks', 'src/types', 'src/constants', 'public']
553
564
  dirs.forEach(dir => {
@@ -566,7 +577,7 @@ if (needsUpdate) {
566
577
  console.log('')
567
578
 
568
579
  // Crear vite.config.ts
569
- const viteConfigPath = path.join(projectRoot, 'vite.config.ts')
580
+ // viteConfigPath ya está declarado arriba
570
581
  if (!fs.existsSync(viteConfigPath)) {
571
582
  const viteConfig = `import { defineConfig } from 'vite'
572
583
  import react from '@vitejs/plugin-react'
@@ -704,7 +715,7 @@ export default {
704
715
  }
705
716
 
706
717
  // Crear layout local según el seleccionado
707
- const layoutsDir = path.join(projectRoot, 'src', 'layouts')
718
+ // layoutsDir ya está declarado arriba
708
719
  if (!fs.existsSync(layoutsDir)) {
709
720
  fs.mkdirSync(layoutsDir, { recursive: true })
710
721
  }
@@ -825,7 +836,7 @@ export default MinimalLayout
825
836
  console.log(` ✅ Creado: src/layouts/${path.basename(layoutPath)}`)
826
837
 
827
838
  // Crear src/main.tsx que use el layout local
828
- const mainTsxPath = path.join(projectRoot, 'src', 'main.tsx')
839
+ // mainTsxPath ya está declarado arriba
829
840
  if (!fs.existsSync(mainTsxPath)) {
830
841
  const layoutName = selectedLayout.charAt(0).toUpperCase() + selectedLayout.slice(1) + 'Layout'
831
842
  const mainTsx = `import React from 'react'
@@ -990,9 +1001,6 @@ export default App
990
1001
  console.log('')
991
1002
  console.log('💡 Para cambiar el layout: npx responsive-system-setup')
992
1003
  console.log('')
993
- } else {
994
- console.log('✅ Proyecto ya inicializado')
995
- }
996
1004
 
997
1005
  console.log('')
998
1006
  console.log('✅ Configuración completada')