UNPKG

@tanstack/ai

Version:

Core TanStack AI library - Open source AI SDK

50 lines (49 loc) 1.07 kB
function createToolRegistry(initialTools = []) { const tools = /* @__PURE__ */ new Map(); for (const tool of initialTools) { tools.set(tool.name, tool); } return { getTools: () => Array.from(tools.values()), add: (tool) => { tools.set(tool.name, tool); }, remove: (name) => { return tools.delete(name); }, has: (name) => { return tools.has(name); }, get: (name) => { return tools.get(name); }, isFrozen: false }; } function createFrozenRegistry(tools = []) { const toolMap = /* @__PURE__ */ new Map(); for (const tool of tools) { toolMap.set(tool.name, tool); } const frozenTools = Object.freeze([...tools]); return { getTools: () => frozenTools, add: (_tool) => { }, remove: (_name) => { return false; }, has: (name) => { return toolMap.has(name); }, get: (name) => { return toolMap.get(name); }, isFrozen: true }; } export { createFrozenRegistry, createToolRegistry }; //# sourceMappingURL=tool-registry.js.map