nsc-react-component 4.3.3 → 4.3.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.
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["AppstoreOutlined","CheckOutlined","ColumnHeightOutlined","SearchOutlined","SortAscendingOutlined","SortDescendingOutlined","RedoOutlined","isEmptyObj","Store","PageStore","utils","React","DndProvider","BodyRow","DndContextType","IBodyRowProps","treeUtils","BodyRowComponent","HTML5Backend","withZhLocale","Resizable","getLess","getNode","NoData","getStorage","config","cls","styles","ResizeableTitle","props","onResize","width","restProps","_objectWithoutProperties","_excluded","createElement","height","draggableOpts","enableUserSelectHack","NSCTable","Component","constructor","_autoType","_defineProperty","createRef","onBeforeLoad","load","header","cell","index","e","_ref","size","cols","state","nextColumns","_objectSpread","setState","getColumns","ev","data","JSON","parse","_this","eventType","payload","tableSize","dragIndex","hoverIndex","drag","target","dragNode","record","targetNode","moveArray","ids","parentNode","getChildNodeIds","params","id","parentId","attribute","moveRow","store","reload","modal","type","storePrefix","autoType","content","dataSource","columns","loading","pagination","activeIndex","searchText","fieldOption","searchColor","sorts","filterParams","sortType","sorter","sortInfo","defaultSort","checkColumn","defaultCheck","selectedRowKeys","selectedRowDatas","filter","extra","_ref2","listeners","listenersProps","restStore","_excluded2","storeProps","model","component","options","callback","dataChanged","modelData","paging","getPagination","onErrorLoad","err","response","autoLoad","Object","assign","current","componentDidMount","resizeColumn","setData","window","addEventListener","listenMessage","componentWillUnmount","removeEventListener","componentDidUpdate","prevProps","preState","resetColumn","newCols","colss","map","col","temp","onHeaderCell","column","handleResize","push","clearSelectColor","getPaginationByStore","onChange","filters","autoOnChange","autoSort","autoPagination","isMultiple","Array","isArray","handlePagination","p","currentKey","pageSizeKey","pageSize","ascParams","getSortParam","onChangeFn","getStore","getModel","handleSearch","val","filterColumn","checkedValue","length","_message","warning","filterColumns","newCol","includes","dataIndex","initShow","sortState","arguments","undefined","sortSearch","orderItems","field","asc","order","forEach","v","stringify","isBeyond","event","textRange","el","textContent","targetW","getBoundingClientRect","range","document","createRange","setStart","setEnd","childNodes","rangeWidth","setSelectedRowKeys","setSelectedRowDatas","sortFields","defaultShowCols","ellipsis","render","showTitle","text","_this$state$cols","currentCol","find","c","actualWidth","colWidth","colWidthObj","small","middle","default","large","paddingWidth","style","display","ref","removeAttribute","scrollWidth","clientWidth","setAttribute","className","overflow","textOverflow","whiteSpace","indexOf","sortOrder","multiple","item","filterProps","obj","searchKey","Div","title","placeholder","concat","tableSearchRef","filterDropdown","_ref3","setSelectedKeys","selectedKeys","confirm","clearFilters","_Space","_Button","onClick","_this$tableSearchRef$","newFilterParams","key","getValue","sortParam","filterIcon","renderToolBar","colLists","toolbar","tableTool","storeRequestConfig","tools","toolsClick","onToolClick","sizeItem","sortItem","sortContent","Fragment","cursor","color","sizeContent","_Checkbox","Group","bind","label","value","disabled","fontSize","_Popover","placement","trigger","overlayStyle","minWidth","maxWidth","marginRight","onRefresh","getSelectedRowKeys","getSelectedRowDatas","resetSelectedRowKeys","rowSelectionOnSelect","selected","rowKey","newSelectedRowKeys","newSelectedRowDatas","splice","rowSelectionOnSelectAll","selectedRows","changeRows","newids","newdatas","changeIds","_this$props$toolbar","omit","clickChangeColor","position","showSizeChanger","showQuickJumper","showTotal","total","_ref4","from","to","onRowFn","onRow","custom","onClickFn","rowClassName","newDataSource","getSearchMenuDatas","treeDatas","expandedRowKeys","openKeys","dragable","dragableProps","components","resizeProps","toolFlag","toolprops","show","showRowSelection","rowSelection","onSelect","onSelectAll","columnWidth","tableProps","configTableProps","DefaultTable","_Table","_extends","childrenColumnName","sheitem","locale","emptyText","scroll","x","_Pagination","page","action","_ref5","backend","dragUrl"],"sources":["../../../src/components/base/table/index.tsx"],"sourcesContent":["/*\r\n * @Descripttion:\r\n * @version:\r\n * @Author: rxzhu\r\n * @Date: 2021-03-23 08:46:20\r\n * @LastEditors: rxzhu\r\n * @LastEditTime: 2021-03-23 10:30:42\r\n */\r\nimport {\r\n AppstoreOutlined,\r\n CheckOutlined,\r\n ColumnHeightOutlined,\r\n SearchOutlined,\r\n SortAscendingOutlined,\r\n SortDescendingOutlined,\r\n RedoOutlined,\r\n} from \"@ant-design/icons\";\r\nimport { isEmptyObj } from \"@bj-nsc/functions\";\r\nimport Store, { PageStore, StoreProps } from \"@bj-nsc/msn\";\r\nimport { utils } from \"@bj-nsc/msn/lib/utils\";\r\nimport {\r\n Button,\r\n Checkbox,\r\n CheckboxOptionType,\r\n Menu,\r\n message,\r\n Pagination,\r\n Popover,\r\n Space,\r\n Table,\r\n TableProps,\r\n Tooltip,\r\n} from \"antd\";\r\nimport { ColumnType, TablePaginationConfig } from \"antd/lib/table\";\r\nimport * as React from \"react\";\r\nimport { DndProvider } from \"react-dnd\";\r\nimport BodyRow, { DndContextType, IBodyRowProps } from \"../common/BodyRow\";\r\nimport treeUtils from \"../../treeUtils\";\r\nimport \"./index.module.less\";\r\nconst { BodyRowComponent, HTML5Backend } = BodyRow;\r\nimport withZhLocale from \"../common/withZhLocale\";\r\nimport { Resizable } from \"react-resizable\";\r\nimport \"./resize.module.less\";\r\nimport { getLess, getNode, simplifyColumns } from \"../../utils\";\r\nimport NoData from \"../../base/common/NoData\";\r\nimport { getStorage } from \"@bj-nsc/functions\";\r\nimport config from \"../../config\";\r\nimport EllipseCell from \"../common/EllipseCell\";\r\nimport cls from \"classnames\";\r\nimport isEqual from \"lodash/isEqual\";\r\nconst styles = null;\r\ninterface IDragParams {\r\n id: string | number;\r\n ids: Array<string | number>;\r\n parentId: string | number;\r\n}\r\n// interface StoreProps {}\r\n\r\nexport type StoreType = \"PageStore\" | \"TreeStore\" | \"BaseStore\";\r\n\r\ninterface NSCTablePagination extends TablePaginationConfig {\r\n totalKey?: string;\r\n pageSizeKey?: string;\r\n currentKey?: string;\r\n}\r\n\r\ninterface ToolBarProps {\r\n show: boolean;\r\n tools?: Array<string>;\r\n onToolClick?: { onRefresh?: any; onSort?: any };\r\n}\r\ninterface NSCTableProps extends TableProps<any> {\r\n store?: StoreProps;\r\n showTotal?: boolean; // 是否显示总条数信息,默认true\r\n dragable?: boolean; // 是否可拖动, 默认false\r\n filterColumn?: boolean; // 是否支持过滤显示表格列, 默认true\r\n moveRow?: (params: IDragParams) => void; // 拖拽完成后的回调\r\n dragUrl?: string; // 保存拖拽排序的接口\r\n pagination?: false | NSCTablePagination;\r\n autoPagination?: boolean; // 组件是否自动处理分页\r\n autoSort?: boolean; //组件是否自动处理排序\r\n autoOnChange?: boolean; // 组件是否自动onChange, false则不做任何处理全部交给调用方\r\n resizeColumn?: boolean;\r\n sortFields?: Array<string>; //需要排序的字段Index\r\n toolbar?: ToolBarProps | boolean;\r\n autoSize?: boolean;\r\n sortSearch?: boolean; //是否添加排序查询,默认true\r\n showRowSelection?: boolean;\r\n rowKey?: string;\r\n [propsName: string]: any;\r\n}\r\n\r\nexport type INSCTableProps = typeof NSCTable.defaultProps & NSCTableProps;\r\nexport { DndContextType, IBodyRowProps };\r\n\r\nconst ResizeableTitle = (props: any) => {\r\n const { onResize, width, ...restProps } = props;\r\n return (\r\n <Resizable\r\n width={width || 150}\r\n height={0}\r\n onResize={onResize}\r\n draggableOpts={{ enableUserSelectHack: false }}\r\n >\r\n <th {...restProps} />\r\n </Resizable>\r\n );\r\n};\r\nclass NSCTable extends React.Component<INSCTableProps, any> {\r\n static defaultProps = {\r\n dragable: false,\r\n showTotal: true,\r\n filterColumn: true,\r\n dragUrl: \"\",\r\n autoPagination: true,\r\n autoSort: true,\r\n autoOnChange: true,\r\n resizeColumn: true,\r\n toolbar: {\r\n show: true,\r\n onToolClick: {} as any,\r\n } as any,\r\n };\r\n\r\n store = {} as StoreProps;\r\n thIconRef = React.createRef<HTMLDivElement>();\r\n tableSearchRef = React.createRef<any>();\r\n\r\n listeners = {\r\n onBeforeLoad: null,\r\n load: null,\r\n };\r\n\r\n components = {\r\n header: {\r\n cell: ResizeableTitle,\r\n },\r\n };\r\n\r\n constructor(props) {\r\n super(props);\r\n let modal = props.type || \"auto\";\r\n let storePrefix = getStorage(\"store-pre-key\");\r\n let autoType = getStorage(\r\n storePrefix ? storePrefix + \"tableSize\" : \"tableSize\"\r\n );\r\n autoType = autoType?.content;\r\n this.state = {\r\n dataSource: [],\r\n columns: [],\r\n loading: false,\r\n pagination: {},\r\n activeIndex: -1,\r\n //搜索文本\r\n searchText: null,\r\n fieldOption: null,\r\n searchColor: null,\r\n cols: [],\r\n sorts: [],\r\n filterParams: {},\r\n tableSize: this.props.size || autoType || \"default\",\r\n sortType: \"single\",\r\n sorter: [], //记录当前排序字段\r\n sortInfo: {},\r\n defaultSort: true,\r\n checkColumn: [],\r\n defaultCheck: true,\r\n selectedRowKeys: [],\r\n selectedRowDatas: [],\r\n filter: [],\r\n extra: {},\r\n };\r\n if (props.store instanceof Store) {\r\n this.store = props.store;\r\n } else {\r\n const { listeners: listenersProps = {}, ...restStore } =\r\n props.store || {};\r\n const storeProps = {\r\n model: \"model\",\r\n component: this,\r\n listeners: {\r\n onBeforeLoad: (store, options) => {\r\n this.setState({ loading: true });\r\n utils.callback(listenersProps.onBeforeLoad, this, [store, options]);\r\n },\r\n dataChanged: (data, modelData, store) => {\r\n let paging = !(this.props.pagination === false);\r\n if (paging && !this.props.dataSource) {\r\n this.setState({\r\n dataSource: modelData,\r\n pagination: store.getPagination(),\r\n loading: false,\r\n activeIndex: -1,\r\n });\r\n } else {\r\n this.setState({ dataSource: modelData, loading: false });\r\n }\r\n\r\n utils.callback(listenersProps.dataChanged, this, [\r\n data,\r\n modelData,\r\n store,\r\n paging,\r\n ]);\r\n },\r\n load: (data, modelData, store) => {\r\n utils.callback(listenersProps.load, this, [data, modelData, store]);\r\n },\r\n onErrorLoad: (err, response) => {\r\n this.setState({ loading: false });\r\n utils.callback(listenersProps.onErrorLoad, this, [err, response]);\r\n },\r\n },\r\n data: restStore.data\r\n ? restStore.data\r\n : props.dataSource\r\n ? props.dataSource\r\n : null,\r\n ...restStore,\r\n autoLoad: restStore.autoLoad === false ? false : true,\r\n };\r\n this.store = new PageStore(\r\n Object.assign({}, storeProps, {\r\n pagination: { current: 1, ...this.props.pagination },\r\n })\r\n );\r\n }\r\n }\r\n\r\n handleResize =\r\n (index: any) =>\r\n (e: any, { size }: any) => {\r\n const { cols } = this.state;\r\n const nextColumns = [...cols];\r\n nextColumns[index] = {\r\n ...nextColumns[index],\r\n width: size.width,\r\n };\r\n this.setState(\r\n {\r\n cols: nextColumns,\r\n },\r\n () => {\r\n // 在状态更新后重新获取列配置\r\n this.getColumns();\r\n }\r\n );\r\n };\r\n\r\n componentDidMount() {\r\n const { resizeColumn } = this.props;\r\n if (!resizeColumn) {\r\n this.setState({ columns: [...this.props.columns] });\r\n } else {\r\n this.setState({ cols: [...this.props.columns] });\r\n }\r\n const store = this.props.store;\r\n if (store && store.data) {\r\n this.store.setData(store.data);\r\n }\r\n window.addEventListener(\"message\", this.listenMessage);\r\n }\r\n componentWillUnmount() {\r\n window.removeEventListener(\"message\", this.listenMessage);\r\n }\r\n listenMessage = (ev) => {\r\n const data = typeof ev.data === \"string\" ? JSON.parse(ev.data) : ev.data;\r\n let _this = this;\r\n if (data.eventType == \"changeTableSize\") {\r\n const { payload } = data;\r\n if (\r\n payload.size == \"default\" ||\r\n payload.size == \"small\" ||\r\n payload.size == \"middle\"\r\n ) {\r\n _this.setState({ tableSize: payload.size });\r\n }\r\n }\r\n };\r\n\r\n componentDidUpdate(prevProps, preState) {\r\n const { resizeColumn } = this.props;\r\n if (!resizeColumn) {\r\n if (this.props.columns !== prevProps.columns) {\r\n this.setState({ columns: this.props.columns });\r\n }\r\n } else {\r\n if (preState.cols !== this.state.cols) {\r\n this.resetColumn();\r\n }\r\n if (this.props.columns !== prevProps.columns) {\r\n this.setState({\r\n cols: this.props.columns,\r\n columns: this.props.columns,\r\n });\r\n }\r\n if (prevProps.size !== this.props.size) {\r\n this.setState({ tableSize: this.props.size });\r\n }\r\n }\r\n }\r\n resetColumn() {\r\n const { cols } = this.state;\r\n const newCols: any = [];\r\n let colss = cols || [];\r\n colss.map((col: any, index: any) => {\r\n let temp = {\r\n ...col,\r\n onHeaderCell: (column: { width: any }) => ({\r\n width: column.width,\r\n onResize: this.handleResize(index),\r\n }),\r\n };\r\n newCols.push(temp);\r\n });\r\n this.setState({\r\n columns: newCols,\r\n });\r\n }\r\n\r\n /**\r\n * 清除选中颜色\r\n */\r\n clearSelectColor() {\r\n this.setState({ activeIndex: -1 });\r\n return this;\r\n }\r\n\r\n getPaginationByStore() {\r\n return this.store.getPagination();\r\n }\r\n\r\n onChange(pagination, filters, sorter, extra) {\r\n const {\r\n autoOnChange = true,\r\n autoSort,\r\n autoPagination,\r\n onChange,\r\n store,\r\n } = this.props;\r\n const { filterParams } = this.state;\r\n const isMultiple = Array.isArray(sorter);\r\n if (autoOnChange === false || !store) {\r\n onChange && onChange(pagination, filters, sorter, extra);\r\n return;\r\n }\r\n const handlePagination = () => {\r\n let params = {} as {\r\n size?: string;\r\n pageSize?: string;\r\n ascs?: string;\r\n descs?: string;\r\n [propName: string]: string;\r\n };\r\n const paging = this.getPaginationByStore() || {};\r\n if (!isEmptyObj(pagination)) {\r\n const p = {\r\n [paging.currentKey || \"current\"]: pagination.current,\r\n [paging.pageSizeKey || \"size\"]: pagination.pageSize,\r\n };\r\n Object.assign(params, p);\r\n }\r\n let ascParams = this.getSortParam(sorter, true);\r\n if (isMultiple) {\r\n this.setState({ sorter });\r\n } else if (!isMultiple && !isEmptyObj(sorter)) {\r\n sorter.column &&\r\n this.setState({ sorter: [sorter], defaultSort: false });\r\n } else {\r\n this.setState({ sorter: [] });\r\n }\r\n this.setState({\r\n filters,\r\n extra,\r\n });\r\n params = { ...filterParams, ...params, ...ascParams };\r\n autoSort && this.store.reload({ params });\r\n };\r\n\r\n const onChangeFn = this.props.onChange;\r\n\r\n autoPagination && handlePagination();\r\n // 用户传了onChange保留用户自主处理表格变化的权力\r\n if (onChangeFn) {\r\n utils.callback(onChangeFn, this, [pagination, filters, sorter, extra]);\r\n }\r\n }\r\n\r\n getStore() {\r\n return this.store;\r\n }\r\n\r\n /**\r\n * 获取数据模型对象\r\n */\r\n getModel() {\r\n return this.store.getModel();\r\n }\r\n\r\n /**\r\n * 菜单搜索过滤显示\r\n * @param {String} val\r\n */\r\n handleSearch(val, fieldOption, searchColor) {\r\n this.setState({\r\n searchText: val,\r\n fieldOption: fieldOption,\r\n searchColor: searchColor,\r\n });\r\n }\r\n\r\n /**\r\n * 模块列表移动排序\r\n */\r\n moveRow = (dragIndex, hoverIndex, drag, target) => {\r\n const _this = this;\r\n let dragNode = drag.record;\r\n let targetNode = target.record;\r\n dragNode.moveArray(dragNode, targetNode);\r\n let ids = dragNode.parentNode.getChildNodeIds();\r\n let params = {\r\n id: dragNode.id,\r\n parentId: dragNode.attribute.parentId,\r\n ids: ids,\r\n };\r\n\r\n if (this.props.moveRow) {\r\n this.props.moveRow(params);\r\n } else {\r\n this.store.reload();\r\n }\r\n };\r\n\r\n filterColumn(checkedValue) {\r\n if (checkedValue.length == 0) {\r\n message.warning(\"至少显示一列!\");\r\n return;\r\n }\r\n const filterColumns = this.props.columns.map((col: ColumnType<{}>) => {\r\n const newCol = { ...col } as ColumnType<{}> & { initShow: boolean };\r\n if (checkedValue.includes(col.dataIndex)) {\r\n newCol.initShow = true;\r\n } else {\r\n newCol.initShow = false;\r\n }\r\n return newCol;\r\n });\r\n const { resizeColumn } = this.props;\r\n if (!resizeColumn) {\r\n this.setState({\r\n columns: filterColumns,\r\n checkColumn: checkedValue,\r\n defaultCheck: false,\r\n });\r\n } else {\r\n this.setState({\r\n cols: filterColumns,\r\n checkColumn: checkedValue,\r\n defaultCheck: false,\r\n });\r\n }\r\n }\r\n getSortParam(sorter, sortState = false) {\r\n const isMultiple = Array.isArray(sorter);\r\n const { sortSearch = true } = this.props;\r\n if (!sortSearch) {\r\n return {};\r\n }\r\n let sortInfo = {};\r\n let orderItems = [];\r\n if (!isEmptyObj(sorter) && !isMultiple && sorter.column) {\r\n orderItems = [\r\n {\r\n column: sorter.column.field || sorter.column.dataIndex,\r\n asc: sorter.order == \"ascend\",\r\n },\r\n ];\r\n if (sorter.column) sortInfo[sorter.column.dataIndex] = sorter.order;\r\n } else if (isMultiple) {\r\n sorter.forEach((v) => {\r\n sortInfo[v.column.dataIndex] = v.order;\r\n let field = v.column.field || v.column.dataIndex;\r\n orderItems.push({\r\n column: field,\r\n asc: v.order == \"ascend\",\r\n });\r\n });\r\n }\r\n if (sortState) {\r\n this.setState({\r\n sortInfo: sortInfo,\r\n });\r\n }\r\n return { orderItems: JSON.stringify(orderItems) };\r\n }\r\n isBeyond(e) {\r\n const ev = window.event || e; // 浏览器兼容,最好写一下\r\n const textRange = (el) => {\r\n const textContent = el;\r\n const targetW = textContent.getBoundingClientRect().width;\r\n const range = document.createRange();\r\n range.setStart(textContent, 0);\r\n range.setEnd(textContent, textContent.childNodes.length);\r\n const rangeWidth = range.getBoundingClientRect().width;\r\n return rangeWidth > targetW;\r\n };\r\n return !textRange(ev.target); // target可以保证当前划过的dom节点一直保持是:el-tooltip__trigger\r\n }\r\n setSelectedRowKeys(data: Array<String | Number>) {\r\n this.setState({\r\n selectedRowKeys: data,\r\n });\r\n }\r\n setSelectedRowDatas(data: Array<Object>) {\r\n this.setState({\r\n selectedRowDatas: data,\r\n });\r\n }\r\n getColumns() {\r\n const { columns, sortType, sortInfo } = this.state;\r\n const { sortFields = [], size = \"large\" } = this.props;\r\n const defaultShowCols = columns.filter((cols) => cols.initShow !== false);\r\n const cols = defaultShowCols.map((col, index) => {\r\n // 替换 getColumns 方法中原来的 ellipsis 处理部分\r\n if (col.ellipsis && !col.render) {\r\n col.ellipsis = {\r\n showTitle: false,\r\n };\r\n col.render = (text, record, index) => {\r\n // 获取当前列的实时宽度\r\n const currentCol = this.state.cols?.find((c) => {\r\n // 处理 dataIndex 可能是字符串或数组的情况\r\n if (Array.isArray(c.dataIndex) && Array.isArray(col.dataIndex)) {\r\n return (\r\n JSON.stringify(c.dataIndex) === JSON.stringify(col.dataIndex)\r\n );\r\n }\r\n return c.dataIndex === col.dataIndex;\r\n });\r\n\r\n const actualWidth = currentCol?.width || col.width;\r\n let colWidth: any = \"100%\";\r\n\r\n if (actualWidth) {\r\n const size = this.state.tableSize || this.props.size || \"default\";\r\n const colWidthObj = {\r\n small: 16,\r\n middle: 16,\r\n default: 16,\r\n large: 32,\r\n };\r\n const paddingWidth = colWidthObj[size] || 16;\r\n\r\n if (actualWidth > paddingWidth) {\r\n colWidth = actualWidth - paddingWidth;\r\n } else {\r\n colWidth = actualWidth;\r\n }\r\n }\r\n\r\n return (\r\n <div style={{ display: \"inline-table\", width: \"100%\" }}>\r\n <div\r\n ref={(el) => {\r\n if (el) {\r\n // 清除之前的title\r\n el.removeAttribute(\"title\");\r\n\r\n // 检查文本是否溢出\r\n if (el.scrollWidth > el.clientWidth) {\r\n el.setAttribute(\"title\", text);\r\n }\r\n }\r\n }}\r\n className={getLess(styles, \"nsc-table-text\")}\r\n style={{\r\n width: colWidth,\r\n overflow: \"hidden\",\r\n textOverflow: \"ellipsis\",\r\n whiteSpace: \"nowrap\",\r\n }}\r\n >\r\n {text}\r\n </div>\r\n </div>\r\n );\r\n };\r\n }\r\n if (sortFields.indexOf(col.dataIndex) > -1) {\r\n if (sortType == \"single\") {\r\n col.sorter = true;\r\n col.sortOrder = sortInfo[col.dataIndex]\r\n ? sortInfo[col.dataIndex]\r\n : null;\r\n } else if (sortType == \"multiple\") {\r\n col.sorter = { multiple: index };\r\n col.sortOrder = sortInfo[col.dataIndex]\r\n ? sortInfo[col.dataIndex]\r\n : null;\r\n }\r\n }\r\n return col;\r\n });\r\n cols.map((item, index) => {\r\n if (!isEmptyObj(item.filterProps)) {\r\n let obj = { ...item };\r\n const { type, props, searchKey } = item.filterProps;\r\n let Div = null;\r\n let text = item.title;\r\n Div = getNode(type, {\r\n placeholder: `搜索${text}`,\r\n ...props,\r\n ref: this.tableSearchRef,\r\n });\r\n obj = {\r\n filterDropdown: ({\r\n setSelectedKeys,\r\n selectedKeys,\r\n confirm,\r\n clearFilters,\r\n }) => {\r\n return (\r\n <div className={getLess(styles, \"nsc-table-search\")}>\r\n <div className={getLess(styles, \"nsc-table-search-space\")}>\r\n {Div}\r\n </div>\r\n <Space>\r\n <Button\r\n type=\"primary\"\r\n onClick={() => {\r\n confirm();\r\n const { filterParams } = this.state;\r\n let newFilterParams = { ...filterParams };\r\n let key = item.field || item.dataIndex;\r\n newFilterParams[key] =\r\n this.tableSearchRef.current?.getValue();\r\n this.setState({\r\n filterParams: { ...newFilterParams },\r\n });\r\n const sortParam = this.getSortParam(this.state.sorter);\r\n this.store.load({\r\n params: { ...newFilterParams, ...sortParam },\r\n });\r\n }}\r\n size=\"small\"\r\n className={getLess(styles, \"nsc-table-search-button\")}\r\n >\r\n 查询\r\n </Button>\r\n </Space>\r\n </div>\r\n );\r\n },\r\n filterIcon: () => {\r\n return <SearchOutlined />;\r\n },\r\n ...obj,\r\n };\r\n cols[index] = obj;\r\n }\r\n });\r\n return cols;\r\n }\r\n renderToolBar() {\r\n let { tableSize, columns, sortType } = this.state;\r\n let { filterColumn, columns: colLists, toolbar } = this.props;\r\n const { tableTool, storeRequestConfig = {} } = config();\r\n let tools = [\"refresh\", \"size\", \"sort\", \"column\"];\r\n let toolsClick = {} as any;\r\n if (toolbar == true) {\r\n tools = toolbar.onToolClick\r\n ? toolbar.onToolClick\r\n : [\"refresh\", \"size\", \"sort\", \"column\"];\r\n } else {\r\n tools = toolbar.tools\r\n ? toolbar.tools\r\n : tableTool.tools\r\n ? tableTool.tools\r\n : tools;\r\n toolsClick = toolbar.onToolClick ? toolbar.onToolClick : {};\r\n }\r\n const sizeItem = [\r\n { title: \"宽松\", key: \"default\" },\r\n { title: \"中等\", key: \"middle\" },\r\n { title: \"紧凑\", key: \"small\" },\r\n ];\r\n const sortItem = [\r\n { title: \"单字段排序\", key: \"single\" },\r\n { title: \"多字段排序\", key: \"multiple\" },\r\n ];\r\n const sortContent = (\r\n <>\r\n <div\r\n className={getLess(styles, \"nsc-table-cotent-title\")}\r\n style={{\r\n cursor: this.state.defaultSort ? \"not-allowed\" : \"pointer\",\r\n color: this.state.defaultSort && \"rgba(0,0,0,.45)\",\r\n }}\r\n onClick={() => {\r\n if (this.state.defaultSort) {\r\n return;\r\n }\r\n this.setState({ sorter: [], sortInfo: {}, defaultSort: true });\r\n const params = { ...this.state.filterParams };\r\n this.store.reload({ params });\r\n }}\r\n >\r\n 恢复默认排序\r\n </div>\r\n {sortItem.map((item, index) => {\r\n return (\r\n <div\r\n key={item.key}\r\n onClick={() => {\r\n this.setState({\r\n sorter: [],\r\n sortInfo: {},\r\n sortType: item.key,\r\n defaultSort: false,\r\n });\r\n const params = { ...this.state.filterParams };\r\n this.store.reload({ params });\r\n }}\r\n >\r\n {sortType == item.key ? (\r\n <a>\r\n <div className={getLess(styles, \"nsc-table-content-tiem\")}>\r\n <div style={{ width: 20 }}>\r\n {sortType == item.key && <CheckOutlined />}\r\n </div>\r\n <div> {item.title}</div>\r\n </div>\r\n </a>\r\n ) : (\r\n <div className={getLess(styles, \"nsc-table-content-tiem\")}>\r\n <div style={{ width: 20 }}></div>\r\n <div> {item.title}</div>\r\n </div>\r\n )}\r\n </div>\r\n );\r\n })}\r\n {this.state.sorter.length > 0 && (\r\n <>\r\n <div\r\n className={getLess(styles, \"nsc-table-cotent-title\")}\r\n style={{ color: \"rgba(0,0,0,.45)\" }}\r\n >\r\n 当前排序\r\n </div>\r\n {this.state.sorter.map((item, index) => {\r\n return (\r\n <div\r\n className={getLess(styles, \"nsc-table-content-tiem\")}\r\n key={index}\r\n >\r\n <div style={{ width: 20 }}>\r\n {item.order == \"ascend\" ? (\r\n <SortAscendingOutlined />\r\n ) : (\r\n <SortDescendingOutlined />\r\n )}\r\n </div>\r\n <div> {item.column.title}</div>\r\n </div>\r\n );\r\n })}\r\n </>\r\n )}\r\n </>\r\n );\r\n const sizeContent = (\r\n <>\r\n <div className={getLess(styles, \"nsc-table-cotent-title\")}>\r\n 表格密度\r\n </div>\r\n {sizeItem.map((item, index) => {\r\n return (\r\n <div\r\n key={item.key}\r\n onClick={() => {\r\n this.setState({\r\n tableSize: item.key,\r\n });\r\n }}\r\n >\r\n {tableSize == item.key ? (\r\n <a>\r\n <div className={getLess(styles, \"nsc-table-content-tiem\")}>\r\n <div style={{ width: 20 }}>\r\n {tableSize == item.key && <CheckOutlined />}\r\n </div>\r\n <div> {item.title}</div>\r\n </div>\r\n </a>\r\n ) : (\r\n <div className={getLess(styles, \"nsc-table-content-tiem\")}>\r\n <div style={{ width: 20 }}></div>\r\n <div> {item.title}</div>\r\n </div>\r\n )}\r\n </div>\r\n );\r\n })}\r\n </>\r\n );\r\n\r\n const defaultShowCols = columns.filter((cols) => cols.initShow !== false);\r\n\r\n const content = (\r\n <Checkbox.Group\r\n onChange={this.filterColumn.bind(this)}\r\n options={colLists.map(\r\n (col: ColumnType<{}> & { filterColumn: boolean; dataIndex: any }) => {\r\n if (!col.dataIndex) {\r\n col.dataIndex = col.title;\r\n }\r\n return {\r\n label: col.title,\r\n value: col.dataIndex,\r\n disabled: col.filterColumn === false,\r\n } as CheckboxOptionType;\r\n }\r\n )}\r\n // defaultValue={defaultShowCols.map((col) => col.dataIndex)}\r\n value={\r\n this.state.defaultCheck\r\n ? defaultShowCols.map((col) => col.dataIndex)\r\n : this.state.checkColumn\r\n }\r\n ></Checkbox.Group>\r\n );\r\n return (\r\n <div className={getLess(styles, \"nsc-table-tool-bar\")}>\r\n {tools.indexOf(\"column\") > -1 && (\r\n <div style={{ fontSize: 14 }}>\r\n <Popover\r\n title=\"选择显示的列\"\r\n content={content}\r\n placement=\"bottomRight\"\r\n trigger=\"click\"\r\n overlayStyle={{ minWidth: 410, maxWidth: 450 }}\r\n >\r\n <AppstoreOutlined\r\n className={getLess(styles, \"nsc-table-th-app-store-icon\")}\r\n />\r\n </Popover>\r\n </div>\r\n )}\r\n {tools.indexOf(\"sort\") > -1 && (\r\n <div style={{ marginRight: 8, fontSize: 14 }}>\r\n <Popover placement=\"bottom\" content={sortContent} trigger=\"click\">\r\n <SortAscendingOutlined />\r\n </Popover>\r\n </div>\r\n )}\r\n {tools.indexOf(\"size\") > -1 && (\r\n <div style={{ marginRight: 8, fontSize: 14 }}>\r\n <Popover placement=\"bottom\" content={sizeContent} trigger=\"click\">\r\n <ColumnHeightOutlined />\r\n </Popover>\r\n </div>\r\n )}\r\n {tools.indexOf(\"refresh\") > -1 && (\r\n <div\r\n style={{ marginRight: 8, fontSize: 14, cursor: \"pointer\" }}\r\n onClick={() => {\r\n const params = { ...this.state.filterParams };\r\n if (toolsClick.onRefresh) {\r\n toolsClick.onRefresh();\r\n } else {\r\n this.store.load({ params });\r\n }\r\n }}\r\n >\r\n <RedoOutlined />\r\n </div>\r\n )}\r\n </div>\r\n );\r\n }\r\n getSelectedRowKeys() {\r\n return this.state.selectedRowKeys;\r\n }\r\n getSelectedRowDatas() {\r\n return this.state.selectedRowDatas;\r\n }\r\n resetSelectedRowKeys() {\r\n this.setState({\r\n selectedRowKeys: [],\r\n selectedRowDatas: [],\r\n });\r\n }\r\n rowSelectionOnSelect(record: any, selected: any) {\r\n const { selectedRowKeys, selectedRowDatas } = this.state;\r\n let { rowKey = \"id\" } = this.props;\r\n let newSelectedRowKeys = [...selectedRowKeys];\r\n let newSelectedRowDatas = [...selectedRowDatas];\r\n if (selected) {\r\n newSelectedRowKeys = [...newSelectedRowKeys, record[rowKey]];\r\n newSelectedRowDatas = [...newSelectedRowDatas, record];\r\n } else {\r\n selectedRowKeys.map((item: any, index: any) => {\r\n if (item === record[rowKey]) {\r\n newSelectedRowKeys.splice(index, 1);\r\n }\r\n });\r\n selectedRowDatas.map((item: any, index: any) => {\r\n if (item[rowKey] === record[rowKey]) {\r\n newSelectedRowDatas.splice(index, 1);\r\n }\r\n });\r\n }\r\n this.setState({\r\n selectedRowKeys: newSelectedRowKeys,\r\n selectedRowDatas: newSelectedRowDatas,\r\n });\r\n }\r\n rowSelectionOnSelectAll(selected: any, selectedRows: any, changeRows: any) {\r\n const { selectedRowKeys, selectedRowDatas } = this.state;\r\n const { rowKey = \"id\" } = this.props;\r\n let newids: any = [];\r\n let newdatas: any = [];\r\n if (changeRows.length > 0) {\r\n let changeIds = changeRows.map((item: any) => item[rowKey]);\r\n if (selected) {\r\n newids = [...selectedRowKeys, ...changeIds];\r\n newdatas = [...selectedRowDatas, ...changeRows];\r\n } else {\r\n selectedRowKeys.map((item: any, index: any) => {\r\n if (changeIds.indexOf(item) == -1) {\r\n newids.push(item);\r\n }\r\n });\r\n selectedRowDatas.map((item: any, index: any) => {\r\n if (changeIds.indexOf(item[rowKey]) == -1) {\r\n newdatas.push(item);\r\n }\r\n });\r\n }\r\n } else {\r\n newids = [...selectedRowKeys];\r\n newdatas = [...selectedRowDatas];\r\n }\r\n this.setState({\r\n selectedRowKeys: [...newids],\r\n selectedRowDatas: [...newdatas],\r\n });\r\n }\r\n render() {\r\n let _this = this,\r\n {\r\n loading,\r\n dataSource,\r\n pagination = {},\r\n searchText,\r\n fieldOption,\r\n searchColor,\r\n tableSize,\r\n } = this.state,\r\n props = utils.omit(\r\n this.props,\r\n [\r\n \"store\",\r\n \"onChange\",\r\n \"columns\",\r\n \"resetColumn\",\r\n \"toolbar\",\r\n \"sortFields\",\r\n \"filterColumn\",\r\n \"sortSearch\",\r\n \"showRowSelection\",\r\n \"pageType\",\r\n ],\r\n {\r\n rowKey: \"id\",\r\n clickChangeColor: false,\r\n }\r\n );\r\n if (props.pagination !== false) {\r\n props.pagination = {\r\n position: [\"bottomRight\"],\r\n showSizeChanger: true,\r\n showQuickJumper: true,\r\n ...pagination,\r\n ...props.pagination,\r\n };\r\n if (props.showTotal == true) {\r\n props.pagination.showTotal = function (total, [from, to]) {\r\n // return \"显示 \" + from + \" - \" + to + \"条,共 \" + total + \" 条\";\r\n return \"共 \" + total + \" 条\";\r\n };\r\n }\r\n }\r\n props.onChange = function (pagination, filters, sorter, extra) {\r\n _this.onChange(_this.state.pagination, filters, sorter, extra);\r\n };\r\n if (props.clickChangeColor) {\r\n const onRowFn = props.onRow;\r\n props.onRow = function (record, index) {\r\n var custom = onRowFn ? onRowFn(record, index) : {};\r\n const onClickFn = custom.onClick;\r\n custom.onClick = (event) => {\r\n _this.setState({\r\n activeIndex: index, //获取点击行的索引\r\n });\r\n utils.callback(onClickFn, _this, [event]);\r\n };\r\n return custom;\r\n };\r\n props.rowClassName = function (record, index) {\r\n return index === _this.state.activeIndex\r\n ? \"nsc-table-clickRowStyle\"\r\n : \"\";\r\n };\r\n }\r\n let newDataSource = [];\r\n if (searchText) {\r\n const data = treeUtils.getSearchMenuDatas(\r\n this,\r\n searchText,\r\n fieldOption,\r\n searchColor\r\n );\r\n newDataSource = data.treeDatas;\r\n props.expandedRowKeys = data.openKeys;\r\n } else {\r\n newDataSource = dataSource;\r\n }\r\n props.store = props.store || {};\r\n props.store.autoLoad = props.store.autoLoad === false ? false : true;\r\n const { dragable } = _this.props;\r\n const dragableProps =\r\n dragable === true\r\n ? {\r\n components: BodyRowComponent,\r\n onRow: (record, index) => ({\r\n index,\r\n record,\r\n moveRow: this.moveRow,\r\n }),\r\n }\r\n : {};\r\n let { resizeColumn } = this.props;\r\n\r\n const resizeProps =\r\n resizeColumn === true ? { components: this.components } : null;\r\n const { tableTool } = config();\r\n let toolFlag = true;\r\n let toolprops =\r\n this.props.toolbar === false || this.props.toolbar?.show === false\r\n ? false\r\n : true;\r\n if (!toolprops) {\r\n toolFlag = toolprops;\r\n } else {\r\n toolFlag = tableTool.show === false ? false : true;\r\n }\r\n if (this.props.showRowSelection) {\r\n const { rowSelection = {} } = this.props;\r\n props = {\r\n ...props,\r\n rowSelection: {\r\n selectedRowKeys: this.state.selectedRowKeys,\r\n onSelect: this.rowSelectionOnSelect.bind(this),\r\n onSelectAll: this.rowSelectionOnSelectAll.bind(this),\r\n columnWidth: 40,\r\n ...rowSelection,\r\n },\r\n };\r\n }\r\n const { tableProps: configTableProps } = config();\r\n const DefaultTable = (\r\n <div className={getLess(styles, \"nsc-table\")}>\r\n {toolFlag && this.renderToolBar()}\r\n <Table\r\n childrenColumnName=\"childNodes\"\r\n sheitem\r\n dataSource={newDataSource}\r\n columns={this.getColumns()}\r\n loading={loading}\r\n className={cls(getLess(styles, \"nsc-table-content\"), props.className)}\r\n locale={{\r\n emptyText: (\r\n <NoData className={getLess(styles, \"nsc-table-nodata\")} />\r\n ),\r\n }}\r\n scroll={{ x: \"max-content\" }}\r\n {...configTableProps}\r\n {...resizeProps}\r\n {...props}\r\n {...dragableProps}\r\n size={tableSize}\r\n pagination={false}\r\n // style={{ height: 600 }}\r\n />\r\n {props.pagination !== false && (\r\n <div className={getLess(styles, \"nsc-table-pagination\")}>\r\n <Pagination\r\n {...props.pagination}\r\n onChange={(page, pageSize) => {\r\n const extra = this.state.extra;\r\n extra.action = \"paginate\";\r\n this.setState(({ pagination = {} }) => {\r\n return {\r\n pagination: { ...pagination, current: page, pageSize },\r\n };\r\n });\r\n this.onChange(\r\n { current: page, pageSize },\r\n this.state.filter,\r\n this.state.sorter,\r\n extra\r\n );\r\n }}\r\n />\r\n </div>\r\n )}\r\n </div>\r\n );\r\n\r\n return dragable === true ? (\r\n <DndProvider backend={HTML5Backend}>{DefaultTable}</DndProvider>\r\n ) : (\r\n DefaultTable\r\n );\r\n }\r\n}\r\n\r\nexport default withZhLocale(NSCTable);\r\n"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","names":["AppstoreOutlined","CheckOutlined","ColumnHeightOutlined","SearchOutlined","SortAscendingOutlined","SortDescendingOutlined","RedoOutlined","isEmptyObj","Store","PageStore","utils","React","DndProvider","BodyRow","DndContextType","IBodyRowProps","treeUtils","BodyRowComponent","HTML5Backend","withZhLocale","Resizable","getLess","getNode","NoData","getStorage","config","cls","styles","ResizeableTitle","props","onResize","width","restProps","_objectWithoutProperties","_excluded","createElement","height","draggableOpts","enableUserSelectHack","NSCTable","Component","constructor","_autoType","_defineProperty","createRef","onBeforeLoad","load","header","cell","index","e","_ref","size","cols","state","nextColumns","_objectSpread","setState","getColumns","ev","data","JSON","parse","_this","eventType","payload","tableSize","dragIndex","hoverIndex","drag","target","dragNode","record","targetNode","moveArray","ids","parentNode","getChildNodeIds","params","id","parentId","attribute","moveRow","store","reload","modal","type","storePrefix","autoType","content","dataSource","columns","loading","pagination","activeIndex","searchText","fieldOption","searchColor","sorts","filterParams","sortType","sorter","sortInfo","defaultSort","checkColumn","defaultCheck","selectedRowKeys","selectedRowDatas","filter","extra","_ref2","listeners","listenersProps","restStore","_excluded2","storeProps","model","component","options","callback","dataChanged","modelData","paging","getPagination","onErrorLoad","err","response","autoLoad","Object","assign","current","componentDidMount","resizeColumn","setData","window","addEventListener","listenMessage","componentWillUnmount","removeEventListener","componentDidUpdate","prevProps","preState","resetColumn","newCols","colss","map","col","temp","onHeaderCell","column","handleResize","push","clearSelectColor","getPaginationByStore","onChange","filters","autoOnChange","autoSort","autoPagination","isMultiple","Array","isArray","handlePagination","p","currentKey","pageSizeKey","pageSize","ascParams","getSortParam","onChangeFn","getStore","getModel","handleSearch","val","filterColumn","checkedValue","length","_message","warning","filterColumns","newCol","includes","dataIndex","initShow","sortState","arguments","undefined","sortSearch","orderItems","field","asc","order","forEach","v","stringify","isBeyond","event","textRange","el","textContent","targetW","getBoundingClientRect","range","document","createRange","setStart","setEnd","childNodes","rangeWidth","setSelectedRowKeys","setSelectedRowDatas","sortFields","defaultShowCols","ellipsis","render","showTitle","text","_this$state$cols","currentCol","find","c","actualWidth","colWidth","colWidthObj","small","middle","default","large","paddingWidth","style","display","ref","removeAttribute","scrollWidth","clientWidth","setAttribute","className","overflow","textOverflow","whiteSpace","indexOf","sortOrder","multiple","item","filterProps","obj","searchKey","Div","title","placeholder","concat","tableSearchRef","filterDropdown","_ref3","setSelectedKeys","selectedKeys","confirm","clearFilters","_Space","_Button","onClick","_this$tableSearchRef$","newFilterParams","key","getValue","sortParam","filterIcon","renderToolBar","colLists","toolbar","tableTool","storeRequestConfig","tools","toolsClick","onToolClick","sizeItem","sortItem","sortContent","Fragment","cursor","color","sizeContent","_Checkbox","Group","bind","label","value","disabled","fontSize","_Popover","placement","trigger","overlayStyle","minWidth","maxWidth","marginRight","onRefresh","getSelectedRowKeys","getSelectedRowDatas","resetSelectedRowKeys","rowSelectionOnSelect","selected","rowKey","newSelectedRowKeys","newSelectedRowDatas","splice","rowSelectionOnSelectAll","selectedRows","changeRows","newids","newdatas","changeIds","_this$props$toolbar","omit","clickChangeColor","position","showSizeChanger","showQuickJumper","showTotal","total","_ref4","from","to","onRowFn","onRow","custom","onClickFn","rowClassName","newDataSource","getSearchMenuDatas","treeDatas","expandedRowKeys","openKeys","dragable","dragableProps","components","resizeProps","toolFlag","toolprops","show","showRowSelection","rowSelection","onSelect","onSelectAll","columnWidth","tableProps","configTableProps","DefaultTable","_Table","_extends","childrenColumnName","sheitem","locale","emptyText","scroll","x","_Pagination","page","action","_ref5","backend","dragUrl"],"sources":["../../../src/components/base/table/index.tsx"],"sourcesContent":["/*\r\n * @Descripttion:\r\n * @version:\r\n * @Author: rxzhu\r\n * @Date: 2021-03-23 08:46:20\r\n * @LastEditors: rxzhu\r\n * @LastEditTime: 2021-03-23 10:30:42\r\n */\r\nimport {\r\n AppstoreOutlined,\r\n CheckOutlined,\r\n ColumnHeightOutlined,\r\n SearchOutlined,\r\n SortAscendingOutlined,\r\n SortDescendingOutlined,\r\n RedoOutlined,\r\n} from \"@ant-design/icons\";\r\nimport { isEmptyObj } from \"@bj-nsc/functions\";\r\nimport Store, { PageStore, StoreProps } from \"@bj-nsc/msn\";\r\nimport { utils } from \"@bj-nsc/msn/lib/utils\";\r\nimport {\r\n Button,\r\n Checkbox,\r\n CheckboxOptionType,\r\n Menu,\r\n message,\r\n Pagination,\r\n Popover,\r\n Space,\r\n Table,\r\n TableProps,\r\n Tooltip,\r\n} from \"antd\";\r\nimport { ColumnType, TablePaginationConfig } from \"antd/lib/table\";\r\nimport * as React from \"react\";\r\nimport { DndProvider } from \"react-dnd\";\r\nimport BodyRow, { DndContextType, IBodyRowProps } from \"../common/BodyRow\";\r\nimport treeUtils from \"../../treeUtils\";\r\nimport \"./index.module.less\";\r\nconst { BodyRowComponent, HTML5Backend } = BodyRow;\r\nimport withZhLocale from \"../common/withZhLocale\";\r\nimport { Resizable } from \"react-resizable\";\r\nimport \"./resize.module.less\";\r\nimport { getLess, getNode, simplifyColumns } from \"../../utils\";\r\nimport NoData from \"../../base/common/NoData\";\r\nimport { getStorage } from \"@bj-nsc/functions\";\r\nimport config from \"../../config\";\r\nimport EllipseCell from \"../common/EllipseCell\";\r\nimport cls from \"classnames\";\r\nimport isEqual from \"lodash/isEqual\";\r\nconst styles = null;\r\ninterface IDragParams {\r\n id: string | number;\r\n ids: Array<string | number>;\r\n parentId: string | number;\r\n}\r\n// interface StoreProps {}\r\n\r\nexport type StoreType = \"PageStore\" | \"TreeStore\" | \"BaseStore\";\r\n\r\ninterface NSCTablePagination extends TablePaginationConfig {\r\n totalKey?: string;\r\n pageSizeKey?: string;\r\n currentKey?: string;\r\n}\r\n\r\ninterface ToolBarProps {\r\n show: boolean;\r\n tools?: Array<string>;\r\n onToolClick?: { onRefresh?: any; onSort?: any };\r\n}\r\ninterface NSCTableProps extends TableProps<any> {\r\n store?: StoreProps;\r\n showTotal?: boolean; // 是否显示总条数信息,默认true\r\n dragable?: boolean; // 是否可拖动, 默认false\r\n filterColumn?: boolean; // 是否支持过滤显示表格列, 默认true\r\n moveRow?: (params: IDragParams) => void; // 拖拽完成后的回调\r\n dragUrl?: string; // 保存拖拽排序的接口\r\n pagination?: false | NSCTablePagination;\r\n autoPagination?: boolean; // 组件是否自动处理分页\r\n autoSort?: boolean; //组件是否自动处理排序\r\n autoOnChange?: boolean; // 组件是否自动onChange, false则不做任何处理全部交给调用方\r\n resizeColumn?: boolean;\r\n sortFields?: Array<string>; //需要排序的字段Index\r\n toolbar?: ToolBarProps | boolean;\r\n autoSize?: boolean;\r\n sortSearch?: boolean; //是否添加排序查询,默认true\r\n showRowSelection?: boolean;\r\n rowKey?: string;\r\n [propsName: string]: any;\r\n}\r\n\r\nexport type INSCTableProps = typeof NSCTable.defaultProps & NSCTableProps;\r\nexport { DndContextType, IBodyRowProps };\r\n\r\nconst ResizeableTitle = (props: any) => {\r\n const { onResize, width, ...restProps } = props;\r\n return (\r\n <Resizable\r\n width={width || 150}\r\n height={0}\r\n onResize={onResize}\r\n draggableOpts={{ enableUserSelectHack: false }}\r\n >\r\n <th {...restProps} />\r\n </Resizable>\r\n );\r\n};\r\nclass NSCTable extends React.Component<INSCTableProps, any> {\r\n static defaultProps = {\r\n dragable: false,\r\n showTotal: true,\r\n filterColumn: true,\r\n dragUrl: \"\",\r\n autoPagination: true,\r\n autoSort: true,\r\n autoOnChange: true,\r\n resizeColumn: true,\r\n toolbar: {\r\n show: true,\r\n onToolClick: {} as any,\r\n tools:[] as any\r\n } as any,\r\n };\r\n\r\n store = {} as StoreProps;\r\n thIconRef = React.createRef<HTMLDivElement>();\r\n tableSearchRef = React.createRef<any>();\r\n\r\n listeners = {\r\n onBeforeLoad: null,\r\n load: null,\r\n };\r\n\r\n components = {\r\n header: {\r\n cell: ResizeableTitle,\r\n },\r\n };\r\n\r\n constructor(props) {\r\n super(props);\r\n let modal = props.type || \"auto\";\r\n let storePrefix = getStorage(\"store-pre-key\");\r\n let autoType = getStorage(\r\n storePrefix ? storePrefix + \"tableSize\" : \"tableSize\"\r\n );\r\n autoType = autoType?.content;\r\n this.state = {\r\n dataSource: [],\r\n columns: [],\r\n loading: false,\r\n pagination: {},\r\n activeIndex: -1,\r\n //搜索文本\r\n searchText: null,\r\n fieldOption: null,\r\n searchColor: null,\r\n cols: [],\r\n sorts: [],\r\n filterParams: {},\r\n tableSize: this.props.size || autoType || \"default\",\r\n sortType: \"single\",\r\n sorter: [], //记录当前排序字段\r\n sortInfo: {},\r\n defaultSort: true,\r\n checkColumn: [],\r\n defaultCheck: true,\r\n selectedRowKeys: [],\r\n selectedRowDatas: [],\r\n filter: [],\r\n extra: {},\r\n };\r\n if (props.store instanceof Store) {\r\n this.store = props.store;\r\n } else {\r\n const { listeners: listenersProps = {}, ...restStore } =\r\n props.store || {};\r\n const storeProps = {\r\n model: \"model\",\r\n component: this,\r\n listeners: {\r\n onBeforeLoad: (store, options) => {\r\n this.setState({ loading: true });\r\n utils.callback(listenersProps.onBeforeLoad, this, [store, options]);\r\n },\r\n dataChanged: (data, modelData, store) => {\r\n let paging = !(this.props.pagination === false);\r\n if (paging && !this.props.dataSource) {\r\n this.setState({\r\n dataSource: modelData,\r\n pagination: store.getPagination(),\r\n loading: false,\r\n activeIndex: -1,\r\n });\r\n } else {\r\n this.setState({ dataSource: modelData, loading: false });\r\n }\r\n\r\n utils.callback(listenersProps.dataChanged, this, [\r\n data,\r\n modelData,\r\n store,\r\n paging,\r\n ]);\r\n },\r\n load: (data, modelData, store) => {\r\n utils.callback(listenersProps.load, this, [data, modelData, store]);\r\n },\r\n onErrorLoad: (err, response) => {\r\n this.setState({ loading: false });\r\n utils.callback(listenersProps.onErrorLoad, this, [err, response]);\r\n },\r\n },\r\n data: restStore.data\r\n ? restStore.data\r\n : props.dataSource\r\n ? props.dataSource\r\n : null,\r\n ...restStore,\r\n autoLoad: restStore.autoLoad === false ? false : true,\r\n };\r\n this.store = new PageStore(\r\n Object.assign({}, storeProps, {\r\n pagination: { current: 1, ...this.props.pagination },\r\n })\r\n );\r\n }\r\n }\r\n\r\n handleResize =\r\n (index: any) =>\r\n (e: any, { size }: any) => {\r\n const { cols } = this.state;\r\n const nextColumns = [...cols];\r\n nextColumns[index] = {\r\n ...nextColumns[index],\r\n width: size.width,\r\n };\r\n this.setState(\r\n {\r\n cols: nextColumns,\r\n },\r\n () => {\r\n // 在状态更新后重新获取列配置\r\n this.getColumns();\r\n }\r\n );\r\n };\r\n\r\n componentDidMount() {\r\n const { resizeColumn } = this.props;\r\n if (!resizeColumn) {\r\n this.setState({ columns: [...this.props.columns] });\r\n } else {\r\n this.setState({ cols: [...this.props.columns] });\r\n }\r\n const store = this.props.store;\r\n if (store && store.data) {\r\n this.store.setData(store.data);\r\n }\r\n window.addEventListener(\"message\", this.listenMessage);\r\n }\r\n componentWillUnmount() {\r\n window.removeEventListener(\"message\", this.listenMessage);\r\n }\r\n listenMessage = (ev) => {\r\n const data = typeof ev.data === \"string\" ? JSON.parse(ev.data) : ev.data;\r\n let _this = this;\r\n if (data.eventType == \"changeTableSize\") {\r\n const { payload } = data;\r\n if (\r\n payload.size == \"default\" ||\r\n payload.size == \"small\" ||\r\n payload.size == \"middle\"\r\n ) {\r\n _this.setState({ tableSize: payload.size });\r\n }\r\n }\r\n };\r\n\r\n componentDidUpdate(prevProps, preState) {\r\n const { resizeColumn } = this.props;\r\n if (!resizeColumn) {\r\n if (this.props.columns !== prevProps.columns) {\r\n this.setState({ columns: this.props.columns });\r\n }\r\n } else {\r\n if (preState.cols !== this.state.cols) {\r\n this.resetColumn();\r\n }\r\n if (this.props.columns !== prevProps.columns) {\r\n this.setState({\r\n cols: this.props.columns,\r\n columns: this.props.columns,\r\n });\r\n }\r\n if (prevProps.size !== this.props.size) {\r\n this.setState({ tableSize: this.props.size });\r\n }\r\n }\r\n }\r\n resetColumn() {\r\n const { cols } = this.state;\r\n const newCols: any = [];\r\n let colss = cols || [];\r\n colss.map((col: any, index: any) => {\r\n let temp = {\r\n ...col,\r\n onHeaderCell: (column: { width: any }) => ({\r\n width: column.width,\r\n onResize: this.handleResize(index),\r\n }),\r\n };\r\n newCols.push(temp);\r\n });\r\n this.setState({\r\n columns: newCols,\r\n });\r\n }\r\n\r\n /**\r\n * 清除选中颜色\r\n */\r\n clearSelectColor() {\r\n this.setState({ activeIndex: -1 });\r\n return this;\r\n }\r\n\r\n getPaginationByStore() {\r\n return this.store.getPagination();\r\n }\r\n\r\n onChange(pagination, filters, sorter, extra) {\r\n const {\r\n autoOnChange = true,\r\n autoSort,\r\n autoPagination,\r\n onChange,\r\n store,\r\n } = this.props;\r\n const { filterParams } = this.state;\r\n const isMultiple = Array.isArray(sorter);\r\n if (autoOnChange === false || !store) {\r\n onChange && onChange(pagination, filters, sorter, extra);\r\n return;\r\n }\r\n const handlePagination = () => {\r\n let params = {} as {\r\n size?: string;\r\n pageSize?: string;\r\n ascs?: string;\r\n descs?: string;\r\n [propName: string]: string;\r\n };\r\n const paging = this.getPaginationByStore() || {};\r\n if (!isEmptyObj(pagination)) {\r\n const p = {\r\n [paging.currentKey || \"current\"]: pagination.current,\r\n [paging.pageSizeKey || \"size\"]: pagination.pageSize,\r\n };\r\n Object.assign(params, p);\r\n }\r\n let ascParams = this.getSortParam(sorter, true);\r\n if (isMultiple) {\r\n this.setState({ sorter });\r\n } else if (!isMultiple && !isEmptyObj(sorter)) {\r\n sorter.column &&\r\n this.setState({ sorter: [sorter], defaultSort: false });\r\n } else {\r\n this.setState({ sorter: [] });\r\n }\r\n this.setState({\r\n filters,\r\n extra,\r\n });\r\n params = { ...filterParams, ...params, ...ascParams };\r\n autoSort && this.store.reload({ params });\r\n };\r\n\r\n const onChangeFn = this.props.onChange;\r\n\r\n autoPagination && handlePagination();\r\n // 用户传了onChange保留用户自主处理表格变化的权力\r\n if (onChangeFn) {\r\n utils.callback(onChangeFn, this, [pagination, filters, sorter, extra]);\r\n }\r\n }\r\n\r\n getStore() {\r\n return this.store;\r\n }\r\n\r\n /**\r\n * 获取数据模型对象\r\n */\r\n getModel() {\r\n return this.store.getModel();\r\n }\r\n\r\n /**\r\n * 菜单搜索过滤显示\r\n * @param {String} val\r\n */\r\n handleSearch(val, fieldOption, searchColor) {\r\n this.setState({\r\n searchText: val,\r\n fieldOption: fieldOption,\r\n searchColor: searchColor,\r\n });\r\n }\r\n\r\n /**\r\n * 模块列表移动排序\r\n */\r\n moveRow = (dragIndex, hoverIndex, drag, target) => {\r\n const _this = this;\r\n let dragNode = drag.record;\r\n let targetNode = target.record;\r\n dragNode.moveArray(dragNode, targetNode);\r\n let ids = dragNode.parentNode.getChildNodeIds();\r\n let params = {\r\n id: dragNode.id,\r\n parentId: dragNode.attribute.parentId,\r\n ids: ids,\r\n };\r\n\r\n if (this.props.moveRow) {\r\n this.props.moveRow(params);\r\n } else {\r\n this.store.reload();\r\n }\r\n };\r\n\r\n filterColumn(checkedValue) {\r\n if (checkedValue.length == 0) {\r\n message.warning(\"至少显示一列!\");\r\n return;\r\n }\r\n const filterColumns = this.props.columns.map((col: ColumnType<{}>) => {\r\n const newCol = { ...col } as ColumnType<{}> & { initShow: boolean };\r\n if (checkedValue.includes(col.dataIndex)) {\r\n newCol.initShow = true;\r\n } else {\r\n newCol.initShow = false;\r\n }\r\n return newCol;\r\n });\r\n const { resizeColumn } = this.props;\r\n if (!resizeColumn) {\r\n this.setState({\r\n columns: filterColumns,\r\n checkColumn: checkedValue,\r\n defaultCheck: false,\r\n });\r\n } else {\r\n this.setState({\r\n cols: filterColumns,\r\n checkColumn: checkedValue,\r\n defaultCheck: false,\r\n });\r\n }\r\n }\r\n getSortParam(sorter, sortState = false) {\r\n const isMultiple = Array.isArray(sorter);\r\n const { sortSearch = true } = this.props;\r\n if (!sortSearch) {\r\n return {};\r\n }\r\n let sortInfo = {};\r\n let orderItems = [];\r\n if (!isEmptyObj(sorter) && !isMultiple && sorter.column) {\r\n orderItems = [\r\n {\r\n column: sorter.column.field || sorter.column.dataIndex,\r\n asc: sorter.order == \"ascend\",\r\n },\r\n ];\r\n if (sorter.column) sortInfo[sorter.column.dataIndex] = sorter.order;\r\n } else if (isMultiple) {\r\n sorter.forEach((v) => {\r\n sortInfo[v.column.dataIndex] = v.order;\r\n let field = v.column.field || v.column.dataIndex;\r\n orderItems.push({\r\n column: field,\r\n asc: v.order == \"ascend\",\r\n });\r\n });\r\n }\r\n if (sortState) {\r\n this.setState({\r\n sortInfo: sortInfo,\r\n });\r\n }\r\n return { orderItems: JSON.stringify(orderItems) };\r\n }\r\n isBeyond(e) {\r\n const ev = window.event || e; // 浏览器兼容,最好写一下\r\n const textRange = (el) => {\r\n const textContent = el;\r\n const targetW = textContent.getBoundingClientRect().width;\r\n const range = document.createRange();\r\n range.setStart(textContent, 0);\r\n range.setEnd(textContent, textContent.childNodes.length);\r\n const rangeWidth = range.getBoundingClientRect().width;\r\n return rangeWidth > targetW;\r\n };\r\n return !textRange(ev.target); // target可以保证当前划过的dom节点一直保持是:el-tooltip__trigger\r\n }\r\n setSelectedRowKeys(data: Array<String | Number>) {\r\n this.setState({\r\n selectedRowKeys: data,\r\n });\r\n }\r\n setSelectedRowDatas(data: Array<Object>) {\r\n this.setState({\r\n selectedRowDatas: data,\r\n });\r\n }\r\n getColumns() {\r\n const { columns, sortType, sortInfo } = this.state;\r\n const { sortFields = [], size = \"large\" } = this.props;\r\n const defaultShowCols = columns.filter((cols) => cols.initShow !== false);\r\n const cols = defaultShowCols.map((col, index) => {\r\n // 替换 getColumns 方法中原来的 ellipsis 处理部分\r\n if (col.ellipsis && !col.render) {\r\n col.ellipsis = {\r\n showTitle: false,\r\n };\r\n col.render = (text, record, index) => {\r\n // 获取当前列的实时宽度\r\n const currentCol = this.state.cols?.find((c) => {\r\n // 处理 dataIndex 可能是字符串或数组的情况\r\n if (Array.isArray(c.dataIndex) && Array.isArray(col.dataIndex)) {\r\n return (\r\n JSON.stringify(c.dataIndex) === JSON.stringify(col.dataIndex)\r\n );\r\n }\r\n return c.dataIndex === col.dataIndex;\r\n });\r\n\r\n const actualWidth = currentCol?.width || col.width;\r\n let colWidth: any = \"100%\";\r\n\r\n if (actualWidth) {\r\n const size = this.state.tableSize || this.props.size || \"default\";\r\n const colWidthObj = {\r\n small: 16,\r\n middle: 16,\r\n default: 16,\r\n large: 32,\r\n };\r\n const paddingWidth = colWidthObj[size] || 16;\r\n\r\n if (actualWidth > paddingWidth) {\r\n colWidth = actualWidth - paddingWidth;\r\n } else {\r\n colWidth = actualWidth;\r\n }\r\n }\r\n\r\n return (\r\n <div style={{ display: \"inline-table\", width: \"100%\" }}>\r\n <div\r\n ref={(el) => {\r\n if (el) {\r\n // 清除之前的title\r\n el.removeAttribute(\"title\");\r\n\r\n // 检查文本是否溢出\r\n if (el.scrollWidth > el.clientWidth) {\r\n el.setAttribute(\"title\", text);\r\n }\r\n }\r\n }}\r\n className={getLess(styles, \"nsc-table-text\")}\r\n style={{\r\n width: colWidth,\r\n overflow: \"hidden\",\r\n textOverflow: \"ellipsis\",\r\n whiteSpace: \"nowrap\",\r\n }}\r\n >\r\n {text}\r\n </div>\r\n </div>\r\n );\r\n };\r\n }\r\n if (sortFields.indexOf(col.dataIndex) > -1) {\r\n if (sortType == \"single\") {\r\n col.sorter = true;\r\n col.sortOrder = sortInfo[col.dataIndex]\r\n ? sortInfo[col.dataIndex]\r\n : null;\r\n } else if (sortType == \"multiple\") {\r\n col.sorter = { multiple: index };\r\n col.sortOrder = sortInfo[col.dataIndex]\r\n ? sortInfo[col.dataIndex]\r\n : null;\r\n }\r\n }\r\n return col;\r\n });\r\n cols.map((item, index) => {\r\n if (!isEmptyObj(item.filterProps)) {\r\n let obj = { ...item };\r\n const { type, props, searchKey } = item.filterProps;\r\n let Div = null;\r\n let text = item.title;\r\n Div = getNode(type, {\r\n placeholder: `搜索${text}`,\r\n ...props,\r\n ref: this.tableSearchRef,\r\n });\r\n obj = {\r\n filterDropdown: ({\r\n setSelectedKeys,\r\n selectedKeys,\r\n confirm,\r\n clearFilters,\r\n }) => {\r\n return (\r\n <div className={getLess(styles, \"nsc-table-search\")}>\r\n <div className={getLess(styles, \"nsc-table-search-space\")}>\r\n {Div}\r\n </div>\r\n <Space>\r\n <Button\r\n type=\"primary\"\r\n onClick={() => {\r\n confirm();\r\n const { filterParams } = this.state;\r\n let newFilterParams = { ...filterParams };\r\n let key = item.field || item.dataIndex;\r\n newFilterParams[key] =\r\n this.tableSearchRef.current?.getValue();\r\n this.setState({\r\n filterParams: { ...newFilterParams },\r\n });\r\n const sortParam = this.getSortParam(this.state.sorter);\r\n this.store.load({\r\n params: { ...newFilterParams, ...sortParam },\r\n });\r\n }}\r\n size=\"small\"\r\n className={getLess(styles, \"nsc-table-search-button\")}\r\n >\r\n 查询\r\n </Button>\r\n </Space>\r\n </div>\r\n );\r\n },\r\n filterIcon: () => {\r\n return <SearchOutlined />;\r\n },\r\n ...obj,\r\n };\r\n cols[index] = obj;\r\n }\r\n });\r\n return cols;\r\n }\r\n renderToolBar() {\r\n let { tableSize, columns, sortType } = this.state;\r\n let { filterColumn, columns: colLists, toolbar } = this.props;\r\n const { tableTool, storeRequestConfig = {} } = config();\r\n let tools = [\"refresh\", \"size\", \"sort\", \"column\"];\r\n let toolsClick = {} as any;\r\n if (toolbar == true) {\r\n tools = [\"refresh\", \"size\", \"sort\", \"column\"];\r\n } else {\r\n tools = toolbar.tools\r\n ? toolbar.tools\r\n : tableTool.tools\r\n ? tableTool.tools\r\n : tools;\r\n toolsClick = toolbar.onToolClick ? toolbar.onToolClick : {};\r\n }\r\n const sizeItem = [\r\n { title: \"宽松\", key: \"default\" },\r\n { title: \"中等\", key: \"middle\" },\r\n { title: \"紧凑\", key: \"small\" },\r\n ];\r\n const sortItem = [\r\n { title: \"单字段排序\", key: \"single\" },\r\n { title: \"多字段排序\", key: \"multiple\" },\r\n ];\r\n const sortContent = (\r\n <>\r\n <div\r\n className={getLess(styles, \"nsc-table-cotent-title\")}\r\n style={{\r\n cursor: this.state.defaultSort ? \"not-allowed\" : \"pointer\",\r\n color: this.state.defaultSort && \"rgba(0,0,0,.45)\",\r\n }}\r\n onClick={() => {\r\n if (this.state.defaultSort) {\r\n return;\r\n }\r\n this.setState({ sorter: [], sortInfo: {}, defaultSort: true });\r\n const params = { ...this.state.filterParams };\r\n this.store.reload({ params });\r\n }}\r\n >\r\n 恢复默认排序\r\n </div>\r\n {sortItem.map((item, index) => {\r\n return (\r\n <div\r\n key={item.key}\r\n onClick={() => {\r\n this.setState({\r\n sorter: [],\r\n sortInfo: {},\r\n sortType: item.key,\r\n defaultSort: false,\r\n });\r\n const params = { ...this.state.filterParams };\r\n this.store.reload({ params });\r\n }}\r\n >\r\n {sortType == item.key ? (\r\n <a>\r\n <div className={getLess(styles, \"nsc-table-content-tiem\")}>\r\n <div style={{ width: 20 }}>\r\n {sortType == item.key && <CheckOutlined />}\r\n </div>\r\n <div> {item.title}</div>\r\n </div>\r\n </a>\r\n ) : (\r\n <div className={getLess(styles, \"nsc-table-content-tiem\")}>\r\n <div style={{ width: 20 }}></div>\r\n <div> {item.title}</div>\r\n </div>\r\n )}\r\n </div>\r\n );\r\n })}\r\n {this.state.sorter.length > 0 && (\r\n <>\r\n <div\r\n className={getLess(styles, \"nsc-table-cotent-title\")}\r\n style={{ color: \"rgba(0,0,0,.45)\" }}\r\n >\r\n 当前排序\r\n </div>\r\n {this.state.sorter.map((item, index) => {\r\n return (\r\n <div\r\n className={getLess(styles, \"nsc-table-content-tiem\")}\r\n key={index}\r\n >\r\n <div style={{ width: 20 }}>\r\n {item.order == \"ascend\" ? (\r\n <SortAscendingOutlined />\r\n ) : (\r\n <SortDescendingOutlined />\r\n )}\r\n </div>\r\n <div> {item.column.title}</div>\r\n </div>\r\n );\r\n })}\r\n </>\r\n )}\r\n </>\r\n );\r\n const sizeContent = (\r\n <>\r\n <div className={getLess(styles, \"nsc-table-cotent-title\")}>\r\n 表格密度\r\n </div>\r\n {sizeItem.map((item, index) => {\r\n return (\r\n <div\r\n key={item.key}\r\n onClick={() => {\r\n this.setState({\r\n tableSize: item.key,\r\n });\r\n }}\r\n >\r\n {tableSize == item.key ? (\r\n <a>\r\n <div className={getLess(styles, \"nsc-table-content-tiem\")}>\r\n <div style={{ width: 20 }}>\r\n {tableSize == item.key && <CheckOutlined />}\r\n </div>\r\n <div> {item.title}</div>\r\n </div>\r\n </a>\r\n ) : (\r\n <div className={getLess(styles, \"nsc-table-content-tiem\")}>\r\n <div style={{ width: 20 }}></div>\r\n <div> {item.title}</div>\r\n </div>\r\n )}\r\n </div>\r\n );\r\n })}\r\n </>\r\n );\r\n\r\n const defaultShowCols = columns.filter((cols) => cols.initShow !== false);\r\n\r\n const content = (\r\n <Checkbox.Group\r\n onChange={this.filterColumn.bind(this)}\r\n options={colLists.map(\r\n (col: ColumnType<{}> & { filterColumn: boolean; dataIndex: any }) => {\r\n if (!col.dataIndex) {\r\n col.dataIndex = col.title;\r\n }\r\n return {\r\n label: col.title,\r\n value: col.dataIndex,\r\n disabled: col.filterColumn === false,\r\n } as CheckboxOptionType;\r\n }\r\n )}\r\n // defaultValue={defaultShowCols.map((col) => col.dataIndex)}\r\n value={\r\n this.state.defaultCheck\r\n ? defaultShowCols.map((col) => col.dataIndex)\r\n : this.state.checkColumn\r\n }\r\n ></Checkbox.Group>\r\n );\r\n return (\r\n <div className={getLess(styles, \"nsc-table-tool-bar\")}>\r\n {tools.indexOf(\"column\") > -1 && (\r\n <div style={{ fontSize: 14 }}>\r\n <Popover\r\n title=\"选择显示的列\"\r\n content={content}\r\n placement=\"bottomRight\"\r\n trigger=\"click\"\r\n overlayStyle={{ minWidth: 410, maxWidth: 450 }}\r\n >\r\n <AppstoreOutlined\r\n className={getLess(styles, \"nsc-table-th-app-store-icon\")}\r\n />\r\n </Popover>\r\n </div>\r\n )}\r\n {tools.indexOf(\"sort\") > -1 && (\r\n <div style={{ marginRight: 8, fontSize: 14 }}>\r\n <Popover placement=\"bottom\" content={sortContent} trigger=\"click\">\r\n <SortAscendingOutlined />\r\n </Popover>\r\n </div>\r\n )}\r\n {tools.indexOf(\"size\") > -1 && (\r\n <div style={{ marginRight: 8, fontSize: 14 }}>\r\n <Popover placement=\"bottom\" content={sizeContent} trigger=\"click\">\r\n <ColumnHeightOutlined />\r\n </Popover>\r\n </div>\r\n )}\r\n {tools.indexOf(\"refresh\") > -1 && (\r\n <div\r\n style={{ marginRight: 8, fontSize: 14, cursor: \"pointer\" }}\r\n onClick={() => {\r\n const params = { ...this.state.filterParams };\r\n if (toolsClick.onRefresh) {\r\n toolsClick.onRefresh();\r\n } else {\r\n this.store.load({ params });\r\n }\r\n }}\r\n >\r\n <RedoOutlined />\r\n </div>\r\n )}\r\n </div>\r\n );\r\n }\r\n getSelectedRowKeys() {\r\n return this.state.selectedRowKeys;\r\n }\r\n getSelectedRowDatas() {\r\n return this.state.selectedRowDatas;\r\n }\r\n resetSelectedRowKeys() {\r\n this.setState({\r\n selectedRowKeys: [],\r\n selectedRowDatas: [],\r\n });\r\n }\r\n rowSelectionOnSelect(record: any, selected: any) {\r\n const { selectedRowKeys, selectedRowDatas } = this.state;\r\n let { rowKey = \"id\" } = this.props;\r\n let newSelectedRowKeys = [...selectedRowKeys];\r\n let newSelectedRowDatas = [...selectedRowDatas];\r\n if (selected) {\r\n newSelectedRowKeys = [...newSelectedRowKeys, record[rowKey]];\r\n newSelectedRowDatas = [...newSelectedRowDatas, record];\r\n } else {\r\n selectedRowKeys.map((item: any, index: any) => {\r\n if (item === record[rowKey]) {\r\n newSelectedRowKeys.splice(index, 1);\r\n }\r\n });\r\n selectedRowDatas.map((item: any, index: any) => {\r\n if (item[rowKey] === record[rowKey]) {\r\n newSelectedRowDatas.splice(index, 1);\r\n }\r\n });\r\n }\r\n this.setState({\r\n selectedRowKeys: newSelectedRowKeys,\r\n selectedRowDatas: newSelectedRowDatas,\r\n });\r\n }\r\n rowSelectionOnSelectAll(selected: any, selectedRows: any, changeRows: any) {\r\n const { selectedRowKeys, selectedRowDatas } = this.state;\r\n const { rowKey = \"id\" } = this.props;\r\n let newids: any = [];\r\n let newdatas: any = [];\r\n if (changeRows.length > 0) {\r\n let changeIds = changeRows.map((item: any) => item[rowKey]);\r\n if (selected) {\r\n newids = [...selectedRowKeys, ...changeIds];\r\n newdatas = [...selectedRowDatas, ...changeRows];\r\n } else {\r\n selectedRowKeys.map((item: any, index: any) => {\r\n if (changeIds.indexOf(item) == -1) {\r\n newids.push(item);\r\n }\r\n });\r\n selectedRowDatas.map((item: any, index: any) => {\r\n if (changeIds.indexOf(item[rowKey]) == -1) {\r\n newdatas.push(item);\r\n }\r\n });\r\n }\r\n } else {\r\n newids = [...selectedRowKeys];\r\n newdatas = [...selectedRowDatas];\r\n }\r\n this.setState({\r\n selectedRowKeys: [...newids],\r\n selectedRowDatas: [...newdatas],\r\n });\r\n }\r\n render() {\r\n let _this = this,\r\n {\r\n loading,\r\n dataSource,\r\n pagination = {},\r\n searchText,\r\n fieldOption,\r\n searchColor,\r\n tableSize,\r\n } = this.state,\r\n props = utils.omit(\r\n this.props,\r\n [\r\n \"store\",\r\n \"onChange\",\r\n \"columns\",\r\n \"resetColumn\",\r\n \"toolbar\",\r\n \"sortFields\",\r\n \"filterColumn\",\r\n \"sortSearch\",\r\n \"showRowSelection\",\r\n \"pageType\",\r\n ],\r\n {\r\n rowKey: \"id\",\r\n clickChangeColor: false,\r\n }\r\n );\r\n if (props.pagination !== false) {\r\n props.pagination = {\r\n position: [\"bottomRight\"],\r\n showSizeChanger: true,\r\n showQuickJumper: true,\r\n ...pagination,\r\n ...props.pagination,\r\n };\r\n if (props.showTotal == true) {\r\n props.pagination.showTotal = function (total, [from, to]) {\r\n // return \"显示 \" + from + \" - \" + to + \"条,共 \" + total + \" 条\";\r\n return \"共 \" + total + \" 条\";\r\n };\r\n }\r\n }\r\n props.onChange = function (pagination, filters, sorter, extra) {\r\n _this.onChange(_this.state.pagination, filters, sorter, extra);\r\n };\r\n if (props.clickChangeColor) {\r\n const onRowFn = props.onRow;\r\n props.onRow = function (record, index) {\r\n var custom = onRowFn ? onRowFn(record, index) : {};\r\n const onClickFn = custom.onClick;\r\n custom.onClick = (event) => {\r\n _this.setState({\r\n activeIndex: index, //获取点击行的索引\r\n });\r\n utils.callback(onClickFn, _this, [event]);\r\n };\r\n return custom;\r\n };\r\n props.rowClassName = function (record, index) {\r\n return index === _this.state.activeIndex\r\n ? \"nsc-table-clickRowStyle\"\r\n : \"\";\r\n };\r\n }\r\n let newDataSource = [];\r\n if (searchText) {\r\n const data = treeUtils.getSearchMenuDatas(\r\n this,\r\n searchText,\r\n fieldOption,\r\n searchColor\r\n );\r\n newDataSource = data.treeDatas;\r\n props.expandedRowKeys = data.openKeys;\r\n } else {\r\n newDataSource = dataSource;\r\n }\r\n props.store = props.store || {};\r\n props.store.autoLoad = props.store.autoLoad === false ? false : true;\r\n const { dragable } = _this.props;\r\n const dragableProps =\r\n dragable === true\r\n ? {\r\n components: BodyRowComponent,\r\n onRow: (record, index) => ({\r\n index,\r\n record,\r\n moveRow: this.moveRow,\r\n }),\r\n }\r\n : {};\r\n let { resizeColumn } = this.props;\r\n\r\n const resizeProps =\r\n resizeColumn === true ? { components: this.components } : null;\r\n const { tableTool } = config();\r\n let toolFlag = true;\r\n let toolprops =\r\n this.props.toolbar === false || this.props.toolbar?.show === false\r\n ? false\r\n : true;\r\n if (!toolprops) {\r\n toolFlag = toolprops;\r\n } else {\r\n toolFlag = tableTool.show === false ? false : true;\r\n }\r\n if (this.props.showRowSelection) {\r\n const { rowSelection = {} } = this.props;\r\n props = {\r\n ...props,\r\n rowSelection: {\r\n selectedRowKeys: this.state.selectedRowKeys,\r\n onSelect: this.rowSelectionOnSelect.bind(this),\r\n onSelectAll: this.rowSelectionOnSelectAll.bind(this),\r\n columnWidth: 40,\r\n ...rowSelection,\r\n },\r\n };\r\n }\r\n const { tableProps: configTableProps } = config();\r\n const DefaultTable = (\r\n <div className={getLess(styles, \"nsc-table\")}>\r\n {toolFlag && this.renderToolBar()}\r\n <Table\r\n childrenColumnName=\"childNodes\"\r\n sheitem\r\n dataSource={newDataSource}\r\n columns={this.getColumns()}\r\n loading={loading}\r\n className={cls(getLess(styles, \"nsc-table-content\"), props.className)}\r\n locale={{\r\n emptyText: (\r\n <NoData className={getLess(styles, \"nsc-table-nodata\")} />\r\n ),\r\n }}\r\n scroll={{ x: \"max-content\" }}\r\n {...configTableProps}\r\n {...resizeProps}\r\n {...props}\r\n {...dragableProps}\r\n size={tableSize}\r\n pagination={false}\r\n // style={{ height: 600 }}\r\n />\r\n {props.pagination !== false && (\r\n <div className={getLess(styles, \"nsc-table-pagination\")}>\r\n <Pagination\r\n {...props.pagination}\r\n onChange={(page, pageSize) => {\r\n const extra = this.state.extra;\r\n extra.action = \"paginate\";\r\n this.setState(({ pagination = {} }) => {\r\n return {\r\n pagination: { ...pagination, current: page, pageSize },\r\n };\r\n });\r\n this.onChange(\r\n { current: page, pageSize },\r\n this.state.filter,\r\n this.state.sorter,\r\n extra\r\n );\r\n }}\r\n />\r\n </div>\r\n )}\r\n </div>\r\n );\r\n\r\n return dragable === true ? (\r\n <DndProvider backend={HTML5Backend}>{DefaultTable}</DndProvider>\r\n ) : (\r\n DefaultTable\r\n );\r\n }\r\n}\r\n\r\nexport default withZhLocale(NSCTable);\r\n"],"mappings":"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"}
@@ -3,10 +3,10 @@ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t =
3
3
  function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
4
4
  function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : String(i); }
5
5
  function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
6
- import React from 'react';
7
- import Button from '../../base/button';
8
- import nscfile from 'nsc-file';
9
- import lodash from 'lodash';
6
+ import React from "react";
7
+ import Button from "../../base/button";
8
+ import nscfile from "nsc-file";
9
+ import lodash from "lodash";
10
10
  export const convertColumns = (columns, _ref) => {
11
11
  let {
12
12
  searchForms = [],
@@ -23,17 +23,17 @@ export const convertColumns = (columns, _ref) => {
23
23
  });
24
24
  } else {
25
25
  // Handle search form conversion
26
- if (temp.search === true || typeof temp.search === 'object' && temp.search.show === true) {
26
+ if (temp.search === true || typeof temp.search === "object" && temp.search.show === true) {
27
27
  let props = _objectSpread({}, temp.props || {});
28
- const searchProps = typeof temp.search === 'object' ? _objectSpread({}, temp.search) : {};
28
+ const searchProps = typeof temp.search === "object" ? _objectSpread({}, temp.search) : {};
29
29
  delete props.onChange;
30
30
  searchForms.push({
31
31
  name: temp.field || temp.dataIndex,
32
- label: (typeof temp.search === 'object' ? temp.search.label : undefined) || temp.title,
32
+ label: (typeof temp.search === "object" ? temp.search.label : undefined) || temp.title,
33
33
  type: temp.type,
34
- props: _objectSpread(_objectSpread({}, props), lodash.omit(searchProps, ['label', 'labelCol', 'show', 'wrapperCol'])),
35
- labelCol: typeof temp.search === 'object' ? temp.search.labelCol : undefined,
36
- wrapperCol: typeof temp.search === 'object' ? temp.search.wrapperCol : undefined,
34
+ props: _objectSpread(_objectSpread({}, props), lodash.omit(searchProps, ["label", "labelCol", "show", "wrapperCol"])),
35
+ labelCol: typeof temp.search === "object" ? temp.search.labelCol : undefined,
36
+ wrapperCol: typeof temp.search === "object" ? temp.search.wrapperCol : undefined,
37
37
  rules: temp.searchRules || []
38
38
  });
39
39
  }
@@ -47,6 +47,7 @@ export const convertColumns = (columns, _ref) => {
47
47
  span: temp.span,
48
48
  dictName: temp.dictName,
49
49
  required: temp.required,
50
+ hide: temp.editorShow === false ? true : false,
50
51
  props: _objectSpread({}, temp.props)
51
52
  });
52
53
  }
@@ -104,7 +105,7 @@ export const getNewColumns = (columns, props) => {
104
105
  }
105
106
  delete temp.props;
106
107
  delete temp.props;
107
- if (temp.render && typeof temp.render == 'string') {
108
+ if (temp.render && typeof temp.render == "string") {
108
109
  let renderStr = temp.render;
109
110
  temp = _objectSpread(_objectSpread({}, temp), {}, {
110
111
  render: (_text, _record, _index) => {
@@ -114,7 +115,7 @@ export const getNewColumns = (columns, props) => {
114
115
  index: _index,
115
116
  funcs: props.funcs
116
117
  };
117
- const func = new Function('eventOption,Utils', renderStr);
118
+ const func = new Function("eventOption,Utils", renderStr);
118
119
  const res = func(eventOption, props.Utils);
119
120
  return res;
120
121
  }
@@ -178,4 +179,4 @@ export const getNewColumns = (columns, props) => {
178
179
 
179
180
  // const newData = data.map(item=>)
180
181
  };
181
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJSZWFjdCIsIkJ1dHRvbiIsIm5zY2ZpbGUiLCJsb2Rhc2giLCJjb252ZXJ0Q29sdW1ucyIsImNvbHVtbnMiLCJfcmVmIiwic2VhcmNoRm9ybXMiLCJlZGl0b3JGb3JtcyIsImZvckVhY2giLCJpdGVtIiwidGVtcCIsIl9vYmplY3RTcHJlYWQiLCJ3aWR0aCIsImNoaWxkcmVuIiwibGVuZ3RoIiwic2VhcmNoIiwic2hvdyIsInByb3BzIiwic2VhcmNoUHJvcHMiLCJvbkNoYW5nZSIsInB1c2giLCJuYW1lIiwiZmllbGQiLCJkYXRhSW5kZXgiLCJsYWJlbCIsInVuZGVmaW5lZCIsInRpdGxlIiwidHlwZSIsIm9taXQiLCJsYWJlbENvbCIsIndyYXBwZXJDb2wiLCJydWxlcyIsInNlYXJjaFJ1bGVzIiwiZWRpdG9yIiwic3BhbiIsImRpY3ROYW1lIiwicmVxdWlyZWQiLCJnZXRUZXh0IiwidGV4dCIsIl9wcm9wcyRkYXRhIiwibmV3VGV4dCIsImRhdGEiLCJpIiwidmFsdWUiLCJnZXROZXdDb2x1bW5zIiwiY2xvbmVEZWVwIiwiY29udmVyRGF0YSIsIm1hcCIsIm9iaiIsIl90ZW1wUHJvcCRkYXRhIiwiX3RlbXAiLCJfdGVtcDIiLCJmaWx0ZXIiLCJjaGlsZCIsImNvbHVtblNob3ciLCJjb2x1bW5TZWFyY2giLCJmaWx0ZXJQcm9wcyIsInRlbXBQcm9wIiwiZWxsaXBzaXMiLCJzaG93VGl0bGUiLCJyZW5kZXIiLCJyZW5kZXJTdHIiLCJfdGV4dCIsIl9yZWNvcmQiLCJfaW5kZXgiLCJldmVudE9wdGlvbiIsInJlY29yZCIsImluZGV4IiwiZnVuY3MiLCJmdW5jIiwiRnVuY3Rpb24iLCJyZXMiLCJVdGlscyIsIkFycmF5IiwiaXNBcnJheSIsImZpbGVzIiwiX2ZpbGVzJCIsImNyZWF0ZUVsZW1lbnQiLCJvbkNsaWNrIiwiZG93bmxvYWQiLCJmaWxlSWQiLCJmaWxlTmFtZSIsImZpbGVJZHMiLCJkb3dubG9hZFppcCIsImpvaW4iLCJfZmlsZXMkMiIsImNsYXNzTmFtZSIsImNvbHVtbiIsImZpbHRlcmVkQ29sdW1ucyJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb21wb25lbnRzL3BhZ2UvQmFzZVBhZ2UvdXRpbHMudHN4Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBSZWFjdCBmcm9tICdyZWFjdCc7XHJcbmltcG9ydCBCdXR0b24gZnJvbSAnLi4vLi4vYmFzZS9idXR0b24nO1xyXG5pbXBvcnQgbnNjZmlsZSBmcm9tICduc2MtZmlsZSdcclxuaW1wb3J0IGxvZGFzaCBmcm9tICdsb2Rhc2gnXHJcbmV4cG9ydCBjb25zdCBjb252ZXJ0Q29sdW1ucyA9IChjb2x1bW5zOiBhbnksIHsgc2VhcmNoRm9ybXMgPSBbXSwgZWRpdG9yRm9ybXMgPSBbXSB9OiBhbnkpID0+IHtcclxuICBjb2x1bW5zLmZvckVhY2goKGl0ZW06IGFueSkgPT4ge1xyXG4gICAgbGV0IHRlbXAgPSB7IHdpZHRoOiAxMDAsIC4uLml0ZW0gfTtcclxuICAgIGlmICh0ZW1wLmNoaWxkcmVuICYmIHRlbXAuY2hpbGRyZW4ubGVuZ3RoID4gMCkge1xyXG4gICAgICBjb252ZXJ0Q29sdW1ucyh0ZW1wLmNoaWxkcmVuLCB7IHNlYXJjaEZvcm1zLCBlZGl0b3JGb3JtcyB9KTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIC8vIEhhbmRsZSBzZWFyY2ggZm9ybSBjb252ZXJzaW9uXHJcbiAgICAgIGlmICh0ZW1wLnNlYXJjaCA9PT0gdHJ1ZSB8fCAodHlwZW9mIHRlbXAuc2VhcmNoID09PSAnb2JqZWN0JyAmJiB0ZW1wLnNlYXJjaC5zaG93ID09PSB0cnVlKSkge1xyXG4gICAgICAgIGxldCBwcm9wcyA9IHsgLi4uKHRlbXAucHJvcHMgfHwge30pIH07XHJcbiAgICAgICAgY29uc3Qgc2VhcmNoUHJvcHMgPSB0eXBlb2YgdGVtcC5zZWFyY2ggPT09ICdvYmplY3QnID8geyAuLi50ZW1wLnNlYXJjaCB9IDoge307XHJcbiAgICAgICAgZGVsZXRlIHByb3BzLm9uQ2hhbmdlO1xyXG4gICAgICAgIHNlYXJjaEZvcm1zLnB1c2goe1xyXG4gICAgICAgICAgbmFtZTogdGVtcC5maWVsZCB8fCB0ZW1wLmRhdGFJbmRleCxcclxuICAgICAgICAgIGxhYmVsOiAodHlwZW9mIHRlbXAuc2VhcmNoID09PSAnb2JqZWN0JyA/IHRlbXAuc2VhcmNoLmxhYmVsIDogdW5kZWZpbmVkKSB8fCB0ZW1wLnRpdGxlLFxyXG4gICAgICAgICAgdHlwZTogdGVtcC50eXBlLFxyXG4gICAgICAgICAgcHJvcHM6IHsgLi4ucHJvcHMsIC4uLmxvZGFzaC5vbWl0KHNlYXJjaFByb3BzLCBbJ2xhYmVsJywgJ2xhYmVsQ29sJywgJ3Nob3cnLCAnd3JhcHBlckNvbCddKSB9LFxyXG4gICAgICAgICAgbGFiZWxDb2w6IHR5cGVvZiB0ZW1wLnNlYXJjaCA9PT0gJ29iamVjdCcgPyB0ZW1wLnNlYXJjaC5sYWJlbENvbCA6IHVuZGVmaW5lZCxcclxuICAgICAgICAgIHdyYXBwZXJDb2w6IHR5cGVvZiB0ZW1wLnNlYXJjaCA9PT0gJ29iamVjdCcgPyB0ZW1wLnNlYXJjaC53cmFwcGVyQ29sIDogdW5kZWZpbmVkLFxyXG4gICAgICAgICAgcnVsZXM6IHRlbXAuc2VhcmNoUnVsZXMgfHwgW10sXHJcbiAgICAgICAgfSk7XHJcbiAgICAgIH1cclxuICAgICAgLy8gSGFuZGxlIGVkaXRvciBmb3JtIGNvbnZlcnNpb25cclxuICAgICAgaWYgKHRlbXAuZWRpdG9yICE9PSBmYWxzZSkge1xyXG4gICAgICAgIGVkaXRvckZvcm1zLnB1c2goe1xyXG4gICAgICAgICAgbmFtZTogdGVtcC5maWVsZCB8fCB0ZW1wLmRhdGFJbmRleCxcclxuICAgICAgICAgIGxhYmVsOiB0ZW1wLnRpdGxlLFxyXG4gICAgICAgICAgcnVsZXM6IHRlbXAucnVsZXMgfHwgW10sXHJcbiAgICAgICAgICB0eXBlOiB0ZW1wLnR5cGUsXHJcbiAgICAgICAgICBzcGFuOiB0ZW1wLnNwYW4sXHJcbiAgICAgICAgICBkaWN0TmFtZTogdGVtcC5kaWN0TmFtZSxcclxuICAgICAgICAgIHJlcXVpcmVkOiB0ZW1wLnJlcXVpcmVkLFxyXG4gICAgICAgICAgcHJvcHM6IHsgLi4udGVtcC5wcm9wcyB9LFxyXG4gICAgICAgIH0pO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfSk7XHJcblxyXG4gIHJldHVybiB7XHJcbiAgICBzZWFyY2hGb3JtcyxcclxuICAgIGVkaXRvckZvcm1zLFxyXG4gIH07XHJcbn07XHJcbmNvbnN0IGdldFRleHQgPSAocHJvcHMsIHRleHQpID0+IHtcclxuICBsZXQgbmV3VGV4dCA9IHRleHQ7XHJcbiAgaWYgKHByb3BzPy5kYXRhICYmIHByb3BzPy5kYXRhPy5sZW5ndGggPiAwKSB7XHJcbiAgICBsZXQgZGF0YSA9IHByb3BzLmRhdGE7XHJcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IGRhdGE/Lmxlbmd0aDsgaSsrKSB7XHJcbiAgICAgIGlmIChkYXRhW2ldLnZhbHVlID09IHRleHQpIHtcclxuICAgICAgICBuZXdUZXh0ID0gZGF0YVtpXS5sYWJlbDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuICByZXR1cm4gbmV3VGV4dDtcclxufVxyXG5leHBvcnQgY29uc3QgZ2V0TmV3Q29sdW1ucyA9IChjb2x1bW5zOiBhbnksIHByb3BzOiBhbnkpID0+IHtcclxuICBsZXQgZGF0YSA9IGxvZGFzaC5jbG9uZURlZXAoY29sdW1ucyk7XHJcblxyXG4gIGZ1bmN0aW9uIGNvbnZlckRhdGEoZGF0YSkge1xyXG4gICAgcmV0dXJuIGRhdGEubWFwKG9iaiA9PiB7XHJcbiAgICAgIGxldCB0ZW1wID0geyB3aWR0aDogMTUwLCAuLi5vYmogfVxyXG4gICAgICBkZWxldGUgdGVtcC5zZWFyY2g7XHJcbiAgICAgIGRlbGV0ZSB0ZW1wLnJ1bGVzO1xyXG4gICAgICBkZWxldGUgdGVtcC5zcGFuO1xyXG4gICAgICBkZWxldGUgdGVtcC5yZXF1aXJlZDtcclxuICAgICAgaWYgKHRlbXAuY2hpbGRyZW4pIHtcclxuICAgICAgICB0ZW1wLmNoaWxkcmVuID0gdGVtcC5jaGlsZHJlbi5maWx0ZXIoY2hpbGQgPT4gY2hpbGQuY29sdW1uU2hvdyAhPT0gZmFsc2UpO1xyXG4gICAgICB9XHJcbiAgICAgIGlmICh0ZW1wLmNvbHVtblNlYXJjaCkge1xyXG4gICAgICAgIHRlbXAuZmlsdGVyUHJvcHMgPSB7XHJcbiAgICAgICAgICB0eXBlOiB0ZW1wLnR5cGUsXHJcbiAgICAgICAgICBwcm9wczogdGVtcC5wcm9wcyxcclxuICAgICAgICB9O1xyXG4gICAgICB9XHJcbiAgICAgIGxldCB0ZW1wUHJvcCA9IHsgLi4udGVtcC5wcm9wcyB9O1xyXG4gICAgICBpZiAodGVtcFByb3A/LmRhdGEgJiYgdGVtcFByb3A/LmRhdGE/Lmxlbmd0aCA+IDApIHtcclxuICAgICAgICB0ZW1wID0ge1xyXG4gICAgICAgICAgZWxsaXBzaXM6IHsgc2hvd1RpdGxlOiBmYWxzZSB9LFxyXG4gICAgICAgICAgcmVuZGVyOiAodGV4dDogYW55KSA9PiB7XHJcbiAgICAgICAgICAgIHJldHVybiBnZXRUZXh0KHRlbXBQcm9wLCB0ZXh0KTtcclxuICAgICAgICAgIH0sXHJcbiAgICAgICAgICAuLi50ZW1wLFxyXG4gICAgICAgIH07XHJcbiAgICAgIH1cclxuICAgICAgZGVsZXRlIHRlbXAucHJvcHM7XHJcbiAgICAgIGRlbGV0ZSB0ZW1wLnByb3BzO1xyXG4gICAgICBpZiAodGVtcC5yZW5kZXIgJiYgdHlwZW9mIHRlbXAucmVuZGVyID09ICdzdHJpbmcnKSB7XHJcbiAgICAgICAgbGV0IHJlbmRlclN0ciA9IHRlbXAucmVuZGVyXHJcbiAgICAgICAgdGVtcCA9IHtcclxuICAgICAgICAgIC4uLnRlbXAsXHJcbiAgICAgICAgICByZW5kZXI6IChfdGV4dCwgX3JlY29yZCwgX2luZGV4KSA9PiB7XHJcbiAgICAgICAgICAgIGNvbnN0IGV2ZW50T3B0aW9uID0geyB0ZXh0OiBfdGV4dCwgcmVjb3JkOiBfcmVjb3JkLCBpbmRleDogX2luZGV4LCBmdW5jczogcHJvcHMuZnVuY3MgfVxyXG4gICAgICAgICAgICBjb25zdCBmdW5jID0gbmV3IEZ1bmN0aW9uKCdldmVudE9wdGlvbixVdGlscycsIHJlbmRlclN0cilcclxuICAgICAgICAgICAgY29uc3QgcmVzID0gZnVuYyhldmVudE9wdGlvbiwgcHJvcHMuVXRpbHMpXHJcbiAgICAgICAgICAgIHJldHVybiByZXNcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgaWYgKHRlbXAudHlwZSA9PSBcIlVwbG9hZFwiICYmIHRlbXA/LmNvbHVtblNob3cgIT09IGZhbHNlKSB7XHJcbiAgICAgICAgdGVtcCA9IHtcclxuICAgICAgICAgIHJlbmRlcjogKF90ZXh0LCByZWNvcmQpID0+IHtcclxuICAgICAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkocmVjb3JkW3RlbXAuZGF0YUluZGV4XSkpIHtcclxuICAgICAgICAgICAgICBjb25zdCBmaWxlcyA9IHJlY29yZFt0ZW1wLmRhdGFJbmRleF07XHJcbiAgICAgICAgICAgICAgaWYgKGZpbGVzLmxlbmd0aCA9PSAxKSB7XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gKFxyXG4gICAgICAgICAgICAgICAgICA8QnV0dG9uXHJcbiAgICAgICAgICAgICAgICAgICAgdHlwZT17XCJsaW5rXCJ9XHJcbiAgICAgICAgICAgICAgICAgICAgb25DbGljaz17KCkgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgbnNjZmlsZS5kb3dubG9hZChmaWxlc1swXS5maWxlSWQpO1xyXG4gICAgICAgICAgICAgICAgICAgIH19XHJcbiAgICAgICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgICAgICB7ZmlsZXNbMF0/LmZpbGVOYW1lfVxyXG4gICAgICAgICAgICAgICAgICA8L0J1dHRvbj5cclxuICAgICAgICAgICAgICAgICk7XHJcbiAgICAgICAgICAgICAgfSBlbHNlIGlmIChmaWxlcy5sZW5ndGggPiAxKSB7XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gKFxyXG4gICAgICAgICAgICAgICAgICA8QnV0dG9uXHJcbiAgICAgICAgICAgICAgICAgICAgdHlwZT17XCJsaW5rXCJ9XHJcbiAgICAgICAgICAgICAgICAgICAgb25DbGljaz17KCkgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgbGV0IGZpbGVJZHMgPSBbXSBhcyBhbnk7XHJcbiAgICAgICAgICAgICAgICAgICAgICBmaWxlcy5tYXAoKGl0ZW0pID0+IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZmlsZUlkcy5wdXNoKGl0ZW0uZmlsZUlkKTtcclxuICAgICAgICAgICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICAgICAgICAgICAgbnNjZmlsZS5kb3dubG9hZFppcChmaWxlSWRzLmpvaW4oXCIsXCIpKTtcclxuICAgICAgICAgICAgICAgICAgICB9fVxyXG4gICAgICAgICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgICAgICAge1wi5paH5Lu25LiL6L29XCJ9XHJcbiAgICAgICAgICAgICAgICAgIDwvQnV0dG9uPlxyXG4gICAgICAgICAgICAgICAgKTtcclxuICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH0sXHJcbiAgICAgICAgICAuLi50ZW1wLFxyXG4gICAgICAgIH07XHJcbiAgICAgIH1cclxuICAgICAgaWYgKHRlbXAudHlwZSA9PSBcIkltYWdlXCIgJiYgdGVtcD8uY29sdW1uU2hvdyAhPT0gZmFsc2UpIHtcclxuICAgICAgICB0ZW1wID0ge1xyXG4gICAgICAgICAgcmVuZGVyOiAoX3RleHQsIHJlY29yZCkgPT4ge1xyXG4gICAgICAgICAgICBpZiAoQXJyYXkuaXNBcnJheShyZWNvcmRbdGVtcC5kYXRhSW5kZXhdKSkge1xyXG4gICAgICAgICAgICAgIGNvbnN0IGZpbGVzID0gcmVjb3JkW3RlbXAuZGF0YUluZGV4XTtcclxuICAgICAgICAgICAgICBpZiAoZmlsZXMubGVuZ3RoID09IDEpIHtcclxuICAgICAgICAgICAgICAgIHJldHVybiAoXHJcbiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwibnNjLWJhc2VwYWdlLXRhYmxlLWltZ1wiPlxyXG4gICAgICAgICAgICAgICAgICAgIHtmaWxlc1swXT8uZmlsZU5hbWV9XHJcbiAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgKTtcclxuICAgICAgICAgICAgICB9IGVsc2UgaWYgKGZpbGVzLmxlbmd0aCA+IDEpIHtcclxuICAgICAgICAgICAgICAgIHJldHVybiAoXHJcbiAgICAgICAgICAgICAgICAgIDxCdXR0b24gdHlwZT17XCJsaW5rXCJ9IG9uQ2xpY2s9eygpID0+IHsgfX0+XHJcbiAgICAgICAgICAgICAgICAgICAg5Zu+54mH5p+l55yLXHJcbiAgICAgICAgICAgICAgICAgIDwvQnV0dG9uPlxyXG4gICAgICAgICAgICAgICAgKTtcclxuICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH0sXHJcbiAgICAgICAgICAuLi50ZW1wLFxyXG4gICAgICAgIH07XHJcbiAgICAgIH1cclxuICAgICAgcmV0dXJuIHRlbXAuY29sdW1uU2hvdyAhPT0gZmFsc2UgPyB0ZW1wIDogbnVsbDtcclxuICAgIH0pLmZpbHRlcihjb2x1bW4gPT4gY29sdW1uICE9PSBudWxsKTtcclxuICB9XHJcblxyXG4gIGNvbnN0IGZpbHRlcmVkQ29sdW1ucyA9IGNvbnZlckRhdGEoZGF0YSk7XHJcbiAgcmV0dXJuIGZpbHRlcmVkQ29sdW1uc1xyXG4gIC8vIOS9v+eUqG1hcOmBjeWOhuagkeS4reeahOavj+S4quiKgueCueW5tuW6lOeUqOS/ruaUueWHveaVsFxyXG5cclxuICAvLyBjb25zdCBuZXdEYXRhID0gZGF0YS5tYXAoaXRlbT0+KVxyXG59XHJcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSxPQUFPQSxLQUFLLE1BQU0sT0FBTztBQUN6QixPQUFPQyxNQUFNLE1BQU0sbUJBQW1CO0FBQ3RDLE9BQU9DLE9BQU8sTUFBTSxVQUFVO0FB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
182
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJSZWFjdCIsIkJ1dHRvbiIsIm5zY2ZpbGUiLCJsb2Rhc2giLCJjb252ZXJ0Q29sdW1ucyIsImNvbHVtbnMiLCJfcmVmIiwic2VhcmNoRm9ybXMiLCJlZGl0b3JGb3JtcyIsImZvckVhY2giLCJpdGVtIiwidGVtcCIsIl9vYmplY3RTcHJlYWQiLCJ3aWR0aCIsImNoaWxkcmVuIiwibGVuZ3RoIiwic2VhcmNoIiwic2hvdyIsInByb3BzIiwic2VhcmNoUHJvcHMiLCJvbkNoYW5nZSIsInB1c2giLCJuYW1lIiwiZmllbGQiLCJkYXRhSW5kZXgiLCJsYWJlbCIsInVuZGVmaW5lZCIsInRpdGxlIiwidHlwZSIsIm9taXQiLCJsYWJlbENvbCIsIndyYXBwZXJDb2wiLCJydWxlcyIsInNlYXJjaFJ1bGVzIiwiZWRpdG9yIiwic3BhbiIsImRpY3ROYW1lIiwicmVxdWlyZWQiLCJoaWRlIiwiZWRpdG9yU2hvdyIsImdldFRleHQiLCJ0ZXh0IiwiX3Byb3BzJGRhdGEiLCJuZXdUZXh0IiwiZGF0YSIsImkiLCJ2YWx1ZSIsImdldE5ld0NvbHVtbnMiLCJjbG9uZURlZXAiLCJjb252ZXJEYXRhIiwibWFwIiwib2JqIiwiX3RlbXBQcm9wJGRhdGEiLCJfdGVtcCIsIl90ZW1wMiIsImZpbHRlciIsImNoaWxkIiwiY29sdW1uU2hvdyIsImNvbHVtblNlYXJjaCIsImZpbHRlclByb3BzIiwidGVtcFByb3AiLCJlbGxpcHNpcyIsInNob3dUaXRsZSIsInJlbmRlciIsInJlbmRlclN0ciIsIl90ZXh0IiwiX3JlY29yZCIsIl9pbmRleCIsImV2ZW50T3B0aW9uIiwicmVjb3JkIiwiaW5kZXgiLCJmdW5jcyIsImZ1bmMiLCJGdW5jdGlvbiIsInJlcyIsIlV0aWxzIiwiQXJyYXkiLCJpc0FycmF5IiwiZmlsZXMiLCJfZmlsZXMkIiwiY3JlYXRlRWxlbWVudCIsIm9uQ2xpY2siLCJkb3dubG9hZCIsImZpbGVJZCIsImZpbGVOYW1lIiwiZmlsZUlkcyIsImRvd25sb2FkWmlwIiwiam9pbiIsIl9maWxlcyQyIiwiY2xhc3NOYW1lIiwiY29sdW1uIiwiZmlsdGVyZWRDb2x1bW5zIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvcGFnZS9CYXNlUGFnZS91dGlscy50c3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0IGZyb20gXCJyZWFjdFwiO1xyXG5pbXBvcnQgQnV0dG9uIGZyb20gXCIuLi8uLi9iYXNlL2J1dHRvblwiO1xyXG5pbXBvcnQgbnNjZmlsZSBmcm9tIFwibnNjLWZpbGVcIjtcclxuaW1wb3J0IGxvZGFzaCBmcm9tIFwibG9kYXNoXCI7XHJcbmV4cG9ydCBjb25zdCBjb252ZXJ0Q29sdW1ucyA9IChcclxuICBjb2x1bW5zOiBhbnksXHJcbiAgeyBzZWFyY2hGb3JtcyA9IFtdLCBlZGl0b3JGb3JtcyA9IFtdIH06IGFueVxyXG4pID0+IHtcclxuICBjb2x1bW5zLmZvckVhY2goKGl0ZW06IGFueSkgPT4ge1xyXG4gICAgbGV0IHRlbXAgPSB7IHdpZHRoOiAxMDAsIC4uLml0ZW0gfTtcclxuICAgIGlmICh0ZW1wLmNoaWxkcmVuICYmIHRlbXAuY2hpbGRyZW4ubGVuZ3RoID4gMCkge1xyXG4gICAgICBjb252ZXJ0Q29sdW1ucyh0ZW1wLmNoaWxkcmVuLCB7IHNlYXJjaEZvcm1zLCBlZGl0b3JGb3JtcyB9KTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIC8vIEhhbmRsZSBzZWFyY2ggZm9ybSBjb252ZXJzaW9uXHJcbiAgICAgIGlmIChcclxuICAgICAgICB0ZW1wLnNlYXJjaCA9PT0gdHJ1ZSB8fFxyXG4gICAgICAgICh0eXBlb2YgdGVtcC5zZWFyY2ggPT09IFwib2JqZWN0XCIgJiYgdGVtcC5zZWFyY2guc2hvdyA9PT0gdHJ1ZSlcclxuICAgICAgKSB7XHJcbiAgICAgICAgbGV0IHByb3BzID0geyAuLi4odGVtcC5wcm9wcyB8fCB7fSkgfTtcclxuICAgICAgICBjb25zdCBzZWFyY2hQcm9wcyA9XHJcbiAgICAgICAgICB0eXBlb2YgdGVtcC5zZWFyY2ggPT09IFwib2JqZWN0XCIgPyB7IC4uLnRlbXAuc2VhcmNoIH0gOiB7fTtcclxuICAgICAgICBkZWxldGUgcHJvcHMub25DaGFuZ2U7XHJcbiAgICAgICAgc2VhcmNoRm9ybXMucHVzaCh7XHJcbiAgICAgICAgICBuYW1lOiB0ZW1wLmZpZWxkIHx8IHRlbXAuZGF0YUluZGV4LFxyXG4gICAgICAgICAgbGFiZWw6XHJcbiAgICAgICAgICAgICh0eXBlb2YgdGVtcC5zZWFyY2ggPT09IFwib2JqZWN0XCIgPyB0ZW1wLnNlYXJjaC5sYWJlbCA6IHVuZGVmaW5lZCkgfHxcclxuICAgICAgICAgICAgdGVtcC50aXRsZSxcclxuICAgICAgICAgIHR5cGU6IHRlbXAudHlwZSxcclxuICAgICAgICAgIHByb3BzOiB7XHJcbiAgICAgICAgICAgIC4uLnByb3BzLFxyXG4gICAgICAgICAgICAuLi5sb2Rhc2gub21pdChzZWFyY2hQcm9wcywgW1xyXG4gICAgICAgICAgICAgIFwibGFiZWxcIixcclxuICAgICAgICAgICAgICBcImxhYmVsQ29sXCIsXHJcbiAgICAgICAgICAgICAgXCJzaG93XCIsXHJcbiAgICAgICAgICAgICAgXCJ3cmFwcGVyQ29sXCIsXHJcbiAgICAgICAgICAgIF0pLFxyXG4gICAgICAgICAgfSxcclxuICAgICAgICAgIGxhYmVsQ29sOlxyXG4gICAgICAgICAgICB0eXBlb2YgdGVtcC5zZWFyY2ggPT09IFwib2JqZWN0XCIgPyB0ZW1wLnNlYXJjaC5sYWJlbENvbCA6IHVuZGVmaW5lZCxcclxuICAgICAgICAgIHdyYXBwZXJDb2w6XHJcbiAgICAgICAgICAgIHR5cGVvZiB0ZW1wLnNlYXJjaCA9PT0gXCJvYmplY3RcIlxyXG4gICAgICAgICAgICAgID8gdGVtcC5zZWFyY2gud3JhcHBlckNvbFxyXG4gICAgICAgICAgICAgIDogdW5kZWZpbmVkLFxyXG4gICAgICAgICAgcnVsZXM6IHRlbXAuc2VhcmNoUnVsZXMgfHwgW10sXHJcbiAgICAgICAgfSk7XHJcbiAgICAgIH1cclxuICAgICAgLy8gSGFuZGxlIGVkaXRvciBmb3JtIGNvbnZlcnNpb25cclxuICAgICAgaWYgKHRlbXAuZWRpdG9yICE9PSBmYWxzZSkge1xyXG4gICAgICAgIGVkaXRvckZvcm1zLnB1c2goe1xyXG4gICAgICAgICAgbmFtZTogdGVtcC5maWVsZCB8fCB0ZW1wLmRhdGFJbmRleCxcclxuICAgICAgICAgIGxhYmVsOiB0ZW1wLnRpdGxlLFxyXG4gICAgICAgICAgcnVsZXM6IHRlbXAucnVsZXMgfHwgW10sXHJcbiAgICAgICAgICB0eXBlOiB0ZW1wLnR5cGUsXHJcbiAgICAgICAgICBzcGFuOiB0ZW1wLnNwYW4sXHJcbiAgICAgICAgICBkaWN0TmFtZTogdGVtcC5kaWN0TmFtZSxcclxuICAgICAgICAgIHJlcXVpcmVkOiB0ZW1wLnJlcXVpcmVkLFxyXG4gICAgICAgICAgaGlkZTogdGVtcC5lZGl0b3JTaG93ID09PSBmYWxzZSA/IHRydWUgOiBmYWxzZSxcclxuICAgICAgICAgIHByb3BzOiB7IC4uLnRlbXAucHJvcHMgfSxcclxuICAgICAgICB9KTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH0pO1xyXG5cclxuICByZXR1cm4ge1xyXG4gICAgc2VhcmNoRm9ybXMsXHJcbiAgICBlZGl0b3JGb3JtcyxcclxuICB9O1xyXG59O1xyXG5jb25zdCBnZXRUZXh0ID0gKHByb3BzLCB0ZXh0KSA9PiB7XHJcbiAgbGV0IG5ld1RleHQgPSB0ZXh0O1xyXG4gIGlmIChwcm9wcz8uZGF0YSAmJiBwcm9wcz8uZGF0YT8ubGVuZ3RoID4gMCkge1xyXG4gICAgbGV0IGRhdGEgPSBwcm9wcy5kYXRhO1xyXG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBkYXRhPy5sZW5ndGg7IGkrKykge1xyXG4gICAgICBpZiAoZGF0YVtpXS52YWx1ZSA9PSB0ZXh0KSB7XHJcbiAgICAgICAgbmV3VGV4dCA9IGRhdGFbaV0ubGFiZWw7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbiAgcmV0dXJuIG5ld1RleHQ7XHJcbn07XHJcbmV4cG9ydCBjb25zdCBnZXROZXdDb2x1bW5zID0gKGNvbHVtbnM6IGFueSwgcHJvcHM6IGFueSkgPT4ge1xyXG4gIGxldCBkYXRhID0gbG9kYXNoLmNsb25lRGVlcChjb2x1bW5zKTtcclxuXHJcbiAgZnVuY3Rpb24gY29udmVyRGF0YShkYXRhKSB7XHJcbiAgICByZXR1cm4gZGF0YVxyXG4gICAgICAubWFwKChvYmopID0+IHtcclxuICAgICAgICBsZXQgdGVtcCA9IHsgd2lkdGg6IDE1MCwgLi4ub2JqIH07XHJcbiAgICAgICAgZGVsZXRlIHRlbXAuc2VhcmNoO1xyXG4gICAgICAgIGRlbGV0ZSB0ZW1wLnJ1bGVzO1xyXG4gICAgICAgIGRlbGV0ZSB0ZW1wLnNwYW47XHJcbiAgICAgICAgZGVsZXRlIHRlbXAucmVxdWlyZWQ7XHJcbiAgICAgICAgaWYgKHRlbXAuY2hpbGRyZW4pIHtcclxuICAgICAgICAgIHRlbXAuY2hpbGRyZW4gPSB0ZW1wLmNoaWxkcmVuLmZpbHRlcihcclxuICAgICAgICAgICAgKGNoaWxkKSA9PiBjaGlsZC5jb2x1bW5TaG93ICE9PSBmYWxzZVxyXG4gICAgICAgICAgKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgaWYgKHRlbXAuY29sdW1uU2VhcmNoKSB7XHJcbiAgICAgICAgICB0ZW1wLmZpbHRlclByb3BzID0ge1xyXG4gICAgICAgICAgICB0eXBlOiB0ZW1wLnR5cGUsXHJcbiAgICAgICAgICAgIHByb3BzOiB0ZW1wLnByb3BzLFxyXG4gICAgICAgICAgfTtcclxuICAgICAgICB9XHJcbiAgICAgICAgbGV0IHRlbXBQcm9wID0geyAuLi50ZW1wLnByb3BzIH07XHJcbiAgICAgICAgaWYgKHRlbXBQcm9wPy5kYXRhICYmIHRlbXBQcm9wPy5kYXRhPy5sZW5ndGggPiAwKSB7XHJcbiAgICAgICAgICB0ZW1wID0ge1xyXG4gICAgICAgICAgICBlbGxpcHNpczogeyBzaG93VGl0bGU6IGZhbHNlIH0sXHJcbiAgICAgICAgICAgIHJlbmRlcjogKHRleHQ6IGFueSkgPT4ge1xyXG4gICAgICAgICAgICAgIHJldHVybiBnZXRUZXh0KHRlbXBQcm9wLCB0ZXh0KTtcclxuICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgLi4udGVtcCxcclxuICAgICAgICAgIH07XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGRlbGV0ZSB0ZW1wLnByb3BzO1xyXG4gICAgICAgIGRlbGV0ZSB0ZW1wLnByb3BzO1xyXG4gICAgICAgIGlmICh0ZW1wLnJlbmRlciAmJiB0eXBlb2YgdGVtcC5yZW5kZXIgPT0gXCJzdHJpbmdcIikge1xyXG4gICAgICAgICAgbGV0IHJlbmRlclN0ciA9IHRlbXAucmVuZGVyO1xyXG4gICAgICAgICAgdGVtcCA9IHtcclxuICAgICAgICAgICAgLi4udGVtcCxcclxuICAgICAgICAgICAgcmVuZGVyOiAoX3RleHQsIF9yZWNvcmQsIF9pbmRleCkgPT4ge1xyXG4gICAgICAgICAgICAgIGNvbnN0IGV2ZW50T3B0aW9uID0ge1xyXG4gICAgICAgICAgICAgICAgdGV4dDogX3RleHQsXHJcbiAgICAgICAgICAgICAgICByZWNvcmQ6IF9yZWNvcmQsXHJcbiAgICAgICAgICAgICAgICBpbmRleDogX2luZGV4LFxyXG4gICAgICAgICAgICAgICAgZnVuY3M6IHByb3BzLmZ1bmNzLFxyXG4gICAgICAgICAgICAgIH07XHJcbiAgICAgICAgICAgICAgY29uc3QgZnVuYyA9IG5ldyBGdW5jdGlvbihcImV2ZW50T3B0aW9uLFV0aWxzXCIsIHJlbmRlclN0cik7XHJcbiAgICAgICAgICAgICAgY29uc3QgcmVzID0gZnVuYyhldmVudE9wdGlvbiwgcHJvcHMuVXRpbHMpO1xyXG4gICAgICAgICAgICAgIHJldHVybiByZXM7XHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICB9O1xyXG4gICAgICAgIH1cclxuICAgICAgICBpZiAodGVtcC50eXBlID09IFwiVXBsb2FkXCIgJiYgdGVtcD8uY29sdW1uU2hvdyAhPT0gZmFsc2UpIHtcclxuICAgICAgICAgIHRlbXAgPSB7XHJcbiAgICAgICAgICAgIHJlbmRlcjogKF90ZXh0LCByZWNvcmQpID0+IHtcclxuICAgICAgICAgICAgICBpZiAoQXJyYXkuaXNBcnJheShyZWNvcmRbdGVtcC5kYXRhSW5kZXhdKSkge1xyXG4gICAgICAgICAgICAgICAgY29uc3QgZmlsZXMgPSByZWNvcmRbdGVtcC5kYXRhSW5kZXhdO1xyXG4gICAgICAgICAgICAgICAgaWYgKGZpbGVzLmxlbmd0aCA9PSAxKSB7XHJcbiAgICAgICAgICAgICAgICAgIHJldHVybiAoXHJcbiAgICAgICAgICAgICAgICAgICAgPEJ1dHRvblxyXG4gICAgICAgICAgICAgICAgICAgICAgdHlwZT17XCJsaW5rXCJ9XHJcbiAgICAgICAgICAgICAgICAgICAgICBvbkNsaWNrPXsoKSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG5zY2ZpbGUuZG93bmxvYWQoZmlsZXNbMF0uZmlsZUlkKTtcclxuICAgICAgICAgICAgICAgICAgICAgIH19XHJcbiAgICAgICAgICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgICAgICAgICAge2ZpbGVzWzBdPy5maWxlTmFtZX1cclxuICAgICAgICAgICAgICAgICAgICA8L0J1dHRvbj5cclxuICAgICAgICAgICAgICAgICAgKTtcclxuICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAoZmlsZXMubGVuZ3RoID4gMSkge1xyXG4gICAgICAgICAgICAgICAgICByZXR1cm4gKFxyXG4gICAgICAgICAgICAgICAgICAgIDxCdXR0b25cclxuICAgICAgICAgICAgICAgICAgICAgIHR5cGU9e1wibGlua1wifVxyXG4gICAgICAgICAgICAgICAgICAgICAgb25DbGljaz17KCkgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBsZXQgZmlsZUlkcyA9IFtdIGFzIGFueTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZmlsZXMubWFwKChpdGVtKSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgZmlsZUlkcy5wdXNoKGl0ZW0uZmlsZUlkKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG5zY2ZpbGUuZG93bmxvYWRaaXAoZmlsZUlkcy5qb2luKFwiLFwiKSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICB9fVxyXG4gICAgICAgICAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICAgICAgICAgIHtcIuaWh+S7tuS4i+i9vVwifVxyXG4gICAgICAgICAgICAgICAgICAgIDwvQnV0dG9uPlxyXG4gICAgICAgICAgICAgICAgICApO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgLi4udGVtcCxcclxuICAgICAgICAgIH07XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGlmICh0ZW1wLnR5cGUgPT0gXCJJbWFnZVwiICYmIHRlbXA/LmNvbHVtblNob3cgIT09IGZhbHNlKSB7XHJcbiAgICAgICAgICB0ZW1wID0ge1xyXG4gICAgICAgICAgICByZW5kZXI6IChfdGV4dCwgcmVjb3JkKSA9PiB7XHJcbiAgICAgICAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkocmVjb3JkW3RlbXAuZGF0YUluZGV4XSkpIHtcclxuICAgICAgICAgICAgICAgIGNvbnN0IGZpbGVzID0gcmVjb3JkW3RlbXAuZGF0YUluZGV4XTtcclxuICAgICAgICAgICAgICAgIGlmIChmaWxlcy5sZW5ndGggPT0gMSkge1xyXG4gICAgICAgICAgICAgICAgICByZXR1cm4gKFxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3NOYW1lPVwibnNjLWJhc2VwYWdlLXRhYmxlLWltZ1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAge2ZpbGVzWzBdPy5maWxlTmFtZX1cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgKTtcclxuICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAoZmlsZXMubGVuZ3RoID4gMSkge1xyXG4gICAgICAgICAgICAgICAgICByZXR1cm4gKFxyXG4gICAgICAgICAgICAgICAgICAgIDxCdXR0b24gdHlwZT17XCJsaW5rXCJ9IG9uQ2xpY2s9eygpID0+IHt9fT5cclxuICAgICAgICAgICAgICAgICAgICAgIOWbvueJh+afpeeci1xyXG4gICAgICAgICAgICAgICAgICAgIDwvQnV0dG9uPlxyXG4gICAgICAgICAgICAgICAgICApO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgLi4udGVtcCxcclxuICAgICAgICAgIH07XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiB0ZW1wLmNvbHVtblNob3cgIT09IGZhbHNlID8gdGVtcCA6IG51bGw7XHJcbiAgICAgIH0pXHJcbiAgICAgIC5maWx0ZXIoKGNvbHVtbikgPT4gY29sdW1uICE9PSBudWxsKTtcclxuICB9XHJcblxyXG4gIGNvbnN0IGZpbHRlcmVkQ29sdW1ucyA9IGNvbnZlckRhdGEoZGF0YSk7XHJcbiAgcmV0dXJuIGZpbHRlcmVkQ29sdW1ucztcclxuICAvLyDkvb/nlKhtYXDpgY3ljobmoJHkuK3nmoTmr4/kuKroioLngrnlubblupTnlKjkv67mlLnlh73mlbBcclxuXHJcbiAgLy8gY29uc3QgbmV3RGF0YSA9IGRhdGEubWFwKGl0ZW09PilcclxufTtcclxuIl0sIm1hcHBpbmdzIjoiOzs7OztBQUFBLE9BQU9BLEtBQUssTUFBTSxPQUFPO0FBQ3pCLE9BQU9DLE1BQU0sTUFBTSxtQkFBbUI7QUFDdEMsT0FBT0MsT0FBTyxNQUFNLFVBQVU7QUFDOUIsT0FBT0MsTUFBTSxNQUFNLFFBQVE7QUFDM0IsT0FBTyxNQUFNQyxjQUFjLEdBQUdBLENBQzVCQyxPQUFZLEVBQUFDLElBQUEsS0FFVDtFQUFBLElBREg7SUFBRUMsV0FBVyxHQUFHLEVBQUU7SUFBRUMsV0FBVyxHQUFHO0VBQVEsQ0FBQyxHQUFBRixJQUFBO0VBRTNDRCxPQUFPLENBQUNJLE9BQU8sQ0FBRUMsSUFBUyxJQUFLO0lBQzdCLElBQUlDLElBQUksR0FBQUMsYUFBQTtNQUFLQyxLQUFLLEVBQUU7SUFBRyxHQUFLSCxJQUFJLENBQUU7SUFDbEMsSUFBSUMsSUFBSSxDQUFDRyxRQUFRLElBQUlILElBQUksQ0FBQ0csUUFBUSxDQUFDQyxNQUFNLEdBQUcsQ0FBQyxFQUFFO01BQzdDWCxjQUFjLENBQUNPLElBQUksQ0FBQ0csUUFBUSxFQUFFO1FBQUVQLFdBQVc7UUFBRUM7TUFBWSxDQUFDLENBQUM7SUFDN0QsQ0FBQyxNQUFNO01BQ0w7TUFDQSxJQUNFRyxJQUFJLENBQUNLLE1BQU0sS0FBSyxJQUFJLElBQ25CLE9BQU9MLElBQUksQ0FBQ0ssTUFBTSxLQUFLLFFBQVEsSUFBSUwsSUFBSSxDQUFDSyxNQUFNLENBQUNDLElBQUksS0FBSyxJQUFLLEVBQzlEO1FBQ0EsSUFBSUMsS0FBSyxHQUFBTixhQUFBLEtBQVNELElBQUksQ0FBQ08sS0FBSyxJQUFJLENBQUMsQ0FBQyxDQUFHO1FBQ3JDLE1BQU1DLFdBQVcsR0FDZixPQUFPUixJQUFJLENBQUNLLE1BQU0sS0FBSyxRQUFRLEdBQUFKLGFBQUEsS0FBUUQsSUFBSSxDQUFDSyxNQUFNLElBQUssQ0FBQyxDQUFDO1FBQzNELE9BQU9FLEtBQUssQ0FBQ0UsUUFBUTtRQUNyQmIsV0FBVyxDQUFDYyxJQUFJLENBQUM7VUFDZkMsSUFBSSxFQUFFWCxJQUFJLENBQUNZLEtBQUssSUFBSVosSUFBSSxDQUFDYSxTQUFTO1VBQ2xDQyxLQUFLLEVBQ0gsQ0FBQyxPQUFPZCxJQUFJLENBQUNLLE1BQU0sS0FBSyxRQUFRLEdBQUdMLElBQUksQ0FBQ0ssTUFBTSxDQUFDUyxLQUFLLEdBQUdDLFNBQVMsS0FDaEVmLElBQUksQ0FBQ2dCLEtBQUs7VUFDWkMsSUFBSSxFQUFFakIsSUFBSSxDQUFDaUIsSUFBSTtVQUNmVixLQUFLLEVBQUFOLGFBQUEsQ0FBQUEsYUFBQSxLQUNBTSxLQUFLLEdBQ0xmLE1BQU0sQ0FBQzBCLElBQUksQ0FBQ1YsV0FBVyxFQUFFLENBQzFCLE9BQU8sRUFDUCxVQUFVLEVBQ1YsTUFBTSxFQUNOLFlBQVksQ0FDYixDQUFDLENBQ0g7VUFDRFcsUUFBUSxFQUNOLE9BQU9uQixJQUFJLENBQUNLLE1BQU0sS0FBSyxRQUFRLEdBQUdMLElBQUksQ0FBQ0ssTUFBTSxDQUFDYyxRQUFRLEdBQUdKLFNBQVM7VUFDcEVLLFVBQVUsRUFDUixPQUFPcEIsSUFBSSxDQUFDSyxNQUFNLEtBQUssUUFBUSxHQUMzQkwsSUFBSSxDQUFDSyxNQUFNLENBQUNlLFVBQVUsR0FDdEJMLFNBQVM7VUFDZk0sS0FBSyxFQUFFckIsSUFBSSxDQUFDc0IsV0FBVyxJQUFJO1FBQzdCLENBQUMsQ0FBQztNQUNKO01BQ0E7TUFDQSxJQUFJdEIsSUFBSSxDQUFDdUIsTUFBTSxLQUFLLEtBQUssRUFBRTtRQUN6QjFCLFdBQVcsQ0FBQ2EsSUFBSSxDQUFDO1VBQ2ZDLElBQUksRUFBRVgsSUFBSSxDQUFDWSxLQUFLLElBQUlaLElBQUksQ0FBQ2EsU0FBUztVQUNsQ0MsS0FBSyxFQUFFZCxJQUFJLENBQUNnQixLQUFLO1VBQ2pCSyxLQUFLLEVBQUVyQixJQUFJLENBQUNxQixLQUFLLElBQUksRUFBRTtVQUN2QkosSUFBSSxFQUFFakIsSUFBSSxDQUFDaUIsSUFBSTtVQUNmTyxJQUFJLEVBQUV4QixJQUFJLENBQUN3QixJQUFJO1VBQ2ZDLFFBQVEsRUFBRXpCLElBQUksQ0FBQ3lCLFFBQVE7VUFDdkJDLFFBQVEsRUFBRTFCLElBQUksQ0FBQzBCLFFBQVE7VUFDdkJDLElBQUksRUFBRTNCLElBQUksQ0FBQzRCLFVBQVUsS0FBSyxLQUFLLEdBQUcsSUFBSSxHQUFHLEtBQUs7VUFDOUNyQixLQUFLLEVBQUFOLGFBQUEsS0FBT0QsSUFBSSxDQUFDTyxLQUFLO1FBQ3hCLENBQUMsQ0FBQztNQUNKO0lBQ0Y7RUFDRixDQUFDLENBQUM7RUFFRixPQUFPO0lBQ0xYLFdBQVc7SUFDWEM7RUFDRixDQUFDO0FBQ0gsQ0FBQztBQUNELE1BQU1nQyxPQUFPLEdBQUdBLENBQUN0QixLQUFLLEVBQUV1QixJQUFJLEtBQUs7RUFBQSxJQUFBQyxXQUFBO0VBQy9CLElBQUlDLE9BQU8sR0FBR0YsSUFBSTtFQUNsQixJQUFJdkIsS0FBSyxhQUFMQSxLQUFLLGVBQUxBLEtBQUssQ0FBRTBCLElBQUksSUFBSSxDQUFBMUIsS0FBSyxhQUFMQSxLQUFLLGdCQUFBd0IsV0FBQSxHQUFMeEIsS0FBSyxDQUFFMEIsSUFBSSxjQUFBRixXQUFBLHVCQUFYQSxXQUFBLENBQWEzQixNQUFNLElBQUcsQ0FBQyxFQUFFO0lBQzFDLElBQUk2QixJQUFJLEdBQUcxQixLQUFLLENBQUMwQixJQUFJO0lBQ3JCLEtBQUssSUFBSUMsQ0FBQyxHQUFHLENBQUMsRUFBRUEsQ0FBQyxJQUFHRCxJQUFJLGFBQUpBLElBQUksdUJBQUpBLElBQUksQ0FBRTdCLE1BQU0sR0FBRThCLENBQUMsRUFBRSxFQUFFO01BQ3JDLElBQUlELElBQUksQ0FBQ0MsQ0FBQyxDQUFDLENBQUNDLEtBQUssSUFBSUwsSUFBSSxFQUFFO1FBQ3pCRSxPQUFPLEdBQUdDLElBQUksQ0FBQ0MsQ0FBQyxDQUFDLENBQUNwQixLQUFLO01BQ3pCO0lBQ0Y7RUFDRjtFQUNBLE9BQU9rQixPQUFPO0FBQ2hCLENBQUM7QUFDRCxPQUFPLE1BQU1JLGFBQWEsR0FBR0EsQ0FBQzFDLE9BQVksRUFBRWEsS0FBVSxLQUFLO0VBQ3pELElBQUkwQixJQUFJLEdBQUd6QyxNQUFNLENBQUM2QyxTQUFTLENBQUMzQyxPQUFPLENBQUM7RUFFcEMsU0FBUzRDLFVBQVVBLENBQUNMLElBQUksRUFBRTtJQUN4QixPQUFPQSxJQUFJLENBQ1JNLEdBQUcsQ0FBRUMsR0FBRyxJQUFLO01BQUEsSUFBQUMsY0FBQSxFQUFBQyxLQUFBLEVBQUFDLE1BQUE7TUFDWixJQUFJM0MsSUFBSSxHQUFBQyxhQUFBO1FBQUtDLEtBQUssRUFBRTtNQUFHLEdBQUtzQyxHQUFHLENBQUU7TUFDakMsT0FBT3hDLElBQUksQ0FBQ0ssTUFBTTtNQUNsQixPQUFPTCxJQUFJLENBQUNxQixLQUFLO01BQ2pCLE9BQU9yQixJQUFJLENBQUN3QixJQUFJO01BQ2hCLE9BQU94QixJQUFJLENBQUMwQixRQUFRO01BQ3BCLElBQUkxQixJQUFJLENBQUNHLFFBQVEsRUFBRTtRQUNqQkgsSUFBSSxDQUFDRyxRQUFRLEdBQUdILElBQUksQ0FBQ0csUUFBUSxDQUFDeUMsTUFBTSxDQUNqQ0MsS0FBSyxJQUFLQSxLQUFLLENBQUNDLFVBQVUsS0FBSyxLQUNsQyxDQUFDO01BQ0g7TUFDQSxJQUFJOUMsSUFBSSxDQUFDK0MsWUFBWSxFQUFFO1FBQ3JCL0MsSUFBSSxDQUFDZ0QsV0FBVyxHQUFHO1VBQ2pCL0IsSUFBSSxFQUFFakIsSUFBSSxDQUFDaUIsSUFBSTtVQUNmVixLQUFLLEVBQUVQLElBQUksQ0FBQ087UUFDZCxDQUFDO01BQ0g7TUFDQSxJQUFJMEMsUUFBUSxHQUFBaEQsYUFBQSxLQUFRRCxJQUFJLENBQUNPLEtBQUssQ0FBRTtNQUNoQyxJQUFJMEMsUUFBUSxhQUFSQSxRQUFRLGVBQVJBLFFBQVEsQ0FBRWhCLElBQUksSUFBSSxDQUFBZ0IsUUFBUSxhQUFSQSxRQUFRLGdCQUFBUixjQUFBLEdBQVJRLFFBQVEsQ0FBRWhCLElBQUksY0FBQVEsY0FBQSx1QkFBZEEsY0FBQSxDQUFnQnJDLE1BQU0sSUFBRyxDQUFDLEVBQUU7UUFDaERKLElBQUksR0FBQUMsYUFBQTtVQUNGaUQsUUFBUSxFQUFFO1lBQUVDLFNBQVMsRUFBRTtVQUFNLENBQUM7VUFDOUJDLE1BQU0sRUFBR3RCLElBQVMsSUFBSztZQUNyQixPQUFPRCxPQUFPLENBQUNvQixRQUFRLEVBQUVuQixJQUFJLENBQUM7VUFDaEM7UUFBQyxHQUNFOUIsSUFBSSxDQUNSO01BQ0g7TUFDQSxPQUFPQSxJQUFJLENBQUNPLEtBQUs7TUFDakIsT0FBT1AsSUFBSSxDQUFDTyxLQUFLO01BQ2pCLElBQUlQLElBQUksQ0FBQ29ELE1BQU0sSUFBSSxPQUFPcEQsSUFBSSxDQUFDb0QsTUFBTSxJQUFJLFFBQVEsRUFBRTtRQUNqRCxJQUFJQyxTQUFTLEdBQUdyRCxJQUFJLENBQUNvRCxNQUFNO1FBQzNCcEQsSUFBSSxHQUFBQyxhQUFBLENBQUFBLGFBQUEsS0FDQ0QsSUFBSTtVQUNQb0QsTUFBTSxFQUFFQSxDQUFDRSxLQUFLLEVBQUVDLE9BQU8sRUFBRUMsTUFBTSxLQUFLO1lBQ2xDLE1BQU1DLFdBQVcsR0FBRztjQUNsQjNCLElBQUksRUFBRXdCLEtBQUs7Y0FDWEksTUFBTSxFQUFFSCxPQUFPO2NBQ2ZJLEtBQUssRUFBRUgsTUFBTTtjQUNiSSxLQUFLLEVBQUVyRCxLQUFLLENBQUNxRDtZQUNmLENBQUM7WUFDRCxNQUFNQyxJQUFJLEdBQUcsSUFBSUMsUUFBUSxDQUFDLG1CQUFtQixFQUFFVCxTQUFTLENBQUM7WUFDekQsTUFBTVUsR0FBRyxHQUFHRixJQUFJLENBQUNKLFdBQVcsRUFBRWxELEtBQUssQ0FBQ3lELEtBQUssQ0FBQztZQUMxQyxPQUFPRCxHQUFHO1VBQ1o7UUFBQyxFQUNGO01BQ0g7TUFDQSxJQUFJL0QsSUFBSSxDQUFDaUIsSUFBSSxJQUFJLFFBQVEsSUFBSSxFQUFBeUIsS0FBQSxHQUFBMUMsSUFBSSxjQUFBMEMsS0FBQSx1QkFBSkEsS0FBQSxDQUFNSSxVQUFVLE1BQUssS0FBSyxFQUFFO1FBQ3ZEOUMsSUFBSSxHQUFBQyxhQUFBO1VBQ0ZtRCxNQUFNLEVBQUVBLENBQUNFLEtBQUssRUFBRUksTUFBTSxLQUFLO1lBQ3pCLElBQUlPLEtBQUssQ0FBQ0MsT0FBTyxDQUFDUixNQUFNLENBQUMxRCxJQUFJLENBQUNhLFNBQVMsQ0FBQyxDQUFDLEVBQUU7Y0FDekMsTUFBTXNELEtBQUssR0FBR1QsTUFBTSxDQUFDMUQsSUFBSSxDQUFDYSxTQUFTLENBQUM7Y0FDcEMsSUFBSXNELEtBQUssQ0FBQy9ELE1BQU0sSUFBSSxDQUFDLEVBQUU7Z0JBQUEsSUFBQWdFLE9BQUE7Z0JBQ3JCLG9CQUNFL0UsS0FBQSxDQUFBZ0YsYUFBQSxDQUFDL0UsTUFBTTtrQkFDTDJCLElBQUksRUFBRSxNQUFPO2tCQUNicUQsT0FBTyxFQUFFQSxDQUFBLEtBQU07b0JBQ2IvRSxPQUFPLENBQUNnRixRQUFRLENBQUNKLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQ0ssTUFBTSxDQUFDO2tCQUNuQztnQkFBRSxJQUFBSixPQUFBLEdBRURELEtBQUssQ0FBQyxDQUFDLENBQUMsY0FBQUMsT0FBQSx1QkFBUkEsT0FBQSxDQUFVSyxRQUNMLENBQUM7Y0FFYixDQUFDLE1BQU0sSUFBSU4sS0FBSyxDQUFDL0QsTUFBTSxHQUFHLENBQUMsRUFBRTtnQkFDM0Isb0JBQ0VmLEtBQUEsQ0FBQWdGLGFBQUEsQ0FBQy9FLE1BQU07a0JBQ0wyQixJQUFJLEVBQUUsTUFBTztrQkFDYnFELE9BQU8sRUFBRUEsQ0FBQSxLQUFNO29CQUNiLElBQUlJLE9BQU8sR0FBRyxFQUFTO29CQUN2QlAsS0FBSyxDQUFDNUIsR0FBRyxDQUFFeEMsSUFBSSxJQUFLO3NCQUNsQjJFLE9BQU8sQ0FBQ2hFLElBQUksQ0FBQ1gsSUFBSSxDQUFDeUUsTUFBTSxDQUFDO29CQUMzQixDQUFDLENBQUM7b0JBQ0ZqRixPQUFPLENBQUNvRixXQUFXLENBQUNELE9BQU8sQ0FBQ0UsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO2tCQUN4QztnQkFBRSxHQUVELE1BQ0ssQ0FBQztjQUViO1lBQ0Y7VUFDRjtRQUFDLEdBQ0U1RSxJQUFJLENBQ1I7TUFDSDtNQUNBLElBQUlBLElBQUksQ0FBQ2lCLElBQUksSUFBSSxPQUFPLElBQUksRUFBQTBCLE1BQUEsR0FBQTNDLElBQUksY0FBQTJDLE1BQUEsdUJBQUpBLE1BQUEsQ0FBTUcsVUFBVSxNQUFLLEtBQUssRUFBRTtRQUN0RDlDLElBQUksR0FBQUMsYUFBQTtVQUNGbUQsTUFBTSxFQUFFQSxDQUFDRSxLQUFLLEVBQUVJLE1BQU0sS0FBSztZQUN6QixJQUFJTyxLQUFLLENBQUNDLE9BQU8sQ0FBQ1IsTUFBTSxDQUFDMUQsSUFBSSxDQUFDYSxTQUFTLENBQUMsQ0FBQyxFQUFFO2NBQ3pDLE1BQU1zRCxLQUFLLEdBQUdULE1BQU0sQ0FBQzFELElBQUksQ0FBQ2EsU0FBUyxDQUFDO2NBQ3BDLElBQUlzRCxLQUFLLENBQUMvRCxNQUFNLElBQUksQ0FBQyxFQUFFO2dCQUFBLElBQUF5RSxRQUFBO2dCQUNyQixvQkFDRXhGLEtBQUEsQ0FBQWdGLGFBQUE7a0JBQUtTLFNBQVMsRUFBQztnQkFBd0IsSUFBQUQsUUFBQSxHQUNwQ1YsS0FBSyxDQUFDLENBQUMsQ0FBQyxjQUFBVSxRQUFBLHVCQUFSQSxRQUFBLENBQVVKLFFBQ1IsQ0FBQztjQUVWLENBQUMsTUFBTSxJQUFJTixLQUFLLENBQUMvRCxNQUFNLEdBQUcsQ0FBQyxFQUFFO2dCQUMzQixvQkFDRWYsS0FBQSxDQUFBZ0YsYUFBQSxDQUFDL0UsTUFBTTtrQkFBQzJCLElBQUksRUFBRSxNQUFPO2tCQUFDcUQsT0FBTyxFQUFFQSxDQUFBLEtBQU0sQ0FBQztnQkFBRSxHQUFDLDBCQUVqQyxDQUFDO2NBRWI7WUFDRjtVQUNGO1FBQUMsR0FDRXRFLElBQUksQ0FDUjtNQUNIO01BQ0EsT0FBT0EsSUFBSSxDQUFDOEMsVUFBVSxLQUFLLEtBQUssR0FBRzlDLElBQUksR0FBRyxJQUFJO0lBQ2hELENBQUMsQ0FBQyxDQUNENEMsTUFBTSxDQUFFbUMsTUFBTSxJQUFLQSxNQUFNLEtBQUssSUFBSSxDQUFDO0VBQ3hDO0VBRUEsTUFBTUMsZUFBZSxHQUFHMUMsVUFBVSxDQUFDTCxJQUFJLENBQUM7RUFDeEMsT0FBTytDLGVBQWU7RUFDdEI7O0VBRUE7QUFDRixDQUFDIn0=
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","names":["React","Button","nscfile","lodash","convertColumns","columns","_ref","searchForms","editorForms","forEach","item","temp","_objectSpread","width","children","length","search","show","props","searchProps","onChange","push","name","field","dataIndex","label","undefined","title","type","omit","labelCol","wrapperCol","rules","searchRules","editor","span","dictName","required","getText","text","_props$data","newText","data","i","value","getNewColumns","cloneDeep","converData","map","obj","_tempProp$data","_temp","_temp2","filter","child","columnShow","columnSearch","filterProps","tempProp","ellipsis","showTitle","render","renderStr","_text","_record","_index","eventOption","record","index","funcs","func","Function","res","Utils","Array","isArray","files","_files$","createElement","onClick","download","fileId","fileName","fileIds","downloadZip","join","_files$2","className","column","filteredColumns"],"sources":["../../../src/components/page/BasePage/utils.tsx"],"sourcesContent":["import React from 'react';\r\nimport Button from '../../base/button';\r\nimport nscfile from 'nsc-file'\r\nimport lodash from 'lodash'\r\nexport const convertColumns = (columns: any, { searchForms = [], editorForms = [] }: any) => {\r\n columns.forEach((item: any) => {\r\n let temp = { width: 100, ...item };\r\n if (temp.children && temp.children.length > 0) {\r\n convertColumns(temp.children, { searchForms, editorForms });\r\n } else {\r\n // Handle search form conversion\r\n if (temp.search === true || (typeof temp.search === 'object' && temp.search.show === true)) {\r\n let props = { ...(temp.props || {}) };\r\n const searchProps = typeof temp.search === 'object' ? { ...temp.search } : {};\r\n delete props.onChange;\r\n searchForms.push({\r\n name: temp.field || temp.dataIndex,\r\n label: (typeof temp.search === 'object' ? temp.search.label : undefined) || temp.title,\r\n type: temp.type,\r\n props: { ...props, ...lodash.omit(searchProps, ['label', 'labelCol', 'show', 'wrapperCol']) },\r\n labelCol: typeof temp.search === 'object' ? temp.search.labelCol : undefined,\r\n wrapperCol: typeof temp.search === 'object' ? temp.search.wrapperCol : undefined,\r\n rules: temp.searchRules || [],\r\n });\r\n }\r\n // Handle editor form conversion\r\n if (temp.editor !== false) {\r\n editorForms.push({\r\n name: temp.field || temp.dataIndex,\r\n label: temp.title,\r\n rules: temp.rules || [],\r\n type: temp.type,\r\n span: temp.span,\r\n dictName: temp.dictName,\r\n required: temp.required,\r\n props: { ...temp.props },\r\n });\r\n }\r\n }\r\n });\r\n\r\n return {\r\n searchForms,\r\n editorForms,\r\n };\r\n};\r\nconst getText = (props, text) => {\r\n let newText = text;\r\n if (props?.data && props?.data?.length > 0) {\r\n let data = props.data;\r\n for (let i = 0; i < data?.length; i++) {\r\n if (data[i].value == text) {\r\n newText = data[i].label;\r\n }\r\n }\r\n }\r\n return newText;\r\n}\r\nexport const getNewColumns = (columns: any, props: any) => {\r\n let data = lodash.cloneDeep(columns);\r\n\r\n function converData(data) {\r\n return data.map(obj => {\r\n let temp = { width: 150, ...obj }\r\n delete temp.search;\r\n delete temp.rules;\r\n delete temp.span;\r\n delete temp.required;\r\n if (temp.children) {\r\n temp.children = temp.children.filter(child => child.columnShow !== false);\r\n }\r\n if (temp.columnSearch) {\r\n temp.filterProps = {\r\n type: temp.type,\r\n props: temp.props,\r\n };\r\n }\r\n let tempProp = { ...temp.props };\r\n if (tempProp?.data && tempProp?.data?.length > 0) {\r\n temp = {\r\n ellipsis: { showTitle: false },\r\n render: (text: any) => {\r\n return getText(tempProp, text);\r\n },\r\n ...temp,\r\n };\r\n }\r\n delete temp.props;\r\n delete temp.props;\r\n if (temp.render && typeof temp.render == 'string') {\r\n let renderStr = temp.render\r\n temp = {\r\n ...temp,\r\n render: (_text, _record, _index) => {\r\n const eventOption = { text: _text, record: _record, index: _index, funcs: props.funcs }\r\n const func = new Function('eventOption,Utils', renderStr)\r\n const res = func(eventOption, props.Utils)\r\n return res\r\n }\r\n }\r\n }\r\n if (temp.type == \"Upload\" && temp?.columnShow !== false) {\r\n temp = {\r\n render: (_text, record) => {\r\n if (Array.isArray(record[temp.dataIndex])) {\r\n const files = record[temp.dataIndex];\r\n if (files.length == 1) {\r\n return (\r\n <Button\r\n type={\"link\"}\r\n onClick={() => {\r\n nscfile.download(files[0].fileId);\r\n }}\r\n >\r\n {files[0]?.fileName}\r\n </Button>\r\n );\r\n } else if (files.length > 1) {\r\n return (\r\n <Button\r\n type={\"link\"}\r\n onClick={() => {\r\n let fileIds = [] as any;\r\n files.map((item) => {\r\n fileIds.push(item.fileId);\r\n });\r\n nscfile.downloadZip(fileIds.join(\",\"));\r\n }}\r\n >\r\n {\"文件下载\"}\r\n </Button>\r\n );\r\n }\r\n }\r\n },\r\n ...temp,\r\n };\r\n }\r\n if (temp.type == \"Image\" && temp?.columnShow !== false) {\r\n temp = {\r\n render: (_text, record) => {\r\n if (Array.isArray(record[temp.dataIndex])) {\r\n const files = record[temp.dataIndex];\r\n if (files.length == 1) {\r\n return (\r\n <div className=\"nsc-basepage-table-img\">\r\n {files[0]?.fileName}\r\n </div>\r\n );\r\n } else if (files.length > 1) {\r\n return (\r\n <Button type={\"link\"} onClick={() => { }}>\r\n 图片查看\r\n </Button>\r\n );\r\n }\r\n }\r\n },\r\n ...temp,\r\n };\r\n }\r\n return temp.columnShow !== false ? temp : null;\r\n }).filter(column => column !== null);\r\n }\r\n\r\n const filteredColumns = converData(data);\r\n return filteredColumns\r\n // 使用map遍历树中的每个节点并应用修改函数\r\n\r\n // const newData = data.map(item=>)\r\n}\r\n"],"mappings":"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"}
1
+ {"version":3,"file":"utils.js","names":["React","Button","nscfile","lodash","convertColumns","columns","_ref","searchForms","editorForms","forEach","item","temp","_objectSpread","width","children","length","search","show","props","searchProps","onChange","push","name","field","dataIndex","label","undefined","title","type","omit","labelCol","wrapperCol","rules","searchRules","editor","span","dictName","required","hide","editorShow","getText","text","_props$data","newText","data","i","value","getNewColumns","cloneDeep","converData","map","obj","_tempProp$data","_temp","_temp2","filter","child","columnShow","columnSearch","filterProps","tempProp","ellipsis","showTitle","render","renderStr","_text","_record","_index","eventOption","record","index","funcs","func","Function","res","Utils","Array","isArray","files","_files$","createElement","onClick","download","fileId","fileName","fileIds","downloadZip","join","_files$2","className","column","filteredColumns"],"sources":["../../../src/components/page/BasePage/utils.tsx"],"sourcesContent":["import React from \"react\";\r\nimport Button from \"../../base/button\";\r\nimport nscfile from \"nsc-file\";\r\nimport lodash from \"lodash\";\r\nexport const convertColumns = (\r\n columns: any,\r\n { searchForms = [], editorForms = [] }: any\r\n) => {\r\n columns.forEach((item: any) => {\r\n let temp = { width: 100, ...item };\r\n if (temp.children && temp.children.length > 0) {\r\n convertColumns(temp.children, { searchForms, editorForms });\r\n } else {\r\n // Handle search form conversion\r\n if (\r\n temp.search === true ||\r\n (typeof temp.search === \"object\" && temp.search.show === true)\r\n ) {\r\n let props = { ...(temp.props || {}) };\r\n const searchProps =\r\n typeof temp.search === \"object\" ? { ...temp.search } : {};\r\n delete props.onChange;\r\n searchForms.push({\r\n name: temp.field || temp.dataIndex,\r\n label:\r\n (typeof temp.search === \"object\" ? temp.search.label : undefined) ||\r\n temp.title,\r\n type: temp.type,\r\n props: {\r\n ...props,\r\n ...lodash.omit(searchProps, [\r\n \"label\",\r\n \"labelCol\",\r\n \"show\",\r\n \"wrapperCol\",\r\n ]),\r\n },\r\n labelCol:\r\n typeof temp.search === \"object\" ? temp.search.labelCol : undefined,\r\n wrapperCol:\r\n typeof temp.search === \"object\"\r\n ? temp.search.wrapperCol\r\n : undefined,\r\n rules: temp.searchRules || [],\r\n });\r\n }\r\n // Handle editor form conversion\r\n if (temp.editor !== false) {\r\n editorForms.push({\r\n name: temp.field || temp.dataIndex,\r\n label: temp.title,\r\n rules: temp.rules || [],\r\n type: temp.type,\r\n span: temp.span,\r\n dictName: temp.dictName,\r\n required: temp.required,\r\n hide: temp.editorShow === false ? true : false,\r\n props: { ...temp.props },\r\n });\r\n }\r\n }\r\n });\r\n\r\n return {\r\n searchForms,\r\n editorForms,\r\n };\r\n};\r\nconst getText = (props, text) => {\r\n let newText = text;\r\n if (props?.data && props?.data?.length > 0) {\r\n let data = props.data;\r\n for (let i = 0; i < data?.length; i++) {\r\n if (data[i].value == text) {\r\n newText = data[i].label;\r\n }\r\n }\r\n }\r\n return newText;\r\n};\r\nexport const getNewColumns = (columns: any, props: any) => {\r\n let data = lodash.cloneDeep(columns);\r\n\r\n function converData(data) {\r\n return data\r\n .map((obj) => {\r\n let temp = { width: 150, ...obj };\r\n delete temp.search;\r\n delete temp.rules;\r\n delete temp.span;\r\n delete temp.required;\r\n if (temp.children) {\r\n temp.children = temp.children.filter(\r\n (child) => child.columnShow !== false\r\n );\r\n }\r\n if (temp.columnSearch) {\r\n temp.filterProps = {\r\n type: temp.type,\r\n props: temp.props,\r\n };\r\n }\r\n let tempProp = { ...temp.props };\r\n if (tempProp?.data && tempProp?.data?.length > 0) {\r\n temp = {\r\n ellipsis: { showTitle: false },\r\n render: (text: any) => {\r\n return getText(tempProp, text);\r\n },\r\n ...temp,\r\n };\r\n }\r\n delete temp.props;\r\n delete temp.props;\r\n if (temp.render && typeof temp.render == \"string\") {\r\n let renderStr = temp.render;\r\n temp = {\r\n ...temp,\r\n render: (_text, _record, _index) => {\r\n const eventOption = {\r\n text: _text,\r\n record: _record,\r\n index: _index,\r\n funcs: props.funcs,\r\n };\r\n const func = new Function(\"eventOption,Utils\", renderStr);\r\n const res = func(eventOption, props.Utils);\r\n return res;\r\n },\r\n };\r\n }\r\n if (temp.type == \"Upload\" && temp?.columnShow !== false) {\r\n temp = {\r\n render: (_text, record) => {\r\n if (Array.isArray(record[temp.dataIndex])) {\r\n const files = record[temp.dataIndex];\r\n if (files.length == 1) {\r\n return (\r\n <Button\r\n type={\"link\"}\r\n onClick={() => {\r\n nscfile.download(files[0].fileId);\r\n }}\r\n >\r\n {files[0]?.fileName}\r\n </Button>\r\n );\r\n } else if (files.length > 1) {\r\n return (\r\n <Button\r\n type={\"link\"}\r\n onClick={() => {\r\n let fileIds = [] as any;\r\n files.map((item) => {\r\n fileIds.push(item.fileId);\r\n });\r\n nscfile.downloadZip(fileIds.join(\",\"));\r\n }}\r\n >\r\n {\"文件下载\"}\r\n </Button>\r\n );\r\n }\r\n }\r\n },\r\n ...temp,\r\n };\r\n }\r\n if (temp.type == \"Image\" && temp?.columnShow !== false) {\r\n temp = {\r\n render: (_text, record) => {\r\n if (Array.isArray(record[temp.dataIndex])) {\r\n const files = record[temp.dataIndex];\r\n if (files.length == 1) {\r\n return (\r\n <div className=\"nsc-basepage-table-img\">\r\n {files[0]?.fileName}\r\n </div>\r\n );\r\n } else if (files.length > 1) {\r\n return (\r\n <Button type={\"link\"} onClick={() => {}}>\r\n 图片查看\r\n </Button>\r\n );\r\n }\r\n }\r\n },\r\n ...temp,\r\n };\r\n }\r\n return temp.columnShow !== false ? temp : null;\r\n })\r\n .filter((column) => column !== null);\r\n }\r\n\r\n const filteredColumns = converData(data);\r\n return filteredColumns;\r\n // 使用map遍历树中的每个节点并应用修改函数\r\n\r\n // const newData = data.map(item=>)\r\n};\r\n"],"mappings":";;;;;AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,OAAOC,MAAM,MAAM,mBAAmB;AACtC,OAAOC,OAAO,MAAM,UAAU;AAC9B,OAAOC,MAAM,MAAM,QAAQ;AAC3B,OAAO,MAAMC,cAAc,GAAGA,CAC5BC,OAAY,EAAAC,IAAA,KAET;EAAA,IADH;IAAEC,WAAW,GAAG,EAAE;IAAEC,WAAW,GAAG;EAAQ,CAAC,GAAAF,IAAA;EAE3CD,OAAO,CAACI,OAAO,CAAEC,IAAS,IAAK;IAC7B,IAAIC,IAAI,GAAAC,aAAA;MAAKC,KAAK,EAAE;IAAG,GAAKH,IAAI,CAAE;IAClC,IAAIC,IAAI,CAACG,QAAQ,IAAIH,IAAI,CAACG,QAAQ,CAACC,MAAM,GAAG,CAAC,EAAE;MAC7CX,cAAc,CAACO,IAAI,CAACG,QAAQ,EAAE;QAAEP,WAAW;QAAEC;MAAY,CAAC,CAAC;IAC7D,CAAC,MAAM;MACL;MACA,IACEG,IAAI,CAACK,MAAM,KAAK,IAAI,IACnB,OAAOL,IAAI,CAACK,MAAM,KAAK,QAAQ,IAAIL,IAAI,CAACK,MAAM,CAACC,IAAI,KAAK,IAAK,EAC9D;QACA,IAAIC,KAAK,GAAAN,aAAA,KAASD,IAAI,CAACO,KAAK,IAAI,CAAC,CAAC,CAAG;QACrC,MAAMC,WAAW,GACf,OAAOR,IAAI,CAACK,MAAM,KAAK,QAAQ,GAAAJ,aAAA,KAAQD,IAAI,CAACK,MAAM,IAAK,CAAC,CAAC;QAC3D,OAAOE,KAAK,CAACE,QAAQ;QACrBb,WAAW,CAACc,IAAI,CAAC;UACfC,IAAI,EAAEX,IAAI,CAACY,KAAK,IAAIZ,IAAI,CAACa,SAAS;UAClCC,KAAK,EACH,CAAC,OAAOd,IAAI,CAACK,MAAM,KAAK,QAAQ,GAAGL,IAAI,CAACK,MAAM,CAACS,KAAK,GAAGC,SAAS,KAChEf,IAAI,CAACgB,KAAK;UACZC,IAAI,EAAEjB,IAAI,CAACiB,IAAI;UACfV,KAAK,EAAAN,aAAA,CAAAA,aAAA,KACAM,KAAK,GACLf,MAAM,CAAC0B,IAAI,CAACV,WAAW,EAAE,CAC1B,OAAO,EACP,UAAU,EACV,MAAM,EACN,YAAY,CACb,CAAC,CACH;UACDW,QAAQ,EACN,OAAOnB,IAAI,CAACK,MAAM,KAAK,QAAQ,GAAGL,IAAI,CAACK,MAAM,CAACc,QAAQ,GAAGJ,SAAS;UACpEK,UAAU,EACR,OAAOpB,IAAI,CAACK,MAAM,KAAK,QAAQ,GAC3BL,IAAI,CAACK,MAAM,CAACe,UAAU,GACtBL,SAAS;UACfM,KAAK,EAAErB,IAAI,CAACsB,WAAW,IAAI;QAC7B,CAAC,CAAC;MACJ;MACA;MACA,IAAItB,IAAI,CAACuB,MAAM,KAAK,KAAK,EAAE;QACzB1B,WAAW,CAACa,IAAI,CAAC;UACfC,IAAI,EAAEX,IAAI,CAACY,KAAK,IAAIZ,IAAI,CAACa,SAAS;UAClCC,KAAK,EAAEd,IAAI,CAACgB,KAAK;UACjBK,KAAK,EAAErB,IAAI,CAACqB,KAAK,IAAI,EAAE;UACvBJ,IAAI,EAAEjB,IAAI,CAACiB,IAAI;UACfO,IAAI,EAAExB,IAAI,CAACwB,IAAI;UACfC,QAAQ,EAAEzB,IAAI,CAACyB,QAAQ;UACvBC,QAAQ,EAAE1B,IAAI,CAAC0B,QAAQ;UACvBC,IAAI,EAAE3B,IAAI,CAAC4B,UAAU,KAAK,KAAK,GAAG,IAAI,GAAG,KAAK;UAC9CrB,KAAK,EAAAN,aAAA,KAAOD,IAAI,CAACO,KAAK;QACxB,CAAC,CAAC;MACJ;IACF;EACF,CAAC,CAAC;EAEF,OAAO;IACLX,WAAW;IACXC;EACF,CAAC;AACH,CAAC;AACD,MAAMgC,OAAO,GAAGA,CAACtB,KAAK,EAAEuB,IAAI,KAAK;EAAA,IAAAC,WAAA;EAC/B,IAAIC,OAAO,GAAGF,IAAI;EAClB,IAAIvB,KAAK,aAALA,KAAK,eAALA,KAAK,CAAE0B,IAAI,IAAI,CAAA1B,KAAK,aAALA,KAAK,gBAAAwB,WAAA,GAALxB,KAAK,CAAE0B,IAAI,cAAAF,WAAA,uBAAXA,WAAA,CAAa3B,MAAM,IAAG,CAAC,EAAE;IAC1C,IAAI6B,IAAI,GAAG1B,KAAK,CAAC0B,IAAI;IACrB,KAAK,IAAIC,CAAC,GAAG,CAAC,EAAEA,CAAC,IAAGD,IAAI,aAAJA,IAAI,uBAAJA,IAAI,CAAE7B,MAAM,GAAE8B,CAAC,EAAE,EAAE;MACrC,IAAID,IAAI,CAACC,CAAC,CAAC,CAACC,KAAK,IAAIL,IAAI,EAAE;QACzBE,OAAO,GAAGC,IAAI,CAACC,CAAC,CAAC,CAACpB,KAAK;MACzB;IACF;EACF;EACA,OAAOkB,OAAO;AAChB,CAAC;AACD,OAAO,MAAMI,aAAa,GAAGA,CAAC1C,OAAY,EAAEa,KAAU,KAAK;EACzD,IAAI0B,IAAI,GAAGzC,MAAM,CAAC6C,SAAS,CAAC3C,OAAO,CAAC;EAEpC,SAAS4C,UAAUA,CAACL,IAAI,EAAE;IACxB,OAAOA,IAAI,CACRM,GAAG,CAAEC,GAAG,IAAK;MAAA,IAAAC,cAAA,EAAAC,KAAA,EAAAC,MAAA;MACZ,IAAI3C,IAAI,GAAAC,aAAA;QAAKC,KAAK,EAAE;MAAG,GAAKsC,GAAG,CAAE;MACjC,OAAOxC,IAAI,CAACK,MAAM;MAClB,OAAOL,IAAI,CAACqB,KAAK;MACjB,OAAOrB,IAAI,CAACwB,IAAI;MAChB,OAAOxB,IAAI,CAAC0B,QAAQ;MACpB,IAAI1B,IAAI,CAACG,QAAQ,EAAE;QACjBH,IAAI,CAACG,QAAQ,GAAGH,IAAI,CAACG,QAAQ,CAACyC,MAAM,CACjCC,KAAK,IAAKA,KAAK,CAACC,UAAU,KAAK,KAClC,CAAC;MACH;MACA,IAAI9C,IAAI,CAAC+C,YAAY,EAAE;QACrB/C,IAAI,CAACgD,WAAW,GAAG;UACjB/B,IAAI,EAAEjB,IAAI,CAACiB,IAAI;UACfV,KAAK,EAAEP,IAAI,CAACO;QACd,CAAC;MACH;MACA,IAAI0C,QAAQ,GAAAhD,aAAA,KAAQD,IAAI,CAACO,KAAK,CAAE;MAChC,IAAI0C,QAAQ,aAARA,QAAQ,eAARA,QAAQ,CAAEhB,IAAI,IAAI,CAAAgB,QAAQ,aAARA,QAAQ,gBAAAR,cAAA,GAARQ,QAAQ,CAAEhB,IAAI,cAAAQ,cAAA,uBAAdA,cAAA,CAAgBrC,MAAM,IAAG,CAAC,EAAE;QAChDJ,IAAI,GAAAC,aAAA;UACFiD,QAAQ,EAAE;YAAEC,SAAS,EAAE;UAAM,CAAC;UAC9BC,MAAM,EAAGtB,IAAS,IAAK;YACrB,OAAOD,OAAO,CAACoB,QAAQ,EAAEnB,IAAI,CAAC;UAChC;QAAC,GACE9B,IAAI,CACR;MACH;MACA,OAAOA,IAAI,CAACO,KAAK;MACjB,OAAOP,IAAI,CAACO,KAAK;MACjB,IAAIP,IAAI,CAACoD,MAAM,IAAI,OAAOpD,IAAI,CAACoD,MAAM,IAAI,QAAQ,EAAE;QACjD,IAAIC,SAAS,GAAGrD,IAAI,CAACoD,MAAM;QAC3BpD,IAAI,GAAAC,aAAA,CAAAA,aAAA,KACCD,IAAI;UACPoD,MAAM,EAAEA,CAACE,KAAK,EAAEC,OAAO,EAAEC,MAAM,KAAK;YAClC,MAAMC,WAAW,GAAG;cAClB3B,IAAI,EAAEwB,KAAK;cACXI,MAAM,EAAEH,OAAO;cACfI,KAAK,EAAEH,MAAM;cACbI,KAAK,EAAErD,KAAK,CAACqD;YACf,CAAC;YACD,MAAMC,IAAI,GAAG,IAAIC,QAAQ,CAAC,mBAAmB,EAAET,SAAS,CAAC;YACzD,MAAMU,GAAG,GAAGF,IAAI,CAACJ,WAAW,EAAElD,KAAK,CAACyD,KAAK,CAAC;YAC1C,OAAOD,GAAG;UACZ;QAAC,EACF;MACH;MACA,IAAI/D,IAAI,CAACiB,IAAI,IAAI,QAAQ,IAAI,EAAAyB,KAAA,GAAA1C,IAAI,cAAA0C,KAAA,uBAAJA,KAAA,CAAMI,UAAU,MAAK,KAAK,EAAE;QACvD9C,IAAI,GAAAC,aAAA;UACFmD,MAAM,EAAEA,CAACE,KAAK,EAAEI,MAAM,KAAK;YACzB,IAAIO,KAAK,CAACC,OAAO,CAACR,MAAM,CAAC1D,IAAI,CAACa,SAAS,CAAC,CAAC,EAAE;cACzC,MAAMsD,KAAK,GAAGT,MAAM,CAAC1D,IAAI,CAACa,SAAS,CAAC;cACpC,IAAIsD,KAAK,CAAC/D,MAAM,IAAI,CAAC,EAAE;gBAAA,IAAAgE,OAAA;gBACrB,oBACE/E,KAAA,CAAAgF,aAAA,CAAC/E,MAAM;kBACL2B,IAAI,EAAE,MAAO;kBACbqD,OAAO,EAAEA,CAAA,KAAM;oBACb/E,OAAO,CAACgF,QAAQ,CAACJ,KAAK,CAAC,CAAC,CAAC,CAACK,MAAM,CAAC;kBACnC;gBAAE,IAAAJ,OAAA,GAEDD,KAAK,CAAC,CAAC,CAAC,cAAAC,OAAA,uBAARA,OAAA,CAAUK,QACL,CAAC;cAEb,CAAC,MAAM,IAAIN,KAAK,CAAC/D,MAAM,GAAG,CAAC,EAAE;gBAC3B,oBACEf,KAAA,CAAAgF,aAAA,CAAC/E,MAAM;kBACL2B,IAAI,EAAE,MAAO;kBACbqD,OAAO,EAAEA,CAAA,KAAM;oBACb,IAAII,OAAO,GAAG,EAAS;oBACvBP,KAAK,CAAC5B,GAAG,CAAExC,IAAI,IAAK;sBAClB2E,OAAO,CAAChE,IAAI,CAACX,IAAI,CAACyE,MAAM,CAAC;oBAC3B,CAAC,CAAC;oBACFjF,OAAO,CAACoF,WAAW,CAACD,OAAO,CAACE,IAAI,CAAC,GAAG,CAAC,CAAC;kBACxC;gBAAE,GAED,MACK,CAAC;cAEb;YACF;UACF;QAAC,GACE5E,IAAI,CACR;MACH;MACA,IAAIA,IAAI,CAACiB,IAAI,IAAI,OAAO,IAAI,EAAA0B,MAAA,GAAA3C,IAAI,cAAA2C,MAAA,uBAAJA,MAAA,CAAMG,UAAU,MAAK,KAAK,EAAE;QACtD9C,IAAI,GAAAC,aAAA;UACFmD,MAAM,EAAEA,CAACE,KAAK,EAAEI,MAAM,KAAK;YACzB,IAAIO,KAAK,CAACC,OAAO,CAACR,MAAM,CAAC1D,IAAI,CAACa,SAAS,CAAC,CAAC,EAAE;cACzC,MAAMsD,KAAK,GAAGT,MAAM,CAAC1D,IAAI,CAACa,SAAS,CAAC;cACpC,IAAIsD,KAAK,CAAC/D,MAAM,IAAI,CAAC,EAAE;gBAAA,IAAAyE,QAAA;gBACrB,oBACExF,KAAA,CAAAgF,aAAA;kBAAKS,SAAS,EAAC;gBAAwB,IAAAD,QAAA,GACpCV,KAAK,CAAC,CAAC,CAAC,cAAAU,QAAA,uBAARA,QAAA,CAAUJ,QACR,CAAC;cAEV,CAAC,MAAM,IAAIN,KAAK,CAAC/D,MAAM,GAAG,CAAC,EAAE;gBAC3B,oBACEf,KAAA,CAAAgF,aAAA,CAAC/E,MAAM;kBAAC2B,IAAI,EAAE,MAAO;kBAACqD,OAAO,EAAEA,CAAA,KAAM,CAAC;gBAAE,GAAC,0BAEjC,CAAC;cAEb;YACF;UACF;QAAC,GACEtE,IAAI,CACR;MACH;MACA,OAAOA,IAAI,CAAC8C,UAAU,KAAK,KAAK,GAAG9C,IAAI,GAAG,IAAI;IAChD,CAAC,CAAC,CACD4C,MAAM,CAAEmC,MAAM,IAAKA,MAAM,KAAK,IAAI,CAAC;EACxC;EAEA,MAAMC,eAAe,GAAG1C,UAAU,CAACL,IAAI,CAAC;EACxC,OAAO+C,eAAe;EACtB;;EAEA;AACF,CAAC"}