public
anord
read
Ledger
Why work hard when you can work easier?
Languages
Repository composition by tracked source files.
TypeScript
86%
CSS
10%
SQL
3%
Shell
1%
HTML
0%
Trace
apps/api/src/http/routes/search.ts
Trace helps you understand code history line by line. See who changed each line, when it changed, and which commit introduced it.
Author
Date
Commit
Line
Code
1
import { Router } from "express";
2
import { searchPages, recordSearch } from "../../services/search.js";
3
import { enqueueWebhookEvent } from "../../services/webhooks.js";
5
export const searchRouter = Router();
7
searchRouter.get("/", async (req, res) => {
8
const query = String(req.query.q ?? "");
9
const pages = await searchPages(query, req.user ?? null);
10
const searchId = await recordSearch(query, req.user?.id ?? null, pages);
12
if (pages.length === 0 && query.trim()) {
13
await enqueueWebhookEvent("search.no_results", { searchId, query }, {
14
actor: req.user
15
? {
16
id: req.user.id,
17
name: req.user.displayName,
18
email: req.user.email
19
}
20
: null
21
});
22
}
24
return res.json({
25
query,
26
total: pages.length,
27
searchId,
28
pages
29
});
30
});