fromJson static method

ToolkitDescription fromJson(
  1. Map<String, dynamic> json, {
  2. String? name,
})

Implementation

static ToolkitDescription fromJson(Map<String, dynamic> json, {String? name}) {
  return ToolkitDescription(
    title: json["title"],
    name: name ?? json["name"],
    description: json["description"],
    thumbnailUrl: json["thumbnail_url"],
    tools: [
      if (json["tools"] is List)
        ...(json["tools"] as List).map((tool) {
          return ToolDescription(
            title: tool["title"],
            name: tool["name"],
            description: tool["description"],
            inputSchema: tool["input_schema"],
            thumbnailUrl: tool["thumbnail_url"],
            pricing: tool["pricing"],
            defs: tool["defs"],
            supportsContext: tool["supports_context"] ?? false,
          );
        }),
      if (json["tools"] is Map)
        ...(json["tools"] as Map).keys.map((toolName) {
          final tool = json["tools"][toolName];
          return ToolDescription(
            title: tool["title"],
            name: toolName,
            pricing: tool["pricing"],
            description: tool["description"],
            inputSchema: tool["input_schema"],
            thumbnailUrl: tool["thumbnail_url"],
            defs: tool["defs"],
            supportsContext: tool["supports_context"] ?? false,
          );
        }),
    ],
  );
}