slicejs-cli 2.5.1 → 2.7.0
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/README.md +5 -2
- package/client.js +31 -27
- package/commands/Validations.js +36 -18
- package/commands/buildProduction/buildProduction.js +12 -11
- package/commands/createComponent/createComponent.js +4 -5
- package/commands/deleteComponent/deleteComponent.js +5 -5
- package/commands/doctor/doctor.js +9 -9
- package/commands/getComponent/getComponent.js +40 -51
- package/commands/init/init.js +103 -7
- package/commands/listComponents/listComponents.js +5 -3
- package/commands/startServer/startServer.js +7 -6
- package/commands/utils/PathHelper.js +58 -0
- package/commands/utils/VersionChecker.js +9 -7
- package/commands/utils/updateManager.js +377 -0
- package/package.json +1 -1
- package/post.js +17 -138
package/package.json
CHANGED
package/post.js
CHANGED
|
@@ -5,142 +5,21 @@ import Print from './commands/Print.js';
|
|
|
5
5
|
|
|
6
6
|
const __filename = fileURLToPath(import.meta.url);
|
|
7
7
|
const __dirname = path.dirname(__filename);
|
|
8
|
-
const projectName = path.basename(__dirname);
|
|
9
8
|
|
|
10
|
-
const
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
.
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
projectPackageJson.scripts['start'] = 'slice start';
|
|
28
|
-
|
|
29
|
-
// Component management
|
|
30
|
-
projectPackageJson.scripts['component:create'] = 'slice component create';
|
|
31
|
-
projectPackageJson.scripts['component:list'] = 'slice component list';
|
|
32
|
-
projectPackageJson.scripts['component:delete'] = 'slice component delete';
|
|
33
|
-
|
|
34
|
-
// Main repository commands (most used shortcuts)
|
|
35
|
-
projectPackageJson.scripts['get'] = 'slice get';
|
|
36
|
-
projectPackageJson.scripts['browse'] = 'slice browse';
|
|
37
|
-
projectPackageJson.scripts['sync'] = 'slice sync';
|
|
38
|
-
|
|
39
|
-
// Utility commands
|
|
40
|
-
projectPackageJson.scripts['slice:version'] = 'slice version';
|
|
41
|
-
projectPackageJson.scripts['slice:update'] = 'slice update';
|
|
42
|
-
|
|
43
|
-
// Legacy commands - mantener por compatibilidad temporal
|
|
44
|
-
projectPackageJson.scripts['slice:init'] = 'slice init';
|
|
45
|
-
projectPackageJson.scripts['slice:start'] = 'slice start';
|
|
46
|
-
projectPackageJson.scripts['slice:dev'] = 'slice dev';
|
|
47
|
-
projectPackageJson.scripts['slice:create'] = 'slice component create';
|
|
48
|
-
projectPackageJson.scripts['slice:list'] = 'slice component list';
|
|
49
|
-
projectPackageJson.scripts['slice:delete'] = 'slice component delete';
|
|
50
|
-
projectPackageJson.scripts['slice:get'] = 'slice get';
|
|
51
|
-
projectPackageJson.scripts['slice:browse'] = 'slice browse';
|
|
52
|
-
projectPackageJson.scripts['slice:sync'] = 'slice sync';
|
|
53
|
-
projectPackageJson.scripts['run'] = 'slice dev';
|
|
54
|
-
|
|
55
|
-
// Module configuration
|
|
56
|
-
projectPackageJson.type = 'module';
|
|
57
|
-
projectPackageJson.engines = {
|
|
58
|
-
"node": ">=20.0.0"
|
|
59
|
-
};
|
|
60
|
-
|
|
61
|
-
// Write the new content to package.json
|
|
62
|
-
return fs.promises.writeFile(projectPackageJsonPath, JSON.stringify(projectPackageJson, null, 2), 'utf8');
|
|
63
|
-
})
|
|
64
|
-
.then(() => {
|
|
65
|
-
console.log('✅ SliceJS CLI configured successfully');
|
|
66
|
-
console.log('\n🎯 New recommended commands:');
|
|
67
|
-
console.log(' slice dev - Start development server');
|
|
68
|
-
console.log(' slice get Button - Get components from repository');
|
|
69
|
-
console.log(' slice browse - View available components');
|
|
70
|
-
console.log(' slice component create - Create local component');
|
|
71
|
-
console.log('\n📦 Available npm scripts:');
|
|
72
|
-
console.log(' npm run dev - Start development server');
|
|
73
|
-
console.log(' npm run get - Install components');
|
|
74
|
-
console.log(' npm run browse - Browse components');
|
|
75
|
-
console.log('\n⚠️ Legacy commands (deprecated but still work):');
|
|
76
|
-
console.log(' npm run slice:dev - Use "slice dev" instead');
|
|
77
|
-
console.log(' npm run slice:get - Use "slice get" instead');
|
|
78
|
-
console.log('\n💡 You can also use npx:');
|
|
79
|
-
console.log(' npx slicejs-cli dev');
|
|
80
|
-
console.log('\n📘 Documentation: https://slice-js-docs.vercel.app/');
|
|
81
|
-
})
|
|
82
|
-
.catch(err => {
|
|
83
|
-
if (err.code === 'ENOENT') {
|
|
84
|
-
// The package.json file doesn't exist, so we create a new one with the commands
|
|
85
|
-
const defaultPackageJson = {
|
|
86
|
-
name: projectName,
|
|
87
|
-
version: '1.0.0',
|
|
88
|
-
description: 'Slice.js project',
|
|
89
|
-
main: 'api/index.js',
|
|
90
|
-
scripts: {
|
|
91
|
-
// Main workflow commands
|
|
92
|
-
'dev': 'slice dev',
|
|
93
|
-
'start': 'slice start',
|
|
94
|
-
|
|
95
|
-
// Component management
|
|
96
|
-
'component:create': 'slice component create',
|
|
97
|
-
'component:list': 'slice component list',
|
|
98
|
-
'component:delete': 'slice component delete',
|
|
99
|
-
|
|
100
|
-
// Repository commands
|
|
101
|
-
'get': 'slice get',
|
|
102
|
-
'browse': 'slice browse',
|
|
103
|
-
'sync': 'slice sync',
|
|
104
|
-
|
|
105
|
-
// Utility
|
|
106
|
-
'slice:version': 'slice version',
|
|
107
|
-
'slice:update': 'slice update',
|
|
108
|
-
|
|
109
|
-
// Legacy commands (for compatibility)
|
|
110
|
-
'slice:init': 'slice init',
|
|
111
|
-
'slice:start': 'slice start',
|
|
112
|
-
'slice:dev': 'slice dev',
|
|
113
|
-
'slice:create': 'slice component create',
|
|
114
|
-
'slice:list': 'slice component list',
|
|
115
|
-
'slice:delete': 'slice component delete',
|
|
116
|
-
'slice:get': 'slice get',
|
|
117
|
-
'slice:browse': 'slice browse',
|
|
118
|
-
'slice:sync': 'slice sync',
|
|
119
|
-
'run': 'slice dev'
|
|
120
|
-
},
|
|
121
|
-
type: 'module',
|
|
122
|
-
engines: {
|
|
123
|
-
"node": ">=20.0.0"
|
|
124
|
-
}
|
|
125
|
-
};
|
|
126
|
-
|
|
127
|
-
return fs.promises.writeFile(projectPackageJsonPath, JSON.stringify(defaultPackageJson, null, 2), 'utf8');
|
|
128
|
-
} else {
|
|
129
|
-
throw err;
|
|
130
|
-
}
|
|
131
|
-
})
|
|
132
|
-
.then(() => {
|
|
133
|
-
console.log('✅ SliceJS CLI commands configured successfully');
|
|
134
|
-
console.log('\n🎯 Simplified development workflow:');
|
|
135
|
-
console.log(' slice dev → Start development server');
|
|
136
|
-
console.log(' slice get Button → Install components');
|
|
137
|
-
console.log(' slice browse → View available components');
|
|
138
|
-
console.log('\n🔧 Benefits:');
|
|
139
|
-
console.log(' • Simple and direct commands');
|
|
140
|
-
console.log(' • Can be used globally or with npx');
|
|
141
|
-
console.log(' • Legacy npm scripts still work for compatibility');
|
|
142
|
-
})
|
|
143
|
-
.catch(err => {
|
|
144
|
-
console.error('❌ Error setting up package.json:', err.message);
|
|
145
|
-
process.exit(1);
|
|
146
|
-
});
|
|
9
|
+
const isGlobal = process.env.npm_config_global === 'true';
|
|
10
|
+
const initCwd = process.env.INIT_CWD ? path.resolve(process.env.INIT_CWD) : null;
|
|
11
|
+
const targetRoot = initCwd || path.resolve(__dirname, '../../');
|
|
12
|
+
const projectPackageJsonPath = path.join(targetRoot, 'package.json');
|
|
13
|
+
|
|
14
|
+
if (isGlobal) {
|
|
15
|
+
console.log('ℹ️ Instalación global detectada de slicejs-cli.');
|
|
16
|
+
console.log(' Omite configuración de scripts. Usa el binario directamente:');
|
|
17
|
+
console.log(' slice dev');
|
|
18
|
+
console.log(' slice get Button');
|
|
19
|
+
process.exit(0);
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
console.log('ℹ️ Instalación local detectada de slicejs-cli.');
|
|
23
|
+
console.log(' Se omite configuración automática de scripts en postinstall.');
|
|
24
|
+
console.log(' Usa "slice init" para configurar los scripts del proyecto.');
|
|
25
|
+
process.exit(0);
|