__all__ = ()

from .constants import (
    BUTTON_SNIPE_ACTIONS_DISABLED, BUTTON_SNIPE_ACTIONS_EMOJI, BUTTON_SNIPE_ACTIONS_SOUNDBOARD_SOUND,
    BUTTON_SNIPE_ACTIONS_STICKER, BUTTON_SNIPE_ADD_DISABLED, BUTTON_SNIPE_ADD_EMOJI, BUTTON_SNIPE_ADD_SOUNDBOARD_SOUND,
    BUTTON_SNIPE_ADD_STICKER, BUTTON_SNIPE_DETAILS_DISABLED, BUTTON_SNIPE_DM_DISABLED, BUTTON_SNIPE_EDIT_DISABLED,
    BUTTON_SNIPE_EDIT_EMOJI, BUTTON_SNIPE_EDIT_SOUNDBOARD_SOUND, BUTTON_SNIPE_EDIT_STICKER,
    BUTTON_SNIPE_REMOVE_DISABLED, BUTTON_SNIPE_REMOVE_EMOJI, BUTTON_SNIPE_REMOVE_SOUNDBOARD_SOUND,
    BUTTON_SNIPE_REMOVE_STICKER, BUTTON_SNIPE_REVEAL_DISABLED, CUSTOM_ID_SNIPE_ACTIONS_EMOJI,
    CUSTOM_ID_SNIPE_ACTIONS_SOUNDBOARD_SOUND, CUSTOM_ID_SNIPE_ACTIONS_STICKER, CUSTOM_ID_SNIPE_ADD_DISABLED,
    CUSTOM_ID_SNIPE_ADD_EMOJI, CUSTOM_ID_SNIPE_ADD_SOUNDBOARD_SOUND, CUSTOM_ID_SNIPE_ADD_STICKER,
    CUSTOM_ID_SNIPE_DETAILS_EMOJI, CUSTOM_ID_SNIPE_DETAILS_REACTION, CUSTOM_ID_SNIPE_DETAILS_SOUNDBOARD_SOUND,
    CUSTOM_ID_SNIPE_DETAILS_STICKER, CUSTOM_ID_SNIPE_DM, CUSTOM_ID_SNIPE_EDIT_DISABLED, CUSTOM_ID_SNIPE_EDIT_EMOJI,
    CUSTOM_ID_SNIPE_EDIT_SOUNDBOARD_SOUND, CUSTOM_ID_SNIPE_EDIT_STICKER, CUSTOM_ID_SNIPE_REMOVE_DISABLED,
    CUSTOM_ID_SNIPE_REMOVE_EMOJI, CUSTOM_ID_SNIPE_REMOVE_SOUNDBOARD_SOUND, CUSTOM_ID_SNIPE_REMOVE_STICKER,
    CUSTOM_ID_SNIPE_REVEAL
)


SELECT_EMOJI_OUTSIDE = {
    CUSTOM_ID_SNIPE_ADD_DISABLED: BUTTON_SNIPE_ADD_EMOJI,
    
    # emoji
    CUSTOM_ID_SNIPE_ADD_EMOJI: BUTTON_SNIPE_ADD_EMOJI,
    CUSTOM_ID_SNIPE_EDIT_EMOJI: BUTTON_SNIPE_EDIT_DISABLED,
    CUSTOM_ID_SNIPE_REMOVE_EMOJI: BUTTON_SNIPE_REMOVE_DISABLED,
    CUSTOM_ID_SNIPE_ACTIONS_EMOJI: BUTTON_SNIPE_ACTIONS_EMOJI,
    
    # soundboard sound
    CUSTOM_ID_SNIPE_ADD_SOUNDBOARD_SOUND: BUTTON_SNIPE_ADD_EMOJI,
    CUSTOM_ID_SNIPE_EDIT_SOUNDBOARD_SOUND: BUTTON_SNIPE_EDIT_DISABLED,
    CUSTOM_ID_SNIPE_REMOVE_SOUNDBOARD_SOUND: BUTTON_SNIPE_REMOVE_DISABLED,
    CUSTOM_ID_SNIPE_ACTIONS_SOUNDBOARD_SOUND: BUTTON_SNIPE_ACTIONS_EMOJI,
    
    # stickers
    CUSTOM_ID_SNIPE_ADD_STICKER: BUTTON_SNIPE_ADD_EMOJI,
    CUSTOM_ID_SNIPE_EDIT_STICKER: BUTTON_SNIPE_EDIT_DISABLED,
    CUSTOM_ID_SNIPE_REMOVE_STICKER: BUTTON_SNIPE_REMOVE_DISABLED,
    CUSTOM_ID_SNIPE_ACTIONS_STICKER: BUTTON_SNIPE_ACTIONS_EMOJI,
}

SELECT_EMOJI_INSIDE = {
    # emoji
    CUSTOM_ID_SNIPE_ADD_EMOJI: BUTTON_SNIPE_ADD_DISABLED,
    CUSTOM_ID_SNIPE_EDIT_DISABLED: BUTTON_SNIPE_EDIT_EMOJI,
    CUSTOM_ID_SNIPE_REMOVE_DISABLED: BUTTON_SNIPE_REMOVE_EMOJI,
    CUSTOM_ID_SNIPE_ACTIONS_EMOJI: BUTTON_SNIPE_ACTIONS_EMOJI,
    
    # soundboard sound
    CUSTOM_ID_SNIPE_ADD_SOUNDBOARD_SOUND: BUTTON_SNIPE_ADD_DISABLED,
    CUSTOM_ID_SNIPE_EDIT_SOUNDBOARD_SOUND: BUTTON_SNIPE_EDIT_EMOJI,
    CUSTOM_ID_SNIPE_REMOVE_SOUNDBOARD_SOUND: BUTTON_SNIPE_REMOVE_EMOJI,
    CUSTOM_ID_SNIPE_ACTIONS_SOUNDBOARD_SOUND: BUTTON_SNIPE_ACTIONS_EMOJI,
    
    # stickers
    CUSTOM_ID_SNIPE_ADD_STICKER: BUTTON_SNIPE_ADD_DISABLED,
    CUSTOM_ID_SNIPE_EDIT_STICKER: BUTTON_SNIPE_EDIT_EMOJI,
    CUSTOM_ID_SNIPE_REMOVE_STICKER: BUTTON_SNIPE_REMOVE_EMOJI,
    CUSTOM_ID_SNIPE_ACTIONS_STICKER: BUTTON_SNIPE_ACTIONS_EMOJI,
}

SELECT_EMOJI_DISABLED = {
    # emoji
    CUSTOM_ID_SNIPE_ADD_EMOJI: BUTTON_SNIPE_ADD_DISABLED,
    CUSTOM_ID_SNIPE_EDIT_EMOJI: BUTTON_SNIPE_EDIT_DISABLED,
    CUSTOM_ID_SNIPE_REMOVE_EMOJI: BUTTON_SNIPE_REMOVE_DISABLED,
    CUSTOM_ID_SNIPE_ACTIONS_EMOJI: BUTTON_SNIPE_ACTIONS_EMOJI,
    
    # soundboard sound
    CUSTOM_ID_SNIPE_ADD_SOUNDBOARD_SOUND: BUTTON_SNIPE_ADD_DISABLED,
    CUSTOM_ID_SNIPE_EDIT_SOUNDBOARD_SOUND: BUTTON_SNIPE_EDIT_DISABLED,
    CUSTOM_ID_SNIPE_REMOVE_SOUNDBOARD_SOUND: BUTTON_SNIPE_REMOVE_DISABLED,
    CUSTOM_ID_SNIPE_ACTIONS_SOUNDBOARD_SOUND: BUTTON_SNIPE_ACTIONS_EMOJI,
    
    # sticker
    CUSTOM_ID_SNIPE_ADD_STICKER: BUTTON_SNIPE_ADD_DISABLED,
    CUSTOM_ID_SNIPE_EDIT_STICKER: BUTTON_SNIPE_EDIT_DISABLED,
    CUSTOM_ID_SNIPE_REMOVE_STICKER: BUTTON_SNIPE_REMOVE_DISABLED,
    CUSTOM_ID_SNIPE_ACTIONS_STICKER: BUTTON_SNIPE_ACTIONS_EMOJI,
}

SELECT_SOUNDBOARD_SOUND_OUTSIDE = {
    # emoji
    CUSTOM_ID_SNIPE_ADD_EMOJI: BUTTON_SNIPE_ADD_SOUNDBOARD_SOUND,
    CUSTOM_ID_SNIPE_EDIT_EMOJI: BUTTON_SNIPE_EDIT_DISABLED,
    CUSTOM_ID_SNIPE_REMOVE_EMOJI: BUTTON_SNIPE_REMOVE_DISABLED,
    CUSTOM_ID_SNIPE_ACTIONS_EMOJI: BUTTON_SNIPE_ACTIONS_SOUNDBOARD_SOUND,
    
    # soundboard sound
    CUSTOM_ID_SNIPE_ADD_SOUNDBOARD_SOUND: BUTTON_SNIPE_ADD_SOUNDBOARD_SOUND,
    CUSTOM_ID_SNIPE_EDIT_SOUNDBOARD_SOUND: BUTTON_SNIPE_EDIT_DISABLED,
    CUSTOM_ID_SNIPE_REMOVE_SOUNDBOARD_SOUND: BUTTON_SNIPE_REMOVE_DISABLED,
    CUSTOM_ID_SNIPE_ACTIONS_SOUNDBOARD_SOUND: BUTTON_SNIPE_ACTIONS_SOUNDBOARD_SOUND,
    
    # stickers
    CUSTOM_ID_SNIPE_ADD_DISABLED: BUTTON_SNIPE_ADD_SOUNDBOARD_SOUND,
    CUSTOM_ID_SNIPE_EDIT_STICKER: BUTTON_SNIPE_EDIT_DISABLED,
    CUSTOM_ID_SNIPE_REMOVE_STICKER: BUTTON_SNIPE_REMOVE_DISABLED,
    CUSTOM_ID_SNIPE_ACTIONS_STICKER: BUTTON_SNIPE_ACTIONS_SOUNDBOARD_SOUND,
}

SELECT_SOUNDBOARD_SOUND_INSIDE = {
    CUSTOM_ID_SNIPE_EDIT_DISABLED: BUTTON_SNIPE_EDIT_SOUNDBOARD_SOUND,
    CUSTOM_ID_SNIPE_REMOVE_DISABLED: BUTTON_SNIPE_REMOVE_SOUNDBOARD_SOUND,
    
    # emoji
    CUSTOM_ID_SNIPE_ADD_EMOJI: BUTTON_SNIPE_ADD_DISABLED,
    CUSTOM_ID_SNIPE_EDIT_EMOJI: BUTTON_SNIPE_EDIT_SOUNDBOARD_SOUND,
    CUSTOM_ID_SNIPE_REMOVE_EMOJI: BUTTON_SNIPE_REMOVE_SOUNDBOARD_SOUND,
    CUSTOM_ID_SNIPE_ACTIONS_EMOJI: BUTTON_SNIPE_ACTIONS_SOUNDBOARD_SOUND,
    
    # soundboard sound
    CUSTOM_ID_SNIPE_ADD_SOUNDBOARD_SOUND: BUTTON_SNIPE_ADD_DISABLED,
    CUSTOM_ID_SNIPE_EDIT_SOUNDBOARD_SOUND: BUTTON_SNIPE_EDIT_SOUNDBOARD_SOUND,
    CUSTOM_ID_SNIPE_REMOVE_SOUNDBOARD_SOUND: BUTTON_SNIPE_REMOVE_SOUNDBOARD_SOUND,
    CUSTOM_ID_SNIPE_ACTIONS_SOUNDBOARD_SOUND: BUTTON_SNIPE_ACTIONS_SOUNDBOARD_SOUND,
    
    # stickers
    CUSTOM_ID_SNIPE_ADD_STICKER: BUTTON_SNIPE_ADD_DISABLED,
    CUSTOM_ID_SNIPE_EDIT_STICKER: BUTTON_SNIPE_EDIT_SOUNDBOARD_SOUND,
    CUSTOM_ID_SNIPE_REMOVE_STICKER: BUTTON_SNIPE_REMOVE_SOUNDBOARD_SOUND,
    CUSTOM_ID_SNIPE_ACTIONS_STICKER: BUTTON_SNIPE_ACTIONS_SOUNDBOARD_SOUND,
}

SELECT_SOUNDBOARD_SOUND_DISABLED = {
    # emoji
    CUSTOM_ID_SNIPE_ADD_EMOJI: BUTTON_SNIPE_ADD_DISABLED,
    CUSTOM_ID_SNIPE_EDIT_EMOJI: BUTTON_SNIPE_EDIT_DISABLED,
    CUSTOM_ID_SNIPE_REMOVE_EMOJI: BUTTON_SNIPE_REMOVE_DISABLED,
    CUSTOM_ID_SNIPE_ACTIONS_EMOJI: BUTTON_SNIPE_ACTIONS_SOUNDBOARD_SOUND,
    
    # soundboard sound
    CUSTOM_ID_SNIPE_ADD_SOUNDBOARD_SOUND: BUTTON_SNIPE_ADD_DISABLED,
    CUSTOM_ID_SNIPE_EDIT_SOUNDBOARD_SOUND: BUTTON_SNIPE_EDIT_DISABLED,
    CUSTOM_ID_SNIPE_REMOVE_SOUNDBOARD_SOUND: BUTTON_SNIPE_REMOVE_DISABLED,
    CUSTOM_ID_SNIPE_ACTIONS_SOUNDBOARD_SOUND: BUTTON_SNIPE_ACTIONS_SOUNDBOARD_SOUND,
    
    # sticker
    CUSTOM_ID_SNIPE_ADD_STICKER: BUTTON_SNIPE_ADD_DISABLED,
    CUSTOM_ID_SNIPE_EDIT_STICKER: BUTTON_SNIPE_EDIT_DISABLED,
    CUSTOM_ID_SNIPE_REMOVE_STICKER: BUTTON_SNIPE_REMOVE_DISABLED,
    CUSTOM_ID_SNIPE_ACTIONS_STICKER: BUTTON_SNIPE_ACTIONS_SOUNDBOARD_SOUND,
}

SELECT_STICKER_OUTSIDE = {
    # emoji
    CUSTOM_ID_SNIPE_ADD_EMOJI: BUTTON_SNIPE_ADD_STICKER,
    CUSTOM_ID_SNIPE_EDIT_EMOJI: BUTTON_SNIPE_EDIT_DISABLED,
    CUSTOM_ID_SNIPE_REMOVE_EMOJI: BUTTON_SNIPE_REMOVE_DISABLED,
    CUSTOM_ID_SNIPE_ACTIONS_EMOJI: BUTTON_SNIPE_ACTIONS_STICKER,
    
    # soundboard sound
    CUSTOM_ID_SNIPE_ADD_SOUNDBOARD_SOUND: BUTTON_SNIPE_ADD_STICKER,
    CUSTOM_ID_SNIPE_EDIT_SOUNDBOARD_SOUND: BUTTON_SNIPE_EDIT_DISABLED,
    CUSTOM_ID_SNIPE_REMOVE_SOUNDBOARD_SOUND: BUTTON_SNIPE_REMOVE_DISABLED,
    CUSTOM_ID_SNIPE_ACTIONS_SOUNDBOARD_SOUND: BUTTON_SNIPE_ACTIONS_STICKER,
    
    # stickers
    CUSTOM_ID_SNIPE_ADD_DISABLED: BUTTON_SNIPE_ADD_STICKER,
    CUSTOM_ID_SNIPE_EDIT_STICKER: BUTTON_SNIPE_EDIT_DISABLED,
    CUSTOM_ID_SNIPE_REMOVE_STICKER: BUTTON_SNIPE_REMOVE_DISABLED,
    CUSTOM_ID_SNIPE_ACTIONS_STICKER: BUTTON_SNIPE_ACTIONS_STICKER,
}

SELECT_STICKER_INSIDE = {
    CUSTOM_ID_SNIPE_EDIT_DISABLED: BUTTON_SNIPE_EDIT_STICKER,
    CUSTOM_ID_SNIPE_REMOVE_DISABLED: BUTTON_SNIPE_REMOVE_STICKER,
    
    # emoji
    CUSTOM_ID_SNIPE_ADD_EMOJI: BUTTON_SNIPE_ADD_DISABLED,
    CUSTOM_ID_SNIPE_EDIT_EMOJI: BUTTON_SNIPE_EDIT_STICKER,
    CUSTOM_ID_SNIPE_REMOVE_EMOJI: BUTTON_SNIPE_REMOVE_STICKER,
    CUSTOM_ID_SNIPE_ACTIONS_EMOJI: BUTTON_SNIPE_ACTIONS_STICKER,
    
    # soundboard sound
    CUSTOM_ID_SNIPE_ADD_SOUNDBOARD_SOUND: BUTTON_SNIPE_ADD_DISABLED,
    CUSTOM_ID_SNIPE_EDIT_SOUNDBOARD_SOUND: BUTTON_SNIPE_EDIT_STICKER,
    CUSTOM_ID_SNIPE_REMOVE_SOUNDBOARD_SOUND: BUTTON_SNIPE_REMOVE_STICKER,
    CUSTOM_ID_SNIPE_ACTIONS_SOUNDBOARD_SOUND: BUTTON_SNIPE_ACTIONS_STICKER,
    
    # stickers
    CUSTOM_ID_SNIPE_ADD_STICKER: BUTTON_SNIPE_ADD_DISABLED,
    CUSTOM_ID_SNIPE_EDIT_STICKER: BUTTON_SNIPE_EDIT_STICKER,
    CUSTOM_ID_SNIPE_REMOVE_STICKER: BUTTON_SNIPE_REMOVE_STICKER,
    CUSTOM_ID_SNIPE_ACTIONS_STICKER: BUTTON_SNIPE_ACTIONS_STICKER,
}

SELECT_STICKER_DISABLED = {
    # emoji
    CUSTOM_ID_SNIPE_ADD_EMOJI: BUTTON_SNIPE_ADD_DISABLED,
    CUSTOM_ID_SNIPE_EDIT_EMOJI: BUTTON_SNIPE_EDIT_DISABLED,
    CUSTOM_ID_SNIPE_REMOVE_EMOJI: BUTTON_SNIPE_REMOVE_DISABLED,
    CUSTOM_ID_SNIPE_ACTIONS_EMOJI: BUTTON_SNIPE_ACTIONS_STICKER,
    
    # soundboard sound
    CUSTOM_ID_SNIPE_ADD_SOUNDBOARD_SOUND: BUTTON_SNIPE_ADD_DISABLED,
    CUSTOM_ID_SNIPE_EDIT_SOUNDBOARD_SOUND: BUTTON_SNIPE_EDIT_DISABLED,
    CUSTOM_ID_SNIPE_REMOVE_SOUNDBOARD_SOUND: BUTTON_SNIPE_REMOVE_DISABLED,
    CUSTOM_ID_SNIPE_ACTIONS_SOUNDBOARD_SOUND: BUTTON_SNIPE_ACTIONS_STICKER,
    
    # sticker
    CUSTOM_ID_SNIPE_ADD_STICKER: BUTTON_SNIPE_ADD_DISABLED,
    CUSTOM_ID_SNIPE_EDIT_STICKER: BUTTON_SNIPE_EDIT_DISABLED,
    CUSTOM_ID_SNIPE_REMOVE_STICKER: BUTTON_SNIPE_REMOVE_DISABLED,
    CUSTOM_ID_SNIPE_ACTIONS_STICKER: BUTTON_SNIPE_ACTIONS_STICKER,
}


REVEAL_DISABLE = {
    CUSTOM_ID_SNIPE_REVEAL: BUTTON_SNIPE_REVEAL_DISABLED,
}


REMOVE_DISABLE = {
    # emoji
    CUSTOM_ID_SNIPE_REMOVE_EMOJI: BUTTON_SNIPE_REMOVE_DISABLED,
    CUSTOM_ID_SNIPE_EDIT_EMOJI: BUTTON_SNIPE_EDIT_DISABLED,
    
    # soundboard sound
    CUSTOM_ID_SNIPE_REMOVE_SOUNDBOARD_SOUND: BUTTON_SNIPE_REMOVE_DISABLED,
    CUSTOM_ID_SNIPE_EDIT_SOUNDBOARD_SOUND: BUTTON_SNIPE_EDIT_DISABLED,
    
    # sticker
    CUSTOM_ID_SNIPE_REMOVE_STICKER: BUTTON_SNIPE_REMOVE_DISABLED,
    CUSTOM_ID_SNIPE_EDIT_STICKER: BUTTON_SNIPE_EDIT_DISABLED,
}

DM_DISABLE = {
    CUSTOM_ID_SNIPE_REVEAL: BUTTON_SNIPE_REVEAL_DISABLED,
    CUSTOM_ID_SNIPE_DM: BUTTON_SNIPE_DM_DISABLED,
    
    # emoji
    CUSTOM_ID_SNIPE_ACTIONS_EMOJI: BUTTON_SNIPE_ACTIONS_DISABLED,
    CUSTOM_ID_SNIPE_ADD_EMOJI: BUTTON_SNIPE_ADD_DISABLED,
    CUSTOM_ID_SNIPE_REMOVE_EMOJI: BUTTON_SNIPE_REMOVE_DISABLED,
    CUSTOM_ID_SNIPE_EDIT_EMOJI: BUTTON_SNIPE_EDIT_DISABLED,
    
    # soundboard sound
    CUSTOM_ID_SNIPE_ACTIONS_SOUNDBOARD_SOUND: BUTTON_SNIPE_ACTIONS_DISABLED,
    CUSTOM_ID_SNIPE_ADD_SOUNDBOARD_SOUND: BUTTON_SNIPE_ADD_DISABLED,
    CUSTOM_ID_SNIPE_REMOVE_SOUNDBOARD_SOUND: BUTTON_SNIPE_REMOVE_DISABLED,
    CUSTOM_ID_SNIPE_EDIT_SOUNDBOARD_SOUND: BUTTON_SNIPE_EDIT_DISABLED,
    
    # sticker
    CUSTOM_ID_SNIPE_ACTIONS_STICKER: BUTTON_SNIPE_ACTIONS_DISABLED,
    CUSTOM_ID_SNIPE_ADD_STICKER: BUTTON_SNIPE_ADD_DISABLED,
    CUSTOM_ID_SNIPE_REMOVE_STICKER: BUTTON_SNIPE_REMOVE_DISABLED,
    CUSTOM_ID_SNIPE_EDIT_STICKER: BUTTON_SNIPE_EDIT_DISABLED,
}

DETAILS_DISABLE = {
    CUSTOM_ID_SNIPE_DETAILS_EMOJI: BUTTON_SNIPE_DETAILS_DISABLED,
    CUSTOM_ID_SNIPE_DETAILS_REACTION: BUTTON_SNIPE_DETAILS_DISABLED,
    CUSTOM_ID_SNIPE_DETAILS_SOUNDBOARD_SOUND: BUTTON_SNIPE_DETAILS_DISABLED,
    CUSTOM_ID_SNIPE_DETAILS_STICKER: BUTTON_SNIPE_DETAILS_DISABLED,
}


ADD_DISABLE = {
    CUSTOM_ID_SNIPE_ADD_EMOJI: BUTTON_SNIPE_ADD_DISABLED,
    CUSTOM_ID_SNIPE_ADD_SOUNDBOARD_SOUND: BUTTON_SNIPE_ADD_DISABLED,
    CUSTOM_ID_SNIPE_ADD_STICKER: BUTTON_SNIPE_ADD_DISABLED,
}

ACTIONS_DISABLE = {
    CUSTOM_ID_SNIPE_ACTIONS_EMOJI: BUTTON_SNIPE_ACTIONS_DISABLED,
    CUSTOM_ID_SNIPE_ACTIONS_SOUNDBOARD_SOUND: BUTTON_SNIPE_ACTIONS_DISABLED,
    CUSTOM_ID_SNIPE_ACTIONS_STICKER: BUTTON_SNIPE_ACTIONS_DISABLED,
}
