UNPKG

covid19-dashboard

Version:

Dashboard App displaying COVID-19 numbers by country

91 lines (87 loc) 3.04 kB
import Container from '../../../../node_modules/neo.mjs/src/table/Container.mjs'; import HistoricalData from '../../store/HistoricalData.mjs'; import Util from '../../Util.mjs'; /** * @class Covid.view.country.HistoricalDataTable * @extends Neo.table.Container */ class HistoricalDataTable extends Container { static getConfig() {return { /** * @member {String} className='Covid.view.country.HistoricalDataTable' * @protected */ className: 'Covid.view.country.HistoricalDataTable', /** * @member {String[]} cls=['covid-historical-data-table', 'neo-table-container'] */ cls: ['covid-historical-data-table', 'neo-table-container'], /** * Default configs for each column * @member {Object} columnDefaults */ columnDefaults: { align : 'right', defaultSortDirection: 'DESC', renderer : Util.formatNumber }, /** * @member {Object[]} columns */ columns: [{ align : 'left', dataField: 'date', dock : 'left', text : 'Date', width : 100, renderer : function(data) { return { cls : ['neo-date-column', 'neo-table-cell'], html: new Intl.DateTimeFormat('default', { day : 'numeric', month: 'numeric', year : 'numeric' }).format(new Date(data.value)) }; } }, { dataField: 'cases', text : 'Cases', renderer : data => Util.formatNumber(data) }, { dataField: 'active', text : 'Active', renderer : data => Util.formatNumber(data, '#64B5F6') }, { dataField: 'recovered', text : 'Recovered', renderer : data => Util.formatNumber(data, '#28ca68') }, { dataField: 'deaths', text : 'Deaths', renderer : data => Util.formatNumber(data, '#fb6767') }, { dataField: 'dailyCases', text : 'Daily C', renderer : data => Util.formatNumber(data) }, { dataField: 'dailyActive', text : 'Daily A', renderer : data => Util.formatNumber(data, '#64B5F6') }, { dataField: 'dailyRecovered', text : 'Daily R', renderer : data => Util.formatNumber(data, '#28ca68') }, { dataField: 'dailyDeaths', text : 'Daily D', renderer : data => Util.formatNumber(data, '#fb6767') }], /** * @member {Neo.data.Store} store=HistoricalData */ store: HistoricalData }} } Neo.applyClassConfig(HistoricalDataTable); export {HistoricalDataTable as default};