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 "/"`); };