Close #25, no more regex for standard emojis. Instead, compare against list of all Emoji 13.1 emojis
This commit is contained in:
parent
6638350bdf
commit
37335dfc86
20 changed files with 98 additions and 79 deletions
|
@ -1,16 +1,18 @@
|
||||||
from pathlib import Path
|
import asyncio
|
||||||
import pymongo
|
|
||||||
from datetime import datetime, timedelta
|
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 import commands
|
||||||
from discord.ext.tasks import loop
|
from discord.ext.tasks import loop
|
||||||
from discord.utils import find, get
|
from discord.utils import find, get
|
||||||
from discord_slash import SlashCommand
|
from discord_slash import SlashCommand
|
||||||
from psutil import Process
|
from psutil import Process
|
||||||
import asyncio
|
|
||||||
|
from jarvis import logo, utils
|
||||||
from jarvis.config import get_config
|
from jarvis.config import get_config
|
||||||
from jarvis.utils.db import DBManager
|
from jarvis.utils.db import DBManager
|
||||||
from jarvis import utils, logo
|
|
||||||
|
|
||||||
if asyncio.get_event_loop().is_closed():
|
if asyncio.get_event_loop().is_closed():
|
||||||
asyncio.set_event_loop(asyncio.new_event_loop())
|
asyncio.set_event_loop(asyncio.new_event_loop())
|
||||||
|
|
|
@ -1,12 +1,14 @@
|
||||||
import jarvis
|
|
||||||
import pymongo
|
|
||||||
import re
|
import re
|
||||||
from datetime import datetime, timedelta
|
from datetime import datetime, timedelta
|
||||||
from discord import User, Member
|
|
||||||
|
import pymongo
|
||||||
|
from discord import Member, User
|
||||||
from discord.ext import commands
|
from discord.ext import commands
|
||||||
from discord.utils import get, find
|
from discord.utils import find, get
|
||||||
from discord_slash import cog_ext, SlashContext
|
from discord_slash import SlashContext, cog_ext
|
||||||
from discord_slash.utils.manage_commands import create_option, create_choice
|
from discord_slash.utils.manage_commands import create_choice, create_option
|
||||||
|
|
||||||
|
import jarvis
|
||||||
from jarvis.utils.db import DBManager
|
from jarvis.utils.db import DBManager
|
||||||
from jarvis.utils.permissions import admin_or_permissions
|
from jarvis.utils.permissions import admin_or_permissions
|
||||||
|
|
||||||
|
|
|
@ -1,12 +1,15 @@
|
||||||
import jarvis
|
|
||||||
import re
|
import re
|
||||||
from datetime import datetime
|
from datetime import datetime
|
||||||
|
|
||||||
from discord import TextChannel
|
from discord import TextChannel
|
||||||
from discord.ext import commands
|
from discord.ext import commands
|
||||||
from discord.utils import find
|
from discord.utils import find
|
||||||
from discord_slash import cog_ext
|
from discord_slash import cog_ext
|
||||||
from discord_slash.utils.manage_commands import create_option
|
from discord_slash.utils.manage_commands import create_option
|
||||||
|
|
||||||
|
import jarvis
|
||||||
from jarvis.config import get_config
|
from jarvis.config import get_config
|
||||||
|
from jarvis.data.unicode import emoji_list
|
||||||
from jarvis.utils.db import DBManager
|
from jarvis.utils.db import DBManager
|
||||||
|
|
||||||
|
|
||||||
|
@ -15,10 +18,7 @@ class AutoReactCog(commands.Cog):
|
||||||
self.bot = bot
|
self.bot = bot
|
||||||
config = get_config()
|
config = get_config()
|
||||||
self.db = DBManager(config.mongo).mongo
|
self.db = DBManager(config.mongo).mongo
|
||||||
self.custom_emote = re.compile(r"^<:.*:([0-9]+)>$")
|
self.custom_emote = re.compile(r"^<:\w+:(\d+)>$")
|
||||||
self.standard_emote = re.compile(
|
|
||||||
r"^[\U0001F100-\U000E007F]{0,}[\u200d-\ufe0f]{0,}?[\U0001F100-\U000E007F]{0,}?$"
|
|
||||||
)
|
|
||||||
|
|
||||||
@cog_ext.cog_subcommand(
|
@cog_ext.cog_subcommand(
|
||||||
base="autoreact",
|
base="autoreact",
|
||||||
|
@ -98,8 +98,9 @@ class AutoReactCog(commands.Cog):
|
||||||
)
|
)
|
||||||
@commands.has_permissions(administrator=True)
|
@commands.has_permissions(administrator=True)
|
||||||
async def _autoreact_add(self, ctx, channel: TextChannel, emote: str):
|
async def _autoreact_add(self, ctx, channel: TextChannel, emote: str):
|
||||||
|
await ctx.defer()
|
||||||
custom_emoji = self.custom_emote.match(emote)
|
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:
|
if not custom_emoji and not standard_emoji:
|
||||||
await ctx.send(
|
await ctx.send(
|
||||||
"Please use either an emote from this server"
|
"Please use either an emote from this server"
|
||||||
|
|
|
@ -1,7 +1,8 @@
|
||||||
import aiohttp
|
import aiohttp
|
||||||
import jarvis
|
|
||||||
from discord.ext import commands
|
from discord.ext import commands
|
||||||
from discord_slash import cog_ext
|
from discord_slash import cog_ext
|
||||||
|
|
||||||
|
import jarvis
|
||||||
from jarvis.config import get_config
|
from jarvis.config import get_config
|
||||||
from jarvis.utils.db import DBManager
|
from jarvis.utils.db import DBManager
|
||||||
|
|
||||||
|
|
|
@ -1,9 +1,11 @@
|
||||||
import aiohttp
|
|
||||||
import jarvis
|
|
||||||
import re
|
import re
|
||||||
|
|
||||||
|
import aiohttp
|
||||||
from discord.ext import commands
|
from discord.ext import commands
|
||||||
from discord_slash import cog_ext
|
from discord_slash import cog_ext
|
||||||
from discord_slash.utils.manage_commands import create_option
|
from discord_slash.utils.manage_commands import create_option
|
||||||
|
|
||||||
|
import jarvis
|
||||||
from jarvis.config import get_config
|
from jarvis.config import get_config
|
||||||
from jarvis.data.dbrand import shipping_lookup
|
from jarvis.data.dbrand import shipping_lookup
|
||||||
from jarvis.utils import build_embed
|
from jarvis.utils import build_embed
|
||||||
|
|
|
@ -1,23 +1,24 @@
|
||||||
import base64
|
import base64
|
||||||
import discord
|
|
||||||
import hashlib
|
import hashlib
|
||||||
import jarvis
|
|
||||||
import os
|
import os
|
||||||
import re
|
import re
|
||||||
import subprocess
|
import subprocess
|
||||||
import sys
|
import sys
|
||||||
import traceback
|
import traceback
|
||||||
import ulid
|
|
||||||
import uuid
|
import uuid
|
||||||
|
from inspect import getsource
|
||||||
|
from time import time
|
||||||
|
|
||||||
|
import discord
|
||||||
|
import ulid
|
||||||
from bson import ObjectId
|
from bson import ObjectId
|
||||||
from discord.ext import commands
|
from discord.ext import commands
|
||||||
from discord_slash import cog_ext
|
from discord_slash import cog_ext
|
||||||
from inspect import getsource
|
|
||||||
|
import jarvis
|
||||||
from jarvis.utils import build_embed, convert_bytesize
|
from jarvis.utils import build_embed, convert_bytesize
|
||||||
from jarvis.utils.field import Field
|
from jarvis.utils.field import Field
|
||||||
from jarvis.utils.permissions import user_is_bot_admin
|
from jarvis.utils.permissions import user_is_bot_admin
|
||||||
from time import time
|
|
||||||
|
|
||||||
|
|
||||||
supported_hashes = {
|
supported_hashes = {
|
||||||
x for x in hashlib.algorithms_guaranteed if "shake" not in x
|
x for x in hashlib.algorithms_guaranteed if "shake" not in x
|
||||||
|
|
|
@ -1,6 +1,7 @@
|
||||||
import jarvis
|
|
||||||
from discord.ext import commands
|
from discord.ext import commands
|
||||||
|
|
||||||
|
import jarvis
|
||||||
|
|
||||||
|
|
||||||
class ErrorHandlerCog(commands.Cog):
|
class ErrorHandlerCog(commands.Cog):
|
||||||
def __init__(self, bot):
|
def __init__(self, bot):
|
||||||
|
|
|
@ -1,12 +1,14 @@
|
||||||
|
import re
|
||||||
|
from io import BytesIO
|
||||||
|
|
||||||
import aiohttp
|
import aiohttp
|
||||||
import cv2
|
import cv2
|
||||||
import jarvis
|
|
||||||
import numpy as np
|
import numpy as np
|
||||||
import re
|
|
||||||
from discord import File
|
from discord import File
|
||||||
from discord.ext import commands
|
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
|
from jarvis.utils.field import Field
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -1,15 +1,17 @@
|
||||||
import discord
|
|
||||||
import html
|
import html
|
||||||
import jarvis
|
|
||||||
import re
|
import re
|
||||||
import traceback
|
import traceback
|
||||||
from datetime import datetime
|
from datetime import datetime
|
||||||
|
from random import randint
|
||||||
|
|
||||||
|
import discord
|
||||||
from discord.ext import commands
|
from discord.ext import commands
|
||||||
from discord_slash import cog_ext
|
from discord_slash import cog_ext
|
||||||
|
|
||||||
|
import jarvis
|
||||||
from jarvis.utils import build_embed
|
from jarvis.utils import build_embed
|
||||||
from jarvis.utils.db import DBManager
|
from jarvis.utils.db import DBManager
|
||||||
from jarvis.utils.field import Field
|
from jarvis.utils.field import Field
|
||||||
from random import randint
|
|
||||||
|
|
||||||
|
|
||||||
class JokeCog(commands.Cog):
|
class JokeCog(commands.Cog):
|
||||||
|
|
|
@ -1,9 +1,10 @@
|
||||||
import discord
|
import discord
|
||||||
import jarvis
|
|
||||||
from discord import User
|
from discord import User
|
||||||
from discord.ext import commands
|
from discord.ext import commands
|
||||||
|
|
||||||
|
import jarvis
|
||||||
from jarvis.config import get_config, reload_config
|
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
|
from jarvis.utils.permissions import user_is_bot_admin
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -1,9 +1,10 @@
|
||||||
import discord
|
import discord
|
||||||
import jarvis
|
|
||||||
from discord import Role, TextChannel
|
from discord import Role, TextChannel
|
||||||
from discord.ext import commands
|
from discord.ext import commands
|
||||||
from discord_slash import cog_ext
|
from discord_slash import cog_ext
|
||||||
from discord_slash.utils.manage_commands import create_option
|
from discord_slash.utils.manage_commands import create_option
|
||||||
|
|
||||||
|
import jarvis
|
||||||
from jarvis.config import get_config
|
from jarvis.config import get_config
|
||||||
from jarvis.utils import db
|
from jarvis.utils import db
|
||||||
from jarvis.utils.permissions import admin_or_permissions
|
from jarvis.utils.permissions import admin_or_permissions
|
||||||
|
|
|
@ -1,12 +1,14 @@
|
||||||
import aiohttp
|
|
||||||
import jarvis
|
|
||||||
from datetime import datetime
|
from datetime import datetime
|
||||||
|
|
||||||
|
import aiohttp
|
||||||
import discord
|
import discord
|
||||||
from discord import TextChannel, Message
|
from discord import Message, TextChannel
|
||||||
from discord.ext import commands
|
from discord.ext import commands
|
||||||
from discord.utils import find
|
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
|
from discord_slash.utils.manage_commands import create_option
|
||||||
|
|
||||||
|
import jarvis
|
||||||
from jarvis.config import get_config
|
from jarvis.config import get_config
|
||||||
from jarvis.utils import build_embed
|
from jarvis.utils import build_embed
|
||||||
from jarvis.utils.db import DBManager
|
from jarvis.utils.db import DBManager
|
||||||
|
|
|
@ -1,8 +1,9 @@
|
||||||
import jarvis
|
|
||||||
from discord.ext import commands
|
from discord.ext import commands
|
||||||
from discord_slash import cog_ext
|
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
|
from jarvis.utils.field import Field
|
||||||
|
|
||||||
|
|
||||||
|
@ -17,6 +18,11 @@ class UtilCog(commands.Cog):
|
||||||
self.bot = bot
|
self.bot = bot
|
||||||
self.config = config.get_config()
|
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):
|
async def _status(self, ctx):
|
||||||
title = "J.A.R.V.I.S. Status"
|
title = "J.A.R.V.I.S. Status"
|
||||||
desc = "All systems online"
|
desc = "All systems online"
|
||||||
|
@ -38,35 +44,14 @@ class UtilCog(commands.Cog):
|
||||||
)
|
)
|
||||||
await ctx.send(embed=embed)
|
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(
|
@cog_ext.cog_slash(
|
||||||
name="logo",
|
name="logo",
|
||||||
description="Get the current logo",
|
description="Get the current logo",
|
||||||
guild_ids=[578757004059738142],
|
guild_ids=[578757004059738142],
|
||||||
)
|
)
|
||||||
async def _logo_slash(self, ctx):
|
async def _logo(self, ctx):
|
||||||
await self._logo(ctx)
|
lo = logo.get_logo(self.config.logo)
|
||||||
|
await ctx.send(f"```\n{lo}\n```")
|
||||||
|
|
||||||
|
|
||||||
def setup(bot):
|
def setup(bot):
|
||||||
|
|
|
@ -1,4 +1,5 @@
|
||||||
from yaml import load
|
from yaml import load
|
||||||
|
|
||||||
from jarvis.utils.db import DBManager
|
from jarvis.utils.db import DBManager
|
||||||
|
|
||||||
try:
|
try:
|
||||||
|
|
1
jarvis/data/json/emoji_data.json
Normal file
1
jarvis/data/json/emoji_data.json
Normal file
File diff suppressed because one or more lines are too long
1
jarvis/data/json/emoji_list.json
Normal file
1
jarvis/data/json/emoji_list.json
Normal file
File diff suppressed because one or more lines are too long
8
jarvis/data/unicode.py
Normal file
8
jarvis/data/unicode.py
Normal 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)
|
|
@ -1,11 +1,13 @@
|
||||||
from discord.ext import commands
|
|
||||||
from discord import Embed, Color
|
|
||||||
from pkgutil import iter_modules
|
|
||||||
from datetime import datetime
|
from datetime import datetime
|
||||||
import jarvis.cogs
|
from pkgutil import iter_modules
|
||||||
import jarvis.utils.db
|
|
||||||
import jarvis.config
|
|
||||||
import git
|
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"]
|
__all__ = ["field", "db"]
|
||||||
|
|
||||||
|
|
|
@ -1,6 +1,7 @@
|
||||||
import jarvis
|
|
||||||
from discord.ext import commands
|
from discord.ext import commands
|
||||||
|
|
||||||
|
import jarvis
|
||||||
|
|
||||||
|
|
||||||
def user_is_bot_admin():
|
def user_is_bot_admin():
|
||||||
def predicate(ctx):
|
def predicate(ctx):
|
||||||
|
|
10
run.py
10
run.py
|
@ -1,11 +1,13 @@
|
||||||
#!/bin/python3
|
#!/bin/python3
|
||||||
import jarvis
|
|
||||||
import git
|
|
||||||
from pathlib import Path
|
|
||||||
from multiprocessing import Value, Process, freeze_support
|
|
||||||
from importlib import reload as ireload
|
from importlib import reload as ireload
|
||||||
|
from multiprocessing import Process, Value, freeze_support
|
||||||
|
from pathlib import Path
|
||||||
from time import sleep
|
from time import sleep
|
||||||
|
|
||||||
|
import git
|
||||||
|
|
||||||
|
import jarvis
|
||||||
|
|
||||||
|
|
||||||
def run():
|
def run():
|
||||||
ctx = None
|
ctx = None
|
||||||
|
|
Loading…
Add table
Reference in a new issue