👁️
5
fork

Configure Feed

Select the types of activity you want to include in your feed.

filter invalid records from ufos

+22 -14
+22 -14
src/lib/ufos-queries.ts
··· 69 69 function transformActivityRecord( 70 70 rawRecord: UfosRecord<unknown>, 71 71 ): ActivityRecord | null { 72 - if (rawRecord.collection === "com.deckbelcher.deck.list") { 73 - const deckRecord = rawRecord as UfosRawDeckRecord; 74 - return { 75 - ...deckRecord, 76 - record: transformDeckRecord(deckRecord.record), 77 - } as UfosDeckRecord; 78 - } 79 - if (rawRecord.collection === "com.deckbelcher.collection.list") { 80 - const listRecord = rawRecord as UfosRawListRecord; 81 - return { 82 - ...listRecord, 83 - record: transformListRecord(listRecord.record), 84 - } as UfosListRecord; 72 + try { 73 + if (rawRecord.collection === "com.deckbelcher.deck.list") { 74 + const deckRecord = rawRecord as UfosRawDeckRecord; 75 + return { 76 + ...deckRecord, 77 + record: transformDeckRecord(deckRecord.record), 78 + } as UfosDeckRecord; 79 + } 80 + if (rawRecord.collection === "com.deckbelcher.collection.list") { 81 + const listRecord = rawRecord as UfosRawListRecord; 82 + return { 83 + ...listRecord, 84 + record: transformListRecord(listRecord.record), 85 + } as UfosListRecord; 86 + } 87 + return null; 88 + } catch (error) { 89 + console.warn( 90 + `Skipping malformed UFOs record ${rawRecord.did}/${rawRecord.rkey}:`, 91 + error instanceof Error ? error.message : error, 92 + ); 93 + return null; 85 94 } 86 - return null; 87 95 } 88 96 89 97 /**