@jetstart/cli 1.1.4 → 1.4.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.
Files changed (68) hide show
  1. package/dist/cli.js +18 -1
  2. package/dist/cli.js.map +1 -1
  3. package/dist/commands/android-emulator.d.ts +8 -0
  4. package/dist/commands/android-emulator.d.ts.map +1 -0
  5. package/dist/commands/android-emulator.js +280 -0
  6. package/dist/commands/android-emulator.js.map +1 -0
  7. package/dist/commands/create.d.ts +1 -6
  8. package/dist/commands/create.d.ts.map +1 -1
  9. package/dist/commands/create.js +119 -0
  10. package/dist/commands/create.js.map +1 -1
  11. package/dist/commands/dev.d.ts +1 -7
  12. package/dist/commands/dev.d.ts.map +1 -1
  13. package/dist/commands/dev.js +69 -10
  14. package/dist/commands/dev.js.map +1 -1
  15. package/dist/commands/index.d.ts +2 -0
  16. package/dist/commands/index.d.ts.map +1 -1
  17. package/dist/commands/index.js +5 -1
  18. package/dist/commands/index.js.map +1 -1
  19. package/dist/commands/install-audit.d.ts +9 -0
  20. package/dist/commands/install-audit.d.ts.map +1 -0
  21. package/dist/commands/install-audit.js +185 -0
  22. package/dist/commands/install-audit.js.map +1 -0
  23. package/dist/types/index.d.ts +22 -0
  24. package/dist/types/index.d.ts.map +1 -1
  25. package/dist/types/index.js +8 -0
  26. package/dist/types/index.js.map +1 -1
  27. package/dist/utils/android-sdk.d.ts +81 -0
  28. package/dist/utils/android-sdk.d.ts.map +1 -0
  29. package/dist/utils/android-sdk.js +432 -0
  30. package/dist/utils/android-sdk.js.map +1 -0
  31. package/dist/utils/downloader.d.ts +35 -0
  32. package/dist/utils/downloader.d.ts.map +1 -0
  33. package/dist/utils/downloader.js +214 -0
  34. package/dist/utils/downloader.js.map +1 -0
  35. package/dist/utils/emulator-deployer.d.ts +29 -0
  36. package/dist/utils/emulator-deployer.d.ts.map +1 -0
  37. package/dist/utils/emulator-deployer.js +224 -0
  38. package/dist/utils/emulator-deployer.js.map +1 -0
  39. package/dist/utils/emulator.d.ts +101 -0
  40. package/dist/utils/emulator.d.ts.map +1 -0
  41. package/dist/utils/emulator.js +410 -0
  42. package/dist/utils/emulator.js.map +1 -0
  43. package/dist/utils/java.d.ts +25 -0
  44. package/dist/utils/java.d.ts.map +1 -0
  45. package/dist/utils/java.js +363 -0
  46. package/dist/utils/java.js.map +1 -0
  47. package/dist/utils/system-tools.d.ts +93 -0
  48. package/dist/utils/system-tools.d.ts.map +1 -0
  49. package/dist/utils/system-tools.js +599 -0
  50. package/dist/utils/system-tools.js.map +1 -0
  51. package/dist/utils/template.d.ts.map +1 -1
  52. package/dist/utils/template.js +777 -748
  53. package/dist/utils/template.js.map +1 -1
  54. package/package.json +7 -3
  55. package/src/cli.ts +20 -2
  56. package/src/commands/android-emulator.ts +304 -0
  57. package/src/commands/create.ts +128 -5
  58. package/src/commands/dev.ts +71 -18
  59. package/src/commands/index.ts +3 -1
  60. package/src/commands/install-audit.ts +227 -0
  61. package/src/types/index.ts +30 -0
  62. package/src/utils/android-sdk.ts +478 -0
  63. package/src/utils/downloader.ts +201 -0
  64. package/src/utils/emulator-deployer.ts +210 -0
  65. package/src/utils/emulator.ts +463 -0
  66. package/src/utils/java.ts +369 -0
  67. package/src/utils/system-tools.ts +648 -0
  68. package/src/utils/template.ts +875 -867
@@ -0,0 +1,599 @@
1
+ "use strict";
2
+ /**
3
+ * System tool detection utilities
4
+ */
5
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
6
+ if (k2 === undefined) k2 = k;
7
+ var desc = Object.getOwnPropertyDescriptor(m, k);
8
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
9
+ desc = { enumerable: true, get: function() { return m[k]; } };
10
+ }
11
+ Object.defineProperty(o, k2, desc);
12
+ }) : (function(o, m, k, k2) {
13
+ if (k2 === undefined) k2 = k;
14
+ o[k2] = m[k];
15
+ }));
16
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
17
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
18
+ }) : function(o, v) {
19
+ o["default"] = v;
20
+ });
21
+ var __importStar = (this && this.__importStar) || (function () {
22
+ var ownKeys = function(o) {
23
+ ownKeys = Object.getOwnPropertyNames || function (o) {
24
+ var ar = [];
25
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
26
+ return ar;
27
+ };
28
+ return ownKeys(o);
29
+ };
30
+ return function (mod) {
31
+ if (mod && mod.__esModule) return mod;
32
+ var result = {};
33
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
34
+ __setModuleDefault(result, mod);
35
+ return result;
36
+ };
37
+ })();
38
+ Object.defineProperty(exports, "__esModule", { value: true });
39
+ exports.VERSION_REQUIREMENTS = void 0;
40
+ exports.detectNode = detectNode;
41
+ exports.detectNpm = detectNpm;
42
+ exports.detectJava = detectJava;
43
+ exports.detectGradle = detectGradle;
44
+ exports.getDefaultSDKPath = getDefaultSDKPath;
45
+ exports.findAndroidSDK = findAndroidSDK;
46
+ exports.detectAndroidSDK = detectAndroidSDK;
47
+ exports.detectAndroidCmdlineTools = detectAndroidCmdlineTools;
48
+ exports.detectAndroidBuildTools = detectAndroidBuildTools;
49
+ exports.detectAndroidPlatformTools = detectAndroidPlatformTools;
50
+ exports.detectAndroidEmulator = detectAndroidEmulator;
51
+ exports.detectAndroidPlatform = detectAndroidPlatform;
52
+ exports.checkJavaHome = checkJavaHome;
53
+ exports.checkAndroidHome = checkAndroidHome;
54
+ const child_process_1 = require("child_process");
55
+ const util_1 = require("util");
56
+ const fs = __importStar(require("fs-extra"));
57
+ const path = __importStar(require("path"));
58
+ const os = __importStar(require("os"));
59
+ const shared_1 = require("@jetstart/shared");
60
+ const execAsync = (0, util_1.promisify)(child_process_1.exec);
61
+ const which = require('which');
62
+ /**
63
+ * Version requirements for different tools
64
+ */
65
+ exports.VERSION_REQUIREMENTS = {
66
+ node: { min: '18.0.0', recommended: '20.0.0' },
67
+ npm: { min: '9.0.0', recommended: '10.0.0' },
68
+ java: { min: '17.0.0', recommended: '17.0.0' },
69
+ gradle: { min: '8.0.0', recommended: '8.5.0' },
70
+ buildTools: { min: '33.0.0', recommended: '34.0.0' },
71
+ };
72
+ /**
73
+ * Check version compatibility status
74
+ */
75
+ function checkVersionCompatibility(tool, version) {
76
+ const req = exports.VERSION_REQUIREMENTS[tool];
77
+ if (!req)
78
+ return { status: 'ok' };
79
+ if ((0, shared_1.compareVersions)(version, req.min) < 0) {
80
+ return {
81
+ status: 'error',
82
+ message: `Version ${version} is below minimum ${req.min}`,
83
+ };
84
+ }
85
+ if ((0, shared_1.compareVersions)(version, req.recommended) < 0) {
86
+ return {
87
+ status: 'warning',
88
+ message: `Version ${version} is outdated (${req.recommended} recommended)`,
89
+ };
90
+ }
91
+ return { status: 'ok' };
92
+ }
93
+ /**
94
+ * Detect Node.js installation
95
+ */
96
+ async function detectNode() {
97
+ try {
98
+ const { stdout } = await execAsync('node --version');
99
+ const version = stdout.trim().replace('v', '');
100
+ const toolPath = await which('node').catch(() => undefined);
101
+ const compat = checkVersionCompatibility('node', version);
102
+ return {
103
+ name: 'Node.js',
104
+ installed: true,
105
+ version,
106
+ path: toolPath,
107
+ status: compat.status,
108
+ message: compat.message,
109
+ };
110
+ }
111
+ catch (error) {
112
+ return {
113
+ name: 'Node.js',
114
+ installed: false,
115
+ status: 'error',
116
+ message: 'Node.js not found. Install from https://nodejs.org',
117
+ };
118
+ }
119
+ }
120
+ /**
121
+ * Detect npm installation
122
+ */
123
+ async function detectNpm() {
124
+ try {
125
+ const { stdout } = await execAsync('npm --version');
126
+ const version = stdout.trim();
127
+ const toolPath = await which('npm').catch(() => undefined);
128
+ const compat = checkVersionCompatibility('npm', version);
129
+ return {
130
+ name: 'npm',
131
+ installed: true,
132
+ version,
133
+ path: toolPath,
134
+ status: compat.status,
135
+ message: compat.message,
136
+ };
137
+ }
138
+ catch (error) {
139
+ return {
140
+ name: 'npm',
141
+ installed: false,
142
+ status: 'error',
143
+ message: 'npm not found. Install from https://nodejs.org',
144
+ };
145
+ }
146
+ }
147
+ /**
148
+ * Parse Java version from command output
149
+ */
150
+ function parseJavaVersion(output) {
151
+ // Handles various formats:
152
+ // openjdk version "17.0.9" 2023-10-17
153
+ // java version "1.8.0_291"
154
+ // openjdk 11.0.12 2021-07-20
155
+ const match = output.match(/version\s+"?(\d+)\.(\d+)\.(\d+)/i) ||
156
+ output.match(/openjdk\s+(\d+)\.(\d+)\.(\d+)/i);
157
+ if (match) {
158
+ // Handle old Java versioning (1.8 = Java 8)
159
+ if (match[1] === '1') {
160
+ return match[2]; // Return 8 from 1.8
161
+ }
162
+ return `${match[1]}.${match[2]}.${match[3]}`;
163
+ }
164
+ return null;
165
+ }
166
+ /**
167
+ * Detect Java/JDK installation
168
+ */
169
+ async function detectJava() {
170
+ try {
171
+ const { stdout } = await execAsync('java -version 2>&1');
172
+ const version = parseJavaVersion(stdout);
173
+ if (!version) {
174
+ return {
175
+ name: 'Java/JDK',
176
+ installed: true,
177
+ status: 'warning',
178
+ message: 'Java found but version could not be determined',
179
+ };
180
+ }
181
+ const toolPath = process.env.JAVA_HOME || (await which('java').catch(() => undefined));
182
+ const compat = checkVersionCompatibility('java', version);
183
+ return {
184
+ name: 'Java/JDK',
185
+ installed: true,
186
+ version,
187
+ path: toolPath,
188
+ status: compat.status,
189
+ message: compat.message,
190
+ };
191
+ }
192
+ catch (error) {
193
+ return {
194
+ name: 'Java/JDK',
195
+ installed: false,
196
+ status: 'error',
197
+ message: 'Java not found. Install JDK 17+ from https://adoptium.net',
198
+ };
199
+ }
200
+ }
201
+ /**
202
+ * Detect Gradle installation
203
+ */
204
+ async function detectGradle() {
205
+ try {
206
+ const { stdout } = await execAsync('gradle --version');
207
+ const match = stdout.match(/Gradle\s+(\d+\.\d+(?:\.\d+)?)/);
208
+ const version = match ? match[1] : undefined;
209
+ if (!version) {
210
+ return {
211
+ name: 'Gradle',
212
+ installed: true,
213
+ status: 'warning',
214
+ message: 'Gradle found but version could not be determined',
215
+ };
216
+ }
217
+ const toolPath = await which('gradle').catch(() => undefined);
218
+ const compat = checkVersionCompatibility('gradle', version);
219
+ return {
220
+ name: 'Gradle',
221
+ installed: true,
222
+ version,
223
+ path: toolPath,
224
+ status: compat.status,
225
+ message: compat.message,
226
+ };
227
+ }
228
+ catch (error) {
229
+ return {
230
+ name: 'Gradle',
231
+ installed: false,
232
+ status: 'warning',
233
+ message: 'Gradle not found (Gradle wrapper will be used)',
234
+ };
235
+ }
236
+ }
237
+ /**
238
+ * Get default Android SDK path based on platform
239
+ */
240
+ function getDefaultSDKPath() {
241
+ const homeDir = os.homedir();
242
+ const platform = os.platform();
243
+ switch (platform) {
244
+ case 'win32':
245
+ return path.join(homeDir, 'AppData', 'Local', 'Android', 'Sdk');
246
+ case 'darwin':
247
+ return path.join(homeDir, 'Library', 'Android', 'sdk');
248
+ default: // Linux
249
+ return path.join(homeDir, 'Android', 'Sdk');
250
+ }
251
+ }
252
+ /**
253
+ * Find Android SDK location
254
+ */
255
+ async function findAndroidSDK() {
256
+ // Check environment variables first
257
+ const envPaths = [
258
+ process.env.ANDROID_HOME,
259
+ process.env.ANDROID_SDK_ROOT,
260
+ ].filter(Boolean);
261
+ for (const envPath of envPaths) {
262
+ if (envPath && await fs.pathExists(envPath)) {
263
+ return envPath;
264
+ }
265
+ }
266
+ // Check default path
267
+ const defaultPath = getDefaultSDKPath();
268
+ if (await fs.pathExists(defaultPath)) {
269
+ return defaultPath;
270
+ }
271
+ // Check alternative paths
272
+ const platform = os.platform();
273
+ const homeDir = os.homedir();
274
+ const altPaths = [];
275
+ if (platform === 'win32') {
276
+ altPaths.push('C:\\Android\\Sdk', 'C:\\Android', path.join(homeDir, 'AppData', 'Local', 'Android', 'Sdk'), 'C:\\Program Files (x86)\\Android\\android-sdk');
277
+ }
278
+ else if (platform === 'darwin') {
279
+ altPaths.push(path.join(homeDir, 'Library', 'Android', 'sdk'), '/opt/android-sdk');
280
+ }
281
+ else {
282
+ altPaths.push(path.join(homeDir, 'Android', 'Sdk'), '/opt/android-sdk');
283
+ }
284
+ for (const altPath of altPaths) {
285
+ if (await fs.pathExists(altPath)) {
286
+ return altPath;
287
+ }
288
+ }
289
+ return null;
290
+ }
291
+ /**
292
+ * Detect Android SDK installation
293
+ */
294
+ async function detectAndroidSDK() {
295
+ const sdkPath = await findAndroidSDK();
296
+ if (!sdkPath) {
297
+ return {
298
+ name: 'Android SDK',
299
+ installed: false,
300
+ status: 'error',
301
+ message: 'Android SDK not found. Run "jetstart create --full-install" to install',
302
+ };
303
+ }
304
+ // Verify it's a valid SDK
305
+ const platformsPath = path.join(sdkPath, 'platforms');
306
+ const buildToolsPath = path.join(sdkPath, 'build-tools');
307
+ const isValid = (await fs.pathExists(platformsPath)) || (await fs.pathExists(buildToolsPath));
308
+ if (!isValid) {
309
+ return {
310
+ name: 'Android SDK',
311
+ installed: true,
312
+ path: sdkPath,
313
+ status: 'warning',
314
+ message: 'SDK found but appears incomplete',
315
+ };
316
+ }
317
+ return {
318
+ name: 'Android SDK',
319
+ installed: true,
320
+ path: sdkPath,
321
+ status: 'ok',
322
+ };
323
+ }
324
+ /**
325
+ * Detect Android cmdline-tools
326
+ */
327
+ async function detectAndroidCmdlineTools() {
328
+ const sdkPath = await findAndroidSDK();
329
+ if (!sdkPath) {
330
+ return {
331
+ name: 'cmdline-tools',
332
+ installed: false,
333
+ status: 'error',
334
+ message: 'Android SDK not found',
335
+ };
336
+ }
337
+ const cmdlineToolsPath = path.join(sdkPath, 'cmdline-tools', 'latest');
338
+ const exists = await fs.pathExists(cmdlineToolsPath);
339
+ if (!exists) {
340
+ return {
341
+ name: 'cmdline-tools',
342
+ installed: false,
343
+ status: 'error',
344
+ message: 'Android cmdline-tools not installed',
345
+ };
346
+ }
347
+ // Try to get version
348
+ try {
349
+ const sdkmanagerPath = path.join(cmdlineToolsPath, 'bin', os.platform() === 'win32' ? 'sdkmanager.bat' : 'sdkmanager');
350
+ const { stdout } = await execAsync(`"${sdkmanagerPath}" --version`);
351
+ const version = stdout.trim();
352
+ return {
353
+ name: 'cmdline-tools',
354
+ installed: true,
355
+ version,
356
+ path: cmdlineToolsPath,
357
+ status: 'ok',
358
+ };
359
+ }
360
+ catch {
361
+ return {
362
+ name: 'cmdline-tools',
363
+ installed: true,
364
+ path: cmdlineToolsPath,
365
+ status: 'ok',
366
+ };
367
+ }
368
+ }
369
+ /**
370
+ * Detect Android build-tools
371
+ */
372
+ async function detectAndroidBuildTools() {
373
+ const sdkPath = await findAndroidSDK();
374
+ if (!sdkPath) {
375
+ return {
376
+ name: 'build-tools',
377
+ installed: false,
378
+ status: 'error',
379
+ message: 'Android SDK not found',
380
+ };
381
+ }
382
+ const buildToolsPath = path.join(sdkPath, 'build-tools');
383
+ const exists = await fs.pathExists(buildToolsPath);
384
+ if (!exists) {
385
+ return {
386
+ name: 'build-tools',
387
+ installed: false,
388
+ status: 'error',
389
+ message: 'Android build-tools not installed',
390
+ };
391
+ }
392
+ // Find latest version
393
+ try {
394
+ const versions = await fs.readdir(buildToolsPath);
395
+ if (versions.length === 0) {
396
+ return {
397
+ name: 'build-tools',
398
+ installed: false,
399
+ status: 'error',
400
+ message: 'No build-tools versions found',
401
+ };
402
+ }
403
+ // Sort versions and get latest
404
+ const latest = versions.sort((a, b) => (0, shared_1.compareVersions)(b, a))[0];
405
+ const compat = checkVersionCompatibility('buildTools', latest);
406
+ return {
407
+ name: 'build-tools',
408
+ installed: true,
409
+ version: latest,
410
+ path: path.join(buildToolsPath, latest),
411
+ status: compat.status,
412
+ message: compat.message,
413
+ };
414
+ }
415
+ catch {
416
+ return {
417
+ name: 'build-tools',
418
+ installed: true,
419
+ path: buildToolsPath,
420
+ status: 'ok',
421
+ };
422
+ }
423
+ }
424
+ /**
425
+ * Detect Android platform-tools (adb, fastboot)
426
+ */
427
+ async function detectAndroidPlatformTools() {
428
+ const sdkPath = await findAndroidSDK();
429
+ if (!sdkPath) {
430
+ return {
431
+ name: 'platform-tools',
432
+ installed: false,
433
+ status: 'error',
434
+ message: 'Android SDK not found',
435
+ };
436
+ }
437
+ const platformToolsPath = path.join(sdkPath, 'platform-tools');
438
+ const exists = await fs.pathExists(platformToolsPath);
439
+ if (!exists) {
440
+ return {
441
+ name: 'platform-tools',
442
+ installed: false,
443
+ status: 'error',
444
+ message: 'Android platform-tools not installed',
445
+ };
446
+ }
447
+ // Try to get adb version
448
+ try {
449
+ const adbPath = path.join(platformToolsPath, os.platform() === 'win32' ? 'adb.exe' : 'adb');
450
+ const { stdout } = await execAsync(`"${adbPath}" version`);
451
+ const match = stdout.match(/version\s+(\d+\.\d+\.\d+)/);
452
+ const version = match ? match[1] : undefined;
453
+ return {
454
+ name: 'platform-tools',
455
+ installed: true,
456
+ version,
457
+ path: platformToolsPath,
458
+ status: 'ok',
459
+ };
460
+ }
461
+ catch {
462
+ return {
463
+ name: 'platform-tools',
464
+ installed: true,
465
+ path: platformToolsPath,
466
+ status: 'ok',
467
+ };
468
+ }
469
+ }
470
+ /**
471
+ * Detect Android emulator
472
+ */
473
+ async function detectAndroidEmulator() {
474
+ const sdkPath = await findAndroidSDK();
475
+ if (!sdkPath) {
476
+ return {
477
+ name: 'emulator',
478
+ installed: false,
479
+ status: 'error',
480
+ message: 'Android SDK not found',
481
+ };
482
+ }
483
+ const emulatorPath = path.join(sdkPath, 'emulator');
484
+ const exists = await fs.pathExists(emulatorPath);
485
+ if (!exists) {
486
+ return {
487
+ name: 'emulator',
488
+ installed: false,
489
+ status: 'warning',
490
+ message: 'Android emulator not installed',
491
+ };
492
+ }
493
+ // Try to get emulator version
494
+ try {
495
+ const emulatorBin = path.join(emulatorPath, os.platform() === 'win32' ? 'emulator.exe' : 'emulator');
496
+ const { stdout } = await execAsync(`"${emulatorBin}" -version`);
497
+ const match = stdout.match(/version\s+(\d+\.\d+\.\d+)/);
498
+ const version = match ? match[1] : undefined;
499
+ return {
500
+ name: 'emulator',
501
+ installed: true,
502
+ version,
503
+ path: emulatorPath,
504
+ status: 'ok',
505
+ };
506
+ }
507
+ catch {
508
+ return {
509
+ name: 'emulator',
510
+ installed: true,
511
+ path: emulatorPath,
512
+ status: 'ok',
513
+ };
514
+ }
515
+ }
516
+ /**
517
+ * Detect specific Android platform API level
518
+ */
519
+ async function detectAndroidPlatform(apiLevel) {
520
+ const sdkPath = await findAndroidSDK();
521
+ if (!sdkPath) {
522
+ return {
523
+ name: `API ${apiLevel}`,
524
+ installed: false,
525
+ status: 'error',
526
+ message: 'Android SDK not found',
527
+ };
528
+ }
529
+ const platformPath = path.join(sdkPath, 'platforms', `android-${apiLevel}`);
530
+ const exists = await fs.pathExists(platformPath);
531
+ return {
532
+ name: `API ${apiLevel}`,
533
+ installed: exists,
534
+ path: exists ? platformPath : undefined,
535
+ status: exists ? 'ok' : 'error',
536
+ message: exists ? undefined : `Install with: sdkmanager "platforms;android-${apiLevel}"`,
537
+ };
538
+ }
539
+ /**
540
+ * Check JAVA_HOME environment variable
541
+ */
542
+ async function checkJavaHome() {
543
+ const javaHome = process.env.JAVA_HOME;
544
+ if (!javaHome) {
545
+ return {
546
+ name: 'JAVA_HOME',
547
+ installed: false,
548
+ status: 'warning',
549
+ message: 'JAVA_HOME environment variable not set',
550
+ };
551
+ }
552
+ const exists = await fs.pathExists(javaHome);
553
+ if (!exists) {
554
+ return {
555
+ name: 'JAVA_HOME',
556
+ installed: false,
557
+ path: javaHome,
558
+ status: 'error',
559
+ message: `JAVA_HOME points to non-existent path: ${javaHome}`,
560
+ };
561
+ }
562
+ return {
563
+ name: 'JAVA_HOME',
564
+ installed: true,
565
+ path: javaHome,
566
+ status: 'ok',
567
+ };
568
+ }
569
+ /**
570
+ * Check ANDROID_HOME environment variable
571
+ */
572
+ async function checkAndroidHome() {
573
+ const androidHome = process.env.ANDROID_HOME || process.env.ANDROID_SDK_ROOT;
574
+ if (!androidHome) {
575
+ return {
576
+ name: 'ANDROID_HOME',
577
+ installed: false,
578
+ status: 'warning',
579
+ message: 'ANDROID_HOME environment variable not set',
580
+ };
581
+ }
582
+ const exists = await fs.pathExists(androidHome);
583
+ if (!exists) {
584
+ return {
585
+ name: 'ANDROID_HOME',
586
+ installed: false,
587
+ path: androidHome,
588
+ status: 'error',
589
+ message: `ANDROID_HOME points to non-existent path: ${androidHome}`,
590
+ };
591
+ }
592
+ return {
593
+ name: 'ANDROID_HOME',
594
+ installed: true,
595
+ path: androidHome,
596
+ status: 'ok',
597
+ };
598
+ }
599
+ //# sourceMappingURL=system-tools.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"system-tools.js","sourceRoot":"","sources":["../../src/utils/system-tools.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"template.d.ts","sourceRoot":"","sources":["../../src/utils/template.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAKH,OAAO,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAG3C,wBAAsB,uBAAuB,CAC3C,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE,eAAe,GACvB,OAAO,CAAC,IAAI,CAAC,CAsBf"}
1
+ {"version":3,"file":"template.d.ts","sourceRoot":"","sources":["../../src/utils/template.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAKH,OAAO,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAG3C,wBAAsB,uBAAuB,CAC3C,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE,eAAe,GACvB,OAAO,CAAC,IAAI,CAAC,CAoBf"}