applyRequestBreakpointEdit method
Applies a request breakpoint edit: keeps original + edited, updates live request.
Implementation
void applyRequestBreakpointEdit({
required int requestId,
required InfospectBreakpointEdit edit,
}) {
final int index = _selectCall(requestId);
if (index == -1) return;
final selected = _infospect.networkCallsSubject.value[index];
final edited = edit.edited;
final request = selected.request?.copyWith(
headers: edited.headers,
queryParameters: edited.queryParameters,
body: edited.body,
size: utf8.encode(edited.body).length,
) ??
InfospectNetworkRequest(
headers: edited.headers,
queryParameters: edited.queryParameters,
body: edited.body,
size: utf8.encode(edited.body).length,
);
_infospect.networkCallsSubject.value[index] = selected.copyWith(
request: request,
method: edited.method.isNotEmpty ? edited.method : selected.method,
endpoint:
edited.endpoint.isNotEmpty ? edited.endpoint : selected.endpoint,
uri: edited.uri.isNotEmpty ? edited.uri : selected.uri,
hadRequestBreakpoint: true,
requestEditedAtBreakpoint: edit.hasChanges,
requestBreakpointEdit: edit,
);
_infospect.networkCallsSubject
.add([..._infospect.networkCallsSubject.value]);
}