viewof table = {
const table = Inputs.table(tableData, {
maxHeight: 'none',
sort: 'low_wage_share',
reverse: true,
columns: [
'category',
'low_wage_share',
'low_wage_count',
],
header: {
category: "Group of workers",
low_wage_share: "Share under wage threshold",
low_wage_count: "Number under wage threshold",
},
align: {
category: "left",
low_wage_share: "center",
low_wage_count: "right",
},
format: {
low_wage_share: donutChart,
low_wage_count: d3.format(','),
},
});
const sortSpans = [];
function toggle(span) {
span.classList.toggle('hidden', !span.textContent)
}
function toggleAll() {
sortSpans.forEach(toggle);
}
table.querySelectorAll('th').forEach(th => {
const span = th.querySelector('span');
if (!span) {
return;
}
toggle(span);
sortSpans.push(span);
th.addEventListener('click', toggleAll)
})
return table;
}