import inquirer from "inquirer"; import { loadConfig } from "../config.js"; import { initDirectusClient, searchItems, createItem } from "../directus/client.js"; export const addBlockedRobot = async () => { const config = await loadConfig(); initDirectusClient(config); const robots = await searchItems("robots", "/"); let rootRobot = robots.find((r) => r.path === "/"); if (!rootRobot) { console.log("â„šī¸ No robots entry for `/` found. Creating one..."); const newRobot = await createItem("robots", { path: "/" }); rootRobot = newRobot.data || newRobot; console.log("✅ Created robots rule for `/`"); } const { userAgent } = await inquirer.prompt({ name: "userAgent", message: "🤖 Enter the user-agent string to block:", validate: (input) => !!input || "User-agent cannot be empty" }); const createdAgent = await createItem("user_agents", { user_agent: userAgent }); const agentId = createdAgent.data?.id || createdAgent.id; await createItem("robots_user_agents", { robots_id: rootRobot.id, user_agents_id: agentId }); console.log(`✅ Blocked user-agent "${userAgent}" under path "/"`); };