1/** @jsxImportSource npm:hono/jsx **/
2
3import { modifyFetchHandler } from "https://esm.town/v/andreterron/codeOnValTown?v=50";
4import { iframeHandler } from "https://esm.town/v/nbbaier/iframeHandler";
5import { resetStyle } from "https://esm.town/v/nbbaier/resetStyle";
16import { verifyToken } from "https://esm.town/v/pomdtr/verifyToken";
17import { ResultSet, sqlite } from "https://esm.town/v/std/sqlite";
18import { reloadOnSaveFetchMiddleware } from "https://esm.town/v/stevekrouse/reloadOnSave";
19import { Hono } from "npm:hono";
20import type { FC } from "npm:hono/jsx";
175});
176
177export const handler = app.fetch;
178export default iframeHandler(modifyFetchHandler(passwordAuth(handler, { verifyPassword: verifyToken })));
150 };
151
152 const res = await fetch(logMoodUrl, {
153 method: "POST",
154 headers: { "Content-Type": "application/json" },
169 async function loadLogs() {
170 logList.innerHTML = "Loading...";
171 const res = await fetch(getMoodLogUrl);
172 const data = await res.json();
173
81 const reason = document.getElementById("reason").value;
82
83 const res = await fetch(logMoodUrl, {
84 method: "POST",
85 headers: { "Content-Type": "application/json" },
98 async function loadLogs() {
99 logList.innerHTML = "Loading...";
100 const res = await fetch(getMoodLogUrl);
101 const data = await res.json();
102
27});
28
29export default app.fetch;
30
221
222 // Inject data to avoid extra round-trips
223 const initialData = await fetchInitialData();
224 const dataScript = `<script>
225 window.__INITIAL_DATA__ = ${JSON.stringify(initialData)};
268
2695. **API Design:**
270 - `fetch` handler is the entry point for HTTP vals
271 - Run the Hono app with `export default app.fetch // This is the entry point for HTTP vals`
272
2736. **Hono Peculiarities:**
21});
22
23// HTTP vals expect an exported "fetch handler"
24// This is how you "run the server" in Val Town with Hono
25export default app.fetch;
36 return new Response(null, { status: 200 });
37});
38export default app.fetch;
19 : Math.floor((Date.now() - 2 * 24 * 60 * 60 * 1000) / 1000);
20
21 // Fetch and log tweets
22 const response = await socialDataSearch(`${query} since_time:${timeFrame}`);
23 console.log("Response from socialDataSearch:", response);
235});
236
237export default app.fetch;
44});
45
46export default app.fetch;
47