3
4const found = new Set();
5export async function tootLatestPosts(interval: Partial<Interval>) {
6 const { lastRunAt = "2023-04-04T00:00:00" } = interval || {};
7 const lastRunDate = new Date(lastRunAt);
25import { fetchText } from "https://esm.town/v/stevekrouse/fetchText";
26import { parseXML } from "https://esm.town/v/stevekrouse/parseXML";
27function fetchRSS(url) {
28 return fetchText(url)
29 .then(parseXML)
1/**
2 * Composes multiple functions into a single function that passes the result of each function to the next
3 *
4 * @param {...Function} funs The functions to compose
5 * @returns {Function} A function that represents the composed functions
6 */
7export const pipe = (...funs) =>
10};
11
12function err(msg): Response {
13 return new Response(
14 JSON.stringify({
28}
29
30export default async function(req: Request): Promise<Response> {
31 const url = new URL(req.url);
32 const pathname = url.pathname;
6};
7
8export default async function(req: Request): Promise<Response> {
9 // Check if the request is an OPTIONS request
10 if (req.method === "OPTIONS") {
2
3// Retrieves the URL, and returns a hash of its contents.
4export async function getHashForUrl(url: string): Promise<string> {
5 // Fetch the content from the URL
6 const response = await fetch(url);
2
3/**
4 * Wraps the JavaScript Fetch function to anonymize where the request is
5 * coming from ([Docs ↗](https://docs.val.town/std/fetch))
6 *
9 * method, headers, etc) ([Docs ↗](https://deno.land/api@v1.42.1?s=RequestInit))
10 */
11export async function fetch(input: string | URL | Request, requestInit?: RequestInit) {
12 const origReq = new Request(input, requestInit);
13 const url = new URL("/v1/fetch", API_URL);
2
3/**
4 * Wraps the JavaScript Fetch function to anonymize where the request is
5 * coming from ([Docs ↗](https://docs.val.town/std/fetch))
6 *
9 * method, headers, etc) ([Docs ↗](https://deno.land/api@v1.42.1?s=RequestInit))
10 */
11export async function fetch(input: string | URL | Request, requestInit?: RequestInit) {
12 const origReq = new Request(input, requestInit);
13 const url = new URL("/v1/fetch", API_URL);
3import { email } from "https://esm.town/v/std/email?v=12";
4
5export default async function(interval: Interval) {
6 const dynamiclandWebsiteHash = await blob.getJSON("dynamiclandWebsiteHash");
7 const newHash = await getHashForUrl("https://dynamicland.org/");
3
4// Retrieves the URL, and returns a hash of its contents.
5export async function getHashForUrl(url: string): Promise<string> {
6 // Fetch the content from the URL
7 const response = await fetch(url);
31
32// ------------
33// Functions
34// ------------
35
36async function execute(statement: InStatement): Promise<ResultSet> {
37 const res = await fetch(`${API_URL}/v1/sqlite/execute`, {
38 method: "POST",
48}
49
50async function batch(statements: InStatement[], mode?: TransactionMode): Promise<ResultSet[]> {
51 const res = await fetch(`${API_URL}/v1/sqlite/batch`, {
52 method: "POST",
62}
63
64function createResError(body: string) {
65 try {
66 const e = zLibsqlError.parse(JSON.parse(body));
113 *
114 * The types are currently shown for types declared in a SQL table. For
115 * column types of function calls, for example, an empty string is
116 * returned.
117 */
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.