[userscript] [Kanbanflow] Quick Task Add
// ==UserScript==
// @name [Kanbanflow] Quick Task Add
// @namespace https://gist.github.com/tkrkt
// @include https://kanbanflow.com/board/*
// @version 1
// @grant none
// ==/UserScript==
const style = document.createElement('style');
style.textContent = `
.quicktask-input {
width: calc(100% - 8px);
box-sizing: border-box;
margin: 4px;
border: 1px solid rgba(0,0,0,0.2);
background-color: transparent;
}
.column-collapsed .quicktask-input {
display: none;
}
`;
document.head.appendChild(style);
Array.from(document.querySelectorAll('.columnHeader')).forEach(header => {
const columnid = header.getAttribute('data-columnid');
const addButton = header.querySelector('button.columnHeader-addTask');
const list = document.querySelector(`td[data-columnid="${columnid}"] .taskList`);
if (!list) return;
const input = document.createElement('input');
input.className = 'quicktask-input';
header.appendChild(input);
input.addEventListener('keypress', e => {
if (e.keyCode === 13) { // enter
addButton.click();
const taskInput = document.querySelector('#taskName');
const saveButton = document.querySelector('.taskDialog-saveCloseButton');
taskInput.value = input.value;
input.value = '';
saveButton.click();
}
});
});