const sdk = require('node-appwrite'); const client = new sdk.Client(); const databases = new sdk.Databases(client); const ENDPOINT = process.env.NEXT_PUBLIC_APPWRITE_ENDPOINT || 'https://appwrite.almeira.com.co/v1'; const PROJECT_ID = process.env.NEXT_PUBLIC_APPWRITE_PROJECT_ID || '69b84df5003bd8957c5c'; const API_KEY = process.env.APPWRITE_API_KEY || 'standard_ee81a4ca6784c0fa6a23abab0a983dbba9cd0c2d8e211a00c759d9801f5d8e27b43a605bfa373e13106da87acfc7673608f0ffb0eb04e10cae3dae93d2404bfda8676f96e3fcfd6bd642f6e12d69367916b796c54e98e2e4c4bc0b7a27aa42ba5048582fcbd45b1365b51c5014cb939c1853923c418048ff0e39c2237065da3c'; client.setEndpoint(ENDPOINT).setProject(PROJECT_ID).setKey(API_KEY); async function cleanup() { try { console.log("Limpiando duplicados en Tipos de Publicacion..."); const res = await databases.listDocuments('almeira', 'publication_types', []); const seen = new Set(); let deleted = 0; for (const doc of res.documents) { const signature = doc.codigo.toUpperCase() + "_" + doc.descripcion.toUpperCase(); if (seen.has(signature)) { // Duplicate found! Delete it console.log(`Eliminando duplicado: ${doc.$id} (${doc.descripcion})`); await databases.deleteDocument('almeira', 'publication_types', doc.$id); deleted++; } else { seen.add(signature); console.log(`Manteniendo original: ${doc.$id} (${doc.descripcion})`); } } console.log(`\nProceso finalizado. Se eliminaron ${deleted} registros duplicados.`); } catch(e) { console.error("Error limpiando:", e.message); } } cleanup();