@mcesystems/adb-kit 1.0.87 → 1.0.91
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 +23 -4
- package/dist/index.js +105 -78
- package/dist/index.js.map +4 -4
- package/dist/index.mjs +102 -78
- package/dist/index.mjs.map +4 -4
- package/dist/types/index.d.ts +15 -2
- package/package.json +5 -3
- package/scripts/export-resources.ts +8 -7
package/dist/index.mjs
CHANGED
|
@@ -25696,7 +25696,7 @@ var require_server = __commonJS({
|
|
|
25696
25696
|
var require_api = __commonJS({
|
|
25697
25697
|
"../../node_modules/.pnpm/@devicefarmer+adbkit-monkey@1.2.1/node_modules/@devicefarmer/adbkit-monkey/lib/monkey/api.js"(exports2, module2) {
|
|
25698
25698
|
(function() {
|
|
25699
|
-
var Api,
|
|
25699
|
+
var Api, EventEmitter2, _ref, __hasProp = {}.hasOwnProperty, __extends = function(child, parent) {
|
|
25700
25700
|
for (var key in parent) {
|
|
25701
25701
|
if (__hasProp.call(parent, key)) child[key] = parent[key];
|
|
25702
25702
|
}
|
|
@@ -25708,7 +25708,7 @@ var require_api = __commonJS({
|
|
|
25708
25708
|
child.__super__ = parent.prototype;
|
|
25709
25709
|
return child;
|
|
25710
25710
|
};
|
|
25711
|
-
|
|
25711
|
+
EventEmitter2 = __require("events").EventEmitter;
|
|
25712
25712
|
Api = (function(_super) {
|
|
25713
25713
|
__extends(Api2, _super);
|
|
25714
25714
|
function Api2() {
|
|
@@ -25922,7 +25922,7 @@ var require_api = __commonJS({
|
|
|
25922
25922
|
return this;
|
|
25923
25923
|
};
|
|
25924
25924
|
return Api2;
|
|
25925
|
-
})(
|
|
25925
|
+
})(EventEmitter2);
|
|
25926
25926
|
module2.exports = Api;
|
|
25927
25927
|
}).call(exports2);
|
|
25928
25928
|
}
|
|
@@ -26103,7 +26103,7 @@ var require_multi = __commonJS({
|
|
|
26103
26103
|
var require_parser2 = __commonJS({
|
|
26104
26104
|
"../../node_modules/.pnpm/@devicefarmer+adbkit-monkey@1.2.1/node_modules/@devicefarmer/adbkit-monkey/lib/monkey/parser.js"(exports2, module2) {
|
|
26105
26105
|
(function() {
|
|
26106
|
-
var
|
|
26106
|
+
var EventEmitter2, Parser, Reply, __hasProp = {}.hasOwnProperty, __extends = function(child, parent) {
|
|
26107
26107
|
for (var key in parent) {
|
|
26108
26108
|
if (__hasProp.call(parent, key)) child[key] = parent[key];
|
|
26109
26109
|
}
|
|
@@ -26115,7 +26115,7 @@ var require_parser2 = __commonJS({
|
|
|
26115
26115
|
child.__super__ = parent.prototype;
|
|
26116
26116
|
return child;
|
|
26117
26117
|
};
|
|
26118
|
-
|
|
26118
|
+
EventEmitter2 = __require("events").EventEmitter;
|
|
26119
26119
|
Reply = require_reply();
|
|
26120
26120
|
Parser = (function(_super) {
|
|
26121
26121
|
__extends(Parser2, _super);
|
|
@@ -26163,7 +26163,7 @@ var require_parser2 = __commonJS({
|
|
|
26163
26163
|
this.emit("error", new SyntaxError("Unparseable line '" + line + "'"));
|
|
26164
26164
|
};
|
|
26165
26165
|
return Parser2;
|
|
26166
|
-
})(
|
|
26166
|
+
})(EventEmitter2);
|
|
26167
26167
|
module2.exports = Parser;
|
|
26168
26168
|
}).call(exports2);
|
|
26169
26169
|
}
|
|
@@ -30216,6 +30216,7 @@ var require_dist = __commonJS({
|
|
|
30216
30216
|
|
|
30217
30217
|
// src/logic/adbDeviceKit.ts
|
|
30218
30218
|
var adbkit = __toESM(require_dist());
|
|
30219
|
+
import { EventEmitter } from "node:events";
|
|
30219
30220
|
|
|
30220
30221
|
// ../tool-debug/dist/index.mjs
|
|
30221
30222
|
import process22 from "node:process";
|
|
@@ -31349,6 +31350,11 @@ function portNumbers(from, to) {
|
|
|
31349
31350
|
return generator(from, to);
|
|
31350
31351
|
}
|
|
31351
31352
|
|
|
31353
|
+
// src/types/usbDebugging.ts
|
|
31354
|
+
var USB_DEBUGGING_EVENT_OFF = "usbDebuggingOff";
|
|
31355
|
+
var USB_DEBUGGING_EVENT_NEEDS_ALWAYS_ALLOW = "usbDebuggingNeedsAlwaysAllow";
|
|
31356
|
+
var USB_DEBUGGING_EVENT_AUTHORIZED = "usbDebuggingAuthorized";
|
|
31357
|
+
|
|
31352
31358
|
// src/utils/adbPath.ts
|
|
31353
31359
|
import { existsSync } from "node:fs";
|
|
31354
31360
|
import path from "node:path";
|
|
@@ -31445,8 +31451,9 @@ var deviceProps = {
|
|
|
31445
31451
|
"Build User": "ro.build.user"
|
|
31446
31452
|
};
|
|
31447
31453
|
var AdbDeviceKit = class {
|
|
31448
|
-
constructor(deviceId, port) {
|
|
31454
|
+
constructor(deviceId, port, config) {
|
|
31449
31455
|
this.port = port;
|
|
31456
|
+
this.config = config;
|
|
31450
31457
|
setNamespace(`adb-kit:${deviceId}`);
|
|
31451
31458
|
ensureAdbPathFromResources();
|
|
31452
31459
|
installConnectionErrorHandler();
|
|
@@ -31460,7 +31467,7 @@ var AdbDeviceKit = class {
|
|
|
31460
31467
|
deviceId;
|
|
31461
31468
|
devicePort = null;
|
|
31462
31469
|
connect() {
|
|
31463
|
-
const adbBin = process.env.ADB_PATH ??
|
|
31470
|
+
const adbBin = process.env.ADB_PATH ?? this.config?.binPath ?? "adb";
|
|
31464
31471
|
const client = adbkit.default.createClient({ bin: adbBin });
|
|
31465
31472
|
const errorHandler = (err) => {
|
|
31466
31473
|
logError(`ADB client connection error (e.g. device disconnected): ${err.message}`);
|
|
@@ -31526,81 +31533,95 @@ var AdbDeviceKit = class {
|
|
|
31526
31533
|
* during tracking don't affect other operations.
|
|
31527
31534
|
*/
|
|
31528
31535
|
createTrackingClient() {
|
|
31529
|
-
const adbBin = process.env.ADB_PATH ??
|
|
31536
|
+
const adbBin = process.env.ADB_PATH ?? this.config?.binPath ?? "adb";
|
|
31530
31537
|
return adbkit.default.createClient({ bin: adbBin });
|
|
31531
31538
|
}
|
|
31532
|
-
|
|
31533
|
-
|
|
31534
|
-
|
|
31535
|
-
|
|
31536
|
-
|
|
31537
|
-
const
|
|
31538
|
-
|
|
31539
|
-
|
|
31540
|
-
|
|
31541
|
-
|
|
31542
|
-
|
|
31543
|
-
|
|
31544
|
-
|
|
31545
|
-
|
|
31546
|
-
|
|
31547
|
-
|
|
31548
|
-
|
|
31549
|
-
|
|
31550
|
-
|
|
31539
|
+
matchesDeviceId(device) {
|
|
31540
|
+
return device.id === this.deviceId || device.id.endsWith(this.deviceId);
|
|
31541
|
+
}
|
|
31542
|
+
waitForUsbDebugging(timeout2 = 12e4, _numberOfAllowedAttempts = 5) {
|
|
31543
|
+
const events = new EventEmitter();
|
|
31544
|
+
const promise = (async () => {
|
|
31545
|
+
if (await this.hasUsbDebugging()) {
|
|
31546
|
+
logDetail("USB debugging is already enabled");
|
|
31547
|
+
return true;
|
|
31548
|
+
}
|
|
31549
|
+
const trackingClient = this.createTrackingClient();
|
|
31550
|
+
const tracker = await trackingClient.trackDevices();
|
|
31551
|
+
events.emit(USB_DEBUGGING_EVENT_OFF);
|
|
31552
|
+
let settled = false;
|
|
31553
|
+
return new Promise((resolve, reject) => {
|
|
31554
|
+
const timeoutId = setTimeout(() => {
|
|
31555
|
+
logError("Timeout waiting for USB debugging");
|
|
31556
|
+
settle({ type: "reject", err: new Error("Timeout waiting for USB debugging") });
|
|
31557
|
+
}, timeout2);
|
|
31558
|
+
const cleanupTrackingClient = () => {
|
|
31559
|
+
try {
|
|
31560
|
+
tracker.end();
|
|
31561
|
+
} catch {
|
|
31562
|
+
}
|
|
31563
|
+
trackingClient.on("error", () => {
|
|
31564
|
+
});
|
|
31565
|
+
};
|
|
31566
|
+
const settle = (result) => {
|
|
31567
|
+
if (settled) return;
|
|
31568
|
+
settled = true;
|
|
31569
|
+
clearTimeout(timeoutId);
|
|
31570
|
+
cleanupTrackingClient();
|
|
31571
|
+
if (result.type === "resolve") {
|
|
31572
|
+
resolve(result.value);
|
|
31573
|
+
} else {
|
|
31574
|
+
logError(result.err.message);
|
|
31575
|
+
reject(result.err);
|
|
31576
|
+
}
|
|
31577
|
+
};
|
|
31578
|
+
const handleAddOrChange = (device) => {
|
|
31579
|
+
if (!this.matchesDeviceId(device)) return;
|
|
31580
|
+
if (device.type === "unauthorized") {
|
|
31581
|
+
logDetail("Device needs 'Always allow' authorization");
|
|
31582
|
+
events.emit(USB_DEBUGGING_EVENT_NEEDS_ALWAYS_ALLOW);
|
|
31583
|
+
return;
|
|
31584
|
+
}
|
|
31585
|
+
if (device.type === "device") {
|
|
31586
|
+
logDetail("Device authorized");
|
|
31587
|
+
events.emit(USB_DEBUGGING_EVENT_AUTHORIZED);
|
|
31588
|
+
settle({ type: "resolve", value: true });
|
|
31589
|
+
}
|
|
31590
|
+
};
|
|
31591
|
+
trackingClient.on("error", (err) => {
|
|
31592
|
+
if (isConnectionErrorMessage(err)) {
|
|
31593
|
+
logDetail(`Tracking client connection closed: ${err.message}`);
|
|
31594
|
+
settle({ type: "resolve", value: false });
|
|
31595
|
+
} else {
|
|
31596
|
+
logError(`Tracking client error: ${err.message}`);
|
|
31597
|
+
settle({ type: "reject", err });
|
|
31598
|
+
}
|
|
31551
31599
|
});
|
|
31552
|
-
|
|
31553
|
-
|
|
31554
|
-
|
|
31555
|
-
|
|
31556
|
-
|
|
31557
|
-
|
|
31558
|
-
|
|
31559
|
-
|
|
31560
|
-
}
|
|
31561
|
-
|
|
31562
|
-
|
|
31563
|
-
}
|
|
31564
|
-
};
|
|
31565
|
-
trackingClient.on("error", (err) => {
|
|
31566
|
-
if (isConnectionErrorMessage(err)) {
|
|
31567
|
-
logDetail(`Tracking client connection closed: ${err.message}`);
|
|
31568
|
-
settle({ type: "resolve", value: false });
|
|
31569
|
-
} else {
|
|
31570
|
-
logError(`Tracking client error: ${err.message}`);
|
|
31571
|
-
settle({ type: "reject", err });
|
|
31572
|
-
}
|
|
31573
|
-
});
|
|
31574
|
-
tracker.on("error", (err) => {
|
|
31575
|
-
if (isConnectionErrorMessage(err)) {
|
|
31576
|
-
logDetail(`Tracker connection closed: ${err.message}`);
|
|
31600
|
+
tracker.on("error", (err) => {
|
|
31601
|
+
if (isConnectionErrorMessage(err)) {
|
|
31602
|
+
logDetail(`Tracker connection closed: ${err.message}`);
|
|
31603
|
+
settle({ type: "resolve", value: false });
|
|
31604
|
+
} else {
|
|
31605
|
+
logError(`Tracker error: ${err.message}`);
|
|
31606
|
+
settle({ type: "reject", err });
|
|
31607
|
+
}
|
|
31608
|
+
});
|
|
31609
|
+
tracker.on("end", () => {
|
|
31610
|
+
logDetail("Device tracking ended");
|
|
31577
31611
|
settle({ type: "resolve", value: false });
|
|
31578
|
-
}
|
|
31579
|
-
|
|
31580
|
-
|
|
31581
|
-
|
|
31582
|
-
|
|
31583
|
-
|
|
31584
|
-
|
|
31585
|
-
|
|
31586
|
-
|
|
31587
|
-
|
|
31588
|
-
logError("Device removed from tracker");
|
|
31589
|
-
settle({ type: "reject", err: new Error("Device removed while waiting for USB debugging") });
|
|
31590
|
-
});
|
|
31591
|
-
tracker.on("add", (device) => {
|
|
31592
|
-
if (device.type === "device") {
|
|
31593
|
-
logDetail("Device added to tracker");
|
|
31594
|
-
settle({ type: "resolve", value: true });
|
|
31595
|
-
}
|
|
31596
|
-
});
|
|
31597
|
-
tracker.on("change", (device) => {
|
|
31598
|
-
if (device.type === "device") {
|
|
31599
|
-
logDetail("Device changed in tracker");
|
|
31600
|
-
settle({ type: "resolve", value: true });
|
|
31601
|
-
}
|
|
31612
|
+
});
|
|
31613
|
+
tracker.on("remove", (_) => {
|
|
31614
|
+
logError("Device removed from tracker");
|
|
31615
|
+
settle({
|
|
31616
|
+
type: "reject",
|
|
31617
|
+
err: new Error("Device removed while waiting for USB debugging")
|
|
31618
|
+
});
|
|
31619
|
+
});
|
|
31620
|
+
tracker.on("add", handleAddOrChange);
|
|
31621
|
+
tracker.on("change", handleAddOrChange);
|
|
31602
31622
|
});
|
|
31603
|
-
});
|
|
31623
|
+
})();
|
|
31624
|
+
return { promise, events };
|
|
31604
31625
|
}
|
|
31605
31626
|
async startPortForward(serviceName) {
|
|
31606
31627
|
if (this.devicePort) {
|
|
@@ -31629,6 +31650,9 @@ var import_adbkit = __toESM(require_dist());
|
|
|
31629
31650
|
var readAll = import_adbkit.default.util.readAll;
|
|
31630
31651
|
export {
|
|
31631
31652
|
AdbDeviceKit,
|
|
31653
|
+
USB_DEBUGGING_EVENT_AUTHORIZED,
|
|
31654
|
+
USB_DEBUGGING_EVENT_NEEDS_ALWAYS_ALLOW,
|
|
31655
|
+
USB_DEBUGGING_EVENT_OFF,
|
|
31632
31656
|
readAll
|
|
31633
31657
|
};
|
|
31634
31658
|
//# sourceMappingURL=index.mjs.map
|