didCompleteClientTurn method
void
didCompleteClientTurn(
- Response response
)
Implementation
void didCompleteClientTurn(Response response) {
if (store == true) {
previousResponseId = response.id;
this.input = ResponseInputItems([..._pendingOutputs.values.whereType<ResponseItem>()]);
} else {
if (input is ResponseInputItems) {
this.input = ResponseInputItems([
...(input as ResponseInputItems).items,
if (response.output != null)
...response.output!.where(
(element) => element is! Reasoning,
),
..._pendingOutputs.values.whereType<ResponseItem>()
]);
} else if (input is ResponseInputText) {
final text = input as ResponseInputText;
this.input = ResponseInputItems([
InputText(role: "user", text: text.text),
if (response.output != null)
...response.output!.where(
(element) => element is! Reasoning,
),
..._pendingOutputs.values.whereType<ResponseItem>()
]);
} else {
throw ArgumentError("There was no input or input was unexpected");
}
}
_pendingOutputs.clear();
}