Pronouns labels on Bluesky

refactor main

Changed files
+6 -7
src
+6 -7
src/main.ts
··· 8 8 let cursor = 0; 9 9 let intervalID: NodeJS.Timeout; 10 10 const cursorFile = fs.readFileSync("cursor.txt", "utf8"); 11 - 12 11 const relay = cursorFile ? RELAY.concat("&cursor=", cursorFile) : RELAY; 12 + const ws = new WebSocket(relay); 13 13 if (cursorFile) console.log(`Initiate firehose at cursor ${cursorFile}`); 14 - const ws = new WebSocket(relay); 15 14 16 15 ws.on("error", (err) => console.error(err)); 17 16 18 17 ws.on("open", () => { 19 18 intervalID = setInterval(() => { 20 19 console.log(`${new Date().toISOString()}: ${cursor}`); 21 - fs.writeFile("cursor.txt", cursor.toString(), (err) => console.log(err)); 20 + fs.writeFile("cursor.txt", cursor.toString(), (err) => { 21 + if (err) console.log(err); 22 + }); 22 23 }, 60000); 23 24 }); 24 25 25 - ws.on("close", () => { 26 - clearInterval(intervalID); 27 - }); 26 + ws.on("close", () => clearInterval(intervalID)); 28 27 29 28 ws.on("message", (data) => { 30 29 const event: EventStream = JSON.parse(data.toString()); 31 30 cursor = event.time_us; 32 31 if ( 33 - event.commit?.record?.subject?.uri?.includes(DID + "/app.bsky.feed.post") 32 + event.commit?.record?.subject?.uri?.includes(`${DID}/app.bsky.feed.post`) 34 33 ) { 35 34 label(event.did, event.commit.record.subject.uri.split("/").pop()!); 36 35 }