droid-cli 1.4.2 → 1.5.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.
@@ -1 +1 @@
1
- {"version":3,"file":"logcat.d.ts","sourceRoot":"","sources":["../../src/commands/logcat.ts"],"names":[],"mappings":"AAQA,UAAU,aAAa;IACrB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,wBAAsB,aAAa,CAAC,OAAO,GAAE,aAAkB,iBAkK9D"}
1
+ {"version":3,"file":"logcat.d.ts","sourceRoot":"","sources":["../../src/commands/logcat.ts"],"names":[],"mappings":"AAQA,UAAU,aAAa;IACrB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,wBAAsB,aAAa,CAAC,OAAO,GAAE,aAAkB,iBA4K9D"}
@@ -69,6 +69,13 @@ async function logcatCommand(options = {}) {
69
69
  const parsedCommand = (0, template_1.processTemplate)(config.logcat.template, templateVariables);
70
70
  logcatCommand = parsedCommand.command;
71
71
  logcatArgs = parsedCommand.args;
72
+ // If the command contains shell substitution, wrap it in shell execution
73
+ const fullCommand = `${logcatCommand} ${logcatArgs.join(' ')}`;
74
+ if (fullCommand.includes('$(') && fullCommand.includes(')')) {
75
+ const userShell = process.env.SHELL ? require('path').basename(process.env.SHELL) : 'bash';
76
+ logcatCommand = userShell;
77
+ logcatArgs = ['-c', fullCommand];
78
+ }
72
79
  logger_1.Logger.info(`Using template: ${config.logcat.template}`);
73
80
  if (projectInfo.packageName !== 'unknown') {
74
81
  logger_1.Logger.info(`Filtering logs for package: ${projectInfo.packageName}`);
@@ -82,8 +89,9 @@ async function logcatCommand(options = {}) {
82
89
  logger_1.Logger.info('Falling back to default logcat command');
83
90
  // Fallback to original logic
84
91
  if (projectInfo.packageName !== 'unknown') {
85
- logcatCommand = 'sh';
86
- logcatArgs = ['-c', `adb logcat -v color --pid=$(adb shell pidof -s ${projectInfo.packageName})`];
92
+ const userShell = process.env.SHELL ? require('path').basename(process.env.SHELL) : 'bash';
93
+ logcatCommand = userShell;
94
+ logcatArgs = ['-c', `adb -s ${targetDevice.id} logcat -v color --pid=$(adb -s ${targetDevice.id} shell pidof -s ${projectInfo.packageName})`];
87
95
  logger_1.Logger.info(`Using PID-based filtering for package: ${projectInfo.packageName}`);
88
96
  }
89
97
  else {
@@ -135,6 +143,7 @@ async function logcatCommand(options = {}) {
135
143
  logger_1.Logger.info(`${logcatCommand} ${logcatArgs.join(' ')}`);
136
144
  // Fallback: run logcat in current terminal
137
145
  logger_1.Logger.step('Running logcat in current terminal (press Ctrl+C to stop)...');
146
+ // Use the already processed command and args (shell wrapping is already done in main logic)
138
147
  const logcatProcess = require('../utils/process').ProcessManager.spawn(logcatCommand, logcatArgs);
139
148
  // Handle process termination
140
149
  process.on('SIGINT', () => {
@@ -1 +1 @@
1
- {"version":3,"file":"logcat.js","sourceRoot":"","sources":["../../src/commands/logcat.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"logcat.js","sourceRoot":"","sources":["../../src/commands/logcat.ts"],"names":[],"mappings":"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"}
@@ -19,8 +19,8 @@ exports.androidCliConfigSchema = joi_1.default.object({
19
19
  logcat: joi_1.default.object({
20
20
  clearOnStart: joi_1.default.boolean().default(true).description('Clear logcat on start'),
21
21
  colorize: joi_1.default.boolean().default(true).description('Colorize logcat output'),
22
- template: joi_1.default.string().default('sh -c "adb logcat -v color --pid=$(adb shell pidof -s {{package_name}})"').description('Logcat command template with variable substitution'),
23
- }).default({ clearOnStart: true, colorize: true, template: 'sh -c "adb logcat -v color --pid=$(adb shell pidof -s {{package_name}})"' }),
22
+ template: joi_1.default.string().default('adb -s {{device_id}} logcat -v color --pid=$(adb -s {{device_id}} shell pidof -s {{package_name}})').description('Logcat command template with variable substitution'),
23
+ }).default({ clearOnStart: true, colorize: true, template: 'adb -s {{device_id}} logcat -v color --pid=$(adb -s {{device_id}} shell pidof -s {{package_name}})' }),
24
24
  adbReverse: joi_1.default.object({
25
25
  enabled: joi_1.default.boolean().default(false).description('Enable automatic adb reverse port forwarding'),
26
26
  ports: joi_1.default.array().items(joi_1.default.number().port()).default([8081]).description('Ports to forward (e.g., [8081] for React Native Metro)'),
@@ -41,7 +41,7 @@ exports.defaultConfig = {
41
41
  logcat: {
42
42
  clearOnStart: true,
43
43
  colorize: true,
44
- template: 'sh -c "adb logcat -v color --pid=$(adb shell pidof -s {{package_name}})"',
44
+ template: 'adb -s {{device_id}} logcat -v color --pid=$(adb -s {{device_id}} shell pidof -s {{package_name}})',
45
45
  },
46
46
  adbReverse: {
47
47
  enabled: false,
@@ -1 +1 @@
1
- {"version":3,"file":"schema.js","sourceRoot":"","sources":["../../src/config/schema.ts"],"names":[],"mappings":";;;;;;AAAA,8CAAsB;AAyBT,QAAA,sBAAsB,GAAG,aAAG,CAAC,MAAM,CAAmB;IACjE,WAAW,EAAE,aAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,WAAW,CAAC,uCAAuC,CAAC;IACzF,cAAc,EAAE,aAAG,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,WAAW,CAAC,uBAAuB,CAAC;IAC5G,QAAQ,EAAE,aAAG,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,WAAW,CAAC,wCAAwC,CAAC;IAC5F,WAAW,EAAE,aAAG,CAAC,MAAM,CAAC;QACtB,MAAM,EAAE,aAAG,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,aAAG,CAAC,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,WAAW,CAAC,qBAAqB,CAAC;KACvF,CAAC,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;IAC1B,UAAU,EAAE,aAAG,CAAC,MAAM,CAAC;QACrB,OAAO,EAAE,aAAG,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,WAAW,CAAC,sBAAsB,CAAC;QACxE,OAAO,EAAE,aAAG,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,WAAW,CAAC,oBAAoB,CAAC;KACvE,CAAC,CAAC,OAAO,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;IAC7C,MAAM,EAAE,aAAG,CAAC,MAAM,CAAC;QACjB,YAAY,EAAE,aAAG,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,WAAW,CAAC,uBAAuB,CAAC;QAC9E,QAAQ,EAAE,aAAG,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,WAAW,CAAC,wBAAwB,CAAC;QAC3E,QAAQ,EAAE,aAAG,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,0EAA0E,CAAC,CAAC,WAAW,CAAC,oDAAoD,CAAC;KAC7K,CAAC,CAAC,OAAO,CAAC,EAAE,YAAY,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,EAAE,0EAA0E,EAAE,CAAC;IACxI,UAAU,EAAE,aAAG,CAAC,MAAM,CAAC;QACrB,OAAO,EAAE,aAAG,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,WAAW,CAAC,8CAA8C,CAAC;QACjG,KAAK,EAAE,aAAG,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,aAAG,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,WAAW,CAAC,wDAAwD,CAAC;KACpI,CAAC,CAAC,OAAO,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;IAC7C,cAAc,EAAE,aAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,WAAW,CAAC,yBAAyB,CAAC;CAC/E,CAAC,CAAC;AAEU,QAAA,aAAa,GAAqB;IAC7C,WAAW,EAAE,OAAO;IACpB,cAAc,EAAE,OAAO;IACvB,QAAQ,EAAE,MAAM;IAChB,WAAW,EAAE;QACX,MAAM,EAAE,EAAE;KACX;IACD,UAAU,EAAE;QACV,OAAO,EAAE,IAAI;QACb,OAAO,EAAE,KAAK;KACf;IACD,MAAM,EAAE;QACN,YAAY,EAAE,IAAI;QAClB,QAAQ,EAAE,IAAI;QACd,QAAQ,EAAE,0EAA0E;KACrF;IACD,UAAU,EAAE;QACV,OAAO,EAAE,KAAK;QACd,KAAK,EAAE,CAAC,IAAI,CAAC;KACd;CACF,CAAC"}
1
+ {"version":3,"file":"schema.js","sourceRoot":"","sources":["../../src/config/schema.ts"],"names":[],"mappings":"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"}
@@ -2,9 +2,9 @@
2
2
  * Template substitution utilities for command templates
3
3
  */
4
4
  export interface TemplateVariables {
5
- device_id: string;
6
- package_name: string;
7
- [key: string]: string | number | boolean;
5
+ device_id?: string;
6
+ package_name?: string;
7
+ [key: string]: string | number | boolean | undefined;
8
8
  }
9
9
  /**
10
10
  * Substitutes template variables in a command template string
@@ -1 +1 @@
1
- {"version":3,"file":"template.d.ts","sourceRoot":"","sources":["../../src/utils/template.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,MAAM,WAAW,iBAAiB;IAChC,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;IACrB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC;CAC1C;AAED;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,iBAAiB,GAAG,MAAM,CAQzF;AAED;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,MAAM,GAAG;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,EAAE,CAAA;CAAE,CAoD1F;AAED;;;;;GAKG;AACH,wBAAgB,eAAe,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,iBAAiB,GAAG;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,EAAE,CAAA;CAAE,CAGnH"}
1
+ {"version":3,"file":"template.d.ts","sourceRoot":"","sources":["../../src/utils/template.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,MAAM,WAAW,iBAAiB;IAChC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,SAAS,CAAC;CACtD;AAED;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,iBAAiB,GAAG,MAAM,CAQzF;AAED;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,MAAM,GAAG;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,EAAE,CAAA;CAAE,CAoD1F;AAED;;;;;GAKG;AACH,wBAAgB,eAAe,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,iBAAiB,GAAG;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,EAAE,CAAA;CAAE,CAGnH"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "droid-cli",
3
- "version": "1.4.2",
3
+ "version": "1.5.0",
4
4
  "description": "Interactive CLI for Android development, inspired by Expo CLI",
5
5
  "main": "dist/index.js",
6
6
  "bin": {
@@ -10,6 +10,8 @@
10
10
  "build": "tsc",
11
11
  "dev": "bun src/index.ts",
12
12
  "start": "node dist/index.js",
13
+ "test": "bun test",
14
+ "test:watch": "bun test --watch",
13
15
  "lint": "eslint src/**/*.ts",
14
16
  "format": "prettier --write src/**/*.ts",
15
17
  "prepare": "npm run build"
@@ -31,6 +33,7 @@
31
33
  "README.md"
32
34
  ],
33
35
  "devDependencies": {
36
+ "@types/bun": "^1.2.16",
34
37
  "@types/fs-extra": "^11.0.4",
35
38
  "@types/inquirer": "^9.0.8",
36
39
  "@types/node": "^24.0.3",