package cz.moneta.test.dsl.ufo.operations.search;

import cz.moneta.test.dsl.ufo.operations.shared.SharedElements;
import cz.moneta.test.dsl.ufo.operations.shared.topmenu.XXX701_SharedTopMenu;
import cz.moneta.test.harness.support.web.*;

import static cz.moneta.test.dsl.ufo.operations.search.BLK701_S001_BlacklistWhitelist.RECORDER_APP_BUTTON;

@Wait(RECORDER_APP_BUTTON)
public interface BLK701_S001_BlacklistWhitelist extends WebFlow<BLK701_S001_BlacklistWhitelist>, SharedElements, XXX701_SharedTopMenu {

    String BLACKLIST_TYPE_SELECT = "BLK701_S001_C001";
    String RC_SEARCH_INPUT = "BLK701_S001_E027";
    String CHECK_BUTTON = "BLK701_S001_B007";
    String NOTE_INPUT = "BLK701_S001_M001";
    String REASON_SELECT = "BLK701_S001_C002";
    String ACTION_TYPE = "BLK701_S001_C006";
    String INSERT_BUTTON = "BLK701_S001_B011";

    @Select(value = BLACKLIST_TYPE_SELECT,
            andWait = @Wait(value = LOAD_IMG_DIV_CLASS, by = Lookup.CLASSNAME, until = Until.GONE))
    BLK701_S001_BlacklistWhitelist selectBlacklistType(String blackListType);

    @TypeInto(RC_SEARCH_INPUT)
    BLK701_S001_BlacklistWhitelist fillRCSearchInput(String birthNumber);

    @Click(value = CHECK_BUTTON,
            andWait = @Wait(value = LOAD_IMG_DIV_CLASS, by = Lookup.CLASSNAME, until = Until.GONE))
    BLK701_S001_BlacklistWhitelist clickCheck();

    @TypeInto(NOTE_INPUT)
    BLK701_S001_BlacklistWhitelist fillNote(String note);

    @Select(REASON_SELECT)
    BLK701_S001_BlacklistWhitelist selectReason(String reason);

    @Select(ACTION_TYPE)
    BLK701_S001_BlacklistWhitelist selectActionType(String actionType);

    @Click(value = INSERT_BUTTON,
            andWait = @Wait(value = LOAD_IMG_DIV_CLASS, by = Lookup.CLASSNAME, until = Until.GONE))
    BLK701_S001_BlacklistWhitelist clickInsert();

}