import fs from 'node:fs/promises'; import {clean} from './seguridad.mjs'; export async function cargarAplicaciones(file='data/apps.json') { const parsed=JSON.parse(await fs.readFile(file,'utf8')); if (!Array.isArray(parsed)) throw new Error('data/apps.json debe ser un arreglo JSON.'); return parsed.filter(a=>a && typeof a.name==='string' && /^https:\/\/play\.google\.com\/store\/apps\/details\?id=[\w.]+/.test(a.url||'')) .map(a=>({name:clean(a.name,80),description:clean(a.description,240),url:a.url})); } export function resumenAplicaciones(config,apps) { const name=config.apps.developerName || 'el desarrollador'; if (!apps.length) return `Puedes encontrar mis aplicaciones en Google Play buscando ${name}. El enlace al perfil está en pantalla.`; return `Puedes ver mis aplicaciones en Google Play. Por ejemplo, ${apps.slice(0,2).map(a=>a.name).join(' y ')}. Busca ${name} en la tienda.`; } export function catalogoParaIA(apps) { return apps.map(a=>`${a.name}: ${a.description} (${a.url})`).join('\n') || '(Sin aplicaciones individuales verificadas en apps.json)'; }