import '@material/mwc-dialog';
import '@material/mwc-fab';
import collect from 'collect.js';
import {Children} from 'mithril';
import {Model} from '../../Models';
import DataTable from '../DataTable/DataTable.jsx';
import TableBody from '../DataTable/TableBody.jsx';
import TableCell from '../DataTable/TableCell.jsx';
import TableHead from '../DataTable/TableHead.jsx';
import TableHeadCell from '../DataTable/TableHeadCell.jsx';
import TableHeadRow from '../DataTable/TableHeadRow.jsx';
import TableRow from '../DataTable/TableRow.jsx';
import Mdi from '../Mdi.jsx';
import Page from '../Page.jsx';
export type ColumnT = {
id?: string,
title: string,
type?: 'checkbox' | 'numeric'
}
/**
* @abstract
*/
export default class RecordsPage extends Page {
columns: {[string]: [string] | ColumnT} | ColumnT[];
rows: string[][] = [];
dialogs: Children[];
model: Model;
tableColumns(): Children {
return collect(this.columns)
.map(
(column: ColumnT | string, id: string) => (