clases = {
    'qr':"canvas[aria-label='Scan me!']",  # El canvas que contiene el QR cuando no hay sesion iniciada
    'verificar_sesion': ".Akuo4",  # El div presente SOLAMENTE cuando cargo la pagina sin QR

    'panel_izquierdo':{  # VARIABLES CORRESPONDIENTES CON EL PANEL IZQUIERDO
        'chats': '//*[@id="pane-side"]/div/div/div/div',  # Todos los chats
        # 'cantidad_mensajes': "//*[@*[contains(string(),'no leído')]]",  # El numero en verde de un chat correspondiente. es el del span /html/body/div[1]/div[1]/div[1]/div[3]/div/div[2]/div[2]/div/div/div[11]/div/div/div[2]/div[2]/div[2]/span[1]/div/span
        'cantidad_mensajes': "[aria-label~='no']",  # El numero en verde de un chat correspondiente. es el del span /html/body/div[1]/div[1]/div[1]/div[3]/div/div[2]/div[2]/div/div/div[11]/div/div/div[2]/div[2]/div[2]/span[1]/div/span
        'nombre': "span[dir='auto'][title]",  # El nombre de la persona dentro del chat
        'buscador': '//div[@contenteditable]',  # El buscador de personas en el panel izquierdo
        'cerrar_buscador':"span[data-testid='x-alt']",  # La cruz para cerra la busqueda de una persona
        'input_buscador':"div[data-tab='3']",  # El input del buscador
    },

    'chat': {  # VARIABLES CORRESPONDIENTES CON LA VENTANA DE UN CHAT ABIERTO
        'mensajes_entrantes': '.message-in',  # Clase que utilizan TODOS los mensajes recibidos
        'elemento_hora': "div[data-pre-plain-text]",  # El elemento que contiene la fecha y hora del mensaje
        'hora_mensaje': 'data-pre-plain-text',  # El atributo dentro del elemento que contiene la fecha y hora
        # 'input_enviar_mensaje': '/html/body/div[1]/div[1]/div[1]/div[4]/div[1]/footer/div[1]/div/div/div[2]/div[1]/div/div[2]',  # Input para escribir un mensaje 2.2136.8
        'input_enviar_mensaje': "//footer//*[@role='textbox']",  # Input para escribir un mensaje 2.2136.8
        'nombre_agendado': "//div[contains(@id, 'main')]/header/div/div/div/span[contains(@dir, 'auto')]",  # El nombre agendado de la persona
        'chat_abierto': "div[data-asset-intro-image-light]",  # Div que aparece cuando no hay chat abierto
        'texto_mensaje': "span.selectable-text.copyable-text",  # El span que contiene el texto de un mensaje
        'nombre_agendado_mensaje': ".copyable-text",  # El div que contiene la fecha, hora y nombre agendado
        'cabecera': "//div[contains(@id, 'main')]/header",  # El div correspondiente a la cabecera
        'chat': "div[data-tab='7']",  # El div que contiene todos los elementos de un chat
    },

    'tipos_mensaje': {  # VARIABLES CORRESPONDIENTES CON LOS TIPOS DE MENSAJE
        'cita': '.quoted-mention',
        'audio': "span[data-testid='audio-play']",
        'texto': "span > span:nth-child(1)",
        'mapa': "//*[contains(@aria-label,'mapa')]"
        # 'mapa': "img[crossorigin='anonymous']"
    },

    'busqueda': {  # VARIABLES CORRESPONDIENTES AL PANEL DERECHO LUEGO DE UNA BUSQUEDA
        'resultados':'div[aria-label="Resultados de la búsqueda."]',
    },

    'sesion': {  # VARIABLES CORRESPONDIENTES A LA VENTANA CUANDO SE INICIO WHATSAPP EN OTRA VENTANA
        'boton_usar_aqui':"//div[text() = 'Usar aquí']"
    },


}

# -*- coding: utf-8 -*-

# esta clase obtiene el numero de la ventana abierta desde el titulo
# arriba de tod.o (en la parte donde estan las opciones, buscar, adjuntar.)
numero_persona_ventana_abierta = '//*[@id="main"]/header/div[2]/div[1]'

# esta clase obtiene los mensajes recibidos
mensajes_recibidos_in = '.message-in'

# esta obtiene los tipo texto
mensaje_tipo_texto = "copyable-text"
texto_seleccionable = "selectable-text"

# esta optiene el atributo de este texto (es decir, fecha y hora) en este campo
# en el campo data pre plait text, se guarda la fecha y la hora.
atributos_pre_texto_plano = 'data-pre-plain-text'

# Selector CSS para obtener un div con la hora del mensaje
elemento_hora = "div[data-pre-plain-text]"

# Este selector obtiene el div de la persona para mandar un mensaje
# despues de buscarla
# CSS SELECTOR
persona_encontrada = '//*[@id="pane-side"]/div/div/div/div/div/div/div[2]/div[2]/div[1]/span/span'
# Esto busca el elemento que contiene a la persona seleccionada, SOLO PARA WPP BUSINESS
persona_encontrada_business = 'div._1C6Zl:nth-child(2)'
# Este selector obtiene el div donde se escriben los mensajes para enviar
# XPATH SELECTOR
selector_enviar_mensaje = '//*[@id="main"]/footer/div[1]/div[2]/div/div[2]'

# Esta obtiene el atributo de texto que contiene la fecha y la hora en los mapas
# XPATH
fecha_hora_mapa = '//div[@data-plain-text]/..'

# y en esta clase "data-plain-text", se guarda , el texto plano. si es el mapa.
# guarda el link.
atributos_textos_planos = "data-plain-text"

# clase que obtiene el mapa
clase_obtiene_mapa = "img[crossorigin='anonymous']"

# clase para el estado de la sesion (obtiene la clase donde esta el QR)
estado_sesion_qr = "canvas[aria-label='Scan me!']"

varifica_si_ventana_abierta = "//div[@data-asset-intro-image-light='true']"

# clase que encuentra audios
clase_audio = "span[data-testid='audio-play']"

# Clase para saber si un mensaje es una cita de un mensaje anterior
clase_cita = '.quoted-mention'

# Clase para saber si el mensaje es de texto
clase_texto = "span > span:nth-child(1)"

# pane-side > div > div > div > div:nth-child(2) selector
# //*[@id="pane-side"]/div/div/div/div[2] xpath
# obtiene los contactos. no se muy
obtener_todos_los_contactos_cargados = '//*[@id="pane-side"]/div/div/div/div'

# verifica la clase de pendientes, es decir, si aparece el numero en verde,
# es que es un mensaje pendiente.
cantidad_de_mensaje_msj_pendiente = "VOr2j"

# mensaje obtenido a la izquierda.
mensaje_rapido_obtenido = "_2iq-U"

# obtiene el numero de la persona, de la izquierda, es decir, el pendiente.
# //*[@id="pane-side"]/div/div/div/div[18]/div/div/div[2]/div[1]/div[1]/span
numero_pendiente_persona_izquierda = "VOr2j"

# nombre de icono de la bateria baja (todavia no lo estoy usando)
alert_batter = "alert-battery"

# input_de_persona_para_enviar_msg
input_de_persona_para_enviar_msg = '//*[@id="side"]/div[1]/div/label/div/div[2]'

clase_flecha_abajo = "span[data-testid='down']"
