From deed8e64360c93845c1ff3b4a8fca3bd78eb06d6 Mon Sep 17 00:00:00 2001 From: Naomi Carrigan Date: Fri, 7 Mar 2025 11:55:11 -0800 Subject: [PATCH] fix: forgot to gitignore prod --- .gitignore | 1 + prod/index.js | 62 ------------------------------------ prod/server/serve.js | 72 ------------------------------------------ prod/utils/getMommy.js | 20 ------------ prod/utils/logger.js | 7 ---- 5 files changed, 1 insertion(+), 161 deletions(-) delete mode 100644 prod/index.js delete mode 100644 prod/server/serve.js delete mode 100644 prod/utils/getMommy.js delete mode 100644 prod/utils/logger.js diff --git a/.gitignore b/.gitignore index 3c3629e..f1b1d71 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1,2 @@ node_modules +prod diff --git a/prod/index.js b/prod/index.js deleted file mode 100644 index 2c6a123..0000000 --- a/prod/index.js +++ /dev/null @@ -1,62 +0,0 @@ -/** - * @copyright nhcarrigan - * @license Naomi's Public License - * @author Naomi Carrigan - */ -import { AtpAgent } from "@atproto/api"; -import pkg from "@slack/bolt"; -import { Client, Events } from "discord.js"; -import { scheduleJob } from "node-schedule"; -import { serve } from "./server/serve.js"; -import { getMommy } from "./utils/getMommy.js"; -import { logger } from "./utils/logger.js"; -const { App, FileInstallationStore } = pkg; -const discord = new Client({ intents: [] }); -discord.on(Events.ClientReady, () => { - void logger.log("info", "Connected to Discord!"); -}); -// eslint-disable-next-line @typescript-eslint/no-misused-promises -- This is intentional. -discord.on(Events.InteractionCreate, async (interaction) => { - if (!interaction.isChatInputCommand()) { - return; - } - await interaction.deferReply(); - const name = interaction.options.getString("name"); - const response = await getMommy(name ?? undefined); - await interaction.editReply(response); -}); -const slack = new App({ - clientId: process.env.SLACK_CLIENT_ID ?? "", - clientSecret: process.env.SLACK_CLIENT_SECRET ?? "", - installationStore: new FileInstallationStore(), - installerOptions: { - directInstall: true, - }, - scopes: ["commands", "chat:write"], - signingSecret: process.env.SLACK_SIGNING_SECRET ?? "", - stateSecret: process.env.SLACK_STATE_SECRET ?? "", -}); -slack.command("/mommy", async ({ ack, body, respond }) => { - await ack(); - const response = await getMommy(body.text); - await respond(response); -}); -const bsky = new AtpAgent({ - service: "https://bsky.social", -}); -await discord.login(process.env.DISCORD_TOKEN); -await slack.start(8010); -await logger.log("info", "Connected to Slack!"); -await bsky.login({ - identifier: "mommy.naomi.party", - password: process.env.BSKY_PASSWORD ?? "", -}); -await logger.log("info", "Connected to bsky.social!"); -scheduleJob("0 9 * * *", async () => { - const response = await getMommy(); - await bsky.post({ - text: response, - }); - await logger.log("info", "Posted to bsky.social!"); -}); -serve(); diff --git a/prod/server/serve.js b/prod/server/serve.js deleted file mode 100644 index eaca509..0000000 --- a/prod/server/serve.js +++ /dev/null @@ -1,72 +0,0 @@ -/** - * @copyright nhcarrigan - * @license Naomi's Public License - * @author Naomi Carrigan - */ -import fastify from "fastify"; -import { logger } from "../utils/logger.js"; -const html = ` - - - Mommy Bot - - - - - - -
-

Mommy Bot

-
-

Mommy loves you~!

- Add to Slack -
-
-

Links

-

- - Source Code - -

-

- - Documentation - -

-

- - Support - -

-
-
- -`; -/** - * Starts up a web server for health monitoring. - */ -export const serve = () => { - try { - const server = fastify({ - logger: false, - }); - server.get("/", (_request, response) => { - response.header("Content-Type", "text/html"); - response.send(html); - }); - server.listen({ port: 8009 }, (error) => { - if (error) { - void logger.error("instantiate server", error); - return; - } - void logger.log("debug", "Server listening on port 8009."); - }); - } - catch (error) { - if (error instanceof Error) { - void logger.error("instantiate server", error); - return; - } - void logger.error("instantiate server", new Error("Unknown error")); - } -}; diff --git a/prod/utils/getMommy.js b/prod/utils/getMommy.js deleted file mode 100644 index 503aac0..0000000 --- a/prod/utils/getMommy.js +++ /dev/null @@ -1,20 +0,0 @@ -/** - * @copyright nhcarrigan - * @license Naomi's Public License - * @author Naomi Carrigan - */ -import { isProfane } from "no-profanity"; -/** - * Fetches a mommy quote from the API. - * @param name - The user's name, if provided. - * @returns The mommy quote. - */ -export const getMommy = async (name = "dear") => { - const finalName = isProfane(name) - ? "dear" - : name; - const url = `https://mommy.nhcarrigan.com/api?name=${finalName}`; - const request = await fetch(url); - const response = await request.text(); - return response; -}; diff --git a/prod/utils/logger.js b/prod/utils/logger.js deleted file mode 100644 index 59fcfba..0000000 --- a/prod/utils/logger.js +++ /dev/null @@ -1,7 +0,0 @@ -/** - * @copyright nhcarrigan - * @license Naomi's Public License - * @author Naomi Carrigan - */ -import { Logger } from "@nhcarrigan/logger"; -export const logger = new Logger("Mommy", process.env.LOG_TOKEN ?? "");