1import enhance from "jsr:@enhance/ssr";
2
3export default async function() {
4 let html = enhance({
5 elements: {
6 "my-tag": function({ html }) {
7 return html`<b><slot></slot></b>`;
8 },
6run();
7
8async function run() {
9 if (!import.meta.main) return;
10
42}
43
44export function transform(code: string, { typescript = false } = {}) {
45 const parserOptions: Partial<recast.Options> = {};
46
125}
126
127function removeMochaGlobal(
128 path: NodePath,
129 tapImportIdentifier: string,
161}
162
163function makeBlocksAsync(
164 path: NodePath,
165 {
188
189 const fnNode = path.node.arguments[1];
190 makeFunctionNodeAsync(fnNode, { asserts });
191 awaitNestedStatements(path, { asserts, builder });
192
194}
195
196function makeFunctionNodeAsync(
197 node: any,
198 {
204 if (
205 !(
206 asserts.ArrowFunctionExpression.check(node) ||
207 asserts.FunctionExpression.check(node)
208 )
209 ) {
214}
215
216function awaitNestedStatements(
217 path: NodePath,
218 {
1# Notehub
2
3A set of helper functions for interacting with the Notehub API
4
5Requires `NOTEHUB_CLIENT_ID` and `NOTEHUB_CLIENT_SECRET` [environment variables](https://www.val.town/settings/environment-variables) to be configured.
1export function sleep(milliseconds = 3000) {
2 return new Promise(resolve => setTimeout(resolve, milliseconds));
3}
1export function sleep(milliseconds = 3000) {
2 return new Promise(resolve => setTimeout(resolve, milliseconds));
3}
1/** round with abitrary decimal precision */
2export function round(number: number, precision = 5) {
3 return Math.round(number * Math.pow(10, precision)) / Math.pow(10, precision);
4}
4import { currency } from "https://esm.town/v/stevekrouse/currency";
5
6export async function btcPriceAlert() {
7 const lastBtcPrice: number = await blob.getJSON("lastBtcPrice");
8
5// Sends an email with all the open PRs that have not had any activity
6// for specified period of days
7// Set up this function to run every day (or any interval)
8export async function staleGithubPRsEmail() {
9 // Set up a secret named githubRepos with all the repos you want to analyze (comma separated)
10 let repos = Deno.env.get("githubRepos")?.split(",").filter((r) => r.trim()) ?? [];
3import { readmeToHtmlResponse } from "https://esm.town/v/pomdtr/readme";
4
5async function createScreenshot(code: string) {
6 const apiUrl = "https://sourcecodeshots.com/api/image";
7 const resp = await fetch(apiUrl, {
19}
20
21export default async function(req: Request) {
22 const url = new URL(req.url);
23 const [author, file] = url.pathname.slice(1).split("/");
1// View at https://andreterron-htmlExample.web.val.run?name=Andre
2export default async function(req: Request): Promise<Response> {
3 const query = new URL(req.url).searchParams;
4
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.