{"version":3,"sources":["webpack:///./node_modules/quasar/src/components/table/QTh.js","webpack:///./node_modules/quasar/src/components/table/QTr.js","webpack:///./node_modules/quasar/src/components/table/QTd.js","webpack:///./node_modules/quasar/src/components/table/table-top.js","webpack:///./node_modules/quasar/src/components/table/table-header.js","webpack:///./node_modules/quasar/src/components/table/table-body.js","webpack:///./node_modules/quasar/src/components/table/table-bottom.js","webpack:///./node_modules/quasar/src/utils/sort.js","webpack:///./node_modules/quasar/src/components/table/table-sort.js","webpack:///./node_modules/quasar/src/components/table/table-filter.js","webpack:///./node_modules/quasar/src/components/table/table-pagination.js","webpack:///./node_modules/quasar/src/components/table/table-row-selection.js","webpack:///./node_modules/quasar/src/components/table/table-column-selection.js","webpack:///./node_modules/quasar/src/mixins/fullscreen.js","webpack:///./node_modules/quasar/src/components/table/QTable.js"],"names":["Vue","extend","name","props","Object","autoWidth","Boolean","render","h","col","this","class","slot","$vnode","key","child","concat","colsMap","sortable","action","align","QIcon","$q","iconSet","table","arrowUp","staticClass","__iconClass","__thClass","on","click","sort","header","__trClass","__tdClass","computed","marginalsProps","pagination","computedPagination","pagesNumber","isFirstPage","isLastPage","prevPage","nextPage","inFullscreen","toggleFullscreen","methods","getTop","top","$scopedSlots","topLeft","topRight","topSelection","hasSelection","hasSelectionMode","rowsSelectedNumber","push","title","length","getTableHeader","getTableHeaderRow","loading","attrs","colspan","QLinearProgress","color","dark","indeterminate","style","height","mapFn","headerCell","addTableHeaderRowMeta","cols","computedCols","computedColsMap","QTh","classes","label","map","singleSelection","grid","unshift","multipleSelection","QCheckbox","value","someRowsSelected","allRowsSelected","dense","input","val","__updateSelection","computedRows","row","rowKey","data","get","set","partialSelected","multipleSelect","getTableBody","body","bodyCell","topRow","bottomRow","selected","isRowSelected","addBodyRowMeta","addBodyCellMetaData","getCellValue","adding","rowsExpanded","$set","c","field","format","navIcon","ico","lang","rtl","reverse","getBottom","hideBottom","nothingToDisplay","message","filter","noResultsLabel","noResults","loadingLabel","noDataLabel","noData","warning","bottom","getPaginationRow","rowsPerPage","paginationLabel","paginationSlot","selectedRowsLabel","selectedRecords","rowsPerPageOptions","rowsPerPageLabel","recordsPerPage","QSelect","options","computedRowsPerPageOptions","displayValue","allRows","borderless","optionsDense","pag","setPagination","page","firstRowIndex","Math","min","lastRowIndex","computedRowsNumber","QBtn","round","icon","flat","disable","sortDate","a","b","Date","sortMethod","type","Function","default","sortBy","descending","columns","find","def","dir","v","A","B","isNumber","isDate","s","toLocaleString","toLowerCase","columnToSort","binaryStateSort","String","filterMethod","rows","terms","cellValue","lowerTerms","some","indexOf","watch","$nextTick","samePagination","oldPag","newPag","prop","fixPagination","p","Array","innerPagination","max","ceil","count","lastPage","oldLastPage","currentPage","__sendServerRequest","requestServerInteraction","forceServerRequest","newPagination","isServerSide","$emit","created","selection","validator","includes","selectedKeys","keys","forEach","every","clearSelection","visibleColumns","required","names","fullscreen","$route","exitFullscreen","setFullscreen","container","$el","parentNode","replaceChild","fullscreenFillerNode","document","appendChild","classList","add","__historyFullscreen","handler","History","remove","beforeMount","createElement","mounted","beforeDestroy","mixins","FullscreenMixin","Top","TableHeader","TableBody","Bottom","Sort","Filter","Pagination","RowSelection","ColumnSelection","hideHeader","bordered","separator","wrapCells","tableStyle","tableClass","computedData","slice","i","__index","rowsNumber","getBody","hasHeader","item"],"mappings":"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","file":"js/chunk-00d4a421.21ec38b5.js","sourcesContent":["import Vue from 'vue'\n\nimport QIcon from '../icon/QIcon.js'\n\nimport slot from '../../utils/slot.js'\n\nexport default Vue.extend({\n name: 'QTh',\n\n props: {\n props: Object,\n autoWidth: Boolean\n },\n\n render (h) {\n if (this.props === void 0) {\n return h('td', {\n class: this.autoWidth === true ? 'q-table--col-auto-width' : null\n }, slot(this, 'default'))\n }\n\n let col\n const\n name = this.$vnode.key,\n child = [].concat(slot(this, 'default'))\n\n if (name) {\n col = this.props.colsMap[name]\n if (col === void 0) { return }\n }\n else {\n col = this.props.col\n }\n\n if (col.sortable === true) {\n const action = col.align === 'right'\n ? 'unshift'\n : 'push'\n\n child[action](\n h(QIcon, {\n props: { name: this.$q.iconSet.table.arrowUp },\n staticClass: col.__iconClass\n })\n )\n }\n\n return h('th', {\n class: col.__thClass +\n (this.autoWidth === true ? ' q-table--col-auto-width' : ''),\n on: col.sortable === true\n ? { click: () => { this.props.sort(col) } }\n : null\n }, child)\n }\n})\n","import Vue from 'vue'\n\nimport slot from '../../utils/slot.js'\n\nexport default Vue.extend({\n name: 'QTr',\n\n props: {\n props: Object\n },\n\n render (h) {\n return h(\n 'tr',\n this.props === void 0 || this.props.header === true\n ? {}\n : { class: this.props.__trClass },\n slot(this, 'default')\n )\n }\n})\n","import Vue from 'vue'\n\nimport slot from '../../utils/slot.js'\n\nexport default Vue.extend({\n name: 'QTd',\n\n props: {\n props: Object,\n autoWidth: Boolean\n },\n\n render (h) {\n if (this.props === void 0) {\n return h('td', {\n class: { 'q-table--col-auto-width': this.autoWidth }\n }, slot(this, 'default'))\n }\n\n let col\n const name = this.$vnode.key\n\n if (name) {\n col = this.props.colsMap[name]\n if (col === void 0) { return }\n }\n else {\n col = this.props.col\n }\n\n return h('td', {\n class: col.__tdClass +\n (this.autoWidth === true ? ' q-table--col-auto-width' : '')\n }, slot(this, 'default'))\n }\n})\n","export default {\n computed: {\n marginalsProps () {\n return {\n pagination: this.computedPagination,\n pagesNumber: this.pagesNumber,\n isFirstPage: this.isFirstPage,\n isLastPage: this.isLastPage,\n prevPage: this.prevPage,\n nextPage: this.nextPage,\n\n inFullscreen: this.inFullscreen,\n toggleFullscreen: this.toggleFullscreen\n }\n }\n },\n\n methods: {\n getTop (h) {\n const\n top = this.$scopedSlots.top,\n topLeft = this.$scopedSlots['top-left'],\n topRight = this.$scopedSlots['top-right'],\n topSelection = this.$scopedSlots['top-selection'],\n hasSelection = this.hasSelectionMode && topSelection && this.rowsSelectedNumber > 0,\n staticClass = 'q-table__top relative-position row items-center',\n child = []\n\n if (top !== void 0) {\n return h('div', { staticClass }, [ top(this.marginalsProps) ])\n }\n\n if (hasSelection === true) {\n child.push(topSelection(this.marginalsProps))\n }\n else {\n if (topLeft !== void 0) {\n child.push(\n h('div', { staticClass: 'q-table-control' }, [\n topLeft(this.marginalsProps)\n ])\n )\n }\n else if (this.title) {\n child.push(\n h('div', { staticClass: 'q-table__control' }, [\n h('div', { staticClass: 'q-table__title' }, this.title)\n ])\n )\n }\n }\n\n if (topRight !== void 0) {\n child.push(h('div', { staticClass: 'q-table__separator col' }))\n child.push(\n h('div', { staticClass: 'q-table__control' }, [\n topRight(this.marginalsProps)\n ])\n )\n }\n\n if (child.length === 0) {\n return\n }\n\n return h('div', { staticClass }, child)\n }\n }\n}\n","import QLinearProgress from '../linear-progress/QLinearProgress.js'\nimport QCheckbox from '../checkbox/QCheckbox.js'\nimport QTh from './QTh.js'\n\nexport default {\n methods: {\n getTableHeader (h) {\n const child = [ this.getTableHeaderRow(h) ]\n\n if (this.loading === true) {\n child.push(h('tr', { staticClass: 'q-table__progress' }, [\n h('td', { staticClass: 'relative-position', attrs: { colspan: '100%' } }, [\n h(QLinearProgress, {\n props: {\n color: this.color,\n dark: this.dark,\n indeterminate: true\n },\n style: { height: '2px' }\n })\n ])\n ]))\n }\n\n return h('thead', child)\n },\n\n getTableHeaderRow (h) {\n const\n header = this.$scopedSlots.header,\n headerCell = this.$scopedSlots['header-cell']\n\n if (header !== void 0) {\n return header(this.addTableHeaderRowMeta({\n header: true, cols: this.computedCols, sort: this.sort, colsMap: this.computedColsMap\n }))\n }\n\n let mapFn\n\n if (headerCell !== void 0) {\n mapFn = col => headerCell({\n col, cols: this.computedCols, sort: this.sort, colsMap: this.computedColsMap\n })\n }\n else {\n mapFn = col => h(QTh, {\n key: col.name,\n props: {\n props: {\n col,\n cols: this.computedCols,\n sort: this.sort,\n colsMap: this.computedColsMap\n }\n },\n style: col.style,\n class: col.classes\n }, col.label)\n }\n const child = this.computedCols.map(mapFn)\n\n if (this.singleSelection === true && this.grid !== true) {\n child.unshift(h('th', { staticClass: 'q-table--col-auto-width' }, [' ']))\n }\n else if (this.multipleSelection === true) {\n child.unshift(h('th', { staticClass: 'q-table--col-auto-width' }, [\n h(QCheckbox, {\n props: {\n color: this.color,\n value: this.someRowsSelected ? null : this.allRowsSelected,\n dark: this.dark,\n dense: this.dense\n },\n on: {\n input: val => {\n if (this.someRowsSelected) {\n val = false\n }\n this.__updateSelection(\n this.computedRows.map(row => row[this.rowKey]),\n this.computedRows,\n val\n )\n }\n }\n })\n ]))\n }\n\n return h('tr', child)\n },\n\n addTableHeaderRowMeta (data) {\n if (this.multipleSelection === true) {\n Object.defineProperty(data, 'selected', {\n get: () => this.someRowsSelected ? 'some' : this.allRowsSelected,\n set: val => {\n if (this.someRowsSelected) {\n val = false\n }\n this.__updateSelection(\n this.computedRows.map(row => row[this.rowKey]),\n this.computedRows,\n val\n )\n }\n })\n data.partialSelected = this.someRowsSelected\n data.multipleSelect = true\n }\n\n return data\n }\n }\n}\n","import QCheckbox from '../checkbox/QCheckbox.js'\n\nexport default {\n methods: {\n getTableBody (h) {\n const\n body = this.$scopedSlots.body,\n bodyCell = this.$scopedSlots['body-cell'],\n topRow = this.$scopedSlots['top-row'],\n bottomRow = this.$scopedSlots['bottom-row']\n let\n child = []\n\n if (body !== void 0) {\n child = this.computedRows.map(row => {\n const\n key = row[this.rowKey],\n selected = this.isRowSelected(key)\n\n return body(this.addBodyRowMeta({\n key,\n row,\n cols: this.computedCols,\n colsMap: this.computedColsMap,\n __trClass: selected ? 'selected' : ''\n }))\n })\n }\n else {\n child = this.computedRows.map(row => {\n const\n key = row[this.rowKey],\n selected = this.isRowSelected(key),\n child = bodyCell\n ? this.computedCols.map(col => bodyCell(this.addBodyCellMetaData({ row, col })))\n : this.computedCols.map(col => {\n const slot = this.$scopedSlots[`body-cell-${col.name}`]\n return slot\n ? slot(this.addBodyCellMetaData({ row, col: col }))\n : h('td', {\n staticClass: col.__tdClass,\n style: col.style,\n class: col.classes\n }, this.getCellValue(col, row))\n })\n\n if (this.hasSelectionMode) {\n child.unshift(h('td', { staticClass: 'q-table--col-auto-width' }, [\n h(QCheckbox, {\n props: {\n value: selected,\n color: this.color,\n dark: this.dark,\n dense: this.dense\n },\n on: {\n input: adding => {\n this.__updateSelection([key], [row], adding)\n }\n }\n })\n ]))\n }\n\n return h('tr', { key, class: { selected } }, child)\n })\n }\n\n if (topRow !== void 0) {\n child.unshift(topRow({ cols: this.computedCols }))\n }\n if (bottomRow !== void 0) {\n child.push(bottomRow({ cols: this.computedCols }))\n }\n\n return h('tbody', child)\n },\n\n addBodyRowMeta (data) {\n if (this.hasSelectionMode) {\n Object.defineProperty(data, 'selected', {\n get: () => this.isRowSelected(data.key),\n set: adding => {\n this.__updateSelection([data.key], [data.row], adding)\n }\n })\n }\n\n Object.defineProperty(data, 'expand', {\n get: () => this.rowsExpanded[data.key] === true,\n set: val => {\n this.$set(this.rowsExpanded, data.key, val)\n }\n })\n\n data.cols = data.cols.map(col => {\n const c = { ...col }\n Object.defineProperty(c, 'value', {\n get: () => this.getCellValue(col, data.row)\n })\n return c\n })\n\n return data\n },\n\n addBodyCellMetaData (data) {\n Object.defineProperty(data, 'value', {\n get: () => this.getCellValue(data.col, data.row)\n })\n return data\n },\n\n getCellValue (col, row) {\n const val = typeof col.field === 'function' ? col.field(row) : row[col.field]\n return col.format !== void 0 ? col.format(val) : val\n }\n }\n}\n","import QSelect from '../select/QSelect.js'\nimport QBtn from '../btn/QBtn.js'\nimport QIcon from '../icon/QIcon.js'\n\nexport default {\n computed: {\n navIcon () {\n const ico = [ this.$q.iconSet.table.prevPage, this.$q.iconSet.table.nextPage ]\n return this.$q.lang.rtl ? ico.reverse() : ico\n }\n },\n\n methods: {\n getBottom (h) {\n if (this.hideBottom === true) {\n return\n }\n\n if (this.nothingToDisplay === true) {\n const message = this.filter\n ? this.noResultsLabel || this.$q.lang.table.noResults\n : (this.loading === true ? this.loadingLabel || this.$q.lang.table.loading : this.noDataLabel || this.$q.lang.table.noData)\n\n return h('div', { staticClass: 'q-table__bottom row items-center q-table__bottom--nodata' }, [\n h(QIcon, { props: { name: this.$q.iconSet.table.warning } }),\n message\n ])\n }\n\n const bottom = this.$scopedSlots.bottom\n\n return h('div', {\n staticClass: 'q-table__bottom row items-center',\n class: bottom !== void 0 ? null : 'justify-end'\n }, bottom !== void 0 ? [ bottom(this.marginalsProps) ] : this.getPaginationRow(h))\n },\n\n getPaginationRow (h) {\n const\n { rowsPerPage } = this.computedPagination,\n paginationLabel = this.paginationLabel || this.$q.lang.table.pagination,\n paginationSlot = this.$scopedSlots.pagination\n\n return [\n h('div', { staticClass: 'q-table__control' }, [\n h('div', [\n this.hasSelectionMode && this.rowsSelectedNumber > 0\n ? (this.selectedRowsLabel || this.$q.lang.table.selectedRecords)(this.rowsSelectedNumber)\n : ''\n ])\n ]),\n\n h('div', { staticClass: 'q-table__separator col' }),\n\n this.rowsPerPageOptions.length > 1\n ? h('div', { staticClass: 'q-table__control' }, [\n h('span', { staticClass: 'q-table__bottom-item' }, [\n this.rowsPerPageLabel || this.$q.lang.table.recordsPerPage\n ]),\n h(QSelect, {\n staticClass: 'inline q-table__bottom-item',\n props: {\n color: this.color,\n value: rowsPerPage,\n options: this.computedRowsPerPageOptions,\n displayValue: rowsPerPage === 0\n ? this.$q.lang.table.allRows\n : rowsPerPage,\n dark: this.dark,\n borderless: true,\n dense: true,\n optionsDense: true\n },\n on: {\n input: pag => {\n this.setPagination({\n page: 1,\n rowsPerPage: pag.value\n })\n }\n }\n })\n ])\n : null,\n\n h('div', { staticClass: 'q-table__control' }, [\n paginationSlot !== void 0\n ? paginationSlot(this.marginalsProps)\n : [\n h('span', { staticClass: 'q-table__bottom-item' }, [\n rowsPerPage\n ? paginationLabel(this.firstRowIndex + 1, Math.min(this.lastRowIndex, this.computedRowsNumber), this.computedRowsNumber)\n : paginationLabel(1, this.computedRowsNumber, this.computedRowsNumber)\n ]),\n h(QBtn, {\n props: {\n color: this.color,\n round: true,\n icon: this.navIcon[0],\n dense: true,\n flat: true,\n disable: this.isFirstPage\n },\n on: { click: this.prevPage }\n }),\n h(QBtn, {\n props: {\n color: this.color,\n round: true,\n icon: this.navIcon[1],\n dense: true,\n flat: true,\n disable: this.isLastPage\n },\n on: { click: this.nextPage }\n })\n ]\n ])\n ]\n }\n }\n}\n","export function sortString (a, b) {\n if (typeof a !== 'string') {\n throw new TypeError('The value for sorting must be a String')\n }\n return a.localeCompare(b)\n}\n\nexport function sortNumber (a, b) {\n return a - b\n}\n\nexport function sortDate (a, b) {\n return (new Date(a)) - (new Date(b))\n}\n\nexport function sortBoolean (a, b) {\n return a && !b\n ? -1\n : (!a && b ? 1 : 0)\n}\n","import { sortDate } from '../../utils/sort.js'\nimport { isNumber, isDate } from '../../utils/is.js'\n\nexport default {\n props: {\n sortMethod: {\n type: Function,\n default (data, sortBy, descending) {\n const col = this.columns.find(def => def.name === sortBy)\n if (col === null || col.field === void 0) {\n return data\n }\n\n const\n dir = descending ? -1 : 1,\n val = typeof col.field === 'function'\n ? v => col.field(v)\n : v => v[col.field]\n\n return data.sort((a, b) => {\n let\n A = val(a),\n B = val(b)\n\n if (A === null || A === void 0) {\n return -1 * dir\n }\n if (B === null || B === void 0) {\n return 1 * dir\n }\n if (col.sort !== void 0) {\n return col.sort(A, B) * dir\n }\n if (isNumber(A) === true && isNumber(B) === true) {\n return (A - B) * dir\n }\n if (isDate(A) === true && isDate(B) === true) {\n return sortDate(A, B) * dir\n }\n if (typeof A === 'boolean' && typeof B === 'boolean') {\n return (a - b) * dir\n }\n\n [A, B] = [A, B].map(s => (s + '').toLocaleString().toLowerCase())\n\n return A < B\n ? -1 * dir\n : (A === B ? 0 : dir)\n })\n }\n }\n },\n\n computed: {\n columnToSort () {\n const { sortBy } = this.computedPagination\n\n if (sortBy) {\n return this.columns.find(def => def.name === sortBy) || null\n }\n }\n },\n\n methods: {\n sort (col /* String(col name) or Object(col definition) */) {\n if (col === Object(col)) {\n col = col.name\n }\n\n let { sortBy, descending } = this.computedPagination\n\n if (sortBy !== col) {\n sortBy = col\n descending = false\n }\n else {\n if (this.binaryStateSort === true) {\n descending = !descending\n }\n else {\n if (descending === true) {\n sortBy = null\n }\n else {\n descending = true\n }\n }\n }\n\n this.setPagination({ sortBy, descending, page: 1 })\n }\n }\n}\n","export default {\n props: {\n filter: [String, Object],\n filterMethod: {\n type: Function,\n default (rows, terms, cols = this.computedCols, cellValue = this.getCellValue) {\n const lowerTerms = terms ? terms.toLowerCase() : ''\n return rows.filter(\n row => cols.some(col => (cellValue(col, row) + '').toLowerCase().indexOf(lowerTerms) !== -1)\n )\n }\n }\n },\n\n watch: {\n filter () {\n this.$nextTick(() => {\n this.setPagination({ page: 1 }, true)\n })\n }\n }\n}\n","function samePagination (oldPag, newPag) {\n for (let prop in newPag) {\n if (newPag[prop] !== oldPag[prop]) {\n return false\n }\n }\n return true\n}\n\nfunction fixPagination (p) {\n if (p.page < 1) {\n p.page = 1\n }\n if (p.rowsPerPage !== void 0 && p.rowsPerPage < 1) {\n p.rowsPerPage = 0\n }\n return p\n}\n\nexport default {\n props: {\n pagination: Object,\n rowsPerPageOptions: {\n type: Array,\n default: () => [3, 5, 7, 10, 15, 20, 25, 50, 0]\n }\n },\n\n computed: {\n computedPagination () {\n return fixPagination({\n ...this.innerPagination,\n ...this.pagination\n })\n },\n\n firstRowIndex () {\n const { page, rowsPerPage } = this.computedPagination\n return (page - 1) * rowsPerPage\n },\n\n lastRowIndex () {\n const { page, rowsPerPage } = this.computedPagination\n return page * rowsPerPage\n },\n\n isFirstPage () {\n return this.computedPagination.page === 1\n },\n\n pagesNumber () {\n return Math.max(\n 1,\n Math.ceil(this.computedRowsNumber / this.computedPagination.rowsPerPage)\n )\n },\n\n isLastPage () {\n if (this.lastRowIndex === 0) {\n return true\n }\n return this.computedPagination.page >= this.pagesNumber\n },\n\n computedRowsPerPageOptions () {\n return this.rowsPerPageOptions.map(count => ({\n label: count === 0 ? this.$q.lang.table.allRows : '' + count,\n value: count\n }))\n }\n },\n\n watch: {\n pagesNumber (lastPage, oldLastPage) {\n if (lastPage === oldLastPage) {\n return\n }\n\n const currentPage = this.computedPagination.page\n if (lastPage && !currentPage) {\n this.setPagination({ page: 1 })\n }\n else if (lastPage < currentPage) {\n this.setPagination({ page: lastPage })\n }\n }\n },\n\n methods: {\n __sendServerRequest (pagination) {\n this.requestServerInteraction({\n pagination,\n filter: this.filter\n })\n },\n\n setPagination (val, forceServerRequest) {\n const newPagination = fixPagination({\n ...this.computedPagination,\n ...val\n })\n\n if (samePagination(this.computedPagination, newPagination)) {\n if (this.isServerSide && forceServerRequest) {\n this.__sendServerRequest(newPagination)\n }\n return\n }\n\n if (this.isServerSide) {\n this.__sendServerRequest(newPagination)\n return\n }\n\n if (this.pagination) {\n this.$emit('update:pagination', newPagination)\n }\n else {\n this.innerPagination = newPagination\n }\n },\n\n prevPage () {\n const { page } = this.computedPagination\n if (page > 1) {\n this.setPagination({ page: page - 1 })\n }\n },\n\n nextPage () {\n const { page, rowsPerPage } = this.computedPagination\n if (this.lastRowIndex > 0 && page * rowsPerPage < this.computedRowsNumber) {\n this.setPagination({ page: page + 1 })\n }\n }\n },\n\n created () {\n this.$emit('update:pagination', { ...this.computedPagination })\n }\n}\n","export default {\n props: {\n selection: {\n type: String,\n default: 'none',\n validator: v => ['single', 'multiple', 'none'].includes(v)\n },\n selected: {\n type: Array,\n default: () => []\n }\n },\n\n computed: {\n selectedKeys () {\n const keys = {}\n this.selected.map(row => row[this.rowKey]).forEach(key => {\n keys[key] = true\n })\n return keys\n },\n\n hasSelectionMode () {\n return this.selection !== 'none'\n },\n\n singleSelection () {\n return this.selection === 'single'\n },\n\n multipleSelection () {\n return this.selection === 'multiple'\n },\n\n allRowsSelected () {\n if (this.multipleSelection === true) {\n return this.computedRows.length > 0 && this.computedRows.every(row => this.selectedKeys[row[this.rowKey]] === true)\n }\n },\n\n someRowsSelected () {\n if (this.multipleSelection === true) {\n return !this.allRowsSelected && this.computedRows.some(row => this.selectedKeys[row[this.rowKey]] === true)\n }\n },\n\n rowsSelectedNumber () {\n return this.selected.length\n }\n },\n\n methods: {\n isRowSelected (key) {\n return this.selectedKeys[key] === true\n },\n\n clearSelection () {\n this.$emit('update:selected', [])\n },\n\n __updateSelection (keys, rows, adding) {\n if (this.singleSelection === true) {\n this.$emit('update:selected', adding ? rows : [])\n }\n else {\n this.$emit('update:selected', adding\n ? this.selected.concat(rows)\n : this.selected.filter(row => keys.includes(row[this.rowKey]) === false)\n )\n }\n }\n }\n}\n","export default {\n props: {\n visibleColumns: Array\n },\n\n computed: {\n computedCols () {\n let { sortBy, descending } = this.computedPagination\n\n const cols = this.visibleColumns !== void 0\n ? this.columns.filter(col => col.required === true || this.visibleColumns.includes(col.name) === true)\n : this.columns\n\n return cols.map(col => {\n col.align = col.align || 'right'\n col.__iconClass = `q-table__sort-icon q-table__sort-icon--${col.align}`\n col.__thClass = `text-${col.align}${col.sortable ? ' sortable' : ''}${col.name === sortBy ? ` sorted ${descending ? 'sort-desc' : ''}` : ''}`\n col.__tdClass = `text-${col.align}`\n return col\n })\n },\n\n computedColsMap () {\n const names = {}\n this.computedCols.forEach(col => {\n names[col.name] = col\n })\n return names\n }\n }\n}\n","import History from '../history.js'\n\nexport default {\n props: {\n fullscreen: Boolean\n },\n\n data () {\n return {\n inFullscreen: false\n }\n },\n\n watch: {\n $route () {\n this.exitFullscreen()\n },\n\n fullscreen (v) {\n if (this.inFullscreen !== v) {\n this.toggleFullscreen()\n }\n },\n\n inFullscreen (v) {\n this.$emit('update:fullscreen', v)\n this.$emit('fullscreen', v)\n }\n },\n\n methods: {\n toggleFullscreen () {\n if (this.inFullscreen === true) {\n this.exitFullscreen()\n }\n else {\n this.setFullscreen()\n }\n },\n\n setFullscreen () {\n if (this.inFullscreen === true) {\n return\n }\n\n this.inFullscreen = true\n this.container = this.$el.parentNode\n this.container.replaceChild(this.fullscreenFillerNode, this.$el)\n document.body.appendChild(this.$el)\n document.body.classList.add('q-body--fullscreen-mixin')\n\n this.__historyFullscreen = {\n handler: this.exitFullscreen\n }\n History.add(this.__historyFullscreen)\n },\n\n exitFullscreen () {\n if (this.inFullscreen !== true) {\n return\n }\n\n if (this.__historyFullscreen !== void 0) {\n History.remove(this.__historyFullscreen)\n this.__historyFullscreen = void 0\n }\n this.container.replaceChild(this.$el, this.fullscreenFillerNode)\n document.body.classList.remove('q-body--fullscreen-mixin')\n this.inFullscreen = false\n }\n },\n\n beforeMount () {\n this.fullscreenFillerNode = document.createElement('span')\n },\n\n mounted () {\n this.fullscreen === true && this.setFullscreen()\n },\n\n beforeDestroy () {\n this.exitFullscreen()\n }\n}\n","import Vue from 'vue'\n\nimport Top from './table-top.js'\nimport TableHeader from './table-header.js'\nimport TableBody from './table-body.js'\nimport Bottom from './table-bottom.js'\n\nimport Sort from './table-sort.js'\nimport Filter from './table-filter.js'\nimport Pagination from './table-pagination.js'\nimport RowSelection from './table-row-selection.js'\nimport ColumnSelection from './table-column-selection.js'\nimport FullscreenMixin from '../../mixins/fullscreen.js'\n\nexport default Vue.extend({\n name: 'QTable',\n\n mixins: [\n FullscreenMixin,\n Top,\n TableHeader,\n TableBody,\n Bottom,\n Sort,\n Filter,\n Pagination,\n RowSelection,\n ColumnSelection\n ],\n\n props: {\n data: {\n type: Array,\n default: () => []\n },\n rowKey: {\n type: String,\n default: 'id'\n },\n color: {\n type: String,\n default: 'grey-8'\n },\n grid: Boolean,\n dense: Boolean,\n columns: Array,\n loading: Boolean,\n title: String,\n hideHeader: Boolean,\n hideBottom: Boolean,\n dark: Boolean,\n flat: Boolean,\n bordered: Boolean,\n separator: {\n type: String,\n default: 'horizontal',\n validator: v => ['horizontal', 'vertical', 'cell', 'none'].includes(v)\n },\n wrapCells: Boolean,\n binaryStateSort: Boolean,\n noDataLabel: String,\n noResultsLabel: String,\n loadingLabel: String,\n selectedRowsLabel: Function,\n rowsPerPageLabel: String,\n paginationLabel: Function,\n tableStyle: {\n type: [String, Array, Object],\n default: ''\n },\n tableClass: {\n type: [String, Array, Object],\n default: ''\n }\n },\n\n data () {\n return {\n rowsExpanded: {},\n innerPagination: {\n sortBy: null,\n descending: false,\n page: 1,\n rowsPerPage: 5\n }\n }\n },\n\n computed: {\n computedData () {\n let rows = this.data.slice().map((row, i) => {\n row.__index = i\n return row\n })\n\n if (rows.length === 0) {\n return {\n rowsNumber: 0,\n rows: []\n }\n }\n if (this.isServerSide) {\n return { rows }\n }\n\n const { sortBy, descending, rowsPerPage } = this.computedPagination\n\n if (this.filter) {\n rows = this.filterMethod(rows, this.filter, this.computedCols, this.getCellValue)\n }\n\n if (this.columnToSort) {\n rows = this.sortMethod(rows, sortBy, descending)\n }\n\n const rowsNumber = rows.length\n\n if (rowsPerPage) {\n rows = rows.slice(this.firstRowIndex, this.lastRowIndex)\n }\n\n return { rowsNumber, rows }\n },\n\n computedRows () {\n return this.computedData.rows\n },\n\n computedRowsNumber () {\n return this.isServerSide\n ? this.computedPagination.rowsNumber || 0\n : this.computedData.rowsNumber\n },\n\n nothingToDisplay () {\n return this.computedRows.length === 0\n },\n\n isServerSide () {\n return this.computedPagination.rowsNumber !== void 0\n }\n },\n\n render (h) {\n return h('div',\n {\n staticClass: 'q-table__container',\n class: {\n 'q-table--grid': this.grid,\n 'q-table--dark': this.dark,\n 'q-table--dense': this.dense,\n 'q-table--flat': this.flat,\n 'q-table--bordered': this.bordered,\n 'q-table--no-wrap': this.wrapCells === false,\n [`q-table--${this.separator}-separator`]: true,\n fullscreen: this.inFullscreen,\n scroll: this.inFullscreen\n }\n },\n [\n this.getTop(h),\n this.getBody(h),\n this.getBottom(h)\n ]\n )\n },\n\n methods: {\n requestServerInteraction (prop = {}) {\n this.$nextTick(() => {\n this.$emit('request', {\n pagination: prop.pagination || this.computedPagination,\n filter: prop.filter || this.filter,\n getCellValue: this.getCellValue\n })\n })\n },\n\n getBody (h) {\n const hasHeader = !this.hideHeader\n\n if (this.grid === true) {\n const item = this.$scopedSlots.item\n\n if (item !== void 0) {\n return [\n (hasHeader && h('div', { staticClass: 'q-table__middle scroll' }, [\n h('table', {\n staticClass: 'q-table',\n class: { 'q-table--dark': this.dark }\n }, [\n this.getTableHeader(h)\n ])\n ])) || null,\n h('div', { staticClass: 'row' }, this.computedRows.map(row => {\n const\n key = row[this.rowKey],\n selected = this.isRowSelected(key)\n\n return item(this.addBodyRowMeta({\n key,\n row,\n cols: this.computedCols,\n colsMap: this.computedColsMap,\n __trClass: selected ? 'selected' : ''\n }))\n }))\n ]\n }\n }\n\n return h('div', { staticClass: 'q-table__middle scroll', class: this.tableClass, style: this.tableStyle }, [\n h('table', {\n staticClass: 'q-table',\n class: this.dark ? ' q-table--dark' : ''\n }, [\n (hasHeader && this.getTableHeader(h)) || null,\n this.getTableBody(h)\n ])\n ])\n }\n }\n})\n"],"sourceRoot":""}