ToolPart.fromJson constructor

ToolPart.fromJson(
  1. Map<String, Object?> json
)

Creates a tool part from a JSON-compatible map.

Implementation

factory ToolPart.fromJson(Map<String, Object?> json) {
  final content = json[_Json.content] as Map<String, Object?>;
  if (content.containsKey(_Json.arguments)) {
    return ToolPart.call(
      callId: content[_Json.id] as String,
      toolName: content[_Json.name] as String,
      arguments: content[_Json.arguments] as Map<String, Object?>? ?? {},
    );
  } else {
    return ToolPart.result(
      callId: content[_Json.id] as String,
      toolName: content[_Json.name] as String,
      result: content[_Json.result],
    );
  }
}