Skip to content

Commit ee2ca5a

Browse files
committed
aclarar y usar tweets
1 parent ecf3b60 commit ee2ca5a

File tree

2 files changed

+31
-22
lines changed

2 files changed

+31
-22
lines changed

sitio/src/routes/+page.server.ts

Lines changed: 26 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -42,8 +42,7 @@ export const load: PageServerLoad = async ({ url, setHeaders }) => {
4242
firstLikedTweet,
4343
monthData,
4444
hasNextMonth,
45-
heatLikes,
46-
heatRetweets,
45+
heatTweets,
4746
] = await Promise.all([
4847
db.query.likedTweets.findMany({
4948
columns: {
@@ -116,22 +115,31 @@ export const load: PageServerLoad = async ({ url, setHeaders }) => {
116115
startingFrom.add(1, "month").startOf("month").toDate(),
117116
),
118117
}),
119-
db.query.likedTweets.findMany({
120-
columns: { firstSeenAt: true },
118+
db.query.tweets.findMany({
119+
columns: {},
120+
extras: {
121+
timestamp:
122+
sql<number>`(${schema.tweets.twitterScraperJson}->>'timestamp')::numeric`.as(
123+
"timestamp",
124+
),
125+
isRetweet:
126+
sql<boolean>`(${schema.tweets.twitterScraperJson}->>'isRetweet')::boolean`.as(
127+
"isRetweet",
128+
),
129+
},
121130
where: and(
122-
gte(schema.likedTweets.firstSeenAt, heatmapStart.toDate()),
123-
lte(schema.likedTweets.firstSeenAt, heatmapEnd.toDate()),
124-
likesCutoffSql,
131+
gte(
132+
sql`(${schema.tweets.twitterScraperJson}->>'timestamp')::numeric`,
133+
+heatmapStart / 1000,
134+
),
135+
lte(
136+
sql`(${schema.tweets.twitterScraperJson}->>'timestamp')::numeric`,
137+
+heatmapEnd / 1000,
138+
),
125139
),
126-
orderBy: desc(schema.likedTweets.firstSeenAt),
127-
}),
128-
db.query.retweets.findMany({
129-
columns: { retweetAt: true },
130-
where: and(
131-
gte(schema.retweets.retweetAt, heatmapStart.toDate()),
132-
lte(schema.retweets.retweetAt, heatmapEnd.toDate()),
140+
orderBy: desc(
141+
sql`(${schema.tweets.twitterScraperJson}->>'timestamp')::numeric`,
133142
),
134-
orderBy: desc(schema.retweets.retweetAt),
135143
}),
136144
]);
137145
const t1 = performance.now();
@@ -155,8 +163,9 @@ export const load: PageServerLoad = async ({ url, setHeaders }) => {
155163
}
156164
hourHeatmap[dow][hour]++;
157165
};
158-
heatLikes.forEach((t: { firstSeenAt: Date }) => addToHeat(t.firstSeenAt));
159-
heatRetweets.forEach((t: { retweetAt: Date }) => addToHeat(t.retweetAt));
166+
heatTweets.forEach((t: { timestamp: number }) => {
167+
addToHeat(new Date(t.timestamp * 1000));
168+
});
160169
console.timeEnd("heatmap");
161170

162171
if (

sitio/src/routes/+page.svelte

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -226,7 +226,7 @@
226226
{/if}
227227

228228
<section
229-
class="mx-auto flex w-full max-w-2xl flex-col gap-4 bg-neutral-100 p-4 dark:bg-neutral-800 md:rounded-lg"
229+
class="mx-auto flex w-full max-w-2xl flex-col gap-4 bg-neutral-100 p-4 md:rounded-lg dark:bg-neutral-800"
230230
>
231231
<h2 class="my-2 text-center text-xl font-bold md:text-4xl">
232232
Su actividad en {dayjs(data.start).isAfter(dayjs().startOf("month"))
@@ -248,13 +248,13 @@
248248
</section>
249249

250250
<section
251-
class="mx-auto w-full max-w-2xl bg-neutral-100 p-4 dark:bg-neutral-800 md:rounded-lg"
251+
class="mx-auto w-full max-w-2xl bg-neutral-100 p-4 md:rounded-lg dark:bg-neutral-800"
252252
>
253253
<h2 class="mb-2 text-center text-xl font-bold md:text-3xl">
254254
¿Cuándo suele estar activo en Twitter?
255255
</h2>
256-
<p class="mb-4 text-center text-sm text-muted-foreground">
257-
Basado en retweets y likes de los últimos 90 días.
256+
<p class="text-muted-foreground mb-4 text-center text-sm">
257+
Basado en tweets y retweets de los últimos 90 días.
258258
</p>
259259
<HeatmapHours matrix={data.hourHeatmap} />
260260
</section>
@@ -321,7 +321,7 @@
321321
Como lo viste en la prensa
322322
</h2>
323323
<div
324-
class="mx-auto flex flex-col items-center justify-center gap-4 bg-neutral-100 p-2 dark:bg-neutral-800 md:mb-8 md:flex-row md:rounded-lg md:text-lg"
324+
class="mx-auto flex flex-col items-center justify-center gap-4 bg-neutral-100 p-2 md:mb-8 md:flex-row md:rounded-lg md:text-lg dark:bg-neutral-800"
325325
>
326326
<enhanced:img
327327
class="w-[300px] rounded-lg"

0 commit comments

Comments
 (0)