\n ${dropdownItems.map((d, i) => `
${d.label}
`).join('')}\n
\n `;\n};\n\nexport {\n getDropdownHTML\n};\n\n\n\n// WEBPACK FOOTER //\n// ./src/columnmanager.js","import DataTable from './datatable.js';\nimport packageJson from '../package.json';\nDataTable.__version__ = packageJson.version;\n\nexport default DataTable;\n\n\n\n// WEBPACK FOOTER //\n// ./src/index.js","import $ from './dom';\nimport DataManager from './datamanager';\nimport CellManager from './cellmanager';\nimport ColumnManager from './columnmanager';\nimport RowManager from './rowmanager';\nimport BodyRenderer from './body-renderer';\nimport Style from './style';\nimport Keyboard from './keyboard';\nimport DEFAULT_OPTIONS from './defaults';\nimport './style.scss';\n\nclass DataTable {\n constructor(wrapper, options) {\n DataTable.instances++;\n\n if (typeof wrapper === 'string') {\n // css selector\n wrapper = document.querySelector(wrapper);\n }\n this.wrapper = wrapper;\n if (!(this.wrapper instanceof HTMLElement)) {\n throw new Error('Invalid argument given for `wrapper`');\n }\n\n this.options = Object.assign({}, DEFAULT_OPTIONS, options);\n this.options.headerDropdown =\n DEFAULT_OPTIONS.headerDropdown\n .concat(options.headerDropdown || []);\n // custom user events\n this.events = Object.assign(\n {}, DEFAULT_OPTIONS.events, options.events || {}\n );\n this.fireEvent = this.fireEvent.bind(this);\n\n this.prepare();\n\n this.style = new Style(this);\n this.keyboard = new Keyboard(this.wrapper);\n this.datamanager = new DataManager(this.options);\n this.rowmanager = new RowManager(this);\n this.columnmanager = new ColumnManager(this);\n this.cellmanager = new CellManager(this);\n this.bodyRenderer = new BodyRenderer(this);\n\n if (this.options.data) {\n this.refresh();\n }\n }\n\n prepare() {\n this.prepareDom();\n this.unfreeze();\n }\n\n prepareDom() {\n this.wrapper.innerHTML = `\n \n ${(contentHTML)}\n ${sortIndicator}\n ${resizeColumn}\n ${dropdown}\n
\n ${editCellHTML}\n `;\n }\n\n getEditCellHTML() {\n return `\n