onRequestNode method
https://chromedevtools.github.io/devtools-protocol/tot/DOM/#method-requestNode Returns nodeId for a given objectId (from Runtime.evaluate/resolveNode).
Implementation
void onRequestNode(int? id, Map<String, dynamic> params) {
final ctx = dbgContext;
if (ctx == null) {
sendToFrontend(id, null);
return;
}
final dynamic objectId = params['objectId'];
int parsedNodeId = 0;
if (objectId is String) {
// Our resolveNode encodes nodeId as string objectId
parsedNodeId = int.tryParse(objectId) ?? 0;
} else if (objectId is int) {
parsedNodeId = objectId;
}
// Validate that the node exists in mapping
if (parsedNodeId != 0) {
final targetId = ctx.getTargetIdByNodeId(parsedNodeId);
if (targetId == null || targetId == 0) {
parsedNodeId = 0;
}
}
sendToFrontend(id, JSONEncodableMap({'nodeId': parsedNodeId}));
}