5const baseUrl = "agave-astro.netlify.app";
6
7export default async function(req: Request): Promise<Response> {
8 if (req.method === "POST") {
9 const comment = await req.json() as Comment;
33- [x] fix wonky sidebar separator height problem (thanks to @stevekrouse)
34- [x] make result tables scrollable
35- [x] add export to CSV, and JSON (CSV and JSON helper functions written in [this val](https://www.val.town/v/nbbaier/sqliteExportHelpers). Thanks to @pomdtr for merging the initial version!)
36- [x] add listener for cmd+enter to submit query
125});
126
127async function getToken(c) {
128 const state = c.req.query("state") as string;
129 const authData = await db.select().from(table).where(eq(table.id, state)).limit(1);
6let linkClass = "text-sky-600 hover:text-sky-500";
7
8export default function FAQ(c) {
9 return c.html(
10 <Layout activeTab={new URL(c.req.url).pathname}>
33- [x] fix wonky sidebar separator height problem (thanks to @stevekrouse)
34- [x] make result tables scrollable
35- [x] add export to CSV, and JSON (CSV and JSON helper functions written in [this val](https://www.val.town/v/nbbaier/sqliteExportHelpers). Thanks to @pomdtr for merging the initial version!)
36- [x] add listener for cmd+enter to submit query
3
4
5export async function processTextInChunks(inputText, processFn = async (text) => console.log(text), config = {}) {
6 const {
7 chunkLength = 1000,
49
50// just gives information about the chunks; doesn't actually do anything!
51export function preprocessTextChunks(inputText, config = {}) {
52 const {
53 chunkLength = 1000,
1async function getWikipediaInfo(url: string) {
2 // Extract the title from the URL
3 const title = url.split("/wiki/")[1];
25}
26
27export default async function(req: Request): Promise<Response> {
28 const url = new URL(req.url);
29 const path = url.pathname.replace(/^\/proxy/, "");
51 ${ogMetaTags}
52 <script type="text/javascript">
53 setTimeout(function() {
54 window.location.href = "${wikipediaUrl}";
55 }, 0);
1export default async function(req: Request): Promise<Response> {
2 const jsFile = `
3 class RegisterForEvent extends HTMLElement {
1I track how much time I work in a week in a note. This function takes that unstructured format and calculates how much time I work each day and week.
2
3The input looks like:
7const DISCORD_WEBSOCKET_URL = process.env.DISCORD_WEBSOCKET_URL;
8
9export default async function(interval: Interval) {
10 if (!STEAM_WEB_API_KEY || !STEAM_ID || !DISCORD_WEBSOCKET_URL) {
11 throw new Error("STEAM_WEB_API_KEY, STEAM_ID or DISCORD_WEBSOCKET_URL not set");
Simple functional CSS library for Val Town
A helper function to build a file's email
import { OpenAI } from "https://esm.town/v/std/openai";
export default async function(req: Request): Promise<Response> {
if (req.method === "OPTIONS") {
return new Response(null, {
headers: {
"Access-Control-Allow-Origin": "*",
LangChain (https://langchain.com) Ambassador, KubeSphere (https://kubesphere.io) Ambassador, CNCF OpenFunction (https://openfunction.dev) TOC Member.