feat: implement Radicale CardDAV sync utility and update contact handling for asynchronous sync
This commit is contained in:
45
test-radicale-config.mjs
Normal file
45
test-radicale-config.mjs
Normal file
@@ -0,0 +1,45 @@
|
||||
#!/usr/bin/env node
|
||||
|
||||
/**
|
||||
* Test Radicale sync configuration
|
||||
*/
|
||||
|
||||
import { getRadicaleConfig, isRadicaleEnabled, generateVCard } from './src/lib/radicale-sync.js';
|
||||
|
||||
console.log('🧪 Testing Radicale Sync Configuration\n');
|
||||
|
||||
// Check if enabled
|
||||
if (isRadicaleEnabled()) {
|
||||
const config = getRadicaleConfig();
|
||||
console.log('✅ Radicale sync is ENABLED');
|
||||
console.log(` URL: ${config.url}`);
|
||||
console.log(` Username: ${config.username}`);
|
||||
console.log(` Password: ${config.password ? '***' + config.password.slice(-3) : 'not set'}`);
|
||||
} else {
|
||||
console.log('❌ Radicale sync is DISABLED');
|
||||
console.log(' Set RADICALE_URL, RADICALE_USERNAME, and RADICALE_PASSWORD in .env.local to enable');
|
||||
}
|
||||
|
||||
console.log('\n📝 Testing VCARD Generation\n');
|
||||
|
||||
// Test VCARD generation
|
||||
const testContact = {
|
||||
contact_id: 999,
|
||||
name: 'Jan Kowalski',
|
||||
phone: '["123-456-789", "987-654-321"]',
|
||||
email: 'jan.kowalski@example.com',
|
||||
company: 'Test Company',
|
||||
position: 'Manager',
|
||||
contact_type: 'project',
|
||||
notes: 'Test contact for VCARD generation',
|
||||
is_active: 1,
|
||||
created_at: new Date().toISOString()
|
||||
};
|
||||
|
||||
const vcard = generateVCard(testContact);
|
||||
console.log('Generated VCARD:');
|
||||
console.log('─'.repeat(60));
|
||||
console.log(vcard);
|
||||
console.log('─'.repeat(60));
|
||||
|
||||
console.log('\n✅ Test complete!');
|
||||
Reference in New Issue
Block a user