@clake/react-bootstrap4-window 0.7.3 → 0.7.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/lib/CTable.js.map CHANGED
@@ -1,5 +1,5 @@
1
- /* @clake/react-bootstrap4-window v0.7.3 | by Clake
1
+ /* @clake/react-bootstrap4-window v0.7.5 | by Clake
2
2
  * Copyright (c) 2024 Clake,
3
- * 2024-03-14T18:58:44+0800
3
+ * 2024-03-15T10:28:01+0800
4
4
  */
5
- {"version":3,"sources":["CTable.js"],"names":["CTable","props","a","b","Date","getTime","prototype","keys","Object","length","every","k","equals","checked","select_all","selectRows","state","data","forEach","item","key","push","setState","selectAll","selectHalf","e","dom","currentTarget","sort_type","dataset","sort","changeSort","tableHeader","style","transform","scrollLeft","tableTotal","field","document","querySelector","domId","deleteRowHandler","parseInt","mainMenu","index","cloneRow","page","onSelectPage","slice","assign","cacheRow","editRows","dataCount","previousElementSibling","focus","val","row","target","indexOf","headers","onEdit","editCallback","editData","select","total","filter","start","end","contain","originalData","Common","RandomString","headerSplits","sortList","is_sort","onSort","is_filter","onFilter","current_sort","filter_list","noClone","lockColumns","isLock","initTableWidth","bindSplit","nextProps","edit","Clone","isHalf","allchk","idx","set_chk","nextState","width","reg","matchs","match","unit","React","Children","map","children","sourceFunc","source","number","showNumbers","res","count","type","value","text","flag","i","setRowCheck","checkAllCheckHalf","allChecked","half","onCheck","selectOnce","rowIdx","console","log","includes","splice","onClick","refs","changeHandler","clearSort","classList","remove","child","add","emitEvt","prv","prv_child","desc","dataType","preventDefault","stopPropagation","show","evt","numMenu","RegExp","test","hide","localFilter","is_clean","list","row_index","onDelete","deleteRow","setChecked","move","split","drag","dragColumnLeft","dragWidth","Drag","dragDom","eventDom","xy","GetDomXY","mainDom","parentNode","left","table_rows","x","column_key","diff","table_head","table_body","table_total","querySelectorAll","setEventDom","name","base","striped","theme","bordered","hover","sm","fontSm","responsive","noWrap","className","height","absolute","position","top","y","right","bottom","extend","headerTheme","headClass","parseFloat","totalData","toFixed","c","getMainClasses","getStyles","getBodyClasses","renderHeader","renderRows","renderTotal","renderFoot","getClasses","getTableStyles","getHeaderClasses","textAlign","sort_icon","menuContextHandler","sortHandler","scrollHandler","renderEditRow","renderRow","renderEditAddRow","menu","renderMenu","renderNumberMenu","parentRow","clickHandler","columnStyle","align","cloneElement","disabled","onDoubleClick","renderEditComponent","onFormat","addNewHandler","editHandler","combo","comboData","calendarFormat","chk","hasOwnProperty","calcLocalTotal","foot","selectPageHandler","showPages","lang","i18","i18n","getLang","langStr","CTableLang","menuClickHandler","execCommand","getSelection","filterHandler","toString","clearFilter","inputStyle","equal","filterChangeHandler","stopEvent","condition","customMenu","explainCustomMenu","Array","click","Component","propTypes","PropTypes","oneOf","string","array","bool","header","center","currentPage","tree","onClickTree","func","onRefresh","refreshText","object","defaultProps"],"mappings":"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","sourcesContent":["import React from 'react';\nimport PropTypes, {object} from 'prop-types';\nimport classNames from 'classnames/bind';\nimport {\n Icon,\n Pagination,\n Menu,\n Input,\n Button,\n Common,\n i18n,\n CCheckbox,\n Scroll,\n HScroll\n} from '@clake/react-bootstrap4';\nimport './css/CTable.less';\nimport Drag from \"./Drag\";\nimport CTableInput from \"./CTableInput\";\nimport CTableLang from './i18n/CTable';\nimport PageBar from \"./PageBar\";\nimport { log } from 'gulp-util';\nclass CTable extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n data : this.props.data || [],\n dataCount: this.props.dataCount,\n page : 1,\n select : this.props.select,\n total : this.props.total,\n filter : {\n start : '',\n end : '',\n contain: ''\n },\n selectAll: false,\n selectHalf: false,\n selectRows: []\n };\n\n this.originalData = this.state.data.slice(0);\n\n this.domId = 'table-' + Common.RandomString(16);\n\n this.select_all = false;\n this.selectRows = [];\n\n this.headerSplits = [];\n\n this.sortList = {};\n this.is_sort = typeof this.props.onSort === 'function' || this.props.sort;\n this.is_filter = typeof this.props.onFilter === 'function' || this.props.filter;\n this.current_sort = null;\n\n this.filter_list = [];\n\n this.editRows = [];\n\n this.cacheRow = {};\n //列头数据\n this.headers = {};\n //不需要克隆列\n this.noClone = {};\n\n this.lockColumns = [];\n //lock column flag\n this.isLock = false;\n\n this.initTableWidth();\n }\n\n componentDidMount() {\n this.bindSplit();\n }\n\n componentWillReceiveProps(nextProps) {\n if (this.state.data !== nextProps.data) {\n if (this.props.edit) {\n if (this.equals(this.originalData,nextProps.data)) {\n return\n }\n this.editRows = [];\n this.originalData = Common.Clone(nextProps.data);\n }\n // if (this.allchk) {\n // this.allchk.setHalf(false);\n // this.selectRows = [];\n // }\n // this.select_all = false;\n // this.selectRows = [];\n let selectRows = []\n let isHalf = false\n let allchk = false\n if (nextProps.data && nextProps.data.length > 0) {\n nextProps.data.forEach((item,idx)=>{\n if (item?.set_chk) {\n selectRows.push(idx)\n }\n })\n if (selectRows.length === nextProps.data.length) {\n allchk = true\n } else {\n if (selectRows.length>0) {\n isHalf = true\n }\n }\n }\n this.setState({\n data : nextProps.data,\n dataCount: nextProps.dataCount,\n page : nextProps.page,\n total : nextProps.total,\n selectRows: selectRows,\n selectHalf: isHalf,\n selectAll: allchk,\n });\n }\n }\n\n shouldComponentUpdate(nextProps, nextState) {\n if (nextState.selectRows !== this.state.selectRows) {\n return true\n }\n if (this.state.filter !== nextState.filter) {\n return true;\n }\n if (nextState.total !== this.state.total) {\n return true\n }\n return nextState.data !== this.state.data;\n }\n\n equals = (a, b) => {\n if (a === b) return true;\n if (a instanceof Date && b instanceof Date) return a.getTime() === b.getTime();\n if (!a || !b || (typeof a !== 'object' && typeof b !== 'object')) return a === b;\n if (a.prototype !== b.prototype) return false;\n let keys = Object.keys(a);\n if (keys.length !== Object.keys(b).length) return false;\n return keys.every(k => this.equals(a[k], b[k]));\n };\n\n initTableWidth() {\n if (this.props.width) {\n this.width = 0;\n let reg = /(\\d+)(px|rem|cm|mm|pt)$/;\n let matchs = this.props.width.match(reg);\n let unit = matchs[2];\n React.Children.map(this.props.children, (item, key) => {\n if (item.props.width) {\n let matchs = item.props.width.match(reg);\n this.width += parseInt(matchs[1]);\n this.headers[item.props.field] = item.props;\n if (item.props.noClone) {\n this.noClone[item.props.field] = \"\";\n }\n }\n });\n if (this.props.select) {\n this.width += 20;\n }\n this.width += unit;\n }\n }\n\n //inner source ********************\n sourceLoad() {\n if (typeof this.props.sourceFunc !== 'function') return;\n\n this.props.sourceFunc({\n source:this.props.source,\n page:this.state.page,\n number:this.props.showNumbers,\n },(res)=>{\n this.setState({\n data : res.data,\n dataCount: res.count,\n page : res.page,\n })\n });\n }\n\n sourceFilter() {\n return this.filter_list.map((item)=>{\n switch (item.type) {\n case \"start\":\n return {\n field:item.field,\n value:`${item.text}%`,\n flag:'like'\n };\n case \"end\":\n return {\n field:item.field,\n value:`%${item.text}`,\n flag:'like'\n };\n case \"clear\":\n this.filter = [];\n break;\n case \"\":\n return {\n field:item.field,\n value:item.text,\n flag:'='\n };\n default:\n return {\n field:item.field,\n value:`%${item.text}%`,\n flag:'like'\n }\n }\n });\n }\n\n sourceOrder() {\n\n }\n\n //innter source end ***************************\n //checkbox handler\n changeHandler(row, i) {\n return (checked,e) => {\n let selectRows = this.setRowCheck(checked,i);\n const [allChecked, half] = this.checkAllCheckHalf(selectRows);\n this.setState({\n selectRows: selectRows,\n selectAll: allChecked,\n selectHalf: half\n })\n if (typeof this.props.onCheck === \"function\") {\n this.props.onCheck(checked, row);\n }\n };\n }\n checkAllCheckHalf(selectRows) {\n if (!this.allchk || this.props.selectOnce) {\n return [false, false];\n }\n if (selectRows.length > 0 && selectRows.length !== this.state.data.length) {\n return [false, true]\n }\n if (selectRows.length === 0) {\n return [false, false]\n } else if (selectRows.length === this.state.data.length) {\n return [true, false]\n }\n return [false, false]\n }\n setRowCheck(checked,rowIdx) {\n // let row = this.refs['row_'+rowIdx];\n let selectRows = this.props.selectOnce?[]:this.state.selectRows.slice()\n console.log(checked,rowIdx,selectRows);\n\n if (checked) {\n if (!selectRows.includes(rowIdx)) {\n selectRows.push(rowIdx);\n }\n // ReactDOM.findDOMNode(row).parentNode.parentNode.classList.add('ck-table-selected');\n } else {\n if (selectRows.includes(rowIdx)) {\n selectRows.splice(selectRows.indexOf(rowIdx),1);\n }\n // ReactDOM.findDOMNode(row).parentNode.parentNode.classList.remove('ck-table-selected');\n }\n // this.setState({selectRows: selectRows});\n return selectRows\n }\n\n selectAll = (checked) => {\n this.select_all = checked;\n // Common.map(this.refs, (item,key,idx) => {\n // item.setChecked(this.select_all);\n // this.setRowCheck(this.select_all,idx);\n // });\n let selectRows = []\n if (checked) {\n this.state.data.forEach((item,key)=>{\n selectRows.push(key)\n })\n }\n this.setState({\n selectRows: selectRows,\n selectAll: checked,\n selectHalf: false\n })\n };\n\n clickHandler(row, i) {\n return () => {\n if (typeof this.props.onClick === 'function') {\n this.props.onClick(row, i);\n }\n if (this.props.select) {\n let row = this.refs['row_'+i];\n row.changeHandler(null)\n // this.setRowCheck(!row.getChecked(),i);\n // this.checkAllCheckHalf();\n }\n }\n }\n\n /**\n * sort\n */\n sortHandler = (e) => {\n let dom = e.currentTarget;\n let sort_type = dom.dataset.sort || 'asc';\n this.changeSort(dom, sort_type)\n };\n\n changeSort(dom, sort_type) {\n if (!dom) {\n return\n }\n\n this.clearSort(false);\n this.current_sort = dom.dataset.field;\n dom.dataset.sort = sort_type === 'asc' ? 'desc' : 'asc';\n dom.classList.remove('ck-ctable-sort');\n this.sortList[dom.dataset.field] = sort_type;\n let child = dom.querySelector('i');\n child.classList.remove('fa-sort', 'fa-sort-alpha-up', 'fa-sort-alpha-down');\n child.classList.add('fa-sort-alpha-' + (sort_type === 'asc' ? 'down' : 'up'));\n if (typeof this.props.onSort === 'function') {\n this.props.onSort(dom.dataset.field, sort_type);\n } else {\n // this.localSort(dom.dataset.field,sort_type)\n }\n }\n\n clearSort(emitEvt) {\n if (this.current_sort) {\n let prv = document.querySelector(`#${this.domId}-sort-${this.current_sort}`);\n prv.dataset.sort = 'asc';\n prv.classList.add('ck-ctable-sort');\n let prv_child = prv.querySelector('i');\n prv_child.classList.remove('fa-sort', 'fa-sort-alpha-up', 'fa-sort-alpha-down');\n prv_child.classList.add('fa-sort');\n this.sortList[this.current_sort] = null;\n this.current_sort = null;\n if (emitEvt && typeof this.props.onSort === 'function') {\n this.props.onSort('','clear');\n } else {\n this.setState({data:this.originalData.slice(0)})\n }\n return true;\n }\n return false;\n }\n\n localSort(field, sort_type) {\n let desc = sort_type === 'desc';\n let data = this.state.data.slice(0);\n data.sort((a, b) => {\n if (a[field] > b[field]) return desc ? -1 : 1;\n if (a[field] < b[field]) return desc ? 1 : -1;\n if (a[field] === b[field]) return 0;\n });\n this.setState({data: data});\n }\n\n /**\n * scroll header and total foot\n * @param e\n */\n scrollHandler = (e) => {\n this.tableHeader.style.transform = `translateX(-${e.currentTarget.scrollLeft}px)`;\n // this.tableHeader.scrollLeft = e.currentTarget.scrollLeft;\n if (this.tableTotal) {\n // this.tableTotal.scrollLeft = e.currentTarget.scrollLeft;\n this.tableTotal.style.transform = `translateX(-${e.currentTarget.scrollLeft}px)`;\n }\n };\n /**\n * show menu list\n * @param dataType\n */\n menuContextHandler(dataType) {\n return (e) => {\n e.preventDefault();\n e.stopPropagation();\n let data = {\n field: e.currentTarget.dataset.field || '',\n data : this.state.data[e.currentTarget.dataset.row],\n index: e.currentTarget.dataset.row\n };\n if (dataType === \"text\") {\n this.mainMenu.show({evt: e, type: 'mouse', data: data});\n } else {\n this.numMenu.show({evt: e, type: 'mouse', data: data});\n }\n }\n }\n\n menuClickHandler = (field, data) => {\n switch (field) {\n case \"asc\":\n this.changeSort(document.querySelector(`#${this.domId}-sort-${data.field}`), 'asc');\n break;\n case \"desc\":\n this.changeSort(document.querySelector(`#${this.domId}-sort-${data.field}`), 'desc');\n break;\n case \"delete_row\":\n this.deleteRowHandler(parseInt(this.mainMenu.data.index));\n break;\n case \"clone_row\":\n this.cloneRow(parseInt(this.mainMenu.data.index));\n break;\n }\n };\n\n /**\n * filter\n * */\n localFilter(text, field, type) {\n let reg;\n switch (type) {\n case \"start\":\n reg = new RegExp(`^${text}`);\n break;\n case \"end\":\n reg = new RegExp(`${text}$`);\n break;\n default:\n reg = new RegExp(`${text}`);\n }\n let data = this.state.data.slice(0);\n let filter = [];\n data.forEach((item)=>{\n if (type === 'exclude') {\n if (!reg.test(item[field])) {\n filter.push(item);\n }\n } else {\n if (reg.test(item[field])) {\n filter.push(item);\n }\n }\n });\n this.setState({data:filter});\n }\n\n filterHandler(text, field, type) {\n this.filter_list.push({\n text:text,\n field:field,\n type:type\n });\n\n this.setState({\n filter: {\n start : '',\n end : '',\n contain: ''\n }\n });\n this.mainMenu.hide();\n this.numMenu.hide();\n if (typeof this.props.onFilter === 'function') {\n this.props.onFilter(text, field, type);\n } else {\n this.localFilter(text,field,type);\n }\n }\n\n clearFilter() {\n this.filter_list = [];\n let is_clean = this.clearSort(true);\n this.setState({\n filter: {\n start : '',\n end : '',\n contain: ''\n }\n });\n if (typeof this.props.onFilter === 'function') {\n this.props.onFilter('', '', 'clear');\n } else {\n if (!is_clean) {\n this.setState({data:this.originalData.slice(0)});\n }\n }\n }\n\n filterChangeHandler(field) {\n return (val) => {\n let filter = this.state.filter;\n filter[field] = val;\n this.setState({\n filter: filter\n })\n }\n }\n\n selectPageHandler = (page) => {\n if (typeof this.props.onSelectPage === 'function') {\n this.props.onSelectPage(page);\n }\n };\n\n /**\n * edit mode\n */\n addNewHandler = (e) => {\n let data = this.state.data.slice(0);\n data.push(Object.assign({}, this.cacheRow));\n this.editRows.push(data.length - 1);\n this.setState({\n data: data,\n dataCount: data.length,\n }, () => {\n document.querySelector(`#${this.domId}-edit`).previousElementSibling.querySelector('input:not([disabled])').focus()\n })\n };\n //编辑事件\n editHandler = (e, val,row) => {\n const dataset = row === 'chk'?e.currentTarget.dataset:e.target.dataset\n let index = parseInt(dataset.row);\n let field = dataset.field;\n //如果是check组件\n if (row === 'chk') {\n val = val?1:0;\n }\n if (this.editRows.indexOf(index) === -1) {\n this.editRows.push(index);\n let data = this.state.data.slice(0);\n data[index][field] = val;\n this.setState({data: data})\n } else {\n this.state.data[index][field] = val;\n }\n if (this.headers[field] && typeof(this.headers[field].onEdit) === 'function') {\n this.headers[field].onEdit(index,val,row,this.editCallback)\n }\n };\n //自定义 onEdit 事件回调函数\n editCallback = (index,editData) => {\n if (this.state.data[index]) {\n let data = this.state.data.slice(0);\n data[index] = Object.assign(data[index],editData);\n this.setState({data: data});\n }\n };\n\n getEditRows() {\n let list = [];\n for (let row of this.editRows) {\n list.push(this.state.data[row]);\n }\n return list;\n }\n\n clearEditRows() {\n this.editRows = [];\n }\n\n deleteRowHandler(row_index) {\n if (row_index < 0 || row_index >= this.state.data.length) {\n return\n }\n if (typeof this.props.onDelete === 'function') {\n this.props.onDelete(this.state.data[row_index], row_index,this.deleteRow);\n } else {\n this.deleteRow(row_index)\n }\n }\n\n deleteRow(row_index) {\n if (row_index < 0 || row_index >= this.state.data.length) {\n return\n }\n let data = this.state.data.slice(0);\n data.splice(row_index, 1);\n if (this.editRows.indexOf(row_index) !== -1) {\n this.editRows.splice(this.editRows.indexOf(row_index), 1);\n }\n this.editRows.forEach((item, index) => {\n if (item > row_index) {\n this.editRows[index] = item - 1;\n }\n });\n\n this.setState({\n data: data,\n dataCount: data.length,\n });\n }\n\n cloneRow(row_index) {\n if (row_index < 0 || row_index >= this.state.data.length) {\n return\n }\n let data = this.state.data.slice(0);\n data.push(Object.assign({}, this.state.data[row_index],this.noClone));\n this.editRows.push(data.length - 1);\n this.setState({\n data: data,\n dataCount: data.length,\n })\n }\n\n //****************************\n\n /**\n * 得到所有选中的行\n * @returns {*}\n */\n getSelectRows() {\n return this.selectRows.map((item)=>{\n return this.state.data[item];\n });\n }\n\n /**\n * 设置选中的行\n * @param key 对应行数据的KEY值\n * @param list 要选中的数据值\n */\n setSelectRows(key, list) {\n this.state.data.forEach((row, i) => {\n if (list.indexOf(row[key]) !== -1) {\n this.refs['row_' + i].setChecked(true);\n this.setRowCheck(true,i);\n } else {\n this.refs['row_' + i].setChecked(false);\n this.setRowCheck(false,i);\n }\n });\n this.checkAllCheckHalf();\n }\n\n /**\n * binding column split\n */\n bindSplit() {\n if (this.props.move) {\n this.headerSplits.forEach((split) => {\n if (!this.drag) {\n this.dragColumnLeft = 0;\n this.dragWidth = 0;\n this.drag = new Drag(this.split, split, {\n start: (dragDom, eventDom) => {\n let xy = Common.GetDomXY(eventDom, this.mainDom);\n this.dragWidth = parseInt(eventDom.parentNode.style.width);\n this.dragColumnLeft = (xy.left - this.table_rows.scrollLeft);\n dragDom.style.left = this.dragColumnLeft + 'px';\n dragDom.classList.remove('d-none');\n return true;\n },\n move : (move, dragDom, eventDom) => {\n if (this.dragWidth + (move.x - this.dragColumnLeft) < 50) {\n move.x = this.dragColumnLeft - this.dragWidth + 50;\n }\n },\n end : (dragDom, eventDom) => {\n dragDom.classList.add('d-none');\n let column_key = eventDom.dataset.key;\n let diff = parseInt(dragDom.style.left) - this.dragColumnLeft;\n this.width = (parseInt(this.width) + diff) + 'px';\n this.table_head.style.width = this.width;\n this.table_body.style.width = this.width;\n if (this.table_total) {\n this.table_total.style.width = this.width;\n }\n document.querySelectorAll(`#${column_key}`).forEach((item) => {\n item.style.width = `${this.dragWidth + diff}px`;\n });\n return true;\n }\n });\n } else {\n this.drag.setEventDom(split);\n }\n });\n }\n }\n\n getClasses(name) {\n let base = 'table ck-table';\n if (!!name) {\n base = classNames(base, name);\n }\n //striped\n if (this.props.striped && !this.props.edit) {\n base = classNames(base, 'table-striped');\n }\n //theme\n if (this.props.theme) {\n base = classNames(base, 'table-' + this.props.theme);\n }\n //bordered\n if (this.props.bordered) {\n base = classNames(base, 'table-bordered');\n }\n //hover\n if (this.props.hover) {\n base = classNames(base, 'table-hover');\n }\n //sm\n if (this.props.sm) {\n base = classNames(base, 'table-sm');\n }\n if (this.props.fontSm) {\n base = classNames(base, 'table-font-sm');\n }\n //responsive\n if (this.props.responsive) {\n base = classNames(base, 'table-responsive');\n }\n //nowrap\n if (this.props.noWrap) {\n base = classNames(base, 'ck-ctable-nowrap');\n }\n return base;\n }\n\n getMainClasses() {\n let base = 'ck-ctable-main d-flex flex-column';\n if (this.props.bordered) {\n base = classNames(base, 'border');\n }\n return classNames(base, this.props.className);\n }\n\n getStyles() {\n //default style\n let base = {};\n //width\n if (this.props.width) {\n base.width = this.props.width;\n }\n //height\n if (this.props.height) {\n base.height = this.props.height;\n }\n\n if (this.props.absolute) {\n base.position = 'absolute';\n base.top = this.props.y;\n base.left = this.props.x;\n if (typeof this.props.position === 'object') {\n base.top = this.props.position.top || this.props.y;\n base.left = this.props.position.left || this.props.x;\n base.right = this.props.position.right || 'unset';\n base.bottom = this.props.position.bottom || 'unset';\n if (this.props.position.left && this.props.position.right) {\n base.width = 'unset';\n }\n if (this.props.position.top && this.props.position.bottom) {\n base.height = 'unset';\n }\n }\n }\n\n return Common.extend(base, this.props.style)\n }\n\n getHeaderClasses() {\n let base = 'ck-ctable-header';\n if (this.props.headerTheme) {\n base = classNames(base,'table-' + this.props.headerTheme);\n }\n return classNames(base, this.props.headClass);\n }\n\n getTableStyles(style) {\n let base = {};\n\n if (this.width) {\n base.width = this.width;\n }\n\n if (style) {\n base = Object.assign({},base,style);\n }\n\n return base;\n }\n\n getBodyClasses() {\n let base = 'ck-ctable-body flex-grow-1 d-flex flex-column';\n\n return base;\n }\n\n calcLocalTotal(field) {\n return (e)=>{\n let list = this.state.data;\n let total = 0;\n list.forEach((item)=>{\n if (!!parseFloat(item[field])) {\n total += parseFloat(item[field])\n }\n })\n let totalData = Object.assign({},this.state.total);\n totalData[field] = total.toFixed(2)\n this.setState({\n total:totalData\n })\n }\n }\n\n render() {\n return (\n <div ref={c => this.mainDom = c} className={this.getMainClasses()} style={this.getStyles()}>\n <div className={this.getBodyClasses()}>\n {this.renderHeader()}\n {this.renderRows()}\n {this.renderTotal()}\n {<Scroll selector={`#table-body-com-${this.domId}`}/>}\n {<HScroll selector={`#table-body-com-${this.domId}`}/>}\n </div>\n {this.renderFoot()}\n <div ref={c => this.split = c} className='ck-split d-none'/>\n </div>\n );\n }\n\n renderHeader() {\n return (\n <div ref={c => this.tableHeader = c}>\n <table ref={c => this.table_head = c} id={`table-head-${this.domId}`} className={this.getClasses()} style={this.getTableStyles()}>\n <thead className={this.getHeaderClasses()}>\n <tr>\n {this.state.select || this.props.edit ?\n <th style={{width:'20px',textAlign:'center'}}>\n {this.props.edit || this.props.selectOnce ? <Icon icon='list'/> :\n <CCheckbox ref={c=>this.allchk=c} onChange={this.selectAll} checked={this.state.selectAll} half={this.state.selectHalf}/>}\n </th> : null}\n {React.Children.map(this.props.children, (item, key) => {\n this.cacheRow[item.props.field] = '';\n if (!item || item.props.hide) {\n return null;\n }\n // let align = item.props.align || this.props.align;\n let style = {\n 'textAlign': 'center'\n };\n if (item.props.width) {\n style.width = item.props.width;\n }\n let sort_icon = '';\n if (this.sortList[item.props.field]) {\n sort_icon = 'sort-alpha-' + (this.sortList[item.props.field] === 'asc' ? 'down' : 'up');\n }\n return (\n <th onContextMenu={this.menuContextHandler} id={this.domId + '-' + key} data-key={'head_' + key} style={style}>\n {this.is_sort ?\n <a className='ck-ctable-sort' href='javascript://' id={`${this.domId}-sort-${item.props.field}`}\n data-field={item.props.field}\n onClick={this.sortHandler}>\n {item.props.text}{'\\u0020'}\n <Icon icon={sort_icon}/></a> : item.props.text}\n {this.props.move ?\n <span ref={c => this.headerSplits.push(c)} data-key={this.domId + '-' + key} className='ck-column-split'/> : null}\n </th>\n );\n })}\n </tr>\n </thead>\n </table>\n </div>\n )\n }\n\n renderRows() {\n return (\n <div ref={c => this.table_rows = c} id={`table-body-com-${this.domId}`} className='flex-grow-1 rows' onScroll={this.scrollHandler}>\n <table ref={c => this.table_body = c} id={`table-body-${this.domId}`} className={this.getClasses()} style={this.getTableStyles()}>\n <tbody>\n {this.state.data.map((row, i) => {\n if (this.props.edit) {\n return this.renderEditRow(row, i)\n }\n return this.renderRow(row, i);\n })}\n {this.props.edit ? this.renderEditAddRow() : null}\n </tbody>\n </table>\n {this.props.menu ? this.renderMenu() : null}\n {this.props.menu ? this.renderNumberMenu() : null}\n </div>\n )\n }\n\n renderRow(row, i, parentRow) {\n let checked = this.state.selectRows.indexOf(i) !== -1\n return (\n <React.Fragment>\n <tr className={checked ? 'ck-table-selected' : null} onClick={this.clickHandler(row, i)}>\n {this.state.select ?\n <th style={{width:'20px',textAlign:'center'}}>\n <CCheckbox ref={'row_' + i} onChange={this.changeHandler(row, i)} checked={checked}/>\n </th> : null}\n {React.Children.map(this.props.children, (item, key) => {\n if (!item || item.props.hide) {\n return null;\n }\n //set style\n let style = {...this.props.columnStyle};\n\n style.textAlign = item.props.align || this.props.align;\n if (item.props.width) {\n style.width = item.props.width;\n }\n let dataType;\n switch (item.props.dataType) {\n case \"number\":\n dataType = \"number\";\n break;\n case \"date\":\n dataType = \"date\";\n break;\n default:\n dataType = \"text\";\n }\n\n if (item.props.children) {\n return (\n <td onContextMenu={this.menuContextHandler(dataType)} id={this.domId + '-' + key} data-row={`${i}`} data-field={item.props.field}\n className={item.props.className} style={{'text-align': align}}\n key={'col_' + key}>{React.cloneElement(item, {\n text : item.props.text,\n row : row,\n value: row[item.props.field]\n })}</td>\n );\n } else {\n if (item.props.type) {\n item.props.disabled=true;\n }\n return <td onContextMenu={this.menuContextHandler(dataType)} id={this.domId + '-' + key}\n data-field={item.props.field}\n style={style}\n onClick={(e) => {\n if (typeof item.props.onClick === 'function') {\n item.props.onClick(row);\n }\n }}\n onDoubleClick={(e) => {\n if (typeof item.props.onDoubleClick === 'function') {\n item.props.onDoubleClick(row);\n }\n }}\n data-row={`${i}`}>\n {item.props.type ? this.renderEditComponent(item.props,row,i):(item.props.onFormat ? item.props.onFormat(row[item.props.field], row, item.props.field) : row[item.props.field])}\n </td>;\n }\n })}\n </tr>\n </React.Fragment>\n );\n }\n\n renderEditRow(row, i) {\n return (\n <React.Fragment>\n <tr className={this.props.onClick ? 'click-row' : null} onClick={this.clickHandler(row, i)}>\n <th style={{width:'20px',textAlign:'center'}}>\n {this.editRows.indexOf(i) === -1 ? null :\n <Icon id={`${this.domId}-edit-row-icon-${i}`} icon='edit' className='text-danger'/>}\n </th>\n {React.Children.map(this.props.children, (item, key) => {\n if (!item || item.props.hide) {\n return null;\n }\n //set style\n let style = {...this.props.columnStyle};\n\n style.textAlign = item.props.align || this.props.align;\n if (item.props.width) {\n style.width = item.props.width;\n }\n let dataType = 'text';\n return (\n <td onContextMenu={this.menuContextHandler(dataType)}\n className={item.props.disabled ? 'disabled' : ''} id={this.domId + '-' + key}\n data-field={item.props.field}\n style={style}\n onClick={(e) => {\n if (typeof item.props.onClick === 'function') {\n item.props.onClick(row);\n }\n }}\n onDoubleClick={(e) => {\n if (typeof item.props.onDoubleClick === 'function') {\n item.props.onDoubleClick(row);\n }\n }}\n data-row={`${i}`}>\n {item.props.disabled?\n (item.props.onFormat ? item.props.onFormat(row[item.props.field], row, item.props.field) : row[item.props.field]):\n this.renderEditComponent(item.props, row, i)}\n </td>\n );\n })}\n </tr>\n </React.Fragment>\n );\n }\n\n renderEditAddRow() {\n return (\n <tr id={this.domId + '-edit'}>\n <th style={{width:'20px',textAlign:'center'}}><Icon icon='chevron-circle-right'/></th>\n {React.Children.map(this.props.children, (item, key) => {\n if (!item || item.props.hide) {\n return null;\n }\n let style = {\n width: item.props.width\n };\n return (\n <td style={style}>\n <CTableInput onFocus={this.addNewHandler}/>\n </td>\n );\n })}\n </tr>\n )\n }\n\n renderEditComponent(item, row, i) {\n switch (item.type) {\n case \"combo\":\n return (\n <CTableInput onChange={this.editHandler} data-row={i}\n data-field={item.field} data={row[item.field]}\n align={item.align} disabled={item.disabled}\n combo={item.combo} comboData={item.comboData}/>\n );\n case \"calendar\":\n return (\n <CTableInput onChange={this.editHandler} data-row={i}\n data-field={item.field} data={row[item.field]}\n align={item.align} disabled={item.disabled}\n calendarFormat={item.calendarFormat} calendar/>\n );\n case \"checkbox\":\n return (\n <CCheckbox className='d-inline' width='20px' onChange={(chk,e)=>{this.editHandler(e,chk,'chk')}} data-row={i}\n data-field={item.field} checked={!!row[item.field]} disabled={item.disabled} tabIndex=\"0\"/>\n )\n default:\n return (\n <CTableInput onChange={this.editHandler} data-row={i} data-field={item.field}\n data={row[item.field]} align={item.align} disabled={item.disabled}\n onBlur={this.state.total&&this.state.total.hasOwnProperty(item.field)?this.calcLocalTotal(item.field):null}\n />\n )\n }\n }\n\n renderFoot() {\n if (!this.props.foot) {\n return null;\n }\n return (\n <div>\n <PageBar page={this.state.page} dataCount={this.state.dataCount}\n onSelect={this.selectPageHandler}\n showNumbers={this.props.showNumbers}\n showPages={this.props.showPages} noPage={this.props.edit}/>\n </div>\n )\n }\n\n renderTotal() {\n if (!this.state.total) {\n return null;\n }\n let total = this.state.total;\n return (\n <div ref={c => this.tableTotal = c} className='ck-ctable-total'>\n <table ref={c => this.table_total = c} id={`table-total-${this.domId}`} className={this.getClasses()} style={this.getTableStyles()}>\n <tbody>\n <tr>\n {this.state.select || this.props.edit ?\n <td width='20px'><Icon icon='chart-line'/></td> : null}\n {React.Children.map(this.props.children, (item, key) => {\n if (!item || item.props.hide) {\n return null;\n }\n let align = item.props.align || this.props.align;\n let style = {\n 'textAlign': align\n };\n if (item.props.width) {\n style.width = item.props.width;\n }\n return (\n <td id={this.domId + '-' + key} data-field={item.props.field} style={style}>\n {item.props.onFormat ? item.props.onFormat(total[item.props.field], total, item.props.field) : total[item.props.field]}\n </td>\n );\n })}\n </tr>\n </tbody>\n </table>\n </div>\n )\n }\n\n renderMenu() {\n let lang;\n if (!this.props.lang) {\n let i18 = i18n.getLang();\n let langStr = typeof lang === 'string'?lang:i18.short;\n lang = CTableLang[langStr];\n } else {\n if (typeof this.props.lang === 'string') {\n lang = CTableLang[this.props.lang]\n } else {\n lang = this.props.lang\n }\n }\n return <>\n <Menu ref={c => this.mainMenu = c} onClick={this.menuClickHandler}>\n <Menu.Item field=\"copy\" onClick={() => {\n document.execCommand(\"copy\");\n }}><Icon className='me-1' icon='copy'/>{lang['Copy']}</Menu.Item>\n {this.is_filter?<Menu.Item step/>:null}\n {this.is_filter?<Menu.Item field='select_filter' onClick={(e, field, data) => {\n let select = document.getSelection();\n this.filterHandler(select.toString(), data.field, 'contain');\n }}><Icon className='me-1' icon='filter'/>{lang['Filter By Selection']}</Menu.Item>:null}\n {this.is_filter?<Menu.Item field='select_exclude' onClick={(e, field, data) => {\n let select = document.getSelection();\n this.filterHandler(select.toString(), data.field, 'exclude');\n }}><Icon className='me-1' icon='filter'/>{lang['Filter Excluding Selection']}</Menu.Item>:null}\n {this.is_filter||this.is_sort?<Menu.Item field='clear_filter' onClick={() => {\n this.clearFilter();\n }}><span className='text-danger'><Icon className='me-1' icon='brush'/>{lang['Clear Filter / Sort']}</span></Menu.Item>:null}\n {this.is_filter?<Menu.Item step/>:null}\n {this.is_filter?<Menu.Item field=\"equal\">\n <span className='me-1' style={inputStyle}>{lang['Equal With']}</span>\n <Input className='me-1' size='xs' width='120px'\n data={this.state.filter.equal}\n onChange={this.filterChangeHandler('equal')}\n onMouseDown={stopEvent}\n onEnter={() => {\n this.filterHandler(this.state.filter.equal, this.mainMenu.data.field, 'equal');\n }}\n />\n <Button size='xs' onMouseDown={stopEvent} onClick={(e) => {\n this.filterHandler(this.state.filter.equal, this.mainMenu.data.field, 'equal');\n }} icon='search'/>\n </Menu.Item>:null}\n {this.is_filter?<Menu.Item field=\"filter\">\n <span className='me-1' style={inputStyle}>{lang['Start With']}</span>\n <Input className='me-1' size='xs' width='120px'\n data={this.state.filter.start}\n onChange={this.filterChangeHandler('start')}\n onMouseDown={stopEvent}\n onEnter={() => {\n this.filterHandler(this.state.filter.start, this.mainMenu.data.field, 'start');\n }}\n />\n <Button size='xs' onMouseDown={stopEvent} onClick={(e) => {\n this.filterHandler(this.state.filter.start, this.mainMenu.data.field, 'start');\n }} icon='search'/>\n </Menu.Item>:null}\n {this.is_filter?<Menu.Item field=\"filter\">\n <span className='me-1' style={inputStyle}>{lang['End With']}</span>\n <Input className='me-1' size='xs' width='120px'\n data={this.state.filter.end}\n onChange={this.filterChangeHandler('end')}\n onMouseDown={stopEvent}\n onEnter={() => {\n this.filterHandler(this.state.filter.end, this.mainMenu.data.field, 'end');\n }}\n />\n <Button size='xs' onMouseDown={stopEvent} onClick={(e) => {\n this.filterHandler(this.state.filter.end, this.mainMenu.data.field, 'end');\n }} icon='search'/>\n </Menu.Item>:null}\n {this.is_filter?<Menu.Item field=\"filter\">\n <span className='me-1' style={inputStyle}>{lang['Contain with']}</span>\n <Input className='me-1' size='xs' width='120px'\n data={this.state.filter.contain}\n onChange={this.filterChangeHandler('contain')}\n onMouseDown={stopEvent}\n onEnter={() => {\n this.filterHandler(this.state.filter.contain, this.mainMenu.data.field, 'contain');\n }}\n />\n <Button size='xs' onMouseDown={stopEvent} onClick={(e) => {\n this.filterHandler(this.state.filter.contain, this.mainMenu.data.field, 'contain');\n }} icon='search'/>\n </Menu.Item>:null}\n {this.is_filter? <Menu.Item step/> : null}\n {this.is_filter?<Menu.Item field=\"filter\" className='flex-column'>\n <div className='w-100'>{lang['Condition Filter']}</div>\n <Input size='xs' width='100%'\n data={this.state.filter.condition}\n onChange={this.filterChangeHandler('condition')}\n onMouseDown={stopEvent}\n onEnter={() => {\n this.filterHandler(this.state.filter.condition, this.mainMenu.data.field, 'condition');\n }}\n />\n </Menu.Item>:null}\n {this.props.edit ? <Menu.Item step/> : null}\n {this.props.edit ? <Menu.Item field=\"delete_row\">{lang['Delete Row']}</Menu.Item> : null}\n {this.props.edit ? <Menu.Item field=\"clone_row\">{lang['Clone Row']}</Menu.Item> : null}\n {this.props.customMenu?<Menu.Item step/>:null}\n {this.props.customMenu?this.props.customMenu.map((menu)=>{\n return this.explainCustomMenu(menu)\n }):null}\n </Menu>\n </>\n }\n\n renderNumberMenu() {\n let lang;\n if (!this.props.lang) {\n let i18 = i18n.getLang();\n let langStr = typeof lang === 'string'?lang:i18.short;\n lang = CTableLang[langStr];\n } else {\n if (typeof this.props.lang === 'string') {\n lang = CTableLang[this.props.lang]\n } else {\n lang = this.props.lang\n }\n }\n return <>\n <Menu ref={c => this.numMenu = c} onClick={this.menuClickHandler}>\n <Menu.Item field=\"copy\" onClick={() => {\n document.execCommand(\"copy\");\n }}><Icon className='me-1' icon='copy'/>{lang['Copy']}</Menu.Item>\n {this.is_filter?<Menu.Item step/>:null}\n {this.is_filter?<Menu.Item field='select_filter' onClick={(e, field, data) => {\n let select = document.getSelection();\n this.filterHandler(select.toString(), data.field, 'contain');\n }}><Icon className='me-1' icon='filter'/>{lang['Filter By Selection']}</Menu.Item>:null}\n {this.is_filter?<Menu.Item field='select_exclude' onClick={(e, field, data) => {\n let select = document.getSelection();\n this.filterHandler(select.toString(), data.field, 'exclude');\n }}><Icon className='me-1' icon='filter'/>{lang['Filter Excluding Selection']}</Menu.Item>:null}\n {this.is_filter||this.is_sort?<Menu.Item field='clear_filter' onClick={() => {\n this.clearFilter();\n }}><span className='text-danger'><Icon className='me-1' icon='brush'/>{lang['Clear Filter / Sort']}</span></Menu.Item>:null}\n {this.is_filter?<Menu.Item step/>:null}\n {this.is_filter?<Menu.Item field=\"filter\" className='flex-column'>\n <div className='w-100'>{lang['Condition Filter']}</div>\n <Input size='xs' width='100%'\n data={this.state.filter.condition}\n onChange={this.filterChangeHandler('condition')}\n onMouseDown={stopEvent}\n onEnter={() => {\n this.filterHandler(this.state.filter.condition, this.numMenu.data.field, 'condition');\n }}\n />\n <div>and,or,between,&gt;,&gt;=,&lt;,&lt;=,=</div>\n </Menu.Item>:null}\n </Menu>\n </>\n }\n\n explainCustomMenu(menu) {\n if (menu.children && menu.children instanceof Array) {\n return <Menu.Item field={menu.field} text={menu.text} child>{menu.children.map((item)=>{\n return this.explainCustomMenu(item)\n })}</Menu.Item>\n } else {\n return <Menu.Item field={menu.field} onClick={menu.click}>{menu.text}</Menu.Item>\n }\n }\n}\n\nconst inputStyle = {width: '80px'};\nconst stopEvent = function (e) {\n e.stopPropagation();\n};\n\nCTable.propTypes = {\n //主题\n theme : PropTypes.oneOf(['primary', 'secondary', 'success', 'danger', 'warning', 'info', 'light', 'dark']),\n //标头主题\n headerTheme : PropTypes.oneOf(['primary', 'secondary', 'success', 'danger', 'warning', 'info', 'light', 'dark']),\n //标头css class\n headClass : PropTypes.string,\n //数据来源\n data : PropTypes.array,\n //数据总记录数\n dataCount : PropTypes.number,\n //总页数\n page : PropTypes.number,\n //第一列是否出现选择项\n select : PropTypes.bool,\n //是否只能选中一项\n selectOnce : PropTypes.bool,\n //是否显示标头\n header : PropTypes.bool,\n //\n center : PropTypes.bool,\n //数据当前页\n currentPage : PropTypes.number,\n //\n striped : PropTypes.bool,\n //是否显示边框\n bordered : PropTypes.bool,\n //行是否有hover效果\n hover : PropTypes.bool,\n //是否小型化显示列表\n sm : PropTypes.bool,\n //文字最小化\n fontSm : PropTypes.bool,\n responsive : PropTypes.bool,\n //文字列表 left,center,right\n align : PropTypes.string,\n //是否显示树结构\n tree : PropTypes.string,\n //点击树事件\n onClickTree : PropTypes.func,\n //点击事件\n onClick : PropTypes.func,\n //选择事件\n onCheck : PropTypes.func,\n //过滤事件\n onFilter : PropTypes.func,\n //排序事件\n onSort : PropTypes.func,\n //是否列可移动\n move : PropTypes.bool,\n //刷新事件\n onRefresh : PropTypes.func,\n //刷新事件按钮文字\n refreshText : PropTypes.string,\n //是否漂浮\n absolute : PropTypes.bool,\n //漂浮X坐标\n x : PropTypes.string,\n //漂浮Y坐标\n y : PropTypes.string,\n //表宽\n width : PropTypes.string,\n //表高\n height : PropTypes.string,\n // foot : PropTypes.bool,\n //是否显示列表尾\n foot : PropTypes.object,\n //表自动随主体小设置\n position : PropTypes.object,\n //显示的页码数\n showPages : PropTypes.number,\n //显示的记录条数\n showNumbers : PropTypes.number,\n //翻页事件\n onSelectPage: PropTypes.func,\n //是否自动换行\n noWrap : PropTypes.bool,\n //是否启用右键菜单\n menu : PropTypes.bool,\n //是否显示每列记录总合数\n total : PropTypes.object,\n //是否编辑模式\n edit : PropTypes.bool,\n //数据删除事件\n onDelete : PropTypes.func,\n //是否启用排序\n sort : PropTypes.bool,\n //是否启用过滤\n filter : PropTypes.bool,\n //自定义右键菜单\n customMenu : PropTypes.array,\n //自定义显示语言\n lang : PropTypes.object,\n source : PropTypes.string,\n sourceFunc : PropTypes.func,\n};\n\nCTable.defaultProps = {\n data : [],\n dataCount : 1,\n select : true,\n header : true,\n foot : true,\n currentPage: 1,\n hover : true,\n striped : true,\n align : 'left',\n sm : true,\n fontSm : true,\n headerTheme: 'primary',\n noWrap : true,\n bordered : true,\n move : true,\n menu : true,\n showNumbers: 30,\n showPages : 10,\n source : null,\n total : null,\n lang : 'en'\n}\n\nexport default CTable;"],"file":"CTable.js"}
5
+ {"version":3,"sources":["CTable.js"],"names":["CTable","props","a","b","Date","getTime","prototype","keys","Object","length","every","k","equals","checked","select_all","selectRows","state","data","forEach","item","key","push","setState","selectAll","selectHalf","onCheckAll","e","dom","currentTarget","sort_type","dataset","sort","changeSort","tableHeader","style","transform","scrollLeft","tableTotal","field","document","querySelector","domId","deleteRowHandler","parseInt","mainMenu","index","cloneRow","page","onSelectPage","slice","assign","cacheRow","editRows","dataCount","previousElementSibling","focus","val","row","target","indexOf","headers","onEdit","editCallback","editData","select","total","filter","start","end","contain","originalData","Common","RandomString","headerSplits","sortList","is_sort","onSort","is_filter","onFilter","current_sort","filter_list","noClone","lockColumns","isLock","initTableWidth","bindSplit","nextProps","edit","Clone","isHalf","allchk","idx","set_chk","nextState","width","reg","matchs","match","unit","React","Children","map","children","sourceFunc","source","number","showNumbers","res","count","type","value","text","flag","i","setRowCheck","checkAllCheckHalf","allChecked","half","onCheck","selectOnce","rowIdx","console","log","includes","splice","onClick","refs","changeHandler","clearSort","classList","remove","child","add","emitEvt","prv","prv_child","desc","dataType","preventDefault","stopPropagation","show","evt","numMenu","RegExp","test","hide","localFilter","is_clean","list","row_index","onDelete","deleteRow","move","split","drag","dragColumnLeft","dragWidth","Drag","dragDom","eventDom","xy","GetDomXY","mainDom","parentNode","left","table_rows","x","column_key","diff","table_head","table_body","table_total","querySelectorAll","setEventDom","name","base","striped","theme","bordered","hover","sm","fontSm","responsive","noWrap","className","height","absolute","position","top","y","right","bottom","extend","headerTheme","headClass","parseFloat","totalData","toFixed","c","getMainClasses","getStyles","getBodyClasses","renderHeader","renderRows","renderTotal","renderFoot","getClasses","getTableStyles","getHeaderClasses","textAlign","sort_icon","menuContextHandler","sortHandler","scrollHandler","renderEditRow","renderRow","renderEditAddRow","menu","renderMenu","renderNumberMenu","parentRow","clickHandler","columnStyle","align","cloneElement","disabled","onDoubleClick","renderEditComponent","onFormat","addNewHandler","editHandler","combo","comboData","calendarFormat","chk","hasOwnProperty","calcLocalTotal","foot","selectPageHandler","showPages","lang","i18","i18n","getLang","langStr","CTableLang","menuClickHandler","execCommand","getSelection","filterHandler","toString","clearFilter","inputStyle","equal","filterChangeHandler","stopEvent","condition","customMenu","explainCustomMenu","Array","click","Component","propTypes","PropTypes","oneOf","string","array","bool","header","center","currentPage","tree","onClickTree","func","onRefresh","refreshText","object","allSelect","defaultProps"],"mappings":"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","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport classNames from 'classnames/bind';\nimport {\n Icon,\n Pagination,\n Menu,\n Input,\n Button,\n Common,\n i18n,\n CCheckbox,\n Scroll,\n HScroll\n} from '@clake/react-bootstrap4';\nimport './css/CTable.less';\nimport Drag from \"./Drag\";\nimport CTableInput from \"./CTableInput\";\nimport CTableLang from './i18n/CTable';\nimport PageBar from \"./PageBar\";\nclass CTable extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n data : this.props.data || [],\n dataCount: this.props.dataCount,\n page : 1,\n select : this.props.select,\n total : this.props.total,\n filter : {\n start : '',\n end : '',\n contain: ''\n },\n selectAll: false,\n selectHalf: false,\n selectRows: []\n };\n\n this.originalData = this.state.data.slice(0);\n\n this.domId = 'table-' + Common.RandomString(16);\n\n this.select_all = false;\n this.selectRows = [];\n\n this.headerSplits = [];\n\n this.sortList = {};\n this.is_sort = typeof this.props.onSort === 'function' || this.props.sort;\n this.is_filter = typeof this.props.onFilter === 'function' || this.props.filter;\n this.current_sort = null;\n\n this.filter_list = [];\n\n this.editRows = [];\n\n this.cacheRow = {};\n //列头数据\n this.headers = {};\n //不需要克隆列\n this.noClone = {};\n\n this.lockColumns = [];\n //lock column flag\n this.isLock = false;\n\n this.initTableWidth();\n }\n\n componentDidMount() {\n this.bindSplit();\n }\n\n componentWillReceiveProps(nextProps) {\n if (this.state.data !== nextProps.data) {\n if (this.props.edit) {\n if (this.equals(this.originalData,nextProps.data)) {\n return\n }\n this.editRows = [];\n this.originalData = Common.Clone(nextProps.data);\n }\n // if (this.allchk) {\n // this.allchk.setHalf(false);\n // this.selectRows = [];\n // }\n // this.select_all = false;\n // this.selectRows = [];\n let selectRows = []\n let isHalf = false\n let allchk = false\n if (nextProps.data && nextProps.data.length > 0) {\n nextProps.data.forEach((item,idx)=>{\n if (item?.set_chk) {\n selectRows.push(idx)\n }\n })\n if (selectRows.length === nextProps.data.length) {\n allchk = true\n } else {\n if (selectRows.length>0) {\n isHalf = true\n }\n }\n }\n this.setState({\n data : nextProps.data,\n dataCount: nextProps.dataCount,\n page : nextProps.page,\n total : nextProps.total,\n selectRows: selectRows,\n selectHalf: isHalf,\n selectAll: allchk,\n });\n }\n }\n\n shouldComponentUpdate(nextProps, nextState) {\n if (nextState.selectRows !== this.state.selectRows) {\n return true\n }\n if (this.state.filter !== nextState.filter) {\n return true;\n }\n if (nextState.total !== this.state.total) {\n return true\n }\n return nextState.data !== this.state.data;\n }\n\n equals = (a, b) => {\n if (a === b) return true;\n if (a instanceof Date && b instanceof Date) return a.getTime() === b.getTime();\n if (!a || !b || (typeof a !== 'object' && typeof b !== 'object')) return a === b;\n if (a.prototype !== b.prototype) return false;\n let keys = Object.keys(a);\n if (keys.length !== Object.keys(b).length) return false;\n return keys.every(k => this.equals(a[k], b[k]));\n };\n\n initTableWidth() {\n if (this.props.width) {\n this.width = 0;\n let reg = /(\\d+)(px|rem|cm|mm|pt)$/;\n let matchs = this.props.width.match(reg);\n let unit = matchs[2];\n React.Children.map(this.props.children, (item, key) => {\n if (item.props.width) {\n let matchs = item.props.width.match(reg);\n this.width += parseInt(matchs[1]);\n this.headers[item.props.field] = item.props;\n if (item.props.noClone) {\n this.noClone[item.props.field] = \"\";\n }\n }\n });\n if (this.props.select) {\n this.width += 20;\n }\n this.width += unit;\n }\n }\n\n //inner source ********************\n sourceLoad() {\n if (typeof this.props.sourceFunc !== 'function') return;\n\n this.props.sourceFunc({\n source:this.props.source,\n page:this.state.page,\n number:this.props.showNumbers,\n },(res)=>{\n this.setState({\n data : res.data,\n dataCount: res.count,\n page : res.page,\n })\n });\n }\n\n sourceFilter() {\n return this.filter_list.map((item)=>{\n switch (item.type) {\n case \"start\":\n return {\n field:item.field,\n value:`${item.text}%`,\n flag:'like'\n };\n case \"end\":\n return {\n field:item.field,\n value:`%${item.text}`,\n flag:'like'\n };\n case \"clear\":\n this.filter = [];\n break;\n case \"\":\n return {\n field:item.field,\n value:item.text,\n flag:'='\n };\n default:\n return {\n field:item.field,\n value:`%${item.text}%`,\n flag:'like'\n }\n }\n });\n }\n\n sourceOrder() {\n\n }\n\n //innter source end ***************************\n //checkbox handler\n changeHandler(row, i) {\n return (checked,e) => {\n let selectRows = this.setRowCheck(checked,i);\n const [allChecked, half] = this.checkAllCheckHalf(selectRows);\n this.setState({\n selectRows: selectRows,\n selectAll: allChecked,\n selectHalf: half\n })\n if (typeof this.props.onCheck === \"function\") {\n this.props.onCheck(checked, row);\n }\n };\n }\n checkAllCheckHalf(selectRows) {\n if (!this.allchk || this.props.selectOnce) {\n return [false, false];\n }\n if (selectRows.length > 0 && selectRows.length !== this.state.data.length) {\n return [false, true]\n }\n if (selectRows.length === 0) {\n return [false, false]\n } else if (selectRows.length === this.state.data.length) {\n return [true, false]\n }\n return [false, false]\n }\n setRowCheck(checked,rowIdx) {\n // let row = this.refs['row_'+rowIdx];\n let selectRows = this.props.selectOnce?[]:this.state.selectRows.slice()\n console.log(checked,rowIdx,selectRows);\n\n if (checked) {\n if (!selectRows.includes(rowIdx)) {\n selectRows.push(rowIdx);\n }\n // ReactDOM.findDOMNode(row).parentNode.parentNode.classList.add('ck-table-selected');\n } else {\n if (selectRows.includes(rowIdx)) {\n selectRows.splice(selectRows.indexOf(rowIdx),1);\n }\n // ReactDOM.findDOMNode(row).parentNode.parentNode.classList.remove('ck-table-selected');\n }\n // this.setState({selectRows: selectRows});\n return selectRows\n }\n\n selectAll = (checked) => {\n this.select_all = checked;\n let selectRows = []\n if (checked) {\n this.state.data.forEach((item,key)=>{\n selectRows.push(key)\n })\n }\n this.setState({\n selectRows: selectRows,\n selectAll: checked,\n selectHalf: false\n },()=>{\n if (typeof this.props.onCheckAll === 'function') {\n this.props.onCheckAll(this.state.selectAll,this.state.data)\n }\n })\n };\n\n clickHandler(row, i) {\n return () => {\n if (typeof this.props.onClick === 'function') {\n this.props.onClick(row, i);\n }\n if (this.props.select) {\n let row = this.refs['row_'+i];\n row.changeHandler(null)\n // this.setRowCheck(!row.getChecked(),i);\n // this.checkAllCheckHalf();\n }\n }\n }\n\n /**\n * sort\n */\n sortHandler = (e) => {\n let dom = e.currentTarget;\n let sort_type = dom.dataset.sort || 'asc';\n this.changeSort(dom, sort_type)\n };\n\n changeSort(dom, sort_type) {\n if (!dom) {\n return\n }\n\n this.clearSort(false);\n this.current_sort = dom.dataset.field;\n dom.dataset.sort = sort_type === 'asc' ? 'desc' : 'asc';\n dom.classList.remove('ck-ctable-sort');\n this.sortList[dom.dataset.field] = sort_type;\n let child = dom.querySelector('i');\n child.classList.remove('fa-sort', 'fa-sort-alpha-up', 'fa-sort-alpha-down');\n child.classList.add('fa-sort-alpha-' + (sort_type === 'asc' ? 'down' : 'up'));\n if (typeof this.props.onSort === 'function') {\n this.props.onSort(dom.dataset.field, sort_type);\n } else {\n // this.localSort(dom.dataset.field,sort_type)\n }\n }\n\n clearSort(emitEvt) {\n if (this.current_sort) {\n let prv = document.querySelector(`#${this.domId}-sort-${this.current_sort}`);\n prv.dataset.sort = 'asc';\n prv.classList.add('ck-ctable-sort');\n let prv_child = prv.querySelector('i');\n prv_child.classList.remove('fa-sort', 'fa-sort-alpha-up', 'fa-sort-alpha-down');\n prv_child.classList.add('fa-sort');\n this.sortList[this.current_sort] = null;\n this.current_sort = null;\n if (emitEvt && typeof this.props.onSort === 'function') {\n this.props.onSort('','clear');\n } else {\n this.setState({data:this.originalData.slice(0)})\n }\n return true;\n }\n return false;\n }\n\n localSort(field, sort_type) {\n let desc = sort_type === 'desc';\n let data = this.state.data.slice(0);\n data.sort((a, b) => {\n if (a[field] > b[field]) return desc ? -1 : 1;\n if (a[field] < b[field]) return desc ? 1 : -1;\n if (a[field] === b[field]) return 0;\n });\n this.setState({data: data});\n }\n\n /**\n * scroll header and total foot\n * @param e\n */\n scrollHandler = (e) => {\n this.tableHeader.style.transform = `translateX(-${e.currentTarget.scrollLeft}px)`;\n // this.tableHeader.scrollLeft = e.currentTarget.scrollLeft;\n if (this.tableTotal) {\n // this.tableTotal.scrollLeft = e.currentTarget.scrollLeft;\n this.tableTotal.style.transform = `translateX(-${e.currentTarget.scrollLeft}px)`;\n }\n };\n /**\n * show menu list\n * @param dataType\n */\n menuContextHandler(dataType) {\n return (e) => {\n e.preventDefault();\n e.stopPropagation();\n let data = {\n field: e.currentTarget.dataset.field || '',\n data : this.state.data[e.currentTarget.dataset.row],\n index: e.currentTarget.dataset.row\n };\n if (dataType === \"text\") {\n this.mainMenu.show({evt: e, type: 'mouse', data: data});\n } else {\n this.numMenu.show({evt: e, type: 'mouse', data: data});\n }\n }\n }\n\n menuClickHandler = (field, data) => {\n switch (field) {\n case \"asc\":\n this.changeSort(document.querySelector(`#${this.domId}-sort-${data.field}`), 'asc');\n break;\n case \"desc\":\n this.changeSort(document.querySelector(`#${this.domId}-sort-${data.field}`), 'desc');\n break;\n case \"delete_row\":\n this.deleteRowHandler(parseInt(this.mainMenu.data.index));\n break;\n case \"clone_row\":\n this.cloneRow(parseInt(this.mainMenu.data.index));\n break;\n }\n };\n\n /**\n * filter\n * */\n localFilter(text, field, type) {\n let reg;\n switch (type) {\n case \"start\":\n reg = new RegExp(`^${text}`);\n break;\n case \"end\":\n reg = new RegExp(`${text}$`);\n break;\n default:\n reg = new RegExp(`${text}`);\n }\n let data = this.state.data.slice(0);\n let filter = [];\n data.forEach((item)=>{\n if (type === 'exclude') {\n if (!reg.test(item[field])) {\n filter.push(item);\n }\n } else {\n if (reg.test(item[field])) {\n filter.push(item);\n }\n }\n });\n this.setState({data:filter});\n }\n\n filterHandler(text, field, type) {\n this.filter_list.push({\n text:text,\n field:field,\n type:type\n });\n\n this.setState({\n filter: {\n start : '',\n end : '',\n contain: ''\n }\n });\n this.mainMenu.hide();\n this.numMenu.hide();\n if (typeof this.props.onFilter === 'function') {\n this.props.onFilter(text, field, type);\n } else {\n this.localFilter(text,field,type);\n }\n }\n\n clearFilter() {\n this.filter_list = [];\n let is_clean = this.clearSort(true);\n this.setState({\n filter: {\n start : '',\n end : '',\n contain: ''\n }\n });\n if (typeof this.props.onFilter === 'function') {\n this.props.onFilter('', '', 'clear');\n } else {\n if (!is_clean) {\n this.setState({data:this.originalData.slice(0)});\n }\n }\n }\n\n filterChangeHandler(field) {\n return (val) => {\n let filter = this.state.filter;\n filter[field] = val;\n this.setState({\n filter: filter\n })\n }\n }\n\n selectPageHandler = (page) => {\n if (typeof this.props.onSelectPage === 'function') {\n this.props.onSelectPage(page);\n }\n };\n\n /**\n * edit mode\n */\n addNewHandler = (e) => {\n let data = this.state.data.slice(0);\n data.push(Object.assign({}, this.cacheRow));\n this.editRows.push(data.length - 1);\n this.setState({\n data: data,\n dataCount: data.length,\n }, () => {\n document.querySelector(`#${this.domId}-edit`).previousElementSibling.querySelector('input:not([disabled])').focus()\n })\n };\n //编辑事件\n editHandler = (e, val,row) => {\n const dataset = row === 'chk'?e.currentTarget.dataset:e.target.dataset\n let index = parseInt(dataset.row);\n let field = dataset.field;\n //如果是check组件\n if (row === 'chk') {\n val = val?1:0;\n }\n if (this.editRows.indexOf(index) === -1) {\n this.editRows.push(index);\n let data = this.state.data.slice(0);\n data[index][field] = val;\n this.setState({data: data})\n } else {\n this.state.data[index][field] = val;\n }\n if (this.headers[field] && typeof(this.headers[field].onEdit) === 'function') {\n this.headers[field].onEdit(index,val,row,this.editCallback)\n }\n };\n //自定义 onEdit 事件回调函数\n editCallback = (index,editData) => {\n if (this.state.data[index]) {\n let data = this.state.data.slice(0);\n data[index] = Object.assign(data[index],editData);\n this.setState({data: data});\n }\n };\n\n getEditRows() {\n let list = [];\n for (let row of this.editRows) {\n list.push(this.state.data[row]);\n }\n return list;\n }\n\n clearEditRows() {\n this.editRows = [];\n }\n\n deleteRowHandler(row_index) {\n if (row_index < 0 || row_index >= this.state.data.length) {\n return\n }\n if (typeof this.props.onDelete === 'function') {\n this.props.onDelete(this.state.data[row_index], row_index,this.deleteRow);\n } else {\n this.deleteRow(row_index)\n }\n }\n\n deleteRow(row_index) {\n if (row_index < 0 || row_index >= this.state.data.length) {\n return\n }\n let data = this.state.data.slice(0);\n data.splice(row_index, 1);\n if (this.editRows.indexOf(row_index) !== -1) {\n this.editRows.splice(this.editRows.indexOf(row_index), 1);\n }\n this.editRows.forEach((item, index) => {\n if (item > row_index) {\n this.editRows[index] = item - 1;\n }\n });\n\n this.setState({\n data: data,\n dataCount: data.length,\n });\n }\n\n cloneRow(row_index) {\n if (row_index < 0 || row_index >= this.state.data.length) {\n return\n }\n let data = this.state.data.slice(0);\n data.push(Object.assign({}, this.state.data[row_index],this.noClone));\n this.editRows.push(data.length - 1);\n this.setState({\n data: data,\n dataCount: data.length,\n })\n }\n\n //****************************\n\n /**\n * 得到所有选中的行\n * @returns {*}\n */\n getSelectRows() {\n return this.state.selectRows.map((item)=>{\n return this.state.data[item];\n });\n }\n\n /**\n * 设置选中的行\n * @param {string} key 对应行数据的KEY值\n * @param {array} list 要选中的数据值\n */\n setSelectRows(key, list) {\n let selectRows = []\n this.state.data.forEach((row, i) => {\n if (list.includes(row[key])) {\n selectRows.push(i)\n }\n });\n let selectAll = selectRows.length > 1 && selectRows.length === this.state.data.length\n this.setState({\n selectRows: selectRows,\n selectHalf: !selectAll,\n selectAll: selectAll\n })\n }\n\n /**\n * binding column split\n */\n bindSplit() {\n if (this.props.move) {\n this.headerSplits.forEach((split) => {\n if (!this.drag) {\n this.dragColumnLeft = 0;\n this.dragWidth = 0;\n this.drag = new Drag(this.split, split, {\n start: (dragDom, eventDom) => {\n let xy = Common.GetDomXY(eventDom, this.mainDom);\n this.dragWidth = parseInt(eventDom.parentNode.style.width);\n this.dragColumnLeft = (xy.left - this.table_rows.scrollLeft);\n dragDom.style.left = this.dragColumnLeft + 'px';\n dragDom.classList.remove('d-none');\n return true;\n },\n move : (move, dragDom, eventDom) => {\n if (this.dragWidth + (move.x - this.dragColumnLeft) < 50) {\n move.x = this.dragColumnLeft - this.dragWidth + 50;\n }\n },\n end : (dragDom, eventDom) => {\n dragDom.classList.add('d-none');\n let column_key = eventDom.dataset.key;\n let diff = parseInt(dragDom.style.left) - this.dragColumnLeft;\n this.width = (parseInt(this.width) + diff) + 'px';\n this.table_head.style.width = this.width;\n this.table_body.style.width = this.width;\n if (this.table_total) {\n this.table_total.style.width = this.width;\n }\n document.querySelectorAll(`#${column_key}`).forEach((item) => {\n item.style.width = `${this.dragWidth + diff}px`;\n });\n return true;\n }\n });\n } else {\n this.drag.setEventDom(split);\n }\n });\n }\n }\n\n getClasses(name) {\n let base = 'table ck-table';\n if (!!name) {\n base = classNames(base, name);\n }\n //striped\n if (this.props.striped && !this.props.edit) {\n base = classNames(base, 'table-striped');\n }\n //theme\n if (this.props.theme) {\n base = classNames(base, 'table-' + this.props.theme);\n }\n //bordered\n if (this.props.bordered) {\n base = classNames(base, 'table-bordered');\n }\n //hover\n if (this.props.hover) {\n base = classNames(base, 'table-hover');\n }\n //sm\n if (this.props.sm) {\n base = classNames(base, 'table-sm');\n }\n if (this.props.fontSm) {\n base = classNames(base, 'table-font-sm');\n }\n //responsive\n if (this.props.responsive) {\n base = classNames(base, 'table-responsive');\n }\n //nowrap\n if (this.props.noWrap) {\n base = classNames(base, 'ck-ctable-nowrap');\n }\n return base;\n }\n\n getMainClasses() {\n let base = 'ck-ctable-main d-flex flex-column';\n if (this.props.bordered) {\n base = classNames(base, 'border');\n }\n return classNames(base, this.props.className);\n }\n\n getStyles() {\n //default style\n let base = {};\n //width\n if (this.props.width) {\n base.width = this.props.width;\n }\n //height\n if (this.props.height) {\n base.height = this.props.height;\n }\n\n if (this.props.absolute) {\n base.position = 'absolute';\n base.top = this.props.y;\n base.left = this.props.x;\n if (typeof this.props.position === 'object') {\n base.top = this.props.position.top || this.props.y;\n base.left = this.props.position.left || this.props.x;\n base.right = this.props.position.right || 'unset';\n base.bottom = this.props.position.bottom || 'unset';\n if (this.props.position.left && this.props.position.right) {\n base.width = 'unset';\n }\n if (this.props.position.top && this.props.position.bottom) {\n base.height = 'unset';\n }\n }\n }\n\n return Common.extend(base, this.props.style)\n }\n\n getHeaderClasses() {\n let base = 'ck-ctable-header';\n if (this.props.headerTheme) {\n base = classNames(base,'table-' + this.props.headerTheme);\n }\n return classNames(base, this.props.headClass);\n }\n\n getTableStyles(style) {\n let base = {};\n\n if (this.width) {\n base.width = this.width;\n }\n\n if (style) {\n base = Object.assign({},base,style);\n }\n\n return base;\n }\n\n getBodyClasses() {\n let base = 'ck-ctable-body flex-grow-1 d-flex flex-column';\n\n return base;\n }\n\n calcLocalTotal(field) {\n return (e)=>{\n let list = this.state.data;\n let total = 0;\n list.forEach((item)=>{\n if (!!parseFloat(item[field])) {\n total += parseFloat(item[field])\n }\n })\n let totalData = Object.assign({},this.state.total);\n totalData[field] = total.toFixed(2)\n this.setState({\n total:totalData\n })\n }\n }\n\n render() {\n return (\n <div ref={c => this.mainDom = c} className={this.getMainClasses()} style={this.getStyles()}>\n <div className={this.getBodyClasses()}>\n {this.renderHeader()}\n {this.renderRows()}\n {this.renderTotal()}\n {<Scroll selector={`#table-body-com-${this.domId}`}/>}\n {<HScroll selector={`#table-body-com-${this.domId}`}/>}\n </div>\n {this.renderFoot()}\n <div ref={c => this.split = c} className='ck-split d-none'/>\n </div>\n );\n }\n\n renderHeader() {\n return (\n <div ref={c => this.tableHeader = c}>\n <table ref={c => this.table_head = c} id={`table-head-${this.domId}`} className={this.getClasses()} style={this.getTableStyles()}>\n <thead className={this.getHeaderClasses()}>\n <tr>\n {this.state.select || this.props.edit ?\n <th style={{width:'20px',textAlign:'center'}}>\n {this.props.edit || this.props.selectOnce ? <Icon icon='list'/> :\n <CCheckbox ref={c=>this.allchk=c} onChange={this.selectAll} checked={this.state.selectAll} half={this.state.selectHalf}/>}\n </th> : null}\n {React.Children.map(this.props.children, (item, key) => {\n this.cacheRow[item.props.field] = '';\n if (!item || item.props.hide) {\n return null;\n }\n // let align = item.props.align || this.props.align;\n let style = {\n 'textAlign': 'center'\n };\n if (item.props.width) {\n style.width = item.props.width;\n }\n let sort_icon = '';\n if (this.sortList[item.props.field]) {\n sort_icon = 'sort-alpha-' + (this.sortList[item.props.field] === 'asc' ? 'down' : 'up');\n }\n return (\n <th onContextMenu={this.menuContextHandler} id={this.domId + '-' + key} data-key={'head_' + key} style={style}>\n {this.is_sort ?\n <a className='ck-ctable-sort' href='javascript://' id={`${this.domId}-sort-${item.props.field}`}\n data-field={item.props.field}\n onClick={this.sortHandler}>\n {item.props.text}{'\\u0020'}\n <Icon icon={sort_icon}/></a> : item.props.text}\n {this.props.move ?\n <span ref={c => this.headerSplits.push(c)} data-key={this.domId + '-' + key} className='ck-column-split'/> : null}\n </th>\n );\n })}\n </tr>\n </thead>\n </table>\n </div>\n )\n }\n\n renderRows() {\n return (\n <div ref={c => this.table_rows = c} id={`table-body-com-${this.domId}`} className='flex-grow-1 rows' onScroll={this.scrollHandler}>\n <table ref={c => this.table_body = c} id={`table-body-${this.domId}`} className={this.getClasses()} style={this.getTableStyles()}>\n <tbody>\n {this.state.data.map((row, i) => {\n if (this.props.edit) {\n return this.renderEditRow(row, i)\n }\n return this.renderRow(row, i);\n })}\n {this.props.edit ? this.renderEditAddRow() : null}\n </tbody>\n </table>\n {this.props.menu ? this.renderMenu() : null}\n {this.props.menu ? this.renderNumberMenu() : null}\n </div>\n )\n }\n\n renderRow(row, i, parentRow) {\n let checked = this.state.selectRows.indexOf(i) !== -1\n return (\n <React.Fragment>\n <tr className={checked ? 'ck-table-selected' : null} onClick={this.clickHandler(row, i)}>\n {this.state.select ?\n <th style={{width:'20px',textAlign:'center'}}>\n <CCheckbox ref={'row_' + i} onChange={this.changeHandler(row, i)} checked={checked}/>\n </th> : null}\n {React.Children.map(this.props.children, (item, key) => {\n if (!item || item.props.hide) {\n return null;\n }\n //set style\n let style = {...this.props.columnStyle};\n\n style.textAlign = item.props.align || this.props.align;\n if (item.props.width) {\n style.width = item.props.width;\n }\n let dataType;\n switch (item.props.dataType) {\n case \"number\":\n dataType = \"number\";\n break;\n case \"date\":\n dataType = \"date\";\n break;\n default:\n dataType = \"text\";\n }\n\n if (item.props.children) {\n return (\n <td onContextMenu={this.menuContextHandler(dataType)} id={this.domId + '-' + key} data-row={`${i}`} data-field={item.props.field}\n className={item.props.className} style={{'text-align': align}}\n key={'col_' + key}>{React.cloneElement(item, {\n text : item.props.text,\n row : row,\n value: row[item.props.field]\n })}</td>\n );\n } else {\n if (item.props.type) {\n item.props.disabled=true;\n }\n return <td onContextMenu={this.menuContextHandler(dataType)} id={this.domId + '-' + key}\n data-field={item.props.field}\n style={style}\n onClick={(e) => {\n if (typeof item.props.onClick === 'function') {\n item.props.onClick(row);\n }\n }}\n onDoubleClick={(e) => {\n if (typeof item.props.onDoubleClick === 'function') {\n item.props.onDoubleClick(row);\n }\n }}\n data-row={`${i}`}>\n {item.props.type ? this.renderEditComponent(item.props,row,i):(item.props.onFormat ? item.props.onFormat(row[item.props.field], row, item.props.field) : row[item.props.field])}\n </td>;\n }\n })}\n </tr>\n </React.Fragment>\n );\n }\n\n renderEditRow(row, i) {\n return (\n <React.Fragment>\n <tr className={this.props.onClick ? 'click-row' : null} onClick={this.clickHandler(row, i)}>\n <th style={{width:'20px',textAlign:'center'}}>\n {this.editRows.indexOf(i) === -1 ? null :\n <Icon id={`${this.domId}-edit-row-icon-${i}`} icon='edit' className='text-danger'/>}\n </th>\n {React.Children.map(this.props.children, (item, key) => {\n if (!item || item.props.hide) {\n return null;\n }\n //set style\n let style = {...this.props.columnStyle};\n\n style.textAlign = item.props.align || this.props.align;\n if (item.props.width) {\n style.width = item.props.width;\n }\n let dataType = 'text';\n return (\n <td onContextMenu={this.menuContextHandler(dataType)}\n className={item.props.disabled ? 'disabled' : ''} id={this.domId + '-' + key}\n data-field={item.props.field}\n style={style}\n onClick={(e) => {\n if (typeof item.props.onClick === 'function') {\n item.props.onClick(row);\n }\n }}\n onDoubleClick={(e) => {\n if (typeof item.props.onDoubleClick === 'function') {\n item.props.onDoubleClick(row);\n }\n }}\n data-row={`${i}`}>\n {item.props.disabled?\n (item.props.onFormat ? item.props.onFormat(row[item.props.field], row, item.props.field) : row[item.props.field]):\n this.renderEditComponent(item.props, row, i)}\n </td>\n );\n })}\n </tr>\n </React.Fragment>\n );\n }\n\n renderEditAddRow() {\n return (\n <tr id={this.domId + '-edit'}>\n <th style={{width:'20px',textAlign:'center'}}><Icon icon='chevron-circle-right'/></th>\n {React.Children.map(this.props.children, (item, key) => {\n if (!item || item.props.hide) {\n return null;\n }\n let style = {\n width: item.props.width\n };\n return (\n <td style={style}>\n <CTableInput onFocus={this.addNewHandler}/>\n </td>\n );\n })}\n </tr>\n )\n }\n\n renderEditComponent(item, row, i) {\n switch (item.type) {\n case \"combo\":\n return (\n <CTableInput onChange={this.editHandler} data-row={i}\n data-field={item.field} data={row[item.field]}\n align={item.align} disabled={item.disabled}\n combo={item.combo} comboData={item.comboData}/>\n );\n case \"calendar\":\n return (\n <CTableInput onChange={this.editHandler} data-row={i}\n data-field={item.field} data={row[item.field]}\n align={item.align} disabled={item.disabled}\n calendarFormat={item.calendarFormat} calendar/>\n );\n case \"checkbox\":\n return (\n <CCheckbox className='d-inline' width='20px' onChange={(chk,e)=>{this.editHandler(e,chk,'chk')}} data-row={i}\n data-field={item.field} checked={!!row[item.field]} disabled={item.disabled} tabIndex=\"0\"/>\n )\n default:\n return (\n <CTableInput onChange={this.editHandler} data-row={i} data-field={item.field}\n data={row[item.field]} align={item.align} disabled={item.disabled}\n onBlur={this.state.total&&this.state.total.hasOwnProperty(item.field)?this.calcLocalTotal(item.field):null}\n />\n )\n }\n }\n\n renderFoot() {\n if (!this.props.foot) {\n return null;\n }\n return (\n <div>\n <PageBar page={this.state.page} dataCount={this.state.dataCount}\n onSelect={this.selectPageHandler}\n showNumbers={this.props.showNumbers}\n showPages={this.props.showPages} noPage={this.props.edit}/>\n </div>\n )\n }\n\n renderTotal() {\n if (!this.state.total) {\n return null;\n }\n let total = this.state.total;\n return (\n <div ref={c => this.tableTotal = c} className='ck-ctable-total'>\n <table ref={c => this.table_total = c} id={`table-total-${this.domId}`} className={this.getClasses()} style={this.getTableStyles()}>\n <tbody>\n <tr>\n {this.state.select || this.props.edit ?\n <td width='20px'><Icon icon='chart-line'/></td> : null}\n {React.Children.map(this.props.children, (item, key) => {\n if (!item || item.props.hide) {\n return null;\n }\n let align = item.props.align || this.props.align;\n let style = {\n 'textAlign': align\n };\n if (item.props.width) {\n style.width = item.props.width;\n }\n return (\n <td id={this.domId + '-' + key} data-field={item.props.field} style={style}>\n {item.props.onFormat ? item.props.onFormat(total[item.props.field], total, item.props.field) : total[item.props.field]}\n </td>\n );\n })}\n </tr>\n </tbody>\n </table>\n </div>\n )\n }\n\n renderMenu() {\n let lang;\n if (!this.props.lang) {\n let i18 = i18n.getLang();\n let langStr = typeof lang === 'string'?lang:i18.short;\n lang = CTableLang[langStr];\n } else {\n if (typeof this.props.lang === 'string') {\n lang = CTableLang[this.props.lang]\n } else {\n lang = this.props.lang\n }\n }\n return <>\n <Menu ref={c => this.mainMenu = c} onClick={this.menuClickHandler}>\n <Menu.Item field=\"copy\" onClick={() => {\n document.execCommand(\"copy\");\n }}><Icon className='me-1' icon='copy'/>{lang['Copy']}</Menu.Item>\n {this.is_filter?<Menu.Item step/>:null}\n {this.is_filter?<Menu.Item field='select_filter' onClick={(e, field, data) => {\n let select = document.getSelection();\n this.filterHandler(select.toString(), data.field, 'contain');\n }}><Icon className='me-1' icon='filter'/>{lang['Filter By Selection']}</Menu.Item>:null}\n {this.is_filter?<Menu.Item field='select_exclude' onClick={(e, field, data) => {\n let select = document.getSelection();\n this.filterHandler(select.toString(), data.field, 'exclude');\n }}><Icon className='me-1' icon='filter'/>{lang['Filter Excluding Selection']}</Menu.Item>:null}\n {this.is_filter||this.is_sort?<Menu.Item field='clear_filter' onClick={() => {\n this.clearFilter();\n }}><span className='text-danger'><Icon className='me-1' icon='brush'/>{lang['Clear Filter / Sort']}</span></Menu.Item>:null}\n {this.is_filter?<Menu.Item step/>:null}\n {this.is_filter?<Menu.Item field=\"equal\">\n <span className='me-1' style={inputStyle}>{lang['Equal With']}</span>\n <Input className='me-1' size='xs' width='120px'\n data={this.state.filter.equal}\n onChange={this.filterChangeHandler('equal')}\n onMouseDown={stopEvent}\n onEnter={() => {\n this.filterHandler(this.state.filter.equal, this.mainMenu.data.field, 'equal');\n }}\n />\n <Button size='xs' onMouseDown={stopEvent} onClick={(e) => {\n this.filterHandler(this.state.filter.equal, this.mainMenu.data.field, 'equal');\n }} icon='search'/>\n </Menu.Item>:null}\n {this.is_filter?<Menu.Item field=\"filter\">\n <span className='me-1' style={inputStyle}>{lang['Start With']}</span>\n <Input className='me-1' size='xs' width='120px'\n data={this.state.filter.start}\n onChange={this.filterChangeHandler('start')}\n onMouseDown={stopEvent}\n onEnter={() => {\n this.filterHandler(this.state.filter.start, this.mainMenu.data.field, 'start');\n }}\n />\n <Button size='xs' onMouseDown={stopEvent} onClick={(e) => {\n this.filterHandler(this.state.filter.start, this.mainMenu.data.field, 'start');\n }} icon='search'/>\n </Menu.Item>:null}\n {this.is_filter?<Menu.Item field=\"filter\">\n <span className='me-1' style={inputStyle}>{lang['End With']}</span>\n <Input className='me-1' size='xs' width='120px'\n data={this.state.filter.end}\n onChange={this.filterChangeHandler('end')}\n onMouseDown={stopEvent}\n onEnter={() => {\n this.filterHandler(this.state.filter.end, this.mainMenu.data.field, 'end');\n }}\n />\n <Button size='xs' onMouseDown={stopEvent} onClick={(e) => {\n this.filterHandler(this.state.filter.end, this.mainMenu.data.field, 'end');\n }} icon='search'/>\n </Menu.Item>:null}\n {this.is_filter?<Menu.Item field=\"filter\">\n <span className='me-1' style={inputStyle}>{lang['Contain with']}</span>\n <Input className='me-1' size='xs' width='120px'\n data={this.state.filter.contain}\n onChange={this.filterChangeHandler('contain')}\n onMouseDown={stopEvent}\n onEnter={() => {\n this.filterHandler(this.state.filter.contain, this.mainMenu.data.field, 'contain');\n }}\n />\n <Button size='xs' onMouseDown={stopEvent} onClick={(e) => {\n this.filterHandler(this.state.filter.contain, this.mainMenu.data.field, 'contain');\n }} icon='search'/>\n </Menu.Item>:null}\n {this.is_filter? <Menu.Item step/> : null}\n {this.is_filter?<Menu.Item field=\"filter\" className='flex-column'>\n <div className='w-100'>{lang['Condition Filter']}</div>\n <Input size='xs' width='100%'\n data={this.state.filter.condition}\n onChange={this.filterChangeHandler('condition')}\n onMouseDown={stopEvent}\n onEnter={() => {\n this.filterHandler(this.state.filter.condition, this.mainMenu.data.field, 'condition');\n }}\n />\n </Menu.Item>:null}\n {this.props.edit ? <Menu.Item step/> : null}\n {this.props.edit ? <Menu.Item field=\"delete_row\">{lang['Delete Row']}</Menu.Item> : null}\n {this.props.edit ? <Menu.Item field=\"clone_row\">{lang['Clone Row']}</Menu.Item> : null}\n {this.props.customMenu?<Menu.Item step/>:null}\n {this.props.customMenu?this.props.customMenu.map((menu)=>{\n return this.explainCustomMenu(menu)\n }):null}\n </Menu>\n </>\n }\n\n renderNumberMenu() {\n let lang;\n if (!this.props.lang) {\n let i18 = i18n.getLang();\n let langStr = typeof lang === 'string'?lang:i18.short;\n lang = CTableLang[langStr];\n } else {\n if (typeof this.props.lang === 'string') {\n lang = CTableLang[this.props.lang]\n } else {\n lang = this.props.lang\n }\n }\n return <>\n <Menu ref={c => this.numMenu = c} onClick={this.menuClickHandler}>\n <Menu.Item field=\"copy\" onClick={() => {\n document.execCommand(\"copy\");\n }}><Icon className='me-1' icon='copy'/>{lang['Copy']}</Menu.Item>\n {this.is_filter?<Menu.Item step/>:null}\n {this.is_filter?<Menu.Item field='select_filter' onClick={(e, field, data) => {\n let select = document.getSelection();\n this.filterHandler(select.toString(), data.field, 'contain');\n }}><Icon className='me-1' icon='filter'/>{lang['Filter By Selection']}</Menu.Item>:null}\n {this.is_filter?<Menu.Item field='select_exclude' onClick={(e, field, data) => {\n let select = document.getSelection();\n this.filterHandler(select.toString(), data.field, 'exclude');\n }}><Icon className='me-1' icon='filter'/>{lang['Filter Excluding Selection']}</Menu.Item>:null}\n {this.is_filter||this.is_sort?<Menu.Item field='clear_filter' onClick={() => {\n this.clearFilter();\n }}><span className='text-danger'><Icon className='me-1' icon='brush'/>{lang['Clear Filter / Sort']}</span></Menu.Item>:null}\n {this.is_filter?<Menu.Item step/>:null}\n {this.is_filter?<Menu.Item field=\"filter\" className='flex-column'>\n <div className='w-100'>{lang['Condition Filter']}</div>\n <Input size='xs' width='100%'\n data={this.state.filter.condition}\n onChange={this.filterChangeHandler('condition')}\n onMouseDown={stopEvent}\n onEnter={() => {\n this.filterHandler(this.state.filter.condition, this.numMenu.data.field, 'condition');\n }}\n />\n <div>and,or,between,&gt;,&gt;=,&lt;,&lt;=,=</div>\n </Menu.Item>:null}\n </Menu>\n </>\n }\n\n explainCustomMenu(menu) {\n if (menu.children && menu.children instanceof Array) {\n return <Menu.Item field={menu.field} text={menu.text} child>{menu.children.map((item)=>{\n return this.explainCustomMenu(item)\n })}</Menu.Item>\n } else {\n return <Menu.Item field={menu.field} onClick={menu.click}>{menu.text}</Menu.Item>\n }\n }\n}\n\nconst inputStyle = {width: '80px'};\nconst stopEvent = function (e) {\n e.stopPropagation();\n};\n\nCTable.propTypes = {\n //主题\n theme : PropTypes.oneOf(['primary', 'secondary', 'success', 'danger', 'warning', 'info', 'light', 'dark']),\n //标头主题\n headerTheme : PropTypes.oneOf(['primary', 'secondary', 'success', 'danger', 'warning', 'info', 'light', 'dark']),\n //标头css class\n headClass : PropTypes.string,\n //数据来源\n data : PropTypes.array,\n //数据总记录数\n dataCount : PropTypes.number,\n //总页数\n page : PropTypes.number,\n //第一列是否出现选择项\n select : PropTypes.bool,\n //是否只能选中一项\n selectOnce : PropTypes.bool,\n //是否显示标头\n header : PropTypes.bool,\n //\n center : PropTypes.bool,\n //数据当前页\n currentPage : PropTypes.number,\n //\n striped : PropTypes.bool,\n //是否显示边框\n bordered : PropTypes.bool,\n //行是否有hover效果\n hover : PropTypes.bool,\n //是否小型化显示列表\n sm : PropTypes.bool,\n //文字最小化\n fontSm : PropTypes.bool,\n responsive : PropTypes.bool,\n //文字列表 left,center,right\n align : PropTypes.string,\n //是否显示树结构\n tree : PropTypes.string,\n //点击树事件\n onClickTree : PropTypes.func,\n //点击事件\n onClick : PropTypes.func,\n //选择事件\n onCheck : PropTypes.func,\n //选择所有\n onCheckAll : PropTypes.func,\n //过滤事件\n onFilter : PropTypes.func,\n //排序事件\n onSort : PropTypes.func,\n //是否列可移动\n move : PropTypes.bool,\n //刷新事件\n onRefresh : PropTypes.func,\n //刷新事件按钮文字\n refreshText : PropTypes.string,\n //是否漂浮\n absolute : PropTypes.bool,\n //漂浮X坐标\n x : PropTypes.string,\n //漂浮Y坐标\n y : PropTypes.string,\n //表宽\n width : PropTypes.string,\n //表高\n height : PropTypes.string,\n // foot : PropTypes.bool,\n //是否显示列表尾\n foot : PropTypes.object,\n //表自动随主体小设置\n position : PropTypes.object,\n //显示的页码数\n showPages : PropTypes.number,\n //显示的记录条数\n showNumbers : PropTypes.number,\n //翻页事件\n onSelectPage: PropTypes.func,\n //是否自动换行\n noWrap : PropTypes.bool,\n //是否启用右键菜单\n menu : PropTypes.bool,\n //是否显示每列记录总合数\n total : PropTypes.object,\n //是否编辑模式\n edit : PropTypes.bool,\n //数据删除事件\n onDelete : PropTypes.func,\n //是否启用排序\n sort : PropTypes.bool,\n //是否启用过滤\n filter : PropTypes.bool,\n //自定义右键菜单\n customMenu : PropTypes.array,\n //自定义显示语言\n lang : PropTypes.object,\n source : PropTypes.string,\n sourceFunc : PropTypes.func,\n //是否显示全部选取\n allSelect : PropTypes.bool,\n};\n\nCTable.defaultProps = {\n data : [],\n dataCount : 1,\n select : true,\n header : true,\n foot : true,\n currentPage: 1,\n hover : true,\n striped : true,\n align : 'left',\n sm : true,\n fontSm : true,\n headerTheme: 'primary',\n noWrap : true,\n bordered : true,\n move : true,\n menu : true,\n showNumbers: 30,\n showPages : 10,\n source : null,\n total : null,\n lang : 'en',\n allSelect : true\n}\n\nexport default CTable;"],"file":"CTable.js"}
@@ -1,6 +1,6 @@
1
- /* @clake/react-bootstrap4-window v0.7.3 | by Clake
1
+ /* @clake/react-bootstrap4-window v0.7.5 | by Clake
2
2
  * Copyright (c) 2024 Clake,
3
- * 2024-03-14T18:58:44+0800
3
+ * 2024-03-15T10:28:01+0800
4
4
  */
5
5
  "use strict";
6
6
 
@@ -1,5 +1,5 @@
1
- /* @clake/react-bootstrap4-window v0.7.3 | by Clake
1
+ /* @clake/react-bootstrap4-window v0.7.5 | by Clake
2
2
  * Copyright (c) 2024 Clake,
3
- * 2024-03-14T18:58:44+0800
3
+ * 2024-03-15T10:28:01+0800
4
4
  */
5
5
  {"version":3,"sources":["CTableInput.js"],"names":["CTableInput","props","e","setState","value","target","onChange","combo","filter","calendar","state","setCurrentDate","Date","val","format","hide","row","parseValue","data","comboData","input","addEventListener","show","stopPropagation","nextProps","nextState","disabled","undefined","base","className","inputStyle","align","textAlign","inputClasses","getClasses","c","changeHandler","dblHandler","renderCombo","renderCalendar","input_icon","readOnly","selectHandler","focus","calendarSelectHandler","calendarFormat","React","Component","propTypes","PropTypes","any","string","bool","object","func","onSelect","defaultProps"],"mappings":"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","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport classNames from 'classnames/bind';\nimport './css/CTableInput.less';\nimport {\n i18n,\n Icon\n} from '@clake/react-bootstrap4';\nimport WCombo from \"./WCombo\";\nimport WCalendar from './WCalendar';\nclass CTableInput extends React.Component {\n constructor(props) {\n super(props);\n this.state={\n value:this.parseValue(this.props.data),\n // value: this.props.data || '',\n comboData:this.props.comboData\n };\n }\n\n componentDidMount(){\n if (this.props.calendar) {\n this.input.addEventListener('focus', (e) => {\n this.calendar.show(e);\n }, false);\n this.input.addEventListener('mousedown', (e) => {\n e.stopPropagation();\n }, false);\n }\n if (this.props.combo) {\n this.input.addEventListener('focus', (e) => {\n this.combo.show(this.state.value,e);\n }, false);\n this.input.addEventListener('mousedown', (e) => {\n e.stopPropagation();\n }, false);\n }\n }\n\n componentWillReceiveProps(nextProps) {\n this.setState({\n value: this.parseValue(nextProps.data),\n // value: nextProps.value || '',\n comboData: nextProps.comboData\n });\n }\n\n shouldComponentUpdate(nextProps, nextState) {\n if (nextProps.comboData !== this.props.comboData) {\n return true;\n }\n if (nextProps.disabled !== this.props.disabled) {\n return true\n }\n return nextState.value !== this.state.value;\n }\n\n parseValue(val) {\n if (val === null || val === undefined) {\n return \"\";\n } else {\n return '' + val;\n }\n }\n\n getClasses() {\n let base = 'ck-ctable-input';\n\n return classNames(base,this.props.className);\n }\n\n changeHandler = (e) => {\n this.setState({\n value: e.target.value\n });\n // console.log(e.target,e.currentTarget)\n if (typeof this.props.onChange === 'function') {\n this.props.onChange(e,e.target.value);\n }\n if (this.combo) {\n this.combo.filter(e.target.value);\n }\n };\n\n dblHandler = (e)=> {\n if (this.calendar && !this.state.value) {\n this.calendar.setCurrentDate(new Date());\n let val = this.calendar.format()\n this.setState({value:val})\n if (typeof this.props.onChange === 'function') {\n this.props.onChange(e,val);\n }\n this.calendar.hide();\n }\n };\n\n selectHandler = (val,row,e)=>{\n this.setState({\n value:val\n });\n if (typeof this.props.onChange === 'function') {\n this.props.onChange(e,val,row);\n }\n };\n\n calendarSelectHandler = (val,e)=>{\n this.setState({\n value:val\n });\n if (typeof this.props.onChange === 'function') {\n this.props.onChange(e,val);\n }\n };\n\n render() {\n let inputStyle = {};\n if (this.props.align) {\n inputStyle.textAlign = this.props.align;\n }\n let inputClasses = '';\n if (this.props.combo || this.props.calendar) {\n inputClasses = 'right-icon';\n }\n return (\n <div className={this.getClasses()}>\n <input ref={c=>this.input=c} type='text' {...this.props}\n onChange={this.changeHandler}\n onDoubleClick={this.dblHandler}\n disabled={this.props.disabled}\n style={inputStyle}\n className={inputClasses}\n value={this.state.value}/>\n {this.renderCombo()}\n {this.renderCalendar()}\n </div>\n );\n }\n\n renderCombo() {\n if (!this.props.combo) {\n return null;\n }\n let input_icon = 'ck-wcombo-icon';\n return (\n <div className='ck-input-calendar'>\n <WCombo ref={c => this.combo = c} combo={this.props.combo}\n data={this.state.comboData} noSearch={this.props.readOnly}\n onSelect={this.selectHandler}/>\n <div className={input_icon} onClick={() => {\n this.input.focus();\n }}><Icon icon='angle-down'/></div>\n </div>\n )\n }\n\n renderCalendar() {\n if (!this.props.calendar) {\n return null;\n }\n let input_icon = 'ck-wcalendar-icon';\n return (\n <div className='ck-input-calendar'>\n <WCalendar ref={c => this.calendar = c} onSelect={this.calendarSelectHandler}\n value={this.state.value}\n format={this.props.calendarFormat}/>\n <div className={input_icon} onClick={() => {\n this.input.focus();\n }}><Icon iconType='regular' icon='calendar-alt'/></div>\n </div>\n )\n }\n}\n\nCTableInput.propTypes = {\n data: PropTypes.any,\n align: PropTypes.string,\n disabled: PropTypes.bool,\n combo: PropTypes.object,\n comboData: PropTypes.any,\n calendar: PropTypes.object,\n onChange: PropTypes.func,\n onSelect: PropTypes.func,\n};\n\nCTableInput.defaultProps = {\n\n};\n\nexport default CTableInput;"],"file":"CTableInput.js"}