from typing import Any, Optional from discord import Embed, Colour, Embed, Member from discord.types.embed import EmbedType from datetime import datetime from korcen import korcen class ChristmasEmbed(Embed): def __init__(self, *, color: int | Colour | None = 0xf4f9ff, title: Any | None = None, type: EmbedType = "rich", url: Any | None = None, description: Any | None = None, timestamp: datetime | None = None, ): super().__init__( color=color, title=title, type=type, url=url, description=description, timestamp=timestamp, ) def set_footer(self, *, text: Any | None = "ν¬λŒμ΄β›„", icon_url: Any | None = "https://discord.com/assets/6dbfff5aae6b1de2b83f.svg") -> None: super().set_footer(text=text) class Default_Embed: @staticmethod def default_join_embed(): embed = ChristmasEmbed(title="πŸŽ‰ 크돌이λ₯Ό μΆ”κ°€ν•΄μ£Όμ…”μ„œ κ°μ‚¬ν•΄μš”!", description="봇을 μ‚¬μš©ν•˜κΈ° 전에 이 μ„œλ²„μ˜ κ΄€λ¦¬μžλΌλ©΄ λ‹€μŒμ˜ 절차λ₯Ό λ”°λΌμ£Όμ„Έμš”!") embed.add_field(name="1. μ•½κ΄€ λ™μ˜", value="λ‹€μŒμ˜ 약관을 읽고 ``/μ„œλ²„ κ°€μž…``λͺ…λ Ήμ–΄λ₯Ό μ‹€ν–‰ν•΄μ£Όμ„Έμš”", inline=False) embed.add_field(name="2. μ„€μ •", value="``/μ„€μ •`` λͺ…λ Ήμ–΄λ₯Ό 톡해 크돌이의 μ—¬λŸ¬ κΈ°λŠ₯을 μ„€μ •ν• μˆ˜ μžˆμ–΄μš”!", inline=False) embed.add_field(name="3. 도움말", value="``/도움말`` λͺ…λ Ήμ–΄λ₯Ό 톡해 크돌이의 λͺ…λ Ήμ–΄λ₯Ό 확인할 수 μžˆμ–΄μš”!", inline=False) embed.set_footer() return embed @staticmethod def register_sucess(): embed = ChristmasEmbed(title="πŸŽ‰ κ°€μž… 성곡!", description="μ„œλ²„κ°€μž…μ„ μ„±κ³΅ν–ˆμ–΄μš”!") embed.add_field(name="μ•ˆλ‚΄", value="이제 크돌이λ₯Ό μ¦κ²¨λ³΄μ„Έμš”!", inline=False) embed.set_footer() return embed @staticmethod def register_failed(): embed = ChristmasEmbed(title="❌ κ°€μž… μ‹€νŒ¨!", description="μ„œλ²„κ°€μž…μ„ μ‹€νŒ¨ν–ˆμ–΄μš”!") embed.add_field(name="μ•ˆλ‚΄", value="μ•Œμˆ˜μ—†λŠ” 였λ₯˜λ‘œ 인해 κ°€μž…μ— μ‹€νŒ¨ν–ˆμ–΄μš”! 이 ν˜„μƒμ΄ μ§€μ†λœλ‹€λ©΄ μ„œλΉ„μŠ€ μ„œλ²„μ— λ¬Έμ˜ν•΄μ£Όμ„Έμš”!", inline=False) embed.set_footer() return embed class Mail_Embed: @staticmethod def mail_confirm(title: str, description: str, receive_user: Member) -> Embed: embed = ChristmasEmbed(title="⚠️ 전솑전 확인", description="νŽΈμ§€λ₯Ό μ •λ§λ‘œ μ „μ†‘ν•˜μ‹œκ² μŠ΅λ‹ˆκΉŒ?") embed.add_field(name="⚠️ μ£Όμ˜μ‚¬ν•­ ⚠️", value="νŽΈμ§€λŠ” ν•œ 번 μ „μ†‘ν•˜λ©΄ ν•œλ²ˆμ˜ μˆ˜μ • 기회 μ΄ν›„μ—λŠ” μ·¨μ†Œν•  수 μ—†μ–΄μš”!\n λ‚΄μš©μ„ 잘 읽고 ``전솑``λ²„νŠΌμ„ λˆŒλŸ¬μ£Όμ„Έμš”!", inline=False) embed.add_field(name="λ°›λŠ”μ΄", value=f"{receive_user.mention}", inline=False) embed.add_field(name="제λͺ©", value=title, inline=False) embed.add_field(name="λ‚΄μš©", value=description, inline=False) embed.set_footer() return embed @staticmethod def mail_confirm_edit(title: str, description: str, receive_user: Member) -> Embed: embed = ChristmasEmbed(title="⚠️ μˆ˜μ •μ „ 확인", description="νŽΈμ§€λ₯Ό μ •λ§λ‘œ μˆ˜μ •ν•˜μ‹œκ² μŠ΅λ‹ˆκΉŒ?") embed.add_field(name="⚠️ μ£Όμ˜μ‚¬ν•­ ⚠️", value="μ΄λ²ˆμ— νŽΈμ§€λ₯Ό μˆ˜μ •ν•˜λ©΄ λ‹€μ‹œλŠ” μˆ˜μ •ν•  수 μ—†κ²Œ λ˜μš”!\n λ‚΄μš©μ„ 잘 읽고 ``전솑``λ²„νŠΌμ„ λˆŒλŸ¬μ£Όμ„Έμš”!", inline=False) embed.add_field(name="λ°›λŠ”μ΄", value=f"{receive_user.mention}", inline=False) embed.add_field(name="제λͺ©", value=title, inline=False) embed.add_field(name="λ‚΄μš©", value=description, inline=False) embed.set_footer() return embed @staticmethod def mail_cant_edit(): embed = ChristmasEmbed(title="❌ νŽΈμ§€ μˆ˜μ • μ‹€νŒ¨!", description="νŽΈμ§€ μˆ˜μ •μ— μ‹€νŒ¨ν–ˆμ–΄μš”!") embed.add_field(name="μ•ˆλ‚΄", value="νŽΈμ§€λŠ” ν•œ 번 μ „μ†‘ν•˜λ©΄ ν•œλ²ˆμ˜ μˆ˜μ • 기회 μ΄ν›„μ—λŠ” μ·¨μ†Œν•  수 μ—†μ–΄μš”!", inline=False) embed.set_footer() return embed @staticmethod def mail_sended(receive_user: Member) -> Embed: embed = ChristmasEmbed(title="βœ… μ „μ†‘μ™„λ£Œ!", description="νŽΈμ§€ 전솑을 μ™„λ£Œν–ˆμ–΄μš”!") embed.add_field(name="μ•ˆλ‚΄", value="보낸 νŽΈμ§€λŠ” 2023λ…„ 12μ›” 25일뢀터 μ—΄λžŒ κ°€λŠ₯ν•΄μš”!", inline=False) embed.add_field(name="λ°›λŠ”μ΄", value=f"{receive_user.mention}", inline=False) return embed @staticmethod def mail_edit_sended(receive_user: Member) -> Embed: embed = ChristmasEmbed(title="βœ… μˆ˜μ •μ™„λ£Œ!", description="νŽΈμ§€ μˆ˜μ •μ„ μ™„λ£Œν–ˆμ–΄μš”!") embed.add_field(name="μ•ˆλ‚΄", value="μˆ˜μ •λœ νŽΈμ§€λŠ” 2023λ…„ 12μ›” 25일뢀터 μ—΄λžŒ κ°€λŠ₯ν•΄μš”!", inline=False) embed.add_field(name="λ°›λŠ”μ΄", value=f"{receive_user.mention}", inline=False) return embed @staticmethod def mail_notfound() -> Embed: embed = ChristmasEmbed(title="❌ νŽΈμ§€ μ—†μŒ!", description="νŽΈμ§€κ°€ μ—†μ–΄μš”!") embed.add_field(name="μ•ˆλ‚΄", value="받은 νŽΈμ§€κ°€ μ—†μ–΄μš”!", inline=False) embed.set_footer() return embed @staticmethod def mail_already_sended() -> Embed: embed = ChristmasEmbed(title="❌ νŽΈμ§€ 전솑 μ‹€νŒ¨!", description="이미 νŽΈμ§€λ₯Ό λ³΄λƒˆμ–΄μš”!") embed.add_field(name="μ•ˆλ‚΄", value="이미 νŽΈμ§€λ₯Ό λ³΄λƒˆμ–΄μš”!", inline=False) embed.set_footer() return embed @staticmethod def mail_page(data) -> Embed: embed = ChristmasEmbed(title="πŸ“¨ νŽΈμ§€", description="νŽΈμ§€λ₯Ό ν™•μΈν•΄λ³΄μ„Έμš”!(μš•μ„€λ“± λ―Όκ°ν•œ λ‚΄μš©μ΄ ν¬ν•¨λœ λ‚΄μš©μ€ μžλ™μœΌλ‘œ μŠ€ν¬μΌλŸ¬μ²˜λ¦¬λ˜μš”!)") username = data["username"] userid = data["userid"] title = data["title"] description = data["content"] if korcen.check(title) == True: title = "||" + title + "||" if korcen.check(description) == True: description = "||" + description + "||" embed.add_field(name="보낸이", value=f"{username}({userid})", inline=False) embed.add_field(name="제λͺ©", value=title, inline=False) embed.add_field(name="λ‚΄μš©", value=description, inline=False) embed.set_footer() return embed class Aiart_Embed: @staticmethod def failed_generate() -> Embed: embed = ChristmasEmbed(title="❌ κ·Έλ¦Ό 생성 μ‹€νŒ¨!", description="κ·Έλ¦Ό 생성에 μ‹€νŒ¨ν–ˆμ–΄μš”!") embed.add_field(name="μ•ˆλ‚΄", value="κ·Έλ¦Ό 생성에 μ‹€νŒ¨ν–ˆμ–΄μš”! 이 ν˜„μƒμ΄ μ§€μ†λœλ‹€λ©΄ μ„œλΉ„μŠ€ μ„œλ²„μ— λ¬Έμ˜ν•΄μ£Όμ„Έμš”!", inline=False) embed.set_footer() return embed @staticmethod def sucess_generate(prompt: str, remove: str) -> Embed: embed = ChristmasEmbed(title="βœ… κ·Έλ¦Ό 생성 성곡!", description="κ·Έλ¦Ό 생성에 μ„±κ³΅ν–ˆμ–΄μš”!") embed.add_field(name="ν”„λ‘¬ν¬νŠΈ", value=prompt, inline=False) embed.add_field(name="μ§€μš΄ ν”„λ‘¬ν¬νŠΈ", value=remove, inline=False) embed.set_image(url="attachment://image.png") embed.set_footer() return embed @staticmethod def generating() -> Embed: embed = ChristmasEmbed(title="κ·Έλ¦Ό 생성쀑...", description="그림을 μƒμ„±ν•˜λŠ” μ€‘μ΄μ—μš”!") embed.add_field(name="μ•ˆλ‚΄", value="κ·Έλ¦Ό μƒμ„±μ—λŠ” μ΅œλŒ€ 2뢄이 μ†Œμš”λ  수 μžˆμ–΄μš”!(ν¬λŒμ΄λŠ” 돈이 μ—†μ–΄μš”...)", inline=False) embed.set_footer() return embed