Close #25, no more regex for standard emojis. Instead, compare against list of all Emoji 13.1 emojis

This commit is contained in:
Zeva Rose 2021-07-04 09:18:02 -06:00
parent 6638350bdf
commit 37335dfc86
20 changed files with 98 additions and 79 deletions

View file

@ -1,16 +1,18 @@
from pathlib import Path
import pymongo
import asyncio
from datetime import datetime, timedelta
from discord import Intents, Member, Message, DMChannel
from pathlib import Path
import pymongo
from discord import DMChannel, Intents, Member, Message
from discord.ext import commands
from discord.ext.tasks import loop
from discord.utils import find, get
from discord_slash import SlashCommand
from psutil import Process
import asyncio
from jarvis import logo, utils
from jarvis.config import get_config
from jarvis.utils.db import DBManager
from jarvis import utils, logo
if asyncio.get_event_loop().is_closed():
asyncio.set_event_loop(asyncio.new_event_loop())

View file

@ -1,12 +1,14 @@
import jarvis
import pymongo
import re
from datetime import datetime, timedelta
from discord import User, Member
import pymongo
from discord import Member, User
from discord.ext import commands
from discord.utils import get, find
from discord_slash import cog_ext, SlashContext
from discord_slash.utils.manage_commands import create_option, create_choice
from discord.utils import find, get
from discord_slash import SlashContext, cog_ext
from discord_slash.utils.manage_commands import create_choice, create_option
import jarvis
from jarvis.utils.db import DBManager
from jarvis.utils.permissions import admin_or_permissions

View file

@ -1,12 +1,15 @@
import jarvis
import re
from datetime import datetime
from discord import TextChannel
from discord.ext import commands
from discord.utils import find
from discord_slash import cog_ext
from discord_slash.utils.manage_commands import create_option
import jarvis
from jarvis.config import get_config
from jarvis.data.unicode import emoji_list
from jarvis.utils.db import DBManager
@ -15,10 +18,7 @@ class AutoReactCog(commands.Cog):
self.bot = bot
config = get_config()
self.db = DBManager(config.mongo).mongo
self.custom_emote = re.compile(r"^<:.*:([0-9]+)>$")
self.standard_emote = re.compile(
r"^[\U0001F100-\U000E007F]{0,}[\u200d-\ufe0f]{0,}?[\U0001F100-\U000E007F]{0,}?$"
)
self.custom_emote = re.compile(r"^<:\w+:(\d+)>$")
@cog_ext.cog_subcommand(
base="autoreact",
@ -98,8 +98,9 @@ class AutoReactCog(commands.Cog):
)
@commands.has_permissions(administrator=True)
async def _autoreact_add(self, ctx, channel: TextChannel, emote: str):
await ctx.defer()
custom_emoji = self.custom_emote.match(emote)
standard_emoji = self.standard_emote.match(emote)
standard_emoji = emote in emoji_list
if not custom_emoji and not standard_emoji:
await ctx.send(
"Please use either an emote from this server"

View file

@ -1,7 +1,8 @@
import aiohttp
import jarvis
from discord.ext import commands
from discord_slash import cog_ext
import jarvis
from jarvis.config import get_config
from jarvis.utils.db import DBManager

View file

@ -1,9 +1,11 @@
import aiohttp
import jarvis
import re
import aiohttp
from discord.ext import commands
from discord_slash import cog_ext
from discord_slash.utils.manage_commands import create_option
import jarvis
from jarvis.config import get_config
from jarvis.data.dbrand import shipping_lookup
from jarvis.utils import build_embed

View file

@ -1,23 +1,24 @@
import base64
import discord
import hashlib
import jarvis
import os
import re
import subprocess
import sys
import traceback
import ulid
import uuid
from inspect import getsource
from time import time
import discord
import ulid
from bson import ObjectId
from discord.ext import commands
from discord_slash import cog_ext
from inspect import getsource
import jarvis
from jarvis.utils import build_embed, convert_bytesize
from jarvis.utils.field import Field
from jarvis.utils.permissions import user_is_bot_admin
from time import time
supported_hashes = {
x for x in hashlib.algorithms_guaranteed if "shake" not in x

View file

@ -1,6 +1,7 @@
import jarvis
from discord.ext import commands
import jarvis
class ErrorHandlerCog(commands.Cog):
def __init__(self, bot):

View file

@ -1,12 +1,14 @@
import re
from io import BytesIO
import aiohttp
import cv2
import jarvis
import numpy as np
import re
from discord import File
from discord.ext import commands
from io import BytesIO
from jarvis.utils import convert_bytesize, unconvert_bytesize, build_embed
import jarvis
from jarvis.utils import build_embed, convert_bytesize, unconvert_bytesize
from jarvis.utils.field import Field

View file

@ -1,15 +1,17 @@
import discord
import html
import jarvis
import re
import traceback
from datetime import datetime
from random import randint
import discord
from discord.ext import commands
from discord_slash import cog_ext
import jarvis
from jarvis.utils import build_embed
from jarvis.utils.db import DBManager
from jarvis.utils.field import Field
from random import randint
class JokeCog(commands.Cog):

View file

@ -1,9 +1,10 @@
import discord
import jarvis
from discord import User
from discord.ext import commands
import jarvis
from jarvis.config import get_config, reload_config
from jarvis.utils import update, db
from jarvis.utils import db, update
from jarvis.utils.permissions import user_is_bot_admin

View file

@ -1,9 +1,10 @@
import discord
import jarvis
from discord import Role, TextChannel
from discord.ext import commands
from discord_slash import cog_ext
from discord_slash.utils.manage_commands import create_option
import jarvis
from jarvis.config import get_config
from jarvis.utils import db
from jarvis.utils.permissions import admin_or_permissions

View file

@ -1,12 +1,14 @@
import aiohttp
import jarvis
from datetime import datetime
import aiohttp
import discord
from discord import TextChannel, Message
from discord import Message, TextChannel
from discord.ext import commands
from discord.utils import find
from discord_slash import cog_ext, SlashContext
from discord_slash import SlashContext, cog_ext
from discord_slash.utils.manage_commands import create_option
import jarvis
from jarvis.config import get_config
from jarvis.utils import build_embed
from jarvis.utils.db import DBManager

View file

@ -1,8 +1,9 @@
import jarvis
from discord.ext import commands
from discord_slash import cog_ext
from jarvis import jarvis_self, config, logo
from jarvis.utils import convert_bytesize, build_embed, get_repo_hash
import jarvis
from jarvis import config, jarvis_self, logo
from jarvis.utils import build_embed, convert_bytesize, get_repo_hash
from jarvis.utils.field import Field
@ -17,6 +18,11 @@ class UtilCog(commands.Cog):
self.bot = bot
self.config = config.get_config()
@cog_ext.cog_slash(
name="status",
description="Retrieve J.A.R.V.I.S. status",
guild_ids=[578757004059738142],
)
async def _status(self, ctx):
title = "J.A.R.V.I.S. Status"
desc = "All systems online"
@ -38,35 +44,14 @@ class UtilCog(commands.Cog):
)
await ctx.send(embed=embed)
@cog_ext.cog_slash(
name="status",
description="Retrieve J.A.R.V.I.S. status",
guild_ids=[578757004059738142],
)
async def _status_slash(self, ctx):
await self._status(ctx)
@commands.command(
name="status", description="Retrieve J.A.R.V.I.S. status"
)
async def _status_pre(self, ctx):
await self._status(ctx)
async def _logo(self, ctx):
lo = logo.get_logo(self.config.logo)
await ctx.send(f"```\n{lo}\n```")
@commands.command(name="logo", help="Get the current logo")
async def _logo_pre(self, ctx):
await self._logo(ctx)
@cog_ext.cog_slash(
name="logo",
description="Get the current logo",
guild_ids=[578757004059738142],
)
async def _logo_slash(self, ctx):
await self._logo(ctx)
async def _logo(self, ctx):
lo = logo.get_logo(self.config.logo)
await ctx.send(f"```\n{lo}\n```")
def setup(bot):

View file

@ -1,4 +1,5 @@
from yaml import load
from jarvis.utils.db import DBManager
try:

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

8
jarvis/data/unicode.py Normal file
View file

@ -0,0 +1,8 @@
import json
from os import sep as s
with open(f"json{s}emoji_list.json", encoding="UTF8") as f:
emoji_list = json.load(f)
with open(f"json{s}emoji_data.json", encoding="UTF8") as f:
emoji_data = json.load(f)

View file

@ -1,11 +1,13 @@
from discord.ext import commands
from discord import Embed, Color
from pkgutil import iter_modules
from datetime import datetime
import jarvis.cogs
import jarvis.utils.db
import jarvis.config
from pkgutil import iter_modules
import git
from discord import Color, Embed
from discord.ext import commands
import jarvis.cogs
import jarvis.config
import jarvis.utils.db
__all__ = ["field", "db"]

View file

@ -1,6 +1,7 @@
import jarvis
from discord.ext import commands
import jarvis
def user_is_bot_admin():
def predicate(ctx):

10
run.py
View file

@ -1,11 +1,13 @@
#!/bin/python3
import jarvis
import git
from pathlib import Path
from multiprocessing import Value, Process, freeze_support
from importlib import reload as ireload
from multiprocessing import Process, Value, freeze_support
from pathlib import Path
from time import sleep
import git
import jarvis
def run():
ctx = None