UNPKG

covid19-dashboard

Version:

Dashboard App displaying COVID-19 numbers by country

102 lines (97 loc) 3.67 kB
import FooterContainer from './FooterContainer.mjs'; import HeaderContainer from './HeaderContainer.mjs'; import MainContainerController from './MainContainerController.mjs'; import MainContainerModel from './MainContainerModel.mjs'; import TabContainer from '../../../node_modules/neo.mjs/src/tab/Container.mjs'; import Viewport from '../../../node_modules/neo.mjs/src/container/Viewport.mjs'; /** * @class Covid.view.MainContainer * @extends Neo.container.Viewport */ class MainContainer extends Viewport { static getConfig() {return { /** * @member {String} className='Covid.view.MainContainer' * @protected */ className: 'Covid.view.MainContainer', /** * @member {Boolean} autoMount=true */ autoMount: true, /** * @member {Array} cls=['covid-viewport', 'neo-viewport'] */ cls: ['covid-viewport', 'neo-viewport'], /** * @member {Neo.controller.Component} controller=MainContainerController */ controller: MainContainerController, /** * @member {Array} items */ items: [HeaderContainer, { module : TabContainer, activeIndex: null, // render no items initially flex : 1, reference : 'tab-container', sortable : true, style : {margin: '10px', marginTop: 0}, items: [{ module : () => import('./TableContainer.mjs'), reference : 'table-container', tabButtonConfig: { iconCls: 'fa fa-table', route : 'mainview=table', text : 'Table' } }, { module : () => import('./mapboxGl/Container.mjs'), tabButtonConfig: { iconCls: 'fa fa-globe-americas', route : 'mainview=mapboxglmap', text : 'Mapbox GL Map' } }, { module : () => import('./WorldMapContainer.mjs'), tabButtonConfig: { iconCls: 'fa fa-globe-americas', route : 'mainview=worldmap', text : 'World Map' } }, { module : () => import('./GalleryContainer.mjs'), tabButtonConfig: { iconCls: 'fa fa-images', route : 'mainview=gallery', text : 'Gallery' } }, { module : () => import('./HelixContainer.mjs'), tabButtonConfig: { iconCls: 'fa fa-dna', route : 'mainview=helix', text : 'Helix' } }, { module : () => import('./AttributionComponent.mjs'), reference : 'attribution', tabButtonConfig: { iconCls: 'fa fa-copyright', route : 'mainview=attribution', text : 'Attribution' } }] }, FooterContainer], /** * @member {Object} layout={ntype: 'vbox', align: 'stretch'} */ layout: {ntype: 'vbox', align: 'stretch'}, /** * @member {Neo.model.Component} model=MainContainerModel */ model: MainContainerModel }} } Neo.applyClassConfig(MainContainer); export {MainContainer as default};