package cz.moneta.test.dsl.ufo.banka.pages.fon;

import cz.moneta.test.harness.support.web.*;

import static cz.moneta.test.dsl.ufo.banka.pages.fon.CIF111_S016_CreateNewCifPage.*;

@Wait(value = CIF111_S016_PAGE_LABEL_XPATH, by = Lookup.XPATH, waitSecondsForElement = 60)
@Wait(value = {FIRST_NAME_INPUT, LAST_NAME_INPUT, CZECH_CITIZENSHIP_RADIO, CONTINUE_BUTTON}, waitSecondsForElement = 60)
public interface CIF111_S016_CreateNewCifPage extends WebFlow<CIF111_S016_CreateNewCifPage> {
    String CIF111_S016_PAGE_LABEL_XPATH = "//div[text()='CIF111_S016']";

    String CONTINUE_BUTTON = "CIF111_S016_B002";

    String ID_TYPE_SELECTOR = "CIF111_S016_C002";

    String LAST_NAME_INPUT = "CIF111_S016_E002";
    String FIRST_NAME_INPUT = "CIF111_S016_E003";
    String ID_NUMBER_INPUT = "CIF111_S016_E007";
    String SKIP_NAME_CHECK = "CIF111_S016_H001_1";

    String CZECH_CITIZENSHIP_RADIO = "CIF111_S016_R001_1";

    @TypeInto(FIRST_NAME_INPUT)
    @TypeInto(LAST_NAME_INPUT)
    CIF111_S016_CreateNewCifPage fillFirstAndLastNames(String firstName, String lastName);

    @Click(value = CZECH_CITIZENSHIP_RADIO, jsClick = true)
    CIF111_S016_CreateNewCifPage clickCzechCitizenshipRadio();

    @Select(ID_TYPE_SELECTOR)
    CIF111_S016_CreateNewCifPage selectIdType(String type);

    @TypeInto(ID_NUMBER_INPUT)
    CIF111_S016_CreateNewCifPage fillIdCardNumber(String number);

    @Click(value = SKIP_NAME_CHECK, jsClick = true)
    CIF111_S016_CreateNewCifPage skipNameCheck();

    @Click(CONTINUE_BUTTON)
    CIF111_S016_CreateNewCifPageTransitions clickContinue();
}
