Something went wrong. Try again.
Schedule posts and reposts to Bluesky (and other PDSes) with Cloudflare workers. skyscheduler.work
scheduling social-media cloudflare bsky service cloudflare-workers bsky-tool bluesky
Something went wrong. Try again.
975 B · 21 lines
TypeScript
at main
123456789101112131415161718192021import * as z from "zod/v4";import { BSKY_MAX_APP_PASSWORD_LENGTH, BSKY_MAX_USERNAME_LENGTH, BSKY_MIN_USERNAME_LENGTH, MAX_DASHBOARD_PASS, MIN_DASHBOARD_PASS} from "../limits";import { appPasswordRegex, domainRegexCheck } from "./regexCases";
export const UsernameDefinition = z.string().trim().toLowerCase() .min(BSKY_MIN_USERNAME_LENGTH, "username too short") .max(BSKY_MAX_USERNAME_LENGTH, "username too long") .regex(domainRegexCheck, "username should be in a format like username.bsky.social or a domain");
export const PasswordDefinition = z.string().trim() .nonempty("password is missing") .min(MIN_DASHBOARD_PASS, "password too short") .max(MAX_DASHBOARD_PASS, "password too long");
export const AppPasswordDefinition = z.string().trim() .nonempty("missing bsky app password") .max(BSKY_MAX_APP_PASSWORD_LENGTH, "app password too long") .regex(appPasswordRegex, "invalid app password, recreate a new app password from your bsky settings");