function chart_table_list()

in static/plugins/charts_table.js [64:123]


function chart_table_list(title, headers, items) {
    const table_div = document.createElement('div');
    table_div.style.minWidth = "500px";
    table_div.style.minHeight = "400px";
    table_div.style.margin = "4px";
    table_div.style.padding = "6px";
    table_div.style.overflow = "hidden";
    table_div.className = "card";
    table_div.style.display = "inline-block";


    if (title) {
        const titletxt = document.createElement('h4');
        titletxt.innerText = title;
        titletxt.className = 'text-center';
        table_div.appendChild(titletxt);
    }

    const table = document.createElement('table');
    table.className = 'table table-striped';

    table_div.appendChild(table);

    if (headers) {
        const table_header = document.createElement('thead');
        const tr = document.createElement('tr');
        for (const col of headers) {
            const th = document.createElement('th');
            th.style.fontSize = "0.9rem";
            th.innerText = col;
            tr.appendChild(th);
        }
        table_header.appendChild(tr);
        table.appendChild(table_header);
    }

    if (items) {
        const table_body = document.createElement('tbody');
        for (const item of items) {
            const tr = document.createElement('tr');
            for (const col of item) {
                const td = document.createElement('td');
                if (typeof col === "string") {
                    td.innerText = col;
                } else if (typeof col === "object") {
                    td.appendChild(col);
                } else {
                    td.innerText = "fooo"
                }
                tr.appendChild(td);
            }
            table_body.appendChild(tr);
        }
        table.appendChild(table_body);
    }



    return table_div
}