12};
13
14export async function migrate(migrations) {
15 console.log("Running Migrations");
16 await sqlite.execute(`
52}
53
54export async function undo(migrations) {
55 console.log("Undoing Migrations");
56 await sqlite.execute(`
6const query = "buttondown";
7
8export async function twitterSearch({
9 query,
10 start_time,
52}
53
54export default async function twitterAlert({ lastRunAt }: Interval) {
55 const results = await twitterSearch({
56 query,
1function extractToken(authorization) {
2 const parts = authorization.split(" ");
3 if (parts[0] == "Bearer") {
18};
19
20async function fetchUser(token: string): Promise<User> {
21 const resp = await fetch("https://api.val.town/v1/me", {
22 headers: {
32}
33
34async function isTokenValid(token) {
35 try {
36 const [visitor, owner] = await Promise.all([fetchUser(token), fetchUser(Deno.env.get("valtown"))]);
41}
42
43async function isRequestAuthenticated(req) {
44 if (!req.headers.has("authorization")) {
45 return false;
50}
51
52export function basicAuth(next: (Request) => Response | Promise<Response>) {
53 return async (req: Request) => {
54 if (req.headers.get("referer") == "https://www.val.town/") {
10import { basicAuth } from "https://esm.town/v/pomdtr/basicAuth";
11
12function handler(req: Request) {
13 return new Response("You are authenticated!");
14}
2import process from "node:process";
3
4export async function setSFTidbytImage({ image, key }: {
5 image: string;
6 key: string;
2
3// Fetches a random joke.
4async function fetchRandomJoke() {
5 const response = await fetch(
6 "https://official-joke-api.appspot.com/random_joke",
1import { text2png } from "https://esm.town/v/nilslice/libtext2png";
2
3export default async function(req: Request): Promise<Response> {
4 const img = await text2png("Just give me the PNG", "magenta", 30); // returns a `Blob`
5 return new Response(img, {
1export default async function (req: Request): Promise<Response> {
2 return Response.json({ ok: true })
3}
3import { renderToString } from "npm:solid-js/web";
4
5function StlViewer() {
6 return (
7 <StlViewer
3}
4
5export function fav(request: Request) {
6 const url = new URL(request.url);
7 if (url.pathname === "/")
A helper function to build a file's email
Simple functional CSS library for Val Town
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.