UNPKG

mcp-server-tft

Version:

MCP Server for Team Fight Tactics (TFT)

53 lines (52 loc) 1.57 kB
export function cleanObject(obj) { if (Array.isArray(obj)) { obj.forEach((item) => cleanObject(item)); } else if (obj && typeof obj === "object") { Object.keys(obj).forEach((key) => { if (obj[key] === null || obj[key] === undefined) { delete obj[key]; } else { cleanObject(obj[key]); } }); } } export function flattenArraysInObject(obj) { if (Array.isArray(obj)) { return obj.map((item) => flattenArraysInObject(item)); } else if (obj && typeof obj === "object") { const result = {}; Object.keys(obj).forEach((key) => { if (Array.isArray(obj[key])) { result[key] = obj[key].map((item) => flattenArraysInObject(item)); } else if (obj[key] && typeof obj[key] === "object") { result[key] = flattenArraysInObject(obj[key]); } else { result[key] = obj[key]; } }); return result; } return obj; } export function pickBySchema(obj, schema) { if (!obj || typeof obj !== "object") return obj; const result = {}; Object.keys(schema).forEach((key) => { if (obj[key] !== undefined) { if (schema[key] === true) { result[key] = obj[key]; } else if (typeof schema[key] === "object") { result[key] = pickBySchema(obj[key], schema[key]); } } }); return result; }