const todosTab = (() => {
const tabTodos = $(‘#tabTodos’);
const todoForm = $(‘#todoForm’);
const todoList = $(‘#todoList’);
const todoError = $(‘#todoError’);

const todoSubmitHandler = (event) => {
event.preventDefault();

const todoText = todoForm.find(‘input[name=”todo”]’).val().trim();
if (todoText === ”) {
todoError.text(‘Please enter a todo.’).show();
return;
}
todoIssue.createTodo(tabTodos.attr(‘data-tabId’), todoText)
.then((todo) => {
todoList.append(`

  • ${todo.text}
  • `);

    todoForm.find(‘input[name=”todo”]’).val(”);
    });
    };

    todoForm.on(‘submit’, todoSubmitHandler);

    const removeTodoOnClickHandler = (event) => {
    const listParent = $(event.target).parent();
    todoIssue.removeTodo(tabTodos.attr(‘data-tabId’), listParent.attr(‘data-todoId’))
    .then(() => {
    listParent.remove();
    });
    };

    todoList.on(‘click’, ‘li’, removeTodoOnClickHandler);

    const getTodos = () => {
    todoIssue.getTodosForTab(tabTodos.attr(‘data-tabId’))
    .then((todosList) => {
    todosList.forEach((todo) => {
    todoList.append(`

  • ${todo.text}
  • `);
    });
    });
    };

    return {
    getTodos,
    };
    })();