Allow columns to be hidden

This commit is contained in:
Gordon 2021-04-08 00:14:58 +01:00
parent 3fee542a8f
commit 84e10c56d0
3 changed files with 9 additions and 1 deletions

View File

@ -55,6 +55,7 @@ export default class KanbnBoardPanel {
type: 'index',
index,
tasks,
hiddenColumns: index.options.hiddenColumns ?? [],
startedColumns: index.options.startedColumns ?? [],
completedColumns: index.options.completedColumns ?? [],
dateFormat: KanbnBoardPanel.currentPanel._kanbn.getDateFormat(index)

View File

@ -13,6 +13,7 @@ function App() {
const [name, setName] = useState('');
const [description, setDescription] = useState('');
const [columns, setColumns] = useState({});
const [hiddenColumns, setHiddenColumns] = useState([]);
const [startedColumns, setStartedColumns] = useState([]);
const [completedColumns, setCompletedColumns] = useState([]);
const [dateFormat, setDateFormat] = useState('');
@ -34,6 +35,7 @@ function App() {
Object.values(event.data.index.columns).map(column => (column as string[]).map(taskId => tasks[taskId]))
)
));
setHiddenColumns(event.data.hiddenColumns);
setStartedColumns(event.data.startedColumns);
setCompletedColumns(event.data.completedColumns);
break;
@ -58,6 +60,7 @@ function App() {
name={name}
description={description}
columns={columns}
hiddenColumns={hiddenColumns}
startedColumns={startedColumns}
completedColumns={completedColumns}
dateFormat={dateFormat}

View File

@ -128,10 +128,11 @@ const filterTask = (task: KanbnTask, taskFilter: string) => {
return result;
};
const Board = ({ name, description, columns, startedColumns, completedColumns, dateFormat, vscode }: {
const Board = ({ name, description, columns, hiddenColumns, startedColumns, completedColumns, dateFormat, vscode }: {
name: string,
description: string,
columns: Record<string, KanbnTask[]>,
hiddenColumns: string[],
startedColumns: string[],
completedColumns: string[],
dateFormat: string,
@ -176,6 +177,9 @@ const Board = ({ name, description, columns, startedColumns, completedColumns, d
onDragEnd={result => onDragEnd(result, columns, setColumns, vscode)}
>
{Object.entries(columns).map(([columnName, column]) => {
if (hiddenColumns.indexOf(columnName) !== -1) {
return false;
}
return (
<div
className={[