@lunnos/hyt 1.0.1 → 1.1.1

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.
@@ -2,6 +2,7 @@ import { Command } from 'commander';
2
2
  import fs from 'fs/promises';
3
3
  import path from 'path';
4
4
  import { execa } from 'execa';
5
+ import readline from 'readline';
5
6
  import { loadConfig } from '../utils/config.js';
6
7
  import { downloadFile, getTemplateUrl, getCfrUrl } from '../utils/download.js';
7
8
  import { startSpinner, success, error, info, warn } from '../utils/ui.js';
@@ -11,7 +12,7 @@ export function initCommand() {
11
12
  return new Command('init')
12
13
  .description('Create a new Hytale plugin project')
13
14
  .argument('<project-name>', 'Name for your plugin project')
14
- .option('--skip-cfr', 'Skip CFR decompiler download')
15
+ .option('--with-cfr', 'Download CFR and generate reference sources (takes ~10 minutes)')
15
16
  .option('--skip-git', 'Skip git initialization')
16
17
  .action(async (projectName, options) => {
17
18
  try {
@@ -29,14 +30,50 @@ export function initCommand() {
29
30
  const pluginSourceDir = path.join(pluginsDir, projectName);
30
31
  const modsDir = path.join(projectDir, 'mods');
31
32
  // Check if directory already exists
33
+ let savedCfrPath = null;
32
34
  try {
33
35
  await fs.access(projectDir);
34
- throw new HytaleError(`Directory "${projectName}" already exists.`);
36
+ // Directory exists, ask for confirmation
37
+ warn(`\nDirectory "${projectName}" already exists.`);
38
+ console.log('⚠️ This will DELETE the existing project and create a new one.');
39
+ // Check if CFR sources exist
40
+ const existingSrcRef = path.join(projectDir, 'Server', 'Plugins', 'src-ref');
41
+ let hasCfrSources = false;
42
+ try {
43
+ const stats = await fs.stat(existingSrcRef);
44
+ if (stats.isDirectory()) {
45
+ const files = await fs.readdir(existingSrcRef);
46
+ hasCfrSources = files.length > 0;
47
+ if (hasCfrSources) {
48
+ info('📚 Detected existing reference sources - they will be preserved');
49
+ }
50
+ }
51
+ }
52
+ catch {
53
+ // No CFR sources, continue
54
+ }
55
+ const answer = await askYesNo('\nDo you want to continue?');
56
+ if (!answer) {
57
+ info('Operation cancelled.');
58
+ process.exit(0);
59
+ }
60
+ // Save CFR sources if they exist
61
+ if (hasCfrSources) {
62
+ savedCfrPath = path.join(process.cwd(), `.hyt-temp-cfr-${Date.now()}`);
63
+ const saveSpinner = startSpinner('Saving reference sources...');
64
+ await fs.rename(existingSrcRef, savedCfrPath);
65
+ saveSpinner.succeed('Reference sources saved');
66
+ }
67
+ // Delete existing directory
68
+ const deleteSpinner = startSpinner('Removing existing project...');
69
+ await fs.rm(projectDir, { recursive: true, force: true });
70
+ deleteSpinner.succeed('Existing project removed');
35
71
  }
36
72
  catch (err) {
37
73
  if (err.code !== 'ENOENT') {
38
74
  throw err;
39
75
  }
76
+ // Directory doesn't exist, continue normally
40
77
  }
41
78
  // Create workspace structure
42
79
  const structureSpinner = startSpinner('Creating workspace structure...');
@@ -89,9 +126,10 @@ export function initCommand() {
89
126
  }
90
127
  // Update project name in template files
91
128
  const renameSpinner = startSpinner('Configuring project name...');
129
+ const packageName = projectName.toLowerCase().replace(/-/g, '_');
92
130
  await replaceInFiles(pluginSourceDir, 'ExamplePlugin', toPascalCase(projectName));
93
131
  await replaceInFiles(pluginSourceDir, 'example-mod', projectName);
94
- await replaceInFiles(pluginSourceDir, 'org.example', `com.${projectName.toLowerCase()}`);
132
+ await replaceInFiles(pluginSourceDir, 'org.example', `com.${packageName}`);
95
133
  // Rename the main Java file to match the new class name
96
134
  const pascalName = toPascalCase(projectName);
97
135
  const oldJavaFile = path.join(pluginSourceDir, 'app', 'src', 'main', 'java', 'org', 'example', 'ExamplePlugin.java');
@@ -102,9 +140,52 @@ export function initCommand() {
102
140
  catch {
103
141
  // File might already be renamed or in different location
104
142
  }
143
+ // Rename the test file to match the new class name
144
+ const oldTestFile = path.join(pluginSourceDir, 'app', 'src', 'test', 'java', 'org', 'example', 'ExamplePluginTest.java');
145
+ const newTestFile = path.join(pluginSourceDir, 'app', 'src', 'test', 'java', 'org', 'example', `${pascalName}Test.java`);
146
+ try {
147
+ await fs.rename(oldTestFile, newTestFile);
148
+ }
149
+ catch {
150
+ // File might already be renamed or in different location
151
+ }
152
+ // Rename package directory structure from org/example to com/packageName
153
+ const mainJavaDir = path.join(pluginSourceDir, 'app', 'src', 'main', 'java');
154
+ const testJavaDir = path.join(pluginSourceDir, 'app', 'src', 'test', 'java');
155
+ // Create new package structure
156
+ const newPackageDir = path.join('com', packageName);
157
+ const newMainPackageDir = path.join(mainJavaDir, newPackageDir);
158
+ const newTestPackageDir = path.join(testJavaDir, newPackageDir);
159
+ await fs.mkdir(newMainPackageDir, { recursive: true });
160
+ await fs.mkdir(newTestPackageDir, { recursive: true });
161
+ // Move files from org/example to com/packageName
162
+ const oldMainPackageDir = path.join(mainJavaDir, 'org', 'example');
163
+ const oldTestPackageDir = path.join(testJavaDir, 'org', 'example');
164
+ try {
165
+ const mainFiles = await fs.readdir(oldMainPackageDir);
166
+ for (const file of mainFiles) {
167
+ await fs.rename(path.join(oldMainPackageDir, file), path.join(newMainPackageDir, file));
168
+ }
169
+ // Clean up old directory structure
170
+ await fs.rm(path.join(mainJavaDir, 'org'), { recursive: true, force: true });
171
+ }
172
+ catch {
173
+ // Directory might not exist or already moved
174
+ }
175
+ try {
176
+ const testFiles = await fs.readdir(oldTestPackageDir);
177
+ for (const file of testFiles) {
178
+ await fs.rename(path.join(oldTestPackageDir, file), path.join(newTestPackageDir, file));
179
+ }
180
+ // Clean up old directory structure
181
+ await fs.rm(path.join(testJavaDir, 'org'), { recursive: true, force: true });
182
+ }
183
+ catch {
184
+ // Directory might not exist or already moved
185
+ }
105
186
  renameSpinner.succeed('Project name configured');
106
187
  // Download CFR (optional)
107
- if (!options.skipCfr) {
188
+ if (options.withCfr) {
108
189
  const cfrSpinner = startSpinner('Downloading CFR decompiler...');
109
190
  const cfrPath = path.join(serverDir, 'cfr.jar');
110
191
  try {
@@ -114,7 +195,6 @@ export function initCommand() {
114
195
  const srcRefDir = path.join(pluginsDir, 'src-ref');
115
196
  await fs.mkdir(srcRefDir, { recursive: true });
116
197
  info('⏱️ Generating reference sources (this may take several minutes)...');
117
- info('💡 Tip: Use --skip-cfr to skip this step in future runs\n');
118
198
  try {
119
199
  const startTime = Date.now();
120
200
  // Create a spinner with live updates
@@ -148,8 +228,22 @@ export function initCommand() {
148
228
  cfrSpinner.warn('CFR download failed (non-critical, you can download manually)');
149
229
  }
150
230
  }
151
- else {
152
- info('Skipping CFR decompiler download');
231
+ // Restore saved CFR sources if they exist
232
+ if (savedCfrPath) {
233
+ const restoreSpinner = startSpinner('Restoring reference sources...');
234
+ const srcRefDir = path.join(pluginsDir, 'src-ref');
235
+ try {
236
+ await fs.rename(savedCfrPath, srcRefDir);
237
+ restoreSpinner.succeed('Reference sources restored');
238
+ }
239
+ catch (err) {
240
+ restoreSpinner.fail('Failed to restore reference sources');
241
+ // Clean up temp directory
242
+ try {
243
+ await fs.rm(savedCfrPath, { recursive: true, force: true });
244
+ }
245
+ catch { }
246
+ }
153
247
  }
154
248
  // Initialize git (optional)
155
249
  if (!options.skipGit) {
@@ -157,18 +251,18 @@ export function initCommand() {
157
251
  try {
158
252
  await execa('git', ['init'], { cwd: pluginSourceDir });
159
253
  // Create .gitignore
160
- const gitignore = `# Build outputs
161
- build/
162
- .gradle/
163
-
164
- # IDE
165
- .idea/
166
- *.iml
167
- .vscode/
168
-
169
- # OS
170
- .DS_Store
171
- Thumbs.db
254
+ const gitignore = `# Build outputs
255
+ build/
256
+ .gradle/
257
+
258
+ # IDE
259
+ .idea/
260
+ *.iml
261
+ .vscode/
262
+
263
+ # OS
264
+ .DS_Store
265
+ Thumbs.db
172
266
  `;
173
267
  await fs.writeFile(path.join(pluginSourceDir, '.gitignore'), gitignore);
174
268
  gitSpinner.succeed('Git repository initialized');
@@ -182,23 +276,27 @@ Thumbs.db
182
276
  }
183
277
  // Success!
184
278
  success('\n✨ Project created successfully!');
185
- console.log(`
186
- 📁 Project structure:
187
- ${projectName}/
188
- ├── Assets.zip
189
- ├── mods/ # Compiled plugins go here
190
- └── Server/
191
- ├── HytaleServer.jar
192
- └── Plugins/
193
- └── ${projectName}/ # Your plugin source code
194
-
195
- 🚀 Next steps:
196
- cd ${projectName}/Server/Plugins/${projectName}
197
- hyt build # Build your plugin
198
- hyt dev # Start development mode
199
-
200
- 📖 Plugin source is in: Server/Plugins/${projectName}/app/src/
279
+ console.log(`
280
+ 📁 Project structure:
281
+ ${projectName}/
282
+ ├── Assets.zip
283
+ ├── mods/ # Compiled plugins go here
284
+ └── Server/
285
+ ├── HytaleServer.jar
286
+ └── Plugins/
287
+ └── ${projectName}/ # Your plugin source code
288
+
289
+ 🚀 Next steps:
290
+ cd ${projectName}/Server/Plugins/${projectName}
291
+ hyt build # Build your plugin
292
+ hyt dev # Start development mode
293
+
294
+ 📖 Plugin source is in: Server/Plugins/${projectName}/app/src/
295
+
296
+ 💡 Generate decompiled reference sources to explore the Hytale API
297
+ hyt generate-references # Takes ~10 minutes
201
298
  `);
299
+ process.exit(0);
202
300
  }
203
301
  catch (err) {
204
302
  if (err instanceof ConfigError || err instanceof HytaleError) {
@@ -268,4 +366,17 @@ function toPascalCase(str) {
268
366
  .map(word => word.charAt(0).toUpperCase() + word.slice(1).toLowerCase())
269
367
  .join('');
270
368
  }
369
+ async function askYesNo(question) {
370
+ const rl = readline.createInterface({
371
+ input: process.stdin,
372
+ output: process.stdout,
373
+ });
374
+ return new Promise((resolve) => {
375
+ rl.question(`${question} (y/N): `, (answer) => {
376
+ rl.close();
377
+ const normalized = answer.trim().toLowerCase();
378
+ resolve(normalized === 'y' || normalized === 'yes');
379
+ });
380
+ });
381
+ }
271
382
  //# sourceMappingURL=init.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,MAAM,aAAa,CAAC;AAC7B,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,KAAK,EAAE,MAAM,OAAO,CAAC;AAC9B,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAChD,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAC/E,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AAC1E,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAE9D,MAAM,gBAAgB,GAAG,OAAO,CAAC;AAEjC,MAAM,UAAU,WAAW;IACzB,OAAO,IAAI,OAAO,CAAC,MAAM,CAAC;SACvB,WAAW,CAAC,oCAAoC,CAAC;SACjD,QAAQ,CAAC,gBAAgB,EAAE,8BAA8B,CAAC;SAC1D,MAAM,CAAC,YAAY,EAAE,8BAA8B,CAAC;SACpD,MAAM,CAAC,YAAY,EAAE,yBAAyB,CAAC;SAC/C,MAAM,CAAC,KAAK,EAAE,WAAmB,EAAE,OAAO,EAAE,EAAE;QAC7C,IAAI,CAAC;YACH,OAAO,CAAC,GAAG,CAAC,4CAA4C,WAAW,IAAI,CAAC,CAAC;YAEzE,4BAA4B;YAC5B,MAAM,MAAM,GAAG,MAAM,UAAU,EAAE,CAAC;YAClC,IAAI,CAAC,MAAM,EAAE,CAAC;gBACZ,MAAM,IAAI,WAAW,CACnB,sDAAsD,CACvD,CAAC;YACJ,CAAC;YAED,eAAe;YACf,MAAM,YAAY,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;YACnC,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,WAAW,CAAC,CAAC;YACxD,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;YAClD,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;YACnD,MAAM,eAAe,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC;YAC3D,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;YAE9C,oCAAoC;YACpC,IAAI,CAAC;gBACH,MAAM,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;gBAC5B,MAAM,IAAI,WAAW,CAAC,cAAc,WAAW,mBAAmB,CAAC,CAAC;YACtE,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,IAAK,GAA6B,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;oBACrD,MAAM,GAAG,CAAC;gBACZ,CAAC;YACH,CAAC;YAED,6BAA6B;YAC7B,MAAM,gBAAgB,GAAG,YAAY,CAAC,iCAAiC,CAAC,CAAC;YACzE,MAAM,EAAE,CAAC,KAAK,CAAC,UAAU,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YAChD,MAAM,EAAE,CAAC,KAAK,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YAC/C,MAAM,EAAE,CAAC,KAAK,CAAC,UAAU,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YAChD,MAAM,EAAE,CAAC,KAAK,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YAC7C,gBAAgB,CAAC,OAAO,CAAC,6BAA6B,CAAC,CAAC;YAExD,6CAA6C;YAC7C,MAAM,WAAW,GAAG,YAAY,CAAC,kDAAkD,CAAC,CAAC;YACrF,MAAM,gBAAgB,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,iBAAiB,EAAE,QAAQ,CAAC,CAAC;YACvE,MAAM,gBAAgB,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,iBAAiB,EAAE,YAAY,CAAC,CAAC;YAE3E,IAAI,CAAC;gBACH,qBAAqB;gBACrB,MAAM,aAAa,CAAC,gBAAgB,EAAE,SAAS,CAAC,CAAC;gBACjD,kBAAkB;gBAClB,MAAM,EAAE,CAAC,QAAQ,CAAC,gBAAgB,EAAE,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,YAAY,CAAC,CAAC,CAAC;gBACzE,WAAW,CAAC,OAAO,CAAC,qBAAqB,CAAC,CAAC;YAC7C,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,WAAW,CAAC,IAAI,CAAC,6BAA6B,CAAC,CAAC;gBAChD,MAAM,IAAI,WAAW,CACnB,wDAAwD;oBACxD,cAAc,MAAM,CAAC,iBAAiB,mCAAmC,CAC1E,CAAC;YACJ,CAAC;YAED,oBAAoB;YACpB,MAAM,eAAe,GAAG,YAAY,CAAC,gCAAgC,CAAC,CAAC;YACvE,MAAM,eAAe,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,cAAc,CAAC,CAAC;YAC9D,IAAI,CAAC;gBACH,MAAM,YAAY,CAAC,cAAc,EAAE,EAAE,eAAe,CAAC,CAAC;gBACtD,eAAe,CAAC,OAAO,CAAC,qBAAqB,CAAC,CAAC;YACjD,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,eAAe,CAAC,IAAI,CAAC,6BAA6B,CAAC,CAAC;gBACpD,MAAM,IAAI,WAAW,CACnB,qEAAqE,CACtE,CAAC;YACJ,CAAC;YAED,mBAAmB;YACnB,MAAM,cAAc,GAAG,YAAY,CAAC,wBAAwB,CAAC,CAAC;YAC9D,IAAI,CAAC;gBACH,MAAM,UAAU,CAAC,eAAe,EAAE,UAAU,CAAC,CAAC;gBAC9C,0CAA0C;gBAC1C,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,eAAe,gBAAgB,EAAE,CAAC,CAAC;gBAC9E,MAAM,EAAE,CAAC,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,CAAC;gBAC/C,eAAe;gBACf,MAAM,EAAE,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC;gBACjC,cAAc,CAAC,OAAO,CAAC,oBAAoB,CAAC,CAAC;YAC/C,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,cAAc,CAAC,IAAI,CAAC,4BAA4B,CAAC,CAAC;gBAClD,MAAM,GAAG,CAAC;YACZ,CAAC;YAED,wCAAwC;YACxC,MAAM,aAAa,GAAG,YAAY,CAAC,6BAA6B,CAAC,CAAC;YAClE,MAAM,cAAc,CAAC,eAAe,EAAE,eAAe,EAAE,YAAY,CAAC,WAAW,CAAC,CAAC,CAAC;YAClF,MAAM,cAAc,CAAC,eAAe,EAAE,aAAa,EAAE,WAAW,CAAC,CAAC;YAClE,MAAM,cAAc,CAAC,eAAe,EAAE,aAAa,EAAE,OAAO,WAAW,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;YAEzF,wDAAwD;YACxD,MAAM,UAAU,GAAG,YAAY,CAAC,WAAW,CAAC,CAAC;YAC7C,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE,oBAAoB,CAAC,CAAC;YACrH,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE,GAAG,UAAU,OAAO,CAAC,CAAC;YAErH,IAAI,CAAC;gBACH,MAAM,EAAE,CAAC,MAAM,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;YAC5C,CAAC;YAAC,MAAM,CAAC;gBACP,yDAAyD;YAC3D,CAAC;YAED,aAAa,CAAC,OAAO,CAAC,yBAAyB,CAAC,CAAC;YAEjD,0BAA0B;YAC1B,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;gBACrB,MAAM,UAAU,GAAG,YAAY,CAAC,+BAA+B,CAAC,CAAC;gBACjE,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;gBAChD,IAAI,CAAC;oBACH,MAAM,YAAY,CAAC,SAAS,EAAE,EAAE,OAAO,CAAC,CAAC;oBACzC,UAAU,CAAC,OAAO,CAAC,2BAA2B,CAAC,CAAC;oBAEhD,6CAA6C;oBAC7C,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC;oBACnD,MAAM,EAAE,CAAC,KAAK,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;oBAE/C,IAAI,CAAC,qEAAqE,CAAC,CAAC;oBAC5E,IAAI,CAAC,2DAA2D,CAAC,CAAC;oBAElE,IAAI,CAAC;wBACH,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;wBAE7B,qCAAqC;wBACrC,MAAM,UAAU,GAAG,YAAY,CAAC,iCAAiC,CAAC,CAAC;wBAEnE,mCAAmC;wBACnC,MAAM,aAAa,GAAG,WAAW,CAAC,GAAG,EAAE;4BACrC,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC,GAAG,IAAI,CAAC,CAAC;4BAC5D,UAAU,CAAC,IAAI,GAAG,oCAAoC,OAAO,YAAY,CAAC;wBAC5E,CAAC,EAAE,IAAI,CAAC,CAAC;wBAET,IAAI,CAAC;4BACH,MAAM,KAAK,CAAC,MAAM,CAAC,QAAQ,EAAE;gCAC3B,MAAM,EAAE,OAAO;gCACf,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,kBAAkB,CAAC;gCACxC,aAAa,EAAE,SAAS;6BACzB,EAAE;gCACD,GAAG,EAAE,SAAS;gCACd,KAAK,EAAE,MAAM;6BACd,CAAC,CAAC;wBACL,CAAC;gCAAS,CAAC;4BACT,aAAa,CAAC,aAAa,CAAC,CAAC;wBAC/B,CAAC;wBAED,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC,GAAG,IAAI,CAAC,CAAC;wBAC5D,UAAU,CAAC,OAAO,CAAC,kCAAkC,OAAO,GAAG,CAAC,CAAC;oBACnE,CAAC;oBAAC,MAAM,CAAC;wBACP,IAAI,CAAC,mDAAmD,CAAC,CAAC;oBAC5D,CAAC;gBACH,CAAC;gBAAC,MAAM,CAAC;oBACP,UAAU,CAAC,IAAI,CAAC,+DAA+D,CAAC,CAAC;gBACnF,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,IAAI,CAAC,kCAAkC,CAAC,CAAC;YAC3C,CAAC;YAED,4BAA4B;YAC5B,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;gBACrB,MAAM,UAAU,GAAG,YAAY,CAAC,gCAAgC,CAAC,CAAC;gBAClE,IAAI,CAAC;oBACH,MAAM,KAAK,CAAC,KAAK,EAAE,CAAC,MAAM,CAAC,EAAE,EAAE,GAAG,EAAE,eAAe,EAAE,CAAC,CAAC;oBAEvD,oBAAoB;oBACpB,MAAM,SAAS,GAAG;;;;;;;;;;;;CAY7B,CAAC;oBACU,MAAM,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,YAAY,CAAC,EAAE,SAAS,CAAC,CAAC;oBACxE,UAAU,CAAC,OAAO,CAAC,4BAA4B,CAAC,CAAC;gBACnD,CAAC;gBAAC,MAAM,CAAC;oBACP,UAAU,CAAC,IAAI,CAAC,sDAAsD,CAAC,CAAC;gBAC1E,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,IAAI,CAAC,6BAA6B,CAAC,CAAC;YACtC,CAAC;YAED,WAAW;YACX,OAAO,CAAC,mCAAmC,CAAC,CAAC;YAC7C,OAAO,CAAC,GAAG,CAAC;;KAEf,WAAW;;;;;;iBAMC,WAAW;;;QAGpB,WAAW,mBAAmB,WAAW;;;;yCAIR,WAAW;CACnD,CAAC,CAAC;QAEG,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,IAAI,GAAG,YAAY,WAAW,IAAI,GAAG,YAAY,WAAW,EAAE,CAAC;gBAC7D,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;YACrB,CAAC;iBAAM,CAAC;gBACN,KAAK,CAAC,gBAAiB,GAAa,CAAC,OAAO,EAAE,CAAC,CAAC;YAClD,CAAC;YACD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;IACH,CAAC,CAAC,CAAC;AACP,CAAC;AAED,KAAK,UAAU,aAAa,CAAC,GAAW,EAAE,IAAY;IACpD,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;IAE/D,MAAM,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAE1C,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;QAC5B,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;QAC3C,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;QAE7C,IAAI,KAAK,CAAC,WAAW,EAAE,EAAE,CAAC;YACxB,MAAM,aAAa,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;QACzC,CAAC;aAAM,CAAC;YACN,MAAM,EAAE,CAAC,QAAQ,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;QACvC,CAAC;IACH,CAAC;AACH,CAAC;AAED,KAAK,UAAU,UAAU,CAAC,OAAe,EAAE,OAAe;IACxD,IAAI,OAAO,CAAC,QAAQ,KAAK,OAAO,EAAE,CAAC;QACjC,MAAM,KAAK,CAAC,YAAY,EAAE;YACxB,UAAU;YACV,yBAAyB,OAAO,uBAAuB,OAAO,UAAU;SACzE,CAAC,CAAC;IACL,CAAC;SAAM,CAAC;QACN,MAAM,KAAK,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC;IACvD,CAAC;AACH,CAAC;AAED,KAAK,UAAU,cAAc,CAAC,GAAW,EAAE,MAAc,EAAE,OAAe;IACxE,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;IAE/D,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;QAC5B,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;QAE7C,IAAI,KAAK,CAAC,WAAW,EAAE,EAAE,CAAC;YACxB,MAAM,cAAc,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;QACnD,CAAC;aAAM,IAAI,KAAK,CAAC,MAAM,EAAE,EAAE,CAAC;YAC1B,0BAA0B;YAC1B,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,CAAC;YACnD,MAAM,cAAc,GAAG,CAAC,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;YAE1G,IAAI,cAAc,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,KAAK,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;gBAC7D,IAAI,CAAC;oBACH,IAAI,OAAO,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;oBACpD,IAAI,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;wBAC7B,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,IAAI,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,OAAO,CAAC,CAAC;wBAC5D,MAAM,EAAE,CAAC,SAAS,CAAC,SAAS,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;oBAClD,CAAC;gBACH,CAAC;gBAAC,MAAM,CAAC;oBACP,2CAA2C;gBAC7C,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;AACH,CAAC;AAED,SAAS,YAAY,CAAC,GAAW;IAC/B,OAAO,GAAG;SACP,KAAK,CAAC,SAAS,CAAC;SAChB,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;SACvE,IAAI,CAAC,EAAE,CAAC,CAAC;AACd,CAAC"}
1
+ {"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import { Command } from 'commander';
2
+ export declare function referencesCommand(): Command;
3
+ //# sourceMappingURL=references.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"references.d.ts","sourceRoot":"","sources":["../../src/commands/references.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AASpC,wBAAgB,iBAAiB,IAAI,OAAO,CAiI3C"}
@@ -0,0 +1,130 @@
1
+ import { Command } from 'commander';
2
+ import fs from 'fs/promises';
3
+ import path from 'path';
4
+ import { execa } from 'execa';
5
+ import { loadConfig } from '../utils/config.js';
6
+ import { downloadFile, getCfrUrl } from '../utils/download.js';
7
+ import { startSpinner, success, error, info } from '../utils/ui.js';
8
+ import { ConfigError, HytaleError } from '../utils/errors.js';
9
+ export function referencesCommand() {
10
+ return new Command('generate-references')
11
+ .description('Generate decompiled reference sources from Hytale server JAR (takes ~10 minutes)')
12
+ .action(async () => {
13
+ try {
14
+ console.log('\n📚 Generating reference sources...\n');
15
+ // Verify setup has been run
16
+ const config = await loadConfig();
17
+ if (!config) {
18
+ throw new ConfigError('HYT is not configured. Please run "hyt setup" first.');
19
+ }
20
+ // Find project structure
21
+ const cwd = process.cwd();
22
+ // Try to locate Server directory
23
+ let serverDir;
24
+ let pluginsDir;
25
+ // Check if we're in plugin directory
26
+ if (await directoryExists(path.join(cwd, 'app'))) {
27
+ // We're in Server/Plugins/plugin-name/
28
+ serverDir = path.resolve(cwd, '..', '..');
29
+ pluginsDir = path.resolve(cwd, '..');
30
+ }
31
+ // Check if we're in Plugins directory
32
+ else if (await directoryExists(path.join(cwd, '..', 'Server'))) {
33
+ serverDir = path.join(cwd, '..', 'Server');
34
+ pluginsDir = path.join(serverDir, 'Plugins');
35
+ }
36
+ // Check if we're in project root
37
+ else if (await directoryExists(path.join(cwd, 'Server'))) {
38
+ serverDir = path.join(cwd, 'Server');
39
+ pluginsDir = path.join(serverDir, 'Plugins');
40
+ }
41
+ else {
42
+ throw new HytaleError('Could not find Hytale server directory.\n' +
43
+ 'Run this command from your project root, Plugins directory, or plugin directory.');
44
+ }
45
+ // Verify HytaleServer.jar exists
46
+ const serverJarPath = path.join(serverDir, 'HytaleServer.jar');
47
+ try {
48
+ await fs.access(serverJarPath);
49
+ }
50
+ catch {
51
+ throw new HytaleError(`HytaleServer.jar not found at: ${serverJarPath}\n` +
52
+ 'Make sure you ran "hyt init" to set up the project.');
53
+ }
54
+ // Download CFR if not present
55
+ const cfrPath = path.join(serverDir, 'cfr.jar');
56
+ try {
57
+ await fs.access(cfrPath);
58
+ info('Using existing CFR decompiler');
59
+ }
60
+ catch {
61
+ const cfrSpinner = startSpinner('Downloading CFR decompiler...');
62
+ try {
63
+ await downloadFile(getCfrUrl(), cfrPath);
64
+ cfrSpinner.succeed('CFR decompiler downloaded');
65
+ }
66
+ catch (err) {
67
+ cfrSpinner.fail('Failed to download CFR');
68
+ throw new HytaleError(`Could not download CFR: ${err.message}`);
69
+ }
70
+ }
71
+ // Generate reference sources
72
+ const srcRefDir = path.join(pluginsDir, 'src-ref');
73
+ await fs.mkdir(srcRefDir, { recursive: true });
74
+ info('⏱️ This will take several minutes (typically 5-10 minutes)');
75
+ info('💡 You can continue working in another terminal while this runs\n');
76
+ const startTime = Date.now();
77
+ const refSpinner = startSpinner('Generating reference sources...');
78
+ // Update spinner text every second
79
+ const timerInterval = setInterval(() => {
80
+ const elapsed = Math.round((Date.now() - startTime) / 1000);
81
+ const minutes = Math.floor(elapsed / 60);
82
+ const seconds = elapsed % 60;
83
+ const timeStr = minutes > 0 ? `${minutes}m ${seconds}s` : `${seconds}s`;
84
+ refSpinner.text = `Generating reference sources... (${timeStr} elapsed)`;
85
+ }, 1000);
86
+ try {
87
+ await execa(config.javaPath, [
88
+ '-jar', cfrPath,
89
+ serverJarPath,
90
+ '--outputdir', srcRefDir
91
+ ], {
92
+ cwd: serverDir,
93
+ stdio: 'pipe',
94
+ });
95
+ clearInterval(timerInterval);
96
+ const elapsed = Math.round((Date.now() - startTime) / 1000);
97
+ const minutes = Math.floor(elapsed / 60);
98
+ const seconds = elapsed % 60;
99
+ const timeStr = minutes > 0 ? `${minutes}m ${seconds}s` : `${seconds}s`;
100
+ refSpinner.succeed(`Reference sources generated in ${timeStr}`);
101
+ success(`\n✨ Reference sources available at: ${srcRefDir}`);
102
+ console.log('\nYou can now explore the decompiled Hytale API to understand how to use it.\n');
103
+ }
104
+ catch (err) {
105
+ clearInterval(timerInterval);
106
+ refSpinner.fail('Failed to generate reference sources');
107
+ throw new HytaleError(`CFR decompilation failed: ${err.message}`);
108
+ }
109
+ }
110
+ catch (err) {
111
+ if (err instanceof ConfigError || err instanceof HytaleError) {
112
+ error(err.message);
113
+ }
114
+ else {
115
+ error(`Reference generation failed: ${err.message}`);
116
+ }
117
+ process.exit(1);
118
+ }
119
+ });
120
+ }
121
+ async function directoryExists(dirPath) {
122
+ try {
123
+ const stats = await fs.stat(dirPath);
124
+ return stats.isDirectory();
125
+ }
126
+ catch {
127
+ return false;
128
+ }
129
+ }
130
+ //# sourceMappingURL=references.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"references.js","sourceRoot":"","sources":["../../src/commands/references.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -5,6 +5,7 @@ import { setupCommand } from './commands/setup.js';
5
5
  import { initCommand } from './commands/init.js';
6
6
  import { buildCommand } from './commands/build.js';
7
7
  import { devCommand } from './commands/dev.js';
8
+ import { referencesCommand } from './commands/references.js';
8
9
  const require = createRequire(import.meta.url);
9
10
  const { version } = require('../package.json');
10
11
  const program = new Command();
@@ -16,5 +17,6 @@ program.addCommand(setupCommand());
16
17
  program.addCommand(initCommand());
17
18
  program.addCommand(buildCommand());
18
19
  program.addCommand(devCommand());
20
+ program.addCommand(referencesCommand());
19
21
  program.parse(process.argv);
20
22
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAC;AACvC,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAE/C,MAAM,OAAO,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAC/C,MAAM,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAC;AAE/C,MAAM,OAAO,GAAG,IAAI,OAAO,EAAE,CAAC;AAE9B,OAAO;KACJ,IAAI,CAAC,KAAK,CAAC;KACX,WAAW,CAAC,mDAAmD,CAAC;KAChE,OAAO,CAAC,OAAO,CAAC,CAAC;AAEpB,OAAO,CAAC,UAAU,CAAC,YAAY,EAAE,CAAC,CAAC;AACnC,OAAO,CAAC,UAAU,CAAC,WAAW,EAAE,CAAC,CAAC;AAClC,OAAO,CAAC,UAAU,CAAC,YAAY,EAAE,CAAC,CAAC;AACnC,OAAO,CAAC,UAAU,CAAC,UAAU,EAAE,CAAC,CAAC;AAEjC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAC;AACvC,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC/C,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAE7D,MAAM,OAAO,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAC/C,MAAM,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAC;AAE/C,MAAM,OAAO,GAAG,IAAI,OAAO,EAAE,CAAC;AAE9B,OAAO;KACJ,IAAI,CAAC,KAAK,CAAC;KACX,WAAW,CAAC,mDAAmD,CAAC;KAChE,OAAO,CAAC,OAAO,CAAC,CAAC;AAEpB,OAAO,CAAC,UAAU,CAAC,YAAY,EAAE,CAAC,CAAC;AACnC,OAAO,CAAC,UAAU,CAAC,WAAW,EAAE,CAAC,CAAC;AAClC,OAAO,CAAC,UAAU,CAAC,YAAY,EAAE,CAAC,CAAC;AACnC,OAAO,CAAC,UAAU,CAAC,UAAU,EAAE,CAAC,CAAC;AACjC,OAAO,CAAC,UAAU,CAAC,iBAAiB,EAAE,CAAC,CAAC;AAExC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"download.d.ts","sourceRoot":"","sources":["../../src/utils/download.ts"],"names":[],"mappings":"AAUA,gEAAgE;AAChE,wBAAsB,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,YAAY,SAAK,GAAG,OAAO,CAAC,IAAI,CAAC,CA6ElG;AAED,2CAA2C;AAC3C,wBAAsB,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAEtE;AAED,8BAA8B;AAC9B,wBAAsB,WAAW,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAEjE;AAED,wBAAgB,cAAc,IAAI,MAAM,CAEvC;AAED,wBAAgB,SAAS,IAAI,MAAM,CAElC"}
1
+ {"version":3,"file":"download.d.ts","sourceRoot":"","sources":["../../src/utils/download.ts"],"names":[],"mappings":"AAUA,gEAAgE;AAChE,wBAAsB,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,YAAY,SAAK,GAAG,OAAO,CAAC,IAAI,CAAC,CAiFlG;AAED,2CAA2C;AAC3C,wBAAsB,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAEtE;AAED,8BAA8B;AAC9B,wBAAsB,WAAW,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAEjE;AAED,wBAAgB,cAAc,IAAI,MAAM,CAEvC;AAED,wBAAgB,SAAS,IAAI,MAAM,CAElC"}
@@ -32,13 +32,14 @@ export async function downloadFile(url, destPath, maxRedirects = 10) {
32
32
  return;
33
33
  }
34
34
  const contentLength = parseInt(response.headers['content-length'] || '0', 10);
35
- // Create progress bar
35
+ // Create progress bar - output to stderr to avoid conflicts with spinners
36
36
  const progressBar = new cliProgress.SingleBar({
37
37
  format: '{filename} |{bar}| {percentage}% || {value}/{total} bytes || ETA: {eta}s',
38
38
  barCompleteChar: '\u2588',
39
39
  barIncompleteChar: '\u2591',
40
40
  hideCursor: true,
41
41
  etaBuffer: 10,
42
+ stream: process.stderr,
42
43
  });
43
44
  if (contentLength > 0) {
44
45
  progressBar.start(contentLength, 0, {
@@ -57,6 +58,8 @@ export async function downloadFile(url, destPath, maxRedirects = 10) {
57
58
  fileStream.on('finish', () => {
58
59
  if (contentLength > 0) {
59
60
  progressBar.stop();
61
+ // Clear the line to prevent overlap with next output
62
+ process.stderr.write('\n');
60
63
  }
61
64
  fileStream.close();
62
65
  resolve();
@@ -64,6 +67,7 @@ export async function downloadFile(url, destPath, maxRedirects = 10) {
64
67
  fileStream.on('error', (err) => {
65
68
  if (contentLength > 0) {
66
69
  progressBar.stop();
70
+ process.stderr.write('\n');
67
71
  }
68
72
  fs.unlink(destPath).catch(() => { }); // Clean up partial file
69
73
  reject(err);
@@ -1 +1 @@
1
- {"version":3,"file":"download.js","sourceRoot":"","sources":["../../src/utils/download.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"download.js","sourceRoot":"","sources":["../../src/utils/download.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  /** Run Gradle build in the specified project directory */
2
- export declare function runGradleBuild(projectDir: string): Promise<void>;
2
+ export declare function runGradleBuild(projectDir: string, forceRebuild?: boolean): Promise<void>;
3
3
  /** Run any Gradle task in the specified project directory */
4
4
  export declare function runGradleTask(projectDir: string, task: string): Promise<void>;
5
5
  /** Check if Gradle wrapper exists in directory */
@@ -1 +1 @@
1
- {"version":3,"file":"gradle.d.ts","sourceRoot":"","sources":["../../src/utils/gradle.ts"],"names":[],"mappings":"AAIA,0DAA0D;AAC1D,wBAAsB,cAAc,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAgBtE;AAED,6DAA6D;AAC7D,wBAAsB,aAAa,CAAC,UAAU,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAgBnF;AAED,kDAAkD;AAClD,wBAAsB,gBAAgB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAY3E"}
1
+ {"version":3,"file":"gradle.d.ts","sourceRoot":"","sources":["../../src/utils/gradle.ts"],"names":[],"mappings":"AAIA,0DAA0D;AAC1D,wBAAsB,cAAc,CAAC,UAAU,EAAE,MAAM,EAAE,YAAY,GAAE,OAAe,GAAG,OAAO,CAAC,IAAI,CAAC,CAiBrG;AAED,6DAA6D;AAC7D,wBAAsB,aAAa,CAAC,UAAU,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAgBnF;AAED,kDAAkD;AAClD,wBAAsB,gBAAgB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAY3E"}
@@ -2,12 +2,13 @@ import { execa } from 'execa';
2
2
  import path from 'path';
3
3
  import { GradleError } from './errors.js';
4
4
  /** Run Gradle build in the specified project directory */
5
- export async function runGradleBuild(projectDir) {
5
+ export async function runGradleBuild(projectDir, forceRebuild = false) {
6
6
  const isWindows = process.platform === 'win32';
7
7
  const gradleWrapper = isWindows ? 'gradlew.bat' : './gradlew';
8
8
  const gradlePath = path.join(projectDir, gradleWrapper);
9
9
  try {
10
- await execa(gradlePath, ['build'], {
10
+ const args = forceRebuild ? ['clean', 'build', '--rerun-tasks'] : ['build'];
11
+ await execa(gradlePath, args, {
11
12
  cwd: projectDir,
12
13
  stdio: 'inherit', // Stream output directly to terminal
13
14
  });
@@ -1 +1 @@
1
- {"version":3,"file":"gradle.js","sourceRoot":"","sources":["../../src/utils/gradle.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAc,MAAM,OAAO,CAAC;AAC1C,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAE1C,0DAA0D;AAC1D,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,UAAkB;IACrD,MAAM,SAAS,GAAG,OAAO,CAAC,QAAQ,KAAK,OAAO,CAAC;IAC/C,MAAM,aAAa,GAAG,SAAS,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,WAAW,CAAC;IAC9D,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,aAAa,CAAC,CAAC;IAExD,IAAI,CAAC;QACH,MAAM,KAAK,CAAC,UAAU,EAAE,CAAC,OAAO,CAAC,EAAE;YACjC,GAAG,EAAE,UAAU;YACf,KAAK,EAAE,SAAS,EAAE,qCAAqC;SACxD,CAAC,CAAC;IACL,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,QAAQ,GAAG,KAAmB,CAAC;QACrC,MAAM,IAAI,WAAW,CACnB,sCAAsC,QAAQ,CAAC,QAAQ,IAAI,SAAS,uCAAuC,CAC5G,CAAC;IACJ,CAAC;AACH,CAAC;AAED,6DAA6D;AAC7D,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,UAAkB,EAAE,IAAY;IAClE,MAAM,SAAS,GAAG,OAAO,CAAC,QAAQ,KAAK,OAAO,CAAC;IAC/C,MAAM,aAAa,GAAG,SAAS,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,WAAW,CAAC;IAC9D,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,aAAa,CAAC,CAAC;IAExD,IAAI,CAAC;QACH,MAAM,KAAK,CAAC,UAAU,EAAE,CAAC,IAAI,CAAC,EAAE;YAC9B,GAAG,EAAE,UAAU;YACf,KAAK,EAAE,SAAS;SACjB,CAAC,CAAC;IACL,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,QAAQ,GAAG,KAAmB,CAAC;QACrC,MAAM,IAAI,WAAW,CACnB,gBAAgB,IAAI,2BAA2B,QAAQ,CAAC,QAAQ,IAAI,SAAS,GAAG,CACjF,CAAC;IACJ,CAAC;AACH,CAAC;AAED,kDAAkD;AAClD,MAAM,CAAC,KAAK,UAAU,gBAAgB,CAAC,UAAkB;IACvD,MAAM,SAAS,GAAG,OAAO,CAAC,QAAQ,KAAK,OAAO,CAAC;IAC/C,MAAM,aAAa,GAAG,SAAS,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,SAAS,CAAC;IAC5D,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,aAAa,CAAC,CAAC;IAExD,IAAI,CAAC;QACH,MAAM,EAAE,GAAG,MAAM,MAAM,CAAC,aAAa,CAAC,CAAC;QACvC,MAAM,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;QAC5B,OAAO,IAAI,CAAC;IACd,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"gradle.js","sourceRoot":"","sources":["../../src/utils/gradle.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAc,MAAM,OAAO,CAAC;AAC1C,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAE1C,0DAA0D;AAC1D,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,UAAkB,EAAE,eAAwB,KAAK;IACpF,MAAM,SAAS,GAAG,OAAO,CAAC,QAAQ,KAAK,OAAO,CAAC;IAC/C,MAAM,aAAa,GAAG,SAAS,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,WAAW,CAAC;IAC9D,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,aAAa,CAAC,CAAC;IAExD,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,OAAO,EAAE,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;QAC5E,MAAM,KAAK,CAAC,UAAU,EAAE,IAAI,EAAE;YAC5B,GAAG,EAAE,UAAU;YACf,KAAK,EAAE,SAAS,EAAE,qCAAqC;SACxD,CAAC,CAAC;IACL,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,QAAQ,GAAG,KAAmB,CAAC;QACrC,MAAM,IAAI,WAAW,CACnB,sCAAsC,QAAQ,CAAC,QAAQ,IAAI,SAAS,uCAAuC,CAC5G,CAAC;IACJ,CAAC;AACH,CAAC;AAED,6DAA6D;AAC7D,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,UAAkB,EAAE,IAAY;IAClE,MAAM,SAAS,GAAG,OAAO,CAAC,QAAQ,KAAK,OAAO,CAAC;IAC/C,MAAM,aAAa,GAAG,SAAS,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,WAAW,CAAC;IAC9D,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,aAAa,CAAC,CAAC;IAExD,IAAI,CAAC;QACH,MAAM,KAAK,CAAC,UAAU,EAAE,CAAC,IAAI,CAAC,EAAE;YAC9B,GAAG,EAAE,UAAU;YACf,KAAK,EAAE,SAAS;SACjB,CAAC,CAAC;IACL,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,QAAQ,GAAG,KAAmB,CAAC;QACrC,MAAM,IAAI,WAAW,CACnB,gBAAgB,IAAI,2BAA2B,QAAQ,CAAC,QAAQ,IAAI,SAAS,GAAG,CACjF,CAAC;IACJ,CAAC;AACH,CAAC;AAED,kDAAkD;AAClD,MAAM,CAAC,KAAK,UAAU,gBAAgB,CAAC,UAAkB;IACvD,MAAM,SAAS,GAAG,OAAO,CAAC,QAAQ,KAAK,OAAO,CAAC;IAC/C,MAAM,aAAa,GAAG,SAAS,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,SAAS,CAAC;IAC5D,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,aAAa,CAAC,CAAC;IAExD,IAAI,CAAC;QACH,MAAM,EAAE,GAAG,MAAM,MAAM,CAAC,aAAa,CAAC,CAAC;QACvC,MAAM,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;QAC5B,OAAO,IAAI,CAAC;IACd,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC"}