const grid = new gridjs.Grid({ columns: [ { data: (row) => row.id, name: 'Thumbnail', formatter: (cell) => gridjs.html(``), sort: {enabled: false} }, { id: 'name', name: 'Name', data: (row) => row.name, formatter: (name, row) => gridjs.html(`${name}`) }, { id: 'renderer', data: (row) => `${row.renderer}-${row.worker.renderer_version}`, name: 'Renderer' }, { id: 'priority', name: 'Priority' }, { id: 'status', name: 'Status', data: (row) => row, formatter: (cell, row) => gridjs.html(` ${cell.status} ${cell.status} `)}, { id: 'time_elapsed', name: 'Time Elapsed' }, { data: (row) => row.worker.total_frames, name: 'Frame Count' }, { id: 'client', name: 'Client'}, { data: (row) => row.worker.last_output, name: 'Last Output', formatter: (output, row) => gridjs.html(`${output}`) }, { data: (row) => row, name: 'Commands', formatter: (cell, row) => gridjs.html(`
`), sort: false } ], style: { table: { 'white-space': 'nowrap' }, th: { 'vertical-align': 'middle', }, td: { 'vertical-align': 'middle', } }, server: { url: '/api/jobs', then: results => results, }, sort: true, }).render(document.getElementById('table'));