diff --git a/.github/workflows/docker-image.yml b/.github/workflows/docker-image.yml index 36aadf5..53a45c2 100644 --- a/.github/workflows/docker-image.yml +++ b/.github/workflows/docker-image.yml @@ -1,16 +1,11 @@ name: Docker Image CI on: - schedule: - - cron: "0 10 * * *" push: - branches: - - "**" - tags: - - "v*.*.*" - pull_request: branches: - "main" + tags: + - "*.*.*" jobs: docker: diff --git a/.vscode/extensions.json b/.vscode/extensions.json index 65197a8..070efb6 100644 --- a/.vscode/extensions.json +++ b/.vscode/extensions.json @@ -3,50 +3,30 @@ // Extension identifier format: ${publisher}.${name}. Example: vscode.csharp // List of extensions which should be recommended for users of this workspace. "recommendations": [ - "abrahamwilliam007.es7-javascript-class-snippets", + "nicoespeon.abracadabra", + "mgmcdermott.vscode-language-babel", + "aaron-bond.better-comments", + "streetsidesoftware.code-spell-checker", + "adpyke.codesnap", + "mikestead.dotenv", + "mateuszdrewniak.theme-dracula-dark-plus", + "irongeek.vscode-env", + "dbaeumer.vscode-eslint", + "dracula-theme.theme-dracula", + "mhutchie.git-graph", + "donjayamanne.githistory", + "github.github-vscode-theme", + "eamodio.gitlens", + "vtrois.gitmoji-vscode", + "xabikos.javascriptsnippets", "christian-kohler.npm-intellisense", "christian-kohler.path-intellisense", - "dbaeumer.vscode-eslint", - "donjayamanne.githistory", - "eamodio.gitlens", - "esbenp.prettier-vscode", - "github.github-vscode-theme", - "irongeek.vscode-env", - "xabikos.javascriptsnippets", - "wix.vscode-import-cost", - "vscode-icons-team.vscode-icons", - "visualstudioexptteam.vscodeintellicode", - "teledemic.branch-warnings", - "tabnine.tabnine-vscode", - "streetsidesoftware.code-spell-checker", - "seatonjiang.gitmoji-vscode", - "sburg.vscode-javascript-booster", - "kisstkondoros.vscode-codemetrics", - "mgmcdermott.vscode-language-babel", - "mhutchie.git-graph", - "mikestead.dotenv", - "mongodb.mongodb-vscode", - "ms-vscode-remote.remote-wsl-recommender", - "ms-vscode.js-debug", - "ms-vscode.js-debug-companion", - "ms-vscode.references-view", - "ms-vscode.vscode-js-profile-table", - "pflannery.vscode-versionlens", - "adpyke.codesnap", - "anan.devdocstab", - "axosoft.gitkraken-glo", - "gruntfuggly.todo-tree", - "kiteco.kite", - "lkytal.pomodoro", - "wayou.vscode-todo-highlight", "johnpapa.vscode-peacock", - "stepsize.stepsize", - "nicoespeon.abracadabra", - "sonarsource.sonarlint-vscode", - "nicoespeon.hocus-pocus", - "aaron-bond.better-comments", - "oouo-diogo-perdigao.docthis", - "Vtrois.gitmoji-vscode" + "esbenp.prettier-vscode", + "wayou.vscode-todo-highlight", + "gruntfuggly.todo-tree", + "pflannery.vscode-versionlens", + "vscode-icons-team.vscode-icons" ], // List of extensions recommended by VS Code that should not be recommended for users of this workspace. "unwantedRecommendations": [] diff --git a/src/helpers/upsertGuildMember/index.ts b/src/helpers/upsertGuildMember/index.ts new file mode 100644 index 0000000..22a90a2 --- /dev/null +++ b/src/helpers/upsertGuildMember/index.ts @@ -0,0 +1,38 @@ +import { GuildMember } from "discord.js"; +import db from "../../handlers/database"; + +export default async (guildMember: GuildMember) => { + const { guild, user } = guildMember; + + return await db.guildMember.upsert({ + where: { + userId_guildId: { + userId: user.id, + guildId: guild.id, + }, + }, + update: {}, + create: { + user: { + connectOrCreate: { + create: { + id: user.id, + }, + where: { + id: user.id, + }, + }, + }, + guild: { + connectOrCreate: { + create: { + id: guild.id, + }, + where: { + id: guild.id, + }, + }, + }, + }, + }); +};