@jiaozhiye/qm-design-react 1.5.7 → 1.5.9

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/lib/index.esm.js CHANGED
@@ -1,3 +1,3 @@
1
1
  import*as React from"react";import React__default,{createContext,Component,useLayoutEffect as useLayoutEffect$1,useEffect,useRef,createRef,forwardRef,useImperativeHandle,useState}from"react";import*as PropTypes from"prop-types";import PropTypes__default from"prop-types";import dayjs from"dayjs";import"dayjs/locale/zh-cn";import localeData from"dayjs/plugin/localeData";import advancedFormat from"dayjs/plugin/advancedFormat";import customParseFormat from"dayjs/plugin/customParseFormat";import quarterOfYear from"dayjs/plugin/quarterOfYear";import weekOfYear from"dayjs/plugin/weekOfYear";import{ConfigProvider,Button,Popconfirm,Space,Empty,Spin,message,Tabs,Drawer,Modal,Checkbox,Dropdown,Input,Form,Row,Col,InputNumber as InputNumber$1,Select,Rate,Radio,Switch,Tag,TreeSelect,Cascader,notification,Tooltip,Upload,Tree,Menu,Pagination,Slider}from"antd";export{Affix,Alert,Anchor,AutoComplete,Avatar,BackTop,Badge,Breadcrumb,Button,Card,Carousel,Cascader,Checkbox,Col,Collapse,Comment,ConfigProvider,Descriptions,Divider,Drawer,Dropdown,Empty,Form,Grid,Image,Input,InputNumber,Layout,List,Mentions,Menu,Modal,PageHeader,Pagination,Popconfirm,Popover,Progress,Radio,Rate,Result,Row,Select,Skeleton,Slider,Space,Spin,Statistic,Steps,Switch,Tabs,Tag,Timeline,Tooltip,Transfer,Tree,TreeSelect,Typography,Upload,message,notification}from"antd";import weekday from"dayjs/plugin/weekday";import weekYear from"dayjs/plugin/weekYear";import generateCalendar from"antd/es/calendar/generateCalendar";import"antd/es/calendar/style";import generatePicker from"antd/es/date-picker/generatePicker";import"antd/es/date-picker/style/index";import zhCN_antd from"antd/lib/locale/zh_CN";import enGB_antd from"antd/lib/locale/en_GB";import omit from"omit.js";import{isArray as isArray$4,isPlainObject,isNumber,isFunction as isFunction$4,isString,throttle,isUndefined,xor,isEqual as isEqual$1,isRegExp,merge,get,uniqBy,intersection,debounce,set,transform,map,groupBy,flatten,spread,mergeWith,isDate as isDate$2,omitBy,sumBy,maxBy,minBy,pickBy,intersectionWith}from"lodash-es";import classNames from"classnames";import{UpOutlined,DownOutlined,DownloadOutlined,FullscreenExitOutlined,FullscreenOutlined,HolderOutlined,UnorderedListOutlined,SearchOutlined,CheckOutlined,CloseOutlined,ExclamationCircleOutlined,ReloadOutlined,UploadOutlined,ZoomInOutlined,ZoomOutOutlined,RotateRightOutlined,RotateLeftOutlined,PlusOutlined,InfoCircleFilled,PrinterOutlined,ImportOutlined,SettingOutlined,CopyOutlined,CheckSquareOutlined,CloseCircleOutlined,MonitorOutlined,PieChartOutlined,FunnelPlotOutlined,AppstoreAddOutlined,StepBackwardOutlined,StepForwardOutlined,InfoCircleOutlined,ClearOutlined}from"@ant-design/icons";import ReactDOM from"react-dom";import{isMemo}from"react-is";import Draggable from"react-draggable";import CountUp from"react-countup";import axios from"axios";import addEventListener from"add-dom-event-listener";import scrollIntoView from"scroll-into-view-if-needed";import memoize from"memoize-one";import ResizeObserver from"resize-observer-polyfill";import Cropper from"cropperjs";import Big from"big.js";import copy from"copy-to-clipboard";import localforage from"localforage";import ExcelJS from"exceljs";import{ReactSortable}from"react-sortablejs";import chinaData from"china-area-data";const ConfigContext=createContext({locale:"zh-cn",size:"middle"});var zhCN_qm={name:"zh-cn",qm:{button:{confirmPrompt:"提示",confirmTitle:"确认执行删除吗?"},divider:{collect:"收起",spread:"展开"},dialog:{fullScreen:"全屏",cancelFullScreen:"取消全屏",close:"关 闭",confirm:"确 定",cancel:"取 消"},form:{search:"搜 索",reset:"重 置",save:"保 存",spread:"展开",collect:"收起",trueText:"是",falseText:"否",draggable:"拖动排序",requiredTips:"不能为空",searchHelperTips:"搜索帮助正在加载值",inputPlaceholder:"请输入...",selectPlaceholder:"请选择...",treePlaceholder:"树节点过滤",rangeInputNumberPlaceholder:["开始值","结束值"],rangeSearchHelper:["起始位置","结束位置"],datePlaceholder:"选择日期",timePlaceholder:"选择时间",weekPlaceholder:"选择周",monthPlaceholder:"选择月",quarterPlaceholder:"选择季度",yearPlaceholder:"选择年",daterangePlaceholder:["开始日期","结束日期"],timerangePlaceholder:["开始时间","结束时间"],monthrangePlaceholder:["开始月份","结束月份"],yearrangePlaceholder:["开始年份","结束年份"],datePickers:["今天","昨天","一周前","一个月前"],dateRangePickers:["最近一周","最近一个月","最近三个月","最近六个月"],citySelectType:["按省份","按城市"],regionSelectLabel:["省","市","区","街道"],validatePrompt:"表单校验提示"},clipboard:{success:"复制成功",error:"复制失败"},download:{text:"下载",success:"文件下载成功",error:"文件下载失败!"},upload:{tooltip:"只能上传 {type} 格式",notType:"不支持的文件类型 {type}",sizeLimit:"大小不能超过 {size}M",uploadError:"文件上传失败!",downError:"文件下载失败!",text:"点击上传"},uploadCropper:{dragableText:"拖放或点击",tooltip:"只能上传 {type} 格式的图片",preview:"图片预览",cropper:"图片裁剪",uploadError:"图片上传失败!",downError:"图片下载失败!",text:"上传图片",zoomIn:"放大",zoomOut:"缩小",rotatePlus:"顺时针",rotateSubtract:"逆时针"},print:{preview:"打印预览",pageSetting:"页面设置",printError:"打印失败!",exportError:"导出失败!",defaultPrinter:"默认打印机",laserPrinter:"激光打印机",stylusPrinter:"针式打印机",printer:"打印机",type:"类型",copies:"份数",printPage:["打印第","几页"],setting:"设置",export:"导出",print:"打印",scale:"缩放",paper:"纸张",pageNumber:"页码",pagination:"第{currentPage}页 / 共{totalPage}页",setPanel:{printParameter:"打印参数",pagerType:"纸张类型",carbonPaper:"三联复写纸(针式)",printDirection:"打印方向",vertical:"纵向",horizontal:"横向",doublePrint:"双面打印",autoDoublePrint:"自动双面打印",manualDoublePrint:"手动双面打印",fixedLogo:"固定Logo",printMargin:"打印边距",leftMargin:"左边距",rightMargin:"右边距",topMargin:"上边距",bottomMargin:"下边距",sizeUnit:"厘米",noEmpty:"不能为空"}},split:{resize:"拖动改变大小"},searchHelper:{text:"搜索帮助",orderIndex:"序号",rangeStartTip:"起始位置不能大于结束位置",rangeEndTip:"结束位置不能小于起始位置"},table:{config:{selectionText:"选择",summaryText:"合计",copyText:"复制",emptyText:"暂无数据..."},alert:{total:"共 {total} 条",selected:"已选择 {total} 项",clear:"清空"},selection:{all:"全选所有",invert:"反选所有",clear:"清空所有",currentPage:"当前页全选"},columnFilter:{text:"列定义",reset:"重置",draggable:"拖动排序",fixedLeft:"固定左侧",fixedRight:"固定右侧",cancelFixed:"取消固定"},editable:{inputPlaceholder:"请输入",selectPlaceholder:"请选择",datePlaceholder:"选择日期",datetimePlaceholder:"选择时间"},sorter:{text:"排序",asc:"升序",desc:"降序"},filter:{search:"搜 索",reset:"重 置",searchText:"搜索{text}",searchAreaText:"搜索{text},用逗号隔开",gtPlaceholder:"大于",ltPlaceholder:"小于",eqPlaceholder:"等于",neqPlaceholder:"不等于",text:"筛选"},screen:{full:"全屏",cancelFull:"取消全屏"},import:{text:"导 入",textNoSpace:"导入",success:"成功导入 {total} 条记录",error:"导入失败,请检查字段名和数据格式是否正确",settingTitle:"导入设置",importType:"导入模式",insertPos:"插入位置",fillText:"新增",addText:"追加",insertText:"插入"},export:{text:"导 出",textNoSpace:"导出",closeButton:"关 闭",settingTitle:"导出设置",fileName:"文件名",fileType:"文件类型",sheetName:"标题",all:"全部",selected:"选中",custom:"自定义",footSummation:"底部合计",useStyle:"使用样式",warnText:"暂无表格数据或正在导出"},clipboard:{text:"粘 贴",textNoSpace:"粘贴",success:"成功粘贴 {total} 条记录",settingTitle:"粘贴设置",rowIndex:"粘贴起始行",colIndex:"粘贴起始列",content:"粘贴内容",placeholder:"请在此处 ctrl+v 粘贴数据",supportText:"说明:只支持粘贴 Excel 数据"},mergeCell:{cancel:"恢复",confirm:"合并"},print:{text:"打印"},refresh:{text:"刷新"},toolbox:{text:"工具箱"},selectCollection:{text:"行选集合",settingTitle:"行选列表",closeButton:"关 闭"},groupSummary:{text:"汇总",settingTitle:"汇总设置",savedSetting:"保存的汇总设置",saveButton:"保 存",closeButton:"关 闭",confirmButton:"显示汇总",removeText:"移除",configText:"配置名称",resultText:"汇总结果",sumText:"列值汇总",maxText:"列最大值",minText:"列最小值",avgText:"列平均值",countText:"条数汇总",operation:"操作",index:"序号",groupItem:"分组项",summaryColumn:"汇总列",calcFormula:"计算公式"},highSearch:{text:"高级检索",settingTitle:"高级检索设置",searchButton:"开始检索",closeButton:"关 闭",removeText:"移除",andText:"并且",orText:"或者",gtText:"大于",ltText:"小于",gteText:"大于等于",lteText:"小于等于",eqText:"等于",neqText:"不等于",inText:"包含",ninText:"不包含",likeText:"模糊匹配",configText:"配置名称",saveButton:"保 存",savedSetting:"保存的高级检索设置",operation:"操作",bracket:"括号",fieldName:"字段名",fieldType:"字段类型",expression:"运算",condition:"条件值",logic:"逻辑",noEmpty:"字段名不能为空"},fastSearch:{text:"数据定位查找",settingTitle:"数据定位查找设置",closeButton:"关 闭",savedSetting:"保存的数据查找设置",queryCondition:"请输入查询条件",notMatch:"没有符合条件的记录!",toTheEnd:"已查找到表格末尾,是否从头开始查找?",toStart:"已查找到表格开始,是否从末尾开始查找",tabPanes:["查找条件","更多条件"],matchCase:"大小写匹配",matchFullchar:"全字符匹配",clear:"清空条件",queryPrev:"查找上一个",queryNext:"查找下一个"}}}};let lang=zhCN_qm;function template(e,t){return e&&t?e.replace(/\{(\w+)\}/g,((e,a)=>t[a])):e}const t=function(){for(var e=arguments.length,t=new Array(e),a=0;a<e;a++)t[a]=arguments[a];const[r,l]=t;let n;const i=r.split(".");let o=lang;for(let e=0,t=i.length;e<t;e++){if(n=o[i[e]],e===t-1)return template(n,l);if(!n)return"";o=n}return""},setLocale=e=>{lang=e||lang,lang.name&&dayjs.locale(lang.name)};class QmDesignError extends Error{constructor(e){super(e),this.name="QmDesignError"}}function throwError(e,t){throw new QmDesignError(`[${e}] ${t}`)}function warn(e,t){console.warn(new QmDesignError(`[${e}] ${t}`))}const isValidWidthUnit=e=>"number"==typeof e||void 0===e||(["px","rem","em","vw","vh","%"].some((t=>e.endsWith(t)))||e.startsWith("calc")),isValidComponentSize=e=>["","small","middle","large"].includes(e);dayjs.extend(localeData),dayjs.extend(advancedFormat),dayjs.extend(customParseFormat),dayjs.extend(quarterOfYear),dayjs.extend(weekOfYear);var warned={};function note(e,t){e||void 0===console||console.warn("Note: ".concat(t))}function call(e,t,a){t||warned[a]||(e(!1,a),warned[a]=!0)}function noteOnce(e,t){call(note,e,t)}dayjs.extend(customParseFormat),dayjs.extend(advancedFormat),dayjs.extend(weekday),dayjs.extend(localeData),dayjs.extend(weekOfYear),dayjs.extend(weekYear),dayjs.extend((function(e,t){var a=t.prototype,r=a.format;a.format=function(e){var t=(e||"").replace("Wo","wo");return r.bind(this)(t)}}));var localeMap={bn_BD:"bn-bd",by_BY:"be",en_GB:"en-gb",en_US:"en",fr_BE:"fr",fr_CA:"fr-ca",hy_AM:"hy-am",kmr_IQ:"ku",nl_BE:"nl-be",pt_BR:"pt-br",zh_CN:"zh-cn",zh_HK:"zh-hk",zh_TW:"zh-tw"},parseLocale=function(e){return localeMap[e]||e.split("_")[0]},parseNoMatchNotice=function(){noteOnce(!1,"Not match any format. Please help to fire a issue about this.")},generateConfig={getNow:function(){return dayjs()},getFixedDate:function(e){return dayjs(e,["YYYY-M-DD","YYYY-MM-DD"])},getEndDate:function(e){return e.endOf("month")},getWeekDay:function(e){var t=e.locale("en");return t.weekday()+t.localeData().firstDayOfWeek()},getYear:function(e){return e.year()},getMonth:function(e){return e.month()},getDate:function(e){return e.date()},getHour:function(e){return e.hour()},getMinute:function(e){return e.minute()},getSecond:function(e){return e.second()},addYear:function(e,t){return e.add(t,"year")},addMonth:function(e,t){return e.add(t,"month")},addDate:function(e,t){return e.add(t,"day")},setYear:function(e,t){return e.year(t)},setMonth:function(e,t){return e.month(t)},setDate:function(e,t){return e.date(t)},setHour:function(e,t){return e.hour(t)},setMinute:function(e,t){return e.minute(t)},setSecond:function(e,t){return e.second(t)},isAfter:function(e,t){return e.isAfter(t)},isValidate:function(e){return e.isValid()},locale:{getWeekFirstDay:function(e){return dayjs().locale(parseLocale(e)).localeData().firstDayOfWeek()},getWeekFirstDate:function(e,t){return t.locale(parseLocale(e)).weekday(0)},getWeek:function(e,t){return t.locale(parseLocale(e)).week()},getShortWeekDays:function(e){return dayjs().locale(parseLocale(e)).localeData().weekdaysMin()},getShortMonths:function(e){return dayjs().locale(parseLocale(e)).localeData().monthsShort()},format:function(e,t,a){return t.locale(parseLocale(e)).format(a)},parse:function(e,t,a){for(var r=parseLocale(e),l=0;l<a.length;l+=1){var n=a[l],i=t;if(n.includes("wo")||n.includes("Wo")){for(var o=i.split("-")[0],s=i.split("-")[1],c=dayjs(o,"YYYY").startOf("year").locale(r),d=0;d<=52;d+=1){var u=c.add(d,"week");if(u.format("Wo")===s)return u}return parseNoMatchNotice(),null}var p=dayjs(i,n).locale(r);if(p.isValid())return p}return t&&parseNoMatchNotice(),null}}};const Calendar=generateCalendar(generateConfig),DatePicker=generatePicker(generateConfig);function _extends$1(){return _extends$1=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var a=arguments[t];for(var r in a)Object.prototype.hasOwnProperty.call(a,r)&&(e[r]=a[r])}return e},_extends$1.apply(this,arguments)}const TimePicker=React.forwardRef(((e,t)=>React.createElement(DatePicker,_extends$1({},e,{picker:"time",mode:void 0,ref:t}))));TimePicker.displayName="TimePicker";const RangePicker=React.forwardRef(((e,t)=>React.createElement(DatePicker.RangePicker,_extends$1({},e,{picker:"time",mode:void 0,ref:t}))));RangePicker.displayName="RangePicker",TimePicker.RangePicker=RangePicker;var en_qm={name:"en",qm:{button:{confirmPrompt:"Prompt",confirmTitle:"Are you sure you want to delete it?"},divider:{collect:"Collapse",spread:"Expand"},dialog:{fullScreen:"Full Screen",cancelFullScreen:"Cancel Full Screen",close:"Close",confirm:"Confirm",cancel:"Cancel"},form:{search:"Search",reset:"Reset",save:"Save",spread:"Expand",collect:"Collapse",trueText:"Yes",falseText:"No",draggable:"Drag and sort",requiredTips:" is required",searchHelperTips:"Search Helper is loading value",inputPlaceholder:"Please enter...",selectPlaceholder:"Please select...",treePlaceholder:"Tree node filter",rangeInputNumberPlaceholder:["Start value","End value"],rangeSearchHelper:["Start","End"],datePlaceholder:"Select date",timePlaceholder:"Select time",weekPlaceholder:"Select week",monthPlaceholder:"Select month",quarterPlaceholder:"Select quarter",yearPlaceholder:"Select year",daterangePlaceholder:["Start date","End date"],timerangePlaceholder:["Start time","End time"],monthrangePlaceholder:["Start month","End month"],yearrangePlaceholder:["Start year","End year"],datePickers:["Today","Yesterday","A Week Ago","A Month Ago"],dateRangePickers:["Nearly A Week","Nearly A Month","Nearly Three Months","Nearly Six Months"],citySelectType:["Province","City"],regionSelectLabel:["Province","City","Region","Street"],validatePrompt:"Form validation tips"},clipboard:{success:"Copy successful",error:"Copy failed"},download:{text:"Download",success:"File downloaded successfully",error:"File download failed!"},upload:{tooltip:"Can only upload {type} format",notType:"Unsupported file types {type}",sizeLimit:"Size cannot exceed {size}M",uploadError:"Failed to upload files!",downError:"File download failed!",text:"click and upload"},uploadCropper:{dragableText:"Drop or click",tooltip:"Can only upload {type} format",preview:"Preview image",cropper:"Cropper image",uploadError:"Failed to upload images!",downError:"Image download failed!",text:"Upload image",zoomIn:"Zoom in",zoomOut:"Zoom out",rotatePlus:"Rotate plus",rotateSubtract:"Rotate subtract"},print:{preview:"Print preview",pageSetting:"Page setting",printError:"Print failed!",exportError:"Export failed!",defaultPrinter:"Default printer",laserPrinter:"Laser printer",stylusPrinter:"Stylus printer",printer:"Printer",type:"Type",copies:"Copies",printPage:["Print","page"],setting:"Setting",export:"Export",print:"Print",scale:"Scale",paper:"Paper",pageNumber:"Number",pagination:"{currentPage} / {totalPage} page",setPanel:{printParameter:"Print parameter",pagerType:"Pager type",carbonPaper:"Triple carbon paper(stylus)",printDirection:"Print direction",vertical:"Vertical",horizontal:"Horizontal",doublePrint:"Double print",autoDoublePrint:"Auto double print",manualDoublePrint:"Manual double print",fixedLogo:"Fixed Logo",printMargin:"Print margin",leftMargin:"Left margin",rightMargin:"Light margin",topMargin:"Top margin",bottomMargin:"Bottom margin",sizeUnit:"cm",noEmpty:"Can not be empty"}},split:{resize:"Drag to change size"},searchHelper:{text:"Search helper",orderIndex:"Index",rangeStartTip:"Start position cannot be greater than end position",rangeEndTip:"End position cannot be less than start position"},table:{config:{selectionText:"#",summaryText:"Summation",copyText:"Copy",emptyText:"No Data..."},alert:{total:"Total {total} items",selected:"Selected {total}",clear:"Clear"},selection:{all:"Select all",invert:"Invert select",clear:"Clear all",currentPage:"Select all on current page"},columnFilter:{text:"Define",reset:"Reset",draggable:"Drag and sort",fixedLeft:"Fixed left",fixedRight:"Fixed right",cancelFixed:"Cancel fixed"},editable:{inputPlaceholder:"Please input",selectPlaceholder:"Please select",datePlaceholder:"Select date",datetimePlaceholder:"Select time"},sorter:{text:"Sort",asc:"Ascending",desc:"Descending"},filter:{search:"Search",reset:"Reset",searchText:"Search {text}",searchAreaText:"Search {text}, separated by commas",gtPlaceholder:"is greater than",ltPlaceholder:"is lesser than",eqPlaceholder:"is equal to",neqPlaceholder:"is not equal to",text:"Filter"},screen:{full:"Full Screen",cancelFull:"Cancel Full Screen"},import:{text:"Import",textNoSpace:"Import",success:"Successfully imported {total} records",error:"Import failed, please check that the field name and data format are correct.",settingTitle:"Import setting",importType:"Import type",insertPos:"Insertion position",fillText:"fill",addText:"add",insertText:"insert"},export:{text:"Export",textNoSpace:"Export",closeButton:"Close",settingTitle:"Export setting",fileName:"File name",fileType:"File type",sheetName:"Title",all:"All",selected:"Selected",custom:"Custom",footSummation:"Summation",useStyle:"Use style",warnText:"No table data or exporting"},clipboard:{text:"Paste",textNoSpace:"Paste",success:"Successfully paste {total} records",settingTitle:"Paste setting",rowIndex:"Start row index",colIndex:"Start col index",content:"content",placeholder:"Please paste data here with ctrl+v",supportText:"Note: only excel data can be pasted"},mergeCell:{cancel:"reset",confirm:"merge"},print:{text:"Print"},refresh:{text:"Reload"},toolbox:{text:"Tool box"},selectCollection:{text:"Selected row collection",settingTitle:"Selected row list",closeButton:"Close"},groupSummary:{text:"Summary",settingTitle:"Summary setting",savedSetting:"Saved configuration",saveButton:"Save",closeButton:"Close",confirmButton:"Show summary",removeText:"Remove",configText:"Configuration name",resultText:"Summary result",sumText:"column value summary",maxText:"column max value",minText:"column min value",avgText:"column avg value",countText:"records summary",operation:"Operation",index:"Index",groupItem:"Group item",summaryColumn:"Summary column",calcFormula:"Calculate formula"},highSearch:{text:"Super search",settingTitle:"Super search setting",searchButton:"Start search",closeButton:"Close",removeText:"Remove",andText:"and",orText:"or",gtText:"is greater than",ltText:"is lesser than",gteText:"is equal or greater than",lteText:"is equal or lesser than",eqText:"is equal to",neqText:"is not equal to",inText:"include",ninText:"not include",likeText:"fuzzy matching",configText:"Configuration name",saveButton:"Save",savedSetting:"Saved configuration",operation:"Operation",bracket:"Bracket",fieldName:"Field name",fieldType:"Field type",expression:"Expression",condition:"Condition value",logic:"Logic",noEmpty:"Can not be empty"},fastSearch:{text:"Records location search",settingTitle:"Records location search setting",closeButton:"Close",savedSetting:"Saved configuration",queryCondition:"Please enter query condition",notMatch:"There are no qualified records!",toTheEnd:"It has been found to the end. Do you want to find it from the beginning?",toStart:"The start has been found. Do you want to start from the end?",tabPanes:["Search condition","More conditions"],matchCase:"Case matching",matchFullchar:"Full character matching",clear:"Clear condition",queryPrev:"Find previous",queryNext:"Find next"}}}};const messages={[en_qm.name]:{qm:en_qm,antd:enGB_antd},[zhCN_qm.name]:{qm:zhCN_qm,antd:zhCN_antd}};class QmConfigProvider extends Component{constructor(e){super(e),this.state={value:{locale:e.locale,size:e.size,global:e.global}},setLocale(messages[e.locale].qm)}static getDerivedStateFromProps(e,t){const{locale:a,size:r}=t.value,{locale:l,size:n}=e;return l!==a&&setLocale(messages[l].qm),l!==a||n!==r?{value:Object.assign({},t.value,{locale:l,size:n})}:null}render(){const{global:e}=this.props,{value:t}=this.state;return React__default.createElement(ConfigContext.Provider,{value:t},React__default.createElement(ConfigProvider,{locale:messages[t.locale].antd,componentSize:t.size,autoInsertSpaceInButton:e.autoInsertSpaceInButton},this.props.children))}}function __rest(e,t){var a={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(a[r]=e[r]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var l=0;for(r=Object.getOwnPropertySymbols(e);l<r.length;l++)t.indexOf(r[l])<0&&Object.prototype.propertyIsEnumerable.call(e,r[l])&&(a[r[l]]=e[r[l]])}return a}function __decorate(e,t,a,r){var l,n=arguments.length,i=n<3?t:null===r?r=Object.getOwnPropertyDescriptor(t,a):r;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)i=Reflect.decorate(e,t,a,r);else for(var o=e.length-1;o>=0;o--)(l=e[o])&&(i=(n<3?l(i):n>3?l(t,a,i):l(t,a))||i);return n>3&&i&&Object.defineProperty(t,a,i),i}function __awaiter(e,t,a,r){return new(a||(a=Promise))((function(l,n){function i(e){try{s(r.next(e))}catch(e){n(e)}}function o(e){try{s(r.throw(e))}catch(e){n(e)}}function s(e){var t;e.done?l(e.value):(t=e.value,t instanceof a?t:new a((function(e){e(t)}))).then(i,o)}s((r=r.apply(e,t||[])).next())}))}QmConfigProvider.propTypes={locale:PropTypes__default.string,size:(e,t,a)=>{if(!isValidComponentSize(e[t]||""))return throwError("Divider","Invalid prop `"+t+"` supplied to `"+a+"`. Validation failed.")},theme:PropTypes__default.string,global:PropTypes__default.object},QmConfigProvider.defaultProps={locale:"zh-cn",size:"middle",global:{}};var isServer="undefined"==typeof window;const isIE=()=>!isServer&&/MSIE|Trident/.test(navigator.userAgent),isValidElement=e=>React__default.isValidElement(e),isFragment=e=>isValidElement(e)&&e.type===React__default.Fragment,noop$1=()=>{},trueNoop=()=>!0,hasOwn=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),sleep=e=>__awaiter(void 0,void 0,void 0,(function*(){return new Promise((t=>setTimeout(t,e)))})),nextTick=e=>{Promise.resolve().then(e)},camelize=e=>e.replace(/-(\w)/g,((e,t)=>t?t.toUpperCase():"")),isEmpty=e=>!!(!e&&0!==e||isArray$4(e)&&!e.length||isPlainObject(e)&&!Object.keys(e).length);function forEach(e,t){let a=-1;const r=e.length;for(;++a<r;)t(e[a],a);return e}const deepClone=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:new WeakMap;if(isPlainObject(e)||isArray$4(e)){const a=Array.isArray(e),r=a?[]:{};if(t.get(e))return e;t.set(e,r);const l=a?void 0:Object.keys(e);return forEach(l||e,((a,n)=>{l&&(n=a),r[n]=deepClone(e[n],t)})),r}return e},getParserWidth=e=>isNumber(e)?`${e}px`:e.toString();class QmButton extends Component{constructor(){super(...arguments),this.state={isLoading:!1},this.clickHandle=()=>__awaiter(this,void 0,void 0,(function*(){var e,t;this.setState({isLoading:!0});try{yield null===(t=(e=this.props).click)||void 0===t?void 0:t.call(e)}catch(e){warn("Button","`click`方法执行出错")}this.setState({isLoading:!1})}))}render(){const{size:e,loading:a,authConfig:r,click:l,confirm:n}=this.props,{isLoading:i}=this.state,o=e||this.context.size||"",s=isFunction$4(l)?{onClick:this.clickHandle}:null,c=Object.assign(Object.assign(Object.assign({},omit(this.props,["authConfig","click","confirm"])),{size:o,loading:i||a||!1}),s);if(r){const{visible:e=1,disabled:t}=r||{};if(!e)return null;t&&(c.disabled=!0)}return n?React__default.createElement(Popconfirm,{title:n.title||t("qm.button.confirmTitle"),disabled:c.disabled,onConfirm:e=>{var t,a;null===(t=n.onConfirm)||void 0===t||t.call(n),null===(a=c.onClick)||void 0===a||a.call(c,e)},onCancel:e=>{var t;null===(t=n.onCancel)||void 0===t||t.call(n,e)}},React__default.createElement(Button,_extends$1({},c,{onClick:noop$1}),this.props.children)):React__default.createElement(Button,c,this.props.children)}}var ESpace;QmButton.propTypes={click:PropTypes__default.func,confirm:PropTypes__default.shape({title:PropTypes__default.node,onConfirm:PropTypes__default.func,onCancel:PropTypes__default.func})},QmButton.contextType=ConfigContext,function(e){e[e.default=14]="default",e[e.large=12]="large",e[e.middle=10]="middle",e[e.small=8]="small"}(ESpace||(ESpace={}));class QmSpace extends Component{render(){const{size:e}=this.props,t=e||this.context.size||"",a=isNumber(e)?e:ESpace[e||t||"default"],r=Object.assign(Object.assign({},this.props),{size:a});return React__default.createElement(Space,r,this.props.children)}}QmSpace.contextType=ConfigContext;const getPrefixCls=e=>`qm-${e}`;class QmDivider extends Component{constructor(){super(...arguments),this.clickHandle=()=>{const{collapse:e,onCollapseChange:t=noop$1}=this.props;t(!e)}}render(){const{size:e,label:a,extra:r,collapse:l,disabled:n,className:i,style:o,id:s}=this.props,c=e||this.context.size||"",d=getPrefixCls("divider"),u={[d]:!0,[`${d}--lg`]:"large"===c,[`${d}--sm`]:"small"===c};return React__default.createElement("div",{id:s,className:classNames(u,i),style:o},React__default.createElement("span",{className:classNames(`${d}__title`)},a),React__default.createElement("div",{className:classNames(`${d}__extra`)},r),void 0!==l&&React__default.createElement(Button,{type:"link",className:classNames(`${d}__collapse`),disabled:n,onClick:this.clickHandle},t(l?"qm.divider.collect":"qm.divider.spread"),l?React__default.createElement(UpOutlined,null):React__default.createElement(DownOutlined,null)))}}QmDivider.propTypes={label:PropTypes__default.string,size:(e,t,a)=>{if(!isValidComponentSize(e[t]||""))return throwError("Divider","Invalid prop `"+t+"` supplied to `"+a+"`. Validation failed.")},extra:PropTypes__default.oneOfType([PropTypes__default.element,PropTypes__default.string]),collapse:PropTypes__default.bool},QmDivider.contextType=ConfigContext;const getCollapsedHeight=()=>({height:0,opacity:0}),getRealHeight=e=>({height:e.scrollHeight,opacity:1}),getCurrentHeight=e=>({height:e.offsetHeight}),skipOpacityTransition=(e,t)=>"height"===t.propertyName,collapseMotion={motionName:"rc-collapse-motion",onEnterStart:getCollapsedHeight,onEnterActive:getRealHeight,onLeaveStart:getCurrentHeight,onLeaveActive:getCollapsedHeight,onEnterEnd:skipOpacityTransition,onLeaveEnd:skipOpacityTransition,motionDeadline:500,leavedClassName:"rc-collapse-content-hidden"};function _defineProperty$1(e,t,a){return t in e?Object.defineProperty(e,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):e[t]=a,e}function ownKeys$1(e,t){var a=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),a.push.apply(a,r)}return a}function _objectSpread2$1(e){for(var t=1;t<arguments.length;t++){var a=null!=arguments[t]?arguments[t]:{};t%2?ownKeys$1(Object(a),!0).forEach((function(t){_defineProperty$1(e,t,a[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(a)):ownKeys$1(Object(a)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(a,t))}))}return e}function _arrayWithHoles(e){if(Array.isArray(e))return e}function _iterableToArrayLimit(e,t){var a=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=a){var r,l,n=[],i=!0,o=!1;try{for(a=a.call(e);!(i=(r=a.next()).done)&&(n.push(r.value),!t||n.length!==t);i=!0);}catch(e){o=!0,l=e}finally{try{i||null==a.return||a.return()}finally{if(o)throw l}}return n}}function _arrayLikeToArray(e,t){(null==t||t>e.length)&&(t=e.length);for(var a=0,r=new Array(t);a<t;a++)r[a]=e[a];return r}function _unsupportedIterableToArray(e,t){if(e){if("string"==typeof e)return _arrayLikeToArray(e,t);var a=Object.prototype.toString.call(e).slice(8,-1);return"Object"===a&&e.constructor&&(a=e.constructor.name),"Map"===a||"Set"===a?Array.from(e):"Arguments"===a||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(a)?_arrayLikeToArray(e,t):void 0}}function _nonIterableRest(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function _slicedToArray(e,t){return _arrayWithHoles(e)||_iterableToArrayLimit(e,t)||_unsupportedIterableToArray(e,t)||_nonIterableRest()}function _typeof$1(e){return _typeof$1="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},_typeof$1(e)}function findDOMNode(e){return e instanceof HTMLElement?e:ReactDOM.findDOMNode(e)}function fillRef(e,t){"function"==typeof e?e(t):"object"===_typeof$1(e)&&e&&"current"in e&&(e.current=t)}function composeRef(){for(var e=arguments.length,t=new Array(e),a=0;a<e;a++)t[a]=arguments[a];var r=t.filter((function(e){return e}));return r.length<=1?r[0]:function(e){t.forEach((function(t){fillRef(t,e)}))}}function supportRef(e){var t,a,r=isMemo(e)?e.type.type:e.type;return!("function"==typeof r&&!(null===(t=r.prototype)||void 0===t?void 0:t.render))&&!("function"==typeof e&&!(null===(a=e.prototype)||void 0===a?void 0:a.render))}function canUseDom(){return!("undefined"==typeof window||!window.document||!window.document.createElement)}function makePrefixMap(e,t){var a={};return a[e.toLowerCase()]=t.toLowerCase(),a["Webkit".concat(e)]="webkit".concat(t),a["Moz".concat(e)]="moz".concat(t),a["ms".concat(e)]="MS".concat(t),a["O".concat(e)]="o".concat(t.toLowerCase()),a}function getVendorPrefixes(e,t){var a={animationend:makePrefixMap("Animation","AnimationEnd"),transitionend:makePrefixMap("Transition","TransitionEnd")};return e&&("AnimationEvent"in t||delete a.animationend.animation,"TransitionEvent"in t||delete a.transitionend.transition),a}var vendorPrefixes=getVendorPrefixes(canUseDom(),"undefined"!=typeof window?window:{}),style$1={};if(canUseDom()){var _document$createEleme=document.createElement("div");style$1=_document$createEleme.style}var prefixedEventNames={};function getVendorPrefixedEventName(e){if(prefixedEventNames[e])return prefixedEventNames[e];var t=vendorPrefixes[e];if(t)for(var a=Object.keys(t),r=a.length,l=0;l<r;l+=1){var n=a[l];if(Object.prototype.hasOwnProperty.call(t,n)&&n in style$1)return prefixedEventNames[e]=t[n],prefixedEventNames[e]}return""}var internalAnimationEndName=getVendorPrefixedEventName("animationend"),internalTransitionEndName=getVendorPrefixedEventName("transitionend"),supportTransition=!(!internalAnimationEndName||!internalTransitionEndName),animationEndName=internalAnimationEndName||"animationend",transitionEndName=internalTransitionEndName||"transitionend";function getTransitionName$1(e,t){return e?"object"===_typeof$1(e)?e[t.replace(/-\w/g,(function(e){return e[1].toUpperCase()}))]:"".concat(e,"-").concat(t):null}var STATUS_NONE="none",STATUS_APPEAR="appear",STATUS_ENTER="enter",STATUS_LEAVE="leave",STEP_NONE="none",STEP_PREPARE="prepare",STEP_START="start",STEP_ACTIVE="active",STEP_ACTIVATED="end";function useSafeState(e){var t=React.useRef(!1),a=_slicedToArray(React.useState(e),2),r=a[0],l=a[1];return React.useEffect((function(){return t.current=!1,function(){t.current=!0}}),[]),[r,function(e,a){a&&t.current||l(e)}]}var raf=function(e){return+setTimeout(e,16)},caf=function(e){return clearTimeout(e)};"undefined"!=typeof window&&"requestAnimationFrame"in window&&(raf=function(e){return window.requestAnimationFrame(e)},caf=function(e){return window.cancelAnimationFrame(e)});var rafUUID=0,rafIds=new Map;function cleanup(e){rafIds.delete(e)}function wrapperRaf(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:1,a=rafUUID+=1;function r(t){if(0===t)cleanup(a),e();else{var l=raf((function(){r(t-1)}));rafIds.set(a,l)}}return r(t),a}wrapperRaf.cancel=function(e){var t=rafIds.get(e);return cleanup(t),caf(t)};var useNextFrame=function(){var e=React.useRef(null);function t(){wrapperRaf.cancel(e.current)}return React.useEffect((function(){return function(){t()}}),[]),[function a(r){var l=arguments.length>1&&void 0!==arguments[1]?arguments[1]:2;t();var n=wrapperRaf((function(){l<=1?r({isCanceled:function(){return n!==e.current}}):a(r,l-1)}));e.current=n},t]},useIsomorphicLayoutEffect=canUseDom()?useLayoutEffect$1:useEffect,STEP_QUEUE=[STEP_PREPARE,STEP_START,STEP_ACTIVE,STEP_ACTIVATED],SkipStep=!1,DoStep=!0;function isActive(e){return e===STEP_ACTIVE||e===STEP_ACTIVATED}var useStepQueue=function(e,t){var a=_slicedToArray(useSafeState(STEP_NONE),2),r=a[0],l=a[1],n=_slicedToArray(useNextFrame(),2),i=n[0],o=n[1];return useIsomorphicLayoutEffect((function(){if(r!==STEP_NONE&&r!==STEP_ACTIVATED){var e=STEP_QUEUE.indexOf(r),a=STEP_QUEUE[e+1],n=t(r);n===SkipStep?l(a,!0):i((function(e){function t(){e.isCanceled()||l(a,!0)}!0===n?t():Promise.resolve(n).then(t)}))}}),[e,r]),React.useEffect((function(){return function(){o()}}),[]),[function(){l(STEP_PREPARE,!0)},r]},useDomMotionEvents=function(e){var t=useRef(),a=useRef(e);a.current=e;var r=React.useCallback((function(e){a.current(e)}),[]);function l(e){e&&(e.removeEventListener(transitionEndName,r),e.removeEventListener(animationEndName,r))}return React.useEffect((function(){return function(){l(t.current)}}),[]),[function(e){t.current&&t.current!==e&&l(t.current),e&&e!==t.current&&(e.addEventListener(transitionEndName,r),e.addEventListener(animationEndName,r),t.current=e)},l]};function useStatus(e,t,a,r){var l=r.motionEnter,n=void 0===l||l,i=r.motionAppear,o=void 0===i||i,s=r.motionLeave,c=void 0===s||s,d=r.motionDeadline,u=r.motionLeaveImmediately,p=r.onAppearPrepare,f=r.onEnterPrepare,m=r.onLeavePrepare,h=r.onAppearStart,g=r.onEnterStart,_=r.onLeaveStart,y=r.onAppearActive,v=r.onEnterActive,b=r.onLeaveActive,R=r.onAppearEnd,E=r.onEnterEnd,x=r.onLeaveEnd,C=r.onVisibleChanged,T=_slicedToArray(useSafeState(),2),S=T[0],w=T[1],P=_slicedToArray(useSafeState(STATUS_NONE),2),N=P[0],I=P[1],A=_slicedToArray(useSafeState(null),2),$=A[0],O=A[1],F=useRef(!1),L=useRef(null);function D(){return a()}var k=useRef(!1);function H(e){var t=D();if(!e||e.deadline||e.target===t){var a,r=k.current;N===STATUS_APPEAR&&r?a=null==R?void 0:R(t,e):N===STATUS_ENTER&&r?a=null==E?void 0:E(t,e):N===STATUS_LEAVE&&r&&(a=null==x?void 0:x(t,e)),N!==STATUS_NONE&&r&&!1!==a&&(I(STATUS_NONE,!0),O(null,!0))}}var V=_slicedToArray(useDomMotionEvents(H),1)[0],M=React.useMemo((function(){var e,t,a;switch(N){case STATUS_APPEAR:return _defineProperty$1(e={},STEP_PREPARE,p),_defineProperty$1(e,STEP_START,h),_defineProperty$1(e,STEP_ACTIVE,y),e;case STATUS_ENTER:return _defineProperty$1(t={},STEP_PREPARE,f),_defineProperty$1(t,STEP_START,g),_defineProperty$1(t,STEP_ACTIVE,v),t;case STATUS_LEAVE:return _defineProperty$1(a={},STEP_PREPARE,m),_defineProperty$1(a,STEP_START,_),_defineProperty$1(a,STEP_ACTIVE,b),a;default:return{}}}),[N]),j=_slicedToArray(useStepQueue(N,(function(e){if(e===STEP_PREPARE){var t=M[STEP_PREPARE];return t?t(D()):SkipStep}var a;U in M&&O((null===(a=M[U])||void 0===a?void 0:a.call(M,D(),null))||null);return U===STEP_ACTIVE&&(V(D()),d>0&&(clearTimeout(L.current),L.current=setTimeout((function(){H({deadline:!0})}),d))),DoStep})),2),q=j[0],U=j[1],K=isActive(U);k.current=K,useIsomorphicLayoutEffect((function(){w(t);var a,r=F.current;(F.current=!0,e)&&(!r&&t&&o&&(a=STATUS_APPEAR),r&&t&&n&&(a=STATUS_ENTER),(r&&!t&&c||!r&&u&&!t&&c)&&(a=STATUS_LEAVE),a&&(I(a),q()))}),[t]),useEffect((function(){(N===STATUS_APPEAR&&!o||N===STATUS_ENTER&&!n||N===STATUS_LEAVE&&!c)&&I(STATUS_NONE)}),[o,n,c]),useEffect((function(){return function(){F.current=!1,clearTimeout(L.current)}}),[]),useEffect((function(){void 0!==S&&N===STATUS_NONE&&(null==C||C(S))}),[S,N]);var B=$;return M[STEP_PREPARE]&&U===STEP_START&&(B=_objectSpread2$1({transition:"none"},B)),[N,U,B,null!=S?S:t]}function _classCallCheck(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function _defineProperties(e,t){for(var a=0;a<t.length;a++){var r=t[a];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function _createClass(e,t,a){return t&&_defineProperties(e.prototype,t),a&&_defineProperties(e,a),Object.defineProperty(e,"prototype",{writable:!1}),e}function _setPrototypeOf(e,t){return _setPrototypeOf=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},_setPrototypeOf(e,t)}function _inherits(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&&_setPrototypeOf(e,t)}function _getPrototypeOf(e){return _getPrototypeOf=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},_getPrototypeOf(e)}function _isNativeReflectConstruct(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}function _assertThisInitialized(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function _possibleConstructorReturn(e,t){if(t&&("object"===_typeof$1(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return _assertThisInitialized(e)}function _createSuper(e){var t=_isNativeReflectConstruct();return function(){var a,r=_getPrototypeOf(e);if(t){var l=_getPrototypeOf(this).constructor;a=Reflect.construct(r,arguments,l)}else a=r.apply(this,arguments);return _possibleConstructorReturn(this,a)}}var DomWrapper=function(e){_inherits(a,React.Component);var t=_createSuper(a);function a(){return _classCallCheck(this,a),t.apply(this,arguments)}return _createClass(a,[{key:"render",value:function(){return this.props.children}}]),a}();function genCSSMotion(e){var t=e;function a(e){return!(!e.motionName||!t)}"object"===_typeof$1(e)&&(t=e.transitionSupport);var r=React.forwardRef((function(e,t){var r=e.visible,l=void 0===r||r,n=e.removeOnLeave,i=void 0===n||n,o=e.forceRender,s=e.children,c=e.motionName,d=e.leavedClassName,u=e.eventProps,p=a(e),f=useRef(),m=useRef();var h=_slicedToArray(useStatus(p,l,(function(){try{return f.current instanceof HTMLElement?f.current:findDOMNode(m.current)}catch(e){return null}}),e),4),g=h[0],_=h[1],y=h[2],v=h[3],b=React.useRef(v);v&&(b.current=!0);var R,E=React.useCallback((function(e){f.current=e,fillRef(t,e)}),[t]),x=_objectSpread2$1(_objectSpread2$1({},u),{},{visible:l});if(s)if(g!==STATUS_NONE&&a(e)){var C,T;_===STEP_PREPARE?T="prepare":isActive(_)?T="active":_===STEP_START&&(T="start"),R=s(_objectSpread2$1(_objectSpread2$1({},x),{},{className:classNames(getTransitionName$1(c,g),(C={},_defineProperty$1(C,getTransitionName$1(c,"".concat(g,"-").concat(T)),T),_defineProperty$1(C,c,"string"==typeof c),C)),style:y}),E)}else R=v?s(_objectSpread2$1({},x),E):!i&&b.current?s(_objectSpread2$1(_objectSpread2$1({},x),{},{className:d}),E):o?s(_objectSpread2$1(_objectSpread2$1({},x),{},{style:{display:"none"}}),E):null;else R=null;React.isValidElement(R)&&supportRef(R)&&(R.ref||(R=React.cloneElement(R,{ref:E})));return React.createElement(DomWrapper,{ref:m},R)}));return r.displayName="CSSMotion",r}var CSSMotion=genCSSMotion(supportTransition);function _extends(){return _extends=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var a=arguments[t];for(var r in a)Object.prototype.hasOwnProperty.call(a,r)&&(e[r]=a[r])}return e},_extends.apply(this,arguments)}function _objectWithoutPropertiesLoose(e,t){if(null==e)return{};var a,r,l={},n=Object.keys(e);for(r=0;r<n.length;r++)a=n[r],t.indexOf(a)>=0||(l[a]=e[a]);return l}function _objectWithoutProperties(e,t){if(null==e)return{};var a,r,l=_objectWithoutPropertiesLoose(e,t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);for(r=0;r<n.length;r++)a=n[r],t.indexOf(a)>=0||Object.prototype.propertyIsEnumerable.call(e,a)&&(l[a]=e[a])}return l}const PanelContent=React__default.forwardRef(((e,t)=>{const{forceRender:a,className:r,style:l,boxStyle:n,isActive:i}=e,[o,s]=React__default.useState(i||a);if(React__default.useEffect((()=>{(a||i)&&s(!0)}),[a,i]),!o)return null;const c=getPrefixCls("collapse");return React__default.createElement("div",{ref:t,className:classNames(`${c}-content`,{[`${c}-content-active`]:i,[`${c}-content-inactive`]:!i},r),style:l},React__default.createElement("div",{className:`${c}-content-box`,style:n},e.children))}));PanelContent.displayName="PanelContent";const Collapse=e=>{const{defaultActive:t,label:a,extra:r,className:l,style:n,containerStyle:i,disabled:o,forceRender:s,destroyOnClose:c=!1,onChange:d}=e,[u,p]=React__default.useState(!!t),f=getPrefixCls("collapse"),m=classNames({[`${f}`]:!0,[`${f}-active`]:u,[`${f}-disabled`]:o},l);return React__default.createElement("div",{className:m,style:n},React__default.createElement(QmDivider,{label:a,extra:r,collapse:u,disabled:o,onCollapseChange:e=>{p(e),null==d||d(e)}}),React__default.createElement(CSSMotion,_extends$1({visible:u},collapseMotion,{leavedClassName:`${f}-content-hidden`,forceRender:s,removeOnLeave:c}),((t,a)=>{let{className:r,style:l}=t;return React__default.createElement(PanelContent,{ref:a,prefixCls:f,className:r,style:l,boxStyle:i,isActive:u,forceRender:s},e.children)})))},SplitContext=React__default.createContext(void 0);function useUpdateEffect(e,t){const a=React.useRef(!1);React.useEffect((()=>{a.current?e():a.current=!0}),t)}const on=(e,t,a)=>{e&&t&&a&&e.addEventListener(t,a,!1)},off=(e,t,a)=>{e&&t&&a&&e.removeEventListener(t,a,!1)},stop=e=>e.stopPropagation(),prevent=e=>e.preventDefault(),getStyle=(e,t)=>{var a;if(isServer||!e||!t)return null;"float"===(t=camelize(t))&&(t="cssFloat");try{const r=e.style[t];if(r)return r;const l=null===(a=document.defaultView)||void 0===a?void 0:a.getComputedStyle(e,"");return l?l[t]:""}catch(a){return e.style[t]}},setStyle=(e,t,a)=>{!isServer&&e&&t&&(isPlainObject(t)?Object.keys(t).forEach((a=>{setStyle(e,a,t[a])})):(t=camelize(t),e.style[t]=a))},getOffsetTop=e=>{let t=0,a=e;for(;a;)t+=a.offsetTop,a=a.offsetParent;return t},getOffsetTopDistance=(e,t)=>Math.abs(getOffsetTop(e)-getOffsetTop(t)),getPosition=e=>{let t=0,a=0;for(;e;)t+=e.offsetLeft-e.scrollLeft,a+=e.offsetTop-e.scrollTop,e=e.offsetParent;return{x:t,y:a}},getParentNode=(e,t)=>{var a;let r=e;for(;r;){if(null===(a=r.classList)||void 0===a?void 0:a.contains(t))return r;r=r.parentNode}return null},contains$1=(e,t)=>{if(isServer||!e||!t)return!1;let a=e;for(;a;){if(a===t)return!0;a=a.parentNode}return!1},ResizeBar=e=>{const{minValues:a,onDragChange:r,onDragging:l}=e,{splitRef:n,direction:i}=React__default.useContext(SplitContext),[o,s]=React__default.useState(),[c,d]=React__default.useState(0),u="vertical"===i?"y":"x",p=()=>{const{w:e,h:t}={w:n.current.offsetWidth,h:n.current.offsetHeight};return[a[0],("vertical"===i?t:e)-a[1]]},f={[`${getPrefixCls("split")}__resize-bar`]:!0,vertical:"vertical"===i,horizontal:"horizontal"===i};return React__default.createElement(Draggable,{bounds:o,axis:u,position:{x:0,y:0},positionOffset:{[u]:-1*c},onStart:()=>{r(!0),(()=>{const e=n.current.children[0];if(!e)return;const t=p(),a=e.offsetWidth,r=e.offsetHeight;s({left:t[0]-a,right:t[1]-a,top:t[0]-r,bottom:t[1]-r})})()},onDrag:(e,t)=>{d(t[u]),l(t[u])},onStop:()=>r(!1)},React__default.createElement("div",{className:classNames(f),title:t("qm.split.resize")}))};ResizeBar.displayName="ResizeBar";const QmSplitPane=React__default.forwardRef(((e,t)=>{const{offset:a,className:r,style:l}=e,{direction:n,dragging:i}=React__default.useContext(SplitContext),o="vertical"===n?"height":"width",s={[getPrefixCls("split-pane")]:!0,isLocked:i,horizontal:"horizontal"===n,vertical:"vertical"===n,[r]:!!r},c=void 0!==a?{[o]:getParserWidth(a)}:{flex:1,[o]:0};return React__default.createElement("div",{ref:t,className:classNames(s),style:Object.assign(Object.assign({},c),l)},e.children)}));QmSplitPane.displayName="QmSplitPane";const QmSplit=e=>{const{direction:t="horizontal",defaultValue:a="50%",uniqueKey:r,className:l,style:n,onDragStart:i,onDrag:o=noop$1,onDragEnd:s}=e,{global:c}=React__default.useContext(ConfigContext),d=React__default.useRef(null),u=React__default.useRef(null),p=e=>Number(e)>0?`${e}px`:(e=>["px","em","vw","vh","%"].some((t=>e.endsWith(t))))(e.toString())?e.toString():`${Number.parseFloat(e)}px`,f=e=>Number.parseInt(e,10),m=e=>{var t;const a=Number.parseInt((null===(t=e.props)||void 0===t?void 0:t.min)||0);return a>=0?a:0},h=React__default.useMemo((()=>r?`split_${r}`:""),[r]),[g,_]=React__default.useState(!1),[y,v]=React__default.useState(p(a)),b=React__default.useRef(0);useUpdateEffect((()=>{g?(b.current="vertical"===t?u.current.offsetHeight:u.current.offsetWidth,null==i||i(f(y))):(null==s||s(f(y)),localStorage.setItem(h,y),x(h,y))}),[g]),React__default.useEffect((()=>{R()}),[]);const R=()=>{if(!h)return;const e=localStorage.getItem(h);e?v(p(e)):E(h).then((e=>{localStorage.setItem(h,p(e||a)),R()})).catch((()=>{}))},E=e=>__awaiter(void 0,void 0,void 0,(function*(){const t=null==c?void 0:c.getComponentConfigApi;if(t)try{const a=yield t({key:e});if(200===a.code)return a.data}catch(e){}})),x=(e,t)=>__awaiter(void 0,void 0,void 0,(function*(){const a=null==c?void 0:c.saveComponentConfigApi;if(a)try{yield a({[e]:t})}catch(e){}})),C=React__default.useMemo((()=>({splitRef:d,direction:t,dragging:g})),[t,g]),T=[];React__default.Children.map(e.children,(e=>{var t;isValidElement(e)&&!isFragment(e)&&"QmSplitPane"===(null===(t=e.type)||void 0===t?void 0:t.displayName)&&T.push(e)}));const[S,w]=T,P=React__default.useMemo((()=>[m(S),m(w)]),[S,w]),N={[getPrefixCls("split")]:!0,vertical:"vertical"===t};return React__default.createElement(SplitContext.Provider,{value:C},React__default.createElement("div",{ref:d,className:classNames(N,l),style:n},React__default.createElement(QmSplitPane,_extends$1({},S.props,{ref:u,offset:y})),React__default.createElement(ResizeBar,{minValues:P,onDragChange:e=>_(e),onDragging:e=>{const t=b.current+e;v(`${t}px`),o(t)}}),React__default.createElement(QmSplitPane,w.props)))};QmSplit.Pane=QmSplitPane,QmSplit.displayName="QmSplit";class QmCountup extends Component{render(){const{size:e,className:t,style:a}=this.props,r=e||this.context.size||"",l=getPrefixCls("countup"),n={[l]:!0,[`${l}--lg`]:"large"===r,[`${l}--sm`]:"small"===r};return React__default.createElement(CountUp,_extends$1({},this.props,{className:classNames(n,t),style:a}),this.props.children)}}QmCountup.defaultProps={duration:2},QmCountup.contextType=ConfigContext;class QmEmpty extends Component{render(){const{size:e,className:t}=this.props,a=e||this.context.size||"",r=getPrefixCls("empty"),l=Object.assign(Object.assign({},this.props),{image:Empty.PRESENTED_IMAGE_SIMPLE}),n={[r]:!0,[`${r}--lg`]:"large"===a,[`${r}--sm`]:"small"===a};return React__default.createElement(Empty,_extends$1({},l,{className:classNames(n,t)}))}}QmEmpty.contextType=ConfigContext,QmEmpty.propTypes={size:(e,t,a)=>{if(!isValidComponentSize(e[t]||""))return throwError("Anchor","Invalid prop `"+t+"` supplied to `"+a+"`. Validation failed.")}};class QmSpin extends Component{render(){const{fullHeight:e,style:t={}}=this.props,a={[`${getPrefixCls("spin")}-full-height`]:e},r=Object.assign(Object.assign({wrapperClassName:classNames(a)},omit(this.props,["fullHeight"])),{style:Object.assign(Object.assign({},t),{maxHeight:"none"})});return React__default.createElement(Spin,r,this.props.children)}}QmSpin.defaultProps={tip:"Loading...",fullHeight:!1};const download=(e,t)=>{if(navigator.msSaveBlob)navigator.msSaveBlob(e,decodeURI(t));else{const a=window.URL.createObjectURL(e);let r=document.createElement("a");r.href=a,r.download=decodeURI(t),r.click(),r=null}};class QmDownload extends Component{constructor(){super(...arguments),this.state={loading:!1},this.downloadHandle=()=>__awaiter(this,void 0,void 0,(function*(){var e,a,r,l;this.setState({loading:!0});try{const{action:r,beforeDownload:l=trueNoop}=this.props,n=isString(r)?r:yield this.getActionUrl();if(!n)return warn("Download","参数 `action` 有误!");if(!l(n))return;yield this.downloadFile(n),yield sleep(100),null===(a=(e=this.props).onSuccess)||void 0===a||a.call(e),message.success(t("qm.download.success"))}catch(e){null===(l=(r=this.props).onError)||void 0===l||l.call(r,e),message.error(t("qm.download.error"))}this.setState({loading:!1})}))}getActionUrl(){return __awaiter(this,void 0,void 0,(function*(){const e=this.props.action;if(e.api)try{const t=yield e.api(e.params);if(200===t.code)return t.data}catch(e){}return""}))}downloadFile(e){return __awaiter(this,void 0,void 0,(function*(){const{fileName:t,headers:a,params:r,withCredentials:l}=this.props,n=yield axios({url:e,params:r,headers:a,withCredentials:l,responseType:"blob"}),i=n.data,o=n.headers["content-disposition"],s=t||(o?o.split(";")[1].split("filename=")[1]:e.slice(e.lastIndexOf("/")+1));download(i,s)}))}render(){const{size:e}=this.props,{loading:t}=this.state,a=e||this.context.size||"",r=omit(this.props,["action","fileName","headers","withCredentials","params","beforeDownload","onSuccess","onError"]);return React__default.createElement(Button,_extends$1({},r,{size:a,loading:t,onClick:this.downloadHandle}),this.props.children)}}QmDownload.propTypes={action:PropTypes__default.oneOfType([PropTypes__default.string,PropTypes__default.shape({api:PropTypes__default.func.isRequired,params:PropTypes__default.object})]),size:(e,t,a)=>{if(!isValidComponentSize(e[t]||""))return throwError("Anchor","Invalid prop `"+t+"` supplied to `"+a+"`. Validation failed.")},fileName:PropTypes__default.string,headers:PropTypes__default.object,withCredentials:PropTypes__default.bool,params:PropTypes__default.object,beforeDownload:PropTypes__default.func,onSuccess:PropTypes__default.func,onError:PropTypes__default.func},QmDownload.defaultProps={icon:React__default.createElement(DownloadOutlined,null),children:t("qm.download.text"),withCredentials:!1},QmDownload.contextType=ConfigContext;class AnchorNav extends Component{renderLabel(){const{activeKey:e,labels:t,onTabClick:a}=this.props;return t.map(((t,r)=>{const l={item:!0,actived:r===e};return React__default.createElement("div",{key:r,className:classNames(l),onClick:e=>a(r,e)},React__default.createElement("span",null,t))}))}render(){return React__default.createElement(React__default.Fragment,null,this.renderLabel())}}class QmAnchorItem extends Component{render(){const{label:e,showDivider:t,className:a,style:r}=this.props,l={[getPrefixCls("anchor-item")]:!0};return React__default.createElement("div",{className:classNames(l,a),style:r},t&&React__default.createElement(QmDivider,{label:e,style:{marginBottom:10}}),this.props.children)}}QmAnchorItem.displayName="QmAnchorItem";class QmAnchor extends Component{constructor(){super(...arguments),this.currentState="ready",this.scrollRef=createRef(),this.state={activeKey:0},this.onScrollHandle=e=>{if("ready"!==this.currentState)return;const t=this.findCurrentIndex(e.target.scrollTop);-1!==t&&this.setState({activeKey:t})},this.onTabClickHandle=e=>{const{labelList:t=[]}=this.props,a=this.__is_conf?document.getElementById(t[e].id):this.scrollRef.current.children[e];a&&(this.setState({activeKey:e}),this.currentState="stop",this.timer&&clearTimeout(this.timer),scrollIntoView(a,{block:"start",behavior:"smooth",boundary:this.scrollRef.current}),this.timer=setTimeout((()=>this.currentState="ready"),500))},this.SCROLL_TO_ITEM=e=>{e=(e=e<0?0:e)>this.itemsTotal?this.itemsTotal:e,this.onTabClickHandle(e)}}get __is_conf(){var e;return!!(null===(e=this.props.labelList)||void 0===e?void 0:e.length)}componentDidMount(){this.scrollEvent=addEventListener(this.scrollRef.current,"scroll",throttle(this.onScrollHandle,60))}componentWillUnmount(){this.scrollEvent.remove()}createDistances(){var e;const{labelList:t=[]}=this.props;return(this.__is_conf?t.map((e=>document.getElementById(e.id))):Array.from((null===(e=this.scrollRef.current)||void 0===e?void 0:e.children)||[])).map((e=>getOffsetTopDistance(e,this.scrollRef.current)))}findCurrentIndex(e){const t=Math.abs(e),a=this.createDistances();let r=-1;for(let e=0;e<a.length;e++){const l=a[e],n=a[e+1]||1e4;t>=l-1&&t<n&&(r=e)}return r}render(){const{activeKey:e}=this.state,{size:t,labelWidth:a,tabPosition:r,labelList:l=[],className:n,style:i}=this.props,o=t||this.context.size||"",s=getPrefixCls("anchor"),c={[s]:!0,[`${s}-left`]:"left"===r,[`${s}-top`]:"top"===r,[`${s}--lg`]:"large"===o,[`${s}--sm`]:"small"===o},d=[];React__default.Children.map(this.props.children,(e=>{var t;isValidElement(e)&&!isFragment(e)&&"QmAnchorItem"===(null===(t=e.type)||void 0===t?void 0:t.displayName)&&d.push(e)}));const u=this.__is_conf?l.map((e=>e.label)):d.map((e=>e.props.label));return this.itemsTotal=u.length,React__default.createElement("div",{className:classNames(c,n),style:i},React__default.createElement("div",{className:classNames("anchor-nav"),style:{width:a?getParserWidth(a):""}},React__default.createElement(AnchorNav,{activeKey:e,labels:u,onTabClick:this.onTabClickHandle})),React__default.createElement("div",{ref:this.scrollRef,className:classNames("anchor-container")},this.__is_conf?this.props.children:d))}}QmAnchor.Item=QmAnchorItem,QmAnchor.propTypes={size:(e,t,a)=>{if(!isValidComponentSize(e[t]||""))return throwError("Anchor","Invalid prop `"+t+"` supplied to `"+a+"`. Validation failed.")},labelWidth:(e,t,a)=>{if(!isValidWidthUnit(e[t]))return throwError("Anchor","Invalid prop `"+t+"` supplied to `"+a+"`. Validation failed.")},labelList:PropTypes__default.arrayOf(PropTypes__default.shape({id:PropTypes__default.string,label:PropTypes__default.string}))},QmAnchor.defaultProps={tabPosition:"left"},QmAnchor.contextType=ConfigContext;class QmTabPane extends Component{render(){return React__default.createElement(Tabs.TabPane,this.props,this.props.children)}}class QmTabs extends Component{render(){const{size:e,className:t}=this.props,a=e||this.context.size||"",r=getPrefixCls("tabs"),l={[r]:!0,[`${r}--lg`]:"large"===a,[`${r}--sm`]:"small"===a};return React__default.createElement(Tabs,_extends$1({},this.props,{className:classNames(l,t)}),this.props.children)}}QmTabs.TabPane=QmTabPane,QmTabs.contextType=ConfigContext,QmTabs.defaultProps={tabBarGutter:10};const DEFAULT_WIDTH$1="72%";class QmDrawer extends Component{constructor(){super(...arguments),this.titleRef=React__default.createRef(),this.$drawer=null,this.opened=!1,this.state={fullscreen:!1,spinning:!1,sloading:!1},this.afterVisibleChange=e=>{var t,a;const{loading:r}=this.props;e?(this.opened=!0,isUndefined(r)&&setTimeout((()=>this.setState({spinning:!1})),100)):(null===(a=(t=this.props).onClosed)||void 0===a||a.call(t),this.setState({fullscreen:!1}))},this.toggleHandle=()=>{this.$drawer=getParentNode(this.titleRef.current,"ant-drawer-content-wrapper"),this.setState((e=>({fullscreen:!e.fullscreen})),(()=>{var e,t;null===(t=(e=this.props).onFullChange)||void 0===t||t.call(e,this.state.fullscreen)}))},this.START_LOADING=()=>{this.setState({sloading:!0})},this.STOP_LOADING=()=>{this.setState({sloading:!1})}}componentWillUnmount(){this.$drawer=null}componentDidUpdate(e,t){const{visible:a,loading:r,destroyOnClose:l}=this.props,{fullscreen:n}=this.state;a&&a!==e.visible&&(!l&&this.opened||isUndefined(r)&&this.setState({spinning:!0})),this.$drawer&&n!==t.fullscreen&&setStyle(this.$drawer,n?{width:"100%"}:{width:getParserWidth(this.props.width||DEFAULT_WIDTH$1)})}renderTitle(){const{fullscreen:e}=this.state,{showFullScreen:t}=this.props;return React__default.createElement(React__default.Fragment,null,React__default.createElement("span",{ref:this.titleRef,className:classNames("text")},this.props.title),t&&React__default.createElement("span",{className:classNames("full-screen"),onClick:this.toggleHandle},React__default.createElement(e?FullscreenExitOutlined:FullscreenOutlined)))}render(){var e;const{spinning:t,sloading:a}=this.state,{size:r,className:l,loading:n,maskClosable:i,onClose:o}=this.props,s=this.context.global,c=r||this.context.size||"",d=getPrefixCls("drawer"),u={[d]:!0,[`${d}--lg`]:"large"===c,[`${d}--sm`]:"small"===c};return React__default.createElement(Drawer,_extends$1({},omit(this.props,["size","showFullScreen","loading","maskClosable","onClosed"]),{maskClosable:null!==(e=null!=i?i:null==s?void 0:s.maskClosable)&&void 0!==e&&e,className:classNames(u,l),title:this.renderTitle(),footer:null,onClose:o,afterVisibleChange:this.afterVisibleChange}),this.props.children,(n||a||t)&&React__default.createElement(QmSpin,{spinning:!0,className:classNames(`${d}-spin`)}))}}QmDrawer.contextType=ConfigContext,QmDrawer.propTypes={size:(e,t,a)=>{if(!isValidComponentSize(e[t]||""))return throwError("Drawer","Invalid prop `"+t+"` supplied to `"+a+"`. Validation failed.")},spinning:PropTypes__default.bool},QmDrawer.defaultProps={width:DEFAULT_WIDTH$1,showFullScreen:!0,destroyOnClose:!0,footer:null};const DEFAULT_WIDTH="60%",DEFAULT_TOP="10vh";var headerHeight;!function(e){e[e.large=48]="large",e[e.middle=44]="middle",e[e.small=40]="small"}(headerHeight||(headerHeight={}));class QmModal extends Component{constructor(){super(...arguments),this.$event=null,this.draggleRef=React__default.createRef(),this.opened=!1,this.state={fullscreen:!1,spinning:!1,sloading:!1,disabled:!0,bounds:{left:0,top:0,bottom:0,right:0},position:void 0},this.addMouseDownEvent=()=>{this.$event||(this.$event=addEventListener(document.body,"mousedown",stop))},this.removeMouseDownEvent=()=>{var e;this.$event&&(null===(e=this.$event)||void 0===e||e.remove(),this.$event=null)},this.onStart=(e,t)=>{const{clientWidth:a,clientHeight:r}=window.document.documentElement,l=this.draggleRef.current.getBoundingClientRect();l&&this.setState({bounds:{left:-l.left+t.x,right:a-(l.right-t.x)-1,top:-l.top+t.y,bottom:r-(l.bottom-t.y)-1}})},this.toggleHandle=e=>{const t=getParentNode(e.target,"ant-modal");if(!t)return;const a=t.querySelector(".ant-modal-body"),{height:r}=this.props,{fullscreen:l}=this.state;l?(setStyle(t,{width:getParserWidth(this.props.width||DEFAULT_WIDTH),height:"auto",top:DEFAULT_TOP}),setStyle(a,{height:r?getParserWidth(r):this.defaultHeight,maxHeight:"auto"===r?this.defaultHeight:""})):(setStyle(t,{width:"100%",height:"100%",top:0,maxWidth:"100%"}),setStyle(a,{height:`calc(100vh - ${headerHeight[this.$size]}px)`,maxHeight:""})),this.setState((e=>({fullscreen:!e.fullscreen})),(()=>{var e,t;null===(t=(e=this.props).onFullChange)||void 0===t||t.call(e,this.state.fullscreen)}))},this.afterVisibleChange=()=>{const{onClosed:e}=this.props;null==e||e(),this.setState({fullscreen:!1})},this.START_LOADING=()=>{this.setState({sloading:!0})},this.STOP_LOADING=()=>{this.setState({sloading:!1})}}get $size(){const{size:e}=this.props;return e||this.context.size||""}get defaultHeight(){return`calc(100vh - ${DEFAULT_TOP} - ${DEFAULT_TOP} - ${headerHeight[this.$size]}px)`}componentDidUpdate(e,t){const{visible:a,loading:r,stopMouseDownEvent:l,destroyOnClose:n}=this.props,{fullscreen:i}=this.state;if(a&&a!==e.visible){if(!n&&this.opened||isUndefined(r)&&this.setState({spinning:!0}),l&&this.addMouseDownEvent(),!n&&this.opened)return;setTimeout((()=>{this.opened=!0,isUndefined(r)&&this.setState({spinning:!1})}),400)}a||this.removeMouseDownEvent(),i!==t.fullscreen&&(i?this.setState({position:{x:0,y:0}}):this.setState({position:void 0}))}renderTitle(){const{fullscreen:e,disabled:t}=this.state,{showFullScreen:a}=this.props;return React__default.createElement("div",{onMouseOver:()=>{t&&this.setState({disabled:!1})},onMouseOut:()=>{this.setState({disabled:!0})}},React__default.createElement("span",{className:classNames("text")},this.props.title),a&&React__default.createElement("span",{className:classNames("full-screen"),onClick:this.toggleHandle},React__default.createElement(e?FullscreenExitOutlined:FullscreenOutlined)))}render(){var e;const{spinning:t,sloading:a,fullscreen:r,disabled:l,bounds:n,position:i}=this.state,{height:o,className:s,loading:c,draggable:d,maskClosable:u,bodyStyle:p,onClose:f}=this.props,m=this.context.global,h=getPrefixCls("modal"),g={height:o?getParserWidth(o):this.defaultHeight,maxHeight:"auto"===o?this.defaultHeight:"",overflow:"auto"},_={[h]:!0,[`${h}--lg`]:"large"===this.$size,[`${h}--sm`]:"small"===this.$size};return React__default.createElement(Modal,_extends$1({},omit(this.props,["showFullScreen","loading","maskClosable","stopMouseDownEvent","onClose","onClosed"]),{maskClosable:null!==(e=null!=u?u:null==m?void 0:m.maskClosable)&&void 0!==e&&e,className:classNames(_,s),title:this.renderTitle(),footer:null,bodyStyle:Object.assign({},g,p),onCancel:f,afterClose:this.afterVisibleChange,modalRender:e=>React__default.createElement(Draggable,{disabled:!d||l||r,bounds:n,position:i,onStart:(e,t)=>this.onStart(e,t)},React__default.createElement("div",{ref:this.draggleRef},e))}),this.props.children,(c||a||t)&&React__default.createElement(QmSpin,{spinning:!0,className:classNames(`${h}-spin`)}))}}QmModal.contextType=ConfigContext,QmModal.propTypes={size:(e,t,a)=>{if(!isValidComponentSize(e[t]||""))return throwError("Modal","Invalid prop `"+t+"` supplied to `"+a+"`. Validation failed.")},spinning:PropTypes__default.bool},QmModal.defaultProps={width:DEFAULT_WIDTH,showFullScreen:!0,destroyOnClose:!0,draggable:!0,footer:null,style:{top:DEFAULT_TOP}};const FormContext=createContext(void 0),resizeHandler=function(e){for(const t of e){const e=t.target.__resizeListeners__||[];e.length&&e.forEach((e=>e(t)))}},addResizeListener=function(e,t){!isServer&&e&&(e.__resizeListeners__||(e.__resizeListeners__=[],e.__ro__=new ResizeObserver(resizeHandler),e.__ro__.observe(e)),e.__resizeListeners__.push(t))},removeResizeListener=function(e,t){var a;e&&e.__resizeListeners__&&(e.__resizeListeners__.splice(e.__resizeListeners__.indexOf(t),1),e.__resizeListeners__.length||null===(a=e.__ro__)||void 0===a||a.disconnect())},DEFAULT_COL=4,DEFAULT_ROWS=1,DEFAULT_LABEL_WIDTH=80,DEFAULT_COL_WIDTH=300,DEFAULT_TRUE_VALUE$1="1",DEFAULT_FALSE_VALUE$1="0",DEFAULT_LIST_HEIGHT=400,ARRAY_TYPE=["RANGE_INPUT","RANGE_INPUT_NUMBER","RANGE_SEARCH_HELPER","MULTIPLE_CHECKBOX","MULTIPLE_SELECT","RANGE_DATE","RANGE_TIME","MULTIPLE_TREE_SELECT","MULTIPLE_SEARCH_HELPER","MULTIPLE_TREE_TABLE_HELPER","MULTIPLE_CASCADER","UPLOAD_IMG","UPLOAD_FILE"],BUILT_IN_PLACEMENTS$1={bottomLeft:{points:["tl","bl"],offset:[0,4],overflow:{adjustX:1,adjustY:1}}};var EDateType,EDateFormat,ETimeFormat;!function(e){e.date="date",e.datetime="date",e.exactdate="date",e.week="week",e.month="month",e.quarter="quarter",e.year="year"}(EDateType||(EDateType={})),function(e){e.date="YYYY-MM-DD HH:mm:ss",e.datetime="YYYY-MM-DD HH:mm:ss",e.exactdate="YYYY-MM-DD",e.week="YYYY-wo",e.month="YYYY-MM",e.quarter="YYYY-[Q]Q",e.year="YYYY"}(EDateFormat||(EDateFormat={})),function(e){e.hour="HH",e["hour-minute"]="HH:mm",e["hour-minute-second"]="HH:mm:ss"}(ETimeFormat||(ETimeFormat={}));const propTypes={items:PropTypes__default.arrayOf(PropTypes__default.shape({type:PropTypes__default.string.isRequired,fieldName:PropTypes__default.string.isRequired})),initialValues:PropTypes__default.object,initialExtras:PropTypes__default.object,layout:PropTypes__default.oneOf(["horizontal","vertical"]),size:(e,t,a)=>{if(!isValidComponentSize(e[t]||""))return throwError("Form","Invalid prop `"+t+"` supplied to `"+a+"`. Validation failed.")},cols:PropTypes__default.number,customClass:PropTypes__default.string,compactMode:PropTypes__default.bool,labelWidth:PropTypes__default.oneOfType([PropTypes__default.number,PropTypes__default.string]),labelAlign:PropTypes__default.oneOf(["left","right"]),labelWrap:PropTypes__default.bool,formType:PropTypes__default.oneOf(["default","search","onlyShow"]),uniqueKey:PropTypes__default.string,defaultRows:PropTypes__default.number,searchButtonCols:PropTypes__default.number,scrollToFirstError:PropTypes__default.bool,authConfig:PropTypes__default.object,isAutoFocus:PropTypes__default.bool,isCollapse:PropTypes__default.bool,isFieldsDefine:PropTypes__default.bool,isSearchBtn:PropTypes__default.bool,isSubmitBtn:PropTypes__default.bool,fieldsChange:PropTypes__default.func,onValuesChange:PropTypes__default.func,onFieldsChange:PropTypes__default.func,onFinish:PropTypes__default.func,onFinishFailed:PropTypes__default.func,onReset:PropTypes__default.func,onCollapse:PropTypes__default.func},defaultProps$1={layout:"horizontal",labelWidth:DEFAULT_LABEL_WIDTH,labelAlign:"right",formType:"default",initialValues:{},initialExtras:{},defaultRows:DEFAULT_ROWS,isAutoFocus:!0,isCollapse:!0,isSearchBtn:!0,onValuesChange:noop$1,onFieldsChange:noop$1,onFinish:noop$1,onFinishFailed:noop$1,onReset:noop$1,onCollapse:noop$1,onFormItemsChange:noop$1},getDate$1=(e,t)=>{if(!e)return null;if(t===EDateFormat.week){const t=e.match(/^(\d{4})-(\d+)/);return t?dayjs().year(Number(t[1])).week(Number(t[2])):null}if(t===EDateFormat.quarter){const t=e.match(/^(\d{4})-Q(\d)/);return t?dayjs().year(Number(t[1])).quarter(Number(t[2])):null}return dayjs(e,t)},formatDate$1=(e,t)=>e?dayjs(e).format(t):"",isEmptyValue=e=>""===e||null==e,getSplitValue$1=(e,t)=>{var a;if(!e)return"";if(!t.includes("|"))return e[t];const r=t.split("|");let l="";for(let t=0,n=r.length;t<n;t++){l+=(null!==(a=e[r[t].trim()])&&void 0!==a?a:"")+(t===n-1?"":" | ")}return l},setEchoRecord=(e,t,a)=>{for(const r in a)if(Object.keys(t).includes(r)&&t[r]!==a[r])if(t[r].includes("|")){const l=t[r].split("|"),n=a[r].split("|");l.forEach(((t,a)=>e[t]=e[n[a]]))}else e[t[r]]=e[a[r]]},setEchoExtras=(e,t,a)=>{for(const r in a)if(Object.keys(t).includes(r)&&t[r]!==a[r])if(t[r].includes("|")){const l=t[r].split("|"),n=a[r].split("|");l.forEach(((t,a)=>e[t]=e[n[a]]))}else e[t[r]]=e[a[r]]},deepMapList=(e,t,a)=>e.map((e=>{const r={value:e[t],text:e[a]};return e.disabled&&(r.disabled=!0),e.isLeaf&&(r.isLeaf=!0),Array.isArray(e.children)&&(r.children=deepMapList(e.children,t,a)),r})),deepFind$1=(e,t)=>{let a=null;for(let r=0;r<e.length;r++){if(Array.isArray(e[r].children)&&(a=deepFind$1(e[r].children,t)),a)return a;if(e[r].value===t)return e[r]}return a},deepFindValues=function(e,t){let a=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0;const r=[];return e.forEach((e=>{e.value==t.split(",")[a]&&r.push(e),Array.isArray(e.children)&&r.push(...deepFindValues(e.children,t,a+1))})),r},formatNumber$1=e=>e.toString().replace(/\B(?=(\d{3})+(?!\d))/g,","),secretFormat=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"",t=arguments.length>1?arguments[1]:void 0;return e=e.toString(),"finance"===t&&(e=formatNumber$1(e)),"name"===t&&(e=e.replace(/^([\u4e00-\u9fa5]{1}).+$/,"$1**")),"phone"===t&&(e=e.replace(/^(\d{3}).+(\d{4})$/,"$1****$2")),"IDnumber"===t&&(e=e.replace(/^(\d{3}).+(\w{4})$/,"$1***********$2")),"bankNumber"===t&&(e=e.replace(/^(\d{4}).+(\w{3})$/,"$1************$2")),e},createShConfig=(e,t,a,r)=>{var l;const n={};return n.filters=(null===(l=e.filters)||void 0===l?void 0:l.filter((e=>"1"===e.isQuery)).map((e=>{const t={type:e.type,label:e.label,fieldName:e.fieldName,options:{}};return Array.isArray(e.dicData)&&(t.options.itemList=e.dicData),t})))||[],n.table={columns:e.columns||[],rowKey:e.valueName},n.fieldsDefine={valueKey:e.valueKey||e.valueName},n.fieldAliasMap={[r?"textKey":t]:e.displayName[0],[r?"valueKey":e.valueKey||e.valueName]:e.valueName},e.tableSetting&&(n.table.fetch={api:a(e.tableSetting.api),dataKey:e.tableSetting.dataKey}),e.echoSetting&&(n.echoRequest={fetchApi:a(e.echoSetting.api),formatter:t=>{var a;return Object.assign({},t,{[e.echoSetting.paramKey]:null!==(a=t.key)&&void 0!==a?a:t.keys})},dataKey:e.echoSetting.dataKey},e.echoSetting.displayKey&&(n.echoRequest.fieldAliasMap={[r?"textKey":t]:e.echoSetting.displayKey[0]})),e.treeSetting&&(n.tree={fetch:{api:a(e.treeSetting.api),dataKey:e.treeSetting.dataKey,valueKey:e.treeSetting.valueKey,textKey:e.treeSetting.textKey},tableParamsMap:()=>{var t;const a={};return null===(t=e.treeSetting.relativeTable)||void 0===t||t.forEach((e=>a[e.tableField]=e.treeField)),a}}),e.emmediateSetting&&(n.columns=e.emmediateSetting.columns,n.request={fetchApi:a(e.emmediateSetting.api),dataKey:e.emmediateSetting.dataKey}),n};class FieldsFilter extends Component{constructor(e){super(e),this.linkRef=React__default.createRef(),this.state={visible:!1},this.initLocalfields()}get formUniqueKey(){return this.props.uniqueKey?`form_${this.props.uniqueKey}`:""}getTableFieldsConfig(e){return __awaiter(this,void 0,void 0,(function*(){const t=this.context.global,a=null==t?void 0:t.getComponentConfigApi;if(a)try{const t=yield a({key:e});if(200===t.code)return t.data}catch(e){}}))}saveTableColumnsConfig(e,t){return __awaiter(this,void 0,void 0,(function*(){const a=this.context.global,r=null==a?void 0:a.saveComponentConfigApi;if(r)try{yield r({[e]:t})}catch(e){}}))}getLocalFields(){if(!this.formUniqueKey)return;const e=JSON.parse(localStorage.getItem(this.formUniqueKey));if(e||this.getTableFieldsConfig(this.formUniqueKey).then((e=>{if(!e)return this.setLocalFields(this.props.items);localStorage.setItem(this.formUniqueKey,JSON.stringify(e)),this.initLocalfields()})).catch((()=>{})),!e)return;return xor(e.map((e=>e.fieldName)),this.props.items.map((e=>e.fieldName))).length>0?this.props.items.map((t=>{const{fieldName:a}=t,r=e.find((e=>e.fieldName===a));return r?(isUndefined(r.hidden)||(t.hidden=r.hidden),t):t})):e.map((e=>{const t=this.props.items.find((t=>t.fieldName===e.fieldName));return Object.assign(Object.assign({},t),e)}))}setLocalFields(e){if(!this.formUniqueKey)return;const t=e.map((e=>{const t={};return isUndefined(e.hidden)||(t.hidden=e.hidden),Object.assign({fieldName:e.fieldName},t)})),a=JSON.parse(localStorage.getItem(this.formUniqueKey));isEqual$1(t,a)||(localStorage.setItem(this.formUniqueKey,JSON.stringify(t)),this.saveTableColumnsConfig(this.formUniqueKey,t))}initLocalfields(){const e=this.getLocalFields();e&&this.changeHandle(e)}changeHandle(e){const{fieldsChange:t}=this.props;null==t||t(e.filter((e=>!e.noAuth)))}popup(){const{items:e}=this.props,a=e.filter((e=>!e.noAuth));return React__default.createElement(FormContext.Consumer,null,(e=>{const r=e.$$form;return React__default.createElement("div",{className:classNames("ant-dropdown-menu","fields-list")},React__default.createElement(ReactSortable,{itemKey:"fieldName",handle:".handle",tag:"ul",animation:200,list:a,setList:e=>{const t=e.map((e=>e.fieldName)),l=a.map((e=>e.fieldName));isEqual$1(t,l)||(r.setExpandHandle(!0),this.changeHandle(e),this.setLocalFields(e))}},a.map((e=>{var l;return React__default.createElement("li",{key:e.fieldName,className:"item"},React__default.createElement(Checkbox,{disabled:(null===(l=e.rules)||void 0===l?void 0:l.findIndex((e=>e.required)))>-1,checked:!e.hidden,onChange:t=>{const{checked:r}=t.target;e.hidden=!r,this.changeHandle(a),this.setLocalFields(a)}}),React__default.createElement(HolderOutlined,{className:"handle",title:t("qm.form.draggable")}),React__default.createElement("span",{className:"title"},r.getFormItemLabel(e.label||"")))}))))}))}render(){const{visible:e}=this.state,t=getPrefixCls("form-fields-filter");return React__default.createElement(FormContext.Consumer,null,(a=>{const{$size:r}=a.$$form,l={[t]:!0,[`${t}--lg`]:"large"===r,[`${t}--sm`]:"small"===r};return React__default.createElement(Dropdown,{overlayClassName:classNames(l),overlay:this.popup(),trigger:["click"],placement:"bottomRight",overlayStyle:{minWidth:150},getPopupContainer:()=>this.linkRef.current,visible:e,onVisibleChange:e=>{this.setState({visible:e})}},React__default.createElement("a",{ref:this.linkRef,style:{padding:"5px 0"}},React__default.createElement(UnorderedListOutlined,null)))}))}}FieldsFilter.contextType=ConfigContext;const FormItemView=e=>{const{value:t,bordered:a}=e;return React__default.createElement(Input,{value:t,title:t,bordered:a,readOnly:!0})};FormItemView.displayName="FormItemView";const VInput=React__default.forwardRef(((e,a)=>{const{$$form:r}=React__default.useContext(FormContext),{value:l,onChange:n,onValuesChange:i}=e,{options:o={},style:s={},placeholder:c=t("qm.form.inputPlaceholder"),bordered:d=!0,allowClear:u=!0,readOnly:p,disabled:f,onBlur:m=noop$1,onEnter:h=noop$1}=e.option,{prefix:g,suffix:_,password:y,maxLength:v,pattern:b,toUpper:R,toTrim:E,secretType:x}=o,C=x&&(p||f),T=e=>{null==n||n(e),i(e)},S=y?Input.Password:Input,w=C?secretFormat(l,x):l;return r.isOnlyShow?React__default.createElement(FormItemView,{value:(e=>e&&y?new Array(e.length).fill("*").join(""):e)(w),bordered:d}):React__default.createElement(S,{ref:a,value:w,placeholder:c,style:s,title:y?"":w,prefix:g,suffix:_,maxLength:v,bordered:d,allowClear:u,readOnly:p,disabled:f,onBlur:t=>{var a;let r=null!==(a=t.target.value)&&void 0!==a?a:"";if(E){const e=r.trim();r!==e&&(r=e,T(r))}(t=>{const{onBlur:a}=e;null==a||a(t)})(r),m(r)},onKeyUp:e=>{if(13===e.keyCode){const{value:t}=e.target;h(t),r.isFilterType&&r.SUBMIT_FORM()}},onChange:e=>{let t=e.target.value;isRegExp(b)&&(t=b.test(t)?t:null!=l?l:""),R&&(t=t.toUpperCase()),T(t)}})}));VInput.displayName="VInput";class FormInput extends Component{constructor(){super(...arguments),this.focus=()=>{const{type:e}=this.props.option;this[e].focus()}}render(){const{$$form:e}=this.context,{type:t,label:a,tooltip:r,fieldName:l,invisible:n,options:i={},labelWidth:o=e.props.labelWidth,className:s,extra:c,buttonAfter:d,validateTrigger:u,rules:p=[],onChange:f=noop$1}=this.props.option;return React__default.createElement(Form.Item,{label:e.renderFormLabel(a),className:classNames(l,s),tooltip:r,hidden:n,labelCol:{flex:e.verticalLayout?"initial":getParserWidth(o)},required:e.getFormItemRequired(p)},React__default.createElement(Row,{wrap:!1,gutter:4},React__default.createElement(Col,{flex:"auto"},React__default.createElement(Form.Item,{name:l,noStyle:!0,rules:p,validateTrigger:u,messageVariables:{label:e.getFormItemLabel(a)}},React__default.createElement(VInput,{ref:e=>this[t]=e,option:this.props.option,onValuesChange:t=>{f(t),e.setViewValue(l,t)}}))),d&&React__default.createElement(Col,null,e.renderFormItemButton(l,d)),c&&React__default.createElement(Col,{flex:getParserWidth(c.labelWidth||DEFAULT_LABEL_WIDTH)},e.renderFormItemExtra(Object.assign({fieldName:l},c)))))}}FormInput.contextType=FormContext;const VRangeInput=e=>{const{$$form:a}=React__default.useContext(FormContext),{value:r=[],onChange:l,onValuesChange:n}=e,{options:i={},placeholder:o=t("qm.form.rangeInputNumberPlaceholder"),bordered:s=!0,allowClear:c,readOnly:d,disabled:u}=e.option,{prefix:p,suffix:f,maxLength:m}=i,h=e=>{const t=e.every((e=>!e))?[]:e;null==l||l(t),n(t,g(t))},g=e=>e.join(" - ");return a.isOnlyShow?React__default.createElement(FormItemView,{value:g(r),bordered:s}):React__default.createElement(Input.Group,null,React__default.createElement(Input,{value:r[0],className:"site-input-left",style:{width:"calc(50% - 5px)"},placeholder:o[0],prefix:p,suffix:f,maxLength:m,allowClear:c,bordered:s,readOnly:d,disabled:u,onChange:e=>{const{value:t}=e.target;h([t,r[1]])}}),React__default.createElement(Input,{className:"site-input-split",style:{width:10,paddingLeft:0,paddingRight:0,borderLeft:0,borderRight:0,textAlign:"center",pointerEvents:"none"},placeholder:"~",bordered:s,disabled:u,readOnly:!0}),React__default.createElement(Input,{value:r[1],className:"site-input-right",style:{width:"calc(50% - 5px)"},placeholder:o[1],prefix:p,suffix:f,maxLength:m,bordered:s,allowClear:c,readOnly:d,disabled:u,onChange:e=>{const{value:t}=e.target;h([r[0],t])}}))};class FormRangeInput extends Component{render(){const{$$form:e}=this.context,{type:t,label:a,tooltip:r,fieldName:l,invisible:n,labelWidth:i=e.props.labelWidth,className:o,extra:s,validateTrigger:c,rules:d=[],onChange:u=noop$1}=this.props.option;return React__default.createElement(Form.Item,{label:e.renderFormLabel(a),className:classNames(l,o),tooltip:r,hidden:n,labelCol:{flex:e.verticalLayout?"initial":getParserWidth(i)},required:e.getFormItemRequired(d)},React__default.createElement(Row,{wrap:!1,gutter:4},React__default.createElement(Col,{flex:"auto"},React__default.createElement(Form.Item,{name:l,noStyle:!0,rules:d,validateTrigger:c,messageVariables:{label:e.getFormItemLabel(a)}},React__default.createElement(VRangeInput,{option:this.props.option,onValuesChange:function(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],a=arguments.length>1?arguments[1]:void 0;u(t),e.setViewValue(l,a)}}))),s&&React__default.createElement(Col,{flex:getParserWidth(s.labelWidth||DEFAULT_LABEL_WIDTH)},e.renderFormItemExtra(Object.assign({fieldName:l},s)))))}}FormRangeInput.contextType=FormContext;const toNumber=e=>{const t=Number(e);return Number.isNaN(t)?e:t},VInputNumber=React__default.forwardRef(((e,a)=>{const{$$form:r}=React__default.useContext(FormContext),{value:l,onChange:n,onValuesChange:i}=e,{options:o={},style:s={},placeholder:c=t("qm.form.inputPlaceholder"),bordered:d=!0,readOnly:u,disabled:p,onBlur:f=noop$1,onEnter:m=noop$1}=e.option,{step:h=1,min:g,max:_,precision:y,textAlign:v="left",controls:b=!0,formatter:R,parser:E}=o,x=e=>{const t=isEmptyValue(e)?"":Number(e).toFixed(y);return"function"==typeof R?R(t):t},C={[v]:!0,controls:b};return r.isOnlyShow?React__default.createElement(FormItemView,{value:x(l),bordered:d}):React__default.createElement(InputNumber$1,{ref:a,value:l,className:classNames(C),placeholder:c,style:Object.assign({width:"100%"},s),step:h,min:g,max:_,controls:b,precision:y,formatter:R,parser:E,bordered:d,readOnly:u,disabled:p,onBlur:t=>{nextTick((()=>{const a=t.target.value,r="function"==typeof E?E(a):a;(t=>{const{onBlur:a}=e;null==a||a(t)})(toNumber(r)),f(toNumber(r))}))},onKeyUp:e=>{if(13===e.keyCode){const t=e.target.value,a="function"==typeof E?E(t):t;m(toNumber(a))}},onChange:e=>{(e=>{null==n||n(e),i(e,x(e))})(e)}})}));VInputNumber.displayName="VInputNumber";class FormInputNumber extends Component{constructor(){super(...arguments),this.focus=()=>{const{type:e}=this.props.option;this[e].focus()}}render(){const{$$form:e}=this.context,{type:t,label:a,tooltip:r,fieldName:l,invisible:n,options:i={},labelWidth:o=e.props.labelWidth,className:s,extra:c,buttonAfter:d,validateTrigger:u,rules:p=[],onChange:f=noop$1}=this.props.option;return React__default.createElement(Form.Item,{label:e.renderFormLabel(a),className:classNames(l,s),tooltip:r,hidden:n,labelCol:{flex:e.verticalLayout?"initial":getParserWidth(o)},required:e.getFormItemRequired(p)},React__default.createElement(Row,{wrap:!1,gutter:4},React__default.createElement(Col,{flex:"auto"},React__default.createElement(Form.Item,{name:l,noStyle:!0,rules:p,validateTrigger:u,messageVariables:{label:e.getFormItemLabel(a)}},React__default.createElement(VInputNumber,{ref:e=>this[t]=e,option:this.props.option,onValuesChange:(t,a)=>{f(t),e.setViewValue(l,a)}}))),d&&React__default.createElement(Col,null,e.renderFormItemButton(l,d)),c&&React__default.createElement(Col,{flex:getParserWidth(c.labelWidth||DEFAULT_LABEL_WIDTH)},e.renderFormItemExtra(Object.assign({fieldName:l},c)))))}}FormInputNumber.contextType=FormContext;const VRangeInputNumber=e=>{const{$$form:a}=React__default.useContext(FormContext),{value:r=[],onChange:l,onValuesChange:n}=e,{options:i={},placeholder:o=t("qm.form.rangeInputNumberPlaceholder"),bordered:s=!0,allowClear:c,readOnly:d,disabled:u}=e.option,{step:p=1,min:f=0,max:m,textAlign:h="left",controls:g=!0,precision:_,formatter:y,parser:v}=i,b=e=>{e.every((e=>null!==e))&&e[0]>e[1]&&(e[1]=e[0]),R(e)},R=e=>{const t=e.every((e=>null===e))?[]:[...e];null==l||l(t),n(t,E(t))},E=e=>isEmptyValue(e)?"":e.map((e=>isEmptyValue(e)?"":Number(e).toFixed(_))),x={[h]:!0,controls:g};return a.isOnlyShow?React__default.createElement(FormItemView,{value:E(r),bordered:s}):React__default.createElement(Input.Group,null,React__default.createElement(InputNumber$1,{value:r[0],className:classNames("site-input-left",x),style:{width:"calc(50% - 5px)",display:"table-cell",float:"left"},placeholder:o[0],step:p,min:f,max:m,controls:g,precision:_,formatter:y,parser:v,bordered:s,readOnly:d,disabled:u,onChange:e=>{R([e,r[1]])},onBlur:()=>{b(r)}}),React__default.createElement(Input,{className:"site-input-split",style:{width:10,paddingLeft:0,paddingRight:0,borderLeft:0,borderRight:0,textAlign:"center",pointerEvents:"none"},placeholder:"~",bordered:s,disabled:u,readOnly:!0}),React__default.createElement(InputNumber$1,{value:r[1],className:classNames("site-input-right",x),style:{width:"calc(50% - 5px)"},placeholder:o[1],step:p,min:f,max:m,controls:g,precision:_,formatter:y,parser:v,bordered:s,readOnly:d,disabled:u,onChange:e=>{R([r[0],e])},onBlur:()=>{b(r)}}))};class FormRangeInputNumber extends Component{render(){const{$$form:e}=this.context,{type:t,label:a,tooltip:r,fieldName:l,invisible:n,labelWidth:i=e.props.labelWidth,className:o,extra:s,validateTrigger:c,rules:d=[],onChange:u=noop$1}=this.props.option;return React__default.createElement(Form.Item,{label:e.renderFormLabel(a),className:classNames(l,o),tooltip:r,hidden:n,labelCol:{flex:e.verticalLayout?"initial":getParserWidth(i)},required:e.getFormItemRequired(d)},React__default.createElement(Row,{wrap:!1,gutter:4},React__default.createElement(Col,{flex:"auto"},React__default.createElement(Form.Item,{name:l,noStyle:!0,rules:d,validateTrigger:c,messageVariables:{label:e.getFormItemLabel(a)}},React__default.createElement(VRangeInputNumber,{option:this.props.option,onValuesChange:function(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],a=arguments.length>1?arguments[1]:void 0;u(t),e.setViewValue(l,a)}}))),s&&React__default.createElement(Col,{flex:getParserWidth(s.labelWidth||DEFAULT_LABEL_WIDTH)},e.renderFormItemExtra(Object.assign({fieldName:l},s)))))}}var SizeHeight;FormRangeInputNumber.contextType=FormContext,function(e){e[e.large=40]="large",e[e.middle=32]="middle",e[e.small=24]="small"}(SizeHeight||(SizeHeight={}));const{Search:Search$2}=Input;class VSearch extends Component{constructor(e){var t;super(e),t=this,this._is_change=!1,this.state={visible:!1,loading:!1},this.setVisible=(e,t)=>{this.setState({visible:e},t)},this.initialHandle=()=>__awaiter(this,void 0,void 0,(function*(){yield this.props.waiting();const{helperConfig:e}=this.props,{fieldName:t}=this.props.option;this.searchHelper=Object.assign({},e,this.props.option.searchHelper);const{fieldAliasMap:a,extraAliasMap:r,fieldsDefine:l}=this.searchHelper;if(a||warn("Form","SEARCH_HELPER 需要配置 `fieldAliasMap` 选项"),this.alias="function"==typeof a?a():a||{},this.extras="function"==typeof r?r():r||{},l){const e=["valueKey","displayKey","extraKey"];for(const t in l)e.includes(t)&&(this[t]=l[t])}Object.keys(this.alias).includes(t)||warn("Form","SEARCH_HELPER 的 fieldAliasMap 选项必须包含自身 `fieldName` 值"),this.searchHelper.echoRequest&&!this.valueKey&&warn("Form","SEARCH_HELPER 的 echoRequest 选项必须组合 `fieldsDefine` 中的 `valueKey` 一起使用")})),this.getItemValue=()=>{const{$$form:e}=this.context;return e.state.other[this.valueKey]},this.getLastedSearchHelper=()=>Object.assign({},this.searchHelper,this.props.option.searchHelper),this.getItemText=()=>__awaiter(this,void 0,void 0,(function*(){var e;yield this.props.waiting();const t=this.getItemValue();if(t===this._prevValue)return;this._prevValue=t;const{fetchApi:a,params:r={},formatter:l=(e=>e),dataKey:n,callback:i,fieldAliasMap:o,extraAliasMap:s}=this.searchHelper.echoRequest||{},c="function"==typeof o?o():o||{},d="function"==typeof s?s():s||{},{value:u}=this.props;if(a&&!u&&t){this.setState({loading:!0});try{const o=yield a(l(Object.assign(Object.assign({},r),{key:t})));if(200===o.code){const t=Array.isArray(o.data)?o.data:null!==(e=get(o.data,n))&&void 0!==e?e:[];if(t[0]){const e=t[0];c&&setEchoRecord(e,this.alias,c),d&&setEchoExtras(e,this.extras,d),this._record=e,this.setFieldsValue(e),null==i||i([e])}}}catch(e){}this.setState({loading:!1})}})),this.todoOpen=e=>{this.deriveParams=this.createFilters(e),this.setVisible(!0)},this.createFilters=e=>{const{fieldName:t}=this.props.option,{filterAliasMap:a}=this.searchHelper,r=""!==e?e:void 0,l="function"==typeof a?a():null!=a?a:[],n={[t]:r};return l.forEach((e=>n[e]=r)),n},this.getSearchHelperTableData=e=>{const{table:t,initialValue:a={}}=this.searchHelper,{beforeFetch:r=trueNoop,formatter:l=(e=>e)}=t.fetch;return new Promise(((n,i)=>__awaiter(this,void 0,void 0,(function*(){var o;const s=merge({},this.getLastedSearchHelper().table.fetch.params,Object.assign(Object.assign({},a),l(this.createFilters(e))),{currentPage:1,pageSize:500});try{if(!r(s))return i();this.setState({loading:!0});const e=yield t.fetch.api(s);if(nextTick((()=>this.setState({loading:!1}))),200===e.code){const a=Array.isArray(e.data)?e.data:null!==(o=get(e.data,t.fetch.dataKey))&&void 0!==o?o:[];return n(a)}}catch(e){this.setState({loading:!1})}i()}))))},this.setFieldsValue=e=>{const{$$form:t}=this.context,{fieldName:a}=this.props.option;for(const r in this.alias){const l=getSplitValue$1(e,this.alias[r]);void 0!==l&&(t.SET_FIELDS_VALUE({[r]:l}),r===a&&t.setViewValue(a,l))}for(const a in this.extras){const r=getSplitValue$1(e,this.extras[a]);void 0!==r&&t.SET_FIELDS_EXTRA({[a]:r})}},this.resetSearchHelperValue=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],a=arguments.length>1?arguments[1]:void 0;return __awaiter(t,void 0,void 0,(function*(){const{fieldName:t}=this.props.option,r=e.filter((e=>{var r;return null===(r=getSplitValue$1(e,this.alias[t]))||void 0===r?void 0:r.toString().toLowerCase().includes(a.toLowerCase())}));if(1===r.length)return this.closeSearchHelper(r[0]);this.openSearchHelper(a)}))},this.openSearchHelper=(e,t)=>__awaiter(this,void 0,void 0,(function*(){yield this.props.waiting();const{$$form:a}=this.context,{beforeOpen:r}=this.searchHelper,l=(null!=r?r:trueNoop)(a.state.formData);(null==l?void 0:l.then)?l.then((()=>{this.todoOpen(e),null==t||t()})).catch((()=>{})):!1!==l&&(this.todoOpen(e),null==t||t())})),this.closeSearchHelper=e=>{const{$$form:t}=this.context,{fieldName:a}=this.props.option;for(const r in this.alias)r!==a&&t.SET_FIELDS_VALUE({[r]:getSplitValue$1(e,this.alias[r])});for(const a in this.extras)t.SET_FIELDS_EXTRA({[a]:getSplitValue$1(e,this.extras[a])});this._record=e;const r=getSplitValue$1(e,this.alias[a]);this.triggerChange(r),this.searchHelperChangeHandle(r);const{closed:l}=this.searchHelper;this.setVisible(!1,(()=>{this.focus(),setTimeout((()=>null==l?void 0:l(e)),200)}))},this.closeButNotSelect=()=>{const{onlySelect:e=!0}=this.searchHelper;this._is_change&&(e?this.clearSearchHelperValue():this.searchHelperChangeHandle(this.props.value)),this._is_change=!1,this.setVisible(!1,(()=>{this.focus()}))},this.clearSearchHelperValue=()=>{const{$$form:e}=this.context,{fieldName:t}=this.props.option;if(this.triggerChange(""),null!==this._record){for(const a in this.alias)a!==t&&e.SET_FIELDS_VALUE({[a]:void 0});for(const t in this.extras)e.SET_FIELDS_EXTRA({[t]:""});this._record=null,this.searchHelperChangeHandle("")}},this.searchHelperChangeHandle=e=>{const{onChange:t}=this.props.option;this.deriveParams={},this._is_change=!1,null==t||t(e,this._record)},this.triggerChange=e=>{const{onChange:t,onValuesChange:a}=this.props;null==t||t(e),a(e)},this.triggerBlur=e=>{const{onBlur:t}=this.props;null==t||t(e)},this.focus=()=>{const{type:e}=this.props.option;this[`${e}_Ref`].focus({cursor:"end"})},this.initialHandle()}componentDidMount(){this.getItemText()}componentDidUpdate(){this.getItemText()}render(){var e;const{$$form:a}=this.context,{visible:r,loading:l}=this.state,{value:n}=this.props,{type:i,options:o={},searchHelper:s={},style:c={},placeholder:d=t("qm.form.inputPlaceholder"),bordered:u=!0,allowClear:p=!0,readOnly:f,disabled:m}=this.props.option,{prefix:h,suffix:g,maxLength:_}=o,y={visible:r,title:t("qm.searchHelper.text"),width:null!==(e=s.width)&&void 0!==e?e:"60%",loading:!1,bodyStyle:{paddingBottom:`${SizeHeight[a.$size]+20}px`},onClose:()=>{this.closeButNotSelect()}},v=Object.assign(Object.assign({},this.getLastedSearchHelper()),{size:a.$size,initialValue:merge({},s.initialValue,this.deriveParams),onClose:e=>{e?this.closeSearchHelper(e):this.closeButNotSelect()}});return a.isOnlyShow?React__default.createElement(FormItemView,{value:n,bordered:u}):React__default.createElement(React__default.Fragment,null,React__default.createElement(Search$2,{ref:e=>this[`${i}_Ref`]=e,value:n,title:n,loading:l,placeholder:d,style:c,prefix:h,suffix:g,maxLength:_,bordered:u,allowClear:p,readOnly:f,disabled:m,onBlur:e=>{var t;const{value:a}=e.target,{onlySelect:l=!0,table:n}=this.searchHelper;this.triggerBlur(a),this._is_change&&!r&&(a?l?(null===(t=null==n?void 0:n.fetch)||void 0===t?void 0:t.api)&&this.getSearchHelperTableData(a).then((e=>this.resetSearchHelperValue(e,a))).catch((()=>this.clearSearchHelperValue())):this.searchHelperChangeHandle(a):this.clearSearchHelperValue())},onKeyDown:e=>{if(13===e.keyCode){e.preventDefault();const{value:t}=e.target;!r&&this.openSearchHelper(t)}},onDoubleClick:e=>{const{value:t}=e.target;this.openSearchHelper(t)},onChange:e=>{const{value:t}=e.target;this.triggerChange(t),this._is_change=!0},onSearch:(e,t)=>{"click"===(null==t?void 0:t.type)&&("INPUT"!==t.target.tagName?this.openSearchHelper(e):nextTick((()=>this.clearSearchHelperValue())))}}),React__default.createElement(QmModal,y,React__default.createElement(SearchHelper,v)))}}VSearch.contextType=FormContext;class FormSearchHelper extends Component{constructor(e,t){let{$$form:a}=t;super(e),this.state={searchHelper:{}},this.waiting=()=>__awaiter(this,void 0,void 0,(function*(){try{yield this.promiseRef}catch(e){throwError("Form","搜索帮助获取定义信息的接口出错")}})),this.getHelperConfig=e=>{var t,a;const{global:r}=e,{name:l,fieldsDefine:n}=this.props.option.searchHelper||{};if(!l)return;if(!(null===(t=null==r?void 0:r.searchHelper)||void 0===t?void 0:t.getServerConfig)||!(null===(a=null==r?void 0:r.searchHelper)||void 0===a?void 0:a.createFetchApi))return warn("searchHelper","从服务端获取定义信息的时候,ConfigProvider 组件 `getServerConfig` 和 `createFetchApi` 为必选参数");const{fieldName:i}=this.props.option;this.promiseRef=new Promise(((e,t)=>__awaiter(this,void 0,void 0,(function*(){try{const a=yield r.searchHelper.getServerConfig({searchHelperId:l});if(200===a.code){const t=createShConfig(Object.assign({},a.data,n),i,r.searchHelper.createFetchApi);this.setState({searchHelper:t},(()=>e()))}else t()}catch(e){t()}}))))},this.getHelperConfig(a.context)}render(){const{$$form:e}=this.context,{searchHelper:t}=this.state,{type:a,label:r,tooltip:l,fieldName:n,invisible:i,options:o={},labelWidth:s=e.props.labelWidth,className:c,extra:d,buttonAfter:u,validateTrigger:p,rules:f=[]}=this.props.option;return React__default.createElement(Form.Item,{label:e.renderFormLabel(r),className:classNames(n,c),tooltip:l,hidden:i,labelCol:{flex:e.verticalLayout?"initial":getParserWidth(s)},required:e.getFormItemRequired(f)},React__default.createElement(Row,{wrap:!1,gutter:4},React__default.createElement(Col,{flex:"auto"},React__default.createElement(Form.Item,{name:n,noStyle:!0,rules:f,validateTrigger:p,messageVariables:{label:e.getFormItemLabel(r)}},React__default.createElement(VSearch,{ref:e=>this.searchRef=e,option:this.props.option,helperConfig:t,waiting:this.waiting,onValuesChange:function(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"";e.setViewValue(n,t)}}))),u&&React__default.createElement(Col,null,e.renderFormItemButton(n,u)),d&&React__default.createElement(Col,{flex:getParserWidth(d.labelWidth||DEFAULT_LABEL_WIDTH)},e.renderFormItemExtra(Object.assign({fieldName:n},d)))))}}FormSearchHelper.contextType=FormContext;const OutsideClick=e=>{class t extends Component{constructor(){var e;super(...arguments),e=this,this.event1=null,this.event2=null,this.$el=null,this.omitClassNames=[],this.state={clickOutside:!1},this.mousedownHandler=e=>{this.startClick=e},this.mouseupHandler=e=>{this.documentHandler(e,this.startClick)},this.documentHandler=(e,t)=>{var a,r;const l=e.target,n=null==t?void 0:t.target,i=!l||!n,o=(null===(a=this.$el)||void 0===a?void 0:a.contains(l))||(null===(r=this.$el)||void 0===r?void 0:r.contains(n)),s=this.$el===l,c=this.omitClassNames.map((e=>document.querySelector(e))),d=c.some((e=>null==e?void 0:e.contains(l)))||c.includes(n);let u;u=!(i||o||s||d),this.setState({clickOutside:u})},this.setCurrentElement=e=>{e&&(this.$el=e)},this.setOmitClassNames=function(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];e.omitClassNames=t}}componentDidMount(){this.event1=addEventListener(document,"mousedown",this.mousedownHandler),this.event2=addEventListener(document,"mouseup",this.mouseupHandler)}componentWillUnmount(){var e,t;null===(e=this.event1)||void 0===e||e.remove(),null===(t=this.event2)||void 0===t||t.remove()}render(){const{forwardedRef:t}=this.props,{clickOutside:a}=this.state;return React__default.createElement(e,_extends$1({ref:t},this.props,{clickOutside:a,setCurrentElement:this.setCurrentElement,setOmitClassNames:this.setOmitClassNames}))}}return t.displayName=`OutsideClick(${e.displayName||e.name})`,React__default.forwardRef(((e,a)=>React__default.createElement(t,_extends$1({},e,{forwardedRef:a}))))};function contains(e,t){return!!e&&e.contains(t)}function addEventListenerWrap(e,t,a,r){var l=ReactDOM.unstable_batchedUpdates?function(e){ReactDOM.unstable_batchedUpdates(a,e)}:a;return e.addEventListener&&e.addEventListener(t,l,r),{remove:function(){e.removeEventListener&&e.removeEventListener(t,l,r)}}}var Portal=forwardRef((function(e,t){var a=e.didUpdate,r=e.getContainer,l=e.children,n=useRef(),i=useRef();useImperativeHandle(t,(function(){return{}}));var o=useRef(!1);return!o.current&&canUseDom()&&(i.current=r(),n.current=i.current.parentNode,o.current=!0),useEffect((function(){null==a||a(e)})),useEffect((function(){return null===i.current.parentNode&&null!==n.current&&n.current.appendChild(i.current),function(){var e,t;null===(e=i.current)||void 0===e||null===(t=e.parentNode)||void 0===t||t.removeChild(i.current)}}),[]),i.current?ReactDOM.createPortal(l,i.current):null}));function isPointsEq(e,t,a){return a?e[0]===t[0]:e[0]===t[0]&&e[1]===t[1]}function getAlignFromPlacement(e,t,a){return _objectSpread2$1(_objectSpread2$1({},e[t]||{}),a)}function getAlignPopupClassName(e,t,a,r){for(var l=a.points,n=Object.keys(e),i=0;i<n.length;i+=1){var o=n[i];if(isPointsEq(e[o].points,l,r))return"".concat(t,"-placement-").concat(o)}return""}var isMobile=function(){if("undefined"==typeof navigator||"undefined"==typeof window)return!1;var e=navigator.userAgent||navigator.vendor||window.opera;return!(!/(android|bb\d+|meego).+mobile|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\.(browser|link)|vodafone|wap|windows ce|xda|xiino|android|ipad|playbook|silk/i.test(e)&&!/1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw-(n|u)|c55\/|capi|ccwa|cdm-|cell|chtm|cldc|cmd-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc-s|devi|dica|dmob|do(c|p)o|ds(12|-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(-|_)|g1 u|g560|gene|gf-5|g-mo|go(\.w|od)|gr(ad|un)|haie|hcit|hd-(m|p|t)|hei-|hi(pt|ta)|hp( i|ip)|hs-c|ht(c(-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i-(20|go|ma)|i230|iac( |-|\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\/)|klon|kpt |kwc-|kyo(c|k)|le(no|xi)|lg( g|\/(k|l|u)|50|54|-[a-w])|libw|lynx|m1-w|m3ga|m50\/|ma(te|ui|xo)|mc(01|21|ca)|m-cr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|-([1-8]|c))|phil|pire|pl(ay|uc)|pn-2|po(ck|rt|se)|prox|psio|pt-g|qa-a|qc(07|12|21|32|60|-[2-7]|i-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h-|oo|p-)|sdk\/|se(c(-|0|1)|47|mc|nd|ri)|sgh-|shar|sie(-|m)|sk-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h-|v-|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl-|tdg-|tel(i|m)|tim-|t-mo|to(pl|sh)|ts(70|m-|m3|m5)|tx-9|up(\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas-|your|zeto|zte-/i.test(null==e?void 0:e.substr(0,4)))};function getMotion(e){var t=e.prefixCls,a=e.motion,r=e.animation,l=e.transitionName;return a||(r?{motionName:"".concat(t,"-").concat(r)}:l?{motionName:l}:null)}function Mask(e){var t=e.prefixCls,a=e.visible,r=e.zIndex,l=e.mask,n=e.maskMotion,i=e.maskAnimation,o=e.maskTransitionName;if(!l)return null;var s={};return(n||o||i)&&(s=_objectSpread2$1({motionAppear:!0},getMotion({motion:n,prefixCls:t,transitionName:o,animation:i}))),React.createElement(CSSMotion,_extends({},s,{visible:a,removeOnLeave:!0}),(function(e){var a=e.className;return React.createElement("div",{style:{zIndex:r},className:classNames("".concat(t,"-mask"),a)})}))}var isVisible=function(e){if(!e)return!1;if(e.offsetParent)return!0;if(e.getBBox){var t=e.getBBox();if(t.width||t.height)return!0}if(e.getBoundingClientRect){var a=e.getBoundingClientRect();if(a.width||a.height)return!0}return!1},vendorPrefix;function ownKeys(e,t){var a=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),a.push.apply(a,r)}return a}function _objectSpread2(e){for(var t=1;t<arguments.length;t++){var a=null!=arguments[t]?arguments[t]:{};t%2?ownKeys(Object(a),!0).forEach((function(t){_defineProperty(e,t,a[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(a)):ownKeys(Object(a)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(a,t))}))}return e}function _typeof(e){return _typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},_typeof(e)}function _defineProperty(e,t,a){return t in e?Object.defineProperty(e,t,{value:a,enumerable:!0,configurable:!0,writable:!0}):e[t]=a,e}var jsCssMap={Webkit:"-webkit-",Moz:"-moz-",ms:"-ms-",O:"-o-"};function getVendorPrefix(){if(void 0!==vendorPrefix)return vendorPrefix;vendorPrefix="";var e=document.createElement("p").style;for(var t in jsCssMap)t+"Transform"in e&&(vendorPrefix=t);return vendorPrefix}function getTransitionName(){return getVendorPrefix()?"".concat(getVendorPrefix(),"TransitionProperty"):"transitionProperty"}function getTransformName(){return getVendorPrefix()?"".concat(getVendorPrefix(),"Transform"):"transform"}function setTransitionProperty(e,t){var a=getTransitionName();a&&(e.style[a]=t,"transitionProperty"!==a&&(e.style.transitionProperty=t))}function setTransform(e,t){var a=getTransformName();a&&(e.style[a]=t,"transform"!==a&&(e.style.transform=t))}function getTransitionProperty(e){return e.style.transitionProperty||e.style[getTransitionName()]}function getTransformXY(e){var t=window.getComputedStyle(e,null),a=t.getPropertyValue("transform")||t.getPropertyValue(getTransformName());if(a&&"none"!==a){var r=a.replace(/[^0-9\-.,]/g,"").split(",");return{x:parseFloat(r[12]||r[4],0),y:parseFloat(r[13]||r[5],0)}}return{x:0,y:0}}var matrix2d=/matrix\((.*)\)/,matrix3d=/matrix3d\((.*)\)/;function setTransformXY(e,t){var a=window.getComputedStyle(e,null),r=a.getPropertyValue("transform")||a.getPropertyValue(getTransformName());if(r&&"none"!==r){var l,n=r.match(matrix2d);if(n)(l=(n=n[1]).split(",").map((function(e){return parseFloat(e,10)})))[4]=t.x,l[5]=t.y,setTransform(e,"matrix(".concat(l.join(","),")"));else(l=r.match(matrix3d)[1].split(",").map((function(e){return parseFloat(e,10)})))[12]=t.x,l[13]=t.y,setTransform(e,"matrix3d(".concat(l.join(","),")"))}else setTransform(e,"translateX(".concat(t.x,"px) translateY(").concat(t.y,"px) translateZ(0)"))}var RE_NUM=/[\-+]?(?:\d*\.|)\d+(?:[eE][\-+]?\d+|)/.source,getComputedStyleX;function forceRelayout(e){var t=e.style.display;e.style.display="none",e.offsetHeight,e.style.display=t}function css(e,t,a){var r=a;if("object"!==_typeof(t))return void 0!==r?("number"==typeof r&&(r="".concat(r,"px")),void(e.style[t]=r)):getComputedStyleX(e,t);for(var l in t)t.hasOwnProperty(l)&&css(e,l,t[l])}function getClientPosition(e){var t,a,r,l=e.ownerDocument,n=l.body,i=l&&l.documentElement;return t=e.getBoundingClientRect(),a=Math.floor(t.left),r=Math.floor(t.top),{left:a-=i.clientLeft||n.clientLeft||0,top:r-=i.clientTop||n.clientTop||0}}function getScroll(e,t){var a=e["page".concat(t?"Y":"X","Offset")],r="scroll".concat(t?"Top":"Left");if("number"!=typeof a){var l=e.document;"number"!=typeof(a=l.documentElement[r])&&(a=l.body[r])}return a}function getScrollLeft(e){return getScroll(e)}function getScrollTop(e){return getScroll(e,!0)}function getOffset(e){var t=getClientPosition(e),a=e.ownerDocument,r=a.defaultView||a.parentWindow;return t.left+=getScrollLeft(r),t.top+=getScrollTop(r),t}function isWindow(e){return null!=e&&e==e.window}function getDocument(e){return isWindow(e)?e.document:9===e.nodeType?e:e.ownerDocument}function _getComputedStyle(e,t,a){var r=a,l="",n=getDocument(e);return(r=r||n.defaultView.getComputedStyle(e,null))&&(l=r.getPropertyValue(t)||r[t]),l}var _RE_NUM_NO_PX=new RegExp("^(".concat(RE_NUM,")(?!px)[a-z%]+$"),"i"),RE_POS=/^(top|right|bottom|left)$/,CURRENT_STYLE="currentStyle",RUNTIME_STYLE="runtimeStyle",LEFT="left",PX="px";function _getComputedStyleIE(e,t){var a=e[CURRENT_STYLE]&&e[CURRENT_STYLE][t];if(_RE_NUM_NO_PX.test(a)&&!RE_POS.test(t)){var r=e.style,l=r[LEFT],n=e[RUNTIME_STYLE][LEFT];e[RUNTIME_STYLE][LEFT]=e[CURRENT_STYLE][LEFT],r[LEFT]="fontSize"===t?"1em":a||0,a=r.pixelLeft+PX,r[LEFT]=l,e[RUNTIME_STYLE][LEFT]=n}return""===a?"auto":a}function getOffsetDirection(e,t){return"left"===e?t.useCssRight?"right":e:t.useCssBottom?"bottom":e}function oppositeOffsetDirection(e){return"left"===e?"right":"right"===e?"left":"top"===e?"bottom":"bottom"===e?"top":void 0}function setLeftTop(e,t,a){"static"===css(e,"position")&&(e.style.position="relative");var r=-999,l=-999,n=getOffsetDirection("left",a),i=getOffsetDirection("top",a),o=oppositeOffsetDirection(n),s=oppositeOffsetDirection(i);"left"!==n&&(r=999),"top"!==i&&(l=999);var c="",d=getOffset(e);("left"in t||"top"in t)&&(c=getTransitionProperty(e)||"",setTransitionProperty(e,"none")),"left"in t&&(e.style[o]="",e.style[n]="".concat(r,"px")),"top"in t&&(e.style[s]="",e.style[i]="".concat(l,"px")),forceRelayout(e);var u=getOffset(e),p={};for(var f in t)if(t.hasOwnProperty(f)){var m=getOffsetDirection(f,a),h="left"===f?r:l,g=d[f]-u[f];p[m]=m===f?h+g:h-g}css(e,p),forceRelayout(e),("left"in t||"top"in t)&&setTransitionProperty(e,c);var _={};for(var y in t)if(t.hasOwnProperty(y)){var v=getOffsetDirection(y,a),b=t[y]-d[y];_[v]=y===v?p[v]+b:p[v]-b}css(e,_)}function setTransform$1(e,t){var a=getOffset(e),r=getTransformXY(e),l={x:r.x,y:r.y};"left"in t&&(l.x=r.x+t.left-a.left),"top"in t&&(l.y=r.y+t.top-a.top),setTransformXY(e,l)}function setOffset(e,t,a){if(a.ignoreShake){var r=getOffset(e),l=r.left.toFixed(0),n=r.top.toFixed(0),i=t.left.toFixed(0),o=t.top.toFixed(0);if(l===i&&n===o)return}a.useCssRight||a.useCssBottom?setLeftTop(e,t,a):a.useCssTransform&&getTransformName()in document.body.style?setTransform$1(e,t):setLeftTop(e,t,a)}function each(e,t){for(var a=0;a<e.length;a++)t(e[a])}function isBorderBoxFn(e){return"border-box"===getComputedStyleX(e,"boxSizing")}"undefined"!=typeof window&&(getComputedStyleX=window.getComputedStyle?_getComputedStyle:_getComputedStyleIE);var BOX_MODELS=["margin","border","padding"],CONTENT_INDEX=-1,PADDING_INDEX=2,BORDER_INDEX=1,MARGIN_INDEX=0;function swap(e,t,a){var r,l={},n=e.style;for(r in t)t.hasOwnProperty(r)&&(l[r]=n[r],n[r]=t[r]);for(r in a.call(e),t)t.hasOwnProperty(r)&&(n[r]=l[r])}function getPBMWidth(e,t,a){var r,l,n,i=0;for(l=0;l<t.length;l++)if(r=t[l])for(n=0;n<a.length;n++){var o=void 0;o="border"===r?"".concat(r).concat(a[n],"Width"):r+a[n],i+=parseFloat(getComputedStyleX(e,o))||0}return i}var domUtils={getParent:function(e){var t=e;do{t=11===t.nodeType&&t.host?t.host:t.parentNode}while(t&&1!==t.nodeType&&9!==t.nodeType);return t}};function getWH(e,t,a){var r=a;if(isWindow(e))return"width"===t?domUtils.viewportWidth(e):domUtils.viewportHeight(e);if(9===e.nodeType)return"width"===t?domUtils.docWidth(e):domUtils.docHeight(e);var l="width"===t?["Left","Right"]:["Top","Bottom"],n="width"===t?Math.floor(e.getBoundingClientRect().width):Math.floor(e.getBoundingClientRect().height),i=isBorderBoxFn(e),o=0;(null==n||n<=0)&&(n=void 0,(null==(o=getComputedStyleX(e,t))||Number(o)<0)&&(o=e.style[t]||0),o=parseFloat(o)||0),void 0===r&&(r=i?BORDER_INDEX:CONTENT_INDEX);var s=void 0!==n||i,c=n||o;return r===CONTENT_INDEX?s?c-getPBMWidth(e,["border","padding"],l):o:s?r===BORDER_INDEX?c:c+(r===PADDING_INDEX?-getPBMWidth(e,["border"],l):getPBMWidth(e,["margin"],l)):o+getPBMWidth(e,BOX_MODELS.slice(r),l)}each(["Width","Height"],(function(e){domUtils["doc".concat(e)]=function(t){var a=t.document;return Math.max(a.documentElement["scroll".concat(e)],a.body["scroll".concat(e)],domUtils["viewport".concat(e)](a))},domUtils["viewport".concat(e)]=function(t){var a="client".concat(e),r=t.document,l=r.body,n=r.documentElement[a];return"CSS1Compat"===r.compatMode&&n||l&&l[a]||n}}));var cssShow={position:"absolute",visibility:"hidden",display:"block"};function getWHIgnoreDisplay(){for(var e=arguments.length,t=new Array(e),a=0;a<e;a++)t[a]=arguments[a];var r,l=t[0];return 0!==l.offsetWidth?r=getWH.apply(void 0,t):swap(l,cssShow,(function(){r=getWH.apply(void 0,t)})),r}function mix(e,t){for(var a in t)t.hasOwnProperty(a)&&(e[a]=t[a]);return e}each(["width","height"],(function(e){var t=e.charAt(0).toUpperCase()+e.slice(1);domUtils["outer".concat(t)]=function(t,a){return t&&getWHIgnoreDisplay(t,e,a?MARGIN_INDEX:BORDER_INDEX)};var a="width"===e?["Left","Right"]:["Top","Bottom"];domUtils[e]=function(t,r){var l=r;return void 0!==l?t?(isBorderBoxFn(t)&&(l+=getPBMWidth(t,["padding","border"],a)),css(t,e,l)):void 0:t&&getWHIgnoreDisplay(t,e,CONTENT_INDEX)}}));var utils={getWindow:function(e){if(e&&e.document&&e.setTimeout)return e;var t=e.ownerDocument||e;return t.defaultView||t.parentWindow},getDocument:getDocument,offset:function(e,t,a){if(void 0===t)return getOffset(e);setOffset(e,t,a||{})},isWindow:isWindow,each:each,css:css,clone:function(e){var t,a={};for(t in e)e.hasOwnProperty(t)&&(a[t]=e[t]);if(e.overflow)for(t in e)e.hasOwnProperty(t)&&(a.overflow[t]=e.overflow[t]);return a},mix:mix,getWindowScrollLeft:function(e){return getScrollLeft(e)},getWindowScrollTop:function(e){return getScrollTop(e)},merge:function(){for(var e={},t=0;t<arguments.length;t++)utils.mix(e,t<0||arguments.length<=t?void 0:arguments[t]);return e},viewportWidth:0,viewportHeight:0};mix(utils,domUtils);var getParent=utils.getParent;function getOffsetParent(e){if(utils.isWindow(e)||9===e.nodeType)return null;var t,a=utils.getDocument(e).body,r=utils.css(e,"position");if(!("fixed"===r||"absolute"===r))return"html"===e.nodeName.toLowerCase()?null:getParent(e);for(t=getParent(e);t&&t!==a&&9!==t.nodeType;t=getParent(t))if("static"!==(r=utils.css(t,"position")))return t;return null}var getParent$1=utils.getParent;function isAncestorFixed(e){if(utils.isWindow(e)||9===e.nodeType)return!1;var t=utils.getDocument(e),a=t.body,r=null;for(r=getParent$1(e);r&&r!==a&&r!==t;r=getParent$1(r)){if("fixed"===utils.css(r,"position"))return!0}return!1}function getVisibleRectForElement(e,t){for(var a={left:0,right:1/0,top:0,bottom:1/0},r=getOffsetParent(e),l=utils.getDocument(e),n=l.defaultView||l.parentWindow,i=l.body,o=l.documentElement;r;){if(-1!==navigator.userAgent.indexOf("MSIE")&&0===r.clientWidth||r===i||r===o||"visible"===utils.css(r,"overflow")){if(r===i||r===o)break}else{var s=utils.offset(r);s.left+=r.clientLeft,s.top+=r.clientTop,a.top=Math.max(a.top,s.top),a.right=Math.min(a.right,s.left+r.clientWidth),a.bottom=Math.min(a.bottom,s.top+r.clientHeight),a.left=Math.max(a.left,s.left)}r=getOffsetParent(r)}var c=null;utils.isWindow(e)||9===e.nodeType||(c=e.style.position,"absolute"===utils.css(e,"position")&&(e.style.position="fixed"));var d=utils.getWindowScrollLeft(n),u=utils.getWindowScrollTop(n),p=utils.viewportWidth(n),f=utils.viewportHeight(n),m=o.scrollWidth,h=o.scrollHeight,g=window.getComputedStyle(i);if("hidden"===g.overflowX&&(m=n.innerWidth),"hidden"===g.overflowY&&(h=n.innerHeight),e.style&&(e.style.position=c),t||isAncestorFixed(e))a.left=Math.max(a.left,d),a.top=Math.max(a.top,u),a.right=Math.min(a.right,d+p),a.bottom=Math.min(a.bottom,u+f);else{var _=Math.max(m,d+p);a.right=Math.min(a.right,_);var y=Math.max(h,u+f);a.bottom=Math.min(a.bottom,y)}return a.top>=0&&a.left>=0&&a.bottom>a.top&&a.right>a.left?a:null}function adjustForViewport(e,t,a,r){var l=utils.clone(e),n={width:t.width,height:t.height};return r.adjustX&&l.left<a.left&&(l.left=a.left),r.resizeWidth&&l.left>=a.left&&l.left+n.width>a.right&&(n.width-=l.left+n.width-a.right),r.adjustX&&l.left+n.width>a.right&&(l.left=Math.max(a.right-n.width,a.left)),r.adjustY&&l.top<a.top&&(l.top=a.top),r.resizeHeight&&l.top>=a.top&&l.top+n.height>a.bottom&&(n.height-=l.top+n.height-a.bottom),r.adjustY&&l.top+n.height>a.bottom&&(l.top=Math.max(a.bottom-n.height,a.top)),utils.mix(l,n)}function getRegion(e){var t,a,r;if(utils.isWindow(e)||9===e.nodeType){var l=utils.getWindow(e);t={left:utils.getWindowScrollLeft(l),top:utils.getWindowScrollTop(l)},a=utils.viewportWidth(l),r=utils.viewportHeight(l)}else t=utils.offset(e),a=utils.outerWidth(e),r=utils.outerHeight(e);return t.width=a,t.height=r,t}function getAlignOffset(e,t){var a=t.charAt(0),r=t.charAt(1),l=e.width,n=e.height,i=e.left,o=e.top;return"c"===a?o+=n/2:"b"===a&&(o+=n),"c"===r?i+=l/2:"r"===r&&(i+=l),{left:i,top:o}}function getElFuturePos(e,t,a,r,l){var n=getAlignOffset(t,a[1]),i=getAlignOffset(e,a[0]),o=[i.left-n.left,i.top-n.top];return{left:Math.round(e.left-o[0]+r[0]-l[0]),top:Math.round(e.top-o[1]+r[1]-l[1])}}function isFailX(e,t,a){return e.left<a.left||e.left+t.width>a.right}function isFailY(e,t,a){return e.top<a.top||e.top+t.height>a.bottom}function isCompleteFailX(e,t,a){return e.left>a.right||e.left+t.width<a.left}function isCompleteFailY(e,t,a){return e.top>a.bottom||e.top+t.height<a.top}function flip(e,t,a){var r=[];return utils.each(e,(function(e){r.push(e.replace(t,(function(e){return a[e]})))})),r}function flipOffset(e,t){return e[t]=-e[t],e}function convertOffset(e,t){return(/%$/.test(e)?parseInt(e.substring(0,e.length-1),10)/100*t:parseInt(e,10))||0}function normalizeOffset(e,t){e[0]=convertOffset(e[0],t.width),e[1]=convertOffset(e[1],t.height)}function doAlign(e,t,a,r){var l=a.points,n=a.offset||[0,0],i=a.targetOffset||[0,0],o=a.overflow,s=a.source||e;n=[].concat(n),i=[].concat(i);var c={},d=0,u=getVisibleRectForElement(s,!(!(o=o||{})||!o.alwaysByViewport)),p=getRegion(s);normalizeOffset(n,p),normalizeOffset(i,t);var f=getElFuturePos(p,t,l,n,i),m=utils.merge(p,f);if(u&&(o.adjustX||o.adjustY)&&r){if(o.adjustX&&isFailX(f,p,u)){var h=flip(l,/[lr]/gi,{l:"r",r:"l"}),g=flipOffset(n,0),_=flipOffset(i,0);isCompleteFailX(getElFuturePos(p,t,h,g,_),p,u)||(d=1,l=h,n=g,i=_)}if(o.adjustY&&isFailY(f,p,u)){var y=flip(l,/[tb]/gi,{t:"b",b:"t"}),v=flipOffset(n,1),b=flipOffset(i,1);isCompleteFailY(getElFuturePos(p,t,y,v,b),p,u)||(d=1,l=y,n=v,i=b)}d&&(f=getElFuturePos(p,t,l,n,i),utils.mix(m,f));var R=isFailX(f,p,u),E=isFailY(f,p,u);if(R||E){var x=l;R&&(x=flip(l,/[lr]/gi,{l:"r",r:"l"})),E&&(x=flip(l,/[tb]/gi,{t:"b",b:"t"})),l=x,n=a.offset||[0,0],i=a.targetOffset||[0,0]}c.adjustX=o.adjustX&&R,c.adjustY=o.adjustY&&E,(c.adjustX||c.adjustY)&&(m=adjustForViewport(f,p,u,c))}return m.width!==p.width&&utils.css(s,"width",utils.width(s)+m.width-p.width),m.height!==p.height&&utils.css(s,"height",utils.height(s)+m.height-p.height),utils.offset(s,{left:m.left,top:m.top},{useCssRight:a.useCssRight,useCssBottom:a.useCssBottom,useCssTransform:a.useCssTransform,ignoreShake:a.ignoreShake}),{points:l,offset:n,targetOffset:i,overflow:c}}function isOutOfVisibleRect(e,t){var a=getVisibleRectForElement(e,t),r=getRegion(e);return!a||r.left+r.width<=a.left||r.top+r.height<=a.top||r.left>=a.right||r.top>=a.bottom}function alignElement(e,t,a){var r=a.target||t;return doAlign(e,getRegion(r),a,!isOutOfVisibleRect(r,a.overflow&&a.overflow.alwaysByViewport))}function alignPoint(e,t,a){var r,l,n=utils.getDocument(e),i=n.defaultView||n.parentWindow,o=utils.getWindowScrollLeft(i),s=utils.getWindowScrollTop(i),c=utils.viewportWidth(i),d=utils.viewportHeight(i),u={left:r="pageX"in t?t.pageX:o+t.clientX,top:l="pageY"in t?t.pageY:s+t.clientY,width:0,height:0},p=r>=0&&r<=o+c&&l>=0&&l<=s+d,f=[a.points[0],"cc"];return doAlign(e,u,_objectSpread2(_objectSpread2({},a),{},{points:f}),p)}alignElement.__getOffsetParent=getOffsetParent,alignElement.__getVisibleRectForElement=getVisibleRectForElement;var commonjsGlobal="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{};function listCacheClear$1(){this.__data__=[],this.size=0}var _listCacheClear=listCacheClear$1;function eq$2(e,t){return e===t||e!=e&&t!=t}var eq_1=eq$2,eq$1=eq_1;function assocIndexOf$4(e,t){for(var a=e.length;a--;)if(eq$1(e[a][0],t))return a;return-1}var _assocIndexOf=assocIndexOf$4,assocIndexOf$3=_assocIndexOf,arrayProto=Array.prototype,splice=arrayProto.splice;function listCacheDelete$1(e){var t=this.__data__,a=assocIndexOf$3(t,e);return!(a<0)&&(a==t.length-1?t.pop():splice.call(t,a,1),--this.size,!0)}var _listCacheDelete=listCacheDelete$1,assocIndexOf$2=_assocIndexOf;function listCacheGet$1(e){var t=this.__data__,a=assocIndexOf$2(t,e);return a<0?void 0:t[a][1]}var _listCacheGet=listCacheGet$1,assocIndexOf$1=_assocIndexOf;function listCacheHas$1(e){return assocIndexOf$1(this.__data__,e)>-1}var _listCacheHas=listCacheHas$1,assocIndexOf=_assocIndexOf;function listCacheSet$1(e,t){var a=this.__data__,r=assocIndexOf(a,e);return r<0?(++this.size,a.push([e,t])):a[r][1]=t,this}var _listCacheSet=listCacheSet$1,listCacheClear=_listCacheClear,listCacheDelete=_listCacheDelete,listCacheGet=_listCacheGet,listCacheHas=_listCacheHas,listCacheSet=_listCacheSet;function ListCache$4(e){var t=-1,a=null==e?0:e.length;for(this.clear();++t<a;){var r=e[t];this.set(r[0],r[1])}}ListCache$4.prototype.clear=listCacheClear,ListCache$4.prototype.delete=listCacheDelete,ListCache$4.prototype.get=listCacheGet,ListCache$4.prototype.has=listCacheHas,ListCache$4.prototype.set=listCacheSet;var _ListCache=ListCache$4,ListCache$3=_ListCache;function stackClear$1(){this.__data__=new ListCache$3,this.size=0}var _stackClear=stackClear$1;function stackDelete$1(e){var t=this.__data__,a=t.delete(e);return this.size=t.size,a}var _stackDelete=stackDelete$1;function stackGet$1(e){return this.__data__.get(e)}var _stackGet=stackGet$1;function stackHas$1(e){return this.__data__.has(e)}var _stackHas=stackHas$1,freeGlobal$1="object"==typeof commonjsGlobal&&commonjsGlobal&&commonjsGlobal.Object===Object&&commonjsGlobal,_freeGlobal=freeGlobal$1,freeGlobal=_freeGlobal,freeSelf="object"==typeof self&&self&&self.Object===Object&&self,root$8=freeGlobal||freeSelf||Function("return this")(),_root=root$8,root$7=_root,Symbol$4=root$7.Symbol,_Symbol=Symbol$4,Symbol$3=_Symbol,objectProto$b=Object.prototype,hasOwnProperty$8=objectProto$b.hasOwnProperty,nativeObjectToString$1=objectProto$b.toString,symToStringTag$1=Symbol$3?Symbol$3.toStringTag:void 0;function getRawTag$1(e){var t=hasOwnProperty$8.call(e,symToStringTag$1),a=e[symToStringTag$1];try{e[symToStringTag$1]=void 0;var r=!0}catch(e){}var l=nativeObjectToString$1.call(e);return r&&(t?e[symToStringTag$1]=a:delete e[symToStringTag$1]),l}var _getRawTag=getRawTag$1,objectProto$a=Object.prototype,nativeObjectToString=objectProto$a.toString;function objectToString$1(e){return nativeObjectToString.call(e)}var _objectToString=objectToString$1,Symbol$2=_Symbol,getRawTag=_getRawTag,objectToString=_objectToString,nullTag="[object Null]",undefinedTag="[object Undefined]",symToStringTag=Symbol$2?Symbol$2.toStringTag:void 0;function baseGetTag$4(e){return null==e?void 0===e?undefinedTag:nullTag:symToStringTag&&symToStringTag in Object(e)?getRawTag(e):objectToString(e)}var _baseGetTag=baseGetTag$4;function isObject$2(e){var t=typeof e;return null!=e&&("object"==t||"function"==t)}var isObject_1=isObject$2,baseGetTag$3=_baseGetTag,isObject$1=isObject_1,asyncTag="[object AsyncFunction]",funcTag$1="[object Function]",genTag="[object GeneratorFunction]",proxyTag="[object Proxy]";function isFunction$3(e){if(!isObject$1(e))return!1;var t=baseGetTag$3(e);return t==funcTag$1||t==genTag||t==asyncTag||t==proxyTag}var isFunction_1=isFunction$3,root$6=_root,coreJsData$1=root$6["__core-js_shared__"],_coreJsData=coreJsData$1,coreJsData=_coreJsData,maskSrcKey=(uid=/[^.]+$/.exec(coreJsData&&coreJsData.keys&&coreJsData.keys.IE_PROTO||""),uid?"Symbol(src)_1."+uid:""),uid;function isMasked$1(e){return!!maskSrcKey&&maskSrcKey in e}var _isMasked=isMasked$1,funcProto$1=Function.prototype,funcToString$1=funcProto$1.toString;function toSource$2(e){if(null!=e){try{return funcToString$1.call(e)}catch(e){}try{return e+""}catch(e){}}return""}var _toSource=toSource$2,isFunction$2=isFunction_1,isMasked=_isMasked,isObject=isObject_1,toSource$1=_toSource,reRegExpChar=/[\\^$.*+?()[\]{}|]/g,reIsHostCtor=/^\[object .+?Constructor\]$/,funcProto=Function.prototype,objectProto$9=Object.prototype,funcToString=funcProto.toString,hasOwnProperty$7=objectProto$9.hasOwnProperty,reIsNative=RegExp("^"+funcToString.call(hasOwnProperty$7).replace(reRegExpChar,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function baseIsNative$1(e){return!(!isObject(e)||isMasked(e))&&(isFunction$2(e)?reIsNative:reIsHostCtor).test(toSource$1(e))}var _baseIsNative=baseIsNative$1;function getValue$1(e,t){return null==e?void 0:e[t]}var _getValue=getValue$1,baseIsNative=_baseIsNative,getValue=_getValue;function getNative$6(e,t){var a=getValue(e,t);return baseIsNative(a)?a:void 0}var _getNative=getNative$6,getNative$5=_getNative,root$5=_root,Map$4=getNative$5(root$5,"Map"),_Map=Map$4,getNative$4=_getNative,nativeCreate$4=getNative$4(Object,"create"),_nativeCreate=nativeCreate$4,nativeCreate$3=_nativeCreate;function hashClear$1(){this.__data__=nativeCreate$3?nativeCreate$3(null):{},this.size=0}var _hashClear=hashClear$1;function hashDelete$1(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=t?1:0,t}var _hashDelete=hashDelete$1,nativeCreate$2=_nativeCreate,HASH_UNDEFINED$2="__lodash_hash_undefined__",objectProto$8=Object.prototype,hasOwnProperty$6=objectProto$8.hasOwnProperty;function hashGet$1(e){var t=this.__data__;if(nativeCreate$2){var a=t[e];return a===HASH_UNDEFINED$2?void 0:a}return hasOwnProperty$6.call(t,e)?t[e]:void 0}var _hashGet=hashGet$1,nativeCreate$1=_nativeCreate,objectProto$7=Object.prototype,hasOwnProperty$5=objectProto$7.hasOwnProperty;function hashHas$1(e){var t=this.__data__;return nativeCreate$1?void 0!==t[e]:hasOwnProperty$5.call(t,e)}var _hashHas=hashHas$1,nativeCreate=_nativeCreate,HASH_UNDEFINED$1="__lodash_hash_undefined__";function hashSet$1(e,t){var a=this.__data__;return this.size+=this.has(e)?0:1,a[e]=nativeCreate&&void 0===t?HASH_UNDEFINED$1:t,this}var _hashSet=hashSet$1,hashClear=_hashClear,hashDelete=_hashDelete,hashGet=_hashGet,hashHas=_hashHas,hashSet=_hashSet;function Hash$1(e){var t=-1,a=null==e?0:e.length;for(this.clear();++t<a;){var r=e[t];this.set(r[0],r[1])}}Hash$1.prototype.clear=hashClear,Hash$1.prototype.delete=hashDelete,Hash$1.prototype.get=hashGet,Hash$1.prototype.has=hashHas,Hash$1.prototype.set=hashSet;var _Hash=Hash$1,Hash=_Hash,ListCache$2=_ListCache,Map$3=_Map;function mapCacheClear$1(){this.size=0,this.__data__={hash:new Hash,map:new(Map$3||ListCache$2),string:new Hash}}var _mapCacheClear=mapCacheClear$1;function isKeyable$1(e){var t=typeof e;return"string"==t||"number"==t||"symbol"==t||"boolean"==t?"__proto__"!==e:null===e}var _isKeyable=isKeyable$1,isKeyable=_isKeyable;function getMapData$4(e,t){var a=e.__data__;return isKeyable(t)?a["string"==typeof t?"string":"hash"]:a.map}var _getMapData=getMapData$4,getMapData$3=_getMapData;function mapCacheDelete$1(e){var t=getMapData$3(this,e).delete(e);return this.size-=t?1:0,t}var _mapCacheDelete=mapCacheDelete$1,getMapData$2=_getMapData;function mapCacheGet$1(e){return getMapData$2(this,e).get(e)}var _mapCacheGet=mapCacheGet$1,getMapData$1=_getMapData;function mapCacheHas$1(e){return getMapData$1(this,e).has(e)}var _mapCacheHas=mapCacheHas$1,getMapData=_getMapData;function mapCacheSet$1(e,t){var a=getMapData(this,e),r=a.size;return a.set(e,t),this.size+=a.size==r?0:1,this}var _mapCacheSet=mapCacheSet$1,mapCacheClear=_mapCacheClear,mapCacheDelete=_mapCacheDelete,mapCacheGet=_mapCacheGet,mapCacheHas=_mapCacheHas,mapCacheSet=_mapCacheSet;function MapCache$2(e){var t=-1,a=null==e?0:e.length;for(this.clear();++t<a;){var r=e[t];this.set(r[0],r[1])}}MapCache$2.prototype.clear=mapCacheClear,MapCache$2.prototype.delete=mapCacheDelete,MapCache$2.prototype.get=mapCacheGet,MapCache$2.prototype.has=mapCacheHas,MapCache$2.prototype.set=mapCacheSet;var _MapCache=MapCache$2,ListCache$1=_ListCache,Map$2=_Map,MapCache$1=_MapCache,LARGE_ARRAY_SIZE=200;function stackSet$1(e,t){var a=this.__data__;if(a instanceof ListCache$1){var r=a.__data__;if(!Map$2||r.length<LARGE_ARRAY_SIZE-1)return r.push([e,t]),this.size=++a.size,this;a=this.__data__=new MapCache$1(r)}return a.set(e,t),this.size=a.size,this}var _stackSet=stackSet$1,ListCache=_ListCache,stackClear=_stackClear,stackDelete=_stackDelete,stackGet=_stackGet,stackHas=_stackHas,stackSet=_stackSet;function Stack$1(e){var t=this.__data__=new ListCache(e);this.size=t.size}Stack$1.prototype.clear=stackClear,Stack$1.prototype.delete=stackDelete,Stack$1.prototype.get=stackGet,Stack$1.prototype.has=stackHas,Stack$1.prototype.set=stackSet;var _Stack=Stack$1,HASH_UNDEFINED="__lodash_hash_undefined__";function setCacheAdd$1(e){return this.__data__.set(e,HASH_UNDEFINED),this}var _setCacheAdd=setCacheAdd$1;function setCacheHas$1(e){return this.__data__.has(e)}var _setCacheHas=setCacheHas$1,MapCache=_MapCache,setCacheAdd=_setCacheAdd,setCacheHas=_setCacheHas;function SetCache$1(e){var t=-1,a=null==e?0:e.length;for(this.__data__=new MapCache;++t<a;)this.add(e[t])}SetCache$1.prototype.add=SetCache$1.prototype.push=setCacheAdd,SetCache$1.prototype.has=setCacheHas;var _SetCache=SetCache$1;function arraySome$1(e,t){for(var a=-1,r=null==e?0:e.length;++a<r;)if(t(e[a],a,e))return!0;return!1}var _arraySome=arraySome$1;function cacheHas$1(e,t){return e.has(t)}var _cacheHas=cacheHas$1,SetCache=_SetCache,arraySome=_arraySome,cacheHas=_cacheHas,COMPARE_PARTIAL_FLAG$3=1,COMPARE_UNORDERED_FLAG$1=2;function equalArrays$2(e,t,a,r,l,n){var i=a&COMPARE_PARTIAL_FLAG$3,o=e.length,s=t.length;if(o!=s&&!(i&&s>o))return!1;var c=n.get(e),d=n.get(t);if(c&&d)return c==t&&d==e;var u=-1,p=!0,f=a&COMPARE_UNORDERED_FLAG$1?new SetCache:void 0;for(n.set(e,t),n.set(t,e);++u<o;){var m=e[u],h=t[u];if(r)var g=i?r(h,m,u,t,e,n):r(m,h,u,e,t,n);if(void 0!==g){if(g)continue;p=!1;break}if(f){if(!arraySome(t,(function(e,t){if(!cacheHas(f,t)&&(m===e||l(m,e,a,r,n)))return f.push(t)}))){p=!1;break}}else if(m!==h&&!l(m,h,a,r,n)){p=!1;break}}return n.delete(e),n.delete(t),p}var _equalArrays=equalArrays$2,root$4=_root,Uint8Array$1=root$4.Uint8Array,_Uint8Array=Uint8Array$1;function mapToArray$1(e){var t=-1,a=Array(e.size);return e.forEach((function(e,r){a[++t]=[r,e]})),a}var _mapToArray=mapToArray$1;function setToArray$1(e){var t=-1,a=Array(e.size);return e.forEach((function(e){a[++t]=e})),a}var _setToArray=setToArray$1,Symbol$1=_Symbol,Uint8Array=_Uint8Array,eq=eq_1,equalArrays$1=_equalArrays,mapToArray=_mapToArray,setToArray=_setToArray,COMPARE_PARTIAL_FLAG$2=1,COMPARE_UNORDERED_FLAG=2,boolTag$1="[object Boolean]",dateTag$1="[object Date]",errorTag$1="[object Error]",mapTag$2="[object Map]",numberTag$1="[object Number]",regexpTag$1="[object RegExp]",setTag$2="[object Set]",stringTag$1="[object String]",symbolTag="[object Symbol]",arrayBufferTag$1="[object ArrayBuffer]",dataViewTag$2="[object DataView]",symbolProto=Symbol$1?Symbol$1.prototype:void 0,symbolValueOf=symbolProto?symbolProto.valueOf:void 0;function equalByTag$1(e,t,a,r,l,n,i){switch(a){case dataViewTag$2:if(e.byteLength!=t.byteLength||e.byteOffset!=t.byteOffset)return!1;e=e.buffer,t=t.buffer;case arrayBufferTag$1:return!(e.byteLength!=t.byteLength||!n(new Uint8Array(e),new Uint8Array(t)));case boolTag$1:case dateTag$1:case numberTag$1:return eq(+e,+t);case errorTag$1:return e.name==t.name&&e.message==t.message;case regexpTag$1:case stringTag$1:return e==t+"";case mapTag$2:var o=mapToArray;case setTag$2:var s=r&COMPARE_PARTIAL_FLAG$2;if(o||(o=setToArray),e.size!=t.size&&!s)return!1;var c=i.get(e);if(c)return c==t;r|=COMPARE_UNORDERED_FLAG,i.set(e,t);var d=equalArrays$1(o(e),o(t),r,l,n,i);return i.delete(e),d;case symbolTag:if(symbolValueOf)return symbolValueOf.call(e)==symbolValueOf.call(t)}return!1}var _equalByTag=equalByTag$1;function arrayPush$1(e,t){for(var a=-1,r=t.length,l=e.length;++a<r;)e[l+a]=t[a];return e}var _arrayPush=arrayPush$1,isArray$3=Array.isArray,isArray_1=isArray$3,arrayPush=_arrayPush,isArray$2=isArray_1;function baseGetAllKeys$1(e,t,a){var r=t(e);return isArray$2(e)?r:arrayPush(r,a(e))}var _baseGetAllKeys=baseGetAllKeys$1;function arrayFilter$1(e,t){for(var a=-1,r=null==e?0:e.length,l=0,n=[];++a<r;){var i=e[a];t(i,a,e)&&(n[l++]=i)}return n}var _arrayFilter=arrayFilter$1;function stubArray$1(){return[]}var stubArray_1=stubArray$1,arrayFilter=_arrayFilter,stubArray=stubArray_1,objectProto$6=Object.prototype,propertyIsEnumerable$1=objectProto$6.propertyIsEnumerable,nativeGetSymbols=Object.getOwnPropertySymbols,getSymbols$1=nativeGetSymbols?function(e){return null==e?[]:(e=Object(e),arrayFilter(nativeGetSymbols(e),(function(t){return propertyIsEnumerable$1.call(e,t)})))}:stubArray,_getSymbols=getSymbols$1;function baseTimes$1(e,t){for(var a=-1,r=Array(e);++a<e;)r[a]=t(a);return r}var _baseTimes=baseTimes$1;function isObjectLike$4(e){return null!=e&&"object"==typeof e}var isObjectLike_1=isObjectLike$4,baseGetTag$2=_baseGetTag,isObjectLike$3=isObjectLike_1,argsTag$2="[object Arguments]";function baseIsArguments$1(e){return isObjectLike$3(e)&&baseGetTag$2(e)==argsTag$2}var _baseIsArguments=baseIsArguments$1,baseIsArguments=_baseIsArguments,isObjectLike$2=isObjectLike_1,objectProto$5=Object.prototype,hasOwnProperty$4=objectProto$5.hasOwnProperty,propertyIsEnumerable=objectProto$5.propertyIsEnumerable,isArguments$1=baseIsArguments(function(){return arguments}())?baseIsArguments:function(e){return isObjectLike$2(e)&&hasOwnProperty$4.call(e,"callee")&&!propertyIsEnumerable.call(e,"callee")},isArguments_1=isArguments$1,isBuffer$2={exports:{}};function stubFalse(){return!1}var stubFalse_1=stubFalse;!function(e,t){var a=_root,r=stubFalse_1,l=t&&!t.nodeType&&t,n=l&&e&&!e.nodeType&&e,i=n&&n.exports===l?a.Buffer:void 0,o=(i?i.isBuffer:void 0)||r;e.exports=o}(isBuffer$2,isBuffer$2.exports);var MAX_SAFE_INTEGER$1=9007199254740991,reIsUint=/^(?:0|[1-9]\d*)$/;function isIndex$1(e,t){var a=typeof e;return!!(t=null==t?MAX_SAFE_INTEGER$1:t)&&("number"==a||"symbol"!=a&&reIsUint.test(e))&&e>-1&&e%1==0&&e<t}var _isIndex=isIndex$1,MAX_SAFE_INTEGER=9007199254740991;function isLength$2(e){return"number"==typeof e&&e>-1&&e%1==0&&e<=MAX_SAFE_INTEGER}var isLength_1=isLength$2,baseGetTag$1=_baseGetTag,isLength$1=isLength_1,isObjectLike$1=isObjectLike_1,argsTag$1="[object Arguments]",arrayTag$1="[object Array]",boolTag="[object Boolean]",dateTag="[object Date]",errorTag="[object Error]",funcTag="[object Function]",mapTag$1="[object Map]",numberTag="[object Number]",objectTag$2="[object Object]",regexpTag="[object RegExp]",setTag$1="[object Set]",stringTag="[object String]",weakMapTag$1="[object WeakMap]",arrayBufferTag="[object ArrayBuffer]",dataViewTag$1="[object DataView]",float32Tag="[object Float32Array]",float64Tag="[object Float64Array]",int8Tag="[object Int8Array]",int16Tag="[object Int16Array]",int32Tag="[object Int32Array]",uint8Tag="[object Uint8Array]",uint8ClampedTag="[object Uint8ClampedArray]",uint16Tag="[object Uint16Array]",uint32Tag="[object Uint32Array]",typedArrayTags={};function baseIsTypedArray$1(e){return isObjectLike$1(e)&&isLength$1(e.length)&&!!typedArrayTags[baseGetTag$1(e)]}typedArrayTags[float32Tag]=typedArrayTags[float64Tag]=typedArrayTags[int8Tag]=typedArrayTags[int16Tag]=typedArrayTags[int32Tag]=typedArrayTags[uint8Tag]=typedArrayTags[uint8ClampedTag]=typedArrayTags[uint16Tag]=typedArrayTags[uint32Tag]=!0,typedArrayTags[argsTag$1]=typedArrayTags[arrayTag$1]=typedArrayTags[arrayBufferTag]=typedArrayTags[boolTag]=typedArrayTags[dataViewTag$1]=typedArrayTags[dateTag]=typedArrayTags[errorTag]=typedArrayTags[funcTag]=typedArrayTags[mapTag$1]=typedArrayTags[numberTag]=typedArrayTags[objectTag$2]=typedArrayTags[regexpTag]=typedArrayTags[setTag$1]=typedArrayTags[stringTag]=typedArrayTags[weakMapTag$1]=!1;var _baseIsTypedArray=baseIsTypedArray$1;function baseUnary$1(e){return function(t){return e(t)}}var _baseUnary=baseUnary$1,_nodeUtil={exports:{}};!function(e,t){var a=_freeGlobal,r=t&&!t.nodeType&&t,l=r&&e&&!e.nodeType&&e,n=l&&l.exports===r&&a.process,i=function(){try{var e=l&&l.require&&l.require("util").types;return e||n&&n.binding&&n.binding("util")}catch(e){}}();e.exports=i}(_nodeUtil,_nodeUtil.exports);var baseIsTypedArray=_baseIsTypedArray,baseUnary=_baseUnary,nodeUtil=_nodeUtil.exports,nodeIsTypedArray=nodeUtil&&nodeUtil.isTypedArray,isTypedArray$2=nodeIsTypedArray?baseUnary(nodeIsTypedArray):baseIsTypedArray,isTypedArray_1=isTypedArray$2,baseTimes=_baseTimes,isArguments=isArguments_1,isArray$1=isArray_1,isBuffer$1=isBuffer$2.exports,isIndex=_isIndex,isTypedArray$1=isTypedArray_1,objectProto$4=Object.prototype,hasOwnProperty$3=objectProto$4.hasOwnProperty;function arrayLikeKeys$1(e,t){var a=isArray$1(e),r=!a&&isArguments(e),l=!a&&!r&&isBuffer$1(e),n=!a&&!r&&!l&&isTypedArray$1(e),i=a||r||l||n,o=i?baseTimes(e.length,String):[],s=o.length;for(var c in e)!t&&!hasOwnProperty$3.call(e,c)||i&&("length"==c||l&&("offset"==c||"parent"==c)||n&&("buffer"==c||"byteLength"==c||"byteOffset"==c)||isIndex(c,s))||o.push(c);return o}var _arrayLikeKeys=arrayLikeKeys$1,objectProto$3=Object.prototype;function isPrototype$1(e){var t=e&&e.constructor;return e===("function"==typeof t&&t.prototype||objectProto$3)}var _isPrototype=isPrototype$1;function overArg$1(e,t){return function(a){return e(t(a))}}var _overArg=overArg$1,overArg=_overArg,nativeKeys$1=overArg(Object.keys,Object),_nativeKeys=nativeKeys$1,isPrototype=_isPrototype,nativeKeys=_nativeKeys,objectProto$2=Object.prototype,hasOwnProperty$2=objectProto$2.hasOwnProperty;function baseKeys$1(e){if(!isPrototype(e))return nativeKeys(e);var t=[];for(var a in Object(e))hasOwnProperty$2.call(e,a)&&"constructor"!=a&&t.push(a);return t}var _baseKeys=baseKeys$1,isFunction$1=isFunction_1,isLength=isLength_1;function isArrayLike$1(e){return null!=e&&isLength(e.length)&&!isFunction$1(e)}var isArrayLike_1=isArrayLike$1,arrayLikeKeys=_arrayLikeKeys,baseKeys=_baseKeys,isArrayLike=isArrayLike_1;function keys$1(e){return isArrayLike(e)?arrayLikeKeys(e):baseKeys(e)}var keys_1=keys$1,baseGetAllKeys=_baseGetAllKeys,getSymbols=_getSymbols,keys=keys_1;function getAllKeys$1(e){return baseGetAllKeys(e,keys,getSymbols)}var _getAllKeys=getAllKeys$1,getAllKeys=_getAllKeys,COMPARE_PARTIAL_FLAG$1=1,objectProto$1=Object.prototype,hasOwnProperty$1=objectProto$1.hasOwnProperty;function equalObjects$1(e,t,a,r,l,n){var i=a&COMPARE_PARTIAL_FLAG$1,o=getAllKeys(e),s=o.length;if(s!=getAllKeys(t).length&&!i)return!1;for(var c=s;c--;){var d=o[c];if(!(i?d in t:hasOwnProperty$1.call(t,d)))return!1}var u=n.get(e),p=n.get(t);if(u&&p)return u==t&&p==e;var f=!0;n.set(e,t),n.set(t,e);for(var m=i;++c<s;){var h=e[d=o[c]],g=t[d];if(r)var _=i?r(g,h,d,t,e,n):r(h,g,d,e,t,n);if(!(void 0===_?h===g||l(h,g,a,r,n):_)){f=!1;break}m||(m="constructor"==d)}if(f&&!m){var y=e.constructor,v=t.constructor;y==v||!("constructor"in e)||!("constructor"in t)||"function"==typeof y&&y instanceof y&&"function"==typeof v&&v instanceof v||(f=!1)}return n.delete(e),n.delete(t),f}var _equalObjects=equalObjects$1,getNative$3=_getNative,root$3=_root,DataView$1=getNative$3(root$3,"DataView"),_DataView=DataView$1,getNative$2=_getNative,root$2=_root,Promise$2=getNative$2(root$2,"Promise"),_Promise=Promise$2,getNative$1=_getNative,root$1=_root,Set$2=getNative$1(root$1,"Set"),_Set=Set$2,getNative=_getNative,root=_root,WeakMap$2=getNative(root,"WeakMap"),_WeakMap=WeakMap$2,DataView=_DataView,Map$1=_Map,Promise$1=_Promise,Set$1=_Set,WeakMap$1=_WeakMap,baseGetTag=_baseGetTag,toSource=_toSource,mapTag="[object Map]",objectTag$1="[object Object]",promiseTag="[object Promise]",setTag="[object Set]",weakMapTag="[object WeakMap]",dataViewTag="[object DataView]",dataViewCtorString=toSource(DataView),mapCtorString=toSource(Map$1),promiseCtorString=toSource(Promise$1),setCtorString=toSource(Set$1),weakMapCtorString=toSource(WeakMap$1),getTag$1=baseGetTag;(DataView&&getTag$1(new DataView(new ArrayBuffer(1)))!=dataViewTag||Map$1&&getTag$1(new Map$1)!=mapTag||Promise$1&&getTag$1(Promise$1.resolve())!=promiseTag||Set$1&&getTag$1(new Set$1)!=setTag||WeakMap$1&&getTag$1(new WeakMap$1)!=weakMapTag)&&(getTag$1=function(e){var t=baseGetTag(e),a=t==objectTag$1?e.constructor:void 0,r=a?toSource(a):"";if(r)switch(r){case dataViewCtorString:return dataViewTag;case mapCtorString:return mapTag;case promiseCtorString:return promiseTag;case setCtorString:return setTag;case weakMapCtorString:return weakMapTag}return t});var _getTag=getTag$1,Stack=_Stack,equalArrays=_equalArrays,equalByTag=_equalByTag,equalObjects=_equalObjects,getTag=_getTag,isArray=isArray_1,isBuffer=isBuffer$2.exports,isTypedArray=isTypedArray_1,COMPARE_PARTIAL_FLAG=1,argsTag="[object Arguments]",arrayTag="[object Array]",objectTag="[object Object]",objectProto=Object.prototype,hasOwnProperty=objectProto.hasOwnProperty;function baseIsEqualDeep$1(e,t,a,r,l,n){var i=isArray(e),o=isArray(t),s=i?arrayTag:getTag(e),c=o?arrayTag:getTag(t),d=(s=s==argsTag?objectTag:s)==objectTag,u=(c=c==argsTag?objectTag:c)==objectTag,p=s==c;if(p&&isBuffer(e)){if(!isBuffer(t))return!1;i=!0,d=!1}if(p&&!d)return n||(n=new Stack),i||isTypedArray(e)?equalArrays(e,t,a,r,l,n):equalByTag(e,t,s,a,r,l,n);if(!(a&COMPARE_PARTIAL_FLAG)){var f=d&&hasOwnProperty.call(e,"__wrapped__"),m=u&&hasOwnProperty.call(t,"__wrapped__");if(f||m){var h=f?e.value():e,g=m?t.value():t;return n||(n=new Stack),l(h,g,a,r,n)}}return!!p&&(n||(n=new Stack),equalObjects(e,t,a,r,l,n))}var _baseIsEqualDeep=baseIsEqualDeep$1,baseIsEqualDeep=_baseIsEqualDeep,isObjectLike=isObjectLike_1;function baseIsEqual$1(e,t,a,r,l){return e===t||(null==e||null==t||!isObjectLike(e)&&!isObjectLike(t)?e!=e&&t!=t:baseIsEqualDeep(e,t,a,r,baseIsEqual$1,l))}var _baseIsEqual=baseIsEqual$1,baseIsEqual=_baseIsEqual;function isEqual(e,t){return baseIsEqual(e,t)}var isEqual_1=isEqual;function isSamePoint(e,t){return e===t||!(!e||!t)&&("pageX"in t&&"pageY"in t?e.pageX===t.pageX&&e.pageY===t.pageY:"clientX"in t&&"clientY"in t&&(e.clientX===t.clientX&&e.clientY===t.clientY))}function restoreFocus(e,t){e!==document.activeElement&&contains(t,e)&&"function"==typeof e.focus&&e.focus()}function monitorResize(e,t){var a=null,r=null;var l=new ResizeObserver((function(e){var l=_slicedToArray(e,1)[0].target;if(document.documentElement.contains(l)){var n=l.getBoundingClientRect(),i=n.width,o=n.height,s=Math.floor(i),c=Math.floor(o);a===s&&r===c||Promise.resolve().then((function(){t({width:s,height:c})})),a=s,r=c}}));return e&&l.observe(e),function(){l.disconnect()}}var useBuffer=function(e,t){var a=React__default.useRef(!1),r=React__default.useRef(null);function l(){window.clearTimeout(r.current)}return[function n(i){if(l(),a.current&&!0!==i)r.current=window.setTimeout((function(){a.current=!1,n()}),t);else{if(!1===e())return;a.current=!0,r.current=window.setTimeout((function(){a.current=!1}),t)}},function(){a.current=!1,l()}]};function getElement(e){return"function"!=typeof e?null:e()}function getPoint(e){return"object"===_typeof$1(e)&&e?e:null}var Align=function(e,t){var a=e.children,r=e.disabled,l=e.target,n=e.align,i=e.onAlign,o=e.monitorWindowResize,s=e.monitorBufferTime,c=void 0===s?0:s,d=React__default.useRef({}),u=React__default.useRef(),p=React__default.Children.only(a),f=React__default.useRef({});f.current.disabled=r,f.current.target=l,f.current.align=n,f.current.onAlign=i;var m=_slicedToArray(useBuffer((function(){var e=f.current,t=e.disabled,a=e.target,r=e.align,l=e.onAlign;if(!t&&a){var n,i=u.current,o=getElement(a),s=getPoint(a);d.current.element=o,d.current.point=s,d.current.align=r;var c=document.activeElement;return o&&isVisible(o)?n=alignElement(i,o,r):s&&(n=alignPoint(i,s,r)),restoreFocus(c,i),l&&n&&l(i,n),!0}return!1}),c),2),h=m[0],g=m[1],_=React__default.useRef({cancel:function(){}}),y=React__default.useRef({cancel:function(){}});React__default.useEffect((function(){var e=getElement(l),t=getPoint(l);u.current!==y.current.element&&(y.current.cancel(),y.current.element=u.current,y.current.cancel=monitorResize(u.current,h)),d.current.element===e&&isSamePoint(d.current.point,t)&&isEqual_1(d.current.align,n)||(h(),_.current.element!==e&&(_.current.cancel(),_.current.element=e,_.current.cancel=monitorResize(e,h)))})),React__default.useEffect((function(){r?g():h()}),[r]);var v=React__default.useRef(null);return React__default.useEffect((function(){o?v.current||(v.current=addEventListenerWrap(window,"resize",h)):v.current&&(v.current.remove(),v.current=null)}),[o]),React__default.useEffect((function(){return function(){_.current.cancel(),y.current.cancel(),v.current&&v.current.remove(),g()}}),[]),React__default.useImperativeHandle(t,(function(){return{forceAlign:function(){return h(!0)}}})),React__default.isValidElement(p)&&(p=React__default.cloneElement(p,{ref:composeRef(p.ref,u)})),p},RcAlign=React__default.forwardRef(Align);RcAlign.displayName="Align";var useLayoutEffect=canUseDom()?React.useLayoutEffect:React.useEffect;function _regeneratorRuntime(){
2
2
  /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */
3
- _regeneratorRuntime=function(){return e};var e={},t=Object.prototype,a=t.hasOwnProperty,r="function"==typeof Symbol?Symbol:{},l=r.iterator||"@@iterator",n=r.asyncIterator||"@@asyncIterator",i=r.toStringTag||"@@toStringTag";function o(e,t,a){return Object.defineProperty(e,t,{value:a,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{o({},"")}catch(e){o=function(e,t,a){return e[t]=a}}function s(e,t,a,r){var l=t&&t.prototype instanceof u?t:u,n=Object.create(l.prototype),i=new x(r||[]);return n._invoke=function(e,t,a){var r="suspendedStart";return function(l,n){if("executing"===r)throw new Error("Generator is already running");if("completed"===r){if("throw"===l)throw n;return T()}for(a.method=l,a.arg=n;;){var i=a.delegate;if(i){var o=b(i,a);if(o){if(o===d)continue;return o}}if("next"===a.method)a.sent=a._sent=a.arg;else if("throw"===a.method){if("suspendedStart"===r)throw r="completed",a.arg;a.dispatchException(a.arg)}else"return"===a.method&&a.abrupt("return",a.arg);r="executing";var s=c(e,t,a);if("normal"===s.type){if(r=a.done?"completed":"suspendedYield",s.arg===d)continue;return{value:s.arg,done:a.done}}"throw"===s.type&&(r="completed",a.method="throw",a.arg=s.arg)}}}(e,a,i),n}function c(e,t,a){try{return{type:"normal",arg:e.call(t,a)}}catch(e){return{type:"throw",arg:e}}}e.wrap=s;var d={};function u(){}function p(){}function f(){}var m={};o(m,l,(function(){return this}));var h=Object.getPrototypeOf,g=h&&h(h(C([])));g&&g!==t&&a.call(g,l)&&(m=g);var _=f.prototype=u.prototype=Object.create(m);function y(e){["next","throw","return"].forEach((function(t){o(e,t,(function(e){return this._invoke(t,e)}))}))}function v(e,t){function r(l,n,i,o){var s=c(e[l],e,n);if("throw"!==s.type){var d=s.arg,u=d.value;return u&&"object"==_typeof$1(u)&&a.call(u,"__await")?t.resolve(u.__await).then((function(e){r("next",e,i,o)}),(function(e){r("throw",e,i,o)})):t.resolve(u).then((function(e){d.value=e,i(d)}),(function(e){return r("throw",e,i,o)}))}o(s.arg)}var l;this._invoke=function(e,a){function n(){return new t((function(t,l){r(e,a,t,l)}))}return l=l?l.then(n,n):n()}}function b(e,t){var a=e.iterator[t.method];if(void 0===a){if(t.delegate=null,"throw"===t.method){if(e.iterator.return&&(t.method="return",t.arg=void 0,b(e,t),"throw"===t.method))return d;t.method="throw",t.arg=new TypeError("The iterator does not provide a 'throw' method")}return d}var r=c(a,e.iterator,t.arg);if("throw"===r.type)return t.method="throw",t.arg=r.arg,t.delegate=null,d;var l=r.arg;return l?l.done?(t[e.resultName]=l.value,t.next=e.nextLoc,"return"!==t.method&&(t.method="next",t.arg=void 0),t.delegate=null,d):l:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,d)}function R(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function E(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function x(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(R,this),this.reset(!0)}function C(e){if(e){var t=e[l];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var r=-1,n=function t(){for(;++r<e.length;)if(a.call(e,r))return t.value=e[r],t.done=!1,t;return t.value=void 0,t.done=!0,t};return n.next=n}}return{next:T}}function T(){return{value:void 0,done:!0}}return p.prototype=f,o(_,"constructor",f),o(f,"constructor",p),p.displayName=o(f,i,"GeneratorFunction"),e.isGeneratorFunction=function(e){var t="function"==typeof e&&e.constructor;return!!t&&(t===p||"GeneratorFunction"===(t.displayName||t.name))},e.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,f):(e.__proto__=f,o(e,i,"GeneratorFunction")),e.prototype=Object.create(_),e},e.awrap=function(e){return{__await:e}},y(v.prototype),o(v.prototype,n,(function(){return this})),e.AsyncIterator=v,e.async=function(t,a,r,l,n){void 0===n&&(n=Promise);var i=new v(s(t,a,r,l),n);return e.isGeneratorFunction(a)?i:i.next().then((function(e){return e.done?e.value:i.next()}))},y(_),o(_,i,"Generator"),o(_,l,(function(){return this})),o(_,"toString",(function(){return"[object Generator]"})),e.keys=function(e){var t=[];for(var a in e)t.push(a);return t.reverse(),function a(){for(;t.length;){var r=t.pop();if(r in e)return a.value=r,a.done=!1,a}return a.done=!0,a}},e.values=C,x.prototype={constructor:x,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(E),!e)for(var t in this)"t"===t.charAt(0)&&a.call(this,t)&&!isNaN(+t.slice(1))&&(this[t]=void 0)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var t=this;function r(a,r){return i.type="throw",i.arg=e,t.next=a,r&&(t.method="next",t.arg=void 0),!!r}for(var l=this.tryEntries.length-1;l>=0;--l){var n=this.tryEntries[l],i=n.completion;if("root"===n.tryLoc)return r("end");if(n.tryLoc<=this.prev){var o=a.call(n,"catchLoc"),s=a.call(n,"finallyLoc");if(o&&s){if(this.prev<n.catchLoc)return r(n.catchLoc,!0);if(this.prev<n.finallyLoc)return r(n.finallyLoc)}else if(o){if(this.prev<n.catchLoc)return r(n.catchLoc,!0)}else{if(!s)throw new Error("try statement without catch or finally");if(this.prev<n.finallyLoc)return r(n.finallyLoc)}}}},abrupt:function(e,t){for(var r=this.tryEntries.length-1;r>=0;--r){var l=this.tryEntries[r];if(l.tryLoc<=this.prev&&a.call(l,"finallyLoc")&&this.prev<l.finallyLoc){var n=l;break}}n&&("break"===e||"continue"===e)&&n.tryLoc<=t&&t<=n.finallyLoc&&(n=null);var i=n?n.completion:{};return i.type=e,i.arg=t,n?(this.method="next",this.next=n.finallyLoc,d):this.complete(i)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&&t&&(this.next=t),d},finish:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var a=this.tryEntries[t];if(a.finallyLoc===e)return this.complete(a.completion,a.afterLoc),E(a),d}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var a=this.tryEntries[t];if(a.tryLoc===e){var r=a.completion;if("throw"===r.type){var l=r.arg;E(a)}return l}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,a){return this.delegate={iterator:C(e),resultName:t,nextLoc:a},"next"===this.method&&(this.arg=void 0),d}},e}function asyncGeneratorStep(e,t,a,r,l,n,i){try{var o=e[n](i),s=o.value}catch(e){return void a(e)}o.done?t(s):Promise.resolve(s).then(r,l)}function _asyncToGenerator(e){return function(){var t=this,a=arguments;return new Promise((function(r,l){var n=e.apply(t,a);function i(e){asyncGeneratorStep(n,r,l,i,o,"next",e)}function o(e){asyncGeneratorStep(n,r,l,i,o,"throw",e)}i(void 0)}))}}var StatusQueue=["measure","alignPre","align",null,"motion"],useVisibleStatus=function(e,t){var a=_slicedToArray(useSafeState(null),2),r=a[0],l=a[1],n=useRef();function i(e){l(e,!0)}function o(){wrapperRaf.cancel(n.current)}return useEffect((function(){i("measure")}),[e]),useEffect((function(){if("measure"===r)t();r&&(n.current=wrapperRaf(_asyncToGenerator(_regeneratorRuntime().mark((function e(){var t,a;return _regeneratorRuntime().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:t=StatusQueue.indexOf(r),(a=StatusQueue[t+1])&&-1!==t&&i(a);case 3:case"end":return e.stop()}}),e)})))))}),[r]),useEffect((function(){return function(){o()}}),[]),[r,function(e){o(),n.current=wrapperRaf((function(){i((function(e){switch(r){case"align":return"motion";case"motion":return"stable"}return e})),null==e||e()}))}]},useStretchStyle=function(e){var t=_slicedToArray(React.useState({width:0,height:0}),2),a=t[0],r=t[1];return[React.useMemo((function(){var t={};if(e){var r=a.width,l=a.height;-1!==e.indexOf("height")&&l?t.height=l:-1!==e.indexOf("minHeight")&&l&&(t.minHeight=l),-1!==e.indexOf("width")&&r?t.width=r:-1!==e.indexOf("minWidth")&&r&&(t.minWidth=r)}return t}),[e,a]),function(e){r({width:e.offsetWidth,height:e.offsetHeight})}]},PopupInner=React.forwardRef((function(e,t){var a=e.visible,r=e.prefixCls,l=e.className,n=e.style,i=e.children,o=e.zIndex,s=e.stretch,c=e.destroyPopupOnHide,d=e.forceRender,u=e.align,p=e.point,f=e.getRootDomNode,m=e.getClassNameFromAlign,h=e.onAlign,g=e.onMouseEnter,_=e.onMouseLeave,y=e.onMouseDown,v=e.onTouchStart,b=e.onClick,R=useRef(),E=useRef(),x=_slicedToArray(useState(),2),C=x[0],T=x[1],S=_slicedToArray(useStretchStyle(s),2),w=S[0],P=S[1];var N=_slicedToArray(useVisibleStatus(a,(function(){s&&P(f())})),2),I=N[0],A=N[1],$=_slicedToArray(useState(0),2),O=$[0],F=$[1],L=useRef();function D(){var e;null===(e=R.current)||void 0===e||e.forceAlign()}function k(e,t){var a=m(t);C!==a&&T(a),F((function(e){return e+1})),"align"===I&&(null==h||h(e,t))}useLayoutEffect((function(){"alignPre"===I&&F(0)}),[I]),useLayoutEffect((function(){"align"===I&&(O<2?D():A((function(){var e;null===(e=L.current)||void 0===e||e.call(L)})))}),[O]);var H=_objectSpread2$1({},getMotion(e));function V(){return new Promise((function(e){L.current=e}))}["onAppearEnd","onEnterEnd","onLeaveEnd"].forEach((function(e){var t=H[e];H[e]=function(e,a){return A(),null==t?void 0:t(e,a)}})),React.useEffect((function(){H.motionName||"motion"!==I||A()}),[H.motionName,I]),React.useImperativeHandle(t,(function(){return{forceAlign:D,getElement:function(){return E.current}}}));var M=_objectSpread2$1(_objectSpread2$1({},w),{},{zIndex:o,opacity:"motion"!==I&&"stable"!==I&&a?0:void 0,pointerEvents:a||"stable"===I?void 0:"none"},n),j=!0;!(null==u?void 0:u.points)||"align"!==I&&"stable"!==I||(j=!1);var q=i;return React.Children.count(i)>1&&(q=React.createElement("div",{className:"".concat(r,"-content")},i)),React.createElement(CSSMotion,_extends({visible:a,ref:E,leavedClassName:"".concat(r,"-hidden")},H,{onAppearPrepare:V,onEnterPrepare:V,removeOnLeave:c,forceRender:d}),(function(e,t){var a=e.className,n=e.style,i=classNames(r,l,C,a);return React.createElement(RcAlign,{target:p||f,key:"popup",ref:R,monitorWindowResize:!0,disabled:j,align:u,onAlign:k},React.createElement("div",{ref:t,className:i,onMouseEnter:g,onMouseLeave:_,onMouseDownCapture:y,onTouchStartCapture:v,onClick:b,style:_objectSpread2$1(_objectSpread2$1({},n),M)},q))}))}));PopupInner.displayName="PopupInner";var MobilePopupInner=React.forwardRef((function(e,t){var a=e.prefixCls,r=e.visible,l=e.zIndex,n=e.children,i=e.mobile,o=(i=void 0===i?{}:i).popupClassName,s=i.popupStyle,c=i.popupMotion,d=void 0===c?{}:c,u=i.popupRender,p=e.onClick,f=React.useRef();React.useImperativeHandle(t,(function(){return{forceAlign:function(){},getElement:function(){return f.current}}}));var m=_objectSpread2$1({zIndex:l},s),h=n;return React.Children.count(n)>1&&(h=React.createElement("div",{className:"".concat(a,"-content")},n)),u&&(h=u(h)),React.createElement(CSSMotion,_extends({visible:r,ref:f,removeOnLeave:!0},d),(function(e,t){var r=e.className,l=e.style,n=classNames(a,o,r);return React.createElement("div",{ref:t,className:n,onClick:p,style:_objectSpread2$1(_objectSpread2$1({},l),m)},h)}))}));MobilePopupInner.displayName="MobilePopupInner";var _excluded=["visible","mobile"],Popup=React.forwardRef((function(e,t){var a=e.visible,r=e.mobile,l=_objectWithoutProperties(e,_excluded),n=_slicedToArray(useState(a),2),i=n[0],o=n[1],s=_slicedToArray(useState(!1),2),c=s[0],d=s[1],u=_objectSpread2$1(_objectSpread2$1({},l),{},{visible:i});useEffect((function(){o(a),a&&r&&d(isMobile())}),[a,r]);var p=c?React.createElement(MobilePopupInner,_extends({},u,{mobile:r,ref:t})):React.createElement(PopupInner,_extends({},u,{ref:t}));return React.createElement("div",null,React.createElement(Mask,u),p)}));Popup.displayName="Popup";var TriggerContext=React.createContext(null);function noop(){}function returnEmptyString(){return""}function returnDocument(e){return e?e.ownerDocument:window.document}var ALL_HANDLERS=["onClick","onMouseDown","onTouchStart","onMouseEnter","onMouseLeave","onFocus","onBlur","onContextMenu"];function generateTrigger(e){var t=function(t){_inherits(r,React.Component);var a=_createSuper(r);function r(e){var t,l;return _classCallCheck(this,r),(t=a.call(this,e)).popupRef=React.createRef(),t.triggerRef=React.createRef(),t.portalContainer=void 0,t.attachId=void 0,t.clickOutsideHandler=void 0,t.touchOutsideHandler=void 0,t.contextMenuOutsideHandler1=void 0,t.contextMenuOutsideHandler2=void 0,t.mouseDownTimeout=void 0,t.focusTime=void 0,t.preClickTime=void 0,t.preTouchTime=void 0,t.delayTimer=void 0,t.hasPopupMouseDown=void 0,t.onMouseEnter=function(e){var a=t.props.mouseEnterDelay;t.fireEvents("onMouseEnter",e),t.delaySetPopupVisible(!0,a,a?null:e)},t.onMouseMove=function(e){t.fireEvents("onMouseMove",e),t.setPoint(e)},t.onMouseLeave=function(e){t.fireEvents("onMouseLeave",e),t.delaySetPopupVisible(!1,t.props.mouseLeaveDelay)},t.onPopupMouseEnter=function(){t.clearDelayTimer()},t.onPopupMouseLeave=function(e){var a;e.relatedTarget&&!e.relatedTarget.setTimeout&&contains(null===(a=t.popupRef.current)||void 0===a?void 0:a.getElement(),e.relatedTarget)||t.delaySetPopupVisible(!1,t.props.mouseLeaveDelay)},t.onFocus=function(e){t.fireEvents("onFocus",e),t.clearDelayTimer(),t.isFocusToShow()&&(t.focusTime=Date.now(),t.delaySetPopupVisible(!0,t.props.focusDelay))},t.onMouseDown=function(e){t.fireEvents("onMouseDown",e),t.preClickTime=Date.now()},t.onTouchStart=function(e){t.fireEvents("onTouchStart",e),t.preTouchTime=Date.now()},t.onBlur=function(e){t.fireEvents("onBlur",e),t.clearDelayTimer(),t.isBlurToHide()&&t.delaySetPopupVisible(!1,t.props.blurDelay)},t.onContextMenu=function(e){e.preventDefault(),t.fireEvents("onContextMenu",e),t.setPopupVisible(!0,e)},t.onContextMenuClose=function(){t.isContextMenuToShow()&&t.close()},t.onClick=function(e){if(t.fireEvents("onClick",e),t.focusTime){var a;if(t.preClickTime&&t.preTouchTime?a=Math.min(t.preClickTime,t.preTouchTime):t.preClickTime?a=t.preClickTime:t.preTouchTime&&(a=t.preTouchTime),Math.abs(a-t.focusTime)<20)return;t.focusTime=0}t.preClickTime=0,t.preTouchTime=0,t.isClickToShow()&&(t.isClickToHide()||t.isBlurToHide())&&e&&e.preventDefault&&e.preventDefault();var r=!t.state.popupVisible;(t.isClickToHide()&&!r||r&&t.isClickToShow())&&t.setPopupVisible(!t.state.popupVisible,e)},t.onPopupMouseDown=function(){var e;(t.hasPopupMouseDown=!0,clearTimeout(t.mouseDownTimeout),t.mouseDownTimeout=window.setTimeout((function(){t.hasPopupMouseDown=!1}),0),t.context)&&(e=t.context).onPopupMouseDown.apply(e,arguments)},t.onDocumentClick=function(e){if(!t.props.mask||t.props.maskClosable){var a=e.target,r=t.getRootDomNode(),l=t.getPopupDomNode();contains(r,a)&&!t.isContextMenuOnly()||contains(l,a)||t.hasPopupMouseDown||t.close()}},t.getRootDomNode=function(){var e=t.props.getTriggerDOMNode;if(e)return e(t.triggerRef.current);try{var a=findDOMNode(t.triggerRef.current);if(a)return a}catch(e){}return ReactDOM.findDOMNode(_assertThisInitialized(t))},t.getPopupClassNameFromAlign=function(e){var a=[],r=t.props,l=r.popupPlacement,n=r.builtinPlacements,i=r.prefixCls,o=r.alignPoint,s=r.getPopupClassNameFromAlign;return l&&n&&a.push(getAlignPopupClassName(n,i,e,o)),s&&a.push(s(e)),a.join(" ")},t.getComponent=function(){var e=t.props,a=e.prefixCls,r=e.destroyPopupOnHide,l=e.popupClassName,n=e.onPopupAlign,i=e.popupMotion,o=e.popupAnimation,s=e.popupTransitionName,c=e.popupStyle,d=e.mask,u=e.maskAnimation,p=e.maskTransitionName,f=e.maskMotion,m=e.zIndex,h=e.popup,g=e.stretch,_=e.alignPoint,y=e.mobile,v=e.forceRender,b=e.onPopupClick,R=t.state,E=R.popupVisible,x=R.point,C=t.getPopupAlign(),T={};return t.isMouseEnterToShow()&&(T.onMouseEnter=t.onPopupMouseEnter),t.isMouseLeaveToHide()&&(T.onMouseLeave=t.onPopupMouseLeave),T.onMouseDown=t.onPopupMouseDown,T.onTouchStart=t.onPopupMouseDown,React.createElement(Popup,_extends({prefixCls:a,destroyPopupOnHide:r,visible:E,point:_&&x,className:l,align:C,onAlign:n,animation:o,getClassNameFromAlign:t.getPopupClassNameFromAlign},T,{stretch:g,getRootDomNode:t.getRootDomNode,style:c,mask:d,zIndex:m,transitionName:s,maskAnimation:u,maskTransitionName:p,maskMotion:f,ref:t.popupRef,motion:i,mobile:y,forceRender:v,onClick:b}),"function"==typeof h?h():h)},t.attachParent=function(e){wrapperRaf.cancel(t.attachId);var a,r=t.props,l=r.getPopupContainer,n=r.getDocument,i=t.getRootDomNode();l?(i||0===l.length)&&(a=l(i)):a=n(t.getRootDomNode()).body,a?a.appendChild(e):t.attachId=wrapperRaf((function(){t.attachParent(e)}))},t.getContainer=function(){if(!t.portalContainer){var e=(0,t.props.getDocument)(t.getRootDomNode()).createElement("div");e.style.position="absolute",e.style.top="0",e.style.left="0",e.style.width="100%",t.portalContainer=e}return t.attachParent(t.portalContainer),t.portalContainer},t.setPoint=function(e){t.props.alignPoint&&e&&t.setState({point:{pageX:e.pageX,pageY:e.pageY}})},t.handlePortalUpdate=function(){t.state.prevPopupVisible!==t.state.popupVisible&&t.props.afterPopupVisibleChange(t.state.popupVisible)},t.triggerContextValue={onPopupMouseDown:t.onPopupMouseDown},l="popupVisible"in e?!!e.popupVisible:!!e.defaultPopupVisible,t.state={prevPopupVisible:l,popupVisible:l},ALL_HANDLERS.forEach((function(e){t["fire".concat(e)]=function(a){t.fireEvents(e,a)}})),t}return _createClass(r,[{key:"componentDidMount",value:function(){this.componentDidUpdate()}},{key:"componentDidUpdate",value:function(){var e,t=this.props;if(this.state.popupVisible)return this.clickOutsideHandler||!this.isClickToHide()&&!this.isContextMenuToShow()||(e=t.getDocument(this.getRootDomNode()),this.clickOutsideHandler=addEventListenerWrap(e,"mousedown",this.onDocumentClick)),this.touchOutsideHandler||(e=e||t.getDocument(this.getRootDomNode()),this.touchOutsideHandler=addEventListenerWrap(e,"touchstart",this.onDocumentClick)),!this.contextMenuOutsideHandler1&&this.isContextMenuToShow()&&(e=e||t.getDocument(this.getRootDomNode()),this.contextMenuOutsideHandler1=addEventListenerWrap(e,"scroll",this.onContextMenuClose)),void(!this.contextMenuOutsideHandler2&&this.isContextMenuToShow()&&(this.contextMenuOutsideHandler2=addEventListenerWrap(window,"blur",this.onContextMenuClose)));this.clearOutsideHandler()}},{key:"componentWillUnmount",value:function(){this.clearDelayTimer(),this.clearOutsideHandler(),clearTimeout(this.mouseDownTimeout),wrapperRaf.cancel(this.attachId)}},{key:"getPopupDomNode",value:function(){var e;return(null===(e=this.popupRef.current)||void 0===e?void 0:e.getElement())||null}},{key:"getPopupAlign",value:function(){var e=this.props,t=e.popupPlacement,a=e.popupAlign,r=e.builtinPlacements;return t&&r?getAlignFromPlacement(r,t,a):a}},{key:"setPopupVisible",value:function(e,t){var a=this.props.alignPoint,r=this.state.popupVisible;this.clearDelayTimer(),r!==e&&("popupVisible"in this.props||this.setState({popupVisible:e,prevPopupVisible:r}),this.props.onPopupVisibleChange(e)),a&&t&&e&&this.setPoint(t)}},{key:"delaySetPopupVisible",value:function(e,t,a){var r=this,l=1e3*t;if(this.clearDelayTimer(),l){var n=a?{pageX:a.pageX,pageY:a.pageY}:null;this.delayTimer=window.setTimeout((function(){r.setPopupVisible(e,n),r.clearDelayTimer()}),l)}else this.setPopupVisible(e,a)}},{key:"clearDelayTimer",value:function(){this.delayTimer&&(clearTimeout(this.delayTimer),this.delayTimer=null)}},{key:"clearOutsideHandler",value:function(){this.clickOutsideHandler&&(this.clickOutsideHandler.remove(),this.clickOutsideHandler=null),this.contextMenuOutsideHandler1&&(this.contextMenuOutsideHandler1.remove(),this.contextMenuOutsideHandler1=null),this.contextMenuOutsideHandler2&&(this.contextMenuOutsideHandler2.remove(),this.contextMenuOutsideHandler2=null),this.touchOutsideHandler&&(this.touchOutsideHandler.remove(),this.touchOutsideHandler=null)}},{key:"createTwoChains",value:function(e){var t=this.props.children.props,a=this.props;return t[e]&&a[e]?this["fire".concat(e)]:t[e]||a[e]}},{key:"isClickToShow",value:function(){var e=this.props,t=e.action,a=e.showAction;return-1!==t.indexOf("click")||-1!==a.indexOf("click")}},{key:"isContextMenuOnly",value:function(){var e=this.props.action;return"contextMenu"===e||1===e.length&&"contextMenu"===e[0]}},{key:"isContextMenuToShow",value:function(){var e=this.props,t=e.action,a=e.showAction;return-1!==t.indexOf("contextMenu")||-1!==a.indexOf("contextMenu")}},{key:"isClickToHide",value:function(){var e=this.props,t=e.action,a=e.hideAction;return-1!==t.indexOf("click")||-1!==a.indexOf("click")}},{key:"isMouseEnterToShow",value:function(){var e=this.props,t=e.action,a=e.showAction;return-1!==t.indexOf("hover")||-1!==a.indexOf("mouseEnter")}},{key:"isMouseLeaveToHide",value:function(){var e=this.props,t=e.action,a=e.hideAction;return-1!==t.indexOf("hover")||-1!==a.indexOf("mouseLeave")}},{key:"isFocusToShow",value:function(){var e=this.props,t=e.action,a=e.showAction;return-1!==t.indexOf("focus")||-1!==a.indexOf("focus")}},{key:"isBlurToHide",value:function(){var e=this.props,t=e.action,a=e.hideAction;return-1!==t.indexOf("focus")||-1!==a.indexOf("blur")}},{key:"forcePopupAlign",value:function(){var e;this.state.popupVisible&&(null===(e=this.popupRef.current)||void 0===e||e.forceAlign())}},{key:"fireEvents",value:function(e,t){var a=this.props.children.props[e];a&&a(t);var r=this.props[e];r&&r(t)}},{key:"close",value:function(){this.setPopupVisible(!1)}},{key:"render",value:function(){var t=this.state.popupVisible,a=this.props,r=a.children,l=a.forceRender,n=a.alignPoint,i=a.className,o=a.autoDestroy,s=React.Children.only(r),c={key:"trigger"};this.isContextMenuToShow()?c.onContextMenu=this.onContextMenu:c.onContextMenu=this.createTwoChains("onContextMenu"),this.isClickToHide()||this.isClickToShow()?(c.onClick=this.onClick,c.onMouseDown=this.onMouseDown,c.onTouchStart=this.onTouchStart):(c.onClick=this.createTwoChains("onClick"),c.onMouseDown=this.createTwoChains("onMouseDown"),c.onTouchStart=this.createTwoChains("onTouchStart")),this.isMouseEnterToShow()?(c.onMouseEnter=this.onMouseEnter,n&&(c.onMouseMove=this.onMouseMove)):c.onMouseEnter=this.createTwoChains("onMouseEnter"),this.isMouseLeaveToHide()?c.onMouseLeave=this.onMouseLeave:c.onMouseLeave=this.createTwoChains("onMouseLeave"),this.isFocusToShow()||this.isBlurToHide()?(c.onFocus=this.onFocus,c.onBlur=this.onBlur):(c.onFocus=this.createTwoChains("onFocus"),c.onBlur=this.createTwoChains("onBlur"));var d=classNames(s&&s.props&&s.props.className,i);d&&(c.className=d);var u=_objectSpread2$1({},c);supportRef(s)&&(u.ref=composeRef(this.triggerRef,s.ref));var p,f=React.cloneElement(s,u);return(t||this.popupRef.current||l)&&(p=React.createElement(e,{key:"portal",getContainer:this.getContainer,didUpdate:this.handlePortalUpdate},this.getComponent())),!t&&o&&(p=null),React.createElement(TriggerContext.Provider,{value:this.triggerContextValue},f,p)}}],[{key:"getDerivedStateFromProps",value:function(e,t){var a=e.popupVisible,r={};return void 0!==a&&t.popupVisible!==a&&(r.popupVisible=a,r.prevPopupVisible=t.popupVisible),r}}]),r}();return t.contextType=TriggerContext,t.defaultProps={prefixCls:"rc-trigger-popup",getPopupClassNameFromAlign:returnEmptyString,getDocument:returnDocument,onPopupVisibleChange:noop,afterPopupVisibleChange:noop,onPopupAlign:noop,popupClassName:"",mouseEnterDelay:0,mouseLeaveDelay:.1,focusDelay:0,blurDelay:.15,popupStyle:{},destroyPopupOnHide:!1,popupAlign:{},defaultPopupVisible:!1,mask:!1,maskClosable:!0,action:[],showAction:[],hideAction:[],autoDestroy:!1},t}var Trigger=generateTrigger(Portal);let VMultipleSearch=class extends Component{constructor(e){var t;super(e),t=this,this._records=[],this.searchRef=React__default.createRef(),this.state={visible:!1,visible2:!1,loading:!1,itemList:[]},this.initialHandle=()=>__awaiter(this,void 0,void 0,(function*(){yield this.props.waiting();const{helperConfig:e}=this.props;this.searchHelper=Object.assign({},e,this.props.option.searchHelper);const t=this.searchHelper.fieldAliasMap;t||warn("Form","MULTIPLE_SEARCH_HELPER 需要配置 `fieldAliasMap` 选项"),this.alias="function"==typeof t?t():t||{},Object.keys(this.alias).includes("valueKey")&&Object.keys(this.alias).includes("textKey")||warn("Form","MULTIPLE_SEARCH_HELPER 的 fieldAliasMap 选项必须包含自身 `valueKey` 和 `textKey`")})),this.getLastedSearchHelper=()=>{var e;const t=Object.assign({},this.searchHelper,this.props.option.searchHelper);return t.table&&!t.table.rowKey&&(t.table.rowKey=null===(e=this.alias)||void 0===e?void 0:e.valueKey),t},this.setVisible=(e,t)=>{this.setState({visible:e},t)},this.setItemList=e=>{this.setState({itemList:e})},this.setRecords=e=>{this._records=e},this.recordsToDict=()=>this._records.map((e=>({text:e[this.alias.textKey],value:e[this.alias.valueKey]}))),this.setViewValue=e=>{const{$$form:t}=this.context,{fieldName:a}=this.props.option;t.setViewValue(a,this.createViewText(e))},this.openSearchHelper=e=>__awaiter(this,void 0,void 0,(function*(){yield this.props.waiting();const{$$form:t}=this.context,{beforeOpen:a}=this.searchHelper,r=(null!=a?a:trueNoop)(t.state.formData);(null==r?void 0:r.then)?r.then((()=>{this.setVisible(!0),null==e||e()})).catch((()=>{})):!1!==r&&(this.setVisible(!0),null==e||e())})),this.closeSearchHelper=function(e){let a=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[];const{valueKey:r}=t.alias;t.setRecords(uniqBy([...t._records.filter((e=>a.includes(e[r]))),...e],r));const l=t.recordsToDict();t.setItemList(l),t.triggerChange(l.map((e=>e.value)));const{closed:n}=t.searchHelper;t.setVisible(!1,(()=>{setTimeout((()=>null==n?void 0:n(t._records)),200)}))},this.triggerChange=e=>{const{onChange:t,onValuesChange:a}=this.props,{valueKey:r}=this.alias||{};this.setRecords(this._records.filter((t=>e.includes(t[r])))),null==t||t(e),a(e,this.createViewText(e),this._records)},this.initialHandle()}componentDidMount(){this.getItemList()}componentDidUpdate(e,t){const{value:a=[]}=e,{value:r=[],clickOutside:l}=this.props;isEqual$1(intersection(a,r),r)||isEqual$1(r,this._records.map((e=>e[this.alias.valueKey])))||this.getItemList(),l&&t.visible2&&this.setState({visible2:!1})}getItemList(){var e,t;return __awaiter(this,void 0,void 0,(function*(){if(yield this.props.waiting(),!this.searchHelper)return;const{textKey:a,valueKey:r}=this.alias,{fetchApi:l,params:n={},formatter:i=(e=>e),dataKey:o,callback:s,fieldAliasMap:c}=this.searchHelper.echoRequest||(null===(e=this.props.option.searchHelper)||void 0===e?void 0:e.request)||{},d="function"==typeof c?c():c||{},{value:u}=this.props;if(l&&!isEmpty(u)){this.setState({loading:!0});try{const e=yield l(i(Object.assign(Object.assign({},n),{keys:u})));if(200===e.code){let l=Array.isArray(e.data)?e.data:null!==(t=get(e.data,o))&&void 0!==t?t:[];l.forEach((e=>{(null==d?void 0:d.valueKey)&&d.valueKey!==r&&(e[r]=e[d.valueKey]),(null==d?void 0:d.textKey)&&d.textKey!==a&&(e[a]=e[d.textKey])})),l=l.filter((e=>u.includes(e[r])));const n=l.map((e=>({value:e[r],text:e[a]})));this.setRecords(l),this.setItemList(n),this.setViewValue(u),null==s||s(l)}}catch(e){}this.setState({loading:!1})}}))}createViewText(e){return this.recordsToDict().filter((t=>e.includes(t.value))).map((e=>e.text)).join(",")}render(){var e,a,r;const{$$form:l}=this.context,{visible:n,visible2:i,loading:o,itemList:s}=this.state,{value:c}=this.props,{fieldName:d,options:u={},searchHelper:p={},style:f={},placeholder:m=t("qm.form.selectPlaceholder"),bordered:h=!0,allowClear:g=!0,readOnly:_,disabled:y}=this.props.option,{collapseTags:v,maxTagTextLength:b}=u,R={visible:n,title:t("qm.searchHelper.text"),width:null!==(e=p.width)&&void 0!==e?e:"60%",loading:!1,bodyStyle:{paddingBottom:`${SizeHeight[l.$size]+20}px`},onClose:()=>{this.setVisible(!1)}},E=Object.assign(Object.assign({},this.getLastedSearchHelper()),{size:l.$size,multiple:!0,initialValue:merge({},p.initialValue),defaultSelectedKeys:c,selectionRows:this._records,onClose:(e,t)=>{e?this.closeSearchHelper(e,t):this.setVisible(!1)}}),x=s.filter((e=>null==c?void 0:c.includes(e.value))),C=React__default.createElement("ul",{className:"ant-dropdown-menu"},x.length?x.map((e=>React__default.createElement("li",{key:e.value,className:"ant-dropdown-menu-item"},e.text))):React__default.createElement("li",{className:"ant-dropdown-menu-item"},t("qm.table.config.emptyText"))),T=this.searchRef.current?this.searchRef.current.offsetWidth:300,S=getPrefixCls("form-multiple-search-helper"),{size:w}=l.context,P={[S]:!0,[`${S}--lg`]:"large"===w,[`${S}--sm`]:"small"===w};null===(r=(a=this.props).setOmitClassNames)||void 0===r||r.call(a,[`.${S}`]);const N=s.filter((e=>null==c?void 0:c.includes(e.value))).map((e=>e.text)).join(",");return l.isOnlyShow?React__default.createElement(FormItemView,{value:N,bordered:h}):React__default.createElement(React__default.Fragment,null,React__default.createElement("span",{className:"ant-input-group-wrapper ant-input-search search-helper-multiple"},React__default.createElement("span",{ref:this.searchRef,className:"ant-input-wrapper ant-input-group"},React__default.createElement(Trigger,{popupVisible:!y&&i,popup:C,popupClassName:classNames(P),popupStyle:{minWidth:T},onPopupVisibleChange:e=>this.setState({visible2:e}),builtinPlacements:BUILT_IN_PLACEMENTS$1,prefixCls:"ant-dropdown",popupPlacement:"bottomLeft",popupTransitionName:"ant-slide-up"},React__default.createElement(Select,{mode:"multiple",maxTagCount:v?"responsive":void 0,maxTagTextLength:b,open:!1,value:c,placeholder:m,loading:o,bordered:h,allowClear:g,disabled:y,style:Object.assign({width:"100%"},f),title:N,onKeyUp:e=>{13===e.keyCode&&(e.preventDefault(),this.openSearchHelper())},onClick:e=>{var t,a;const r=e.target;r.classList.contains("ant-select-selection-overflow-item-rest")&&(null===(a=(t=this.props).setCurrentElement)||void 0===a||a.call(t,r),this.setState({visible2:!0}))},onDoubleClick:()=>{this.openSearchHelper()},onChange:e=>{this.triggerChange(e)}},s.map((e=>React__default.createElement(Select.Option,{key:e.value,value:e.value},e.text))))),React__default.createElement("span",{className:"ant-input-group-addon"},React__default.createElement(Button,{className:"ant-input-search-button",disabled:y,icon:React__default.createElement(SearchOutlined,null),onClick:()=>{this.openSearchHelper()}})))),React__default.createElement(QmModal,R,React__default.createElement(SearchHelper,E)))}};VMultipleSearch.contextType=FormContext,VMultipleSearch=__decorate([OutsideClick],VMultipleSearch);class FormMultipleSearchHelper extends Component{constructor(e,t){let{$$form:a}=t;super(e),this.state={searchHelper:{}},this.waiting=()=>__awaiter(this,void 0,void 0,(function*(){try{yield this.promiseRef}catch(e){throwError("Form","搜索帮助获取定义信息的接口出错")}})),this.getHelperConfig=e=>{var t,a;const{global:r}=e,{name:l,fieldsDefine:n}=this.props.option.searchHelper||{};if(!l)return;if(!(null===(t=null==r?void 0:r.searchHelper)||void 0===t?void 0:t.getServerConfig)||!(null===(a=null==r?void 0:r.searchHelper)||void 0===a?void 0:a.createFetchApi))return warn("searchHelper","从服务端获取定义信息的时候,ConfigProvider 组件 `getServerConfig` 和 `createFetchApi` 为必选参数");const{fieldName:i}=this.props.option;this.promiseRef=new Promise(((e,t)=>__awaiter(this,void 0,void 0,(function*(){try{const a=yield r.searchHelper.getServerConfig({searchHelperId:l});if(200===a.code){const t=createShConfig(Object.assign({},a.data,n),i,r.searchHelper.createFetchApi,!0);this.setState({searchHelper:t},(()=>e()))}else t()}catch(e){t()}}))))},this.getHelperConfig(a.context)}render(){const{$$form:e}=this.context,{searchHelper:t}=this.state,{type:a,label:r,tooltip:l,fieldName:n,invisible:i,options:o={},labelWidth:s=e.props.labelWidth,className:c,extra:d,buttonAfter:u,validateTrigger:p,rules:f=[],onChange:m=noop$1}=this.props.option;return React__default.createElement(Form.Item,{label:e.renderFormLabel(r),className:classNames(n,c),tooltip:l,hidden:i,labelCol:{flex:e.verticalLayout?"initial":getParserWidth(s)},required:e.getFormItemRequired(f)},React__default.createElement(Row,{wrap:!1,gutter:4},React__default.createElement(Col,{flex:"auto"},React__default.createElement(Form.Item,{name:n,noStyle:!0,rules:f,validateTrigger:p,messageVariables:{label:e.getFormItemLabel(r)}},React__default.createElement(VMultipleSearch,{option:this.props.option,helperConfig:t,waiting:this.waiting,onValuesChange:(t,a,r)=>{m(t,r),e.setViewValue(n,a)}}))),u&&React__default.createElement(Col,null,e.renderFormItemButton(n,u)),d&&React__default.createElement(Col,{flex:getParserWidth(d.labelWidth||DEFAULT_LABEL_WIDTH)},e.renderFormItemExtra(Object.assign({fieldName:n},d)))))}}FormMultipleSearchHelper.contextType=FormContext;const{Search:Search$1}=Input;class VTreeTableHelper extends Component{constructor(e){super(e),this.state={visible:!1,loading:!1},this.setVisible=(e,t)=>{this.setState({visible:e},t)},this.initialHandle=()=>__awaiter(this,void 0,void 0,(function*(){yield this.props.waiting();const{helperConfig:e}=this.props,{fieldName:t}=this.props.option;this.searchHelper=Object.assign({},e,this.props.option.searchHelper);const{fieldAliasMap:a,extraAliasMap:r,fieldsDefine:l}=this.searchHelper;if(a||warn("Form","TREE_TABLE_HELPER 需要配置 `fieldAliasMap` 选项"),this.alias="function"==typeof a?a():a||{},this.extras="function"==typeof r?r():r||{},l){const e=["valueKey","displayKey","extraKey"];for(const t in l)e.includes(t)&&(this[t]=l[t])}Object.keys(this.alias).includes(t)||warn("Form","TREE_TABLE_HELPER 的 fieldAliasMap 选项必须包含自身 `fieldName` 值"),this.searchHelper.echoRequest&&!this.valueKey&&warn("Form","TREE_TABLE_HELPER 的 echoRequest 选项必须组合 `fieldsDefine` 中的 `valueKey` 一起使用")})),this.getItemValue=()=>{const{$$form:e}=this.context;return e.state.other[this.valueKey]},this.getLastedSearchHelper=()=>Object.assign({},this.searchHelper,this.props.option.searchHelper),this.getItemText=()=>__awaiter(this,void 0,void 0,(function*(){var e;yield this.props.waiting();const t=this.getItemValue();if(t===this._prevValue)return;this._prevValue=t;const{fetchApi:a,params:r={},formatter:l=(e=>e),dataKey:n,fieldAliasMap:i,extraAliasMap:o}=this.searchHelper.echoRequest||{},s="function"==typeof i?i():i||{},c="function"==typeof o?o():o||{},{value:d}=this.props;if(a&&!d&&t){this.setState({loading:!0});try{const i=yield a(l(Object.assign(Object.assign({},r),{key:t})));if(200===i.code){const t=Array.isArray(i.data)?i.data:null!==(e=get(i.data,n))&&void 0!==e?e:[];if(t[0]){const e=t[0];s&&setEchoRecord(e,this.alias,s),c&&setEchoExtras(e,this.extras,c),this._record=e,this.setFieldsValue(e)}}}catch(e){}this.setState({loading:!1})}})),this.setFieldsValue=e=>{const{$$form:t}=this.context,{fieldName:a}=this.props.option;for(const r in this.alias){const l=getSplitValue$1(e,this.alias[r]);t.SET_FIELDS_VALUE({[r]:l}),r===a&&t.setViewValue(a,l)}for(const a in this.extras)t.SET_FIELDS_EXTRA({[a]:getSplitValue$1(e,this.extras[a])})},this.openSearchHelper=e=>__awaiter(this,void 0,void 0,(function*(){yield this.props.waiting();const{$$form:t}=this.context,{beforeOpen:a}=this.searchHelper,r=(null!=a?a:trueNoop)(t.state.formData);(null==r?void 0:r.then)?r.then((()=>{this.setVisible(!0),null==e||e()})).catch((()=>{})):!1!==r&&(this.setVisible(!0),null==e||e())})),this.closeSearchHelper=e=>{const{$$form:t}=this.context,{fieldName:a}=this.props.option;for(const r in this.alias)r!==a&&t.SET_FIELDS_VALUE({[r]:getSplitValue$1(e,this.alias[r])});for(const a in this.extras)t.SET_FIELDS_EXTRA({[a]:getSplitValue$1(e,this.extras[a])});this._record=e;const r=getSplitValue$1(e,this.alias[a]);this.triggerChange(r);const{closed:l}=this.searchHelper;this.setVisible(!1,(()=>{setTimeout((()=>null==l?void 0:l(e)),200)}))},this.clearSearchHelperValue=()=>{const{$$form:e}=this.context,{fieldName:t}=this.props.option;for(const a in this.alias)a!==t&&e.SET_FIELDS_VALUE({[a]:void 0});for(const t in this.extras)e.SET_FIELDS_EXTRA({[t]:""});this._record=null,this.triggerChange("")},this.triggerChange=e=>{const{onChange:t,onValuesChange:a}=this.props;null==t||t(e),a(e,this._record)},this.triggerBlur=e=>{const{onBlur:t}=this.props;null==t||t(e)},this.initialHandle()}componentDidMount(){this.getItemText()}componentDidUpdate(){this.getItemText()}render(){var e;const{$$form:a}=this.context,{visible:r,loading:l}=this.state,{value:n=""}=this.props,{type:i,options:o={},searchHelper:s={},style:c={},placeholder:d=t("qm.form.selectPlaceholder"),bordered:u=!0,allowClear:p=!0,readOnly:f,disabled:m}=this.props.option,{prefix:h,suffix:g,maxLength:_}=o,y={visible:r,title:t("qm.searchHelper.text"),width:null!==(e=s.width)&&void 0!==e?e:"65%",loading:!1,bodyStyle:{paddingBottom:`${SizeHeight[a.$size]+20}px`},onClose:()=>{this.setVisible(!1)}},v=Object.assign(Object.assign({},this.getLastedSearchHelper()),{size:a.$size,initialValue:merge({},s.initialValue),onClose:e=>{e?this.closeSearchHelper(e):this.setVisible(!1)}});return a.isOnlyShow?React__default.createElement(FormItemView,{value:n,bordered:u}):React__default.createElement(React__default.Fragment,null,React__default.createElement(Search$1,{ref:e=>this[`${i}_Ref`]=e,value:n,title:n,loading:l,placeholder:d,style:c,prefix:h,suffix:g,maxLength:_,bordered:u,allowClear:p,readOnly:f,disabled:m,onBlur:e=>{const{value:t}=e.target;this.triggerBlur(t)},onKeyUp:e=>{13===e.keyCode&&(e.preventDefault(),this.openSearchHelper())},onDoubleClick:e=>{this.openSearchHelper()},onSearch:(e,t)=>{"click"===(null==t?void 0:t.type)&&("INPUT"!==t.target.tagName?this.openSearchHelper():this.clearSearchHelperValue())}}),React__default.createElement(QmModal,y,React__default.createElement(TreeTableHelper,v)))}}VTreeTableHelper.contextType=FormContext;class FormTreeTableHelper extends Component{constructor(e,t){let{$$form:a}=t;super(e),this.state={searchHelper:{}},this.waiting=()=>__awaiter(this,void 0,void 0,(function*(){try{yield this.promiseRef}catch(e){throwError("Form","搜索帮助获取定义信息的接口出错")}})),this.getHelperConfig=e=>{var t,a;const{global:r}=e,{name:l,fieldsDefine:n}=this.props.option.searchHelper||{};if(!l)return;if(!(null===(t=null==r?void 0:r.searchHelper)||void 0===t?void 0:t.getServerConfig)||!(null===(a=null==r?void 0:r.searchHelper)||void 0===a?void 0:a.createFetchApi))return warn("searchHelper","从服务端获取定义信息的时候,ConfigProvider 组件 `getServerConfig` 和 `createFetchApi` 为必选参数");const{fieldName:i}=this.props.option;this.promiseRef=new Promise(((e,t)=>__awaiter(this,void 0,void 0,(function*(){try{const a=yield r.searchHelper.getServerConfig({searchHelperId:l});if(200===a.code){const t=createShConfig(Object.assign({},a.data,n),i,r.searchHelper.createFetchApi);this.setState({searchHelper:t},(()=>e()))}else t()}catch(e){t()}}))))},this.getHelperConfig(a.context)}render(){const{$$form:e}=this.context,{searchHelper:t}=this.state,{type:a,label:r,tooltip:l,fieldName:n,invisible:i,options:o={},labelWidth:s=e.props.labelWidth,className:c,extra:d,buttonAfter:u,validateTrigger:p,rules:f=[],onChange:m=noop$1}=this.props.option;return React__default.createElement(Form.Item,{label:e.renderFormLabel(r),className:classNames(n,c),tooltip:l,hidden:i,labelCol:{flex:e.verticalLayout?"initial":getParserWidth(s)},required:e.getFormItemRequired(f)},React__default.createElement(Row,{wrap:!1,gutter:4},React__default.createElement(Col,{flex:"auto"},React__default.createElement(Form.Item,{name:n,noStyle:!0,rules:f,validateTrigger:p,messageVariables:{label:e.getFormItemLabel(r)}},React__default.createElement(VTreeTableHelper,{option:this.props.option,helperConfig:t,waiting:this.waiting,onValuesChange:(t,a)=>{m(t,a),e.setViewValue(n,t)}}))),u&&React__default.createElement(Col,null,e.renderFormItemButton(n,u)),d&&React__default.createElement(Col,{flex:getParserWidth(d.labelWidth||DEFAULT_LABEL_WIDTH)},e.renderFormItemExtra(Object.assign({fieldName:n},d)))))}}FormTreeTableHelper.contextType=FormContext;let VMultipleTreeTableHelper=class extends Component{constructor(e){var t;super(e),t=this,this._records=[],this.searchRef=React__default.createRef(),this.state={visible:!1,visible2:!1,loading:!1,itemList:[]},this.initialHandle=()=>__awaiter(this,void 0,void 0,(function*(){yield this.props.waiting();const{helperConfig:e}=this.props;this.searchHelper=Object.assign({},e,this.props.option.searchHelper);const t=this.searchHelper.fieldAliasMap;t||warn("Form","MULTIPLE_TREE_TABLE_HELPER 需要配置 `fieldAliasMap` 选项"),this.alias="function"==typeof t?t():t||{},Object.keys(this.alias).includes("valueKey")&&Object.keys(this.alias).includes("textKey")||warn("Form","MULTIPLE_TREE_TABLE_HELPER 的 fieldAliasMap 选项必须包含自身 `valueKey` 和 `textKey`")})),this.getLastedSearchHelper=()=>{var e;const t=Object.assign({},this.searchHelper,this.props.option.searchHelper);return t.table&&!t.table.rowKey&&(t.table.rowKey=null===(e=this.alias)||void 0===e?void 0:e.valueKey),t},this.setVisible=(e,t)=>{this.setState({visible:e},t)},this.setItemList=e=>{this.setState({itemList:e})},this.setRecords=e=>{this._records=e},this.recordsToDict=()=>this._records.map((e=>({text:e[this.alias.textKey],value:e[this.alias.valueKey]}))),this.setViewValue=e=>{const{$$form:t}=this.context,{fieldName:a}=this.props.option;t.setViewValue(a,this.createViewText(e))},this.openSearchHelper=e=>__awaiter(this,void 0,void 0,(function*(){yield this.props.waiting();const{$$form:t}=this.context,{beforeOpen:a}=this.searchHelper,r=(null!=a?a:trueNoop)(t.state.formData);(null==r?void 0:r.then)?r.then((()=>{this.setVisible(!0),null==e||e()})).catch((()=>{})):!1!==r&&(this.setVisible(!0),null==e||e())})),this.closeSearchHelper=function(e){let a=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[];const{valueKey:r}=t.alias;t.setRecords(uniqBy([...t._records.filter((e=>a.includes(e[r]))),...e],r));const l=t.recordsToDict();t.setItemList(l),t.triggerChange(l.map((e=>e.value)));const{closed:n}=t.searchHelper;t.setVisible(!1,(()=>{setTimeout((()=>null==n?void 0:n(t._records)),200)}))},this.triggerChange=e=>{const{onChange:t,onValuesChange:a}=this.props,{valueKey:r}=this.alias||{};this.setRecords(this._records.filter((t=>e.includes(t[r])))),null==t||t(e),a(e,this.createViewText(e),this._records)},this.initialHandle()}componentDidMount(){this.getItemList()}componentDidUpdate(e,t){const{value:a=[]}=e,{value:r=[],clickOutside:l}=this.props;isEqual$1(intersection(a,r),r)||isEqual$1(r,this._records.map((e=>e[this.alias.valueKey])))||this.getItemList(),l&&t.visible2&&this.setState({visible2:!1})}getItemList(){var e,t;return __awaiter(this,void 0,void 0,(function*(){if(yield this.props.waiting(),!this.searchHelper)return;const{textKey:a,valueKey:r}=this.alias,{fetchApi:l,params:n={},formatter:i=(e=>e),dataKey:o,fieldAliasMap:s}=this.searchHelper.echoRequest||(null===(e=this.props.option.searchHelper)||void 0===e?void 0:e.request)||{},c="function"==typeof s?s():s||{},{value:d}=this.props;if(l&&!isEmpty(d)){this.setState({loading:!0});try{const e=yield l(i(Object.assign(Object.assign({},n),{keys:d})));if(200===e.code){let l=Array.isArray(e.data)?e.data:null!==(t=get(e.data,o))&&void 0!==t?t:[];l.forEach((e=>{(null==c?void 0:c.valueKey)&&c.valueKey!==r&&(e[r]=e[c.valueKey]),(null==c?void 0:c.textKey)&&c.textKey!==a&&(e[a]=e[c.textKey])})),l=l.filter((e=>d.includes(e[r])));const n=l.map((e=>({value:e[r],text:e[a]})));this.setRecords(l),this.setItemList(n),this.setViewValue(d)}}catch(e){}this.setState({loading:!1})}}))}createViewText(e){return this.recordsToDict().filter((t=>e.includes(t.value))).map((e=>e.text)).join(",")}render(){var e,a,r;const{$$form:l}=this.context,{visible:n,visible2:i,loading:o,itemList:s}=this.state,{value:c}=this.props,{fieldName:d,options:u={},searchHelper:p={},style:f={},placeholder:m=t("qm.form.selectPlaceholder"),bordered:h=!0,allowClear:g=!0,readOnly:_,disabled:y}=this.props.option,{collapseTags:v,maxTagTextLength:b}=u,R={visible:n,title:t("qm.searchHelper.text"),width:null!==(e=p.width)&&void 0!==e?e:"65%",loading:!1,bodyStyle:{paddingBottom:`${SizeHeight[l.$size]+20}px`},onClose:()=>{this.setVisible(!1)}},E=Object.assign(Object.assign({},this.getLastedSearchHelper()),{size:l.$size,multiple:!0,initialValue:merge({},p.initialValue),defaultSelectedKeys:c,selectionRows:this._records,onClose:(e,t)=>{e?this.closeSearchHelper(e,t):this.setVisible(!1)}}),x=s.filter((e=>null==c?void 0:c.includes(e.value))),C=React__default.createElement("ul",{className:"ant-dropdown-menu"},x.length?x.map((e=>React__default.createElement("li",{key:e.value,className:"ant-dropdown-menu-item"},e.text))):React__default.createElement("li",{className:"ant-dropdown-menu-item"},t("qm.table.config.emptyText"))),T=this.searchRef.current?this.searchRef.current.offsetWidth:300,S=getPrefixCls("form-multiple-tree-table-helper"),{size:w}=l.context,P={[S]:!0,[`${S}--lg`]:"large"===w,[`${S}--sm`]:"small"===w};null===(r=(a=this.props).setOmitClassNames)||void 0===r||r.call(a,[`.${S}`]);const N=s.filter((e=>null==c?void 0:c.includes(e.value))).map((e=>e.text)).join(",");return l.isOnlyShow?React__default.createElement(FormItemView,{value:N,bordered:h}):React__default.createElement(React__default.Fragment,null,React__default.createElement("span",{className:"ant-input-group-wrapper ant-input-search search-helper-multiple"},React__default.createElement("span",{ref:this.searchRef,className:"ant-input-wrapper ant-input-group"},React__default.createElement(Trigger,{popupVisible:!y&&i,popup:C,popupClassName:classNames(P),popupStyle:{minWidth:T},onPopupVisibleChange:e=>this.setState({visible2:e}),builtinPlacements:BUILT_IN_PLACEMENTS$1,prefixCls:"ant-dropdown",popupPlacement:"bottomLeft",popupTransitionName:"ant-slide-up"},React__default.createElement(Select,{mode:"multiple",maxTagCount:v?"responsive":void 0,maxTagTextLength:b,open:!1,value:c,placeholder:m,loading:o,bordered:h,allowClear:g,disabled:y,style:Object.assign({width:"100%"},f),title:N,onKeyUp:e=>{13===e.keyCode&&(e.preventDefault(),this.openSearchHelper())},onClick:e=>{var t,a;const r=e.target;r.classList.contains("ant-select-selection-overflow-item-rest")&&(null===(a=(t=this.props).setCurrentElement)||void 0===a||a.call(t,r),this.setState({visible2:!0}))},onDoubleClick:()=>{this.openSearchHelper()},onChange:e=>{this.triggerChange(e)}},s.map((e=>React__default.createElement(Select.Option,{key:e.value,value:e.value},e.text))))),React__default.createElement("span",{className:"ant-input-group-addon"},React__default.createElement(Button,{className:"ant-input-search-button",disabled:y,icon:React__default.createElement(SearchOutlined,null),onClick:()=>{this.openSearchHelper()}})))),React__default.createElement(QmModal,R,React__default.createElement(TreeTableHelper,E)))}};VMultipleTreeTableHelper.contextType=FormContext,VMultipleTreeTableHelper=__decorate([OutsideClick],VMultipleTreeTableHelper);class FormMultipleTreeTableHelper extends Component{constructor(e,t){let{$$form:a}=t;super(e),this.state={searchHelper:{}},this.waiting=()=>__awaiter(this,void 0,void 0,(function*(){try{yield this.promiseRef}catch(e){throwError("Form","搜索帮助获取定义信息的接口出错")}})),this.getHelperConfig=e=>{var t,a;const{global:r}=e,{name:l,fieldsDefine:n}=this.props.option.searchHelper||{};if(!l)return;if(!(null===(t=null==r?void 0:r.searchHelper)||void 0===t?void 0:t.getServerConfig)||!(null===(a=null==r?void 0:r.searchHelper)||void 0===a?void 0:a.createFetchApi))return warn("searchHelper","从服务端获取定义信息的时候,ConfigProvider 组件 `getServerConfig` 和 `createFetchApi` 为必选参数");const{fieldName:i}=this.props.option;this.promiseRef=new Promise(((e,t)=>__awaiter(this,void 0,void 0,(function*(){try{const a=yield r.searchHelper.getServerConfig({searchHelperId:l});if(200===a.code){const t=createShConfig(Object.assign({},a.data,n),i,r.searchHelper.createFetchApi,!0);this.setState({searchHelper:t},(()=>e()))}else t()}catch(e){t()}}))))},this.getHelperConfig(a.context)}render(){const{$$form:e}=this.context,{searchHelper:t}=this.state,{type:a,label:r,tooltip:l,fieldName:n,invisible:i,options:o={},labelWidth:s=e.props.labelWidth,className:c,extra:d,buttonAfter:u,validateTrigger:p,rules:f=[],onChange:m=noop$1}=this.props.option;return React__default.createElement(Form.Item,{label:e.renderFormLabel(r),className:classNames(n,c),tooltip:l,hidden:i,labelCol:{flex:e.verticalLayout?"initial":getParserWidth(s)},required:e.getFormItemRequired(f)},React__default.createElement(Row,{wrap:!1,gutter:4},React__default.createElement(Col,{flex:"auto"},React__default.createElement(Form.Item,{name:n,noStyle:!0,rules:f,validateTrigger:p,messageVariables:{label:e.getFormItemLabel(r)}},React__default.createElement(VMultipleTreeTableHelper,{option:this.props.option,helperConfig:t,waiting:this.waiting,onValuesChange:(t,a,r)=>{m(t,r),e.setViewValue(n,a)}}))),u&&React__default.createElement(Col,null,e.renderFormItemButton(n,u)),d&&React__default.createElement(Col,{flex:getParserWidth(d.labelWidth||DEFAULT_LABEL_WIDTH)},e.renderFormItemExtra(Object.assign({fieldName:n},d)))))}}FormMultipleTreeTableHelper.contextType=FormContext;const TEXT_VALUE=new Array(2).fill("");class RangeHelper extends Component{constructor(e){var t;super(e),t=this,this._is_change=!1,this._records=[],this._is_clear=!1,this.state={visible:!1,loading:!1,itemList:[],textValue:TEXT_VALUE},this.initialHandle=()=>__awaiter(this,void 0,void 0,(function*(){yield this.props.waiting();const{helperConfig:e}=this.props;this.searchHelper=Object.assign({},e,this.props.option.searchHelper);const t=this.searchHelper.fieldAliasMap;t||warn("Form","RANGE_SEARCH_HELPER 需要配置 `fieldAliasMap` 选项"),this.alias="function"==typeof t?t():t||{},Object.keys(this.alias).includes("valueKey")&&Object.keys(this.alias).includes("textKey")||warn("Form","RANGE_SEARCH_HELPER 的 fieldAliasMap 选项必须包含自身 `valueKey` 和 `textKey`")})),this.getLastedSearchHelper=()=>Object.assign({},this.searchHelper,this.props.option.searchHelper),this.setItemList=e=>{this.setState({itemList:e})},this.setVisible=(e,t)=>{this.setState({visible:e},t)},this.setTextValue=e=>{this.setState({textValue:e})},this.setRecords=e=>{this._records=e},this.setViewValue=()=>{const{$$form:e}=this.context,{fieldName:t}=this.props.option;e.setViewValue(t,this.createViewText())},this.triggerChange=e=>{const{onChange:t,onValuesChange:a}=this.props;this._is_change=!1,null==t||t(e),a(e,this.createViewText(),this._records)},this.clearSearchHelperValue=()=>{this.setRecords([]),this.setTextValue(TEXT_VALUE),this.triggerChange([])},this.closeSearchHelper=e=>{const{valueKey:t,textKey:a}=this.alias,r=e.map((e=>({value:e[t],text:e[a]})));this.setRecords(e),this.setItemList(r),this.setTextValue(r.map((e=>{var t;return null!==(t=e.text)&&void 0!==t?t:""}))),this.triggerChange(e.map((e=>e[t])));const{closed:l}=this.searchHelper;this.setVisible(!1,(()=>{setTimeout((()=>null==l?void 0:l(this._records)),200)}))},this.openSearchHelper=e=>__awaiter(this,void 0,void 0,(function*(){yield this.props.waiting();const{$$form:t}=this.context,{beforeOpen:a}=this.searchHelper,r=(null!=a?a:trueNoop)(t.state.formData);(null==r?void 0:r.then)?r.then((()=>{this.setVisible(!0),null==e||e()})).catch((()=>{})):!1!==r&&(this.setVisible(!0),null==e||e())})),this.createFilters=e=>{const{fieldName:t}=this.props.option;return{[t]:isEmpty(e)?void 0:e}},this.getSearchHelperTableData=e=>{const{table:t,initialValue:a={}}=this.searchHelper,{beforeFetch:r=trueNoop,formatter:l=(e=>e)}=t.fetch;return new Promise(((n,i)=>__awaiter(this,void 0,void 0,(function*(){var o;const s=merge({},this.getLastedSearchHelper().table.fetch.params,Object.assign(Object.assign({},a),l(this.createFilters(e))),{currentPage:1,pageSize:500});try{if(!r(s))return i();this.setState({loading:!0});const e=yield t.fetch.api(s);if(nextTick((()=>this.setState({loading:!1}))),200===e.code){const a=Array.isArray(e.data)?e.data:null!==(o=get(e.data,t.fetch.dataKey))&&void 0!==o?o:[];return n(a)}}catch(e){this.setState({loading:!1})}i()}))))},this.resetSearchHelperValue=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];return __awaiter(t,void 0,void 0,(function*(){const{textValue:t}=this.state,{textKey:a}=this.alias,r=e.filter((e=>{var r;const l=null===(r=e[a])||void 0===r?void 0:r.toString().toLowerCase();return t.some((e=>null==l?void 0:l.includes(e.toLowerCase())))}));if(2===r.length)return this.closeSearchHelper(r);this.openSearchHelper()}))},this.closeButNotSelect=()=>{this._is_change&&this.clearSearchHelperValue(),this.setVisible(!1)},this.initialHandle()}componentDidMount(){this.getItemList()}componentDidUpdate(e){const{value:t=[]}=e,{value:a=[]}=this.props;isEqual$1(intersection(t,a),a)||isEqual$1(a,this._records.map((e=>e[this.alias.valueKey])))||this.getItemList();const{echo_data:r}=this.context,{fieldName:l}=this.props.option;if(!isEqual$1(r[l],this._ceho_data)&&(this._ceho_data=r[l],this.setItemList(r[l]),a.length)){const e=TEXT_VALUE.map(((e,t)=>{var n,i;return null!==(i=null===(n=r[l].find((e=>e.value===a[t])))||void 0===n?void 0:n.text)&&void 0!==i?i:""}));this.setTextValue(e)}}getItemList(){var e;return __awaiter(this,void 0,void 0,(function*(){if(yield this.props.waiting(),!this.searchHelper)return;const{textKey:t,valueKey:a}=this.alias,{fetchApi:r,params:l={},formatter:n=(e=>e),dataKey:i,fieldAliasMap:o}=this.searchHelper.echoRequest||{},s="function"==typeof o?o():o||{},{value:c}=this.props;if(r&&!isEmpty(c)){this.setState({loading:!0});try{const o=yield r(n(Object.assign(Object.assign({},l),{keys:c})));if(200===o.code){let r=Array.isArray(o.data)?o.data:null!==(e=get(o.data,i))&&void 0!==e?e:[];r.forEach((e=>{(null==s?void 0:s.valueKey)&&s.valueKey!==a&&(e[a]=e[s.valueKey]),(null==s?void 0:s.textKey)&&s.textKey!==t&&(e[t]=e[s.textKey])})),r=r.filter((e=>c.includes(e[a]))).slice(0,2);const l=r.map((e=>({value:e[a],text:e[t]})));this.setRecords(r),this.setItemList(l),this.setTextValue(l.map((e=>{var t;return null!==(t=e.text)&&void 0!==t?t:""}))),this.setViewValue()}}catch(e){}this.setState({loading:!1})}}))}createViewText(){const{textKey:e}=this.alias;return this._records.map((t=>t[e])).join(" - ")}render(){var e;const{$$form:a}=this.context;this.props;const{visible:r,loading:l,textValue:n}=this.state,{options:i={},searchHelper:o={},placeholder:s=t("qm.form.rangeInputNumberPlaceholder"),bordered:c=!0,readOnly:d,disabled:u}=this.props.option,{onlySelect:p=!0}=this.searchHelper||o,f={visible:r,title:t("qm.searchHelper.text"),width:null!==(e=o.width)&&void 0!==e?e:"65%",loading:!1,bodyStyle:{paddingBottom:`${SizeHeight[a.$size]+20}px`},onClose:()=>{this.closeButNotSelect()}},m=Object.assign(Object.assign({},this.getLastedSearchHelper()),{size:a.$size,initialValue:merge({},o.initialValue),onClose:e=>{e?this.closeSearchHelper(e):this.closeButNotSelect()}});return a.isOnlyShow?React__default.createElement(FormItemView,{value:n.join(" - "),bordered:c}):React__default.createElement(React__default.Fragment,null,React__default.createElement(Input.Group,null,React__default.createElement(Input,{value:n[0],className:"site-input-left",style:{width:"calc(50% - 5px)"},placeholder:s[0],allowClear:!1,bordered:c,readOnly:d,disabled:u,onBlur:e=>{var t,a;const{value:l}=e.target;this._is_change&&!r&&(l?n.every((e=>!!e))&&(null===(a=null===(t=this.searchHelper.table)||void 0===t?void 0:t.fetch)||void 0===a?void 0:a.api)&&this.getSearchHelperTableData(n).then((e=>this.resetSearchHelperValue(e))).catch((()=>this.clearSearchHelperValue())):n.every((e=>!e))&&this.clearSearchHelperValue())},onDoubleClick:()=>{this.openSearchHelper()},onChange:e=>{const{value:t}=e.target;p||(this._is_change=!0,this.setTextValue([t,n[1]]))}}),React__default.createElement(Input,{className:"site-input-split",style:{width:10,paddingLeft:0,paddingRight:0,borderLeft:0,borderRight:0,textAlign:"center",pointerEvents:"none"},placeholder:"~",bordered:c,disabled:u,readOnly:!0}),React__default.createElement(Input.Search,{value:n[1],className:"site-input-right",style:{width:"calc(50% - 5px)"},placeholder:s[1],loading:l,bordered:c,allowClear:!0,readOnly:d,disabled:u,onBlur:e=>{var t,a;const{value:l}=e.target;this._is_change&&!r&&(l?n.every((e=>!!e))&&(null===(a=null===(t=this.searchHelper.table)||void 0===t?void 0:t.fetch)||void 0===a?void 0:a.api)&&this.getSearchHelperTableData(n).then((e=>this.resetSearchHelperValue(e))).catch((()=>this.clearSearchHelperValue())):n.every((e=>!e))&&this.clearSearchHelperValue())},onDoubleClick:()=>{this.openSearchHelper()},onChange:e=>{const{value:t}=e.target;this._is_clear?this._is_clear=!1:p||(this._is_change=!0,this.setTextValue([n[0],t]))},onSearch:(e,t)=>{"click"===(null==t?void 0:t.type)&&("INPUT"!==t.target.tagName?this.openSearchHelper():(this._is_clear=!0,this.clearSearchHelperValue()))}})),React__default.createElement(QmModal,f,React__default.createElement(RangeTableHelper,m)))}}RangeHelper.contextType=FormContext;class FormRangeSearchHelper extends Component{constructor(e,t){let{$$form:a}=t;super(e),this.state={searchHelper:{}},this.waiting=()=>__awaiter(this,void 0,void 0,(function*(){try{yield this.promiseRef}catch(e){throwError("Form","搜索帮助获取定义信息的接口出错")}})),this.getHelperConfig=e=>{var t,a;const{global:r}=e,{name:l,fieldsDefine:n}=this.props.option.searchHelper||{};if(!l)return;if(!(null===(t=null==r?void 0:r.searchHelper)||void 0===t?void 0:t.getServerConfig)||!(null===(a=null==r?void 0:r.searchHelper)||void 0===a?void 0:a.createFetchApi))return warn("searchHelper","从服务端获取定义信息的时候,ConfigProvider 组件 `getServerConfig` 和 `createFetchApi` 为必选参数");const{fieldName:i}=this.props.option;this.promiseRef=new Promise(((e,t)=>__awaiter(this,void 0,void 0,(function*(){try{const a=yield r.searchHelper.getServerConfig({searchHelperId:l});if(200===a.code){const t=createShConfig(Object.assign({},a.data,n),i,r.searchHelper.createFetchApi,!0);this.setState({searchHelper:t},(()=>e()))}else t()}catch(e){t()}}))))},this.getHelperConfig(a.context)}render(){const{$$form:e}=this.context,{searchHelper:t}=this.state,{type:a,label:r,tooltip:l,fieldName:n,invisible:i,labelWidth:o=e.props.labelWidth,className:s,extra:c,buttonAfter:d,validateTrigger:u,rules:p=[],onChange:f=noop$1}=this.props.option;return React__default.createElement(Form.Item,{label:e.renderFormLabel(r),className:classNames(n,s),tooltip:l,hidden:i,labelCol:{flex:e.verticalLayout?"initial":getParserWidth(o)},required:e.getFormItemRequired(p)},React__default.createElement(Row,{wrap:!1,gutter:4},React__default.createElement(Col,{flex:"auto"},React__default.createElement(Form.Item,{name:n,noStyle:!0,rules:p,validateTrigger:u,messageVariables:{label:e.getFormItemLabel(r)}},React__default.createElement(RangeHelper,{option:this.props.option,helperConfig:t,waiting:this.waiting,onValuesChange:(t,a,r)=>{f(t,r),e.setViewValue(n,a)}}))),d&&React__default.createElement(Col,null,e.renderFormItemButton(n,d)),c&&React__default.createElement(Col,{flex:getParserWidth(c.labelWidth||DEFAULT_LABEL_WIDTH)},e.renderFormItemExtra(Object.assign({fieldName:n},c)))))}}FormRangeSearchHelper.contextType=FormContext;const VCheckbox=e=>{const{$$form:a}=React__default.useContext(FormContext),{value:r,onChange:l,onValuesChange:n}=e,{options:i={},style:o={},disabled:s}=e.option,{falseValue:c=DEFAULT_FALSE_VALUE$1,trueValue:d=DEFAULT_TRUE_VALUE$1}=i,u=e=>t(e===d?"am.form.trueText":"am.form.falseText");return React__default.createElement(Checkbox,{checked:r===d,style:o,disabled:s||a.isOnlyShow,onChange:e=>{const{checked:t}=e.target;(e=>{null==l||l(e),n(e,u(e))})(t?d:c)}})};class FormCheckbox extends Component{render(){const{$$form:e}=this.context,{type:t,label:a,tooltip:r,fieldName:l,invisible:n,options:i={},labelWidth:o=e.props.labelWidth,className:s,extra:c,validateTrigger:d,rules:u=[],onChange:p=noop$1}=this.props.option;return React__default.createElement(Form.Item,{label:e.renderFormLabel(a),className:classNames(l,s),tooltip:r,hidden:n,labelCol:{flex:e.verticalLayout?"initial":getParserWidth(o)},required:e.getFormItemRequired(u)},React__default.createElement(Row,{wrap:!1,gutter:4},React__default.createElement(Col,{flex:"auto"},React__default.createElement(Form.Item,{name:l,noStyle:!0,rules:u,validateTrigger:d,messageVariables:{label:e.getFormItemLabel(a)}},React__default.createElement(VCheckbox,{option:this.props.option,onValuesChange:(t,a)=>{p(t),e.setViewValue(l,a)}}))),c&&React__default.createElement(Col,{flex:getParserWidth(c.labelWidth||DEFAULT_LABEL_WIDTH)},e.renderFormItemExtra(Object.assign({fieldName:l},c)))))}}FormCheckbox.contextType=FormContext;const VGroupCheckbox=e=>{const{$$form:t}=React__default.useContext(FormContext),{value:a,items:r,onChange:l,onValuesChange:n}=e,{options:i={},style:o={},bordered:s=!1,readOnly:c,disabled:d}=e.option,{itemList:u=[]}=i,p=isEmpty(u)?r:u,f=e=>p.filter((t=>e.includes(t.value))).map((e=>e.text)).join(",");return t.isOnlyShow?React__default.createElement(FormItemView,{value:f(a),bordered:s}):React__default.createElement(Checkbox.Group,{value:a,style:Object.assign({width:"100%"},o),disabled:d,onChange:e=>{(e=>{null==l||l(e),n(e,f(e))})(e)}},p.map((e=>React__default.createElement(Checkbox,{key:e.value,value:e.value,disabled:e.disabled},e.text))))};class FormCheckboxGroup extends Component{constructor(){super(...arguments),this.state={itemList:[]}}componentDidMount(){this.getItemList()}componentWillUnmount(){this.setState=()=>!1}componentDidUpdate(e){var t,a;const r=null===(t=e.option.request)||void 0===t?void 0:t.params,l=null===(a=this.props.option.request)||void 0===a?void 0:a.params;isEqual$1(r,l)||this.getItemList()}getItemList(){var e;return __awaiter(this,void 0,void 0,(function*(){const{request:t={}}=this.props.option,{fetchApi:a,params:r={},dataKey:l,valueKey:n="value",textKey:i="text",callback:o}=t;if(a)try{const t=yield a(r);if(200===t.code){const a=Array.isArray(t.data)?t.data:null!==(e=get(t.data,l))&&void 0!==e?e:[],r=a.map((e=>({value:e[n],text:e[i]})));this.setState({itemList:r},(()=>null==o?void 0:o(a)))}}catch(e){}}))}render(){const{$$form:e}=this.context,{itemList:t}=this.state,{type:a,label:r,tooltip:l,fieldName:n,invisible:i,options:o={},labelWidth:s=e.props.labelWidth,className:c,extra:d,validateTrigger:u,rules:p=[],onChange:f=noop$1}=this.props.option;return React__default.createElement(Form.Item,{label:e.renderFormLabel(r),className:classNames(n,c),tooltip:l,hidden:i,labelCol:{flex:e.verticalLayout?"initial":getParserWidth(s)},required:e.getFormItemRequired(p)},React__default.createElement(Row,{wrap:!1,gutter:4},React__default.createElement(Col,{flex:"auto"},React__default.createElement(Form.Item,{name:n,noStyle:!0,rules:p,validateTrigger:u,messageVariables:{label:e.getFormItemLabel(r)}},React__default.createElement(VGroupCheckbox,{option:this.props.option,items:t,onValuesChange:(t,a)=>{f(t),e.setViewValue(n,a)}}))),d&&React__default.createElement(Col,{flex:getParserWidth(d.labelWidth||DEFAULT_LABEL_WIDTH)},e.renderFormItemExtra(Object.assign({fieldName:n},d)))))}}FormCheckboxGroup.contextType=FormContext;const VRate=e=>{const{$$form:t}=React__default.useContext(FormContext),{value:a,onChange:r,onValuesChange:l}=e,{options:n={},style:i={},allowClear:o=!0,readOnly:s,disabled:c}=e.option,{allowHalf:d,count:u=5,tooltips:p}=n,f=e=>p?p[Math.ceil(e)-1]:e.toString();return React__default.createElement(Rate,{value:a,count:u,style:i,allowHalf:d,allowClear:o,tooltips:p,disabled:c||t.isOnlyShow,onChange:e=>{(e=>{null==r||r(e),l(e,f(e))})(e)}})};class FormRate extends Component{render(){const{$$form:e}=this.context,{type:t,label:a,tooltip:r,fieldName:l,invisible:n,options:i={},labelWidth:o=e.props.labelWidth,className:s,extra:c,validateTrigger:d,rules:u=[],onChange:p=noop$1}=this.props.option;return React__default.createElement(Form.Item,{label:e.renderFormLabel(a),className:classNames(l,s),tooltip:r,hidden:n,labelCol:{flex:e.verticalLayout?"initial":getParserWidth(o)},required:e.getFormItemRequired(u)},React__default.createElement(Row,{wrap:!1,gutter:4},React__default.createElement(Col,{flex:"auto"},React__default.createElement(Form.Item,{name:l,noStyle:!0,rules:u,validateTrigger:d,messageVariables:{label:e.getFormItemLabel(a)}},React__default.createElement(VRate,{option:this.props.option,onValuesChange:(t,a)=>{p(t),e.setViewValue(l,a)}}))),c&&React__default.createElement(Col,{flex:getParserWidth(c.labelWidth||DEFAULT_LABEL_WIDTH)},e.renderFormItemExtra(Object.assign({fieldName:l},c)))))}}FormRate.contextType=FormContext;const VRadio=e=>{const{$$form:t}=React__default.useContext(FormContext),{value:a,items:r,onChange:l,onValuesChange:n}=e,{options:i={},style:o={},bordered:s=!1,readOnly:c,disabled:d}=e.option,{itemList:u=[]}=i,p=isEmpty(u)?r:u,f=e=>{var t,a;return null!==(a=null===(t=p.find((t=>t.value===e)))||void 0===t?void 0:t.text)&&void 0!==a?a:""};return t.isOnlyShow?React__default.createElement(FormItemView,{value:f(a),bordered:s}):React__default.createElement(Radio.Group,{value:a,style:Object.assign({width:"100%"},o),disabled:d||t.isOnlyShow,onChange:e=>{const{value:t}=e.target;(e=>{null==l||l(e),n(e,f(e))})(t)}},p.map((e=>React__default.createElement(Radio,{key:e.value,value:e.value,disabled:e.disabled},e.text))))};class FormRadio extends Component{constructor(){super(...arguments),this.state={itemList:[]},this.getItemList=()=>__awaiter(this,void 0,void 0,(function*(){var e;const{request:t={}}=this.props.option,{fetchApi:a,params:r={},dataKey:l,valueKey:n="value",textKey:i="text",callback:o}=t;if(a)try{const t=yield a(r);if(200===t.code){const a=Array.isArray(t.data)?t.data:null!==(e=get(t.data,l))&&void 0!==e?e:[],r=a.map((e=>({value:e[n],text:e[i]})));this.setState({itemList:r},(()=>null==o?void 0:o(a)))}}catch(e){}}))}componentDidMount(){this.getItemList()}componentWillUnmount(){this.setState=()=>!1}componentDidUpdate(e){var t,a;const r=null===(t=e.option.request)||void 0===t?void 0:t.params,l=null===(a=this.props.option.request)||void 0===a?void 0:a.params;isEqual$1(r,l)||this.getItemList()}render(){const{$$form:e}=this.context,{itemList:t}=this.state,{type:a,label:r,tooltip:l,fieldName:n,invisible:i,options:o={},labelWidth:s=e.props.labelWidth,className:c,extra:d,validateTrigger:u,rules:p=[],onChange:f=noop$1}=this.props.option;return React__default.createElement(Form.Item,{label:e.renderFormLabel(r),className:classNames(n,c),tooltip:l,hidden:i,labelCol:{flex:e.verticalLayout?"initial":getParserWidth(s)},required:e.getFormItemRequired(p)},React__default.createElement(Row,{wrap:!1,gutter:4},React__default.createElement(Col,{flex:"auto"},React__default.createElement(Form.Item,{name:n,noStyle:!0,rules:p,validateTrigger:u,messageVariables:{label:e.getFormItemLabel(r)}},React__default.createElement(VRadio,{option:this.props.option,items:t,onValuesChange:(t,a)=>{f(t),e.setViewValue(n,a)}}))),d&&React__default.createElement(Col,{flex:getParserWidth(d.labelWidth||DEFAULT_LABEL_WIDTH)},e.renderFormItemExtra(Object.assign({fieldName:n},d)))))}}FormRadio.contextType=FormContext;const VSwitch=e=>{const{$$form:a}=React__default.useContext(FormContext),{value:r,onChange:l,onValuesChange:n}=e,{options:i={},style:o={},disabled:s}=e.option,{falseValue:c=DEFAULT_FALSE_VALUE$1,trueValue:d=DEFAULT_TRUE_VALUE$1}=i;return React__default.createElement(Switch,{checked:r===d,style:o,disabled:s||a.isOnlyShow,checkedChildren:React__default.createElement(CheckOutlined,null),unCheckedChildren:React__default.createElement(CloseOutlined,null),onChange:e=>{(e=>{null==l||l(e),n(e,t(e===d?"am.form.trueText":"am.form.falseText"))})(e?d:c)}})};class FormSwitch extends Component{render(){const{$$form:e}=this.context,{type:t,label:a,tooltip:r,fieldName:l,invisible:n,options:i={},labelWidth:o=e.props.labelWidth,className:s,extra:c,validateTrigger:d,rules:u=[],onChange:p=noop$1}=this.props.option;return React__default.createElement(Form.Item,{label:e.renderFormLabel(a),className:classNames(l,s),tooltip:r,hidden:n,labelCol:{flex:e.verticalLayout?"initial":getParserWidth(o)},required:e.getFormItemRequired(u)},React__default.createElement(Row,{wrap:!1,gutter:4},React__default.createElement(Col,{flex:"auto"},React__default.createElement(Form.Item,{name:l,noStyle:!0,rules:u,validateTrigger:d,messageVariables:{label:e.getFormItemLabel(a)}},React__default.createElement(VSwitch,{option:this.props.option,onValuesChange:(t,a)=>{p(t),e.setViewValue(l,a)}}))),c&&React__default.createElement(Col,{flex:getParserWidth(c.labelWidth||DEFAULT_LABEL_WIDTH)},e.renderFormItemExtra(Object.assign({fieldName:l},c)))))}}FormSwitch.contextType=FormContext;const VTextArea=e=>{const{$$form:a}=React__default.useContext(FormContext),{value:r,onChange:l,onValuesChange:n}=e,{options:i={},style:o={},placeholder:s=t("qm.form.inputPlaceholder"),bordered:c=!0,allowClear:d,readOnly:u,disabled:p,onBlur:f=noop$1,onEnter:m=noop$1}=e.option,{showCount:h,maxLength:g,autoSize:_}=i,y=Object.assign({},{minRows:1,maxRows:3},_);return React__default.createElement(Input.TextArea,{value:r,placeholder:s,style:o,maxLength:g,showCount:h,autoSize:y,bordered:c,allowClear:d,readOnly:u||a.isOnlyShow,disabled:p,onBlur:t=>{const{value:a}=t.target;(t=>{const{onBlur:a}=e;null==a||a(t)})(a),f(a)},onKeyUp:e=>{if(13===e.keyCode){const{value:t}=e.target;m(t)}},onChange:e=>{const{value:t}=e.target;(e=>{null==l||l(e),n(e)})(t)}})};class FormTextArea extends Component{render(){const{$$form:e}=this.context,{type:t,label:a,tooltip:r,fieldName:l,invisible:n,options:i={},labelWidth:o=e.props.labelWidth,className:s,extra:c,validateTrigger:d,rules:u=[],onChange:p=noop$1}=this.props.option;return React__default.createElement(Form.Item,{label:e.renderFormLabel(a),className:classNames(l,s),tooltip:r,hidden:n,labelCol:{flex:e.verticalLayout?"initial":getParserWidth(o)},required:e.getFormItemRequired(u)},React__default.createElement(Row,{wrap:!1,gutter:4},React__default.createElement(Col,{flex:"auto"},React__default.createElement(Form.Item,{name:l,noStyle:!0,rules:u,validateTrigger:d,messageVariables:{label:e.getFormItemLabel(a)}},React__default.createElement(VTextArea,{option:this.props.option,onValuesChange:t=>{p(t),e.setViewValue(l,t)}}))),c&&React__default.createElement(Col,{flex:getParserWidth(c.labelWidth||DEFAULT_LABEL_WIDTH)},e.renderFormItemExtra(Object.assign({fieldName:l},c)))))}}FormTextArea.contextType=FormContext;const disabledDate$1=(e,t)=>{let[a,r]=t;return a&&r?e.isBefore(a,"day")||e.isAfter(r,"day"):a?e.isBefore(a,"day"):!!r&&e.isAfter(r,"day")},VDatePicker=e=>{const{$$form:a}=React__default.useContext(FormContext),{value:r,onChange:l,onValuesChange:n}=e,{options:i={},style:o={},placeholder:s=t("qm.form.datePlaceholder"),bordered:c=!0,allowClear:d=!0,readOnly:u,disabled:p}=e.option,{dateType:f="date",minDateTime:m,maxDateTime:h,shortCuts:g=!0}=i,_=React__default.createRef(),y=e=>{e&&"date"===f&&(e+=" 00:00:00"),null==l||l(e),n(e,v(e))},v=e=>isEmptyValue(e)?"":["date","exactdate"].includes(f)?e.slice(0,10):e,b=e=>{let t=formatDate$1(dayjs().subtract(e,"day"),EDateFormat[f]);"date"===f&&(t=t.slice(0,10)),y(t),_.current.blur(),_.current.focus()};return a.isOnlyShow?React__default.createElement(FormItemView,{value:v(r),bordered:c}):React__default.createElement(DatePicker,{ref:_,style:Object.assign({width:"100%"},o),picker:EDateType[f],bordered:c,showToday:!1,showTime:"datetime"===f,allowClear:d,disabled:p,inputReadOnly:u,disabledDate:e=>disabledDate$1(e,[m,h]),renderExtraFooter:g?()=>React__default.createElement(React__default.Fragment,null,React__default.createElement(Tag,{color:"processing",onClick:()=>b(0)},t("qm.form.datePickers")[0]),React__default.createElement(Tag,{color:"processing",onClick:()=>b(1)},t("qm.form.datePickers")[1]),React__default.createElement(Tag,{color:"processing",onClick:()=>b(7)},t("qm.form.datePickers")[2]),React__default.createElement(Tag,{color:"processing",onClick:()=>b(30)},t("qm.form.datePickers")[3])):void 0,value:getDate$1(r,EDateFormat[f]),onChange:(e,t)=>{y(t)}})};class FormDate extends Component{render(){const{$$form:e}=this.context,{type:t,label:a,tooltip:r,fieldName:l,invisible:n,options:i={},labelWidth:o=e.props.labelWidth,className:s,extra:c,validateTrigger:d,rules:u=[],onChange:p=noop$1}=this.props.option;return React__default.createElement(Form.Item,{label:e.renderFormLabel(a),className:classNames(l,s),tooltip:r,hidden:n,labelCol:{flex:e.verticalLayout?"initial":getParserWidth(o)},required:e.getFormItemRequired(u)},React__default.createElement(Row,{wrap:!1,gutter:4},React__default.createElement(Col,{flex:"auto"},React__default.createElement(Form.Item,{name:l,noStyle:!0,rules:u,validateTrigger:d,messageVariables:{label:e.getFormItemLabel(a)}},React__default.createElement(VDatePicker,{option:this.props.option,onValuesChange:(t,a)=>{p(t),e.setViewValue(l,a)}}))),c&&React__default.createElement(Col,{flex:getParserWidth(c.labelWidth||DEFAULT_LABEL_WIDTH)},e.renderFormItemExtra(Object.assign({fieldName:l},c)))))}}FormDate.contextType=FormContext;const disabledDate=(e,t)=>{let[a,r]=t;return a&&r?e.isBefore(a,"day")||e.isAfter(r,"day"):a?e.isBefore(a,"day"):!!r&&e.isAfter(r,"day")},createRange=e=>[dayjs().subtract(e,"day"),dayjs()],ranges={[t("qm.form.dateRangePickers")[0]]:createRange(7),[t("qm.form.dateRangePickers")[1]]:createRange(30),[t("qm.form.dateRangePickers")[2]]:createRange(90),[t("qm.form.dateRangePickers")[3]]:createRange(180)},VRangePicker$1=e=>{const{$$form:a}=React__default.useContext(FormContext),{value:r,onChange:l,onValuesChange:n}=e,{options:i={},style:o={},placeholder:s=t("qm.form.daterangePlaceholder"),bordered:c=!0,allowClear:d=!0,readOnly:u,disabled:p}=e.option,{dateType:f="date",disableds:m=[!1,!1],minDateTime:h,maxDateTime:g,shortCuts:_=!0}=i,y=e=>isEmptyValue(e)?"":e.map((e=>["date","exactdate"].includes(f)?null==e?void 0:e.slice(0,10):e)).join(" - ");return a.isOnlyShow?React__default.createElement(FormItemView,{value:y(r),bordered:c}):React__default.createElement(DatePicker.RangePicker,{style:Object.assign({width:"100%"},o),picker:EDateType[f],bordered:c,showTime:"datetime"===f,allowClear:d,disabled:p?[!0,!0]:m,inputReadOnly:u,disabledDate:e=>disabledDate(e,[h,g]),ranges:_?ranges:void 0,value:isEmpty(r)?null:[getDate$1(null==r?void 0:r[0],EDateFormat[f]),getDate$1(null==r?void 0:r[1],EDateFormat[f])],onChange:(e,t)=>{(e=>{"date"===f&&(e=e.map(((e,t)=>e?0===t?e+" 00:00:00":e+" 23:59:59":e))),e.every((e=>!e))&&(e=[]),null==l||l(e),n(e,y(e))})(t)}})};class FormRangeDate extends Component{render(){const{$$form:e}=this.context,{type:t,label:a,tooltip:r,fieldName:l,invisible:n,options:i={},labelWidth:o=e.props.labelWidth,className:s,extra:c,validateTrigger:d,rules:u=[],onChange:p=noop$1}=this.props.option;return React__default.createElement(Form.Item,{label:e.renderFormLabel(a),className:classNames(l,s),tooltip:r,hidden:n,labelCol:{flex:e.verticalLayout?"initial":getParserWidth(o)},required:e.getFormItemRequired(u)},React__default.createElement(Row,{wrap:!1,gutter:4},React__default.createElement(Col,{flex:"auto"},React__default.createElement(Form.Item,{name:l,noStyle:!0,rules:u,validateTrigger:d,messageVariables:{label:e.getFormItemLabel(a)}},React__default.createElement(VRangePicker$1,{option:this.props.option,onValuesChange:(t,a)=>{p(t),e.setViewValue(l,a)}}))),c&&React__default.createElement(Col,{flex:getParserWidth(c.labelWidth||DEFAULT_LABEL_WIDTH)},e.renderFormItemExtra(Object.assign({fieldName:l},c)))))}}FormRangeDate.contextType=FormContext;const VTimePicker=e=>{const{$$form:a}=React__default.useContext(FormContext),{value:r,onChange:l,onValuesChange:n}=e,{options:i={},style:o={},placeholder:s=t("qm.form.timePlaceholder"),bordered:c=!0,allowClear:d=!0,readOnly:u,disabled:p}=e.option,{timeType:f="hour-minute-second",hourStep:m=1,minuteStep:h=1,secondStep:g=1}=i;return a.isOnlyShow?React__default.createElement(FormItemView,{value:r,bordered:c}):React__default.createElement(TimePicker,{style:Object.assign({width:"100%"},o),bordered:c,showNow:!0,hourStep:m,minuteStep:h,secondStep:g,allowClear:d,disabled:p,inputReadOnly:u,format:ETimeFormat[f],value:getDate$1(r,ETimeFormat[f]),onChange:(e,t)=>{(e=>{const t=formatDate$1(e,ETimeFormat[f]);null==l||l(t),n(t)})(e)}})};class FormTime extends Component{render(){const{$$form:e}=this.context,{type:t,label:a,tooltip:r,fieldName:l,invisible:n,options:i={},labelWidth:o=e.props.labelWidth,className:s,extra:c,validateTrigger:d,rules:u=[],onChange:p=noop$1}=this.props.option;return React__default.createElement(Form.Item,{label:e.renderFormLabel(a),className:classNames(l,s),tooltip:r,hidden:n,labelCol:{flex:e.verticalLayout?"initial":getParserWidth(o)},required:e.getFormItemRequired(u)},React__default.createElement(Row,{wrap:!1,gutter:4},React__default.createElement(Col,{flex:"auto"},React__default.createElement(Form.Item,{name:l,noStyle:!0,rules:u,validateTrigger:d,messageVariables:{label:e.getFormItemLabel(a)}},React__default.createElement(VTimePicker,{option:this.props.option,onValuesChange:t=>{p(t),e.setViewValue(l,t)}}))),c&&React__default.createElement(Col,{flex:getParserWidth(c.labelWidth||DEFAULT_LABEL_WIDTH)},e.renderFormItemExtra(Object.assign({fieldName:l},c)))))}}FormTime.contextType=FormContext;const VRangePicker=e=>{const{$$form:a}=React__default.useContext(FormContext),{value:r,onChange:l,onValuesChange:n}=e,{options:i={},style:o={},placeholder:s=t("qm.form.timerangePlaceholder"),bordered:c=!0,allowClear:d=!0,readOnly:u,disabled:p}=e.option,{timeType:f="hour-minute-second",disableds:m=[!1,!1],hourStep:h=1,minuteStep:g=1,secondStep:_=1}=i,y=e=>isEmptyValue(e)?"":e.join(" - ");return a.isOnlyShow?React__default.createElement(FormItemView,{value:y(r),bordered:c}):React__default.createElement(TimePicker.RangePicker,{style:Object.assign({width:"100%"},o),bordered:c,showNow:!1,hourStep:h,minuteStep:g,secondStep:_,allowClear:d,disabled:p?[!0,!0]:m,inputReadOnly:u,format:ETimeFormat[f],value:isEmpty(r)?null:[getDate$1(null==r?void 0:r[0],ETimeFormat[f]),getDate$1(null==r?void 0:r[1],ETimeFormat[f])],onChange:(e,t)=>{(e=>{const t=[formatDate$1(null==e?void 0:e[0],ETimeFormat[f]),formatDate$1(null==e?void 0:e[1],ETimeFormat[f])];null==l||l(t),n(t,y(t))})(e)}})};class FormRangeTime extends Component{render(){const{$$form:e}=this.context,{type:t,label:a,tooltip:r,fieldName:l,invisible:n,options:i={},labelWidth:o=e.props.labelWidth,className:s,extra:c,validateTrigger:d,rules:u=[],onChange:p=noop$1}=this.props.option;return React__default.createElement(Form.Item,{label:e.renderFormLabel(a),className:classNames(l,s),tooltip:r,hidden:n,labelCol:{flex:e.verticalLayout?"initial":getParserWidth(o)},required:e.getFormItemRequired(u)},React__default.createElement(Row,{wrap:!1,gutter:4},React__default.createElement(Col,{flex:"auto"},React__default.createElement(Form.Item,{name:l,noStyle:!0,rules:u,validateTrigger:d,messageVariables:{label:e.getFormItemLabel(a)}},React__default.createElement(VRangePicker,{option:this.props.option,onValuesChange:(t,a)=>{p(t),e.setViewValue(l,a)}}))),c&&React__default.createElement(Col,{flex:getParserWidth(c.labelWidth||DEFAULT_LABEL_WIDTH)},e.renderFormItemExtra(Object.assign({fieldName:l},c)))))}}FormRangeTime.contextType=FormContext;const UNIHANS=["阿","哎","安","肮","凹","八","挀","扳","邦","勹","陂","奔","伻","屄","边","灬","憋","汃","冫","癶","峬","嚓","偲","参","仓","撡","冊","嵾","曽","叉","芆","辿","伥","抄","车","抻","阷","吃","充","抽","出","欻","揣","巛","刅","吹","旾","逴","呲","匆","凑","粗","汆","崔","邨","搓","咑","呆","丹","当","刀","嘚","扥","灯","氐","甸","刁","爹","丁","丟","东","吺","厾","耑","垖","吨","多","妸","诶","奀","鞥","儿","发","帆","匚","飞","分","丰","覅","仏","紑","夫","旮","侅","甘","冈","皋","戈","给","根","刯","工","勾","估","瓜","乖","关","光","归","丨","呙","哈","咍","佄","夯","茠","诃","黒","拫","亨","噷","叿","齁","乎","花","怀","欢","巟","灰","昏","吙","丌","加","戋","江","艽","阶","巾","坕","冂","丩","凥","姢","噘","军","咔","开","刊","忼","尻","匼","肎","劥","空","抠","扝","夸","蒯","宽","匡","亏","坤","扩","垃","来","兰","啷","捞","肋","勒","崚","哩","俩","奁","良","撩","毟","拎","伶","溜","囖","龙","瞜","噜","驴","娈","掠","抡","罗","呣","妈","埋","嫚","牤","猫","么","呅","门","甿","咪","宀","喵","乜","民","名","谬","摸","哞","毪","嗯","拏","腉","囡","囔","孬","疒","娞","恁","能","妮","拈","娘","鸟","捏","囜","宁","妞","农","羺","奴","女","奻","疟","黁","挪","喔","讴","妑","拍","眅","乓","抛","呸","喷","匉","丕","囨","剽","氕","姘","乒","钋","剖","仆","七","掐","千","呛","悄","癿","亲","靑","卭","丘","区","峑","缺","夋","呥","穣","娆","惹","人","扔","日","茸","厹","邚","挼","堧","婑","瞤","捼","仨","毢","三","桒","掻","閪","森","僧","杀","筛","山","伤","弰","奢","申","升","尸","収","书","刷","衰","闩","双","脽","吮","说","厶","忪","捜","苏","狻","夊","孙","唆","他","囼","坍","汤","夲","忑","熥","剔","天","旫","帖","厅","囲","偷","凸","湍","推","吞","乇","穵","歪","弯","尣","危","昷","翁","挝","乌","夕","虲","仙","乡","灱","些","心","星","凶","休","吁","吅","削","坃","丫","恹","央","幺","倻","一","囙","应","哟","佣","优","扜","囦","曰","晕","帀","災","兂","匨","傮","则","贼","怎","増","扎","捚","沾","张","佋","蜇","贞","争","之","中","州","朱","抓","拽","专","妆","隹","宒","卓","乲","宗","邹","租","钻","厜","尊","昨","兙"],PINYINS=["A","AI","AN","ANG","AO","BA","BAI","BAN","BANG","BAO","BEI","BEN","BENG","BI","BIAN","BIAO","BIE","BIN","BING","BO","BU","CA","CAI","CAN","CANG","CAO","CE","CEN","CENG","CHA","CHAI","CHAN","CHANG","CHAO","CHE","CHEN","CHENG","CHI","CHONG","CHOU","CHU","CHUA","CHUAI","CHUAN","CHUANG","CHUI","CHUN","CHUO","CI","CONG","COU","CU","CUAN","CUI","CUN","CUO","DA","DAI","DAN","DANG","DAO","DE","DEN","DENG","DI","DIAN","DIAO","DIE","DING","DIU","DONG","DOU","DU","DUAN","DUI","DUN","DUO","E","EI","EN","ENG","ER","FA","FAN","FANG","FEI","FEN","FENG","FIAO","FO","FOU","FU","GA","GAI","GAN","GANG","GAO","GE","GEI","GEN","GENG","GONG","GOU","GU","GUA","GUAI","GUAN","GUANG","GUI","GUN","GUO","HA","HAI","HAN","HANG","HAO","HE","HEI","HEN","HENG","HM","HONG","HOU","HU","HUA","HUAI","HUAN","HUANG","HUI","HUN","HUO","JI","JIA","JIAN","JIANG","JIAO","JIE","JIN","JING","JIONG","JIU","JU","JUAN","JUE","JUN","KA","KAI","KAN","KANG","KAO","KE","KEN","KENG","KONG","KOU","KU","KUA","KUAI","KUAN","KUANG","KUI","KUN","KUO","LA","LAI","LAN","LANG","LAO","LE","LEI","LENG","LI","LIA","LIAN","LIANG","LIAO","LIE","LIN","LING","LIU","LO","LONG","LOU","LU","LV","LUAN","LVE","LUN","LUO","M","MA","MAI","MAN","MANG","MAO","ME","MEI","MEN","MENG","MI","MIAN","MIAO","MIE","MIN","MING","MIU","MO","MOU","MU","N","NA","NAI","NAN","NANG","NAO","NE","NEI","NEN","NENG","NI","NIAN","NIANG","NIAO","NIE","NIN","NING","NIU","NONG","NOU","NU","NV","NUAN","NVE","NUN","NUO","O","OU","PA","PAI","PAN","PANG","PAO","PEI","PEN","PENG","PI","PIAN","PIAO","PIE","PIN","PING","PO","POU","PU","QI","QIA","QIAN","QIANG","QIAO","QIE","QIN","QING","QIONG","QIU","QU","QUAN","QUE","QUN","RAN","RANG","RAO","RE","REN","RENG","RI","RONG","ROU","RU","RUA","RUAN","RUI","RUN","RUO","SA","SAI","SAN","SANG","SAO","SE","SEN","SENG","SHA","SHAI","SHAN","SHANG","SHAO","SHE","SHEN","SHENG","SHI","SHOU","SHU","SHUA","SHUAI","SHUAN","SHUANG","SHUI","SHUN","SHUO","SI","SONG","SOU","SU","SUAN","SUI","SUN","SUO","TA","TAI","TAN","TANG","TAO","TE","TENG","TI","TIAN","TIAO","TIE","TING","TONG","TOU","TU","TUAN","TUI","TUN","TUO","WA","WAI","WAN","WANG","WEI","WEN","WENG","WO","WU","XI","XIA","XIAN","XIANG","XIAO","XIE","XIN","XING","XIONG","XIU","XU","XUAN","XUE","XUN","YA","YAN","YANG","YAO","YE","YI","YIN","YING","YO","YONG","YOU","YU","YUAN","YUE","YUN","ZA","ZAI","ZAN","ZANG","ZAO","ZE","ZEI","ZEN","ZENG","ZHA","ZHAI","ZHAN","ZHANG","ZHAO","ZHE","ZHEN","ZHENG","ZHI","ZHONG","ZHOU","ZHU","ZHUA","ZHUAI","ZHUAN","ZHUANG","ZHUI","ZHUN","ZHUO","ZI","ZONG","ZOU","ZU","ZUAN","ZUI","ZUN","ZUO",""],EXCEPTIONS={"曾":"ZENG","沈":"SHEN","嗲":"DIA","碡":"ZHOU","聒":"GUO","炔":"QUE","蚵":"KE","砉":"HUA","嬤":"MO","嬷":"MO","蹒":"PAN","蹊":"XI","丬":"PAN","霰":"XIAN","莘":"XIN","豉":"CHI","饧":"XING","筠":"JUN","长":"CHANG","帧":"ZHEN","峙":"SHI","郍":"NA","芎":"XIONG","谁":"SHUI"};var DICT={PINYINS:PINYINS,UNIHANS:UNIHANS,EXCEPTIONS:EXCEPTIONS};const FIRST_PINYIN_UNIHAN="阿",LAST_PINYIN_UNIHAN="鿿",LATIN=1,PINYIN=2,UNKNOWN=3;let supported=null,COLLATOR;function patchDict(e){e&&("function"==typeof e&&(e=[e]),e.forEach&&e.forEach((e=>{"function"==typeof e&&e(DICT)})))}function isSupported(e){return e||null===supported?("object"==typeof Intl&&Intl.Collator?(COLLATOR=new Intl.Collator(["zh-Hans-CN","zh-CN"]),supported=1===Intl.Collator.supportedLocalesOf(["zh-CN"]).length):supported=!1,supported):supported}function genToken(e){const t=DICT.UNIHANS,a=DICT.PINYINS,r=DICT.EXCEPTIONS,l={source:e};if(e in r)return l.type=PINYIN,l.target=r[e],l;let n,i=-1;if(e.charCodeAt(0)<256)return l.type=LATIN,l.target=e,l;if(n=COLLATOR.compare(e,FIRST_PINYIN_UNIHAN),n<0)return l.type=UNKNOWN,l.target=e,l;if(0===n)l.type=PINYIN,i=0;else{if(n=COLLATOR.compare(e,LAST_PINYIN_UNIHAN),n>0)return l.type=UNKNOWN,l.target=e,l;0===n&&(l.type=PINYIN,i=t.length-1)}if(l.type=PINYIN,i<0){let a=0,r=t.length-1;for(;a<=r;){i=~~((a+r)/2);const l=t[i];if(n=COLLATOR.compare(e,l),0===n)break;n>0?a=i+1:r=i-1}}return n<0&&i--,l.target=a[i],l.target||(l.type=UNKNOWN,l.target=l.source),l}function parse(e){return"string"==typeof e&&isSupported()?e.split("").map((e=>genToken(e))):e}var pinyin={isSupported:isSupported,parse:parse,patchDict:patchDict,genToken:genToken,convertToPinyin:(e,t,a)=>parse(e).map((e=>t&&e.type===PINYIN?e.target.toLowerCase():e.target)).join(a||"")};function patcher(e){e.EXCEPTIONS={"嗲":"DIA","碡":"ZHOU","聒":"GUO","炔":"QUE","蚵":"KE","砉":"HUA","嬷":"MO","蹊":"XI","丬":"PAN","霰":"XIAN","豉":"CHI","饧":"XING","帧":"ZHEN","芎":"XIONG","谁":"SHUI","钶":"KE"},e.UNIHANS[91]="伕",e.UNIHANS[347]="仚",e.UNIHANS[393]="诌",e.UNIHANS[39]="婤",e.UNIHANS[50]="腠",e.UNIHANS[369]="攸",e.UNIHANS[123]="乯",e.UNIHANS[171]="刕",e.UNIHANS[102]="佝",e.UNIHANS[126]="犿",e.UNIHANS[176]="列",e.UNIHANS[178]="刢",e.UNIHANS[252]="娝",e.UNIHANS[330]="偸"}function shouldPatch(e){return"function"==typeof e&&("FOU"===e("伕").target&&"XIA"===e("仚").target&&"ZHONG"===e("诌").target&&"CHONG"===e("婤").target&&"CONG"===e("腠").target&&"YONG"===e("攸").target&&"HOU"===e("乯").target&&"LENG"===e("刕").target&&"GONG"===e("佝").target&&"HUAI"===e("犿").target&&"LIAO"===e("列").target&&"LIN"===e("刢").target&&"E"===e("钶").target)}var patcher56L={patcher:patcher,shouldPatch:shouldPatch};pinyin.isSupported()&&patcher56L.shouldPatch(pinyin.genToken)&&pinyin.patchDict(patcher56L);const{Option:Option}=Select,VSelect=e=>{const{$$form:a}=React__default.useContext(FormContext),{value:r,items:l,multiple:n,loading:i,onChange:o,onValuesChange:s}=e,{options:c={},style:d={},placeholder:u=t("qm.form.selectPlaceholder"),bordered:p=!0,allowClear:f=!0,readOnly:m,disabled:h}=e.option,{itemList:g=[],filterable:_=!0,listHeight:y=DEFAULT_LIST_HEIGHT,collapseTags:v,maxTagTextLength:b,openPyt:R=!0}=c,E=isEmpty(g)?l:g,x=e=>{var t;return n?E.filter((t=>null==e?void 0:e.includes(t.value))).map((e=>e.text)).join(","):(null===(t=E.find((t=>t.value===e)))||void 0===t?void 0:t.text)||""};return a.isOnlyShow?React__default.createElement(FormItemView,{value:x(r),bordered:p}):React__default.createElement(Select,_extends$1({value:r,mode:n?"multiple":void 0,placeholder:u,style:d,loading:i,bordered:p,allowClear:f,disabled:h,showSearch:_,listHeight:y,maxTagCount:v?"responsive":void 0,maxTagTextLength:b},n?{title:x(r)}:null,{filterOption:(e,t)=>{var a;const r=(null===(a=null==t?void 0:t.children)||void 0===a?void 0:a.toString())||"",l=pinyin.parse(r).map((e=>2===e.type?e.target.toLowerCase().slice(0,1):e.target)).join("");return(R?`${r}|${l}`:r).toLowerCase().indexOf(e.toLowerCase())>=0},onChange:e=>{(e=>{null==o||o(e),s(e,x(e),E)})(e)}}),E.map((e=>React__default.createElement(Option,{key:e.value,value:e.value,disabled:e.disabled},e.text))))};class FormSelect extends Component{constructor(){super(...arguments),this.state={itemList:[],loading:!1},this.getItemList=()=>__awaiter(this,void 0,void 0,(function*(){var e;const{request:t={}}=this.props.option,{fetchApi:a,params:r={},dataKey:l,valueKey:n="value",textKey:i="text",callback:o}=t;if(a){this.setState({loading:!0});try{const t=yield a(r);if(200===t.code){const a=Array.isArray(t.data)?t.data:null!==(e=get(t.data,l))&&void 0!==e?e:[],r=a.map((e=>({value:e[n],text:e[i]})));this.setState({itemList:r},(()=>null==o?void 0:o(a)))}}catch(e){}this.setState({loading:!1})}}))}componentDidMount(){this.getItemList()}componentWillUnmount(){this.setState=()=>!1}componentDidUpdate(e){var t,a;const r=null===(t=e.option.request)||void 0===t?void 0:t.params,l=null===(a=this.props.option.request)||void 0===a?void 0:a.params;isEqual$1(r,l)||this.getItemList()}render(){const{$$form:e}=this.context,{itemList:t,loading:a}=this.state,{type:r,label:l,tooltip:n,fieldName:i,invisible:o,options:s={},labelWidth:c=e.props.labelWidth,className:d,extra:u,buttonAfter:p,validateTrigger:f,rules:m=[],onChange:h=noop$1}=this.props.option;return React__default.createElement(Form.Item,{label:e.renderFormLabel(l),className:classNames(i,d),tooltip:n,hidden:o,labelCol:{flex:e.verticalLayout?"initial":getParserWidth(c)},required:e.getFormItemRequired(m)},React__default.createElement(Row,{wrap:!1,gutter:4},React__default.createElement(Col,{flex:"auto"},React__default.createElement(Form.Item,{name:i,noStyle:!0,rules:m,validateTrigger:f,messageVariables:{label:e.getFormItemLabel(l)}},React__default.createElement(VSelect,{option:this.props.option,items:t,loading:a,multiple:this.props.multiple,onValuesChange:(t,a,r)=>{h(t,a,r),e.setViewValue(i,a)}}))),p&&React__default.createElement(Col,null,e.renderFormItemButton(i,p)),u&&React__default.createElement(Col,{flex:getParserWidth(u.labelWidth||DEFAULT_LABEL_WIDTH)},e.renderFormItemExtra(Object.assign({fieldName:i},u)))))}}FormSelect.contextType=FormContext;class VImmediate extends Component{constructor(e){super(e),this.prevValue="",this.searchRef=React__default.createRef(),this.state={itemList:[],visible:!1,loading:!1,activeIndex:0},this.initialHandle=()=>__awaiter(this,void 0,void 0,(function*(){yield this.props.waiting();const{helperConfig:e}=this.props,{fieldName:t,options:a,searchHelper:r}=this.props.option;this.searchHelper=Object.assign({},e,a,r);const{fieldAliasMap:l,extraAliasMap:n,fieldsDefine:i}=this.searchHelper;if(l||warn("Form","IMMEDIATE 需要配置 `fieldAliasMap` 选项"),this.alias="function"==typeof l?l():l||{},this.extras="function"==typeof n?n():n||{},i){const e=["valueKey","displayKey","extraKey"];for(const t in i)e.includes(t)&&(this[t]=i[t])}Object.keys(this.alias).includes(t)||warn("Form","IMMEDIATE 的 fieldAliasMap 选项必须包含自身 `fieldName` 值"),this.searchHelper.echoRequest&&!this.valueKey&&warn("Form","IMMEDIATE 的 echoRequest 选项必须组合 `fieldsDefine` 中的 `valueKey` 一起使用")})),this.getItemValue=()=>{const{$$form:e}=this.context;return e.state.other[this.valueKey]},this.getLatestRequest=()=>{var e;const{request:t,searchHelper:a}=this.props.option;return Object.assign({},null===(e=this.searchHelper)||void 0===e?void 0:e.request,t,null==a?void 0:a.request)},this.getItemText=()=>__awaiter(this,void 0,void 0,(function*(){var e;yield this.props.waiting();const t=this.getItemValue();if(t===this._prevValue)return;this._prevValue=t;const{fetchApi:a,params:r={},formatter:l=(e=>e),dataKey:n,fieldAliasMap:i,extraAliasMap:o}=this.searchHelper.echoRequest||{},s="function"==typeof i?i():i||{},c="function"==typeof o?o():o||{},{value:d}=this.props;if(a&&!d&&t)try{const i=yield a(l(Object.assign(Object.assign({},r),{key:t})));if(200===i.code){const t=Array.isArray(i.data)?i.data:null!==(e=get(i.data,n))&&void 0!==e?e:[];if(t[0]){const e=t[0];s&&setEchoRecord(e,this.alias,s),c&&setEchoExtras(e,this.extras,c),this._record=e,this.setFieldsValue(e)}}}catch(e){}})),this.setFieldsValue=e=>{var t;const{$$form:a}=this.context,{fieldName:r}=this.props.option;for(const t in this.alias){const l=getSplitValue$1(e,this.alias[t]);a.SET_FIELDS_VALUE({[t]:l}),t===r&&a.setViewValue(r,l)}for(const t in this.extras)a.SET_FIELDS_EXTRA({[t]:getSplitValue$1(e,this.extras[t])});this._record=e,this.prevValue=null!==(t=getSplitValue$1(e,this.alias[r]))&&void 0!==t?t:""},this.fetchHandle=debounce(this.getItemList,200),this.handleVisibleChange=e=>{this.setState({visible:e})},this.triggerChange=(e,t)=>{const{onChange:a,onValuesChange:r}=this.props;null==a||a(e),t&&r(e,this._record)},this.triggerBlur=e=>{const{onBlur:t}=this.props;null==t||t(e)},this.clickHandle=(e,t)=>{const{$$form:a}=this.context,{fieldName:r}=this.props.option;for(const t in this.alias)t!==r&&a.SET_FIELDS_VALUE({[t]:getSplitValue$1(e,this.alias[t])});for(const t in this.extras)a.SET_FIELDS_EXTRA({[t]:getSplitValue$1(e,this.extras[t])});this.searchRef.current.focus({cursor:"end"}),this._record=e;const l=getSplitValue$1(e,this.alias[r]);this.prevValue=null!=l?l:"",this.triggerChange(l,!0),t&&t()},this.initialHandle()}componentDidMount(){this.getItemText()}componentDidUpdate(e){var t,a,r,l,n,i;const o=(null===(a=null===(t=e.option.searchHelper)||void 0===t?void 0:t.request)||void 0===a?void 0:a.params)||(null===(r=e.option.request)||void 0===r?void 0:r.params),s=(null===(n=null===(l=this.props.option.searchHelper)||void 0===l?void 0:l.request)||void 0===n?void 0:n.params)||(null===(i=this.props.option.request)||void 0===i?void 0:i.params);isEqual$1(o,s)||this.getItemList(),this.getItemText()}getItemList(e){var t;return __awaiter(this,void 0,void 0,(function*(){const{fieldName:a}=this.props.option,{fetchApi:r,params:l={},formatter:n=(e=>e),dataKey:i}=this.getLatestRequest();if(r){this.setState({loading:!0});try{const o=yield r(n(Object.assign(Object.assign({},l),{[a]:e})));if(200===o.code){const e=Array.isArray(o.data)?o.data:null!==(t=get(o.data,i))&&void 0!==t?t:[];this.setState({itemList:e,activeIndex:0})}}catch(e){}this.setState({loading:!1})}}))}render(){var e;const{$$form:a}=this.context,{visible:r,loading:l,itemList:n}=this.state,{value:i}=this.props,{options:o={},style:s={},placeholder:c=t("qm.form.inputPlaceholder"),bordered:d=!0,allowClear:u=!0,readOnly:p,disabled:f}=this.props.option,{hideHeader:m,onlySelect:h=!0,listHeight:g=DEFAULT_LIST_HEIGHT}=o,_=(null===(e=this.searchHelper)||void 0===e?void 0:e.columns)||[],y=getPrefixCls("form-immediate"),v=this.searchRef.current?this.searchRef.current.input.parentNode.offsetWidth:300,b=React__default.createElement(Spin,{spinning:l},n.length?React__default.createElement("table",{cellSpacing:0,cellPadding:0,className:classNames("table")},!m&&React__default.createElement("thead",null,React__default.createElement("tr",null,_.filter((e=>!e.hidden)).map((e=>React__default.createElement("th",{key:e.dataIndex,style:{width:`${e.width}px`,backgroundColor:"#f0f0f0"}},e.title))))),React__default.createElement("tbody",null,n.map(((e,t)=>React__default.createElement("tr",{key:t,className:this.state.activeIndex===t?"active":"",onMouseEnter:()=>{this.setState({activeIndex:t})},onClick:()=>{this.clickHandle(e,(()=>this.handleVisibleChange(!1)))}},_.filter((e=>!e.hidden)).map((t=>React__default.createElement("td",{key:t.dataIndex},get(e,t.dataIndex))))))))):React__default.createElement(QmEmpty,null));return React__default.createElement(ConfigContext.Consumer,null,(e=>{const t={[y]:!0,[`${y}--lg`]:"large"===(null==e?void 0:e.size),[`${y}--sm`]:"small"===(null==e?void 0:e.size)};return a.isOnlyShow?React__default.createElement(FormItemView,{value:i,bordered:d}):React__default.createElement(Trigger,{action:f?[]:["click"],popupVisible:!f&&r,popup:b,popupClassName:classNames(t),popupStyle:{minWidth:v,maxHeight:g},onPopupVisibleChange:this.handleVisibleChange,builtinPlacements:BUILT_IN_PLACEMENTS$1,prefixCls:"ant-select-dropdown",popupPlacement:"bottomLeft",popupTransitionName:"ant-slide-up"},React__default.createElement(Input,{ref:this.searchRef,placeholder:c,allowClear:u,bordered:d,readOnly:p,disabled:f,style:Object.assign({width:"100%"},s),value:i,title:i,onFocus:()=>{!n.length&&this.fetchHandle(i)},onBlur:e=>{const{value:t}=e.target;h&&t!==this.prevValue&&this.triggerChange(this.prevValue,!1),this.triggerBlur(t)},onKeyUp:e=>{if(27===e.keyCode&&this.handleVisibleChange(!1),13===e.keyCode&&this.clickHandle(n[this.state.activeIndex],(()=>this.handleVisibleChange(!1))),38===e.keyCode||40===e.keyCode){if(!this.state.visible)return this.handleVisibleChange(!0);let t=this.state.activeIndex;const a=40===e.keyCode?++t%n.length:(--t+n.length)%n.length;this.setState({activeIndex:a})}},onChange:e=>{const{value:t}=e.target;this.fetchHandle(t),t?(this.handleVisibleChange(!0),this.triggerChange(t,!h)):this.clickHandle(null)}}))}))}}VImmediate.contextType=FormContext;class FormImmediate extends Component{constructor(e,t){let{$$form:a}=t;super(e),this.state={searchHelper:{}},this.waiting=()=>__awaiter(this,void 0,void 0,(function*(){try{yield this.promiseRef}catch(e){throwError("Form","搜索帮助获取定义信息的接口出错")}})),this.getHelperConfig=e=>{var t,a;const{global:r}=e,{name:l,fieldsDefine:n}=this.props.option.searchHelper||{};if(!l)return;if(!(null===(t=null==r?void 0:r.searchHelper)||void 0===t?void 0:t.getServerConfig)||!(null===(a=null==r?void 0:r.searchHelper)||void 0===a?void 0:a.createFetchApi))return warn("immediate","从服务端获取定义信息的时候,ConfigProvider 组件 `getServerConfig` 和 `createFetchApi` 为必选参数");const{fieldName:i}=this.props.option;this.promiseRef=new Promise(((e,t)=>__awaiter(this,void 0,void 0,(function*(){try{const a=yield r.searchHelper.getServerConfig({searchHelperId:l});if(200===a.code){const t=createShConfig(Object.assign({},a.data,n),i,r.searchHelper.createFetchApi);this.setState({searchHelper:t},(()=>e()))}else t()}catch(e){t()}}))))},this.getHelperConfig(a.context)}render(){const{$$form:e}=this.context,{searchHelper:t}=this.state,{type:a,label:r,tooltip:l,fieldName:n,invisible:i,options:o={},labelWidth:s=e.props.labelWidth,className:c,extra:d,buttonAfter:u,validateTrigger:p,rules:f=[],onChange:m=noop$1}=this.props.option;return React__default.createElement(Form.Item,{label:e.renderFormLabel(r),className:classNames(n,c),tooltip:l,hidden:i,labelCol:{flex:e.verticalLayout?"initial":getParserWidth(s)},required:e.getFormItemRequired(f)},React__default.createElement(Row,{wrap:!1,gutter:4},React__default.createElement(Col,{flex:"auto"},React__default.createElement(Form.Item,{name:n,noStyle:!0,rules:f,validateTrigger:p,messageVariables:{label:e.getFormItemLabel(r)}},React__default.createElement(VImmediate,{option:this.props.option,helperConfig:t,waiting:this.waiting,onValuesChange:function(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"",a=arguments.length>1?arguments[1]:void 0;m(t,a),e.setViewValue(n,t)}}))),u&&React__default.createElement(Col,null,e.renderFormItemButton(n,u)),d&&React__default.createElement(Col,{flex:getParserWidth(d.labelWidth||DEFAULT_LABEL_WIDTH)},e.renderFormItemExtra(Object.assign({fieldName:n},d)))))}}FormImmediate.contextType=FormContext;class FormDivider extends Component{render(){var e;const{$$form:t}=this.context,{type:a,label:r,fieldName:l,className:n,style:i={},collapse:o={}}=this.props.option,{expand:s}=t.state,{showLimit:c,remarkItems:d=[],onCollapse:u=noop$1}=o,p=[];if(d.length){const a=null!==(e=t.getBlockDerivedItems().find((e=>e[0].fieldName===l)))&&void 0!==e?e:[],r=null!=c?c:a.length-1;a.slice(r+1).forEach((e=>{var a;const r=d.find((t=>t.fieldName===e.fieldName));if(!r)return;const l=r.showLabel?`${e.label}:`:"",n=null!==(a=t.getViewValue(e.fieldName))&&void 0!==a?a:"";""!==n&&p.push(Object.assign(Object.assign({},e),{text:`${l}${n}`}))}))}return React__default.createElement(Form.Item,{labelCol:{span:0},wrapperCol:{span:24}},React__default.createElement(QmDivider,{id:l,label:r,className:n,extra:p.map((e=>e.text)).join(" | "),style:Object.assign({},i),collapse:s[l],onCollapseChange:e=>{t.setState((t=>({expand:Object.assign({},t.expand,{[l]:e})}))),u(e)}}))}}FormDivider.contextType=FormContext;const updateTreeData$1=(e,t,a,r)=>e.map((e=>e[a]===t?Object.assign(Object.assign({},e),{children:r}):e.children?Object.assign(Object.assign({},e),{children:updateTreeData$1(e.children,t,a,r)}):e)),VTreeSelect=e=>{const{$$form:a}=React__default.useContext(FormContext),{value:r,items:l,multiple:n,loading:i,onChange:o,onValuesChange:s}=e,{options:c={},style:d={},placeholder:u=t("qm.form.selectPlaceholder"),bordered:p=!0,allowClear:f=!0,asyncLoad:m,readOnly:h,disabled:g}=e.option,{itemList:_,filterable:y=!0,listHeight:v=DEFAULT_LIST_HEIGHT,checkStrictly:b,checkStrategy:R="SHOW_CHILD",collapseTags:E,openPyt:x=!0}=c,[C,T]=React__default.useState(isEmpty(_)?l:_);useUpdateEffect((()=>{T(isEmpty(_)?l:_)}),[_,l]);const S=e=>{var t;return(null===(t=deepFind$1(C,e))||void 0===t?void 0:t.text)||""},w=e=>n?e.map((e=>S(e))).filter((e=>!!e)).join(","):S(e);return a.isOnlyShow?React__default.createElement(FormItemView,{value:w(r),bordered:p}):React__default.createElement(TreeSelect,_extends$1({fieldNames:{label:"text",value:"value",children:"children"},value:r,multiple:n,treeCheckable:n,treeCheckStrictly:b,showCheckedStrategy:TreeSelect[R],placeholder:u,listHeight:v,style:d,loading:i,bordered:p,allowClear:f,disabled:g,treeDefaultExpandAll:!m,showSearch:y,maxTagCount:E?"responsive":void 0,loadData:m?e=>{let{key:t,children:a}=e;return __awaiter(void 0,void 0,void 0,(function*(){var e;if(!m||a)return;const{fetchApi:r,params:l,dataKey:n,textKey:i="text",valueKey:o="value",callback:s,formatter:c=(e=>e)}=m;if(r)try{const a=yield r(c(Object.assign(Object.assign({},l),{[o]:t})));if(200===a.code){const r=Array.isArray(a.data)?a.data:null!==(e=get(a.data,n))&&void 0!==e?e:[],l=updateTreeData$1(C,t,o,deepMapList(r,o,i));T(l),null==s||s(r)}}catch(e){}}))}:void 0,treeData:C},n?{title:w(r)}:null,{filterTreeNode:(e,t)=>{var a;const r=(null===(a=null==t?void 0:t.text)||void 0===a?void 0:a.toString())||"",l=pinyin.parse(r).map((e=>2===e.type?e.target.toLowerCase().slice(0,1):e.target)).join("");return(x?`${r}|${l}`:r).toLowerCase().indexOf(e.toLowerCase())>=0},onChange:e=>{(e=>{null==o||o(e),s(e,w(e),C)})(e)}}))};class FormTreeSelect extends Component{constructor(){super(...arguments),this.state={itemList:[],loading:!1},this.getItemList=()=>__awaiter(this,void 0,void 0,(function*(){var e;const{request:t={}}=this.props.option,{fetchApi:a,params:r={},dataKey:l,valueKey:n="value",textKey:i="text",callback:o}=t;if(a){this.setState({loading:!0});try{const t=yield a(r);if(200===t.code){const a=Array.isArray(t.data)?t.data:null!==(e=get(t.data,l))&&void 0!==e?e:[],r=deepMapList(a,n,i);this.setState({itemList:r},(()=>null==o?void 0:o(a)))}}catch(e){}this.setState({loading:!1})}}))}componentDidMount(){this.getItemList()}componentWillUnmount(){this.setState=()=>!1}componentDidUpdate(e){var t,a;const r=null===(t=e.option.request)||void 0===t?void 0:t.params,l=null===(a=this.props.option.request)||void 0===a?void 0:a.params;isEqual$1(r,l)||this.getItemList()}render(){const{$$form:e}=this.context,{itemList:t,loading:a}=this.state,{type:r,label:l,tooltip:n,fieldName:i,invisible:o,options:s={},labelWidth:c=e.props.labelWidth,className:d,extra:u,validateTrigger:p,rules:f=[],onChange:m=noop$1}=this.props.option;return React__default.createElement(Form.Item,{label:e.renderFormLabel(l),className:classNames(i,d),tooltip:n,hidden:o,labelCol:{flex:e.verticalLayout?"initial":getParserWidth(c)},required:e.getFormItemRequired(f)},React__default.createElement(Row,{wrap:!1,gutter:4},React__default.createElement(Col,{flex:"auto"},React__default.createElement(Form.Item,{name:i,noStyle:!0,rules:f,validateTrigger:p,messageVariables:{label:e.getFormItemLabel(l)}},React__default.createElement(VTreeSelect,{option:this.props.option,items:t,loading:a,multiple:this.props.multiple,onValuesChange:(t,a,r)=>{m(t,a,r),e.setViewValue(i,a)}}))),u&&React__default.createElement(Col,{flex:getParserWidth(u.labelWidth||DEFAULT_LABEL_WIDTH)},e.renderFormItemExtra(Object.assign({fieldName:i},u)))))}}FormTreeSelect.contextType=FormContext;const VCascader=e=>{const{$$form:a}=React__default.useContext(FormContext),{value:r,multiple:l,items:n}=e,{options:i={},style:o={},placeholder:s=t("qm.form.selectPlaceholder"),bordered:c=!0,allowClear:d=!0,readOnly:u,disabled:p}=e.option,{changeOnSelect:f,checkStrictly:m,checkStrategy:h="SHOW_PARENT",filterable:g=!0,openPyt:_=!0}=i,{itemList:y=[]}=i,v=isEmpty(y)?n:y,b=e=>isEmpty(e)?"":l?e.map((e=>deepFindValues(v,e).map((e=>e.text)).join("/"))).join(","):deepFindValues(v,e).map((e=>e.text)).join("/");return a.isOnlyShow?React__default.createElement(FormItemView,{value:b(r),bordered:c}):React__default.createElement(Cascader,_extends$1({value:(e=>isEmpty(e)?[]:l?e.map((e=>e.split(","))):e.split(","))(r),fieldNames:{label:"text",value:"value",children:"children"},options:v,multiple:l,maxTagCount:"responsive",changeOnSelect:f||m,showCheckedStrategy:Cascader[h],placeholder:s,style:o,bordered:c,allowClear:d,disabled:p,showSearch:g&&{filter:(e,t)=>t.some((t=>{var a;const r=(null===(a=null==t?void 0:t.text)||void 0===a?void 0:a.toString())||"",l=pinyin.parse(r).map((e=>2===e.type?e.target.toLowerCase().slice(0,1):e.target)).join("");return(_?`${r}|${l}`:r).toLowerCase().indexOf(e.toLowerCase())>=0}))}},l?{title:b(r)}:null,{onChange:t=>{(t=>{const{onChange:a,onValuesChange:r}=e;null==a||a(t),r(t,b(t),v)})(function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];return l?e.map((e=>e.join(","))):e.join(",")}(t))}}))};class FormCascader extends Component{constructor(){super(...arguments),this.state={itemList:[],loading:!1},this.getItemList=()=>__awaiter(this,void 0,void 0,(function*(){var e;const{request:t={}}=this.props.option,{fetchApi:a,params:r={},dataKey:l,valueKey:n="value",textKey:i="text",callback:o}=t;if(a){this.setState({loading:!0});try{const t=yield a(r);if(200===t.code){const a=Array.isArray(t.data)?t.data:null!==(e=get(t.data,l))&&void 0!==e?e:[],r=deepMapList(a,n,i);this.setState({itemList:r},(()=>null==o?void 0:o(a)))}}catch(e){}this.setState({loading:!1})}}))}componentDidMount(){this.getItemList()}componentWillUnmount(){this.setState=()=>!1}componentDidUpdate(e){var t,a;const r=null===(t=e.option.request)||void 0===t?void 0:t.params,l=null===(a=this.props.option.request)||void 0===a?void 0:a.params;isEqual$1(r,l)||this.getItemList()}render(){const{$$form:e}=this.context,{multiple:t}=this.props,{itemList:a}=this.state,{type:r,label:l,tooltip:n,fieldName:i,invisible:o,options:s={},labelWidth:c=e.props.labelWidth,className:d,extra:u,validateTrigger:p,rules:f=[],onChange:m=noop$1}=this.props.option;return React__default.createElement(Form.Item,{label:e.renderFormLabel(l),className:classNames(i,d),tooltip:n,hidden:o,labelCol:{flex:e.verticalLayout?"initial":getParserWidth(c)},required:e.getFormItemRequired(f)},React__default.createElement(Row,{wrap:!1,gutter:4},React__default.createElement(Col,{flex:"auto"},React__default.createElement(Form.Item,{name:i,noStyle:!0,rules:f,validateTrigger:p,messageVariables:{label:e.getFormItemLabel(l)}},React__default.createElement(VCascader,{option:this.props.option,multiple:t,items:a,onValuesChange:(t,a,r)=>{m(t,a,r),e.setViewValue(i,a)}}))),u&&React__default.createElement(Col,{flex:getParserWidth(u.labelWidth||DEFAULT_LABEL_WIDTH)},e.renderFormItemExtra(Object.assign({fieldName:i},u)))))}}FormCascader.contextType=FormContext;const zxsCodes=["110000","120000","310000","500000"],gaCodes=["810000","820000"],provinceLetter=[{text:"A",value:"A"},{text:"F",value:"F"},{text:"G",value:"G"},{text:"H",value:"H"},{text:"J",value:"J"},{text:"L",value:"L"},{text:"N",value:"N"},{text:"Q",value:"Q"},{text:"S",value:"S"},{text:"T",value:"T"},{text:"X",value:"X"},{text:"Y",value:"Y"},{text:"Z",value:"Z"},{text:"直辖市",value:"Z1"},{text:"港澳",value:"Z2"}],cityLetter=[{text:"A",value:"A"},{text:"B",value:"B"},{text:"C",value:"C"},{text:"D",value:"D"},{text:"E",value:"E"},{text:"F",value:"F"},{text:"G",value:"G"},{text:"H",value:"H"},{text:"J",value:"J"},{text:"K",value:"K"},{text:"L",value:"L"},{text:"M",value:"M"},{text:"N",value:"N"},{text:"P",value:"P"},{text:"Q",value:"Q"},{text:"R",value:"R"},{text:"S",value:"S"},{text:"T",value:"T"},{text:"W",value:"W"},{text:"X",value:"X"},{text:"Y",value:"Y"},{text:"Z",value:"Z"},{text:"直辖市",value:"Z1"},{text:"港澳",value:"Z2"}],createPyt=e=>pinyin.parse(e).map((e=>2===e.type?e.target.toLowerCase().slice(0,1):e.target)).join(""),formatChinaData$1=function(e,t){let a=arguments.length>2&&void 0!==arguments[2]?arguments[2]:1;if(a>2||!e[t])return;const r="86"===t?Object.keys(e[t]).filter((e=>![...zxsCodes,...gaCodes].includes(e))):Object.keys(e[t]);return r.map((r=>({l:createPyt(e[t][r].slice(0,1)).toUpperCase(),n:e[t][r],c:r,p:t,children:formatChinaData$1(e,r,a+1)})))},createOtherData=(e,t)=>t.map((t=>({l:createPyt(e[86][t].slice(0,1)).toUpperCase(),n:e[86][t],c:t,p:"86",children:void 0})));class VCitySelect extends Component{constructor(e){super(e),this.searchRef=React__default.createRef(),this.scrollRef=React__default.createRef(),this.state={visible:!1,select_type:"0",active_key:""},this.handleVisibleChange=e=>{this.setState({visible:e})},this.triggerChange=e=>{const{onChange:t,onValuesChange:a}=this.props;null==t||t(e),a(e,this.createTextValue(e)),this.handleVisibleChange(!1)},this.zxsAndGa=this.createZxsAndGa(),this.provinces=this.createProvince(),this.allCities=this.createAllCity(),this.letterCities=this.createCity()}componentDidMount(){this.setInputReadonly()}setInputReadonly(){var e;null===(e=this.searchRef.current)||void 0===e||e.input.setAttribute("readonly","readonly")}scrollHandle(e){this.setState({active_key:e}),scrollIntoView(this[`${e}Ref`],{block:"start",behavior:"smooth",boundary:this.scrollRef.current})}clickHadnle(e){this.triggerChange(e)}createTextValue(e){var t;return(null===(t=this.allCities.find((t=>t.c===e)))||void 0===t?void 0:t.n)||""}createZxsAndGa(){return[{l:"Z1",n:"直辖市",c:"",p:"",children:createOtherData(chinaData,zxsCodes)},{l:"Z2",n:"港澳",c:"",p:"",children:createOtherData(chinaData,gaCodes)}]}createProvince(){var e;return(null!==(e=formatChinaData$1(chinaData,"86"))&&void 0!==e?e:[]).concat(this.zxsAndGa)}createAllCity(){const e=[];return this.provinces.forEach((t=>e.push(...t.children))),e}createCity(){return cityLetter.filter((e=>"Z1"!==e.value&&"Z2"!==e.value)).map((e=>({l:e.value,n:e.text,c:"",p:"",children:this.allCities.filter((e=>![...zxsCodes,...gaCodes].includes(e.c))).filter((t=>t.l===e.value))}))).concat(this.zxsAndGa)}renderType(){const{select_type:e}=this.state;return React__default.createElement(Radio.Group,{size:"small",buttonStyle:"solid",value:e,onChange:e=>{const{value:t}=e.target;this.setState({select_type:t,active_key:""},(()=>{this.scrollRef.current.scrollTop=0}))}},React__default.createElement(Radio.Button,{value:"0"},t("qm.form.citySelectType.0")),React__default.createElement(Radio.Button,{value:"1"},t("qm.form.citySelectType.1")))}renderLetter(){const{active_key:e,select_type:t}=this.state;return("0"===t?provinceLetter:cityLetter).map((t=>React__default.createElement("li",{key:t.value,className:classNames({tag:!0,actived:t.value===e}),onClick:()=>this.scrollHandle(t.value.toString())},t.text)))}renderSelect(){const{value:e}=this.props;return React__default.createElement(Select,{size:"small",placeholder:t("qm.form.selectPlaceholder"),style:{width:"200px"},showSearch:!0,filterOption:(e,t)=>{var a;return((null===(a=null==t?void 0:t.children)||void 0===a?void 0:a.toString())||"").toLowerCase().indexOf(e.toLowerCase())>=0},value:e||void 0,onChange:e=>{this.triggerChange(e)}},this.allCities.map((e=>React__default.createElement(Select.Option,{key:e.c,value:e.c},e.n))))}renderCity(e){const{select_type:t}=this.state;return("0"===t?this.provinces:this.letterCities).map(((t,a)=>{var r;return React__default.createElement("div",{key:a},React__default.createElement("dt",{ref:e=>this[`${t.l}Ref`]=e},t.n,":"),React__default.createElement("dd",null,null===(r=t.children)||void 0===r?void 0:r.map((t=>React__default.createElement("li",{key:t.c,className:classNames({actived:t.c===e}),onClick:()=>this.clickHadnle(t.c)},t.n)))))}))}render(){const{$$form:e}=this.context,{visible:a}=this.state,{value:r}=this.props,{options:l={},style:n={},placeholder:i=t("qm.form.selectPlaceholder"),bordered:o=!0,allowClear:s=!0,readOnly:c,disabled:d}=this.props.option,u=getPrefixCls("form-city-select"),p=this.searchRef.current?this.searchRef.current.input.parentNode.offsetWidth:300,f=this.createTextValue(r),m=React__default.createElement("div",{className:"container",style:Object.assign({},n)},React__default.createElement("div",{className:"city-drop"},React__default.createElement("div",{className:"city-drop-toper"},React__default.createElement("div",{className:"city-drop-toper__type"},this.renderType()),React__default.createElement("div",{className:"city-drop-toper__search"},this.renderSelect())),React__default.createElement("div",{className:"city-drop-letter"},this.renderLetter()),React__default.createElement("div",{ref:this.scrollRef,className:"city-drop-list"},React__default.createElement("dl",null,this.renderCity(r)))));return React__default.createElement(ConfigContext.Consumer,null,(t=>{const r={[u]:!0,[`${u}--lg`]:"large"===(null==t?void 0:t.size),[`${u}--sm`]:"small"===(null==t?void 0:t.size)};return e.isOnlyShow?React__default.createElement(FormItemView,{value:f,bordered:o}):React__default.createElement(Trigger,{action:d?[]:["click"],popupVisible:!d&&a,popup:m,popupClassName:classNames(r),popupStyle:{minWidth:p},onPopupVisibleChange:this.handleVisibleChange,builtinPlacements:BUILT_IN_PLACEMENTS$1,prefixCls:"ant-select-dropdown",popupPlacement:"bottomLeft",popupTransitionName:"ant-slide-up"},React__default.createElement(Input,{ref:this.searchRef,placeholder:i,allowClear:s,bordered:o,readOnly:c,disabled:d,style:Object.assign({width:"100%"},n),value:f,title:f,onChange:e=>{const{value:t}=e.target;this.triggerChange(t)}}))}))}}VCitySelect.contextType=FormContext;class FormCitySelect extends Component{render(){const{$$form:e}=this.context,{type:t,label:a,tooltip:r,fieldName:l,invisible:n,options:i={},labelWidth:o=e.props.labelWidth,className:s,extra:c,validateTrigger:d,rules:u=[],onChange:p=noop$1}=this.props.option;return React__default.createElement(Form.Item,{label:e.renderFormLabel(a),className:classNames(l,s),tooltip:r,hidden:n,labelCol:{flex:e.verticalLayout?"initial":getParserWidth(o)},required:e.getFormItemRequired(u)},React__default.createElement(Row,{wrap:!1,gutter:4},React__default.createElement(Col,{flex:"auto"},React__default.createElement(Form.Item,{name:l,noStyle:!0,rules:u,validateTrigger:d,messageVariables:{label:e.getFormItemLabel(a)}},React__default.createElement(VCitySelect,{option:this.props.option,onValuesChange:(t,a)=>{p(t),e.setViewValue(l,a)}}))),c&&React__default.createElement(Col,{flex:getParserWidth(c.labelWidth||DEFAULT_LABEL_WIDTH)},e.renderFormItemExtra(Object.assign({fieldName:l},c)))))}}FormCitySelect.contextType=FormContext;const formatChinaData=(e,t)=>{if(e[t])return Object.keys(e[t]).map((a=>({text:e[t][a],value:a,children:formatChinaData(e,a)})))},isGA=e=>["810000","820000"].includes(e[0]),LEAVE_THREE=3,LEAVE_FOUR=4;class VRegionSelect extends Component{constructor(e){super(e),this.searchRef=React__default.createRef(),this.handleVisibleChange=e=>{this.setState({visible:e})},this.triggerChange=e=>{const{onChange:t,onValuesChange:a}=this.props;null==t||t(e),a(e,this.createTextValue(e)),this.handleVisibleChange(!1)};const t=formatChinaData(chinaData,"86")||[];this.state={results:t,visible:!1,values:[],tabs:[t.map((e=>({text:e.text,value:e.value})))],activeName:"0"}}componentDidMount(){this.initial(),this.setInputReadonly()}componentDidUpdate(e){const{value:t}=e,{value:a}=this.props;t!==a&&this.state.values.join(",")!==(null!=a?a:"")&&this.initial()}get isFetch(){var e;return!!(null===(e=this.props.option.request)||void 0===e?void 0:e.fetchApi)}get leave(){return this.isFetch?LEAVE_FOUR:LEAVE_THREE}setInputReadonly(){var e;null===(e=this.searchRef.current)||void 0===e||e.input.setAttribute("readonly","readonly")}createTextValue(e){return(e?e.split(","):[]).map(((e,t)=>{var a,r;return null===(r=null===(a=this.state.tabs[t])||void 0===a?void 0:a.find((t=>t.value===e)))||void 0===r?void 0:r.text})).join("/")}initial(){const{value:e}=this.props,t=e?e.split(","):[];this.setState({values:t},(()=>{this.createTabs(),this.createActiveName(t.length?t.length-1:0)}))}createActiveName(e){this.setState({activeName:e.toString()})}createTabs(){const{results:e,values:t}=this.state;if(!e.length)return;const a=this.state.tabs.slice(0,1);for(let r=0;r<t.length;r++){const l=deepFind$1(e,t[r]);if(l&&isEmpty(l.children)){this.isFetch&&this.getStreetList(t[r]);break}Array.isArray(null==l?void 0:l.children)&&(a[r+1]=null==l?void 0:l.children.map((e=>({text:e.text,value:e.value}))))}this.setState({tabs:a})}getStreetList(e){var t;return __awaiter(this,void 0,void 0,(function*(){const{request:a={}}=this.props.option,{fetchApi:r,formatter:l=(e=>e),dataKey:n,valueKey:i="value",textKey:o="text"}=a;if(r)try{const a=yield r(l({code:e}));if(200===a.code){const e=Array.isArray(a.data)?a.data:null!==(t=get(a.data,n))&&void 0!==t?t:[];this.setState((t=>({tabs:[...t.tabs,e.map((e=>({text:e[o],value:e[i]})))]})))}}catch(e){}}))}renderTabs(){const{values:e}=this.state,a=this.state.tabs.map(((a,r)=>{var l;const n=(null===(l=a.find((t=>t.value===e[r])))||void 0===l?void 0:l.text)||`${t("qm.form.selectPlaceholder").replace("...","")}(${t("qm.form.regionSelectLabel")[r]})`;return React__default.createElement(Tabs.TabPane,{key:r.toString(),tab:n},React__default.createElement("div",{className:"region-box"},a.map((t=>React__default.createElement("span",{key:t.value,className:classNames({"region-box__item":!0,actived:e.includes(t.value.toString())}),title:t.text,onClick:()=>{let{values:e}=this.state;e[r]=t.value.toString(),e=e.slice(0,r+1),this.setState({values:e},(()=>{const t=isGA(e)?this.leave-1:this.leave;if(r+1>=t)return this.triggerChange(e.join(","));this.createTabs(),this.createActiveName(r+1)}))}},t.text)))))}));return a.length?React__default.createElement(Tabs,{size:"small",activeKey:this.state.activeName,onChange:e=>{this.createActiveName(e)}},a):React__default.createElement(QmEmpty,null)}render(){const{$$form:e}=this.context,{visible:a}=this.state,{value:r}=this.props,{options:l={},style:n={},placeholder:i=t("qm.form.selectPlaceholder"),bordered:o=!0,allowClear:s=!0,readOnly:c,disabled:d}=this.props.option,u=getPrefixCls("form-region-select"),p=this.searchRef.current?this.searchRef.current.input.parentNode.offsetWidth:300,f=React__default.createElement("div",{className:"container"},this.renderTabs());let m=this.prevText;if(!a){const e=this.createTextValue(r);(""===e||e.split("/").every((e=>""!==e)))&&(m=e,this.prevText=m)}return React__default.createElement(ConfigContext.Consumer,null,(t=>{const r={[u]:!0,[`${u}--lg`]:"large"===(null==t?void 0:t.size),[`${u}--sm`]:"small"===(null==t?void 0:t.size)};return e.isOnlyShow?React__default.createElement(FormItemView,{value:m,bordered:o}):React__default.createElement(Trigger,{action:d?[]:["click"],popupVisible:!d&&a,popup:f,popupClassName:classNames(r),popupStyle:{minWidth:p},onPopupVisibleChange:this.handleVisibleChange,builtinPlacements:BUILT_IN_PLACEMENTS$1,prefixCls:"ant-select-dropdown",popupPlacement:"bottomLeft",popupTransitionName:"ant-slide-up"},React__default.createElement(Input,{ref:this.searchRef,placeholder:i,allowClear:s,bordered:o,style:Object.assign({width:"100%"},n),readOnly:c,disabled:d,value:m,title:m,onChange:e=>{const{value:t}=e.target;this.triggerChange(t),!t&&nextTick((()=>this.initial()))}}))}))}}VRegionSelect.contextType=FormContext;class FormRegionSelect extends Component{render(){const{$$form:e}=this.context,{type:t,label:a,tooltip:r,fieldName:l,invisible:n,options:i={},labelWidth:o=e.props.labelWidth,className:s,extra:c,validateTrigger:d,rules:u=[],onChange:p=noop$1}=this.props.option;return React__default.createElement(Form.Item,{label:e.renderFormLabel(a),className:classNames(l,s),tooltip:r,hidden:n,labelCol:{flex:e.verticalLayout?"initial":getParserWidth(o)},required:e.getFormItemRequired(u)},React__default.createElement(Row,{wrap:!1,gutter:4},React__default.createElement(Col,{flex:"auto"},React__default.createElement(Form.Item,{name:l,noStyle:!0,rules:u,validateTrigger:d,messageVariables:{label:e.getFormItemLabel(a)}},React__default.createElement(VRegionSelect,{option:this.props.option,onValuesChange:(t,a)=>{p(t),e.setViewValue(l,a)}}))),c&&React__default.createElement(Col,{flex:getParserWidth(c.labelWidth||DEFAULT_LABEL_WIDTH)},e.renderFormItemExtra(Object.assign({fieldName:l},c)))))}}FormRegionSelect.contextType=FormContext;const VUploadFile=e=>{const{$$form:t}=React__default.useContext(FormContext),{value:a,onChange:r,onValuesChange:l}=e,{options:n={},upload:i={},style:o={},disabled:s}=e.option,{multiple:c=!0,maxCount:d=1,fileTypes:u,fileSize:p,onRemove:f}=n,{action:m,headers:h,params:g,withCredentials:_=!1,dataKey:y="",fieldAliasMap:v,button:b}=i,R="function"==typeof v?v():v||{};return React__default.createElement(QmUploadFile,{name:"file",action:m,multiple:c,headers:h,data:g,withCredentials:_,maxCount:d,fileTypes:u,fileSize:p,disabled:s||t.isOnlyShow,button:b,showUploadList:{showDownloadIcon:!0,downloadIcon:React__default.createElement(DownloadOutlined,null)},fileList:a,onChange:e=>{let{file:t,fileList:a}=e;(e=>{const t=e.map((e=>{var t,a,r,l;const n={};for(const r in R)n[r]=e[r]||(null===(a=null===(t=e.response)||void 0===t?void 0:t.data)||void 0===a?void 0:a[R[r]])||"";return Object.assign(Object.assign({uid:e.uid,name:e.name},n),{url:e.url||(y?get(null===(l=e.response)||void 0===l?void 0:l.data,y):null===(r=e.response)||void 0===r?void 0:r.data)||"",status:e.status})}));null==r||r(t),t.every((e=>"done"===e.status&&e.url))&&l(t)})(a)},onRemove:f})};class FormUploadFile extends Component{render(){const{$$form:e}=this.context,{type:t,label:a,tooltip:r,fieldName:l,invisible:n,options:i={},labelWidth:o=e.props.labelWidth,className:s,extra:c,validateTrigger:d,rules:u=[],onChange:p=noop$1}=this.props.option;return React__default.createElement(Form.Item,{label:e.renderFormLabel(a),className:classNames(l,s),tooltip:r,hidden:n,labelCol:{flex:e.verticalLayout?"initial":getParserWidth(o)},required:e.getFormItemRequired(u)},React__default.createElement(Row,{wrap:!1,gutter:4},React__default.createElement(Col,{flex:"auto"},React__default.createElement(Form.Item,{name:l,noStyle:!0,rules:u,validateTrigger:d,messageVariables:{label:e.getFormItemLabel(a)}},React__default.createElement(VUploadFile,{option:this.props.option,onValuesChange:t=>{p(t),e.setViewValue(l,"")}}))),c&&React__default.createElement(Col,{flex:getParserWidth(c.labelWidth||DEFAULT_LABEL_WIDTH)},e.renderFormItemExtra(Object.assign({fieldName:l},c)))))}}FormUploadFile.contextType=FormContext;const VUploadImg=e=>{const{$$form:t}=React__default.useContext(FormContext),{value:a,onChange:r,onValuesChange:l}=e,{options:n={},upload:i={},style:o={},disabled:s}=e.option,{multiple:c=!0,maxCount:d=1,fixedSize:u,quality:p,openCropper:f,fileTypes:m,fileSize:h,onRemove:g}=n,{action:_,headers:y,params:v,withCredentials:b=!1,dataKey:R="",fieldAliasMap:E}=i,x="function"==typeof E?E():E||{};return React__default.createElement(QmUploadImg,{name:"file",action:_,multiple:c,headers:y,data:v,withCredentials:b,maxCount:d,fixedSize:u,quality:p,openCropper:f,fileTypes:m,fileSize:h,disabled:s||t.isOnlyShow,fileList:a,onChange:e=>{let{file:t,fileList:a}=e;(e=>{const t=e.map((e=>{var t,a,r,l;const n={};for(const r in x)n[r]=e[r]||(null===(a=null===(t=e.response)||void 0===t?void 0:t.data)||void 0===a?void 0:a[x[r]])||"";return Object.assign(Object.assign({uid:e.uid,name:e.name},n),{url:e.url||(R?get(null===(l=e.response)||void 0===l?void 0:l.data,R):null===(r=e.response)||void 0===r?void 0:r.data)||"",status:e.status})}));null==r||r(t),t.every((e=>"done"===e.status&&e.url))&&l(t)})(a)},onRemove:g})};class FormUploadImg extends Component{render(){const{$$form:e}=this.context,{type:t,label:a,tooltip:r,fieldName:l,invisible:n,options:i={},labelWidth:o=e.props.labelWidth,className:s,extra:c,validateTrigger:d,rules:u=[],onChange:p=noop$1}=this.props.option;return React__default.createElement(Form.Item,{label:e.renderFormLabel(a),className:classNames(l,s),tooltip:r,hidden:n,labelCol:{flex:e.verticalLayout?"initial":getParserWidth(o)},required:e.getFormItemRequired(u)},React__default.createElement(Row,{wrap:!1,gutter:4},React__default.createElement(Col,{flex:"auto"},React__default.createElement(Form.Item,{name:l,noStyle:!0,rules:u,validateTrigger:d,messageVariables:{label:e.getFormItemLabel(a)}},React__default.createElement(VUploadImg,{option:this.props.option,onValuesChange:t=>{p(t),e.setViewValue(l,"")}}))),c&&React__default.createElement(Col,{flex:getParserWidth(c.labelWidth||DEFAULT_LABEL_WIDTH)},e.renderFormItemExtra(Object.assign({fieldName:l},c)))))}}FormUploadImg.contextType=FormContext;const VTinymce=e=>{const{$$form:a}=React__default.useContext(FormContext),{value:r,onChange:l,onValuesChange:n}=e,{options:i={},upload:o,style:s={},placeholder:c=t("qm.form.inputPlaceholder"),readOnly:d,disabled:u}=e.option,{tinymce:p,thresholdSize:f}=i;return React__default.createElement(QmTinymce,{value:r,tinymce:p,upload:o,thresholdSize:f,style:Object.assign({width:"100%"},s),disabled:d||u||a.isOnlyShow,onChange:e=>{(e=>{null==l||l(e),n(e)})(e)}})};class FormTinymce extends Component{render(){const{$$form:e}=this.context,{type:t,label:a,tooltip:r,fieldName:l,invisible:n,options:i={},labelWidth:o=e.props.labelWidth,className:s,extra:c,validateTrigger:d,rules:u=[],onChange:p=noop$1}=this.props.option;return React__default.createElement(Form.Item,{label:e.renderFormLabel(a),className:classNames(l,s),tooltip:r,hidden:n,labelCol:{flex:e.verticalLayout?"initial":getParserWidth(o)},required:e.getFormItemRequired(u)},React__default.createElement(Row,{wrap:!1,gutter:4},React__default.createElement(Col,{flex:"auto"},React__default.createElement(Form.Item,{name:l,noStyle:!0,rules:u,validateTrigger:d,messageVariables:{label:e.getFormItemLabel(a)}},React__default.createElement(VTinymce,{option:this.props.option,onValuesChange:t=>{p(t),e.setViewValue(l,t)}}))),c&&React__default.createElement(Col,{flex:getParserWidth(c.labelWidth||DEFAULT_LABEL_WIDTH)},e.renderFormItemExtra(Object.assign({fieldName:l},c)))))}}FormTinymce.contextType=FormContext;class QmForm extends Component{constructor(e){var a;super(e),this.provide={$$form:this,echo_data:{}},this.wrapperRef=React__default.createRef(),this.formRef=React__default.createRef(),this.state={formData:{},viewData:{},other:{},extra:{},expand:{},flexCols:null!==(a=this.props.cols)&&void 0!==a?a:DEFAULT_COL,collapse:!1},this.resizeObserveHandler=()=>{var e;const t=null===(e=this.wrapperRef.current)||void 0===e?void 0:e.offsetWidth;if(void 0===t||0===t||this.props.cols>0)return;let a=Math.floor(t/DEFAULT_COL_WIDTH);a=24%a==0?a:a-1,a=a<1?1:a,a=a>8?8:a,a!==this.state.flexCols&&this.setState({flexCols:a})},this.resizeListenerHandle=debounce(this.resizeObserveHandler,10),this.getFormItems=memoize((e=>e.filter((e=>!e.noAuth&&!e.hidden)))),this.getFlattenItems=memoize((e=>{const t=[];return e.filter((e=>e.fieldName&&"DIVIDER"!==e.type)).forEach((e=>{isPlainObject(e.label)&&e.label.fieldName&&t.push(e.label),t.push(e)})),t})),this.valuesChangeHandle=(e,t)=>{var a,r;null===(r=(a=this.props).onValuesChange)||void 0===r||r.call(a,e,this._initialValues)},this.fieldsChangeHandle=(e,t)=>{var a,r;null===(r=(a=this.props).onFieldsChange)||void 0===r||r.call(a,e,t)},this.finishHandle=e=>{var t,a;null===(a=(t=this.props).onFinish)||void 0===a||a.call(t,Object.assign({},this.get_fields_other(),this.formatFormValue(e)))},this.finishFailedHandle=e=>{let{values:t,errorFields:a}=e;var r,l;null===(l=(r=this.props).onFinishFailed)||void 0===l||l.call(r,a)},this.openValidateInfo=e=>{const a=React__default.createElement("ul",null,e.map((e=>{const{label:t}=this.formItems.find((t=>t.fieldName===e.name[0]));return React__default.createElement("li",{key:e.name[0],style:{color:"#f5222d"}},"[",("string"==typeof t?`${t}: `:"")+e.errors.join(","),"]")})));notification.error({message:t("qm.form.validatePrompt"),description:a,duration:10})},this.scrollToField=e=>{if(!e)return;const t=this.wrapperRef.current.querySelector(`.${e}`);t&&scrollIntoView(t,{scrollMode:"if-needed",block:"nearest",behavior:"smooth"})},this.createInitialValues(),this.createInitialOthers(),this.createInitialExtras(),this.createFormAuth()}get $size(){var e,t;return null!==(t=null!==(e=this.props.size)&&void 0!==e?e:this.context.size)&&void 0!==t?t:""}get verticalLayout(){return"vertical"===this.props.layout}get formItems(){return this.getFormItems(this.props.items)}get flattenItems(){return this.getFlattenItems(this.formItems)}get dividers(){return this.formItems.filter((e=>"DIVIDER"===e.type))}get isFilterType(){return"search"===this.props.formType}get isOnlyShow(){return"onlyShow"===this.props.formType}get isCompactMode(){var e;const t=this.context.global;return null!==(e=this.props.compactMode)&&void 0!==e?e:"small"===this.$size&&!!(null==t?void 0:t.compactModeInSmallSize)}get showDividerCollapse(){return this.dividers.some((e=>!!e.collapse))}get showFilterCollapse(){return this.props.isCollapse&&this.formItems.length>=this.state.flexCols}componentDidMount(){this.checkFieldNames(),this.initialHandle(),this.createInputFocus(),this.bindResizeEvent(),this.resizeObserveHandler()}componentDidUpdate(e,t){this.props.items!==e.items&&this.checkFieldNames()}componentWillUnmount(){this.removeResizeEvent()}bindResizeEvent(){addResizeListener(this.wrapperRef.current,this.resizeListenerHandle)}removeResizeEvent(){removeResizeListener(this.wrapperRef.current,this.resizeListenerHandle)}initialHandle(){this.setState({formData:this.createFormValue(this.props.initialValues),other:this.createOtherValue(this.props.initialValues),extra:this.createExtraValue(this.props.initialExtras),expand:this.createDividerExpand()})}checkFieldNames(){const e=this.flattenItems.map((e=>e.fieldName));[...new Set(e)].length!==e.length&&warn("Form","配置项 fieldName 属性是唯一的,不能重复")}getFormItemRequired(){return(arguments.length>0&&void 0!==arguments[0]?arguments[0]:[]).some((e=>e.required))}createOtherValue(e){const t=this.flattenItems.map((e=>e.fieldName)),a={};for(const r in e)t.includes(r)||(a[r]=e[r]);return Object.assign({},a)}createExtraValue(e){const t={};return this.flattenItems.filter((e=>isPlainObject(e.extra))).forEach((a=>{var r;t[a.fieldName]=null!==(r=e[a.fieldName])&&void 0!==r?r:""})),Object.assign({},t)}createDividerExpand(){const e={};return this.dividers.filter((e=>isPlainObject(e.collapse))).forEach((t=>{var a;e[t.fieldName]=null!==(a=t.collapse.defaultExpand)&&void 0!==a&&a})),Object.assign({},e)}getInitialValue(e,t){var a;const{type:r,options:l}=e;return t=null!=t?t:void 0,ARRAY_TYPE.includes(r)&&(t=null!=t?t:[]),"CHECKBOX"!==r&&"SWITCH"!==r||(t=null!==(a=null!=t?t:null==l?void 0:l.falseValue)&&void 0!==a?a:DEFAULT_FALSE_VALUE$1),t}createFormValue(e){const t={};return this.flattenItems.forEach((a=>{t[a.fieldName]=this.getInitialValue(a,e[a.fieldName])})),Object.assign({},e,t)}createInitialValues(){this._initialValues=this.createFormValue(this.props.initialValues)}createInitialOthers(){this._initialOthers=this.createOtherValue(this.props.initialValues)}createInitialExtras(){this._initialExtras=this.createExtraValue(this.props.initialExtras)}setViewValue(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"";t!==this.getViewValue(e)&&this.setState((a=>({viewData:Object.assign({},a.viewData,{[e]:t})})))}getViewValue(e){var t;return null!==(t=this.state.viewData[e])&&void 0!==t?t:""}setExpandHandle(e){this.setState({collapse:e},(()=>{var e,t;null===(t=(e=this.props).onCollapse)||void 0===t||t.call(e,this.state.collapse)}))}createInputFocus(){const{isAutoFocus:e}=this.props;if(!e||this.isOnlyShow)return;const{type:t,fieldName:a}=this.formItems.filter((e=>e.fieldName))[0]||{};"INPUT"!==t&&"INPUT_NUMBER"!==t||!a||setTimeout((()=>this.CREATE_FOCUS(a)))}getFormItemLabel(e){var t,a,r,l;if("string"==typeof e)return e;const{fieldName:n,options:i={}}=e,{itemList:o=[]}=i;if(!o.length)return warn("Form",`fieldName 为 ${n} 的表单项的 \`itemList\` 配置有误`),"";const s=null!==(r=null!==(a=null===(t=this.formRef.current)||void 0===t?void 0:t.getFieldsValue([n])[n])&&void 0!==a?a:this._initialValues[n])&&void 0!==r?r:o[0].value;return(null===(l=o.find((e=>e.value===s)))||void 0===l?void 0:l.text)||""}getBlockDerivedItems(){const e=[];for(let t=0,a=this.dividers.length;t<a;t++){const a=this.formItems.findIndex((e=>e===this.dividers[t]));let r=this.formItems.findIndex((e=>e===this.dividers[t+1]));r=r>-1?r:void 0,e.push(this.formItems.slice(a,r).map((e=>({label:e.label,fieldName:e.fieldName}))))}return e}getFormItemDisplay(e){let{type:t,fieldName:a}=e;var r,l;if("DIVIDER"===t)return!0;const n=this.getBlockDerivedItems();for(let e=0,t=n.length;e<t;e++){const t=n[e],i=this.dividers.find((e=>e.fieldName===t[0].fieldName)),o=null!==(l=null===(r=null==i?void 0:i.collapse)||void 0===r?void 0:r.showLimit)&&void 0!==l?l:t.length-1;for(let e=1;e<t.length;e++){if(t[e].fieldName===a&&e>o)return this.state.expand[t[0].fieldName]}}return!0}formatFormValue(e){var t,a;for(const r in e){const l=e[r];if(isEmptyValue(l)&&(e[r]=""),Array.isArray(l)&&l.forEach(((t,a)=>{isEmptyValue(t)&&(e[r][a]="")})),r.includes("|")&&Array.isArray(l)){const[n,i]=r.split("|");e[n]=null!==(t=l[0])&&void 0!==t?t:"",e[i]=null!==(a=l[1])&&void 0!==a?a:""}}if(this.isFilterType)for(const t in e)isEmpty(e[t])&&(e[t]=void 0);return e}createFormAuth(){var e,t,a;return __awaiter(this,void 0,void 0,(function*(){const{authConfig:r}=this.props;if(!r)return;let l=omit(r,["fetch"]);if(r.fetch){const{api:t,params:a,dataKey:n}=r.fetch;try{const r=yield t(a);200===r.code&&(l=null!==(e=n?get(r.data,n):r.data)&&void 0!==e?e:{})}catch(e){}}if(Array.isArray(l.fieldList)){const e=this.props.items.map((e=>{const{fieldName:t}=e,a=l.fieldList.find((e=>e.dataIndex===t));if(a){const{visible:t=1,disabled:r,secretName:l}=a;t||(e.noAuth=!0),r&&(e.disabled=!0),l&&(e.options?e.options.secretType=l:e.options={secretType:l})}return e}));null===(a=(t=this.props).fieldsChange)||void 0===a||a.call(t,e)}}))}INPUT(e){return React__default.createElement(FormInput,{ref:t=>this[`${e.fieldName}_Ref`]=t,option:e})}RANGE_INPUT(e){return React__default.createElement(FormRangeInput,{option:e})}INPUT_NUMBER(e){return React__default.createElement(FormInputNumber,{ref:t=>this[`${e.fieldName}_Ref`]=t,option:e})}RANGE_INPUT_NUMBER(e){return React__default.createElement(FormRangeInputNumber,{option:e})}SEARCH_HELPER(e){return React__default.createElement(FormSearchHelper,{ref:t=>this[`${e.fieldName}_Ref`]=t,option:e})}MULTIPLE_SEARCH_HELPER(e){return React__default.createElement(FormMultipleSearchHelper,{option:e})}TREE_TABLE_HELPER(e){return React__default.createElement(FormTreeTableHelper,{option:e})}MULTIPLE_TREE_TABLE_HELPER(e){return React__default.createElement(FormMultipleTreeTableHelper,{option:e})}RANGE_SEARCH_HELPER(e){return React__default.createElement(FormRangeSearchHelper,{option:e})}CHECKBOX(e){return React__default.createElement(FormCheckbox,{option:e})}MULTIPLE_CHECKBOX(e){return React__default.createElement(FormCheckboxGroup,{option:e})}RATE(e){return React__default.createElement(FormRate,{option:e})}RADIO(e){return React__default.createElement(FormRadio,{option:e})}SWITCH(e){return React__default.createElement(FormSwitch,{option:e})}TEXT_AREA(e){return React__default.createElement(FormTextArea,{option:e})}DATE(e){return React__default.createElement(FormDate,{option:e})}RANGE_DATE(e){return React__default.createElement(FormRangeDate,{option:e})}TIME(e){return React__default.createElement(FormTime,{option:e})}RANGE_TIME(e){return React__default.createElement(FormRangeTime,{option:e})}SELECT(e){return React__default.createElement(FormSelect,{option:e})}MULTIPLE_SELECT(e){return React__default.createElement(FormSelect,{option:e,multiple:!0})}IMMEDIATE(e){return React__default.createElement(FormImmediate,{option:e})}DIVIDER(e){return React__default.createElement(FormDivider,{option:e})}TREE_SELECT(e){return React__default.createElement(FormTreeSelect,{option:e})}MULTIPLE_TREE_SELECT(e){return React__default.createElement(FormTreeSelect,{option:e,multiple:!0})}CASCADER(e){return React__default.createElement(FormCascader,{option:e})}MULTIPLE_CASCADER(e){return React__default.createElement(FormCascader,{option:e,multiple:!0})}CITY_SELECT(e){return React__default.createElement(FormCitySelect,{option:e})}REGION_SELECT(e){return React__default.createElement(FormRegionSelect,{option:e})}UPLOAD_FILE(e){return React__default.createElement(FormUploadFile,{option:e})}UPLOAD_IMG(e){return React__default.createElement(FormUploadImg,{option:e})}TINYMCE(e){return React__default.createElement(FormTinymce,{option:e})}renderFormLabel(e){if(!isPlainObject(e))return e;const{type:t,fieldName:a,options:r={},placeholder:l,disabled:n,onChange:i=noop$1}=e,{itemList:o=[]}=r;return React__default.createElement(Form.Item,{name:a,noStyle:!0},"SELECT"===t&&React__default.createElement(Select,{placeholder:l,disabled:n,style:{width:"calc(100% - 10px)"},onChange:e=>i(e,o.find((t=>t.value===e)).text)},o.map((e=>React__default.createElement(Select.Option,{key:e.value,value:e.value,disabled:e.disabled},e.text)))))}renderFormItemExtra(e){const{fieldName:t,isTooltip:a,style:r={},render:l}=e,{extra:n}=this.state;if(a)return React__default.createElement(Tooltip,{className:"extra-tooltip",title:n[t]},React__default.createElement(ExclamationCircleOutlined,{style:{marginLeft:4}}));const i=this.formItems.find((e=>e.fieldName===t));return React__default.createElement("div",{className:"extra-text",title:l?"":n[t],style:r},React__default.createElement("span",{className:"extra-overflow-cut"},l?l(i,this):n[t]))}renderFormItemButton(e,t){const a=this.formItems.find((t=>t.fieldName===e)),r="function"==typeof t?t(a):t;return this.isOnlyShow?null:r}renderFormItem(e){const{label:t,fieldName:a,className:r,labelWidth:l=this.props.labelWidth,rules:n=[],style:i={},render:o}=e;return isEmpty(this.state.formData)?null:React__default.createElement(Form.Item,{label:t,name:a,rules:n,className:classNames(a,r),style:Object.assign({width:"100%"},i),labelCol:{flex:getParserWidth(l)}},null==o?void 0:o(e,this))}createFormItem(e){return isFunction$4(this[e.type])?e.render?this.renderFormItem(e):this[e.type](e):(warn("Form",`配置项 ${e.fieldName} 的 type 类型错误`),null)}createFormLayout(){const{flexCols:e}=this.state,{formType:t,defaultRows:a,isFieldsDefine:r}=this.props,l=[];this.formItems.forEach((e=>{const{offsetLeft:t=0,offsetRight:a=0}=e;for(let e=0;e<t;e++)l.push({});l.push(e);for(let e=0;e<a;e++)l.push({})}));const n=24/e,i=[],o=l.reduce(((e,t)=>{const{selfCol:a=1}=t,r=e+a;return i.push(r),r}),0),s=a>Math.ceil(o/e)?Math.ceil(o/e):a,c=[],d=l.map(((t,a)=>{let{selfCol:r=1}=t;const{type:l,fieldName:o}=t;r=r>=24||"DIVIDER"===l||"TINYMCE"===l?e:r;const d=!(!this.state.collapse&&this.showFilterCollapse)||i[a]<s*e,u=!this.showDividerCollapse||this.getFormItemDisplay(t);return d&&c.push(i[a]),React__default.createElement(Col,{key:null!=o?o:a,span:r*n,style:this.isFilterType?{display:!this.showFilterCollapse||d?"block":"none"}:{display:u?"block":"none"}},l?this.createFormItem(deepClone(t)):null)}));return r&&"default"===t&&d.push(React__default.createElement("div",{className:"form-fields__define"},this.createFieldsDefine())),[...d,this.createSearchButtonLayout(c[c.length-1])]}createSearchButtonLayout(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;const{flexCols:a,collapse:r}=this.state,{searchButtonCols:l,isSearchBtn:n,isFieldsDefine:i=!0}=this.props;if(!this.isFilterType)return null;const o=24/a,s=l||1,c=a-e%a-s;return n?React__default.createElement(Col,{key:"-",span:s*o,offset:c*o,style:{textAlign:"right"}},React__default.createElement(Space,{style:{marginBottom:12}},React__default.createElement(QmButton,{type:"primary",size:this.$size,icon:React__default.createElement(SearchOutlined,null),onClick:()=>this.SUBMIT_FORM()},t("qm.form.search")),React__default.createElement(QmButton,{size:this.$size,icon:React__default.createElement(ReloadOutlined,null),onClick:()=>this.RESET_FORM()},t("qm.form.reset")),i?this.createFieldsDefine():null,this.showFilterCollapse&&React__default.createElement("a",{onClick:()=>this.setExpandHandle(!r)},r?React__default.createElement(UpOutlined,null):React__default.createElement(DownOutlined,null)," ",t(r?"qm.form.collect":"qm.form.spread")))):null}createFormButtonLayout(){const{flexCols:e}=this.state,{formType:a,isSubmitBtn:r}=this.props;if(this.isFilterType)return null;const l=24/e;return r&&"default"===a?React__default.createElement(Row,{gutter:0},React__default.createElement(Col,{key:"-",span:l},React__default.createElement(Form.Item,null,React__default.createElement(Space,{style:{marginBottom:12}},React__default.createElement(QmButton,{type:"primary",size:this.$size,onClick:()=>this.SUBMIT_FORM()},t("qm.form.save")),React__default.createElement(QmButton,{size:this.$size,onClick:()=>this.RESET_FORM()},t("qm.form.reset")))))):null}createFieldsDefine(){const{uniqueKey:e,items:t,fieldsChange:a}=this.props;return React__default.createElement(FieldsFilter,{uniqueKey:e,items:t,fieldsChange:a})}set_fields_other(e){this.setState((t=>({other:Object.assign({},t.other,this.createOtherValue(e))})))}get_fields_other(e){if(!e)return this.state.other;const t={};return e.forEach((e=>{t[e]=this.state.other[e]})),t}formValidate(){return new Promise(((e,a)=>__awaiter(this,void 0,void 0,(function*(){const[r,l]=yield this.VALIDATE_FIELDS(),n=this.formItems.filter((e=>"SEARCH_HELPER"===e.type)).filter((e=>{var t;return null===(t=this[`${e.fieldName}_Ref`])||void 0===t?void 0:t.searchRef._is_change})).map((e=>({name:[e.fieldName],errors:[t("qm.form.searchHelperTips")],warnings:[]})));r||n.length?a((r||[]).concat(n)):e(l)}))))}SET_FIELDS_VALUE(e){this.formRef.current.setFieldsValue(e),this.set_fields_other(e)}GET_FIELDS_VALUE(e){return e?Object.assign({},this.get_fields_other(e),this.formRef.current.getFieldsValue(e)):Object.assign({},this.state.other,this.formRef.current.getFieldsValue(!0))}GET_FORM_DATA(){return __awaiter(this,void 0,void 0,(function*(){try{const e=yield this.formValidate();return[null,Object.assign({},this.get_fields_other(),this.formatFormValue(e))]}catch(e){return this.props.scrollToFirstError&&this.scrollToField(e[0].name[0]),[e,null]}}))}VALIDATE_FIELDS(e){return __awaiter(this,void 0,void 0,(function*(){try{return[null,yield this.formRef.current.validateFields(e)]}catch({errorFields:e}){return this.isCompactMode&&this.openValidateInfo(e),[e,null]}}))}SET_FIELDS_EXTRA(e){this.setState((t=>({extra:Object.assign({},t.extra,e)})))}SET_FIELDS_ECHO(e){Object.keys(e).length&&(Object.assign(this.provide,{echo_data:Object.assign({},this.provide.echo_data,e)}),this.forceUpdate())}GET_FIELDS_EXTRA(e){if(!e)return this.state.extra;const t={};return e.forEach((e=>{t[e]=this.state.extra[e]})),t}GET_FIELDS_TOUCHED(e){return this.formRef.current.isFieldsTouched(e)}SUBMIT_FORM(){return __awaiter(this,void 0,void 0,(function*(){try{yield this.formValidate(),this.formRef.current.submit()}catch(e){this.isFilterType&&this.setExpandHandle(!0)}}))}RESET_FORM(){var e,t;let a=[];const r=this.flattenItems.filter((e=>e.noReset)).map((e=>e.fieldName));r.length&&(a=this.flattenItems.map((e=>e.fieldName)).filter((e=>!r.includes(e)))),this.formRef.current.resetFields(a.length?a:void 0),this.setState((e=>{const t=Object.keys(e.other),a=Object.keys(this._initialOthers),r=t.filter((e=>!a.includes(e))),l={};return r.forEach((e=>l[e]=void 0)),{other:Object.assign({},this._initialOthers,l)}})),this.setState({extra:Object.assign({},this._initialExtras)}),null===(t=(e=this.props).onReset)||void 0===t||t.call(e)}CREATE_FOCUS(e){try{this[`${e}_Ref`].focus()}catch(e){warn("Form","参数 `fieldName` 的值不正确或者该表单项不支持获得焦点")}}SET_FORM_ITEM(e,t,a){const{items:r,fieldsChange:l}=this.props,n=r.filter((e=>!e.noAuth)),i=n.find((t=>t.fieldName===e));if(!i)return warn("Form","SET_FORM_ITEM 方法参数 `fieldName` 的值不正确");if(!isPlainObject(t))return warn("Form","SET_FORM_ITEM 方法参数 `option` 的值不正确");for(const e in t)e&&set(i,e,t[e]);a&&(l?l(n):warn("Form","需要设置 `fieldsChange` 参数"))}render(){const{className:e,style:a,layout:r,labelWidth:l,labelAlign:n,labelWrap:i,customClass:o}=this.props,s=getPrefixCls("form"),c={required:"${label}"+t("qm.form.requiredTips")},d={[s]:!0,[`${s}--lg`]:"large"===this.$size,[`${s}--sm`]:"small"===this.$size,[`${s}__only-show`]:this.isOnlyShow,[`${s}__compact`]:this.isCompactMode,[o]:!!o};return React__default.createElement("div",{ref:this.wrapperRef,className:classNames(d,e),style:a},React__default.createElement(Form,{ref:this.formRef,size:this.$size,initialValues:this._initialValues,layout:r,labelAlign:n,labelWrap:i,colon:!1,labelCol:{flex:this.verticalLayout?"initial":getParserWidth(l)},validateMessages:c,onValuesChange:this.valuesChangeHandle,onFieldsChange:this.fieldsChangeHandle,onFinish:this.finishHandle,onFinishFailed:this.finishFailedHandle},React__default.createElement(FormContext.Provider,{value:this.provide},React__default.createElement(Row,{gutter:this.verticalLayout?20:0},this.createFormLayout()),this.createFormButtonLayout())))}}QmForm.contextType=ConfigContext,QmForm.propTypes=propTypes,QmForm.defaultProps=defaultProps$1;const eventPropTypes={onActivate:PropTypes.func,onAddUndo:PropTypes.func,onBeforeAddUndo:PropTypes.func,onBeforeExecCommand:PropTypes.func,onBeforeGetContent:PropTypes.func,onBeforeRenderUI:PropTypes.func,onBeforeSetContent:PropTypes.func,onBeforePaste:PropTypes.func,onBlur:PropTypes.func,onChange:PropTypes.func,onClearUndos:PropTypes.func,onClick:PropTypes.func,onContextMenu:PropTypes.func,onCommentChange:PropTypes.func,onCopy:PropTypes.func,onCut:PropTypes.func,onDblclick:PropTypes.func,onDeactivate:PropTypes.func,onDirty:PropTypes.func,onDrag:PropTypes.func,onDragDrop:PropTypes.func,onDragEnd:PropTypes.func,onDragGesture:PropTypes.func,onDragOver:PropTypes.func,onDrop:PropTypes.func,onExecCommand:PropTypes.func,onFocus:PropTypes.func,onFocusIn:PropTypes.func,onFocusOut:PropTypes.func,onGetContent:PropTypes.func,onHide:PropTypes.func,onInit:PropTypes.func,onKeyDown:PropTypes.func,onKeyPress:PropTypes.func,onKeyUp:PropTypes.func,onLoadContent:PropTypes.func,onMouseDown:PropTypes.func,onMouseEnter:PropTypes.func,onMouseLeave:PropTypes.func,onMouseMove:PropTypes.func,onMouseOut:PropTypes.func,onMouseOver:PropTypes.func,onMouseUp:PropTypes.func,onNodeChange:PropTypes.func,onObjectResizeStart:PropTypes.func,onObjectResized:PropTypes.func,onObjectSelected:PropTypes.func,onPaste:PropTypes.func,onPostProcess:PropTypes.func,onPostRender:PropTypes.func,onPreProcess:PropTypes.func,onProgressState:PropTypes.func,onRedo:PropTypes.func,onRemove:PropTypes.func,onReset:PropTypes.func,onSaveContent:PropTypes.func,onSelectionChange:PropTypes.func,onSetAttrib:PropTypes.func,onSetContent:PropTypes.func,onShow:PropTypes.func,onSubmit:PropTypes.func,onUndo:PropTypes.func,onVisualAid:PropTypes.func,onSkinLoadError:PropTypes.func,onThemeLoadError:PropTypes.func,onModelLoadError:PropTypes.func,onPluginLoadError:PropTypes.func,onIconsLoadError:PropTypes.func,onLanguageLoadError:PropTypes.func},EditorPropTypes=Object.assign({apiKey:PropTypes.string,id:PropTypes.string,inline:PropTypes.bool,init:PropTypes.object,initialValue:PropTypes.string,onEditorChange:PropTypes.func,value:PropTypes.string,tagName:PropTypes.string,cloudChannel:PropTypes.string,plugins:PropTypes.oneOfType([PropTypes.string,PropTypes.array]),toolbar:PropTypes.oneOfType([PropTypes.string,PropTypes.array]),disabled:PropTypes.bool,textareaName:PropTypes.string,tinymceScriptSrc:PropTypes.string,rollback:PropTypes.oneOfType([PropTypes.number,PropTypes.oneOf([!1])]),scriptLoading:PropTypes.shape({async:PropTypes.bool,defer:PropTypes.bool,delay:PropTypes.number})},eventPropTypes),isFunction=e=>"function"==typeof e,isEventProp=e=>e in eventPropTypes,eventAttrToEventName=e=>e.substr(2),configHandlers2=(e,t,a,r,l,n,i)=>{const o=Object.keys(l).filter(isEventProp),s=Object.keys(n).filter(isEventProp),c=o.filter((e=>void 0===n[e])),d=s.filter((e=>void 0===l[e]));c.forEach((e=>{const t=eventAttrToEventName(e),r=i[t];a(t,r),delete i[t]})),d.forEach((a=>{const l=r(e,a),n=eventAttrToEventName(a);i[n]=l,t(n,l)}))},configHandlers=(e,t,a,r,l)=>configHandlers2(l,e.on.bind(e),e.off.bind(e),((t,a)=>r=>{var l;return null===(l=t(a))||void 0===l?void 0:l(r,e)}),t,a,r);let unique=0;const uuid=e=>{const t=Date.now(),a=Math.floor(1e9*Math.random());return unique++,e+"_"+a+unique+String(t)},isTextareaOrInput=e=>null!==e&&("textarea"===e.tagName.toLowerCase()||"input"===e.tagName.toLowerCase()),normalizePluginArray=e=>void 0===e||""===e?[]:Array.isArray(e)?e:e.split(" "),mergePlugins=(e,t)=>normalizePluginArray(e).concat(normalizePluginArray(t)),isBeforeInputEventAvailable=()=>window.InputEvent&&"function"==typeof InputEvent.prototype.getTargetRanges,isInDoc=e=>{if(!("isConnected"in Node.prototype)){let t=e,a=e.parentNode;for(;null!=a;)t=a,a=t.parentNode;return t===e.ownerDocument}return e.isConnected},setMode=(e,t)=>{void 0!==e&&(null!=e.mode&&"object"==typeof e.mode&&"function"==typeof e.mode.set?e.mode.set(t):e.setMode(t))},createState=()=>({listeners:[],scriptId:uuid("tiny-script"),scriptLoading:!1,scriptLoaded:!1}),CreateScriptLoader=()=>{let e=createState();return{load:(t,a,r,l,n,i)=>{const o=()=>((e,t,a,r,l,n)=>{const i=t.createElement("script");i.referrerPolicy="origin",i.type="application/javascript",i.id=e,i.src=a,i.async=r,i.defer=l;const o=()=>{i.removeEventListener("load",o),n()};i.addEventListener("load",o),t.head&&t.head.appendChild(i)})(e.scriptId,t,a,r,l,(()=>{e.listeners.forEach((e=>e())),e.scriptLoaded=!0}));e.scriptLoaded?i():(e.listeners.push(i),e.scriptLoading||(e.scriptLoading=!0,n>0?setTimeout(o,n):o()))},reinitialize:()=>{e=createState()}}},ScriptLoader=CreateScriptLoader(),getTinymce=e=>{const t=e;return t&&t.tinymce?t.tinymce:null};class Editor extends React.Component{constructor(e){var t,a,r,l;super(e),t=this,this.rollbackTimer=void 0,this.valueCursor=void 0,this.rollbackChange=()=>{const e=this.editor,t=this.props.value;e&&t&&t!==this.currentContent&&e.undoManager.ignore((()=>{if(e.setContent(t),this.valueCursor&&(!this.inline||e.hasFocus()))try{e.selection.moveToBookmark(this.valueCursor)}catch(e){}})),this.rollbackTimer=void 0},this.handleBeforeInput=e=>{if(void 0!==this.props.value&&this.props.value===this.currentContent&&this.editor&&(!this.inline||this.editor.hasFocus()))try{this.valueCursor=this.editor.selection.getBookmark(3)}catch(e){}},this.handleBeforeInputSpecial=e=>{"Enter"!==e.key&&"Backspace"!==e.key&&"Delete"!==e.key||this.handleBeforeInput(e)},this.handleEditorChange=e=>{const t=this.editor;if(t&&t.initialized){const e=t.getContent();void 0!==this.props.value&&this.props.value!==e&&!1!==this.props.rollback&&(this.rollbackTimer||(this.rollbackTimer=window.setTimeout(this.rollbackChange,"number"==typeof this.props.rollback?this.props.rollback:200))),e!==this.currentContent&&(this.currentContent=e,"function"==typeof this.props.onEditorChange&&this.props.onEditorChange(e,t))}},this.handleEditorChangeSpecial=e=>{"Backspace"!==e.key&&"Delete"!==e.key||this.handleEditorChange(e)},this.initialise=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;var a,r,l;const n=t.elementRef.current;if(!n)return;if(!isInDoc(n)){if(0===e)setTimeout((()=>t.initialise(1)),1);else{if(!(e<100))throw new Error("tinymce can only be initialised when in a document");setTimeout((()=>t.initialise(e+1)),100)}return}const i=getTinymce(t.view);if(!i)throw new Error("tinymce should have been loaded into global scope");const o=Object.assign(Object.assign({},t.props.init),{selector:void 0,target:n,readonly:t.props.disabled,inline:t.inline,plugins:mergePlugins(null===(a=t.props.init)||void 0===a?void 0:a.plugins,t.props.plugins),toolbar:null!==(r=t.props.toolbar)&&void 0!==r?r:null===(l=t.props.init)||void 0===l?void 0:l.toolbar,setup:e=>{t.editor=e,t.bindHandlers({}),t.inline&&!isTextareaOrInput(n)&&e.once("PostRender",(a=>{e.setContent(t.getInitialValue(),{no_events:!0})})),t.props.init&&isFunction(t.props.init.setup)&&t.props.init.setup(e)},init_instance_callback:e=>{var a,r;const l=t.getInitialValue();t.currentContent=null!==(a=t.currentContent)&&void 0!==a?a:e.getContent(),t.currentContent!==l&&(t.currentContent=l,e.setContent(l),e.undoManager.clear(),e.undoManager.add(),e.setDirty(!1));const n=null!==(r=t.props.disabled)&&void 0!==r&&r;setMode(t.editor,n?"readonly":"design"),t.props.init&&isFunction(t.props.init.init_instance_callback)&&t.props.init.init_instance_callback(e)}});t.inline||(n.style.visibility=""),isTextareaOrInput(n)&&(n.value=t.getInitialValue()),i.init(o)},this.id=this.props.id||uuid("tiny-react"),this.elementRef=React.createRef(),this.inline=null!==(l=null!==(a=this.props.inline)&&void 0!==a?a:null===(r=this.props.init)||void 0===r?void 0:r.inline)&&void 0!==l&&l,this.boundHandlers={}}get view(){var e,t;return null!==(t=null===(e=this.elementRef.current)||void 0===e?void 0:e.ownerDocument.defaultView)&&void 0!==t?t:window}componentDidUpdate(e){var t,a;if(this.rollbackTimer&&(clearTimeout(this.rollbackTimer),this.rollbackTimer=void 0),this.editor&&(this.bindHandlers(e),this.editor.initialized)){if(this.currentContent=null!==(t=this.currentContent)&&void 0!==t?t:this.editor.getContent(),"string"==typeof this.props.initialValue&&this.props.initialValue!==e.initialValue)this.editor.setContent(this.props.initialValue),this.editor.undoManager.clear(),this.editor.undoManager.add(),this.editor.setDirty(!1);else if("string"==typeof this.props.value&&this.props.value!==this.currentContent){const e=this.editor;e.undoManager.transact((()=>{let t;if(!this.inline||e.hasFocus())try{t=e.selection.getBookmark(3)}catch(e){}const a=this.valueCursor;if(e.setContent(this.props.value),!this.inline||e.hasFocus())for(const r of[t,a])if(r)try{e.selection.moveToBookmark(r),this.valueCursor=r;break}catch(e){}}))}if(this.props.disabled!==e.disabled){const e=null!==(a=this.props.disabled)&&void 0!==a&&a;setMode(this.editor,e?"readonly":"design")}}}componentDidMount(){var e,t,a,r,l,n;null!==getTinymce(this.view)?this.initialise():this.elementRef.current&&this.elementRef.current.ownerDocument&&ScriptLoader.load(this.elementRef.current.ownerDocument,this.getScriptSrc(),null!==(t=null===(e=this.props.scriptLoading)||void 0===e?void 0:e.async)&&void 0!==t&&t,null!==(r=null===(a=this.props.scriptLoading)||void 0===a?void 0:a.defer)&&void 0!==r&&r,null!==(n=null===(l=this.props.scriptLoading)||void 0===l?void 0:l.delay)&&void 0!==n?n:0,this.initialise)}componentWillUnmount(){const e=this.editor;e&&(e.off(this.changeEvents(),this.handleEditorChange),e.off(this.beforeInputEvent(),this.handleBeforeInput),e.off("keypress",this.handleEditorChangeSpecial),e.off("keydown",this.handleBeforeInputSpecial),e.off("NewBlock",this.handleEditorChange),Object.keys(this.boundHandlers).forEach((t=>{e.off(t,this.boundHandlers[t])})),this.boundHandlers={},e.remove(),this.editor=void 0)}render(){return this.inline?this.renderInline():this.renderIframe()}changeEvents(){var e,t,a;return(null===(a=null===(t=null===(e=getTinymce(this.view))||void 0===e?void 0:e.Env)||void 0===t?void 0:t.browser)||void 0===a?void 0:a.isIE())?"change keyup compositionend setcontent CommentChange":"change input compositionend setcontent CommentChange"}beforeInputEvent(){return isBeforeInputEventAvailable()?"beforeinput SelectionChange":"SelectionChange"}renderInline(){const{tagName:e="div"}=this.props;return React.createElement(e,{ref:this.elementRef,id:this.id})}renderIframe(){return React.createElement("textarea",{ref:this.elementRef,style:{visibility:"hidden"},name:this.props.textareaName,id:this.id})}getScriptSrc(){if("string"==typeof this.props.tinymceScriptSrc)return this.props.tinymceScriptSrc;{const e=this.props.cloudChannel;return`https://cdn.tiny.cloud/1/${this.props.apiKey?this.props.apiKey:"no-api-key"}/tinymce/${e}/tinymce.min.js`}}getInitialValue(){return"string"==typeof this.props.initialValue?this.props.initialValue:"string"==typeof this.props.value?this.props.value:""}bindHandlers(e){if(void 0!==this.editor){configHandlers(this.editor,e,this.props,this.boundHandlers,(e=>this.props[e]));const t=e=>void 0!==e.onEditorChange||void 0!==e.value,a=t(e),r=t(this.props);!a&&r?(this.editor.on(this.changeEvents(),this.handleEditorChange),this.editor.on(this.beforeInputEvent(),this.handleBeforeInput),this.editor.on("keydown",this.handleBeforeInputSpecial),this.editor.on("keyup",this.handleEditorChangeSpecial),this.editor.on("NewBlock",this.handleEditorChange)):a&&!r&&(this.editor.off(this.changeEvents(),this.handleEditorChange),this.editor.off(this.beforeInputEvent(),this.handleBeforeInput),this.editor.off("keydown",this.handleBeforeInputSpecial),this.editor.off("keyup",this.handleEditorChangeSpecial),this.editor.off("NewBlock",this.handleEditorChange))}}}var ELocale;Editor.propTypes=EditorPropTypes,Editor.defaultProps={cloudChannel:"6"},function(e){e["zh-cn"]="zh_CN",e.en="en"}(ELocale||(ELocale={}));class QmTinymce extends Component{constructor(){super(...arguments),this.defaultOption={height:400,plugins:"preview importcss searchreplace autolink autosave save directionality code visualblocks visualchars fullscreen image link media template codesample table charmap pagebreak nonbreaking anchor insertdatetime advlist lists wordcount help charmap emoticons",menubar:"file edit view insert format tools table help",toolbar:"undo redo | bold italic underline strikethrough | fontfamily fontsize blocks | alignleft aligncenter alignright alignjustify | outdent indent | numlist bullist | forecolor backcolor removeformat | pagebreak | charmap emoticons | fullscreen preview save print | insertfile image media template link anchor codesample | ltr rtl"}}render(){var e;const{size:a,className:r,style:l,tinymce:n={},upload:i={},thresholdSize:o=.5,tinymceScriptSrc:s,disabled:c,value:d,onChange:u=noop$1}=this.props,p=this.context.global,f=this.context.locale,m=a||this.context.size||"",h=getPrefixCls("tinymce"),g={[h]:!0,[`${h}--lg`]:"large"===m,[`${h}--sm`]:"small"===m},_={init:Object.assign(Object.assign({height:n.height||this.defaultOption.height,plugins:n.plugins||this.defaultOption.plugins,toolbar:n.toolbar||this.defaultOption.toolbar,menubar:n.menubar||this.defaultOption.menubar,language:ELocale[f],skin:"tinymce-5"},omit(n,["height","plugins","toolbar","menubar"])),{images_upload_handler:e=>new Promise(((a,r)=>__awaiter(this,void 0,void 0,(function*(){const{action:r,headers:l,withCredentials:n,dataKey:s}=i,c=`data:image/jpeg;base64,${e.base64()}`,d=new FormData;d.append("file",e.blob(),e.filename());const u=e.blob().size;if(r&&u/1024/1024>o)try{const{data:e}=yield axios.post(r,d,{headers:l,withCredentials:n});if(200===e.code){const t=s?get(e.data,s):e.data;a(t)}}catch(e){message.error(t("qm.uploadCropper.uploadError"))}else a(c)}))))}),value:d,disabled:c,tinymceScriptSrc:s||(null===(e=null==p?void 0:p.tinymce)||void 0===e?void 0:e.scriptSrc)||void 0,onEditorChange:(e,t)=>{u(t.getContent())}};return React__default.createElement("div",{className:classNames(g,r),style:l},React__default.createElement(Editor,_))}}QmTinymce.contextType=ConfigContext,QmTinymce.propTypes={size:(e,t,a)=>{if(!isValidComponentSize(e[t]||""))return throwError("Tinymce","Invalid prop `"+t+"` supplied to `"+a+"`. Validation failed.")}};class QmCropper extends Component{constructor(){super(...arguments),this.imgRef=React__default.createRef()}componentDidMount(){const e=__rest(this.props,["className","style","src","alt","imgStyle"]),t={};for(const a in e)void 0!==this.props[a]&&(t[a]=this.props[a]);this.cropper=new Cropper(this.imgRef.current,t)}componentWillUnmount(){this.destroy(),this.cropper=null}reset(){return this.cropper.reset()}clear(){return this.cropper.clear()}initCrop(){return this.cropper.crop()}replace(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];return this.cropper.replace(e,t)}enable(){return this.cropper.enable()}disable(){return this.cropper.disable()}destroy(){return this.cropper.destroy()}move(e,t){return this.cropper.move(e,t)}moveTo(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:e;return this.cropper.moveTo(e,t)}relativeZoom(e,t){return this.cropper.zoom(e,t)}zoomTo(e,t){return this.cropper.zoomTo(e,t)}rotate(e){return this.cropper.rotate(e)}rotateTo(e){return this.cropper.rotateTo(e)}scaleX(e){return this.cropper.scaleX(e)}scaleY(e){return this.cropper.scaleY(e)}scale(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:e;return this.cropper.scale(e,t)}getData(){let e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];return this.cropper.getData(e)}setData(e){return this.cropper.setData(e)}getContainerData(){return this.cropper.getContainerData()}getImageData(){return this.cropper.getImageData()}getCanvasData(){return this.cropper.getCanvasData()}setCanvasData(e){return this.cropper.setCanvasData(e)}getCropBoxData(){return this.cropper.getCropBoxData()}setCropBoxData(e){return this.cropper.setCropBoxData(e)}getCroppedCanvas(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return this.cropper.getCroppedCanvas(e)}setAspectRatio(e){return this.cropper.setAspectRatio(e)}setDragMode(e){return this.cropper.setDragMode(e)}render(){const{className:e,style:t,src:a,alt:r,imgStyle:l}=this.props,n={[getPrefixCls("cropper")]:!0};return React__default.createElement("div",{className:classNames(n,e),style:t},React__default.createElement("img",{ref:this.imgRef,src:a,alt:r,style:Object.assign({maxWidth:"100%"},l)}))}}QmCropper.defaultProps={src:"",responsive:!0,restore:!0,checkCrossOrigin:!0,checkOrientation:!0,modal:!0,guides:!0,center:!0,highlight:!0,background:!0,autoCrop:!0,movable:!0,rotatable:!0,scalable:!0,zoomable:!0,zoomOnTouch:!0,zoomOnWheel:!0,cropBoxMovable:!0,cropBoxResizable:!0,toggleDragModeOnDblclick:!0};class QmUploadFile extends Component{constructor(){super(...arguments),this.beforeUpload=(e,a)=>new Promise(((r,l)=>__awaiter(this,void 0,void 0,(function*(){const{fileTypes:n=[],fileSize:i,beforeUpload:o}=this.props,s=!n.length||n.includes(e.name.slice(e.name.lastIndexOf(".")+1).toLowerCase()),c=!i||e.size/1024/1024<i,d=s&&c;if(s||message.warning(t("qm.upload.tooltip",{type:n.join(",")})),c||message.warning(t("qm.upload.sizeLimit",{size:i})),!d)return d||Upload.LIST_IGNORE;if(o){const t=o(e,a);if(!0===t)return r(e);if(!1===t)return l("not upload");if(t&&"function"==typeof t.then)try{const e=yield t;r(e)}catch(e){l(e)}}r(e)}))))}downloadFile(e,t){return __awaiter(this,void 0,void 0,(function*(){const a=yield axios({url:e,responseType:"blob"}),r=a.data,l=a.headers["content-disposition"],n=t||(l?l.split(";")[1].split("filename=")[1]:e.slice(e.lastIndexOf("/")+1));download(r,n)}))}render(){const{button:e,disabled:a,onChange:r}=this.props,l=getPrefixCls("upload-file");return React__default.createElement(Upload,_extends$1({className:l},omit(this.props,["fileTypes","fileSize","button"]),{beforeUpload:this.beforeUpload,onChange:e=>{null==r||r(e)},onPreview:e=>__awaiter(this,void 0,void 0,(function*(){try{e.url&&(yield this.downloadFile(e.url,e.name))}catch(e){message.error(t("qm.download.error"))}})),onDownload:e=>__awaiter(this,void 0,void 0,(function*(){try{e.url&&(yield this.downloadFile(e.url,e.name))}catch(e){message.error(t("qm.download.error"))}}))}),this.props.children?this.props.children:React__default.createElement(Button,{icon:(null==e?void 0:e.icon)||React__default.createElement(UploadOutlined,null),disabled:a},(null==e?void 0:e.text)||t("qm.upload.text")))}}QmUploadFile.defaultProps={name:"file",multiple:!0,showUploadList:{showDownloadIcon:!0,downloadIcon:React__default.createElement(DownloadOutlined,null)}};const MODAL_WIDTH=790,PREVIEW_WIDTH=380,IMG_MAX_WIDTH=1920;class CropperPreview extends Component{constructor(){super(...arguments),this.cropperRef=React__default.createRef(),this.state={src:""},this.confirmHandle=()=>__awaiter(this,void 0,void 0,(function*(){const{quality:e}=this.props,{type:a,name:r,uid:l}=this.fileRef;this.cropperRef.current.getCroppedCanvas({maxWidth:IMG_MAX_WIDTH,fillColor:"image/png"===a?"transparent":"#fff",imageSmoothingEnabled:!1,imageSmoothingQuality:"high"}).toBlob((e=>__awaiter(this,void 0,void 0,(function*(){let n=new File([e],r,{type:a});n.uid=l;const{fileTypes:i=[],fileSize:o}=this.props;if(!(!i.length||i.includes(n.name.slice(n.name.lastIndexOf(".")+1).toLowerCase())))return message.warning(t("qm.upload.tooltip",{type:i.join(",")})),this.rejectRef("file type is error");if("function"!=typeof this.beforeUploadRef)return this.resolveRef(n);const s=this.beforeUploadRef(n,[n]);if("boolean"==typeof s||s){if(!0===s)return this.resolveRef(n);if(!1===s)return this.rejectRef("not upload");if(s&&"function"==typeof s.then)try{const e=yield s,t=Object.prototype.toString.call(e);"[object File]"!==t&&"[object Blob]"!==t||(n=e),this.resolveRef(n)}catch(e){this.rejectRef(e)}}else warn("CropperPreview","`beforeUpload` 必须返回 `boolean` 或 `Promise` 类型")}))),a,e),yield sleep(100),this.onClose()})),this.onOk=()=>{this.confirmHandle()},this.onClose=()=>{this.rejectRef(),this.setSrc("")}}get previewSize(){const{fixedSize:e}=this.props;return{width:`${PREVIEW_WIDTH}px`,height:e?`calc(${PREVIEW_WIDTH}px * ${e[1]/e[0]})`:"auto"}}setSrc(e){this.setState({src:e})}renderUpload(){const{children:e,beforeCrop:t}=this.props,a=Array.isArray(e)?e[0]:e;if(!a)return null;const r=a.props,{beforeUpload:l}=r,n=__rest(r,["beforeUpload"]);return this.beforeUploadRef=l,React__default.createElement(a.type,Object.assign(Object.assign({},n),{beforeUpload:(e,a)=>new Promise(((r,l)=>__awaiter(this,void 0,void 0,(function*(){if(t&&!(yield t(e,a)))return void l();this.fileRef=e,this.resolveRef=r,this.rejectRef=l;const n=new FileReader;n.onload=()=>{this.setSrc(n.result),n.onload=null},n.readAsDataURL(e)}))))}))}scaleHandle(e){this.cropperRef.current.relativeZoom(e,void 0)}rotateHandle(e){this.cropperRef.current.rotate(e)}renderCropper(){const{fixedSize:e}=this.props;return React__default.createElement("div",{className:"cropper-preview"},React__default.createElement("div",{className:"cropper-area"},React__default.createElement("div",{className:"img-cropper"},React__default.createElement(QmCropper,{ref:this.cropperRef,aspectRatio:e?e[0]/e[1]:e,src:this.state.src,dragMode:"move",preview:".preview"})),React__default.createElement("div",{className:"actions"},React__default.createElement(Space,{size:"small"},React__default.createElement(Button,{type:"primary",size:"middle",icon:React__default.createElement(ZoomInOutlined,null),onClick:()=>this.scaleHandle(.2)},t("qm.uploadCropper.zoomIn")),React__default.createElement(Button,{type:"primary",size:"middle",icon:React__default.createElement(ZoomOutOutlined,null),onClick:()=>this.scaleHandle(-.2)},t("qm.uploadCropper.zoomOut")),React__default.createElement(Button,{type:"primary",size:"middle",icon:React__default.createElement(RotateRightOutlined,null),onClick:()=>this.rotateHandle(90)},t("qm.uploadCropper.rotatePlus")),React__default.createElement(Button,{type:"primary",size:"middle",icon:React__default.createElement(RotateLeftOutlined,null),onClick:()=>this.rotateHandle(-90)},t("qm.uploadCropper.rotateSubtract"))))),React__default.createElement("div",{className:"preview-area"},React__default.createElement("div",{className:"preview",style:this.previewSize})))}render(){const{src:e}=this.state,a=getPrefixCls("cropper-preview");return React__default.createElement(React__default.Fragment,null,this.renderUpload(),e&&React__default.createElement(Modal,{visible:!0,wrapClassName:classNames(a),title:t("qm.uploadCropper.cropper"),width:MODAL_WIDTH,bodyStyle:{padding:10},onOk:this.onOk,onCancel:this.onClose,maskClosable:!1,destroyOnClose:!0},this.renderCropper()))}}CropperPreview.contextType=ConfigContext;const getBase64=e=>new Promise(((t,a)=>{const r=new FileReader;r.readAsDataURL(e),r.onload=()=>t(r.result),r.onerror=e=>a(e)}));class QmUploadImg extends Component{constructor(){super(...arguments),this.state={previewVisible:!1,previewImage:"",previewTitle:""},this.beforeUpload=(e,a)=>new Promise(((a,r)=>__awaiter(this,void 0,void 0,(function*(){const{fileTypes:r=[],fileSize:l}=this.props,n=!r.length||r.includes(e.name.slice(e.name.lastIndexOf(".")+1).toLowerCase()),i=!l||e.size/1024/1024<l,o=n&&i;if(n||message.warning(t("qm.upload.tooltip",{type:r.join(",")})),i||message.warning(t("qm.upload.sizeLimit",{size:l})),!o)return o||Upload.LIST_IGNORE;a(e)})))),this.handlePreview=e=>__awaiter(this,void 0,void 0,(function*(){e.url||e.preview||(e.preview=yield getBase64(e.originFileObj)),this.setState({previewImage:e.url||e.preview,previewVisible:!0,previewTitle:e.name||e.url.substring(e.url.lastIndexOf("/")+1)})}))}get showUploadButton(){var e,t;const a=null!==(t=null===(e=this.props.fileList)||void 0===e?void 0:e.length)&&void 0!==t?t:0;return!this.props.maxCount||a<this.props.maxCount}render(){const{previewVisible:e,previewImage:a,previewTitle:r}=this.state,{fixedSize:l,quality:n,fileTypes:i,fileSize:o,openCropper:s,beforeCrop:c}=this.props,d=getPrefixCls("upload-img"),u=React__default.createElement("div",null,React__default.createElement(PlusOutlined,null),React__default.createElement("div",{style:{marginTop:8}},t("qm.uploadCropper.dragableText"))),p=React__default.createElement(Upload,_extends$1({className:d},omit(this.props,["fileTypes","fileSize","fixedSize","quality"]),{beforeUpload:this.beforeUpload,onPreview:this.handlePreview}),this.showUploadButton?u:null);return React__default.createElement(React__default.Fragment,null,s?React__default.createElement(CropperPreview,{fixedSize:l,quality:n,fileTypes:i,fileSize:o,beforeCrop:c},p):p,React__default.createElement(Modal,{visible:e,title:r,bodyStyle:{padding:10},footer:null,onCancel:()=>{this.setState({previewVisible:!1})}},React__default.createElement("img",{alt:"",style:{width:"100%"},src:a})))}}function useResizeObserve(e){const[t,a]=React.useState({width:0,height:0});return React.useEffect((()=>{const t=e.current,r=e=>{const{inlineSize:t,blockSize:r}=e.contentBoxSize[0];a({width:t,height:r})};return t&&addResizeListener(t,r),()=>{t&&removeResizeListener(t,r)}}),[e]),t}QmUploadImg.defaultProps={name:"file",multiple:!0,accept:"image/*",listType:"picture-card",quality:1,openCropper:!0};const getParentKey=(e,t,a)=>{let r;for(let l=0;l<e.length;l++){const n=e[l];if(n.children)if(n.children.some((e=>e[a]===t)))r=n[a];else{const e=getParentKey(n.children,t,a);e&&(r=e)}}return r},treeFilter$1=(e,t)=>e.map((e=>Object.assign({},e))).filter((e=>(e.children=e.children&&treeFilter$1(e.children,t),t(e)||e.children&&e.children.length))),deepFindList=(e,t)=>{const a=[];return e.forEach((e=>{e.children&&a.push(...deepFindList(e.children,t)),t(e)&&a.push(e)})),a},deepFindNode=(e,t)=>{let a=null;for(let r=0;r<e.length;r++){if(Array.isArray(e[r].children)&&(a=deepFindNode(e[r].children,t)),a)return a;if(t(e[r]))return e[r]}return a},updateTreeData=(e,t,a,r)=>e.map((e=>e[a]===t?Object.assign(Object.assign({},e),{children:r}):e.children?Object.assign(Object.assign({},e),{children:updateTreeData(e.children,t,a,r)}):e)),getAllParentKey$1=(e,t)=>{const a=[];return e.forEach((e=>{e.children&&a.push(...getAllParentKey$1(e.children,t)),Array.isArray(e.children)&&e.children.length&&a.push(e[t])})),a},getParentKeys=(e,t,a)=>{for(let r=0;r<e.length;r++){if(e[r][a]===t)return[t];if(Array.isArray(e[r].children)){const l=getParentKeys(e[r].children,t,a);if(l)return[e[r][a],l].flat()}}},getChildKeys=(e,t)=>{var a;const r=(null===(a=e.children)||void 0===a?void 0:a.map((e=>e[t])))||[];return Array.isArray(e.children)&&e.children.forEach((e=>r.push(...getChildKeys(e,t)))),r},SearchTree=React__default.forwardRef(((e,a)=>{const{filterable:r=!0,multiple:l,draggable:n,dataSource:i,fetch:o,asyncLoad:s,checkStrictly:c,checkStrategy:d="SHOW_CHILD",placeholder:u=t("qm.form.inputPlaceholder"),fieldsDefine:p,value:f,height:m,defaultSelectedKeys:h=[],defaultExpandAll:g=!0,showSearchBar:_=!0,showCollapse:y=!0,onSelectChange:v,onCheckChange:b,onDragChange:R}=e,{size:E}=React__default.useContext(ConfigContext);React__default.useMemo((()=>{var t,a;return null!==(a=null!==(t=e.size)&&void 0!==t?t:E)&&void 0!==a?a:""}),[e.size,E]);const x=(null==p?void 0:p.valueKey)||"value",C=(null==p?void 0:p.textKey)||"text";null==p||p.children;const T=React__default.useRef(null),S=useResizeObserve(T),[w,P]=React__default.useState(m),[N,I]=React__default.useState(!1),A=debounce((()=>{P(T.current.offsetHeight-K.current.offsetHeight-10)}),5);useUpdateEffect((()=>{m||A()}),[S.height]);const[$,O]=React__default.useState([]),[F,L]=React__default.useState({}),[D,k]=React__default.useState([]),[H,V]=React__default.useState([]),[M,j]=React__default.useState(""),[q,U]=React__default.useState(!0),K=React__default.useRef(null),B=React__default.useRef([]),z=React__default.useRef([]);React__default.useEffect((()=>{Array.isArray(i)&&(W(i),k(G(i)),L({}))}),[i]),React__default.useEffect((()=>{X()}),[]),useUpdateEffect((()=>{X()}),[null==o?void 0:o.params]),useUpdateEffect((()=>{V(Y())}),[F]),React__default.useImperativeHandle(a,(()=>({INSERT_RECORD:(e,t)=>{const a=deepFindNode($,(t=>e===t[x]));a&&(Array.isArray(a.children)?a.children.push(t):a.children=[t],W([...$]))},REMOVE_RECORD:e=>{var t;const a=getParentKey($,e,x);if(void 0===a&&$.find((t=>t[x]===e)))W($.filter((t=>t[x]!==e)));else{const r=deepFindNode($,(e=>a===e[x]));if(!r)return;const l=null===(t=r.children)||void 0===t?void 0:t.findIndex((t=>e===t[x]));l>=0&&(r.children.splice(l,1),W([...$]))}},UPDATE_RECORD:(e,t)=>{const a=deepFindNode($,(t=>e===t[x]));a&&(merge(a,t),W([...$]))}})));const W=e=>{O(e),B.current=e,z.current=getAllParentKey$1(e,x)},G=e=>{if(l)return h;const t=deepFindList(e,(e=>h.includes(e[C])));return 1===t.length?[t[0][x]]:[]},Q=e=>{var t;return(null===(t=getParentKeys($,e,x))||void 0===t?void 0:t.slice(0,-1))||[]},Y=()=>{if(g)return z.current;const e=[];return D.forEach((t=>{if(l){if("SHOW_ALL"===d&&!z.current.includes(t)&&e.push(...Q(t)),"SHOW_CHILD"===d&&e.push(...Q(t)),"SHOW_PARENT"===d){const a=deepFind$1($,t);if(a){const r=Q(t),l=getChildKeys(a,x);e.push(...r,...[t,...l].filter((e=>z.current.includes(e))))}}}else e.push(...Q(t))})),[...new Set(e)]},X=()=>__awaiter(void 0,void 0,void 0,(function*(){var e;if(!o)return;const{api:t,params:a,dataKey:r,callback:l}=o;try{I(!0);const n=yield t(a);if(200===n.code){const t=Array.isArray(n.data)?n.data:null!==(e=get(n.data,r))&&void 0!==e?e:[];W(t),k(G(t)),L({}),null==l||l(t)}}catch(e){}I(!1)})),Z=e=>`${e}|${pinyin.parse(e).map((e=>2===e.type?e.target.toLowerCase().slice(0,1):e.target)).join("")}`,J=getPrefixCls("search-tree");return React__default.createElement("div",{ref:T,className:`${J}`},React__default.createElement("div",{ref:K,className:"topper"},_&&React__default.createElement(Input.Search,{value:M,placeholder:u,allowClear:!0,onChange:e=>(e=>{if(!r)return;const t=treeFilter$1(B.current,(t=>{if(!e)return!0;const a=t[C]||"";return-1!==Z(a).indexOf(e)}));j(e),O(t),g||e?V(getAllParentKey$1(t,x)):L({})})(e.target.value)}),y&&React__default.createElement("a",{className:"trigger",onClick:()=>{U(!q),q?V([]):L({})}},q?React__default.createElement(UpOutlined,null):React__default.createElement(DownOutlined,null)," ",t(q?"qm.form.collect":"qm.form.spread"))),React__default.createElement(QmSpin,{spinning:N},React__default.createElement(Tree,{fieldNames:{title:C,key:x,children:"children"},multiple:l,draggable:n,blockNode:n,checkable:l,selectable:!l,height:w,disabled:e.disabled,checkStrictly:c,selectedKeys:null!=f?f:D,checkedKeys:null!=f?f:D,expandedKeys:H,treeData:$,loadData:s?e=>{let{key:t,children:a}=e;return __awaiter(void 0,void 0,void 0,(function*(){var e;if(!o||a)return;const{api:r,params:l,dataKey:n,formatter:i=(e=>e)}=o;try{const a=yield r(i(Object.assign(Object.assign({},l),{[x]:t})));if(200===a.code){const r=Array.isArray(a.data)?a.data:null!==(e=get(a.data,n))&&void 0!==e?e:[],l=updateTreeData(B.current,t,x,r);W(l)}}catch(e){}}))}:void 0,titleRender:e.titleRender,filterTreeNode:e=>{if(!M)return!1;const t=e[C]||"";return-1!==Z(t).indexOf(M)},onDragEnter:e=>{V(e.expandedKeys)},onDrop:e=>{const t=e.node.key,a=e.dragNode.key,r=e.node.pos.split("-"),l=e.dropPosition-Number(r[r.length-1]),n=(e,t,a)=>{for(let r=0;r<e.length;r++){if(e[r][x]===t)return a(e[r],r,e);e[r].children&&n(e[r].children,t,a)}},i=[...$];let o;if(n(i,a,((e,t,a)=>{a.splice(t,1),o=e})),e.dropToGap)if((e.node.children||[]).length>0&&e.node.expanded&&1===l)n(i,t,(e=>{e.children=e.children||[],e.children.unshift(o)}));else{let e,a=[];n(i,t,((t,r,l)=>{a=l,e=r})),-1===l?a.splice(e,0,o):a.splice(e+1,0,o)}else n(i,t,(e=>{e.children=e.children||[],e.children.unshift(o)}));W(i)},onDragEnd:e=>{null==R||R(e,$)},onExpand:e=>{V(e)},onSelect:e=>{k(e);const t=deepFindList(B.current,(t=>e.includes(get(t,x))));null==v||v(l?t:t[0])},onCheck:e=>{c&&(e=e.checked),k(e),"SHOW_CHILD"===d&&(e=e.filter((e=>!z.current.includes(e)))),"SHOW_PARENT"===d&&(e=e.filter(((e,t,a)=>!a.includes(getParentKey($,e,x)))));const t=deepFindList(B.current,(t=>e.includes(get(t,x))));null==b||b(l?t:t[0])}})))}));SearchTree.displayName="SearchTree";const TableContext=createContext(void 0),columnItem={dataIndex:PropTypes__default.string.isRequired,title:PropTypes__default.string.isRequired,description:PropTypes__default.string,colSpan:PropTypes__default.number,width:PropTypes__default.number,minWidth:PropTypes__default.number,fixed:PropTypes__default.oneOf(["left","right"]),align:PropTypes__default.oneOf(["left","center","right"]),theadAlign:PropTypes__default.oneOf(["left","center","right"]),printFixed:PropTypes__default.bool,hidden:PropTypes__default.bool,noAuth:PropTypes__default.bool,noFixed:PropTypes__default.bool,ellipsis:PropTypes__default.bool,className:PropTypes__default.string,theadClassName:PropTypes__default.string,children:PropTypes__default.array,sorter:PropTypes__default.oneOfType([PropTypes__default.bool,PropTypes__default.func]),filter:PropTypes__default.shape({type:PropTypes__default.oneOf(["text","textarea","checkbox","radio","number","date","tree"]).isRequired,items:PropTypes__default.arrayOf(PropTypes__default.shape({text:PropTypes__default.string,value:PropTypes__default.oneOfType([PropTypes__default.string,PropTypes__default.number])})),style:PropTypes__default.object}),precision:PropTypes__default.number,formatType:PropTypes__default.oneOf(["date","datetime","dateShortTime","finance","percent","secret-name","secret-phone","secret-IDnumber","secret-bankNumber"]),required:PropTypes__default.bool,canCopy:PropTypes__default.bool,editRender:PropTypes__default.func,dictItems:PropTypes__default.arrayOf(PropTypes__default.shape({text:PropTypes__default.string,value:PropTypes__default.oneOfType([PropTypes__default.string,PropTypes__default.number])})),summation:PropTypes__default.shape({sumBySelection:PropTypes__default.bool,displayWhenNotSelect:PropTypes__default.bool,dataKey:PropTypes__default.string,unit:PropTypes__default.string,render:PropTypes__default.func}),groupSummary:PropTypes__default.shape({dataKey:PropTypes__default.string,unit:PropTypes__default.string,render:PropTypes__default.func}),headRender:PropTypes__default.func,render:PropTypes__default.func};PropTypes__default.arrayOf(PropTypes__default.shape(columnItem)).isRequired,PropTypes__default.func,PropTypes__default.array,PropTypes__default.oneOfType([PropTypes__default.string,PropTypes__default.func]).isRequired,PropTypes__default.bool,PropTypes__default.bool,PropTypes__default.shape({api:PropTypes__default.func.isRequired,params:PropTypes__default.object.isRequired,formatter:PropTypes__default.func,beforeFetch:PropTypes__default.func,afterFetch:PropTypes__default.func,stopToFirst:PropTypes__default.bool,dataKey:PropTypes__default.string,callback:PropTypes__default.func}),PropTypes__default.bool,PropTypes__default.bool,PropTypes__default.string,PropTypes__default.string,PropTypes__default.bool,PropTypes__default.bool,PropTypes__default.oneOfType([PropTypes__default.object,PropTypes__default.func]),PropTypes__default.oneOfType([PropTypes__default.object,PropTypes__default.func]),PropTypes__default.array,PropTypes__default.func,PropTypes__default.bool,PropTypes__default.bool,PropTypes__default.shape({type:PropTypes__default.oneOf(["checkbox","radio"]).isRequired,defaultSelectedRowKeys:PropTypes__default.array,selectedRowKeys:PropTypes__default.array,hideSelectAll:PropTypes__default.bool,checkStrictly:PropTypes__default.bool,filterable:PropTypes__default.bool,selectByClickRow:PropTypes__default.bool,selectFirstRowOnChange:PropTypes__default.bool,clearableAfterFetched:PropTypes__default.bool,selectAllOnCurrentPage:PropTypes__default.bool,fetchSelectedRows:PropTypes__default.shape({api:PropTypes__default.func.isRequired,params:PropTypes__default.object,dataKey:PropTypes__default.string}),fetchAllRowKeys:PropTypes__default.shape({api:PropTypes__default.func.isRequired,params:PropTypes__default.object,dataKey:PropTypes__default.string}),disabled:PropTypes__default.func,onChange:PropTypes__default.func,onSelect:PropTypes__default.func,onSelectAll:PropTypes__default.func}),PropTypes__default.shape({currentRowKey:PropTypes__default.oneOfType([PropTypes__default.number,PropTypes__default.string]),disabled:PropTypes__default.func,onChange:PropTypes__default.func}),PropTypes__default.shape({virtual:PropTypes__default.bool}),PropTypes__default.shape({defaultExpandAllRows:PropTypes__default.bool,defaultExpandedRowKeys:PropTypes__default.array,expandedRowKeys:PropTypes__default.array,hideExpandAll:PropTypes__default.bool,rowExpandable:PropTypes__default.func,expandedRowClassName:PropTypes__default.string,expandedRowRender:PropTypes__default.func,onExpand:PropTypes__default.func,onChange:PropTypes__default.func}),PropTypes__default.shape({groupItems:PropTypes__default.arrayOf(PropTypes__default.shape({dataIndex:PropTypes__default.string.isRequired,titleIndex:PropTypes__default.string,color:PropTypes__default.string,backgroundColor:PropTypes__default.string})),fetch:PropTypes__default.shape({api:PropTypes__default.func.isRequired,params:PropTypes__default.object,dataKey:PropTypes__default.string}),onChange:PropTypes__default.func}),PropTypes__default.func,PropTypes__default.bool,PropTypes__default.bool,PropTypes__default.bool,PropTypes__default.bool,PropTypes__default.shape({current:PropTypes__default.number,pageSize:PropTypes__default.number,pageSizeOptions:PropTypes__default.array,showSizeChanger:PropTypes__default.bool,showQuickJumper:PropTypes__default.bool}),PropTypes__default.shape({fileName:PropTypes__default.string,fetch:PropTypes__default.shape({api:PropTypes__default.func.isRequired,params:PropTypes__default.object}),cellStyle:PropTypes__default.bool,hideIcon:PropTypes__default.bool}),PropTypes__default.shape({showLogo:PropTypes__default.bool}),PropTypes__default.shape({fetch:PropTypes__default.shape({api:PropTypes__default.func.isRequired,params:PropTypes__default.object,dataKey:PropTypes__default.string}),fieldList:PropTypes__default.arrayOf(PropTypes__default.object)}),PropTypes__default.shape({position:PropTypes__default.oneOf(["top","bottom"]),hideAlert:PropTypes__default.bool,hideClearButton:PropTypes__default.bool}),PropTypes__default.oneOf(["left","right"]),PropTypes__default.func,PropTypes__default.func,PropTypes__default.bool,PropTypes__default.bool,PropTypes__default.bool,PropTypes__default.bool,PropTypes__default.bool,PropTypes__default.bool,PropTypes__default.bool,PropTypes__default.bool,PropTypes__default.bool,PropTypes__default.bool,PropTypes__default.bool,PropTypes__default.bool,PropTypes__default.func,PropTypes__default.func,PropTypes__default.func,PropTypes__default.func,PropTypes__default.func,PropTypes__default.func,PropTypes__default.func,PropTypes__default.func,PropTypes__default.func;const defaultProps={columns:[],dataSource:[],rowKey:"id",border:!0,resizable:!0,showHeader:!0,ellipsis:!0,multipleSort:!0,topSpaceAlign:"right",showFullScreen:!0,showRefresh:!0,showClipboard:!0,showSelectCollection:!0,showSuperSearch:!0,showFastSearch:!0,showGroupSummary:!0,showColumnDefine:!0,showTableInfo:!0},DEFAULT_DISTANCE=10,DEFAULT_TRUE_VALUE="1",DEFAULT_FALSE_VALUE="0",EMPTY_MIN_HEIGHT=100,MIN_POPPER_WIDTH=150,DATE_FORMAT="YYYY-MM-DD",DATE_TIME_FORMAT="YYYY-MM-DD HH:mm:ss",TIME_FORMAT="HH:mm:ss",DEFAULT_FILENAME_FORMAT="YYYYMMDDHHmmss",BUILT_IN_PLACEMENTS={bottomRight:{points:["tr","br"],offset:[0,4],overflow:{adjustX:1,adjustY:1}},bottomLeft:{points:["tl","bl"],offset:[0,4],overflow:{adjustX:1,adjustY:1}}};var EAlign;!function(e){e.left="flex-start",e.right="flex-end"}(EAlign||(EAlign={}));let instances=[];const TableManager={getFocusInstance:function(){var e;return null!==(e=instances[0])&&void 0!==e?e:null},getInstance:function(e){var t;return null!==(t=instances.find((t=>t.id===e)))&&void 0!==t?t:null},focus:function(e){const t=this.getInstance(e);t&&0!==instances.findIndex((e=>e===t))&&(this.deregister(e),instances=[t,...instances])},register:function(e,t){e&&t&&(null!==this.getInstance(e)&&this.deregister(e),instances=[{id:e,vm:t},...instances])},deregister:function(e){e&&(instances=instances.filter((t=>t.id!==e)))}},conjuctions=["&&","||","AND","OR","and","or","like","likes","in","nin","LIKE","LIKES","IN","NIN"];var sf={operations:function(e){const t=e.split(" "),a=[];let r=0;a[r]=[];for(let e=0;e<t.length;e++)conjuctions.includes(t[e])?(a[r]=a[r].join(" "),r++,a[r]=[]):a[r].push(t[e]);return a[r]=a[r].join(" "),a},number_operations:function(e){return this.operations(e).length},string_format:function(e){return"string"!=typeof e?e:e.split(/[\s'\s"]/).join("")},stringify:function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:" ";return"string"==typeof e?"'"+e.trim().replace(/(')/g,"\\$1").replace(/\(/g,"├").replace(/\)/g,"┤").replace(/\s/g,t)+"'":e},array_format:function(e){let t="[";for(let a=0,r=(e=Array.isArray(e)?e:[e]).length;a<r;a++)t+="number"==typeof e[a]?e[a]:"'"+e[a]+"'",a<r-1&&(t+=",");return t+="]",t},operation_format:function(e){const t=e.split(" ");for(let e=0;e<t.length;e++)""==t[e]&&(t.splice(e,1),e--);if("("==t[0]?t.splice(0,1):"("==t[0][0]&&(t[0]=t[0].split(""),t[0].splice(0,1),t[0]=t[0].join("")),")"==t[t.length-1])t.splice(t.length-1,1);else if(")"==t[t.length-1][t[t.length-1].length-1]){const e=t.length-1;t[e]=t[e].split(""),t[e].splice(t[e].length-1,1).join(""),t[e]=t[e].join("")}return t},find_replace:function(e,t,a){return e.split(t).join(a)},replace_symbols:function(e){return e=this.find_replace(e," AND "," && "),e=this.find_replace(e," and "," && "),e=this.find_replace(e," OR "," || "),e=this.find_replace(e," or "," || "),e=this.find_replace(e," <> "," != "),e=this.find_replace(e," LIKE "," like "),e=this.find_replace(e," LIKES "," likes "),e=this.find_replace(e," IN "," in "),e=this.find_replace(e," NIN "," nin ")}};const operations=["==","<",">","<=",">=","!=","like","likes","in","nin"];var vr={isBracketBalance:function(e){let t=0;const a=e.length;for(let r=0;r<a;r++){const a=e.charAt(r);"("===a&&t++,")"===a&&t--}return 0===t},replace_variables:function(e,t){let a="";for(let t=0;t<e.length;t++)"("==e[t]||")"==e[t]?a+=" "+e[t]+" ":a+=e[t];const r=a.split(" ").filter((e=>""!==e));for(let e=0;e<r.length;e++)operations.includes(r[e])&&("this"!=r[e-1]?r[e-1]=t+"."+r[e-1]:r[e-1]=t),operations.includes(r[e])&&(r.splice(e-1,3,`__query__(${r[e-1]}, '${r[e]}', ${r[e+1]})`),e-=2);return e=r.join(" ")}};const SPAN_CHAR_REG=/(\^|\.|\[|\]|\$|\(|\)|\||\*|\+|\?|\{|\}|\\)/g,PRIMITIVE_VALUES=["string","number","boolean","symbol"],escapeKeyword=e=>e.toString().replace(SPAN_CHAR_REG,"\\$1"),isPrimitive=e=>PRIMITIVE_VALUES.includes(typeof e),isDate$1=e=>"string"==typeof e&&/^\d{4}-\d{2}-\d{2}(\s+\d{2}:\d{2}:\d{2})?$/.test(e),createRegExp=e=>new RegExp(escapeKeyword(e.replace(/├/g,"(").replace(/┤/g,")").replace(/\^/g," ")),"i"),matchWhere=(e,t,a)=>{e=null!=e?e:"";let r=!0;switch(t){case"like":r=null!==e.toString().match(createRegExp(a));break;case"likes":r=a.split(/,|,/).some((t=>null!==e.toString().match(createRegExp(t))));break;case"in":isPrimitive(a)&&(a=[a]),Array.isArray(a)&&(r=Array.isArray(e)?a.every((t=>e.includes(t))):a.includes(e));break;case"nin":isPrimitive(a)&&(a=[a]),Array.isArray(a)&&(r=!(Array.isArray(e)?a.some((t=>e.includes(t))):a.includes(e)));break;case"!=":case"<>":r=(isDate$1(e)?e.slice(0,10):e)!=a;break;case"<":r=(isDate$1(e)?e.slice(0,10):e)<a;break;case"<=":r=(isDate$1(e)?e.slice(0,10):e)<=a;break;case">":r=(isDate$1(e)?e.slice(0,10):e)>a;break;case">=":r=(isDate$1(e)?e.slice(0,10):e)>=a;break;default:r=(isDate$1(e)?e.slice(0,10):e)==a}return r};window.__query__=function(){return matchWhere(arguments.length<=0?void 0:arguments[0],arguments.length<=1?void 0:arguments[1],arguments.length<=2?void 0:arguments[2])};const stringify=sf.stringify,array_format=sf.array_format,isBracketBalance=vr.isBracketBalance,where=(array,query,isTree)=>{let result=[];if(query=sf.replace_symbols(query),isTree)query=vr.replace_variables(query,"record"),result=deepTreeFilter(array,(record=>eval(query)));else{query=vr.replace_variables(query,"array[i]");for(let i=0,len=array.length;i<len;i++)eval(query)&&result.push(array[i])}return result},columnsFlatMap=e=>{const t=[];return e.forEach((e=>{e.children?t.push(...columnsFlatMap(e.children)):t.push(e)})),t},createFilterColumns=e=>e.filter((e=>(e.children&&(e.children=createFilterColumns(e.children)),!e.hidden&&!e.noAuth))),getAllColumns=e=>{const t=[];return e.forEach((e=>{t.push(e),e.children&&t.push(...getAllColumns(e.children))})),t},mapTableColumns=(e,t)=>e.map((e=>(e.children&&(e.children=mapTableColumns(e.children,t)),null==t||t(e),e))),deepFindColumn=(e,t)=>{let a=null;for(let r=0;r<e.length;r++){if(e[r].children&&(a=deepFindColumn(e[r].children,t)),a)return a;if(e[r].dataIndex===t)return e[r]}return a},findFirstColumn=e=>{const t=e.children;return t?t[0].children?findFirstColumn(t[0]):t[0]:e},findLastColumn=e=>{const t=e.children;return t?t[t.length-1].children?findLastColumn(t[t.length-1]):t[t.length-1]:e},filterTableColumns=(e,t)=>e.filter((e=>!t.includes(e.dataIndex))),deepFindRowKey=(e,t)=>{let a=null;for(let r=0;r<e.length;r++){if(e[r].children&&(a=deepFindRowKey(e[r].children,t)),a)return a;if(e[r].rowKey===t)return e[r]}return a},getAllTableData=e=>{const t=[];return e.forEach((e=>{t.push(e),e.children&&t.push(...getAllTableData(e.children))})),t},convertToRows=e=>{let t=1;const a=(e,r)=>{var l;if(r&&(e.level=r.level+1,t<e.level&&(t=e.level)),e.children){let t=0;e.children.forEach((r=>{e.fixed?r.fixed=e.fixed:delete r.fixed,a(r,e),t+=r.colSpan})),e.colSpan=t}else e.colSpan=null!==(l=e.colSpan)&&void 0!==l?l:1};e.forEach((e=>{e.level=1,a(e,null)}));const r=[];for(let e=0;e<t;e++)r.push([]);return getAllColumns(e).forEach((e=>{e.children?e.rowSpan=1:e.rowSpan=t-e.level+1,r[e.level-1].push(e)})),r},getNodeOffset=function(e,t){let a=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{left:0,top:0};if(e){const r=e.parentNode;if(a.top+=e.offsetTop,a.left+=e.offsetLeft,r&&r!==document.documentElement&&r!==document.body&&(a.top-=r.scrollTop,a.left-=r.scrollLeft),(!t||e!==t&&e.offsetParent!==t)&&e.offsetParent)return getNodeOffset(e.offsetParent,t,a)}return a},parseHeight=e=>"number"==typeof e?e:"string"==typeof e?/^\d+(?:px)?$/.test(e)?Number.parseInt(e,10):e:null,difference=(e,t)=>transform(e,((e,a,r)=>{isEqual$1(a,t[r])||(e[r]=isPlainObject(a)&&isPlainObject(t[r])?difference(a,t[r]):a)})),isArrayContain=(e,t)=>intersection(e,t).length===t.length,getCellValue=(e,t)=>{var a;return null!==(a=get(e,t))&&void 0!==a?a:""},setCellValue=(e,t,a,r)=>{r>=0&&null!=a&&(a=Number(a).toFixed(r)),set(e,t,null!=a?a:"")},getSplitValue=(e,t)=>{if(!t.includes("|"))return getCellValue(e,t);const a=[];return t.split("|").forEach((t=>{t&&a.push(getCellValue(e,t))})),a.join(" | ")},formatNumber=e=>{const t=(e=e.toString()).split("."),a="-"===t[0].charAt(0)?"-":"";let r=a?t[0].slice(1):t[0],l="";for(;r.length>3;)l=`,${r.slice(-3)}${l}`,r=r.slice(0,r.length-3);return r&&(l=r+l),`${a}${l}${t[1]?`.${t[1]}`:""}`},getDate=(e,t)=>e?dayjs(e,t):null,formatDate=(e,t)=>e?dayjs(e).format(t):"",createUidKey=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"";const t="xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,(e=>{const t=16*Math.random()|0;return("x"==e?t:3&t|8).toString(16)}));return e+t},getVNodeText=e=>{const t=[];if(isValidElement(e)){const{children:a}=e.props;Array.isArray(a)?a.forEach((e=>t.push(...getVNodeText(e)))):a&&t.push(...getVNodeText(a))}else t.push(e);return t},getGroupValidData=e=>e.filter((e=>!e._group)),createOrderBy=e=>{const t=[];return Object.keys(e).forEach((a=>{null!==e[a]&&t.push(`${a}|${e[a]}`)})),t.join(",")},createWhereSQL=function(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1],a="";if(Array.isArray(e)){let r=0;for(let l=0,n=e.length;l<n;l++){const n=e[l];if(!n.fieldName)continue;const i=Array.isArray(n.condition)?array_format(n.condition):stringify(n.condition,"^");a+=`${n.bracketLeft} ${t?`${n.fieldName}|${n.fieldType}`:n.fieldName} ${n.expression} ${i} ${n.bracketRight} ${n.logic} `,r=n.logic.length}a=a.slice(0,-1*r-2)}else{const r=5;for(const r in e){const[l,n]=r.includes("|")?r.split("|"):[r,""],i=e[r];for(const e in i){const r=Array.isArray(i[e])?array_format(i[e]):stringify(i[e],"^");"''"!==r&&"[]"!==r&&(a+=`${t?`${l}|${n}`:l} ${e} ${r} and `)}}a=a.slice(0,-1*r)}return a.replace(/\s+/g," ").trim()},groupByProps=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[];const a=e=>{const a=[];return t.forEach((t=>a.push(getCellValue(e,t)))),a},r={};return e.forEach((e=>{const t=JSON.stringify(a(e));r[t]=r[t]||[],r[t].push(e)})),Object.keys(r).map((e=>r[e]))},deepGetRowkey=(e,t)=>{for(let a=0;a<e.length;a++){if(e[a].rowKey===t)return[t];if(Array.isArray(e[a].children)){const r=deepGetRowkey(e[a].children,t);if(r)return[e[a].rowKey,r].flat()}}},deepFindRecord=(e,t)=>{let a=null;for(let r=0;r<e.length;r++){if(Array.isArray(e[r].children)&&(a=deepFindRecord(e[r].children,t)),a)return a;if(t(e[r]))return e[r]}return a},deepTreeFilter=(e,t)=>e.map((e=>Object.assign({},e))).filter((e=>(e.children=e.children&&deepTreeFilter(e.children,t),t(e)||e.children&&e.children.length)));class Store{constructor(){this.state={required:[],validate:[],edited:[],inserted:[],updated:[],removed:[]},this.addToRequired=e=>{-1===this.state.required.findIndex((t=>t.x===e.x&&t.y===e.y))&&this.state.required.push(e)},this.removeFromRequired=e=>{const t=this.state.required.findIndex((t=>t.x===e.x&&t.y===e.y));t<0||this.state.required.splice(t,1)},this.addToValidate=e=>{-1===this.state.validate.findIndex((t=>t.x===e.x&&t.y===e.y))&&this.state.validate.push(e)},this.removeFromValidate=e=>{const t=this.state.validate.findIndex((t=>t.x===e.x&&t.y===e.y));t<0||this.state.validate.splice(t,1)},this.addToEdited=e=>{-1===this.state.edited.findIndex((t=>t.x===e.x&&t.y===e.y))&&this.state.edited.push(e)},this.removeFromEdited=e=>{const t=this.state.edited.findIndex((t=>t.x===e.x&&t.y===e.y));t<0||this.state.edited.splice(t,1)},this.addToInserted=e=>{-1===this.state.inserted.findIndex((t=>t===e))&&this.state.inserted.push(e)},this.removeFromInserted=e=>{const t=this.state.inserted.findIndex((t=>t===e));t<0||this.state.inserted.splice(t,1)},this.addToUpdated=e=>{-1===this.state.updated.findIndex((t=>t===e))&&this.state.updated.push(e)},this.removeFromUpdated=e=>{const t=this.state.updated.findIndex((t=>t===e));t<0||this.state.updated.splice(t,1)},this.addToRemoved=e=>{-1===this.state.removed.findIndex((t=>t===e))&&this.state.removed.push(e)},this.removeFromRemoved=e=>{const t=this.state.removed.findIndex((t=>t===e));t<0||this.state.removed.splice(t,1)},this.clearAllLog=()=>{this.state.required=[],this.state.validate=[],this.state.edited=[],this.state.inserted=[],this.state.updated=[],this.state.removed=[]},this.destroy=()=>{for(const e in this)this[e]=null}}}const config$1={defaultColumnWidth:80,selectionColumnWidth:50,rowHeightMaps:{large:42,middle:34,small:26},sortDirections:["ascend","descend"],pagination:{current:1,pageSize:20,pageSizeOptions:[10,20,30,40,50],showSizeChanger:!0,showQuickJumper:!0},groupSummary:{total:{text:"记录数",value:"*"},recordTotalIndex:"nRecordsCount",summaryFieldName:"tsummary",groupbyFieldName:"tgroupby"},highSearch:{showSQL:!1},treeTable:{textIndent:17},dataKey:"records",summationKey:"summation",totalKey:"total",virtualScrollY:150,sorterFieldName:"tsortby",filterFieldName:"twhere",currentPageName:"currentPage",pageSizeName:"pageSize",showFilterType:!0,printWidth:1040,operationColumn:"__action__",selectionColumn:"__selection__",expandableColumn:"__expandable__",summaryIgnore:"sumIgnored"},useTableRef=(e,t)=>{let{getRowKey:a,$size:r}=t;const l=React__default.useRef({uid:createUidKey(),elementStore:{},originColumns:[],tableFullData:[],tableOriginData:[],allTableData:[],allRowKeys:[],deriveRowKeys:[],flattenRowKeys:[],fieldAuth:{},mergeCells:[],scrollYStore:{startIndex:0,endIndex:0,offsetSize:0,visibleSize:0,rowHeight:config$1.rowHeightMaps[r]},store:new Store,resizeState:{width:0,height:0,winHeight:window.innerHeight},handleState:{insert:null,remove:!1},summaries:{},treeTable:!1,scrollYLoad:!1,shouldToTop:!0,selectionRows:[],recordsMap:new Map,isOverlay:!1,isIE:isIE()}),n=function(e,t,r){let l=arguments.length>3&&void 0!==arguments[3]?arguments[3]:0;return e.map((e=>{const i=a(e,e.index),o=r?`${r}#${i}`:`${i}`,s={level:l,rowKey:i,rowKeyPath:o};return e.children&&(s.children=n(e.children,i,o,l+1)),t?Object.assign({},s,{parentRowKey:t}):s}))},i=e=>{const t=[];return e.forEach((e=>{var a;(null===(a=e.children)||void 0===a?void 0:a.length)?t.push(...i(e.children)):t.push(e.rowKey)})),t};return Object.assign(Object.assign({tableRef:l},l.current),{setElementStore:(e,t)=>{l.current.elementStore[e]=t},setOriginColumns:e=>{l.current.originColumns=e},setTableFullData:e=>{l.current.tableFullData=e},setTableOriginData:e=>{l.current.tableOriginData=e},setAllTableData:e=>{const t=getAllTableData(e);l.current.allTableData=t,l.current.allRowKeys=t.map((e=>a(e,e.index)))},setDeriveRowKeys:e=>{l.current.deriveRowKeys=n(e,"",""),l.current.flattenRowKeys=i(l.current.deriveRowKeys),l.current.treeTable=l.current.deriveRowKeys.some((e=>Array.isArray(e.children)&&e.children.length))},setFieldAuth:(e,t)=>{l.current.fieldAuth[e]=t},setMergeCells:e=>{const t=[];e.forEach((e=>{t.push(e);for(let a=1;a<e.colSpan;a++)for(let r=0;r<e.rowSpan;r++)t.push({row:e.row+r,col:e.col+a,rowSpan:0,colSpan:0});for(let a=1;a<e.rowSpan;a++)for(let r=0;r<e.colSpan;r++)t.push({row:e.row+a,col:e.col+r,rowSpan:0,colSpan:0})})),l.current.mergeCells=t},setScrollYStore:e=>{l.current.scrollYStore=e},setResizeState:e=>{l.current.resizeState=e},setHandleState:e=>{l.current.handleState=e},setSummaries:e=>{l.current.summaries=e},setScrollYLoad:e=>{l.current.scrollYLoad=e},setShouldToTop:e=>{l.current.shouldToTop=e},setSelectionRows:e=>{l.current.selectionRows=e},setRecordsMap:(e,t)=>{l.current.recordsMap.set(e,t)},setOverlay:e=>{l.current.isOverlay=e},clearElementStore:()=>{for(const e in l.current.elementStore)l.current.elementStore[e]=null},clearRecordsMap:()=>{l.current.recordsMap.clear()}})};let scrollBarWidth;const getScrollBarWidth=()=>{var e;if(isServer)return 0;if(void 0!==scrollBarWidth)return scrollBarWidth;const t=document.createElement("div");t.className="qm-scrollbar__wrap",t.style.visibility="hidden",t.style.width="100px",t.style.position="absolute",t.style.top="-9999px",document.body.appendChild(t);const a=t.offsetWidth;t.style.overflow="scroll";const r=document.createElement("div");r.style.width="100%",t.appendChild(r);const l=r.offsetWidth;return null===(e=t.parentNode)||void 0===e||e.removeChild(t),scrollBarWidth=a-l,scrollBarWidth},useTableState=e=>{var t,a,r,l,n,i,o,s,c;const{paginationConfig:d,rowSelection:u,expandable:p,rowHighlight:f}=e,{global:m}=React__default.useContext(ConfigContext),h={current:config$1.pagination.current,pageSize:null!==(l=null!==(t=null==d?void 0:d.pageSize)&&void 0!==t?t:null===(r=null===(a=null==m?void 0:m.table)||void 0===a?void 0:a.pagination)||void 0===r?void 0:r.pageSize)&&void 0!==l?l:config$1.pagination.pageSize,total:0},g=null!==(i=null!==(n=null==u?void 0:u.selectedRowKeys)&&void 0!==n?n:null==u?void 0:u.defaultSelectedRowKeys)&&void 0!==i?i:[],_=null!==(s=null!==(o=null==p?void 0:p.expandedRowKeys)&&void 0!==o?o:null==p?void 0:p.defaultExpandedRowKeys)&&void 0!==s?s:[],[y,v]=React__default.useState([]),[b,R]=React__default.useReducer(((e,t)=>isEqual$1(e,t)?e:t),{}),[E,x]=React__default.useReducer(((e,t)=>isEqual$1(e,t)?e:t),{}),[C,T]=React__default.useReducer(((e,t)=>isEqual$1(e,t)?e:t),[]),[S,w]=React__default.useState(h),[P,N]=React__default.useReducer(((e,t)=>isEqual$1(e,t)?e:t),g),[I,A]=React__default.useReducer(((e,t)=>isEqual$1(e,t)?e:t),_),[$,O]=React__default.useState(null!==(c=null==f?void 0:f.currentRowKey)&&void 0!==c?c:""),[F,L]=React__default.useState({gutterWidth:getScrollBarWidth(),tableWidth:0,tableBodyWidth:0,tableBodyHeight:0,viewportHeight:0,headerHeight:0,footerHeight:0,tableAutoHeight:0,tableFullHeight:0}),[D,k]=React__default.useState({export:!0,import:!0,print:!0}),[H,V]=React__default.useState(!1),[M,j]=React__default.useState(!1),[q,U]=React__default.useState(!1),[K,B]=React__default.useState(!1),[z,W]=React__default.useState(!1),[G,Q]=React__default.useState(!1);return{tableData:y,setTableData:v,filters:b,setFilters:R,sorter:E,setSorter:x,superFilters:C,setSuperFilters:T,pagination:S,setPagination:w,selectionKeys:P,setSelectionKeys:N,rowExpandedKeys:I,setRowExpandedKeys:A,highlightKey:$,setHighlightKey:O,layout:F,permission:D,setPermission:k,setLayout:L,spinning:H,setSpinning:V,scrollX:M,setScrollX:j,scrollY:q,setScrollY:U,isPingLeft:K,setPingLeft:B,isPingRight:z,setPingRight:W,isFullScreen:G,setFullScreen:Q}},deepMapColumns=e=>e.map((e=>(e.children&&(e.children.forEach((t=>{t.parentDataIndex=e.dataIndex,e.fixed?t.fixed=e.fixed:delete t.fixed})),e.children=deepMapColumns(e.children)),e))),formatFiltersParams=(e,t)=>{const a=[];if(Object.keys(e).length)for(const t in e){const[r,l]=t.split("|"),n=e[t];Object.keys(n).forEach((e=>{a.push({type:l,bracketLeft:"",fieldName:r,expression:e,value:n[e],bracketRight:"",logic:"and"})}))}return t.length&&t.forEach((e=>{a.push({type:e.fieldType,bracketLeft:e.bracketLeft,fieldName:e.fieldName,expression:e.expression,value:e.condition,bracketRight:e.bracketRight,logic:e.logic})})),a.length&&(a[a.length-1].logic=""),a},useTableMemo=(e,a)=>{const{fetch:r,columns:l,height:n,minHeight:i,maxHeight:o,border:s=!0,rowSelection:c,summation:d,expandable:u,webPagination:p,scrollPagination:f,dragMergeCell:m,showSuperSearch:h,showFastSearch:g,showGroupSummary:_,showTableImport:y,showClipboard:v,showSelectCollection:b,footRender:R}=e,{tableRef:E,tableFullData:x,tableData:C,sorter:T,filters:S,superFilters:w,pagination:P}=a,{selectionRows:N,summaries:I}=E.current,A=e=>{const a=deepMapColumns(e),r=(e=>{if(!e)return null;const{type:a}=e;return{dataIndex:config$1.selectionColumn,title:"radio"===a?t("qm.table.config.selectionText"):"",width:config$1.selectionColumnWidth,fixed:"left",type:a}})(c),l=(null==(n=u)?void 0:n.expandedRowRender)?{dataIndex:config$1.expandableColumn,title:"",width:config$1.selectionColumnWidth,fixed:"left",type:"expand"}:null;var n;return r&&a.unshift(r),l&&a.unshift(l),createFilterColumns(a)},$=React__default.useMemo((()=>!!(null==r?void 0:r.api)),[null==r?void 0:r.api]),O=React__default.useMemo((()=>!$&&!!p),[$,p]),F=React__default.useMemo((()=>$&&!!f),[$,f]),L=React__default.useMemo((()=>($||O)&&!F),[$,O,F]),D=React__default.useMemo((()=>!!(n||i||o)),[n,i,o]),k=React__default.useMemo((()=>A(l)),[l]),H=React__default.useMemo((()=>columnsFlatMap(k)),[k]),V=React__default.useMemo((()=>H.filter((e=>"function"==typeof e.editRender))),[H]),M=React__default.useMemo((()=>H.filter((e=>!!e.summation))),[H]),j=React__default.useMemo((()=>H.filter((e=>"left"===e.fixed))),[H]),q=React__default.useMemo((()=>H.filter((e=>"right"===e.fixed))),[H]),U=React__default.useMemo((()=>{const e=H.filter((e=>![config$1.expandableColumn,config$1.selectionColumn,config$1.operationColumn].includes(e.dataIndex)));return e.length?e[0].dataIndex:""}),[H]),K=React__default.useMemo((()=>M.length>0),[M]),B=React__default.useMemo((()=>!!R||K),[R,K]),z=React__default.useMemo((()=>convertToRows(k).length>1),[k]),W=React__default.useMemo((()=>s||z),[s,z]),G=React__default.useMemo((()=>H.some((e=>e.sorter))),[H]),Q=React__default.useMemo((()=>H.some((e=>e.filter))),[H]),Y=React__default.useMemo((()=>M.some((e=>!!e.summation.dataKey))),[M]),X=React__default.useMemo((()=>!$&&!!y),[$,y]),Z=React__default.useMemo((()=>!!v&&V.length>0),[v,V]),J=React__default.useMemo((()=>!!b&&"checkbox"===(null==c?void 0:c.type)),[b,c]),ee=React__default.useMemo((()=>!!h&&Q),[h,Q]),te=React__default.useMemo((()=>!$&&!!g&&Q),[$,g,Q]),ae=React__default.useMemo((()=>!!_&&H.some((e=>!!e.groupSummary))),[H]),re=React__default.useMemo((()=>{var e;return!!(null===(e=null==d?void 0:d.groupItems)||void 0===e?void 0:e.length)}),[d]),le=React__default.useMemo((()=>!!m&&!$&&!p),[m,$,p]),ne=React__default.useMemo((()=>x.some((e=>Array.isArray(e.children)&&e.children.length))),[x]),ie=React__default.useMemo((()=>!C.length),[C]),oe=React__default.useMemo((()=>(()=>{const e={};return M.forEach((t=>{const{dataIndex:a,precision:r,summation:l}=t,{sumBySelection:n,displayWhenNotSelect:i,unit:o}=l,s=re?getGroupValidData(E.current.tableFullData):E.current.tableFullData,c=!N.length&&!!i;let d=(!n||c?s:N).reduce(((e,t)=>{if(null==t?void 0:t[config$1.summaryIgnore])return e;const r=Number(getCellValue(t,a));return Number.isNaN(r)?e:new Big(e).plus(r).toNumber()}),0);!Object.keys(I).includes(a)||n&&!c||(d=Number(getCellValue(I,a))),setCellValue(e,a,d);let u=r>=0?d.toFixed(r):d;u=formatNumber(u),setCellValue(e,`${a}_text`,o?`${u} ${o}`:u)})),[e]})()),[x,N,I]),se=React__default.useMemo((()=>(e=>e.filter((e=>e.summation.dataKey)).map((e=>`sum|${e.dataIndex}`)).join(","))(M)),[M]),ce=React__default.useMemo((()=>{var e;const t=createOrderBy(T),a=formatFiltersParams(S,w),l=t?{[config$1.sorterFieldName]:t}:null,n=a.length?{[config$1.filterFieldName]:a}:null,i=se?{[config$1.groupSummary.summaryFieldName]:se,usedJH:1}:null,o=null!==(e=null==r?void 0:r.params)&&void 0!==e?e:null,s={[config$1.currentPageName]:P.current,[config$1.pageSizeName]:P.pageSize};return Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({},l),n),i),o),s)}),[null==r?void 0:r.params,P.current,P.pageSize,T,S,w,se]);return{isFetch:$,isWebPagination:O,isScrollPagination:F,showPagination:L,shouldUpdateHeight:D,tableColumns:k,flattenColumns:H,editableColumns:V,summationColumns:M,leftFixedColumns:j,rightFixedColumns:q,firstDataIndex:U,showSummary:K,showFooter:B,isHeadGroup:z,bordered:W,isHeadSorter:G,isHeadFilter:Q,isServiceSummation:Y,isSelectCollection:J,isTableImport:X,isTableClipboard:Z,isSuperSearch:ee,isFastSearch:te,isGroupSummary:ae,isGroupSubtotal:re,isDragMergeCell:le,isTreeTable:ne,isTableEmpty:ie,summationRows:oe,fetchParams:ce}};function useDebounce(e,t){const a=React.useRef();return React.useEffect((()=>()=>clearTimeout(a.current)),[]),()=>{clearTimeout(a.current),a.current=setTimeout(e,t)}}const useTableCore=(e,t)=>{const{rowKey:a,dataSource:r,summation:l,fetch:n,rowSelection:i,expandable:o,treeConfig:s,authConfig:c,ignorePageIndex:d,columnsChange:u,onScrollEnd:p,onDataChange:f,onDataLoad:m,onChange:h}=e,{getRowKey:g,tableRef:_,tableElementRef:y,tableBodyRef:v,$size:b,tableColumns:R,tableFullData:E,pagination:x,layout:C,filters:T,sorter:S,superFilters:w,fetchParams:P,selectionKeys:N,rowExpandedKeys:I,highlightKey:A,summationColumns:$,shouldUpdateHeight:O,isFetch:F,isTreeTable:L,isWebPagination:D,isScrollPagination:k,isServiceSummation:H,isGroupSubtotal:V,doLayout:M,setTableData:j,setTableFullData:q,setTableOriginData:U,setAllTableData:K,setDeriveRowKeys:B,setPagination:z,setSpinning:W,setSorter:G,setFilters:Q,setSuperFilters:Y,setSelectionKeys:X,setRowExpandedKeys:Z,setHighlightKey:J,setSelectionRows:ee,setScrollYLoad:te,setScrollYStore:ae,setFieldAuth:re,setResizeState:le,setSummaries:ne,setPermission:ie,setRecordsMap:oe,resetTableScroll:se,clearElementStore:ce,clearRecordsMap:de}=t,{store:ue}=_.current,pe=useResizeObserve(y),fe=React__default.useRef(Object.assign({},P)),me=React__default.useRef({list:[],maps:new Map});useUpdateEffect((()=>{M()}),[R,b,C.tableAutoHeight]),useUpdateEffect((()=>{he()}),[pe]),useUpdateEffect((()=>{Ye(),Xe(),Ze(),F||(D&&je(),Le(r))}),[r,null==n?void 0:n.params]),useUpdateEffect((()=>{const e=Ae(P,fe.current);e||F&&(null==i?void 0:i.clearableAfterFetched)&&Je(),!e&&P[config$1.currentPageName]>1&&!(null==n?void 0:n.stopToFirst)?je():F&&Fe(),fe.current=P}),[P]),useUpdateEffect((()=>{D&&ze(),k||se(),Pe()}),[x.current,x.pageSize]),useUpdateEffect((()=>{F||_e(E.length),M()}),[E]),useUpdateEffect((()=>{L&&(null==s?void 0:s.virtual)&&(qe(),ze())}),[I]);const he=()=>{const{scrollYLoad:e,resizeState:t}=_.current,{height:a}=t,{width:r,height:l}=pe,n=l!==a;M(),n&&O&&e&&ze(),le(Object.assign({},t,{width:r,height:l}))},ge=()=>{A&&v.current.setClickedValues([A,""]),"radio"===(null==i?void 0:i.type)&&N.length&&v.current.setClickedValues([N[0],""])},_e=e=>{e!==x.total&&z((t=>Object.assign({},t,{total:e})))},ye=debounce((e=>{He(),null==p||p(e)})),ve=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;const{scrollYStore:t}=_.current,{startIndex:a,endIndex:r,offsetSize:l,visibleSize:n,rowHeight:i}=t,o=Math.floor(e/i),s=Math.max(0,o-1-l),c=o+n+l;(o<=a||o>=r-n-1)&&(a===s&&r===c||(ae(Object.assign({},t,{startIndex:s,endIndex:c})),ze()))},be=e=>V?Re(Ee(e,0)):e,Re=e=>{const t=[];return e.forEach((e=>{e.children&&t.push(...Re(e.children)),delete e.children,t.push(e)})),t},Ee=(e,t)=>{var r;const n=null===(r=l.groupItems)||void 0===r?void 0:r[t];if(!n)return e.forEach(((t,a)=>{t._rowSpan=0===a?e.length:0,t._colSpan=1})),e;return groupByProps(e,[n.dataIndex]).map((e=>{const r={children:Ee(e,t+1),_group:n.dataIndex};return"function"!=typeof a&&setCellValue(r,a.toString(),createUidKey()),n.titleIndex&&setCellValue(r,n.titleIndex,getCellValue(e[0],n.titleIndex)),setCellValue(r,n.dataIndex,getCellValue(e[0],n.dataIndex)),$.forEach((e=>{var t;const{dataIndex:a}=e,l=null===(t=r.children)||void 0===t?void 0:t.reduce(((e,t)=>{if(t[config$1.summaryIgnore])return e;const r=Number(getCellValue(t,a));return Number.isNaN(r)?e:e+r}),0);setCellValue(r,a,l)})),r}))},xe=e=>{const{selectionRows:t,allTableData:a,recordsMap:r}=_.current;if(F)return[...t.filter((t=>e.includes(g(t,t.index)))),...a.filter((a=>{const r=g(a,a.index);return e.includes(r)&&-1===t.findIndex((e=>g(e,e.index)===r))}))];const l=[];for(let t=0,a=e.length;t<a;t++){const a=e[t];r.has(a)&&l.push(r.get(a))}return l},Ce=e=>{const{type:t,checkStrictly:a=!0}=i||{},r=Array.isArray(e)?e:N;let l=[];return _.current.treeTable&&!a&&r.forEach((e=>{l.push(...((e,t)=>{var a;const{deriveRowKeys:r}=_.current,l=deepFindRowKey(r,e);let n=[];if(!l)return n;const i=Se((null==l?void 0:l.children)||[]),o=(null===(a=deepGetRowkey(r,e))||void 0===a?void 0:a.slice(0,-1).reverse())||[];return n=[...new Set([...t,...i])],o.forEach((e=>{var t;const a=deepFindRowKey(r,e),l=isArrayContain(n,(null===(t=null==a?void 0:a.children)||void 0===t?void 0:t.map((e=>e.rowKey)))||[]);n=l?[...n,e]:n.filter((t=>t!==e))})),n})(e,r))})),l="radio"===t?r.slice(0,1):[...new Set([...r,...l])],l},Te=e=>{const{allRowKeys:t,deriveRowKeys:a,flattenRowKeys:r}=_.current,{defaultExpandAllRows:l,expandedRowRender:n}=o||{},i=Array.isArray(e)?e:I;if(_.current.treeTable){n&&warn("Table","树结构表格不能再设置展开行的 `expandedRowRender` 参数");const e=[...N];A&&e.unshift(A);let o=[];return e.forEach((e=>{const t=deepGetRowkey(a,e)||[];o.push(...t.length>1?t.slice(0,-1).reverse():t)})),o=l?t:[...new Set([...i,...o])],o.filter((e=>!r.includes(e)))}return o?l?t.slice(0):[...i]:[]},Se=e=>{const t=[];for(let a=0;a<e.length;a++)Array.isArray(e[a].children)&&t.push(...Se(e[a].children)),t.push(e[a].rowKey);return t},we=(e,t)=>{const a=[];return e.forEach((e=>{e.children&&a.push(...we(e.children,t)),e.rowKey===t&&e.parentRowKey&&a.push(e.parentRowKey)})),a.length&&a.push(...we(e,a[a.length-1])),a},Pe=debounce((()=>{ke(),null==h||h(x,Ie(T),Ne(S),w,{currentDataSource:Ke()})})),Ne=e=>{const t={};for(const a in e)null!==e[a]&&(t[a]=e[a]);return t},Ie=e=>{const t={};for(const a in e){if(!a.includes("|"))continue;const[r,l]=a.split("|");t[`${r}|${l}`]=e[a]}return t},Ae=(e,t)=>{const a=Object.keys(difference(e,t));return 1===a.length&&(a.includes(config$1.currentPageName)||a.includes(config$1.pageSizeName))},$e=()=>__awaiter(void 0,void 0,void 0,(function*(){var t;if(!c)return;let a=omit(c,["fetch"]);if(c.fetch){const{api:e,params:r,dataKey:l}=c.fetch;try{const n=yield e(r);200===n.code&&(a=null!==(t=l?get(n.data,l):n.data)&&void 0!==t?t:{})}catch(e){}}if(Object.keys(a).length){const{isExport:e=1,isImport:t=1,isPrint:r=1}=a;ie((a=>Object.assign({},a,{export:!!e,import:!!t,print:!!r})))}if(Array.isArray(a.fieldList)){const{originColumns:t}=_.current,r=mapTableColumns(e.columns,(e=>{const{dataIndex:r}=e,l=a.fieldList.find((e=>e.dataIndex===r));if(l){const{visible:a=1,disabled:n,secretName:i}=l,o=deepFindColumn(t,r);re(r,{visible:a,disabled:n,secretName:i}),a||(e.noAuth=!0,o.noAuth=!0),i&&(e.formatType=`secret-${i}`,o.formatType=`secret-${i}`)}}));null==u||u(r)}})),Oe=()=>__awaiter(void 0,void 0,void 0,(function*(){var e,t,a;if(!n)return;const{formatter:r=(e=>e),beforeFetch:i=trueNoop,afterFetch:o,callback:s}=n;if(!i(P))return;const c=k&&P[config$1.currentPageName]>fe.current[config$1.currentPageName]&&Ae(P,fe.current),d=!!(null===(e=null==l?void 0:l.fetch)||void 0===e?void 0:e.api);W(!0);try{const[e,i]=d?yield Promise.all([n.api(r(P)),l.fetch.api(r(P))]):[yield n.api(r(P))];if(d?200===e.code&&200===i.code:200===e.code){const r=null!==(t=n.dataKey)&&void 0!==t?t:config$1.dataKey;let l=null!==(a=get(e.data,r))&&void 0!==a?a:[];l="function"==typeof o?o(l):l;const d=get(e.data,r.replace(/[^.]+$/,config$1.totalKey))||l.length||0;Le(c?_.current.tableFullData.concat(l):l),_e(d),De((null==i?void 0:i.data)||e.data),null==s||s(e.data)}}catch(e){}hasOwn(n,"stopToFirst")&&(n.stopToFirst=!1),W(!1)})),Fe=useDebounce(Oe),Le=e=>{const t=e=>e.map(((e,a)=>(Array.isArray(e.children)&&e.children.length&&(e.children=t(e.children)),e.index=a,d||(e.pageIndex=(e=>{const{current:t,pageSize:a}=x;return!F||k?e:(t-1)*a+e})(a)),e))),a=be(t(e));We(a),Ge(a),Qe(),X(Ce()),Z(Te()),ee(xe(N)),ke(),null==m||m(a)},De=e=>{var t,a,r;if(!H)return;const n=null!==(a=null===(t=null==l?void 0:l.fetch)||void 0===t?void 0:t.dataKey)&&void 0!==a?a:config$1.summationKey,i=null!==(r=n?get(e,n):e)&&void 0!==r?r:{},o={};$.filter((e=>!!e.summation.dataKey)).forEach((e=>{setCellValue(o,e.dataIndex,Number(getCellValue(i,e.summation.dataKey)))})),ne(o)},ke=()=>{const{type:e,selectFirstRowOnChange:t}=i||{};if("radio"===e&&t){const e=Ke();if(e.length){const t=g(e[0],e[0].index);X([t])}else X([])}},He=()=>{if(!k)return;const e=Me();x.current>=e||Ve(Object.assign(Object.assign({},x),{current:x.current+1}))},Ve=e=>{let{current:t,pageSize:a}=e;z((e=>Object.assign({},e,{current:t,pageSize:a})))},Me=()=>{const{pageSize:e,total:t}=x;return Math.ceil(t/e)},je=()=>{Ve(Object.assign({},x,{current:1}))},qe=()=>{if(!_.current.treeTable||!(null==s?void 0:s.virtual))return;const e=Ue(_.current.deriveRowKeys,(()=>{const{allTableData:e,allRowKeys:t}=_.current,{rowExpandable:a}=o||{},r=[];return"function"==typeof a&&e.forEach(((e,l)=>!a(e)&&r.push(t[l]))),r.length?I.filter((e=>!r.includes(e))):I})());me.current.list=e,me.current.maps.clear(),e.forEach(((e,t)=>me.current.maps.set(e.rowKey,t)))},Ue=(e,t)=>{const a=[];return e.forEach((e=>{if(e.children&&a.push(...Ue(e.children,t)),void 0===e.parentRowKey)a.push({rowKey:e.rowKey,level:e.level});else if(t.includes(e.parentRowKey)){e.rowKeyPath.split("#").slice(0,-1).every((e=>t.findIndex((t=>t==e))>-1))&&a.push({rowKey:e.rowKey,level:e.level})}})),a},Ke=()=>D?(()=>{const{current:e,pageSize:t}=x;return _.current.tableFullData.slice((e-1)*t,e*t)})():_.current.tableFullData,Be=e=>{const{scrollYLoad:t,scrollYStore:a}=_.current;j(t?e.slice(a.startIndex,a.endIndex):e)},ze=()=>{let e=Ke();_.current.treeTable&&(null==s?void 0:s.virtual)&&(e=(e=>{const{allTableData:t,allRowKeys:a}=_.current,{list:r,maps:l}=me.current,n=[];for(let e=0,i=a.length;e<i;e++){const i=a[e];l.has(i)&&(t[e]._level=r[l.get(i)].level,n.push(t[e]))}return n})()),te(e.length>config$1.virtualScrollY),(e=>{const{elementStore:t,scrollYStore:a,scrollYLoad:r}=_.current,{startIndex:l,rowHeight:n}=a;let i="",o="";r&&(i=`translateY(${Math.max(0,l*n)+"px"})`,o=e.length*n+"px"),t.$tableBody.style.transform=i,t.$tableYspace.style.height=o})(e),Be(e)},We=e=>{q(e),K(e),B(e),qe(),ze()},Ge=e=>{U(e)},Qe=()=>{const{allTableData:e}=_.current;de(),e.forEach((e=>oe(g(e,e.index),e)))},Ye=()=>{G({})},Xe=()=>{Q({})},Ze=()=>{Y([])},Je=()=>{X([])};return{initialTable:()=>{$e(),ge(),F?Oe():Le(r)},createTableFullData:We,getTableData:Oe,handleTableData:Be,createTableData:Le,createGroupData:be,createSelectionKeys:Ce,createSelectionRows:xe,createRowExpandedKeys:Te,findParentRowKeys:we,getAllChildRowKeys:Se,doFieldValidate:(e,t,a,r)=>{if(!Array.isArray(e))return warn("Table","可编辑单元格的校验规则 `rules` 配置不正确");e.length&&(ue.removeFromRequired({x:a,y:r}),ue.removeFromValidate({x:a,y:r}),e.forEach((e=>{var l;e.required&&isEmpty(t)&&ue.addToRequired({x:a,y:r,text:e.message}),"function"!=typeof e.validator||(null===(l=e.validator)||void 0===l?void 0:l.call(e,t))||ue.addToValidate({x:a,y:r,text:e.message})})))},getTableLog:()=>{const{required:e,validate:t,inserted:a,updated:r,removed:l}=ue.state,n=intersection(a,l),i=e=>e.map((e=>({rowKey:e.x,dataIndex:e.y,text:e.text})));return{required:i(e),validate:i(t),inserted:a.filter((e=>!n.includes(e))),updated:r.filter((e=>![...intersection(r,a),...intersection(r,l)].includes(e))),removed:l.filter((e=>!n.includes(e)))}},dataChange:()=>{null==f||f(_.current.tableFullData)},tableChange:Pe,toLastPage:()=>{const e=Me();x.current!==e&&Ve(Object.assign({},x,{current:e}))},toFirstPage:je,getPageCount:Me,pagerChangeHandle:Ve,triggerScrollYEvent:e=>{ve(e)},scrollBottomDebouncer:ye,clearTableSorter:Ye,clearTableFilter:Xe,clearSuperFilters:Ze,clearRowSelection:Je,clearRowHighlight:()=>{J("")},clearTableLog:()=>{ue.clearAllLog()},destroy:()=>{ce(),ue.destroy(),TableManager.deregister(_.current.uid)}}},useTableLayout=(e,t)=>{const{height:a,minHeight:r,maxHeight:l,resizable:n,showHeader:i,spanMethod:o}=e,{getRowKey:s,tableRef:c,$size:d,tableColumns:u,flattenColumns:p,leftFixedColumns:f,layout:m,scrollY:h,tableData:g,showFooter:_,showPagination:y,isWebPagination:v,isFullScreen:b,setLayout:R,setScrollX:E,setScrollY:x,setElementStore:C,setScrollYStore:T,setShouldToTop:S}=t,w=React__default.useRef(h),P=React__default.useMemo((()=>{const{tableFullHeight:e,tableAutoHeight:t}=m,n={};return r&&Object.assign(n,{minHeight:`${parseHeight(r)}px`}),l&&Object.assign(n,{maxHeight:`${parseHeight(l)}px`}),b?Object.assign(Object.assign({},n),{maxHeight:"",minHeight:"",height:`${e}px`}):a?Object.assign(Object.assign({},n),{height:"auto"!==a?`${parseHeight(a)}px`:`${t}px`}):n}),[a,l,r,b,m]),N=e=>{const{scrollYStore:t,isIE:a}=c.current,{startIndex:r,endIndex:l}=t,n=config$1.rowHeightMaps[d],i=Math.max(8,Math.ceil(e/n)+2),o=a?5:0;T(Object.assign({},t,{visibleSize:i,offsetSize:o,endIndex:Math.max(r+i+o,l),rowHeight:n}))},I=(e,t)=>{const{elementStore:a,scrollYStore:r,allTableData:l}=c.current,n=a.$tableBody.parentNode;if(void 0!==t&&t>=0)n.scrollTop=t*r.rowHeight;else{const t=(v?getAllTableData(g):l).findIndex((t=>e===s(t,t.index)));n.scrollTop=(t<0?0:t)*r.rowHeight}};return{createElementStore:e=>{Object.keys(e).forEach((t=>{C(t,e[t])}))},tableStyles:P,getSpan:(e,t,a,r,l)=>{let n=1,i=1;if("function"==typeof o){const s=o({row:e,column:t,rowIndex:a,columnIndex:r,tableData:l});Array.isArray(s)?(n=s[0],i=s[1]):isPlainObject(s)&&(n=s.rowSpan,i=s.colSpan)}const{mergeCells:s}=c.current;if(s.length>0){const e=s.find((e=>e.row===a&&e.col===r));e&&(n=e.rowSpan,i=e.colSpan)}return{rowSpan:n,colSpan:i}},getStickyLeft:e=>{p.findIndex((t=>t.dataIndex===e))<0&&(e=findFirstColumn(deepFindColumn(u,e)).dataIndex);let t=0;for(let a=0;a<p.length;a++){const r=p[a];if(r.dataIndex===e)break;t+=parseHeight(r.width||r.renderWidth||0)}return t},getStickyRight:e=>{p.findIndex((t=>t.dataIndex===e))<0&&(e=findLastColumn(deepFindColumn(u,e)).dataIndex);let t=0;for(let a=p.length-1;a>=0;a--){const r=p[a];if(r.dataIndex===e)break;t+=parseHeight(r.width||r.renderWidth||0)}return t},scrollXToColumn:(e,t)=>{const{elementStore:a}=c.current,r=void 0===t?p.findIndex((t=>t.dataIndex===e)):t;if(r<0)return;const l=f.map((e=>e.width||e.renderWidth||config$1.defaultColumnWidth)).reduce(((e,t)=>e+t),0);a.$tableBody.parentNode.scrollLeft=a.$tableBody.querySelectorAll("tbody > tr > td")[r].offsetLeft-l},scrollYToRecord:I,rowInViewport:e=>{const{elementStore:t,scrollYStore:a}=c.current,{viewportHeight:r,gutterWidth:l}=m,n=e*a.rowHeight,i=t.$tableBody.parentNode;return!(n<i.scrollTop||n+a.rowHeight>i.scrollTop+(scrollX?r-l:r))},calcTableHeight:()=>{if("auto"!==a)return;const{elementStore:e,resizeState:t}=c.current,r=t.winHeight-e.$table.getBoundingClientRect().top-(y?SizeHeight["small"!==d?"middle":d]+DEFAULT_DISTANCE:0)-DEFAULT_DISTANCE;R((e=>Object.assign({},e,{tableAutoHeight:r})))},resetTableScroll:()=>{const{shouldToTop:e}=c.current;e&&I("",0),S(!0)},doLayout:()=>{(()=>{const{elementStore:e,scrollYLoad:t,resizeState:a}=c.current;if(!e.$table.offsetParent)return;const r=e.$table.offsetHeight,l=i?e.$header.offsetHeight:m.headerHeight,n=_?e.$footer.offsetHeight:m.footerHeight,o=r-l-n,s=e.$tableBody.offsetHeight,d=t||s>o;let u=0;if(b){const t=e.$toper?e.$toper.offsetHeight+DEFAULT_DISTANCE:0,r=e.$pager?e.$pager.offsetHeight+DEFAULT_DISTANCE:0;u=a.winHeight-t-r-2*DEFAULT_DISTANCE}o!==m.viewportHeight&&N(o),w.current=d,x(d),R((e=>Object.assign({},e,{headerHeight:l,footerHeight:n,viewportHeight:o,tableBodyHeight:s,tableFullHeight:u})))})(),(()=>{const{elementStore:e}=c.current,t=e.$table.clientWidth,a=w.current?m.gutterWidth:0,{defaultColumnWidth:r}=config$1,l=p.filter((e=>"number"!=typeof e.width));let i=0;if(p.forEach((e=>{"number"==typeof e.width&&(e.renderWidth=void 0)})),l.length>0){if(p.forEach((e=>{i+=e.width||e.minWidth||r})),i<=t-a){E(!1);const e=t-a-i;if(1===l.length&&n)l[0].renderWidth=(l[0].minWidth||r)+e;else{const t=e/l.reduce(((e,t)=>e+(t.minWidth||r)),0);let a=0;l.forEach(((e,l)=>{if(0===l)return;const n=Math.floor((e.minWidth||r)*t);a+=n,e.renderWidth=(e.minWidth||r)+n})),n&&(l[0].renderWidth=(l[0].minWidth||r)+e-a)}}else E(!0),l.forEach((e=>{e.renderWidth=e.minWidth||r}));R((e=>Object.assign({},e,{tableBodyWidth:Math.max(i,t)})))}else p.forEach((e=>{e.renderWidth=e.width||e.minWidth||r,i+=e.renderWidth})),E(i>t),R((e=>Object.assign({},e,{tableBodyWidth:i})));R((e=>Object.assign({},e,{tableWidth:t})))})()}}},useTableEffect=(e,t)=>{const{columns:a,summation:r,rowSelection:l,expandable:n,rowHighlight:i,mergeCells:o=[]}=e,{tableRef:s,topElementRef:c,tableElementRef:d,tableBodyRef:u,resizableBarRef:p,$size:f,scrollX:m,pagination:h,selectionKeys:g,rowExpandedKeys:_,highlightKey:y,summationRows:v,showSummary:b,isWebPagination:R,isScrollPagination:E,isTreeTable:x,toLastPage:C,toFirstPage:T,getPageCount:S,setHandleState:w,scrollYToRecord:P,setSelectionKeys:N,setOriginColumns:I,setSelectionRows:A,setRowExpandedKeys:$,setHighlightKey:O,setResizeState:F,setMergeCells:L,setPingRight:D,calcTableHeight:k,createSelectionKeys:H,createSelectionRows:V,createRowExpandedKeys:M,createElementStore:j,triggerScrollYEvent:q,forceUpdate:U,initialTable:K,destroy:B}=t,{elementStore:z,handleState:W,scrollYLoad:G}=s.current,Q=React__default.useRef(v);useUpdateEffect((()=>{if(!l)return;const{onChange:e}=l;"radio"===l.type&&u.current.setClickedValues(g.length?[g[0],""]:[]),A(V(g)),null==e||e(g,s.current.selectionRows),b&&U()}),[g]),useUpdateEffect((()=>{if(!n)return;const{allTableData:e,allRowKeys:t}=s.current,{onChange:a}=n;null==a||a(_,_.map((a=>e[t.findIndex((e=>e===a))])))}),[_]),useUpdateEffect((()=>{var e,t;const{allTableData:a,allRowKeys:r}=s.current;x&&$(M()),i&&(u.current.setClickedValues(y?[y,""]:[]),null===(e=i.onChange)||void 0===e||e.call(i,y,null!==(t=a[r.findIndex((e=>e===y))])&&void 0!==t?t:null))}),[y]),useUpdateEffect((()=>{var e;isEqual$1(v,Q.current)||(Q.current=v,b&&r&&(null===(e=r.onChange)||void 0===e||e.call(r,v)))}),[v]),useUpdateEffect((()=>{const e=H(l.selectedRowKeys);isEqual$1(e,g)||(N(e),x&&$(M()))}),[null==l?void 0:l.selectedRowKeys]),useUpdateEffect((()=>{const e=M(n.expandedRowKeys);isEqual$1(e,_)||$(e)}),[null==n?void 0:n.expandedRowKeys]),useUpdateEffect((()=>{const{currentRowKey:e}=i;e!==y&&O(null!=e?e:"")}),[null==i?void 0:i.currentRowKey]),useUpdateEffect((()=>{const{insert:e,remove:t}=W;e&&(R&&("after"===e?C():T()),P("","after"===e?1e5:0)),t&&h.current>S()&&C(),(e||t)&&w({insert:null,remove:!1})}),[h.total]),useUpdateEffect((()=>{G&&q(z.$tableBody.parentNode.scrollTop)}),[G]),useUpdateEffect((()=>{D(m)}),[m]),useUpdateEffect((()=>{k()}),[f]),useUpdateEffect((()=>{L(o),u.current.forceUpdate()}),[o]),useUpdateEffect((()=>{G&&(e.height||e.maxHeight||warn("Table","必须设置组件参数 `height` 或 `maxHeight`"),e.ellipsis||warn("Table","必须设置组件参数 `ellipsis`")),E&&(e.height||e.maxHeight||warn("Table","必须设置组件参数 `height` 或 `maxHeight`"))}),[G,E]);const Y=()=>{const{resizeState:e}=s.current,{winHeight:t}=e,a=window.innerHeight;a!==t&&(F(Object.assign({},e,{winHeight:a})),k())};React__default.useEffect((()=>(j({$toper:c.current,$table:d.current,$resizableBar:p.current}),I(deepClone(a)),K(),L(o),window.addEventListener("resize",Y,!1),k(),()=>{B(),window.removeEventListener("resize",Y)})),[])};function useForceUpdate(){const[,e]=React.useReducer((e=>e+1),0);return e}const useImperativeMethod=(e,t)=>{const{getRowKey:a,tableProps:r,tableRef:l,toolBoxRef:n,flattenColumns:i,editableColumns:o,pagination:s,fetchParams:c,selectionKeys:d,rowExpandedKeys:u,highlightKey:p,isFetch:f,dataChange:m,getTableData:h,handleTableData:g,createTableData:_,calcTableHeight:y,scrollXToColumn:v,scrollYToRecord:b,doFieldValidate:R,setHandleState:E,setSelectionKeys:x,setRowExpandedKeys:C,setHighlightKey:T,setSelectionRows:S,forceUpdate:w,getTableLog:P,clearRowSelection:N,clearRowHighlight:I,clearTableSorter:A,clearTableFilter:$,clearSuperFilters:O,clearTableLog:F}=t,{columns:L,columnsChange:D}=r,k=(e,t,r)=>{for(let l=0;l<e.length;l++){const n=e[l],i=a(n,n.index);Array.isArray(n.children)&&k(n.children,t,r),t.includes(i)&&(null==r||r(n,i),e.splice(l,1),l-=1)}};React__default.useImperativeHandle(e,(()=>({CALCULATE_HEIGHT:()=>{y()},DO_REFRESH:e=>__awaiter(void 0,void 0,void 0,(function*(){f&&(yield h(),null==e||e())})),GET_LOG:()=>P(),GET_FETCH_PARAMS:()=>{const e={};for(const t in c)Object.keys(s).includes(t)||(e[t]=c[t]);return e},CLEAR_TABLE_DATA:()=>{f||(N(),I(),A(),$(),O(),F(),_([]))},CLEAR_LOG:()=>{F()},FORCE_UPDATE:()=>{w()},DO_EXPORT:()=>{n.current.exportHandle()},SCROLL_TO_RECORD:e=>{b(e)},SCROLL_TO_COLUMN:e=>{v(e)},SET_SELECTION:e=>{x(e)},SET_HIGHLIGHT:e=>{T(e)},SET_EXPANDABLE:e=>{C(e)},SET_SELECTION_ROWS:e=>{S(e)},SET_TABLE_DATA:e=>{g(e)},SET_TABLE_COLUMN:(e,t,a)=>{const r=L.filter((e=>!e.noAuth)),l=r.find((t=>t.dataIndex===e));if(!l)return warn("Table","SET_TABLE_COLUMN 方法参数 `dataIndex` 的值不正确");if(!isPlainObject(t))return warn("Table","SET_TABLE_COLUMN 方法参数 `option` 的值不正确");for(const e in t)e&&set(l,e,t[e]);a&&(D?D(r):warn("Table","需要设置 `columnsChange` 参数"))},INSERT_RECORDS:(e,t)=>{const{store:r,tableFullData:n}=l.current,o=(Array.isArray(e)?e:[e]).filter((e=>isPlainObject(e)));if(!o.length)return;o.forEach((e=>{i.forEach((t=>{const{dataIndex:a}=t;[config$1.expandableColumn,config$1.selectionColumn,config$1.operationColumn].includes(a)||setCellValue(e,a,getCellValue(e,a))})),r.addToInserted(e)}));const s="before"===(null==t?void 0:t.mode),c=void 0===(null==t?void 0:t.parentRowKey);let d=n;if(c)d=s?[...o,...d]:d.concat(o);else{const e=deepFindRecord(n,(e=>t.parentRowKey===a(e,e.index)));e&&(Array.isArray(e.children)?s?e.children.unshift(...o):e.children.push(...o):e.children=o)}_(d),c&&E(Object.assign({},l.current.handleState,{insert:s?"before":"after"})),m()},REMOVE_RECORDS:e=>{const{store:t,tableFullData:r}=l.current,n=(Array.isArray(e)?e:[e]).map((e=>isPlainObject(e)?a(e,e.index):e));if(!n.length)return;let i=!1;k(r,n,((e,a)=>{t.addToRemoved(e),o.forEach((r=>{const{dataIndex:l,editRender:n}=r,i=null==n?void 0:n(e,r);if(!i)return;const{rules:o=[],disabled:s}=i;!s&&o.length&&(t.removeFromRequired({x:a,y:l}),t.removeFromValidate({x:a,y:l}),t.removeFromEdited({x:a,y:l}))})),i=!0})),i&&(_(r),x(d.filter((e=>!n.includes(e)))),n.includes(p)&&I(),C(u.filter((e=>!n.includes(e)))),E(Object.assign({},l.current.handleState,{remove:!0})),m())},VALIDATE_FIELDS:e=>{l.current.allTableData.forEach((t=>{o.forEach((r=>{const{dataIndex:l,editRender:n}=r,i=null==n?void 0:n(t,r);if(!i)return;const o=a(t,t.index);if(e&&!e.includes(o))return;const{rules:s=[],disabled:c}=i;!c&&s.length&&R(s,getCellValue(t,l),o,l)}))}));const{required:t,validate:r}=P(),n=[...t,...r];return n.length&&b(n[0].rowKey),w(),{required:t,validate:r}}})))},Alert=e=>{const{total:a}=e,{tableRef:r,tableProps:l,selectionKeys:n,isHeadSorter:i,isHeadFilter:o,isTreeTable:s,clearTableSorter:c,clearTableFilter:d,clearSuperFilters:u,clearRowSelection:p,clearRowHighlight:f}=React__default.useContext(TableContext),{infoBarConfig:m,rowSelection:h,rowHighlight:g}=l,{allTableData:_}=r.current,{hideAlert:y,hideClearButton:v}=m||{},b=React__default.useMemo((()=>!y),[y]),R=React__default.useMemo((()=>!v&&!!(i||o||h||g)),[v,i,o,h,g]),E={[`${getPrefixCls("table")}__alert`]:!0};return b?React__default.createElement("div",{className:classNames(E)},React__default.createElement("i",{className:"svgicon icon"},React__default.createElement(InfoCircleFilled,null)),React__default.createElement("span",null,t("qm.table.alert.total",{total:s?_.length:a}),h?`,${t("qm.table.alert.selected",{total:n.length})}`:""),R&&React__default.createElement("em",{onClick:()=>{c(),d(),u(),p(),f()}},t("qm.table.alert.clear"))):null},FullScreen=React__default.forwardRef(((e,a)=>{const{isFullScreen:r,open:l=!0}=e,{setFullScreen:n}=React__default.useContext(TableContext),i=()=>{n(!r)};React__default.useImperativeHandle(a,(()=>({clickHandle:i})));const o=getPrefixCls("table");return l?React__default.createElement("span",{className:`${o}-full-screen`,title:t(r?"qm.table.screen.cancelFull":"qm.table.screen.full"),onClick:()=>i()},React__default.createElement("i",{className:"svgicon icon"},r?React__default.createElement(FullscreenExitOutlined,null):React__default.createElement(FullscreenOutlined,null))):null}));FullScreen.displayName="FullScreen";const Reload=React__default.forwardRef(((e,a)=>{const{open:r=!0}=e,{getTableData:l}=React__default.useContext(TableContext),n=()=>{l()};React__default.useImperativeHandle(a,(()=>({clickHandle:n})));const i=getPrefixCls("table");return r?React__default.createElement("span",{className:`${i}-reload`,title:t("qm.table.refresh.text"),onClick:()=>n()},React__default.createElement("i",{className:"svgicon icon"},React__default.createElement(ReloadOutlined,null))):null}));Reload.displayName="Reload";const defaultHtmlStyle="\n * {\n margin: 0;\n padding: 0;\n }\n body * {\n -webkit-box-sizing: border-box;\n box-sizing: border-box;\n }\n table {\n table-layout: fixed;\n border-spacing: 0;\n border-collapse: collapse;\n }\n table--print {\n font-size: 14px;\n text-align: left;\n }\n .table--print th,\n .table--print td {\n padding: 5px;\n border: 1px solid #000;\n }\n .no-border th,\n .no-border td {\n border: 0!important;\n }\n .table--print th[colspan]:not([colspan='1']) {\n text-align: center;\n }\n .page-break {\n page-break-after: always;\n }\n",TablePrint=React__default.forwardRef(((e,a)=>{var r,l,n,i;const{tableColumns:o,open:s=!0}=e,{global:c}=React__default.useContext(ConfigContext),{tableRef:d,tableBodyRef:u,tableProps:p,flattenColumns:f,summationRows:m,showSummary:h,getSpan:g}=React__default.useContext(TableContext),{tablePrint:_,showHeader:y}=p,v=null!==(l=null===(r=null==c?void 0:c.print)||void 0===r?void 0:r.leftLogo)&&void 0!==l?l:"",b=null!==(i=null===(n=null==c?void 0:c.print)||void 0===n?void 0:n.rightLogo)&&void 0!==i?i:"",R=!(!v&&!b),E=React__default.useMemo((()=>deepClone(filterTableColumns(o,[config$1.expandableColumn,config$1.selectionColumn,config$1.operationColumn]))),[o]),x=React__default.useMemo((()=>deepClone(filterTableColumns(f,[config$1.expandableColumn,config$1.selectionColumn,config$1.operationColumn]))),[f]),C=React__default.useMemo((()=>deepClone(o.filter((e=>e.printFixed)))),[o]),T=(e,t)=>{const a=Object.assign({},deepFindColumn(t,e.parentDataIndex));return a.children=[e],a.level&&a.level>1?T(a,t):a},S=(e,t)=>map(groupBy(flatten(e),t),spread((function(){for(var e=arguments.length,a=new Array(e),r=0;r<e;r++)a[r]=arguments[r];return mergeWith(...a,((e,a)=>{if(Array.isArray(e))return S(e.concat(a),t)}))}))),w=(e,t)=>{const a=[];return e.forEach((e=>{let r=[];e.forEach((e=>{1===e.level?r.push(e):r.push(T(e,t))})),r=(e=>[...new Set(e.map((e=>e.dataIndex)))].map((t=>{const a=e.filter((e=>e.dataIndex===t));return a.length<=1?a[0]:S(a,"dataIndex")[0]})))(r),a.push(convertToRows(r))})),a},P=()=>{const{allTableData:e}=d.current,t=(e=>{const t=[];let a=[],r=0,l=0;for(;l<e.length;){const n=e[l];r+=n.width||n.renderWidth||n.minWidth||config$1.defaultColumnWidth,r<=config$1.printWidth?(a.push(n),l===e.length-1&&t.push(a),l++):l>0?(e.splice(0,l),C.length&&e.unshift(...C),t.push(a),a=[],r=0,l=0):(n.width=config$1.printWidth,a.push(n),t.push(a),l++)}return t})([...x]),a=w(t,E);let r=["<!DOCTYPE html>","<html>","<head>",'<meta charset="utf-8">','<meta name="viewport" content="width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,user-scalable=no,minimal-ui">',`<style>${defaultHtmlStyle}</style>`,"</head>","<body>"].join("");for(let l=0;l<t.length;l++)r+=N(a[l],t[l],e),r+='<div class="page-break"></div>';return r+"</body></html>"},N=(e,a,r)=>{const{showLogo:l=!0}=_;let n='<table class="table--print" width="100%" border="0" cellspacing="0" cellpadding="0">';return n+=`<colgroup>${a.map((e=>{let{width:t,minWidth:a,renderWidth:r}=e;return`<col style="width:${t||r||a||config$1.defaultColumnWidth}px">`})).join("")}</colgroup>`,y&&(n+=["<thead>",l&&R?`<tr><th colspan="${a.length}" style="border: 0">${['<table class="no-border" width="100%" border="0" cellspacing="0" cellpadding="0">',"<tr>",'<td width="50%" align="left">',v?`<img src="${v}" border="0" height="26" />`:"","</td>",'<td width="50%" align="right">',b?`<img src="${b}" border="0" height="38" />`:"","</td>","</tr>","</table>"].join("")}</th></tr>`:"",e.map((e=>`<tr>${e.map((e=>{const{rowSpan:t,colSpan:a}=e;return 0===a?null:`<th colspan="${a}" rowspan="${t}">${e.title}</th>`})).join("")}</tr>`)).join(""),"</thead>"].join("")),r.length&&(n+=`<tbody>${r.map((e=>`<tr>${a.map(((t,a)=>{const{rowSpan:l,colSpan:n}=g(e,t,e.index,a,r);return l&&n?`<td rowspan="${l}" colspan="${n}">${((e,t,a,r)=>u.current.renderCellTitle(a,e,t,r))(e,e.index,t,a)}</td>`:null})).join("")}</tr>`)).join("")}</tbody>`),h&&m.length&&(n+=["<tfoot>",m.map((e=>`<tr>${a.map(((a,l)=>{const{dataIndex:n,summation:i}=a,o=(null==i?void 0:i.render)?i.render(r):getCellValue(e,`${n}_text`);return`<td>${0===l&&""===o?t("qm.table.config.summaryText"):o}</td>`})).join("")}</tr>`)).join(""),"</tfoot>"].join("")),n+="</table>",n},I=()=>{var e;null===(e=((e,t)=>{const{filename:a,type:r,isDownload:l}=e,n=`${a}.${r}`;if(window.Blob){const e=new Blob([t],{type:`text/${r}`});if(!l)return Promise.resolve({type:r,content:t,blob:e});download(e,n)}})({filename:"print",type:"html",isDownload:!1},P()))||void 0===e||e.then((e=>{let{content:t,blob:a}=e,r=document.createElement("iframe");r.setAttribute("frameborder","0"),r.setAttribute("width","100%"),r.setAttribute("height","0"),r.style.display="none",document.body.appendChild(r),d.current.isIE?(r.contentDocument.write(t),r.contentDocument.execCommand("print"),r.parentNode.removeChild(r),r=null):(r.onload=e=>{e.target.src&&e.target.contentWindow.print(),setTimeout((()=>{r.parentNode.removeChild(r),r=null}))},r.src=URL.createObjectURL(a))}))};React__default.useImperativeHandle(a,(()=>({clickHandle:I})));const A=getPrefixCls("table");return s?React__default.createElement("span",{className:`${A}-print`,title:t("qm.table.print.text"),onClick:()=>I()},React__default.createElement("i",{className:"svgicon icon"},React__default.createElement(PrinterOutlined,null))):null}));TablePrint.displayName="TablePrint";const defaultHeaderBackgroundColor="f5f5f5",defaultCellFontColor="606060",defaultCellBorderStyle="thin",defaultCellBorderColor="d4d4d4",setExcelRowHeight=(e,t)=>{t&&(e.height=Math.floor(.75*t))},setExcelCellStyle=(e,t)=>{e.protection={locked:!1},e.alignment={vertical:"middle",horizontal:t||"left"}},getDefaultBorderStyle=()=>({top:{style:defaultCellBorderStyle,color:{argb:defaultCellBorderColor}},left:{style:defaultCellBorderStyle,color:{argb:defaultCellBorderColor}},bottom:{style:defaultCellBorderStyle,color:{argb:defaultCellBorderColor}},right:{style:defaultCellBorderStyle,color:{argb:defaultCellBorderColor}}}),getValidColumn=e=>{const{children:t}=e;return t&&t.length?getValidColumn(t[0]):e},formatCellValue=e=>{const{precision:t,formatType:a}=e,r=t>=0?t?`0.${new Array(t).fill("0").join("")}`:"0":"";return r?{numFmt:r}:"percent"===a?{numFmt:t>=0?`${r}%`:"0%"}:"finance"===a?{numFmt:t>=0?`#,##${r}`:"#,##0"}:null},useExport=()=>{const{tableRef:e,tableProps:a,getSpan:r,showSummary:l,isHeadGroup:n}=React__default.useContext(TableContext),{spanMethod:i,showHeader:o}=a,s=(e,t)=>{var a,r;return null!==(r=null===(a=e.find((e=>e.text==t)))||void 0===a?void 0:a.value)&&void 0!==r?r:""};return{exportXLSX:(a,s,c,d)=>__awaiter(void 0,void 0,void 0,(function*(){const{columns:u,footSummation:p}=a,{scrollYStore:{rowHeight:f}}=e.current,m=columnsFlatMap(u),h=convertToRows(u),g=[],_=[],y=[],v=[];let b=0;const R={};m.forEach((e=>{const{dataIndex:t,title:a,width:r,minWidth:l,renderWidth:n}=e;R[t]=a,y.push({key:t,width:(r||n||l||config$1.defaultColumnWidth)/8})})),o&&(n?h.forEach(((e,t)=>{const a={};e.forEach((e=>{const{colSpan:r,rowSpan:l}=e,n=getValidColumn(e),i=m.findIndex((e=>{let{dataIndex:t}=e;return t===n.dataIndex}));a[n.dataIndex]=e.title,0!==r&&(r>1||l>1)&&v.push({s:{r:t,c:i},e:{r:t+l-1,c:i+r-1}})})),g.push(a)})):(m.forEach(((e,t)=>{const{colSpan:a,rowSpan:r}=e;(a>1||r>1)&&v.push({s:{r:b,c:t},e:{r:b+r-1,c:t+a-1}})})),g.push(R)),b+=g.length);const E=s.map(((e,t)=>{const a={};return m.forEach(((l,n)=>{if("function"==typeof i){const{rowSpan:a,colSpan:i}=r(e,l,t,n,s);(i>1||a>1)&&v.push({s:{r:t+b,c:n},e:{r:t+b+a-1,c:n+i-1}})}const o=["percent","finance"].includes(l.formatType);a[l.dataIndex]=o?getCellValue(e,l.dataIndex):d(e,t,l,n)})),a}));b+=E.length,l&&p&&c(m,s).forEach(((e,a)=>{const r={};m.forEach(((a,l)=>{const{dataIndex:n,summation:i}=a,o=(null==i?void 0:i.render)?i.render(s):getCellValue(e,n);r[n]=0===l&&""===o?t("qm.table.config.summaryText"):isValidElement(o)?getVNodeText(o).join(""):o})),_.push(r)}));const{sheetName:x,useStyle:C}=a,T=new ExcelJS.Workbook,S=T.addWorksheet(x);S.columns=y,o&&S.addRows(g).forEach((e=>{C&&setExcelRowHeight(e,f),e.eachCell((e=>{const t=S.getColumn(e.col),a=deepFindColumn(u,t.key),{align:r}=a;setExcelCellStyle(e,r),C&&Object.assign(e,{font:{bold:!0,color:{argb:defaultCellFontColor}},fill:{type:"pattern",pattern:"solid",fgColor:{argb:defaultHeaderBackgroundColor}},border:getDefaultBorderStyle()})}))})),S.addRows(E).forEach((e=>{C&&setExcelRowHeight(e,f),e.eachCell((e=>{const t=S.getColumn(e.col),a=deepFindColumn(u,t.key),{align:r}=a;setExcelCellStyle(e,r),Object.assign(e,formatCellValue(a)),C&&Object.assign(e,{font:{color:{argb:defaultCellFontColor}},border:getDefaultBorderStyle()})}))})),l&&p&&S.addRows(_).forEach((e=>{C&&setExcelRowHeight(e,f),e.eachCell((e=>{const t=S.getColumn(e.col),a=deepFindColumn(u,t.key),{align:r}=a;setExcelCellStyle(e,r),Object.assign(e,formatCellValue(a)),C&&Object.assign(e,{font:{color:{argb:defaultCellFontColor}},border:getDefaultBorderStyle()})}))})),v.forEach((e=>{let{s:t,e:a}=e;S.mergeCells(t.r+1,t.c+1,a.r+1,a.c+1)}));const w=yield T.xlsx.writeBuffer();return new Blob([w],{type:"application/octet-stream"})})),exportCSV:(e,t)=>{const a=e=>{let t=e;const a=-1!==e.indexOf(",")||-1!==e.indexOf("\r")||-1!==e.indexOf("\n"),r=-1!==e.indexOf('"');return r&&(t=t.replace(/"/g,'""')),(a||r)&&(t='"'+t+'"'),t},r="\ufeff"+(e=>{let t,r,l,n,i="";for(t=0;t<e.rows.length;t+=1){for(l=e.rows[t],r=0;r<l.cells.length;r+=1)n=l.cells[r],i=i+(r?",":"")+a(n.textContent.trim());i+="\r\n"}return i})((e=>{const t=document.createElement("div");return t.innerHTML=e,t.firstChild})(t));var l;return((e,t,a)=>{t=t||"",a=a||512;const r=window.atob(e),l=[];let n;for(n=0;n<r.length;n+=a){const e=r.slice(n,n+a),t=new Array(e.length);let i;for(i=0;i<e.length;i+=1)t[i]=e.charCodeAt(i);const o=new window.Uint8Array(t);l.push(o)}return new window.Blob(l,{type:t})})((l=r,window.btoa(unescape(encodeURIComponent(l)))),"application/csv")},importXLSX:(e,a)=>{const{columns:r,file:l}=e,n=columnsFlatMap(r),i=new FileReader;i.onerror=()=>{message.error(t("qm.table.import.error"))},i.onload=e=>{const r=n.map((e=>e.title)),l=new ExcelJS.Workbook,i=e.target;i?l.xlsx.load(i.result).then((e=>{const l=e.worksheets[0];if(l){const e=l.getSheetValues(),i=e.findIndex((e=>e&&e.length>0)),o=e[i],c=((e,t)=>t.some((t=>e.indexOf(t)>-1)))(r,o);if(c){const t=e.slice(i+1).map((e=>{const t={};e.forEach(((e,a)=>{let r=e;isPlainObject(r)&&(r=e.text),isDate$2(r)&&(r=formatDate(e,DATE_TIME_FORMAT)),t[o[a]]=r}));const a={};return r.forEach(((e,r)=>{var l;const{dataIndex:i,dictItems:o}=n[r];Array.isArray(o)&&((null===(l=t[e])||void 0===l?void 0:l.includes(","))?t[e]=t[e].split(",").map((e=>s(o,e))).filter((e=>""!==e)):t[e]=s(o,t[e])),setCellValue(a,i,t[e])})),a}));null==a||a(t)}else message.error(t("qm.table.import.error"))}else message.error(t("qm.table.import.error"))})):message.error(t("qm.table.import.error"))},i.readAsArrayBuffer(l)}}},SelectFile=e=>{const{fileType:a,onChange:r}=e;let l,n;const i=getPrefixCls("table"),o=e=>{const t=e.name,a=t.lastIndexOf("."),r=t.substring(a+1,t.length);return{filename:t.substring(0,a),type:r}},s=()=>__awaiter(void 0,void 0,void 0,(function*(){try{const e=yield(e=>{const a=Object.assign({},e);return l||(l=document.createElement("form"),n=document.createElement("input"),l.className=`${i}--file-form`,n.name="file",n.type="file",l.appendChild(n),document.body.appendChild(l)),new Promise(((e,r)=>{const i=!a.type;n.multiple=!!a.multiple,n.accept=i?"":`.${a.type}`,n.onchange=s=>{const{files:c}=s.target,d=c[0];let u="";if(!i)for(let e=0;e<c.length;e++){const{type:t}=o(c[e]);if(a.type!==t){u=t;break}}u?(message.warning(t("qm.upload.notType",{type:u})),r()):e(d),document.body.removeChild(l),l=null,n=null},l.reset(),n.click()}))})({type:a});null==r||r(e.name,e)}catch(e){}}));return React__default.createElement(QmButton,{onClick:()=>s()},t("qm.upload.text"))},Setting$5=e=>{const{columns:a,onClose:r}=e,{tableRef:l,tableProps:n,createTableData:i,dataChange:o}=React__default.useContext(TableContext),{beforeTableImport:s}=n,{importXLSX:c}=useExport(),d=React__default.useRef(null),[u,p]=React__default.useState(!1),[f,m]=React__default.useState(!0),h=e=>e.filter((e=>![config$1.expandableColumn,config$1.selectionColumn,"index","pageIndex",config$1.operationColumn].includes(e.dataIndex))),[g,_]=React__default.useState([{type:"INPUT",label:t("qm.table.export.fileName"),fieldName:"fileName",render:(e,t)=>{const{fileName:a}=t.GET_FIELDS_VALUE(["fileName"]);return React__default.createElement(React__default.Fragment,null,a?React__default.createElement("span",null,a):React__default.createElement(SelectFile,{fileType:t.state.formData.fileType,onChange:(e,a)=>{t.SET_FIELDS_VALUE({fileName:e,file:a}),a&&m(!1)}}))}},{type:"SELECT",label:t("qm.table.export.fileType"),fieldName:"fileType",allowClear:!1,options:{itemList:[{text:"xlsx",value:"xlsx"}]}},{type:"SELECT",label:t("qm.table.import.importType"),fieldName:"importType",allowClear:!1,options:{itemList:[{text:t("qm.table.import.fillText"),value:"fill"},{text:t("qm.table.import.addText"),value:"add"},{text:t("qm.table.import.insertText"),value:"insert"}]},onChange:e=>{g.find((e=>"posIndex"===e.fieldName)).hidden="insert"!==e,_([...g])}},{type:"INPUT_NUMBER",label:t("qm.table.import.insertPos"),fieldName:"posIndex",hidden:!0,rules:[{required:!0}],options:{min:1,max:l.current.tableFullData.length,formatter:e=>`第 ${e}`.replace(/\B(?=(\d{3})+(?!\d))/g,","),parser:e=>e.replace(/第\s?|(,*)/g,"")},extra:{labelWidth:50}}]),y=getPrefixCls("table");return React__default.createElement("div",{className:`${y}-import__setting`},React__default.createElement(QmForm,{ref:d,initialValues:{fileType:"xlsx",importType:"fill"},initialExtras:{posIndex:"条"},items:g,cols:1,labelWidth:100}),React__default.createElement("div",{style:{position:"absolute",left:0,bottom:0,right:0,zIndex:9,borderTop:"1px solid #d9d9d9",padding:"10px 15px",background:"#fff",textAlign:"right"}},React__default.createElement(QmButton,{onClick:()=>r(),style:{marginRight:8}},t("qm.table.export.closeButton")),React__default.createElement(QmButton,{type:"primary",loading:u,disabled:f,onClick:()=>__awaiter(void 0,void 0,void 0,(function*(){const[e,n]=yield d.current.GET_FORM_DATA();e||(p(!0),c({columns:h(a),file:n.file},(e=>__awaiter(void 0,void 0,void 0,(function*(){const{tableFullData:a,store:c}=l.current;if(e=Array.from(e).map((e=>e||{})),"function"==typeof s)try{e=yield s(e)}catch(e){}if("fill"===n.importType&&i(e),"add"===n.importType&&i([...a,...e]),"insert"===n.importType){const{tableFullData:t}=l.current,a=n.posIndex,r=t.slice(0,a).concat(e).concat(t.slice(a));i(r)}e.forEach((e=>{c.addToInserted(e)})),o(),message.success(t("qm.table.import.success",{total:e.length})),p(!1),r()})))))}))},t("qm.table.import.text"))))},TableImport=React__default.forwardRef(((e,a)=>{const{tableColumns:r,open:l=!0}=e,[n,i]=React__default.useState(!1),o=()=>{i(!0)};React__default.useImperativeHandle(a,(()=>({clickHandle:o})));const s={[`${getPrefixCls("table")}-import`]:!0},c={visible:n,title:t("qm.table.import.settingTitle"),width:600,height:"auto",loading:!1,bodyStyle:{paddingBottom:"52px"},onClose:()=>i(!1)};return React__default.createElement(React__default.Fragment,null,l&&React__default.createElement("span",{className:classNames(s),title:t("qm.table.import.textNoSpace"),onClick:()=>o()},React__default.createElement("i",{className:"svgicon icon"},React__default.createElement(ImportOutlined,null))),React__default.createElement(QmModal,c,React__default.createElement(Setting$5,{columns:r,onClose:()=>i(!1)})))}));TableImport.displayName="TableImport";const Define=e=>{const{columns:a,onChange:r}=e,{$size:l}=React__default.useContext(TableContext),n=React__default.useRef([]),[i,o]=React__default.useState(!1),[s,c]=React__default.useState(a);useUpdateEffect((()=>{u()}),[s]),React__default.useEffect((()=>{d()}),[a]);const d=()=>{const e=[];a.forEach(((t,r)=>{const l=t.colSpan;l>1&&a.slice(r+1,r+l).every((e=>{let{colSpan:t}=e;return 0===t}))&&e.push(a.slice(r,r+l))})),n.current=e},u=()=>{const e=[];s.forEach((t=>{const{colSpan:a,dataIndex:r}=t;if(0===a)return;if(1===a)return e.push(t);const l=n.current.findIndex((e=>e.map((e=>e.dataIndex)).includes(r)));if(-1===l)return e.push(t);e.push(...n[l].map(((e,a)=>{let{dataIndex:r}=e;const l=s.find((e=>e.dataIndex===r));return a>0&&void 0!==t.hidden&&(l.hidden=t.hidden),l})))})),null==r||r(e)},p=getPrefixCls("table"),f={[`${p}__popper`]:!0,"column-filter__popper":!0,[`${p}--lg`]:"large"===l,[`${p}--sm`]:"small"===l},m=[`${p}-column-filter`,{selected:i}];return React__default.createElement(Trigger,{action:["click"],popupVisible:i,popup:React__default.createElement("div",{className:"column-filter--wrap",style:{overflowY:"auto",maxHeight:"calc(100vh - 10px)"}},React__default.createElement("div",{className:"main"},React__default.createElement(ReactSortable,{itemKey:"dataIndex",handle:".main-handle",tag:"ul",animation:200,list:s,setList:e=>{const t=e.map((e=>e.dataIndex)),a=s.map((e=>e.dataIndex));isEqual$1(t,a)||c(e)}},s.map((e=>((e,a)=>{const{colSpan:r}=e;if(0===r)return React__default.createElement("li",{key:e.dataIndex,style:{display:"none"}});const l=["svgicon","handle",`${a}-handle`];return React__default.createElement("li",{key:e.dataIndex,className:"item"},React__default.createElement(Checkbox,{disabled:e.required,checked:!e.hidden,onChange:t=>{const{checked:a}=t.target;e.hidden=!a,c([...s])}}),React__default.createElement("i",{className:classNames(l),title:t("qm.table.columnFilter.draggable")},React__default.createElement(HolderOutlined,null)),React__default.createElement("span",{className:"text",title:e.title},e.title))})(e,"main")))))),popupClassName:classNames(f),popupStyle:{minWidth:MIN_POPPER_WIDTH},onPopupVisibleChange:e=>{o(e)},builtinPlacements:BUILT_IN_PLACEMENTS,prefixCls:"ant-select-dropdown",popupPlacement:"bottomLeft",popupTransitionName:"ant-slide-up"},React__default.createElement("span",{className:classNames(m),title:t("qm.table.columnFilter.text")},React__default.createElement("i",{className:"svgicon icon"},React__default.createElement(SettingOutlined,null)),React__default.createElement("span",null,t("qm.table.columnFilter.text"))))},Setting$4=e=>{const{defaultValue:a,onClose:r,onOk:l}=e,{tableProps:n,pagination:i,showSummary:o}=React__default.useContext(TableContext),{rowSelection:s}=n,c=React__default.useRef(null),[d,u]=React__default.useState(!1),p=React__default.useMemo((()=>Object.assign({},{fileName:`${dayjs().format(DEFAULT_FILENAME_FORMAT)}.xlsx`,fileType:"xlsx",sheetName:"sheet1",exportType:"all","startIndex|endIndex":[1,i.total],footSummation:o?1:0,useStyle:0},a,{columns:deepClone(a.columns||[])})),[]),[f,m]=React__default.useState([{type:"INPUT",label:t("qm.table.export.fileName"),fieldName:"fileName"},{type:"SELECT",label:t("qm.table.export.fileType"),fieldName:"fileType",options:{itemList:[{text:"xlsx",value:"xlsx"},{text:"csv",value:"csv"}]}},{type:"INPUT",label:t("qm.table.export.sheetName"),fieldName:"sheetName"},{type:"RANGE_INPUT_NUMBER",fieldName:"startIndex|endIndex",label:{type:"SELECT",fieldName:"exportType",options:{itemList:[{text:t("qm.table.export.all"),value:"all"},{text:t("qm.table.export.selected"),value:"selected",disabled:"checkbox"!==(null==s?void 0:s.type)},{text:t("qm.table.export.custom"),value:"custom"}]},onChange:e=>{f.find((e=>"startIndex|endIndex"===e.fieldName)).disabled="custom"!==e,m([...f])}},options:{min:1},disabled:!0},{type:"INPUT",label:t("qm.table.columnFilter.text"),fieldName:"columns",render:(e,t)=>React__default.createElement(Define,{columns:t.state.formData.columns,onChange:e=>{t.SET_FIELDS_VALUE({columns:e})}})},{type:"CHECKBOX",label:t("qm.table.export.footSummation"),fieldName:"footSummation",disabled:!o,options:{trueValue:1,falseValue:0}},{type:"CHECKBOX",label:t("qm.table.export.useStyle"),fieldName:"useStyle",options:{trueValue:1,falseValue:0}}]),h=getPrefixCls("table");return React__default.createElement("div",{className:`${h}-export__setting`},React__default.createElement(QmForm,{ref:c,initialValues:p,items:f,cols:1,labelWidth:100}),React__default.createElement("div",{style:{position:"absolute",left:0,bottom:0,right:0,zIndex:9,borderTop:"1px solid #d9d9d9",padding:"10px 15px",background:"#fff",textAlign:"right"}},React__default.createElement(QmButton,{onClick:()=>r(),style:{marginRight:8}},t("qm.table.export.closeButton")),React__default.createElement(QmButton,{type:"primary",loading:d,onClick:()=>__awaiter(void 0,void 0,void 0,(function*(){const[e,t]=yield c.current.GET_FORM_DATA();if(!e){u(!0);for(const e in t)"footSummation"!==e&&"useStyle"!==e||(t[e]=!!t[e]);l(t),yield sleep(1e3),u(!1),r()}}))},t("qm.table.export.text"))))},TableExport=React__default.forwardRef(((e,a)=>{var r;const{tableColumns:l,open:n=!0}=e,{global:i}=React__default.useContext(ConfigContext),{tableRef:o,tableBodyRef:s,tableProps:c,flattenColumns:d,pagination:u,fetchParams:p,isFetch:f,isGroupSubtotal:m,showSummary:h,getSpan:g}=React__default.useContext(TableContext),{exportExcel:_,fetch:y,showHeader:v}=c,[b,R]=React__default.useState(!1),[E,x]=React__default.useState(!1),C=React__default.useMemo((()=>{var e;return!!(null===(e=null==_?void 0:_.fetch)||void 0===e?void 0:e.api)}),[_]),T=React__default.useMemo((()=>!u.total||E),[u.total,E]),S=React__default.useMemo((()=>filterTableColumns(l,[config$1.expandableColumn,config$1.selectionColumn,config$1.operationColumn])),[l]),w=React__default.useMemo((()=>filterTableColumns(d,[config$1.expandableColumn,config$1.selectionColumn,config$1.operationColumn])),[d]),P=(e,t)=>{const a={};return e.filter((e=>!!e.summation)).forEach((e=>{const{dataIndex:r}=e,l=(m?getGroupValidData(t):t).reduce(((e,t)=>{if(null==t?void 0:t[config$1.summaryIgnore])return e;const a=Number(getCellValue(t,r));return Number.isNaN(a)?e:e+a}),0);setCellValue(a,r,l)})),[a]},N=(e,t,a,r)=>{const{precision:l,formatType:n}=a;let i=s.current.renderCellTitle(a,e,t,r);return l>=0&&!n&&""!==i&&(i=Number(i)),i},{exportXLSX:I,exportCSV:A}=useExport(),$=e=>__awaiter(void 0,void 0,void 0,(function*(){var t;const{api:a,dataKey:r}=y;let l=[];try{x(!0);const n=yield a(Object.assign(Object.assign({},p),{[config$1.currentPageName]:1,[config$1.pageSizeName]:null!=e?e:u.total}));200===n.code&&(l=(Array.isArray(n.data)?n.data:null!==(t=get(n.data,r))&&void 0!==t?t:[]).map(((e,t)=>{const a=Object.assign(Object.assign({},e),{index:t,pageIndex:t});return w.forEach(((e,t)=>{const{dataIndex:r}=e;"index"!==r&&"pageIndex"!==r&&setCellValue(a,r,getCellValue(a,r))})),a})))}catch(e){}return x(!1),l})),O=e=>{var t;const a=null===(t=null==i?void 0:i.table)||void 0===t?void 0:t.recordExportLog;try{null==a||a({fileName:e})}catch(e){}},F=(e,a)=>{const{columns:r,footSummation:l}=e,n=convertToRows(r),i=columnsFlatMap(r);let o='<table width="100%" border="0" cellspacing="0" cellpadding="0">';return o+=`<colgroup>${i.map((e=>{let{width:t,minWidth:a,renderWidth:r}=e;return`<col style="width:${t||r||a||config$1.defaultColumnWidth}px">`})).join("")}</colgroup>`,v&&(o+=["<thead>",n.map((e=>`<tr>${e.map((e=>{const{rowSpan:t,colSpan:a}=e;return 0===a?null:`<th colspan="${a}" rowspan="${t}">${e.title}</th>`})).join("")}</tr>`)).join(""),"</thead>"].join("")),a.length&&(o+=`<tbody>${a.map((e=>`<tr>${i.map(((t,r)=>{const{rowSpan:l,colSpan:n}=g(e,t,e.index,r,a);return l&&n?`<td rowspan="${l}" colspan="${n}">${N(e,e.index,t,r)}</td>`:null})).join("")}</tr>`)).join("")}</tbody>`),h&&l&&(o+=["<tfoot>",P(i,a).map((e=>`<tr>${i.map(((r,l)=>{const{dataIndex:n,summation:i}=r,o=(null==i?void 0:i.render)?i.render(a):getCellValue(e,n);return`<td>${0===l&&""===o?t("qm.table.config.summaryText"):isValidElement(o)?getVNodeText(o).join(""):o}</td>`})).join("")}</tr>`)).join(""),"</tfoot>"].join("")),o+="</table>",o},L=null!==(r=null==_?void 0:_.fileName)&&void 0!==r?r:`${dayjs().format(DEFAULT_FILENAME_FORMAT)}.xlsx`,D=L.slice(L.lastIndexOf(".")+1).toLowerCase(),k=()=>{if(T)return message.warning(t("qm.table.export.warnText"));var e;C?(e=L,__awaiter(void 0,void 0,void 0,(function*(){x(!0);try{const{api:t,params:a}=_.fetch,r=yield t(Object.assign(Object.assign(Object.assign({columns:w.map((e=>{const{title:t,dataIndex:a,hidden:r}=e,{type:l}=e.filter||{};return{title:t,dataIndex:a,type:l,hidden:r}}))},p),a),{tsortby:void 0,tsummary:void 0,tgroupby:void 0,[config$1.currentPageName]:void 0,[config$1.pageSizeName]:void 0}));r.data&&(download(r.data,e),O(e))}catch(e){}x(!1)}))):R(!0)};React__default.useImperativeHandle(a,(()=>({clickHandle:k})));const H={[`${getPrefixCls("table")}-export`]:!0},V={visible:b,title:t("qm.table.export.settingTitle"),width:600,loading:!1,bodyStyle:{paddingBottom:"52px"},onClose:()=>R(!1)},M={fileName:L.slice(0,L.lastIndexOf(".")),fileType:D,columns:S,useStyle:(null==_?void 0:_.cellStyle)?1:0};return React__default.createElement(React__default.Fragment,null,n&&React__default.createElement("span",{className:classNames(H),title:t("qm.table.export.textNoSpace"),onClick:()=>k()},React__default.createElement("i",{className:"svgicon icon"},React__default.createElement(DownloadOutlined,null))),React__default.createElement(QmModal,V,React__default.createElement(Setting$4,{defaultValue:M,onClose:()=>R(!1),onOk:e=>{var t;t=Object.assign({},e,{columns:createFilterColumns(e.columns)}),__awaiter(void 0,void 0,void 0,(function*(){const{fileName:e,fileType:a,exportType:r,startIndex:l=1,endIndex:n}=t,{allTableData:i,selectionRows:s}=o.current;let c=[];if(f?("all"===r&&(c=yield $()),"custom"===r&&(c=yield $(n),c=c.slice(l-1))):("all"===r&&(c=i.slice(0)),"custom"===r&&(c=i.slice(l-1,n||void 0))),"selected"===r&&(c=s.slice(0)),"xlsx"===a){const a=yield I(t,c,P,N);download(a,`${e}.xlsx`),O(`${e}.xlsx`)}if("csv"===a){const a=A(t,F(t,c));download(a,`${e}.csv`),O(`${e}.csv`)}}))}})))}));TableExport.displayName="TableExport";const Setting$3=e=>{const{columns:a,onClose:r}=e,{tableRef:l,tableBodyRef:n,tableProps:i,dataChange:o}=React__default.useContext(TableContext),{beforeClipboard:s}=i,c=React__default.useRef(null),[d,u]=React__default.useState([{type:"INPUT_NUMBER",label:t("qm.table.clipboard.rowIndex"),fieldName:"rowIndex",options:{min:1},extra:{labelWidth:50},rules:[{required:!0}]},{type:"SELECT",label:t("qm.table.clipboard.colIndex"),fieldName:"dataIndex",options:{itemList:a.map(((e,t)=>({value:t,text:e.title})))},rules:[{required:!0}],extra:{labelWidth:50}},{type:"TEXT_AREA",label:t("qm.table.clipboard.content"),fieldName:"content",placeholder:t("qm.table.clipboard.placeholder"),options:{autoSize:{minRows:4}},rules:[{required:!0}]}]),[p,f]=React__default.useState(!1),m=getPrefixCls("table");return React__default.createElement("div",{className:`${m}-clipboard__setting`},React__default.createElement("h3",{className:"info"},t("qm.table.clipboard.supportText")),React__default.createElement(QmForm,{ref:c,initialValues:{},initialExtras:{rowIndex:"行",dataIndex:"列"},items:d,cols:1,labelWidth:100}),React__default.createElement("div",{style:{position:"absolute",left:0,bottom:0,right:0,zIndex:9,borderTop:"1px solid #d9d9d9",padding:"10px 15px",background:"#fff",textAlign:"right"}},React__default.createElement(QmButton,{onClick:()=>r(),style:{marginRight:8}},t("qm.table.export.closeButton")),React__default.createElement(QmButton,{type:"primary",loading:p,onClick:()=>__awaiter(void 0,void 0,void 0,(function*(){var e;const[i,d]=yield c.current.GET_FORM_DATA();if(i)return;const{tableFullData:u,store:p}=l.current;f(!0);const m=d.content.trim().replace(/(\r|\n)$/,"");let h=m.replace(/"[^"]+"/g,"^");((null===(e=m.match(/"[^"]+"/g))||void 0===e?void 0:e.map((e=>e.replace(/"/g,"").replace(/\r|\n/g," "))))||[]).forEach((e=>{h=h.replace(/\^/,e)}));let g=h.split(/\r|\n/).map((e=>e.split(/\t/)));if("function"==typeof s)try{g=yield s(g,g[0].map(((e,t)=>a[d.dataIndex+t].dataIndex)))}catch(i){}g.forEach(((e,t)=>{e.forEach(((e,r)=>{var n,i;const o=u[d.rowIndex-1+t],s=a[d.dataIndex+r];if(o&&s){let t=!1;if(s.editRender){const e=s.editRender(o,s);t=!(e.disabled||(null===(n=e.extra)||void 0===n?void 0:n.disabled)||(null===(i=l.current.fieldAuth[s.dataIndex])||void 0===i?void 0:i.disabled))}t&&s.dictItems&&(t=s.dictItems.some((t=>t.value==e))),t&&(setCellValue(o,s.dataIndex,e),p.addToUpdated(o))}}))})),n.current.forceUpdate(),o(),message.success(t("qm.table.clipboard.success",{total:g.length})),f(!1),r()}))},t("qm.table.clipboard.text"))))},TableClipboard=React__default.forwardRef(((e,a)=>{const{flattenColumns:r,open:l=!0}=e,[n,i]=React__default.useState(!1),o=React__default.useMemo((()=>(e=>e.filter((e=>![config$1.expandableColumn,config$1.selectionColumn,"index","pageIndex",config$1.operationColumn].includes(e.dataIndex))))(r)),[r]),s=()=>{i(!0)};React__default.useImperativeHandle(a,(()=>({clickHandle:s})));const c={[`${getPrefixCls("table")}-clipboard`]:!0},d={visible:n,title:t("qm.table.clipboard.settingTitle"),width:600,height:"auto",loading:!1,bodyStyle:{paddingBottom:"52px"},onClose:()=>i(!1)};return React__default.createElement(React__default.Fragment,null,l&&React__default.createElement("span",{className:classNames(c),title:t("qm.table.clipboard.textNoSpace"),onClick:()=>s()},React__default.createElement("i",{className:"svgicon icon"},React__default.createElement(CopyOutlined,null))),React__default.createElement(QmModal,d,React__default.createElement(Setting$3,{columns:o,onClose:()=>i(!1)})))}));TableClipboard.displayName="TableClipboard";const Result$2=e=>{const{columns:a,onClose:r}=e,{tableProps:l,tableRef:n,$size:i,selectionKeys:o,setSelectionKeys:s}=React__default.useContext(TableContext),{rowKey:c}=l,d=e=>e.map((e=>{var t;const a={dataIndex:e.dataIndex,title:e.title,width:e.width,minWidth:e.minWidth,precision:e.precision,dictItems:null!==(t=e.dictItems)&&void 0!==t?t:[],render:e.render};return Array.isArray(e.children)&&(a.children=d(e.children)),a})),[u,p]=React__default.useState([{title:t("qm.table.groupSummary.index"),dataIndex:"index",width:80,render:e=>e+1},...d(a.filter((e=>![config$1.expandableColumn,config$1.selectionColumn,"index","pageIndex",config$1.operationColumn].includes(e.dataIndex))))]),[f]=React__default.useState(n.current.selectionRows.map((e=>Object.assign(Object.assign({},e),{children:void 0}))));return React__default.createElement(React__default.Fragment,null,React__default.createElement(Table,{size:i,columns:u,dataSource:f,rowKey:c,minHeight:338,rowSelection:{type:"checkbox",selectedRowKeys:o,onChange:e=>s(e)},webPagination:!0,ignorePageIndex:!0,showFastSearch:!1,showTableImport:!1,showSelectCollection:!1,showClipboard:!1,showFullScreen:!1,showColumnDefine:!1,columnsChange:e=>p(e)}),React__default.createElement("div",{style:{height:10}}),React__default.createElement("div",{style:{position:"absolute",left:0,bottom:0,right:0,zIndex:9,borderTop:"1px solid #d9d9d9",padding:"10px 15px",background:"#fff",textAlign:"right"}},React__default.createElement(QmButton,{onClick:()=>r()},t("qm.table.selectCollection.closeButton"))))},SelectCollection=React__default.forwardRef(((e,a)=>{const{columns:r,open:l=!0}=e,{tableProps:n,getRowKey:i,isFetch:o,isTableEmpty:s,setSelectionKeys:c,setSelectionRows:d}=React__default.useContext(TableContext),{rowSelection:u}=n,[p,f]=React__default.useState(!1),m=React__default.useRef(!1);useUpdateEffect((()=>{!m.current&&h()}),[s]);const h=()=>__awaiter(void 0,void 0,void 0,(function*(){var e;const{fetchSelectedRows:t,disabled:a=(e=>!1)}=u;if(o&&t)try{const r=yield t.api(t.params);if(200===r.code){let l=Array.isArray(r.data)?r.data:null!==(e=get(r.data,t.dataKey))&&void 0!==e?e:[];l=l.filter((e=>!a(e))),d(l),c(l.map(((e,t)=>i(e,t)))),m.current=!0}}catch(e){}})),g=()=>{f(!0)};React__default.useImperativeHandle(a,(()=>({clickHandle:g})));const _=getPrefixCls("table"),y={visible:p,title:t("qm.table.selectCollection.settingTitle"),loading:!1,bodyStyle:{paddingBottom:"52px"},onClose:()=>f(!1)};return React__default.createElement(React__default.Fragment,null,l&&React__default.createElement("span",{className:`${_}-select-collection`,title:t("qm.table.selectCollection.text"),onClick:()=>g()},React__default.createElement("i",{className:"svgicon icon"},React__default.createElement(CheckSquareOutlined,null))),React__default.createElement(QmModal,y,React__default.createElement(Result$2,{columns:r,onClose:()=>f(!1)})))}));SelectCollection.displayName="SelectCollection";const isDate=e=>"string"==typeof e&&/^\d{4}-\d{2}-\d{2}(\s\d{2}:\d{2}:\d{2})?$/.test(e),Setting$2=e=>{const{onClose:a}=e,{global:r}=React__default.useContext(ConfigContext),{tableProps:l,tableRef:n,getRowKey:i,$size:o,flattenColumns:s,pagination:c,setPagination:d,scrollYToRecord:u,setHighlightKey:p,setShouldToTop:f,isTreeTable:m,isWebPagination:h}=React__default.useContext(TableContext),{uniqueKey:g}=l,_=React__default.useRef(null),y=React__default.useRef(null),v=React__default.useRef([]),b=React__default.useRef(""),R=React__default.useRef(-1),E=React__default.useRef("stop");useUpdateEffect((()=>{const{current:e,pageSize:t}=c,a=n.current.tableFullData.slice((e-1)*t,e*t),r=getAllTableData(a).findIndex((e=>i(e,e.index)===b.current));u("",r)}),[c.current]);const x=e=>{let t;switch(e){case"text":case"textarea":default:t="INPUT";break;case"number":t="INPUT_NUMBER";break;case"date":t="DATE";break;case"checkbox":case"radio":t="SELECT"}return t},C=e=>e.filter((e=>null==e?void 0:e.dataIndex)).map((e=>{var t;return{type:x(e.filter.type),fieldName:e.dataIndex,label:e.title,tooltip:e.description,options:{dateType:"exactdate",itemList:null!==(t=e.dictItems)&&void 0!==t?t:[]},onChange:()=>__awaiter(void 0,void 0,void 0,(function*(){const[e,t]=yield _.current.GET_FORM_DATA(),[a,r]=yield y.current.GET_FORM_DATA(),l=omitBy(Object.assign({},t,r),isEmpty);P(l)}))}})),T={case:0,fullchar:0},S=React__default.useMemo((()=>s.filter((e=>![config$1.expandableColumn,config$1.selectionColumn,"index","pageIndex",config$1.operationColumn].includes(e.dataIndex))).filter((e=>e.filter))),[s]),[w,P]=React__default.useState({}),[N,I]=React__default.useState(T),[A]=React__default.useState(C([S[0]])),[$]=React__default.useState(C(S.slice(1))),[O,F]=React__default.useState(0),L=React__default.useMemo((()=>!Object.keys(w).length),[w]);useUpdateEffect((()=>{E.current="ready"}),[w,N]);const D=e=>{I(Object.assign({},N,e))},k=(e,a,r)=>new Promise(((l,n)=>{Modal.confirm({title:t("qm.button.confirmPrompt"),content:e,onOk:()=>{a(),l()},onCancel:()=>{r(),l()}})})),H=e=>__awaiter(void 0,void 0,void 0,(function*(){if(!Object.keys(w).length)return Modal.warning({title:t("qm.button.confirmPrompt"),content:t("qm.table.fastSearch.queryCondition")});if("ready"===E.current&&(E.current="stop",v.current=(e=>{const{allTableData:t}=n.current,a=[];for(let r=0,l=t.length;r<l;r++){const l=t[r];let n=!0;for(const t in e){const{type:a}=S.find((e=>e.dataIndex===t)).filter;let r=getCellValue(l,t),i=!0;if("text"===a||"textarea"===a?i=new RegExp(N.fullchar?`^${e[t]}$`:e[t],N.case?"":"i").test(r):(r=isDate(r)?r.slice(0,10):r,i=r==e[t]),!i){n=!1;break}}n&&a.push(l)}return a})(w),F(v.current.length)),!v.current.length)return p(""),Modal.warning({title:t("qm.button.confirmPrompt"),content:t("qm.table.fastSearch.notMatch")});"next"===e&&(R.current=R.current<0?0:R.current+1,R.current>v.current.length-1&&(yield k(t("qm.table.fastSearch.toTheEnd"),(()=>R.current=0),(()=>R.current=v.current.length-1)))),"prev"===e&&(R.current=R.current<0?v.current.length-1:R.current-1,R.current<0&&(yield k(t("qm.table.fastSearch.toStart"),(()=>R.current=v.current.length-1),(()=>R.current=0))));const a=v.current[R.current],r=i(a,a.index);let l=a.index;if(m&&h){const e=deepGetRowkey(n.current.deriveRowKeys,r)[0];l=n.current.tableFullData.findIndex((t=>i(t,t.index)===e))}((e,t)=>{if(b.current=e,h){const{pageSize:e}=c,a=Math.ceil((t+1)/e);f(!1),d(Object.assign({},c,{current:a}))}else u(e)})(r,l),p(r)})),V=()=>{_.current.RESET_FORM(),y.current.RESET_FORM()},M=React__default.useMemo((()=>g?`fastSearch_${g}`:""),[g]),[j,q]=React__default.useState([]),[U,K]=React__default.useState(""),[B,z]=React__default.useState("");useUpdateEffect((()=>{if(B){const{filters:e,config:t}=j.find((e=>e.value===B)).list;_.current.SET_FIELDS_VALUE(omit(e,$.map((e=>e.fieldName)))),y.current.SET_FIELDS_VALUE(omit(e,A.map((e=>e.fieldName)))),P(e),I(t)}else V(),P({}),I(T)}),[B]),React__default.useEffect((()=>{W()}),[]);const W=()=>__awaiter(void 0,void 0,void 0,(function*(){if(!M)return;let e=yield localforage.getItem(M);e||(e=yield G(M),Array.isArray(e)&&(yield localforage.setItem(M,e))),Array.isArray(e)&&e.length&&(q(e),z(e[0].value))})),G=e=>__awaiter(void 0,void 0,void 0,(function*(){const t=null==r?void 0:r.getComponentConfigApi;if(t)try{const a=yield t({key:e});if(200===a.code)return a.data}catch(e){}})),Q=(e,t)=>__awaiter(void 0,void 0,void 0,(function*(){const a=null==r?void 0:r.saveComponentConfigApi;if(a)try{yield a({[e]:t})}catch(e){}})),Y=getPrefixCls("table");return React__default.createElement("div",{className:`${Y}-fast-search__setting`},React__default.createElement("div",{className:"main"},React__default.createElement("div",{className:"top"},React__default.createElement("div",{className:"container"},React__default.createElement(QmTabs,{defaultActiveKey:"1",size:"small",tabBarExtraContent:React__default.createElement("span",null,t("qm.table.alert.total",{total:O}))},React__default.createElement(QmTabs.TabPane,{tab:t("qm.table.fastSearch.tabPanes.0"),key:"1",forceRender:!0},React__default.createElement(QmForm,{ref:_,items:A,cols:1,labelWidth:110})),React__default.createElement(QmTabs.TabPane,{tab:t("qm.table.fastSearch.tabPanes.1"),key:"2",forceRender:!0},React__default.createElement(QmForm,{ref:y,items:$,cols:1,labelWidth:110})))),React__default.createElement("div",{className:"saved line"},React__default.createElement("div",{className:"form-wrap"},React__default.createElement(Input,{size:o,value:U,placeholder:t("qm.table.highSearch.configText"),disabled:L,onChange:e=>{const{value:t}=e.target;K(t)}}),React__default.createElement(QmButton,{type:"primary",disabled:!U||L,style:{marginLeft:"10px"},onClick:()=>__awaiter(void 0,void 0,void 0,(function*(){if(!M)return warn("Table","必须设置组件参数 `uniqueKey` 才能保存");const e=createUidKey(),t=[...j,{text:U,value:e,list:{filters:w,config:N}}];q(t),z(e),K(""),yield localforage.setItem(M,t),yield Q(M,t)}))},t("qm.table.highSearch.saveButton"))),React__default.createElement("div",{className:"card-wrap"},React__default.createElement("h5",{style:{height:`${config$1.rowHeightMaps[o]}px`}},React__default.createElement("span",null,t("qm.table.fastSearch.savedSetting"))),React__default.createElement("ul",null,j.map((e=>React__default.createElement("li",{key:e.value,className:classNames({selected:e.value===B}),title:e.text,onClick:()=>{return t=e.value,void z(t!==B?t:"");var t}},React__default.createElement("span",{className:"title"},e.text),React__default.createElement("i",{className:"svgicon close",title:t("qm.table.highSearch.removeText"),onClick:t=>{var a;t.stopPropagation(),a=e.value,__awaiter(void 0,void 0,void 0,(function*(){if(!a)return;const e=j.filter((e=>e.value!==a));q(e),a===B&&z(""),yield localforage.setItem(M,e),yield Q(M,e)}))}},React__default.createElement(CloseCircleOutlined,null))))),!j.length&&React__default.createElement("div",{style:{padding:DEFAULT_DISTANCE}},React__default.createElement(QmEmpty,null)))))),React__default.createElement("div",{className:"bottom"},React__default.createElement("div",null,React__default.createElement(Checkbox,{checked:!!N.case,onChange:e=>D({case:e.target.checked})},t("qm.table.fastSearch.matchCase")),React__default.createElement(Checkbox,{checked:!!N.fullchar,onChange:e=>D({fullchar:e.target.checked})},t("qm.table.fastSearch.matchFullchar"))),React__default.createElement("div",null,React__default.createElement(QmButton,{onClick:()=>V()},t("qm.table.fastSearch.clear"))))),React__default.createElement("div",{style:{position:"absolute",left:0,bottom:0,right:0,height:`${SizeHeight[o]+20}px`,zIndex:9,borderTop:"1px solid #d9d9d9",padding:"10px 15px",background:"#fff",textAlign:"right",boxSizing:"border-box"}},React__default.createElement(QmButton,{onClick:()=>a(),style:{marginRight:8}},t("qm.table.fastSearch.closeButton")),React__default.createElement(QmButton,{type:"primary",style:{marginRight:8},onClick:()=>H("prev")},t("qm.table.fastSearch.queryPrev")),React__default.createElement(QmButton,{type:"primary",onClick:()=>H("next")},t("qm.table.fastSearch.queryNext"))))},FastSearch=React__default.forwardRef(((e,a)=>{const{open:r=!0}=e,{$size:l}=React__default.useContext(TableContext),[n,i]=React__default.useState(!1),o=()=>{i(!0)};React__default.useImperativeHandle(a,(()=>({clickHandle:o})));const s=getPrefixCls("table"),c={visible:n,title:t("qm.table.fastSearch.settingTitle"),width:600,loading:!1,bodyStyle:{paddingBottom:`${SizeHeight[l]+20}px`},onClose:()=>i(!1)};return React__default.createElement(React__default.Fragment,null,r&&React__default.createElement("span",{className:`${s}-super-search`,title:t("qm.table.fastSearch.text"),onClick:()=>o()},React__default.createElement("i",{className:"svgicon icon"},React__default.createElement(MonitorOutlined,null))),React__default.createElement(QmModal,c,React__default.createElement(Setting$2,{onClose:()=>i(!1)})))}));FastSearch.displayName="FastSearch";const Result$1=e=>{const{columns:a,group:r,summary:l}=e,{tableRef:n,tableProps:i,$size:o,pagination:s,fetchParams:c,isFetch:d}=React__default.useContext(TableContext),{fetch:u}=i,p=e=>{var t;const r=a.find((t=>t.dataIndex===e));return{title:r.title,precision:r.precision,dictItems:null!==(t=r.dictItems)&&void 0!==t?t:[]}},f=r.map((e=>Object.assign({dataIndex:e.group},p(e.group)))),m=l.map((e=>e.summary===config$1.groupSummary.total.value?{dataIndex:e.summary,title:config$1.groupSummary.total.text,formula:e.formula}:Object.assign(Object.assign({dataIndex:e.summary},p(e.summary)),{formula:e.formula}))),h=React__default.useMemo((()=>Object.assign({},c,{[config$1.sorterFieldName]:void 0,[config$1.groupSummary.summaryFieldName]:l.map((e=>`${e.formula}|${e.summary}`)).join(","),[config$1.groupSummary.groupbyFieldName]:r.map((e=>e.group)).join(","),usedJH:2,[config$1.currentPageName]:1})),[c,r,l]),[g,_]=React__default.useState(((e,r)=>[{title:t("qm.table.groupSummary.index"),dataIndex:"pageIndex",width:80,render:e=>e+1},...e.map((e=>({title:e.title,dataIndex:e.dataIndex,dictItems:e.dictItems}))),...r.map((e=>{var t;const r=null===(t=a.find((t=>t.dataIndex===e.dataIndex)))||void 0===t?void 0:t.groupSummary;let l=r?{summation:r}:null;return e.dataIndex===config$1.groupSummary.total.value&&(l={dataIndex:config$1.groupSummary.recordTotalIndex,summation:{render:()=>s.total}}),Object.assign(Object.assign({},e),"count"===e.formula||"sum"===e.formula?l:null)}))])(f,m)),[y]=React__default.useState(d?[]:(e=>{const t=groupByProps(e,r.map((e=>e.group))),a=[];return t.forEach((e=>{const t={};g.forEach((a=>{const{dataIndex:r}=a;"index"!==r&&setCellValue(t,r,getCellValue(e[0],r))})),l.forEach((a=>{const r=a.summary!==config$1.groupSummary.total.value?a.summary:config$1.groupSummary.recordTotalIndex,l=a.formula;"count"===l&&setCellValue(t,r,e.length),"sum"===l&&setCellValue(t,r,sumBy(e,r)),"max"===l&&setCellValue(t,r,maxBy(e,r)[r]),"min"===l&&setCellValue(t,r,minBy(e,r)[r]),"avg"===l&&setCellValue(t,r,(sumBy(e,r)/e.length).toFixed(2))})),a.push(t)})),a})(n.current.tableFullData)),v=Object.assign(Object.assign({size:o,height:400},d?{fetch:{api:u.api,params:h,dataKey:null==u?void 0:u.dataKey}}:{dataSource:y}),{columns:g,rowKey:e=>e.index,showFastSearch:!1,showTableImport:!1,exportExcel:{fileName:`${dayjs().format("YYYYMMDDHHmmss")}.xlsx`},tablePrint:{showLogo:!0},columnsChange:e=>_(e)});return React__default.createElement(Table,v)},Setting$1=e=>{const{onClose:a}=e,{global:r}=React__default.useContext(ConfigContext),{tableProps:l,$size:n,flattenColumns:i}=React__default.useContext(TableContext),{uniqueKey:o}=l,s=React__default.useRef(null),c=React__default.useRef(null),[d,u]=React__default.useState(!1),[p,f]=React__default.useState([]),[m,h]=React__default.useState(""),[g,_]=React__default.useState("");useUpdateEffect((()=>{if(g){const{group:e,summary:t}=p.find((e=>e.value===g)).list;C(e),P(t)}else{const e=O();C((null==e?void 0:e.group)||[]),P((null==e?void 0:e.summary)||[])}}),[g]),React__default.useEffect((()=>{F()}),[]);const y=React__default.useMemo((()=>o?`summary_${o}`:""),[o]),v=React__default.useMemo((()=>i.filter((e=>![config$1.expandableColumn,config$1.selectionColumn,"index","pageIndex",config$1.operationColumn].includes(e.dataIndex)))),[i]),b=v.filter((e=>!e.groupSummary)).map((e=>({text:e.title,value:e.dataIndex}))),R=[config$1.groupSummary.total,...v.filter((e=>!!e.groupSummary)).map((e=>({text:e.title,value:e.dataIndex})))],E=[{text:t("qm.table.groupSummary.sumText"),value:"sum"},{text:t("qm.table.groupSummary.maxText"),value:"max"},{text:t("qm.table.groupSummary.minText"),value:"min"},{text:t("qm.table.groupSummary.avgText"),value:"avg"},{text:t("qm.table.groupSummary.countText"),value:"count"}],[x,C]=React__default.useState([]),[T,S]=React__default.useState([{title:t("qm.table.groupSummary.operation"),dataIndex:"__action__",fixed:"left",width:80,render:(e,a)=>React__default.createElement("div",null,React__default.createElement(QmButton,{type:"text",onClick:()=>{s.current.REMOVE_RECORDS(a)}},t("qm.table.groupSummary.removeText")))},{dataIndex:"group",title:t("qm.table.groupSummary.groupItem"),minWidth:200,editRender:e=>({type:"select",editable:!0,extra:{cornerSign:!1},items:b.map((e=>Object.assign(Object.assign({},e),{disabled:x.findIndex((t=>t.group===e.value))>-1})))})}]),[w,P]=React__default.useState([]),[N,I]=React__default.useState([{title:t("qm.table.groupSummary.operation"),dataIndex:"__action__",fixed:"left",width:80,render:(e,a)=>React__default.createElement("div",null,React__default.createElement(QmButton,{type:"text",onClick:()=>{c.current.REMOVE_RECORDS(a)}},t("qm.table.groupSummary.removeText")))},{dataIndex:"summary",title:t("qm.table.groupSummary.summaryColumn"),minWidth:200,editRender:e=>({type:"select",editable:!0,items:R.map((e=>Object.assign(Object.assign({},e),{disabled:w.findIndex((t=>t.summary===e.value))>-1}))),extra:{cornerSign:!1},onChange:t=>{e.formula=""}})},{dataIndex:"formula",title:t("qm.table.groupSummary.calcFormula"),width:140,editRender:e=>({type:"select",editable:!0,extra:{cornerSign:!1},items:e.summary===config$1.groupSummary.total.value?E.slice(E.length-1):E})}]),A=React__default.useMemo((()=>{const e=x.length&&x.every((e=>Object.values(e).every((e=>""!==e)))),t=w.length&&w.every((e=>Object.values(e).every((e=>""!==e))));return!(e&&t)}),[x,w]),$=()=>{y&&sessionStorage.setItem(y,JSON.stringify({group:x.filter((e=>!!e.group)),summary:w.filter((e=>!!e.summary))}))},O=()=>{if(!y)return;const e=sessionStorage.getItem(y);return e?JSON.parse(e):null},F=()=>__awaiter(void 0,void 0,void 0,(function*(){if(!y)return;const e=O();if(e){const{group:t,summary:a}=e;C(t),P(a)}let t=yield localforage.getItem(y);t||(t=yield L(y),Array.isArray(t)&&(yield localforage.setItem(y,t))),Array.isArray(t)&&t.length&&(f(t),!e&&_(t[0].value))})),L=e=>__awaiter(void 0,void 0,void 0,(function*(){const t=null==r?void 0:r.getComponentConfigApi;if(t)try{const a=yield t({key:e});if(200===a.code)return a.data}catch(e){}})),D=(e,t)=>__awaiter(void 0,void 0,void 0,(function*(){const a=null==r?void 0:r.saveComponentConfigApi;if(a)try{yield a({[e]:t})}catch(e){}})),k=getPrefixCls("table"),H={visible:d,title:t("qm.table.groupSummary.resultText"),loading:!1,onClose:()=>u(!1)};return React__default.createElement("div",{className:`${k}-group-summary__setting`},React__default.createElement("div",{className:"main"},React__default.createElement("div",{style:{width:"30%"}},React__default.createElement(Table,{ref:s,size:n,columns:T,dataSource:x,rowKey:"index",height:350,showFastSearch:!1,showTableImport:!1,showFullScreen:!1,showClipboard:!1,showColumnDefine:!1,columnsChange:e=>S(e),onDataChange:e=>{C(e)}},React__default.createElement(QmButton,{type:"primary",icon:React__default.createElement(PlusOutlined,null),onClick:()=>{s.current.INSERT_RECORDS({})},style:{marginRight:0}}))),React__default.createElement("div",{className:"container line"},React__default.createElement(Table,{ref:c,size:n,columns:N,dataSource:w,rowKey:"index",height:350,showFastSearch:!1,showTableImport:!1,showFullScreen:!1,showClipboard:!1,showColumnDefine:!1,columnsChange:e=>I(e),onDataChange:e=>{P(e)}},React__default.createElement(QmButton,{type:"primary",icon:React__default.createElement(PlusOutlined,null),onClick:()=>{c.current.INSERT_RECORDS({})},style:{marginRight:0}}))),React__default.createElement("div",{className:"saved line"},React__default.createElement("div",{className:"form-wrap"},React__default.createElement(Input,{size:n,value:m,placeholder:t("qm.table.groupSummary.configText"),disabled:A,onChange:e=>{const{value:t}=e.target;h(t)}}),React__default.createElement(QmButton,{type:"primary",disabled:!m||A,style:{marginLeft:"10px"},onClick:()=>__awaiter(void 0,void 0,void 0,(function*(){if(!y)return warn("Table","必须设置组件参数 `uniqueKey` 才能保存");const e=createUidKey(),t=[...p,{text:m,value:e,list:{group:x.filter((e=>!!e.group)),summary:w.filter((e=>!!e.summary))}}];f(t),_(e),h(""),yield localforage.setItem(y,t),yield D(y,t)}))},t("qm.table.groupSummary.saveButton"))),React__default.createElement("div",{className:"card-wrap"},React__default.createElement("h5",{style:{height:`${config$1.rowHeightMaps[n]}px`}},React__default.createElement("span",null,t("qm.table.groupSummary.savedSetting"))),React__default.createElement("ul",null,p.map((e=>React__default.createElement("li",{key:e.value,className:classNames({selected:e.value===g}),title:e.text,onClick:()=>{return t=e.value,void _(t!==g?t:"");var t}},React__default.createElement("span",{className:"title"},e.text),React__default.createElement("i",{className:"svgicon close",title:t("qm.table.groupSummary.removeText"),onClick:t=>{var a;t.stopPropagation(),a=e.value,__awaiter(void 0,void 0,void 0,(function*(){if(!a)return;const e=p.filter((e=>e.value!==a));f(e),a===g&&_(""),yield localforage.setItem(y,e),yield D(y,e)}))}},React__default.createElement(CloseCircleOutlined,null))))),!p.length&&React__default.createElement("div",{style:{padding:DEFAULT_DISTANCE}},React__default.createElement(QmEmpty,null)))))),React__default.createElement(QmModal,H,React__default.createElement(Result$1,{columns:v,group:x,summary:w})),React__default.createElement("div",{style:{position:"absolute",left:0,bottom:0,right:0,zIndex:9,borderTop:"1px solid #d9d9d9",padding:"10px 15px",background:"#fff",textAlign:"right"}},React__default.createElement(QmButton,{onClick:()=>a(),style:{marginRight:8}},t("qm.table.groupSummary.closeButton")),React__default.createElement(QmButton,{type:"primary",disabled:A,onClick:()=>($(),void u(!0))},t("qm.table.groupSummary.confirmButton"))))},GroupSummary=React__default.forwardRef(((e,a)=>{const{open:r=!0}=e,[l,n]=React__default.useState(!1),i=()=>{n(!0)};React__default.useImperativeHandle(a,(()=>({clickHandle:i})));const o=getPrefixCls("table"),s={visible:l,title:t("qm.table.groupSummary.settingTitle"),loading:!1,width:"65%",bodyStyle:{paddingBottom:"52px"},onClose:()=>n(!1)};return React__default.createElement(React__default.Fragment,null,r&&React__default.createElement("span",{className:`${o}-group-summary`,title:t("qm.table.groupSummary.text"),onClick:()=>i()},React__default.createElement("i",{className:"svgicon icon"},React__default.createElement(PieChartOutlined,null))),React__default.createElement(QmModal,s,React__default.createElement(Setting$1,{onClose:()=>n(!1)})))}));GroupSummary.displayName="GroupSummary";const Result=e=>{const{onClose:a}=e,{global:r}=React__default.useContext(ConfigContext),{tableProps:l,$size:n,flattenColumns:i,setSuperFilters:o,clearTableFilter:s}=React__default.useContext(TableContext),{uniqueKey:c}=l,d=React__default.useRef(null),[u,p]=React__default.useState([]),[f,m]=React__default.useState([]),[h,g]=React__default.useState(""),[_,y]=React__default.useState("");useUpdateEffect((()=>{p(_?f.find((e=>e.value===_)).list:O()||[])}),[_]),React__default.useEffect((()=>{F()}),[]);const v=React__default.useMemo((()=>c?`superSearch_${c}`:""),[c]),b=React__default.useMemo((()=>i.filter((e=>!!e.filter))),[i]),R=createWhereSQL(u),E=React__default.useMemo((()=>!(R&&isBracketBalance(R))),[R]),x=React__default.useMemo((()=>!!u.length&&E),[u,E]),C=[{value:"and",text:t("qm.table.highSearch.andText")},{value:"or",text:t("qm.table.highSearch.orText")}],T=i.filter((e=>!!e.filter)).map((e=>({value:e.dataIndex,text:e.title}))),S=e=>["in","nin"].includes(e),w=(e,t)=>{let a;switch(e){case"number":a="number";break;case"date":a="date";break;case"checkbox":case"radio":a=t?"select-multiple":"select";break;default:a="text"}return a},P=e=>{let a=[];switch(e){case"date":case"number":a=[{value:">",text:t("qm.table.highSearch.gtText")},{value:"<",text:t("qm.table.highSearch.ltText")},{value:">=",text:t("qm.table.highSearch.gteText")},{value:"<=",text:t("qm.table.highSearch.lteText")},{value:"==",text:t("qm.table.highSearch.eqText")},{value:"!=",text:t("qm.table.highSearch.neqText")}];break;case"checkbox":case"radio":a=[{value:"in",text:t("qm.table.highSearch.inText")},{value:"nin",text:t("qm.table.highSearch.ninText")},{value:"==",text:t("qm.table.highSearch.eqText")},{value:"!=",text:t("qm.table.highSearch.neqText")}];break;default:a=[{value:"like",text:t("qm.table.highSearch.likeText")},{value:"==",text:t("qm.table.highSearch.eqText")},{value:"!=",text:t("qm.table.highSearch.neqText")}]}return a},[N,I]=React__default.useState([{title:t("qm.table.highSearch.operation"),dataIndex:"__action__",fixed:"left",width:80,render:(e,a)=>React__default.createElement("div",null,React__default.createElement(QmButton,{type:"text",onClick:()=>{d.current.REMOVE_RECORDS(a)}},t("qm.table.highSearch.removeText")))},{title:t("qm.table.highSearch.bracket"),dataIndex:"bracketLeft",align:"right",width:80,render:(e,t)=>React__default.createElement("span",{style:{fontSize:"20px"}},e)},{title:t("qm.table.highSearch.fieldName"),dataIndex:"fieldName",width:160,required:!0,editRender:e=>({type:"select",editable:!0,items:T,rules:[{required:!0,message:t("qm.table.highSearch.noEmpty")}],extra:{cornerSign:!1},onChange:t=>{var a,r;const l=Object.values(t)[0],n=null===(a=b.find((e=>e.dataIndex===l)))||void 0===a?void 0:a.filter.type,i=P(n);e.fieldType=n,e.expression=l?null===(r=i[0])||void 0===r?void 0:r.value:"",e.condition=S(e.expression)?[]:"",l||(e.bracketLeft=e.bracketRight="")}})},{title:t("qm.table.highSearch.fieldType"),dataIndex:"fieldType",width:100,hidden:!0},{title:t("qm.table.highSearch.expression"),dataIndex:"expression",width:120,required:!0,editRender:e=>{var t;const a=null===(t=b.find((t=>t.dataIndex===e.fieldName)))||void 0===t?void 0:t.filter.type;return{type:"select",editable:!0,items:P(a),extra:{disabled:!e.fieldName,cornerSign:!1},onChange:()=>{e.condition=S(e.expression)?[]:""}}}},{title:t("qm.table.highSearch.condition"),dataIndex:"condition",minWidth:200,editRender:e=>{var t,a,r;const l=b.find((t=>t.dataIndex===e.fieldName)),n=null==l?void 0:l.filter.type,i=null!==(r=null!==(a=null===(t=null==l?void 0:l.filter)||void 0===t?void 0:t.items)&&void 0!==a?a:null==l?void 0:l.dictItems)&&void 0!==r?r:[];return{type:w(n,S(e.expression)),editable:!0,items:i,extra:{disabled:!e.fieldName,cornerSign:!1}}}},{title:t("qm.table.highSearch.bracket"),dataIndex:"bracketRight",width:80,render:(e,t)=>React__default.createElement("span",{style:{fontSize:"20px"}},e)},{title:t("qm.table.highSearch.logic"),dataIndex:"logic",width:100,required:!0,editRender:e=>({type:"select",editable:!0,items:C,extra:{disabled:!e.fieldName,cornerSign:!1}})}]),A=()=>{s(),o(u.map((e=>omit(e,["index","pageIndex"])))),$(),a()},$=()=>{v&&sessionStorage.setItem(v,JSON.stringify(u.filter((e=>!!e.fieldName))))},O=()=>{if(!v)return;const e=sessionStorage.getItem(v);return e?JSON.parse(e):null},F=()=>__awaiter(void 0,void 0,void 0,(function*(){if(!v)return;const e=O();e&&p(e);let t=yield localforage.getItem(v);t||(t=yield L(v),Array.isArray(t)&&(yield localforage.setItem(v,t))),Array.isArray(t)&&t.length&&(m(t),!e&&y(t[0].value))})),L=e=>__awaiter(void 0,void 0,void 0,(function*(){const t=null==r?void 0:r.getComponentConfigApi;if(t)try{const a=yield t({key:e});if(200===a.code)return a.data}catch(e){}})),D=(e,t)=>__awaiter(void 0,void 0,void 0,(function*(){const a=null==r?void 0:r.saveComponentConfigApi;if(a)try{yield a({[e]:t})}catch(e){}})),k=getPrefixCls("table");return React__default.createElement("div",{className:`${k}-super-search__setting`},React__default.createElement("div",{className:"main"},React__default.createElement("div",{className:"container"},React__default.createElement(Table,{ref:d,size:n,columns:N,dataSource:u,rowKey:"index",height:350,showFastSearch:!1,showTableImport:!1,showFullScreen:!1,showClipboard:!1,showColumnDefine:!1,columnsChange:e=>I(e),onRowClick:(e,t)=>{const{dataIndex:a}=t;e.fieldName&&["bracketLeft","bracketRight"].includes(a)&&("bracketLeft"===a&&(e[a]=e[a]?"":"("),"bracketRight"===a&&(e[a]=e[a]?"":")"),p([...u]))},onDataChange:e=>{p(e)}},React__default.createElement(QmButton,{type:"primary",icon:React__default.createElement(PlusOutlined,null),onClick:()=>{d.current.INSERT_RECORDS({bracketLeft:"",bracketRight:"",logic:"and"})},style:{marginRight:0}})),config$1.highSearch.showSQL&&R&&React__default.createElement("code",{className:"lang-js"},R)),React__default.createElement("div",{className:"saved line"},React__default.createElement("div",{className:"form-wrap"},React__default.createElement(Input,{size:n,value:h,placeholder:t("qm.table.highSearch.configText"),disabled:E,onChange:e=>{const{value:t}=e.target;g(t)}}),React__default.createElement(QmButton,{type:"primary",disabled:!h||E,style:{marginLeft:"10px"},onClick:()=>__awaiter(void 0,void 0,void 0,(function*(){if(!v)return warn("Table","必须设置组件参数 `uniqueKey` 才能保存");const e=createUidKey(),t=[...f,{text:h,value:e,list:u.filter((e=>!!e.fieldName))}];m(t),y(e),g(""),yield localforage.setItem(v,t),yield D(v,t)}))},t("qm.table.highSearch.saveButton"))),React__default.createElement("div",{className:"card-wrap"},React__default.createElement("h5",{style:{height:`${config$1.rowHeightMaps[n]}px`}},React__default.createElement("span",null,t("qm.table.highSearch.savedSetting"))),React__default.createElement("ul",null,f.map((e=>React__default.createElement("li",{key:e.value,className:classNames({selected:e.value===_}),title:e.text,onClick:()=>{return t=e.value,void y(t!==_?t:"");var t}},React__default.createElement("span",{className:"title"},e.text),React__default.createElement("i",{className:"svgicon close",title:t("qm.table.highSearch.removeText"),onClick:t=>{var a;t.stopPropagation(),a=e.value,__awaiter(void 0,void 0,void 0,(function*(){if(!a)return;const e=f.filter((e=>e.value!==a));m(e),a===_&&y(""),yield localforage.setItem(v,e),yield D(v,e)}))}},React__default.createElement(CloseCircleOutlined,null))))),!f.length&&React__default.createElement("div",{style:{padding:DEFAULT_DISTANCE}},React__default.createElement(QmEmpty,null)))))),React__default.createElement("div",{style:{position:"absolute",left:0,bottom:0,right:0,zIndex:9,borderTop:"1px solid #d9d9d9",padding:"10px 15px",background:"#fff",textAlign:"right"}},React__default.createElement(QmButton,{onClick:()=>a(),style:{marginRight:8}},t("qm.table.highSearch.closeButton")),React__default.createElement(QmButton,{type:"primary",disabled:x,onClick:()=>A()},t("qm.table.highSearch.searchButton"))))},SuperSearch=React__default.forwardRef(((e,a)=>{const{open:r=!0}=e,[l,n]=React__default.useState(!1),i=()=>{n(!0)};React__default.useImperativeHandle(a,(()=>({clickHandle:i})));const o=getPrefixCls("table"),s={visible:l,title:t("qm.table.highSearch.settingTitle"),loading:!1,width:"70%",bodyStyle:{paddingBottom:"52px"},onClose:()=>n(!1)};return React__default.createElement(React__default.Fragment,null,r&&React__default.createElement("span",{className:`${o}-super-search`,title:t("qm.table.highSearch.text"),onClick:()=>i()},React__default.createElement("i",{className:"svgicon icon"},React__default.createElement(FunnelPlotOutlined,null))),React__default.createElement(QmModal,s,React__default.createElement(Result,{onClose:()=>n(!1)})))}));SuperSearch.displayName="SuperSearch";const ToolBox=React__default.forwardRef(((e,a)=>{const{tableColumns:r,showFullScreen:l,showReload:n,showPrint:i,showImport:o,showExport:s,showClipboard:c,showCollection:d,showFastSearch:u,showSuperSearch:p,showGroupSummary:f,showToolBox:m}=e,{global:h}=React__default.useContext(ConfigContext),{tableProps:g,flattenColumns:_,isFullScreen:y,$size:v}=React__default.useContext(TableContext),{uniqueKey:b,exportExcel:R}=g,E=React__default.useRef(null),x=React__default.useRef(null),C=React__default.useRef(null),T=React__default.useRef(null),S=React__default.useRef(null),w=React__default.useRef(null),P=React__default.useRef(null),N=React__default.useRef(null),I=React__default.useRef(null),A=React__default.useRef(null),$=React__default.useMemo((()=>b?`toolBox_${b}`:""),[b]),[O,F]=React__default.useState({fullScreen:!1,reload:!1,print:!1,import:!1,export:!1,clipboard:!1,collection:!1,fastSearch:!1,superSearch:!1,groupSummary:!1}),L={fullScreen:l,reload:n,print:i,import:o,export:s&&!(null==R?void 0:R.hideIcon),clipboard:c,collection:d,fastSearch:u,superSearch:p,groupSummary:f},[D,k]=React__default.useState(!1);useUpdateEffect((()=>{V()}),[O]),React__default.useEffect((()=>{H()}),[]),React__default.useImperativeHandle(a,(()=>({exportHandle:()=>{if(!S.current)return warn("Table","执行导出需要配置 `exportExcel` 参数");S.current.clickHandle()}})));const H=()=>{if(!$||!m)return;const e=JSON.parse(localStorage.getItem($));e||M($).then((e=>{e&&(F(Object.assign({},O,e)),localStorage.setItem($,JSON.stringify(e)))})).catch((()=>{})),e&&F(Object.assign({},O,e))},V=()=>{if(!$||!m)return;const e={};for(const t in O)O[t]&&(e[t]=O[t]);localStorage.setItem($,JSON.stringify(e)),j($,e)},M=e=>__awaiter(void 0,void 0,void 0,(function*(){const t=null==h?void 0:h.getComponentConfigApi;if(t)try{const a=yield t({key:e});if(200===a.code)return a.data}catch(e){}})),j=(e,t)=>__awaiter(void 0,void 0,void 0,(function*(){const a=null==h?void 0:h.saveComponentConfigApi;if(a)try{yield a({[e]:t})}catch(e){}})),q=e=>__awaiter(void 0,void 0,void 0,(function*(){k(!1),yield sleep(100),e.current.clickHandle()})),U=(e,t)=>{F(Object.assign({},O,{[t]:e}))},K=getPrefixCls("table"),B={"top-toolbox__popper":!0,[`${K}--lg`]:"large"===v,[`${K}--sm`]:"small"===v};return React__default.createElement(React__default.Fragment,null,l&&React__default.createElement(FullScreen,{ref:E,isFullScreen:y,open:!m||O.fullScreen}),n&&React__default.createElement(Reload,{ref:x,open:!m||O.reload}),i&&React__default.createElement(TablePrint,{ref:C,tableColumns:r,open:!m||O.print}),o&&React__default.createElement(TableImport,{ref:T,tableColumns:r,open:!m||O.import}),s&&React__default.createElement(TableExport,{ref:S,tableColumns:r,open:(!m||O.export)&&!(null==R?void 0:R.hideIcon)}),c&&React__default.createElement(TableClipboard,{ref:w,flattenColumns:_,open:!m||O.clipboard}),d&&React__default.createElement(SelectCollection,{ref:P,columns:r,open:!m||O.collection}),u&&React__default.createElement(FastSearch,{ref:N,open:!m||O.fastSearch}),f&&React__default.createElement(GroupSummary,{ref:I,open:!m||O.groupSummary}),p&&React__default.createElement(SuperSearch,{ref:A,open:!m||O.superSearch}),m&&React__default.createElement(Dropdown,{overlay:(()=>{const e=[{key:"fullScreen",label:React__default.createElement(React__default.Fragment,null,React__default.createElement(Checkbox,{checked:O.fullScreen,style:{marginRight:6},onChange:e=>U(e.target.checked,"fullScreen"),onClick:e=>e.stopPropagation()}),React__default.createElement("span",null,t("qm.table.screen.full"))),onClick:()=>q(E)},{key:"reload",label:React__default.createElement(React__default.Fragment,null,React__default.createElement(Checkbox,{checked:O.reload,style:{marginRight:6},onChange:e=>U(e.target.checked,"reload"),onClick:e=>e.stopPropagation()}),React__default.createElement("span",null,t("qm.table.refresh.text"))),onClick:()=>q(x)},{key:"print",label:React__default.createElement(React__default.Fragment,null,React__default.createElement(Checkbox,{checked:O.print,style:{marginRight:6},onChange:e=>U(e.target.checked,"print"),onClick:e=>e.stopPropagation()}),React__default.createElement("span",null,t("qm.table.print.text"))),onClick:()=>q(C)},{key:"import",label:React__default.createElement(React__default.Fragment,null,React__default.createElement(Checkbox,{checked:O.import,style:{marginRight:6},onChange:e=>U(e.target.checked,"import"),onClick:e=>e.stopPropagation()}),React__default.createElement("span",null,t("qm.table.import.textNoSpace"))),onClick:()=>q(T)},{key:"export",label:React__default.createElement(React__default.Fragment,null,React__default.createElement(Checkbox,{checked:O.export,style:{marginRight:6},onChange:e=>U(e.target.checked,"export"),onClick:e=>e.stopPropagation()}),React__default.createElement("span",null,t("qm.table.export.textNoSpace"))),onClick:()=>q(S)},{key:"clipboard",label:React__default.createElement(React__default.Fragment,null,React__default.createElement(Checkbox,{checked:O.clipboard,style:{marginRight:6},onChange:e=>U(e.target.checked,"clipboard"),onClick:e=>e.stopPropagation()}),React__default.createElement("span",null,t("qm.table.clipboard.textNoSpace"))),onClick:()=>q(w)},{key:"collection",label:React__default.createElement(React__default.Fragment,null,React__default.createElement(Checkbox,{checked:O.collection,style:{marginRight:6},onChange:e=>U(e.target.checked,"collection"),onClick:e=>e.stopPropagation()}),React__default.createElement("span",null,t("qm.table.selectCollection.text"))),onClick:()=>q(P)},{key:"fastSearch",label:React__default.createElement(React__default.Fragment,null,React__default.createElement(Checkbox,{checked:O.fastSearch,style:{marginRight:6},onChange:e=>U(e.target.checked,"fastSearch"),onClick:e=>e.stopPropagation()}),React__default.createElement("span",null,t("qm.table.fastSearch.text"))),onClick:()=>q(N)},{key:"groupSummary",label:React__default.createElement(React__default.Fragment,null,React__default.createElement(Checkbox,{checked:O.groupSummary,style:{marginRight:6},onChange:e=>U(e.target.checked,"groupSummary"),onClick:e=>e.stopPropagation()}),React__default.createElement("span",null,t("qm.table.groupSummary.text"))),onClick:()=>q(I)},{key:"superSearch",label:React__default.createElement(React__default.Fragment,null,React__default.createElement(Checkbox,{checked:O.superSearch,style:{marginRight:6},onChange:e=>U(e.target.checked,"superSearch"),onClick:e=>e.stopPropagation()}),React__default.createElement("span",null,t("qm.table.highSearch.text"))),onClick:()=>q(A)}];return React__default.createElement(Menu,{items:e.filter((e=>L[e.key]))})})(),trigger:["click"],placement:"bottomRight",overlayClassName:classNames(B),overlayStyle:{minWidth:120},visible:D,onVisibleChange:e=>{k(e)}},React__default.createElement("span",{className:`${K}-toolbox`,title:t("qm.table.toolbox.text")},React__default.createElement("i",{className:"svgicon icon"},React__default.createElement(AppstoreAddOutlined,null)))))}));ToolBox.displayName="ToolBox";const ColumnFilter=e=>{const{columns:a}=e,{global:r}=React__default.useContext(ConfigContext),{tableProps:l,tableRef:n,$size:i}=React__default.useContext(TableContext),{uniqueKey:o,onlyShowIcon:s,columnsChange:c}=l,d=React__default.useRef([]),u=e=>e.filter((e=>!e.noAuth&&"left"===e.fixed)),p=e=>e.filter((e=>!e.noAuth&&"right"===e.fixed)),f=e=>e.filter((e=>!e.noAuth&&!e.fixed)),[m,h]=React__default.useState(!1),[g,_]=React__default.useState(u(a)),[y,v]=React__default.useState(p(a)),[b,R]=React__default.useState(f(a)),E=React__default.useMemo((()=>o?`table_${o}`:""),[o]),x=React__default.useMemo((()=>[...g,...b,...y]),[g,b,y]);useUpdateEffect((()=>{P(a),w(a),T(a)}),[a]),React__default.useEffect((()=>{S()}),[]);const C=()=>{if(!E)return;const e=JSON.parse(localStorage.getItem(E));var t;if(e||(t=E,__awaiter(void 0,void 0,void 0,(function*(){const e=null==r?void 0:r.getComponentConfigApi;if(e)try{const a=yield e({key:t});if(200===a.code)return a.data}catch(e){}}))).then((e=>{if(!e)return T(a);localStorage.setItem(E,JSON.stringify(e)),S()})).catch((()=>{})),!e)return;return xor(e.map((e=>e.dataIndex)),a.map((e=>e.dataIndex))).length>0?a.map((t=>{const{dataIndex:a}=t,r=e.find((e=>e.dataIndex===a));return r?(void 0!==r.hidden&&(t.hidden=r.hidden),void 0!==r.fixed&&(t.fixed=r.fixed),void 0!==r.width&&(t.width=r.width),void 0!==r.renderWidth&&(t.renderWidth=r.renderWidth),t):t})):e.map((e=>{const t=a.find((t=>t.dataIndex===e.dataIndex));return void 0===e.fixed&&delete t.fixed,Object.assign(Object.assign({},t),e)}))},T=e=>{if(!E)return;const t=e.map((e=>{const t={};return void 0!==e.hidden&&(t.hidden=e.hidden),void 0!==e.fixed&&(t.fixed=e.fixed),void 0!==e.width&&(t.width=e.width),void 0!==e.renderWidth&&(t.renderWidth=e.renderWidth),Object.assign({dataIndex:e.dataIndex},t)})),a=JSON.parse(localStorage.getItem(E));var l,n;isEqual$1(t,a)||(localStorage.setItem(E,JSON.stringify(t)),l=E,n=t,__awaiter(void 0,void 0,void 0,(function*(){const e=null==r?void 0:r.saveComponentConfigApi;if(e)try{yield e({[l]:n})}catch(e){}})))},S=()=>{const e=C();e&&(w(e),null==c||c(e))},w=e=>{const t=u(e),a=p(e),r=f(e);return _(t),v(a),R(r),[...t,...r,...a]},P=e=>{const t=[];e.filter((e=>!e.noAuth)).forEach(((a,r)=>{const l=a.colSpan;l>1&&e.slice(r+1,r+l).every((e=>{let{colSpan:t}=e;return 0===t}))&&t.push(e.slice(r,r+l))})),d.current=t},N=()=>{const e=deepClone(n.current.originColumns);w(e),null==c||c(e)},I=()=>{const e=[];x.forEach((t=>{const{colSpan:a,dataIndex:r}=t;if(0===a)return;if(1===a)return e.push(t);const l=d.current.findIndex((e=>e.map((e=>e.dataIndex)).includes(r)));if(-1===l)return e.push(t);e.push(...d.current[l].map(((e,a)=>{let{dataIndex:r}=e;const l=x.find((e=>e.dataIndex===r));return a>0&&(void 0!==t.hidden&&(l.hidden=t.hidden),void 0!==t.fixed?l.fixed=t.fixed:l.fixed&&delete l.fixed),l})))})),a.forEach(((t,a)=>{t.noAuth&&e.findIndex((e=>e.dataIndex===t.dataIndex))<0&&e.splice(a,0,t)})),null==c||c(e)},A=(e,t)=>{if(e.noFixed)return;t?e.fixed=t:delete e.fixed;const r=w(a);null==c||c(r)},$=(e,r)=>{const{colSpan:l,noFixed:n}=e;if(0===l)return React__default.createElement("li",{key:e.dataIndex,style:{display:"none"}});const i=["svgicon","handle",`${r}-handle`];return React__default.createElement("li",{key:e.dataIndex,className:"item"},React__default.createElement(Checkbox,{disabled:e.required,checked:!e.hidden,onChange:t=>{const{checked:r}=t.target;e.hidden=!r,w(a),I()}}),React__default.createElement("i",{className:classNames(i),title:t("qm.table.columnFilter.draggable")},React__default.createElement(HolderOutlined,null)),React__default.createElement("span",{className:"text",title:e.title},e.title),"main"===r?React__default.createElement("span",{className:classNames("fixed",n?"disabled":"")},React__default.createElement("i",{className:"svgicon",title:t("qm.table.columnFilter.fixedLeft"),onClick:()=>A(e,"left")},React__default.createElement(StepBackwardOutlined,null)),React__default.createElement("i",{className:"svgicon",title:t("qm.table.columnFilter.fixedRight"),onClick:()=>A(e,"right")},React__default.createElement(StepForwardOutlined,null))):React__default.createElement("span",{className:classNames("fixed",n?"disabled":"")},React__default.createElement("i",{className:"svgicon",title:t("qm.table.columnFilter.cancelFixed"),onClick:()=>A(e)},React__default.createElement(CloseCircleOutlined,null))))},O=getPrefixCls("table"),F={[`${O}__popper`]:!0,"column-filter__popper":!0,[`${O}--lg`]:"large"===i,[`${O}--sm`]:"small"===i},L=[`${O}-column-filter`,{selected:m}];return React__default.createElement(Trigger,{action:["click"],popupVisible:m,popup:React__default.createElement("div",{className:"column-filter--wrap",style:{maxHeight:"calc(100vh - 10px)"}},React__default.createElement("div",{className:"reset"},React__default.createElement(QmButton,{type:"text",size:"small",onClick:N},t("qm.table.columnFilter.reset"))),React__default.createElement("div",{className:"left"},React__default.createElement(ReactSortable,{itemKey:"dataIndex",handle:".left-handle",tag:"ul",animation:200,list:g,setList:e=>{const t=e.map((e=>e.dataIndex)),a=g.map((e=>e.dataIndex));isEqual$1(t,a)||_(e)},onEnd:()=>I()},g.map((e=>$(e,"left"))))),React__default.createElement("div",{className:"divider"}),React__default.createElement("div",{className:"main"},React__default.createElement(ReactSortable,{itemKey:"dataIndex",handle:".main-handle",tag:"ul",animation:200,list:b,setList:e=>{const t=e.map((e=>e.dataIndex)),a=b.map((e=>e.dataIndex));isEqual$1(t,a)||R(e)},onEnd:()=>I()},b.map((e=>$(e,"main"))))),React__default.createElement("div",{className:"divider"}),React__default.createElement("div",{className:"right"},React__default.createElement(ReactSortable,{itemKey:"dataIndex",handle:".right-handle",tag:"ul",animation:200,list:y,setList:e=>{const t=e.map((e=>e.dataIndex)),a=y.map((e=>e.dataIndex));isEqual$1(t,a)||v(e)},onEnd:()=>I()},y.map((e=>$(e,"right")))))),popupClassName:classNames(F),popupStyle:{minWidth:MIN_POPPER_WIDTH},onPopupVisibleChange:e=>{h(e)},builtinPlacements:BUILT_IN_PLACEMENTS,prefixCls:"ant-select-dropdown",popupPlacement:"bottomRight",popupTransitionName:"ant-slide-up"},React__default.createElement("span",{className:classNames(L),title:s?t("qm.table.columnFilter.text"):void 0},React__default.createElement("i",{className:"svgicon icon"},React__default.createElement(SettingOutlined,null)),!s&&React__default.createElement("span",null,t("qm.table.columnFilter.text"))))},FilterIcon=()=>React__default.createElement("svg",{viewBox:"64 64 896 896",focusable:"false","data-icon":"filter",width:"1em",height:"1em",fill:"currentColor","aria-hidden":"true"},React__default.createElement("path",{d:"M349 838c0 17.7 14.2 32 31.8 32h262.4c17.6 0 31.8-14.3 31.8-32V642H349v196zm531.1-684H143.9c-24.5 0-39.8 26.7-27.5 48l221.3 376h348.8l221.3-376c12.1-21.3-3.2-48-27.7-48z"})),HeadFilter=e=>{const{column:a,filters:r}=e,{$size:l,setFilters:n,clearSuperFilters:i}=React__default.useContext(TableContext),o=React__default.useRef(null),s=React__default.useRef(null),c=React__default.useRef(null),[d,u]=React__default.useState(!1),[p,f]=React__default.useState({}),m=React__default.useMemo((()=>{const{dataIndex:e,filter:t}=a;return`${e}|${t.type}`}),[a]),h=React__default.useMemo((()=>{let e=!1;for(const t in r[m])if(!isEmpty(r[m][t])){e=!0;break}return e}),[m,r]);React__default.useEffect((()=>{d&&(isEmpty(r[m])&&g(),setTimeout((()=>_()),50))}),[d]);const g=()=>{f({})},_=()=>{switch(a.filter.type){case"text":o.current.focus();break;case"number":s.current.focus();break;case"textarea":c.current.focus()}},y=e=>{e&&f(e),i(),n((e=>{for(const t in e){for(const a in e[t])isEmpty(e[t][a])&&delete e[t][a];Object.keys(e[t]).length||delete e[t]}return e})(Object.assign(Object.assign(Object.assign({},r),p),e))),u(!1)},v={text:e=>{var a,r;const{title:n}=e;return React__default.createElement(Input,{ref:o,size:l,placeholder:t("qm.table.filter.searchText",{text:n}),style:{width:"180px"},value:null!==(r=null===(a=p[m])||void 0===a?void 0:a.like)&&void 0!==r?r:"",onChange:e=>{const{value:t}=e.target;f((e=>Object.assign({},e,{[m]:{like:t}})))},onKeyDown:e=>{13===e.keyCode&&y()}})},textarea:e=>{var a,r;const{title:n}=e;return React__default.createElement(Input.TextArea,{ref:c,size:l,placeholder:t("qm.table.filter.searchAreaText",{text:n}),style:{width:"220px"},value:null!==(r=null===(a=p[m])||void 0===a?void 0:a.likes)&&void 0!==r?r:"",onChange:e=>{const{value:t}=e.target;f((e=>Object.assign({},e,{[m]:{likes:t}})))},onKeyDown:e=>{13===e.keyCode&&y()}})},number:e=>{const a=e=>{var t,a;return{value:null!==(a=null===(t=p[m])||void 0===t?void 0:t[e])&&void 0!==a?a:"",size:l,onChange:t=>{f((a=>Object.assign({},a,{[m]:Object.assign({},a[m],{[e]:t})})))},onKeyDown:e=>{13===e.keyCode&&y()}}};return React__default.createElement("ul",null,React__default.createElement("li",null,React__default.createElement("span",null,"> "),React__default.createElement(InputNumber$1,_extends$1({ref:s},a(">"),{placeholder:t("qm.table.filter.gtPlaceholder"),style:{width:"150px"}}))),React__default.createElement("li",null,React__default.createElement("span",null,"< "),React__default.createElement(InputNumber$1,_extends$1({},a("<"),{placeholder:t("qm.table.filter.ltPlaceholder"),style:{width:"150px"}}))),React__default.createElement("li",null,React__default.createElement("span",null,"= "),React__default.createElement(InputNumber$1,_extends$1({},a("=="),{placeholder:t("qm.table.filter.eqPlaceholder"),style:{width:"150px"}}))),React__default.createElement("li",null,React__default.createElement("span",null,"!="),React__default.createElement(InputNumber$1,_extends$1({},a("!="),{placeholder:t("qm.table.filter.neqPlaceholder"),style:{width:"150px"}}))))},date:e=>{const a=e=>{var t;return{value:getDate(null===(t=p[m])||void 0===t?void 0:t[e],DATE_FORMAT),format:DATE_FORMAT,size:l,onChange:t=>{f((a=>Object.assign({},a,{[m]:Object.assign({},a[m],{[e]:formatDate(t,DATE_FORMAT)})})))},onKeyDown:e=>{13===e.keyCode&&y()}}};return React__default.createElement("ul",null,React__default.createElement("li",null,React__default.createElement("span",null,"> "),React__default.createElement(DatePicker,_extends$1({},a(">"),{placeholder:t("qm.table.filter.gtPlaceholder"),style:{width:"150px"}}))),React__default.createElement("li",null,React__default.createElement("span",null,"< "),React__default.createElement(DatePicker,_extends$1({},a("<"),{placeholder:t("qm.table.filter.ltPlaceholder"),style:{width:"150px"}}))),React__default.createElement("li",null,React__default.createElement("span",null,"= "),React__default.createElement(DatePicker,_extends$1({},a("=="),{placeholder:t("qm.table.filter.eqPlaceholder"),style:{width:"150px"}}))),React__default.createElement("li",null,React__default.createElement("span",null,"!="),React__default.createElement(DatePicker,_extends$1({},a("!="),{placeholder:t("qm.table.filter.neqPlaceholder"),style:{width:"150px"}}))))},radio:e=>{var t;const{filter:a,dictItems:r=[]}=e,l=a.items||r;return React__default.createElement("ul",null,React__default.createElement(Radio.Group,{style:{width:"100%"},value:null===(t=p[m])||void 0===t?void 0:t["=="],onChange:e=>{const{value:t}=e.target;f((e=>Object.assign({},e,{[m]:{"==":t}})))}},l.map((e=>React__default.createElement("li",{key:e.value},React__default.createElement(Radio,{value:e.value,disabled:e.disabled},e.text))))))},checkbox:e=>{var t;const{filter:a,dictItems:r=[]}=e,l=a.items||r;return React__default.createElement("ul",null,React__default.createElement(Checkbox.Group,{style:{width:"100%"},value:null===(t=p[m])||void 0===t?void 0:t.in,onChange:e=>{f((t=>Object.assign({},t,{[m]:{in:e}})))}},l.map((e=>React__default.createElement("li",{key:e.value},React__default.createElement(Checkbox,{value:e.value,disabled:e.disabled},e.text))))))},tree:e=>{var t;const{filter:a,dictItems:r=[]}=e,l=a.items||r;return React__default.createElement("div",{style:Object.assign({height:200},a.style)},React__default.createElement(SearchTree,{multiple:!0,value:(null===(t=p[m])||void 0===t?void 0:t.in)||[],dataSource:l,onCheckChange:e=>{const t=e.map((e=>e.value));f((e=>Object.assign({},e,{[m]:{in:t}})))}}))}},b=()=>React__default.createElement(Space,{style:{width:"100%",marginTop:8,justifyContent:"flex-end"}},React__default.createElement(QmButton,{size:l,onClick:()=>{y({[m]:{}})}},t("qm.table.filter.reset")),React__default.createElement(QmButton,{type:"primary",size:l,onClick:()=>y()},t("qm.table.filter.search"))),R=getPrefixCls("table"),E={"head-filter__popper":!0,[`${R}--lg`]:"large"===l,[`${R}--sm`]:"small"===l},x=["cell--filter",{selected:d,actived:h}];return React__default.createElement(Trigger,{action:["click"],popupVisible:d,popup:(()=>{const e=a.filter.type,t=v[e];return t?React__default.createElement("div",{className:"head-filter--wrap",onClick:e=>e.stopPropagation()},React__default.createElement("div",null,t(a)),b()):(warn("Table","表头筛选的类型 `type` 配置不正确"),null)})(),popupClassName:classNames(E),popupStyle:{minWidth:MIN_POPPER_WIDTH},onPopupVisibleChange:e=>{u(e)},builtinPlacements:BUILT_IN_PLACEMENTS,prefixCls:"ant-select-dropdown",popupPlacement:"bottomRight",popupTransitionName:"ant-slide-up"},React__default.createElement("div",{className:classNames(x),title:t("qm.table.filter.text"),onClick:e=>e.stopPropagation()},React__default.createElement("span",{className:"svgicon icon"},React__default.createElement(FilterIcon,null))))},Resizable=e=>{const{column:t}=e,{tableProps:a,tableRef:r,bordered:l}=React__default.useContext(TableContext),{columns:n,resizable:i,columnsChange:o=noop$1}=a,s={resizable:!0,"is--line":i&&!l};return React__default.createElement("div",{className:classNames(s),onMouseDown:e=>{e.preventDefault();const a=e.target,{elementStore:l}=r.current,i=l.$resizableBar,s=a.offsetWidth/2,c=e.clientX,d=getNodeOffset(a,l.$table).left-l.$tableBody.parentNode.scrollLeft+s;l.$table.classList.add("c--resize"),i.style.left=`${d}px`,i.style.display="block";const u=t.width||t.renderWidth;let p=u;return document.onmousemove=function(e){if("number"!=typeof u)return;const a=e.clientX-c,r=u+a;r<(t.minWidth||config$1.defaultColumnWidth)||(p=Math.floor(r),i.style.left=`${a+d}px`)},document.onmouseup=function(){l.$table.classList.remove("c--resize"),i.style.display="none",this.onmousemove=null,this.onmouseup=null,"number"==typeof p&&(t.renderWidth=p,t.width=p,o([...n]))},!1}})},AllSelection=e=>{const{selectionKeys:a}=e,{tableRef:r,tableProps:l,getRowKey:n,pagination:i,fetchParams:o,setSelectionKeys:s,setSpinning:c,isWebPagination:d}=React__default.useContext(TableContext),{rowSelection:u}=l,{fetchAllRowKeys:p,onSelectAll:f}=u,m=React__default.useRef([]),h=(()=>{const{allTableData:e,allRowKeys:t}=r.current,{selectAllOnCurrentPage:a,disabled:l=(e=>!1)}=u;return a?(()=>{const{tableFullData:e}=r.current,{current:t,pageSize:a}=i;return d?e.slice((t-1)*a,t*a):e})().filter((e=>!l(e))).map((e=>n(e,e.index))):t.filter(((t,a)=>!l(e[a])))})(),g=a.length>0&&a.length<(p?i.total:r.current.allRowKeys.length),_=!!a.length&&a.length===(m.current.length||h.length),y=React__default.useMemo((()=>{var e;return null!==(e=u.selectAllOnCurrentPage)&&void 0!==e&&e}),[u]),v=React__default.useMemo((()=>{var e;return(null===(e=u.filterable)||void 0===e||e)&&!y}),[u,y]),b=()=>__awaiter(void 0,void 0,void 0,(function*(){var e;const t=p;let a=[];c(!0);try{const r=yield t.api(o);200===r.code&&(a=Array.isArray(r.data)?r.data:null!==(e=get(r.data,t.dataKey))&&void 0!==e?e:[],m.current=a)}catch(e){}return c(!1),a})),R=e=>__awaiter(void 0,void 0,void 0,(function*(){let t=[];t=p?e?yield b():[]:e?h.slice(0):[],s(t),null==f||f(e,t)}));return React__default.createElement("div",{className:"cell--selection"},React__default.createElement(Checkbox,{checked:_,indeterminate:g,disabled:!h.length,onChange:e=>R(e.target.checked)}),v&&React__default.createElement(Dropdown,{overlayClassName:"all-selection__popper",overlay:(()=>{const e=[{key:1,label:t("qm.table.selection.all"),onClick:()=>{R(!0)}},{key:2,label:t("qm.table.selection.invert"),onClick:()=>__awaiter(void 0,void 0,void 0,(function*(){let e=[];e=xor(a,p?yield b():h),s(e)}))},{key:3,label:t("qm.table.selection.clear"),onClick:()=>{R(!1)}}];return React__default.createElement(Menu,{items:e})})()},React__default.createElement(DownOutlined,{className:"svgicon icon"})),y&&React__default.createElement(Tooltip,{placement:"top",title:t("qm.table.selection.currentPage")},React__default.createElement(InfoCircleOutlined,{className:"info"})))},AllExpandable=e=>{const{style:t}=e,{tableProps:a,tableRef:r,isTreeTable:l,setRowExpandedKeys:n}=React__default.useContext(TableContext),{expandable:i}=a,[o,s]=React__default.useState((null==i?void 0:i.defaultExpandAllRows)||!1);useUpdateEffect((()=>{const{allRowKeys:e,flattenRowKeys:t}=r.current;n(o?e.filter((e=>!(l&&t.includes(e)))):[])}),[o]);const c={[`${getPrefixCls("expand")}--icon`]:!0,expanded:o,collapsed:!o};return React__default.createElement("span",{className:classNames(c),title:"",onClick:e=>{e.stopPropagation(),s(!o)},style:t})},CaretUpIcon=()=>React__default.createElement("svg",{viewBox:"0 0 1024 1024",focusable:"false","data-icon":"caret-up",width:"1em",height:"1em",fill:"currentColor","aria-hidden":"true"},React__default.createElement("path",{d:"M858.9 689L530.5 308.2c-9.4-10.9-27.5-10.9-37 0L165.1 689c-12.2 14.2-1.2 35 18.5 35h656.8c19.7 0 30.7-20.8 18.5-35z"})),CaretDownIcon=()=>React__default.createElement("svg",{viewBox:"0 0 1024 1024",focusable:"false","data-icon":"caret-down",width:"1em",height:"1em",fill:"currentColor","aria-hidden":"true"},React__default.createElement("path",{d:"M840.4 300H183.6c-19.7 0-30.7 20.8-18.5 35l328.4 380.8c9.4 10.9 27.5 10.9 37 0L858.9 335c12.2-14.2 1.2-35-18.5-35z"})),TableHeader=e=>{const{tableColumns:a,flattenColumns:r,sorter:l,filters:n}=e,{getRowKey:i,tableProps:o,tableRef:s,layout:c,scrollY:d,superFilters:u,selectionKeys:p,rightFixedColumns:f,firstDataIndex:m,isFetch:h,isTreeTable:g,isGroupSubtotal:_,tableChange:y,setSorter:v,setElementStore:b,resetTableScroll:R,getStickyLeft:E,getStickyRight:x,createGroupData:C,createTableFullData:T}=React__default.useContext(TableContext),{ellipsis:S,resizable:w,multipleSort:P,rowSelection:N,expandable:I}=o,[A,$]=config$1.sortDirections,O=React__default.useRef(null),F=React__default.useMemo((()=>!h),[h]),L=React__default.useMemo((()=>!h),[h]),D=React__default.useMemo((()=>!(null==I?void 0:I.hideExpandAll)),[I]),k=React__default.useMemo((()=>h?!(!(null==N?void 0:N.selectAllOnCurrentPage)&&!(null==N?void 0:N.fetchAllRowKeys)):!(null==N?void 0:N.hideSelectAll)),[h,N]);useUpdateEffect((()=>{K(),y(),R()}),[l]),useUpdateEffect((()=>{W(),y(),R()}),[n]),useUpdateEffect((()=>{W(),y(),R()}),[u]),React__default.useEffect((()=>{H()}),[]);const H=()=>{b("$header",O.current)},V=(e,t,a)=>{var r,n,i;const{isIE:o}=s.current,{gutterWidth:u}=c,{dataIndex:p,colSpan:f,rowSpan:m,fixed:h,align:g,theadAlign:_,theadClassName:y="",sorter:v,filter:b,required:R,headRender:C}=e;if(0===f)return null;const T=_||g,P=["header--column",{"col--ellipsis":null!==(r=e.ellipsis)&&void 0!==r?r:S,"col--center":"center"===T,"col--right":"right"===T,"column--required":!!R,"column-has-sorter":v,"column-has-filter":b,"column--sort":!!l[p],"cell-fix-left":!o&&"left"===h,"cell-fix-right":!o&&"right"===h,"cell-fix-left-last":!o&&"left"===h&&!(null===(n=a[t+1])||void 0===n?void 0:n.fixed),"cell-fix-right-first":!o&&"right"===h&&!(null===(i=a[t-1])||void 0===i?void 0:i.fixed),[y]:!!y}],N=o?null:{left:"left"===h?`${E(p)}px`:"",right:"right"===h?`${x(p)+(d?u:0)}px`:""},I=w&&![config$1.expandableColumn,config$1.selectionColumn].includes(p);return React__default.createElement("th",{key:p,className:classNames(P),colSpan:f,rowSpan:m,style:Object.assign({},N),onClick:t=>U(t,e)},React__default.createElement("div",{className:"cell--wrapper"},C?React__default.createElement("div",{className:"cell--text cell"},C(e,s.current.tableFullData)):React__default.createElement(React__default.Fragment,null,React__default.createElement("div",{className:"cell--text"},M(e)),b?q(e):null)),I&&React__default.createElement(Resizable,{column:e}))},M=e=>{const{dataIndex:a,type:r,sorter:n,title:i,description:o}=e;if(a===config$1.selectionColumn&&"checkbox"===r){if("checkbox"===r)return React__default.createElement("div",{className:"cell"},k?React__default.createElement(AllSelection,{selectionKeys:p}):t("qm.table.config.selectionText"));if("radio"===r)return React__default.createElement("div",{className:"cell"},i)}const s=[];return s.push(React__default.createElement("div",{key:0,className:"cell",title:i},g&&a===m&&D?React__default.createElement(AllExpandable,null):null,a===config$1.expandableColumn&&D?React__default.createElement(AllExpandable,null):i)),o&&s.push(React__default.createElement(Tooltip,{key:1,placement:"top",title:o},React__default.createElement(InfoCircleOutlined,{className:"tip"}))),n&&s.push(j(l[a])),s},j=e=>{const a=["svgicon cell--sorter__asc",{actived:e===A}],r=["svgicon cell--sorter__desc",{actived:e===$}];return React__default.createElement("div",{key:2,className:"cell--sorter",title:t("qm.table.sorter.text")},React__default.createElement("span",{className:classNames(a)},React__default.createElement(CaretUpIcon,null)),React__default.createElement("span",{className:classNames(r)},React__default.createElement(CaretDownIcon,null)))},q=e=>React__default.createElement(HeadFilter,{column:e,filters:n}),U=(e,t)=>{const{sorter:a,dataIndex:r}=t;if(a){const e=l[r],t=e?e===$?null:$:A;P?(delete l[r],v(Object.assign({},l,{[r]:t}))):v(Object.assign({},{[r]:t}))}},K=()=>{F&&B()},B=e=>{const t=pickBy(l,(e=>null!==e));for(const e in t){const a=r.find((t=>t.dataIndex===e));a?z(a,t[e]):delete t[e]}e||Object.keys(t).length||z({dataIndex:"index"},A)},z=(e,t)=>{const{tableFullData:a}=s.current,{dataIndex:r,sorter:l}=e,n=(e,a)=>{const l=getCellValue(e,r),n=getCellValue(a,r);return Number.isNaN(l-n)?t===A?l.toString().localeCompare(n.toString()):n.toString().localeCompare(l.toString()):t===A?l-n:n-l},i=_?C(getGroupValidData(a).sort("function"==typeof l?l:n)):a.sort("function"==typeof l?l:n).slice(0);T(i)},W=()=>{L&&G()},G=()=>{const{tableOriginData:e}=s.current,t=u.length?createWhereSQL(u):createWhereSQL(n),a=""!==t?_?C(where(getGroupValidData(e),t,g)):where(e,t,g):e;T(a),B(!0)},Q=convertToRows(a),Y=getPrefixCls("table"),{tableBodyWidth:X}=c;return React__default.createElement("div",{ref:O,className:`${Y}--header-wrapper`},React__default.createElement("table",{className:`${Y}--header`,cellSpacing:"0",cellPadding:"0",style:{width:X?`${X}px`:""}},(()=>{const{gutterWidth:e}=c;return React__default.createElement("colgroup",null,r.map((e=>{const{dataIndex:t,width:a,renderWidth:r}=e;return React__default.createElement("col",{key:t,style:{width:`${a||r}px`,minWidth:`${a||r}px`}})})),d&&React__default.createElement("col",{style:{width:`${e}px`,minWidth:`${e}px`}}))})(),React__default.createElement("thead",null,(e=>{const{isIE:t}=s.current,a=["gutter",{"cell-fix-right":!!f.length}],r=t?null:{right:f.length?0:""};return e.map(((e,t)=>React__default.createElement("tr",{key:t,className:"header--row"},e.map(((t,a)=>V(t,a,e))),d&&React__default.createElement("th",{className:classNames(a),style:Object.assign({},r)}))))})(Q))))},useMergeCell=()=>{const{tableProps:e,tableRef:a,layout:r,flattenColumns:l,isDragMergeCell:n}=React__default.useContext(TableContext),{mergeCells:i=[],onMergeChange:o}=e,[s,c]=React__default.useState(!1),d=React__default.useRef(null),u=React__default.useRef(null),p=React__default.useRef({x:0,y:0,disX:0,disY:0});useUpdateEffect((()=>{n||y()}),[n]);const f=()=>{y(),setStyle(d.current,{display:"none"})},m=e=>{const t=[];for(let a=0;a<e.rowSpan;a++)for(let r=0;r<e.colSpan;r++)t.push([e.row+a,e.col+r]);return t},h=()=>{p.current={x:0,y:0,disX:0,disY:0},u.current&&!v(u.current)||(u.current=null,f()),c(!0),document.removeEventListener("mousemove",g)},g=e=>{const{pageX:t,pageY:a}=e,{x:l,y:n,disX:i,disY:o}=p.current;let s=i,c=o,u=t-l,f=a-n;return u<0&&(u=Math.abs(u),s=i-u,setStyle(d.current,{left:`${s}px`})),f<0&&(f=Math.abs(f),c=o-f,setStyle(d.current,{top:`${c+r.headerHeight}px`})),setStyle(d.current,{width:`${u}px`,height:`${f}px`}),R(s,c,u,f),!1},_=(e,t,r,l)=>{const{elementStore:n,scrollYStore:i}=a.current,o=n.$tableBody.querySelectorAll("tbody > tr");for(let a=0;a<o.length;a++){const n=o[a].children;for(let o=0;o<n.length;o++)if(n[o].classList.remove("selected"),(e!==t||r!==l)&&a+i.startIndex>=e&&a+i.startIndex<=t){const e=Number(n[o].getAttribute("colspan")),t=Number(n[o].getAttribute("data-index")),a=e>1?t+e-1:t;a>=r&&a<=l&&n[o].classList.add("selected")}}},y=()=>{const{elementStore:e}=a.current,t=e.$tableBody.querySelectorAll("tbody > tr");for(let e=0;e<t.length;e++){const a=t[e].children;for(let e=0;e<a.length;e++)a[e].classList.remove("selected")}},v=e=>1===e.rowSpan&&1===e.colSpan,b=e=>e.width||e.renderWidth||e.minWidth||config$1.defaultColumnWidth,R=debounce(((e,t,r,n)=>{const{allTableData:i,scrollYStore:o}=a.current;let s=-1,c=-1,d=-1,p=-1;for(let e=0;e<i.length;e++)t>o.rowHeight*e&&t<o.rowHeight*(e+1)&&(s=e),t+n>o.rowHeight*e&&t+n<o.rowHeight*(e+1)&&(c=e);let f=0;for(let t=0;t<l.length;t++)e>f&&e<f+b(l[t])&&(d=t),e+r>f&&e+r<f+b(l[t])&&(p=t),f+=b(l[t]);const m={row:s,col:d,rowSpan:c-s+1,colSpan:p-d+1};isEqual$1(u,m)||(u.current=m,_(s,c,d,p))}),10);return{dragStart:e=>{const{pageX:t,pageY:l}=e,{elementStore:n}=a.current,{x:i,y:o}=getPosition(n.$table),{scrollLeft:s,scrollTop:f}=n.$tableBody.parentNode;u.current=null,p.current={x:t,y:l,disX:t+s-i,disY:l+f-(o+r.headerHeight)},setStyle(d.current,{width:0,height:0,left:t-i+"px",top:l-o+"px",display:"block"}),y(),c(!1),document.addEventListener("mousemove",g,{passive:!0}),document.addEventListener("mouseup",h,{passive:!0,once:!0})},renderDragPanel:()=>React__default.createElement("div",{ref:d,className:"merge-cell-bar",onMouseDown:e=>e.stopPropagation()},s&&React__default.createElement(React__default.Fragment,null,React__default.createElement(QmButton,{size:"small",className:"btn cancel",onClick:()=>{if(u.current&&!v(u.current)){const e=m(u.current),t=i.findIndex((t=>{const a=m(t);return intersectionWith(a,e,isEqual$1).length===a.length}));-1!==t&&(null==o||o(i.filter(((e,a)=>a!==t))))}f()}},t("qm.table.mergeCell.cancel")),React__default.createElement(QmButton,{size:"small",type:"primary",className:"btn confirm",onClick:()=>{if(u.current&&!v(u.current)){const e=m(u.current);let t=!1;for(let a=0;a<i.length;a++){intersectionWith(m(i[a]),e,isEqual$1).length&&(t=!0)}t||null==o||o([...i,u.current])}f()}},t("qm.table.mergeCell.confirm")))),closeDragPanel:f}},useValueFormat=()=>({dateFormat:e=>{const t=e?dayjs(e).format(DATE_FORMAT):"";return t.startsWith("1900-01-01")?"":t},datetimeFormat:e=>{const t=e?dayjs(e).format(DATE_TIME_FORMAT):"";return t.startsWith("1900-01-01")?"":t},dateShortTimeFormat:e=>{const t=e?dayjs(e).format(DATE_TIME_FORMAT.slice(0,-3)):"";return t.startsWith("1900-01-01")?"":t},percentFormat:e=>Number.isNaN(Number(e))?e:(100*Number(e)).toFixed(2)+"%",financeFormat:e=>formatNumber(e.toString()),secretNameFormat:e=>e.replace(/^([\u4e00-\u9fa5]{1}).+$/,"$1**"),secretPhoneFormat:e=>e.replace(/^(\d{3}).+(\d{4})$/,"$1****$2"),secretIDnumberFormat:e=>e.replace(/^(\d{3}).+(\w{4})$/,"$1***********$2"),secretBankNumberFormat:e=>e.replace(/^(\d{4}).+(\w{3})$/,"$1************$2")});function useOutsideClick(e,t){const[a,r]=React.useState(!1);return React.useEffect((()=>{let a;const l=e.current,n=e=>{a=e},i=e=>{((e,a)=>{const n=e.target,i=null==a?void 0:a.target,o=!n||!i,s=(null==l?void 0:l.contains(n))||(null==l?void 0:l.contains(i)),c=l===n,d=null==t?void 0:t.map((e=>document.querySelector(e))),u=(null==d?void 0:d.some((e=>null==e?void 0:e.contains(n))))||(null==d?void 0:d.includes(i));r(!(o||s||c||u))})(e,a)};return l&&(on(document,"mousedown",n),on(document,"mouseup",i)),()=>{l&&(off(document,"mousedown",n),off(document,"mouseup",i))}}),[e]),a}const Selection=e=>{const{selectionKeys:t,column:a,record:r,rowKey:l}=e,{tableProps:n,tableRef:i,isTreeTable:o,getAllChildRowKeys:s}=React__default.useContext(TableContext),{rowSelection:c}=n,d=React__default.useMemo((()=>a.type||""),[a.type]),u=e=>{var a,r;const l=null===(a=c.checkStrictly)||void 0===a||a;if(!o||l)return!1;const n=deepFindRowKey(i.current.deriveRowKeys,e),d=s(null!==(r=null==n?void 0:n.children)&&void 0!==r?r:[]);return!(!Array.isArray(null==n?void 0:n.children)||isArrayContain(t,(null==n?void 0:n.children.map((e=>e.rowKey)))||[]))&&d.some((e=>t.includes(e)))};return"radio"===d?(()=>{const e=c.disabled,a=null==e?void 0:e(r),n=!a&&t[0]===l;return React__default.createElement(Radio,{checked:n,disabled:a})})():(()=>{const e=c.disabled,a=null==e?void 0:e(r),n=!!t.includes(l);return React__default.createElement(Checkbox,{checked:n,indeterminate:u(l),disabled:a})})()},Expandable=e=>{const{record:t,rowKey:a,style:r}=e,{tableProps:l,rowExpandedKeys:n,setRowExpandedKeys:i}=React__default.useContext(TableContext),{expandable:o={}}=l,[s]=React__default.useState("function"==typeof o.rowExpandable&&!o.rowExpandable(t)),c=React__default.useMemo((()=>n.includes(a)),[n,a]);useUpdateEffect((()=>{var e;null===(e=o.onExpand)||void 0===e||e.call(o,c,t)}),[c]);const d={[`${getPrefixCls("expand")}--icon`]:!0,expanded:c,collapsed:!c,disabled:s};return React__default.createElement("span",{className:classNames(d),title:"",onClick:e=>{if(e.stopPropagation(),s)return;const t=c?n.filter((e=>e!==a)):[...n,a];i(t)},style:r})},InputNumber=React__default.forwardRef(((e,t)=>{const{size:a,defaultValue:r,value:l,min:n,max:i,prefix:o,suffix:s,placeholder:c,maxLength:d,precision:u,allowClear:p,readOnly:f,disabled:m,formatter:h=(e=>e.toString()),parser:g=(e=>e),onFocus:_}=e,y=e=>{let t=e.toString();return"."!==t.charAt(t.length-1)&&"-"!==t||(t=t.slice(0,-1)),t&&Number(t)>i&&(t=i.toString()),t&&Number(t)<n&&(t=n.toString()),u>=0&&""!==t&&(t=Number(t).toFixed(u)),t},v=void 0!==l,[b,R]=React__default.useState(null!=r?r:""),E=h(v?l:b),x=g(E),C=t=>{var a;v?null===(a=e.onChange)||void 0===a||a.call(e,t):R(t)};useUpdateEffect((()=>{var t;null===(t=e.onChange)||void 0===t||t.call(e,x)}),[b]);return React__default.createElement(Input,{ref:t,size:a,value:E,maxLength:d,prefix:o,suffix:s,placeholder:c,allowClear:p,readOnly:f,disabled:m,onChange:e=>{const t=g(e.target.value);let a=/^-?\d*(\.\d*)?$/.test(t)||""===t||"-"===t;0===u&&t.includes(".")&&(a=!1),n>=0&&t.startsWith("-")&&(a=!1),a&&C(t)},onFocus:_,onBlur:()=>{var t;const a=y(x);Number(a)!==Number(x)&&C(a),null===(t=e.onBlur)||void 0===t||t.call(e,a,x)},onKeyUp:t=>{var a;13===t.keyCode&&(null===(a=e.onEnter)||void 0===a||a.call(e,y(x),x))}})}));InputNumber.displayName="InputNumber";const{Search:Search}=Input,CellEdit=e=>{var a,r,l,n;const{column:i,record:o,rowKey:s,columnKey:c,clicked:d,text:u}=e,{tableRef:p,tableBodyRef:f,$size:m,flattenColumns:h,doFieldValidate:g,dataChange:_}=React__default.useContext(TableContext),y=React__default.useRef(null),v=React__default.useRef(null),b=React__default.useRef(null),R=React__default.useRef(null),E=React__default.useRef(null),x=React__default.useRef(!1),C=React__default.useRef([]),T=React__default.useRef({}),S=useForceUpdate(),{store:w,fieldAuth:P}=p.current,N=(null===(a=i.editRender)||void 0===a?void 0:a.call(i,o,i))||{},[I,A]=React__default.useState(!1),[$,O]=React__default.useState(!1),[F,L]=React__default.useState(!1),[D,k]=React__default.useState(N.items||[]),H=(N.editable||isEqual$1(d,[s,c]))&&!N.disabled&&!(null===(r=P[c])||void 0===r?void 0:r.disabled),V=`${s}|${c}`,M=2===d.length?`${d[0]}|${d[1]}`:"",j=![...w.state.required,...w.state.validate].some((e=>{let{x:t,y:a}=e;return t===s&&a===c})),q=(null===(l=w.state.required.find((e=>{let{x:t,y:a}=e;return t===s&&a===c})))||void 0===l?void 0:l.text)||"",U=(null===(n=w.state.validate.find((e=>{let{x:t,y:a}=e;return t===s&&a===c})))||void 0===n?void 0:n.text)||"",K=w.state.edited.some((e=>{let{x:t,y:a}=e;return t===s&&a===c})),B=H||!j||I||F||$,z=()=>{_()};React__default.useEffect((()=>{B&&M===V&&Q()}),[d]);const W=(e,t)=>{A(e),null==t||t()},G=e=>{C.current=e},Q=()=>{var e,t,a,r;const{type:l}=N;switch(l){case"text":null===(e=v.current)||void 0===e||e.focus();break;case"number":null===(t=b.current)||void 0===t||t.select();break;case"search-helper":null===(a=R.current)||void 0===a||a.focus();break;case"tree-helper":null===(r=E.current)||void 0===r||r.focus()}},Y=e=>{e.dispatchEvent(new MouseEvent("mousedown",{bubbles:!0})),e.dispatchEvent(new MouseEvent("mouseup",{bubbles:!0}))},X=(e,t,a)=>{const{cornerSign:r=!0}=N.extra||{};w.addToUpdated(e),r&&w.addToEdited({x:t,y:a})},Z=e=>""!==e?Number(e):"",J={text:(e,a)=>{const{dataIndex:r}=a,{type:l,extra:n={},rules:i=[],onInput:o,onChange:d,onEnter:u,onBlur:p}=N,f=getCellValue(e,r),h=n.password?Input.Password:Input;return React__default.createElement(h,{ref:v,size:m,value:f,maxLength:n.maxLength,showCount:n.showCount,placeholder:n.placeholder||t("qm.table.editable.inputPlaceholder"),allowClear:n.allowClear,readOnly:n.readOnly,disabled:n.disabled,suffix:n.suffix,onChange:t=>{var a;const l=null!==(a=t.target.value)&&void 0!==a?a:"";setCellValue(e,r,l),g(i,l,s,c),S(),null==o||o({[V]:l}),x.current=!0},onFocus:()=>O(!0),onBlur:t=>{var a;O(!1);const r=null!==(a=t.target.value)&&void 0!==a?a:"";x.current&&(x.current=!1,X(e,s,c),null==d||d({[V]:r},e),null==p||p({[V]:r},e),z())},onKeyUp:t=>{var a;if(13===t.keyCode){const r=null!==(a=t.target.value)&&void 0!==a?a:"";null==u||u({[V]:r},e)}}})},number:(e,a)=>{var r;const{dataIndex:l,precision:n,formatType:i}=a,{type:o,extra:d={},rules:u=[],onInput:p,onChange:f,onEnter:h,onBlur:_}=N,y=getCellValue(e,l);let v,R;return"finance"===i&&(v=e=>`${e}`.replace(/\B(?=(\d{3})+(?!\d))/g,","),R=e=>e.replace(/\$\s?|(,*)/g,"")),"percent"===i&&(v=e=>"."===(e+="").charAt(e.length-1)||"-"===e||""===e?e:`${new Big(e).times(100).toNumber()}`,R=e=>"."===e.charAt(e.length-1)||"-"===e||""===e?e:(Number(e)/100).toString()),React__default.createElement(InputNumber,{ref:b,size:m,value:y,min:d.min,max:d.max,precision:n,prefix:d.prefix,suffix:null!==(r=d.suffix)&&void 0!==r?r:"percent"===i?"%":void 0,placeholder:d.placeholder||t("qm.table.editable.inputPlaceholder"),maxLength:d.maxLength,allowClear:d.allowClear,readOnly:d.readOnly,disabled:d.disabled,formatter:v,parser:R,onChange:t=>{setCellValue(e,l,t),g(u,t,s,c),S(),null==p||p({[V]:t}),x.current=!0},onFocus:()=>O(!0),onBlur:(t,a)=>{if(O(!1),!x.current)return;x.current=!1;let r=Z(t);"percent"===i&&"."===a.charAt(a.length-1)&&(r=Number(t)/100),setCellValue(e,l,r),X(e,s,c),null==f||f({[V]:r},e),null==_||_({[V]:t},e),z()},onEnter:(t,a)=>{let r=Z(t);"percent"===i&&"."===a.charAt(a.length-1)&&(r=Number(t)/100),null==h||h({[V]:r},e)}})},select:(e,a,r)=>{var l;const{dataIndex:n,dictItems:i=[]}=a,{type:o,extra:d={},rules:u=[],items:f,onChange:h,onEnter:_}=N;p.current;const y=f||i,v=getCellValue(e,n);let b=v;return React__default.createElement(Select,{mode:r?"multiple":void 0,size:m,dropdownClassName:"table-editable__popper",value:v||void 0,placeholder:d.placeholder||t("qm.table.editable.selectPlaceholder"),allowClear:d.allowClear,maxTagCount:d.collapseTags?"responsive":void 0,maxTagTextLength:d.maxTagTextLength,disabled:d.disabled,style:{width:"100%"},showSearch:null===(l=d.filterable)||void 0===l||l,filterOption:(e,t)=>{var a;const r=(null===(a=null==t?void 0:t.children)||void 0===a?void 0:a.toString())||"";return`${r}|${pinyin.parse(r).map((e=>2===e.type?e.target.toLowerCase().slice(0,1):e.target)).join("")}`.toLowerCase().indexOf(e.toLowerCase())>=0},onChange:t=>{setCellValue(e,n,t),g(u,t,s,c),X(e,s,c),S(),null==h||h({[V]:t},e),z()},onSelect:e=>{b=e},onInputKeyDown:t=>{13===t.keyCode&&nextTick((()=>null==_?void 0:_({[V]:b},e)))}},y.map((e=>React__default.createElement(Select.Option,{key:e.value,value:e.value,disabled:e.disabled},e.text))))},"select-multiple":(e,t)=>J.select(e,t,!0),date:(e,a,r)=>{var l;const{dataIndex:n}=a,{type:i,extra:o={},rules:d=[],onChange:u}=N,p=r?DATE_TIME_FORMAT:DATE_FORMAT,f=getCellValue(e,n);return React__default.createElement(DatePicker,{showTime:r,size:m,dropdownClassName:"table-editable__popper",value:null!==(l=getDate(f,p))&&void 0!==l?l:void 0,format:p,disabledDate:e=>(e=>{const{minDateTime:t,maxDateTime:a}=o;return t&&a?e.isBefore(t,"day")||e.isAfter(a,"day"):t?e.isBefore(t,"day"):!!a&&e.isAfter(a,"day")})(e),placeholder:t(r?"qm.table.editable.datetimePlaceholder":"qm.table.editable.datePlaceholder"),allowClear:o.allowClear,disabled:o.disabled,style:{width:"100%"},onChange:t=>{const a=formatDate(t,p);setCellValue(e,n,a),g(d,a,s,c),X(e,s,c),S(),null==u||u({[V]:a},e),z()}})},datetime:(e,t)=>J.date(e,t,!0),time:(e,a)=>{var r;const{dataIndex:l}=a,{type:n,extra:i={},rules:o=[],onChange:d}=N,u=getCellValue(e,l);return React__default.createElement(TimePicker,{size:m,dropdownClassName:"table-editable__popper",value:null!==(r=getDate(u,TIME_FORMAT))&&void 0!==r?r:void 0,format:TIME_FORMAT,placeholder:t("qm.table.editable.datetimePlaceholder"),allowClear:i.allowClear,disabled:i.disabled,style:{width:"100%"},onChange:t=>{const a=formatDate(t,TIME_FORMAT);setCellValue(e,l,a),g(o,a,s,c),X(e,s,c),S(),null==d||d({[V]:a},e),z()}})},checkbox:(e,t)=>{const{dataIndex:a}=t,{type:r,extra:l={},onChange:n}=N,{trueValue:i=DEFAULT_TRUE_VALUE,falseValue:o=DEFAULT_FALSE_VALUE,disabled:d}=l,u=getCellValue(e,a);return React__default.createElement(Checkbox,{checked:u===i,disabled:d,onChange:t=>{const r=t.target.checked?i:o;setCellValue(e,a,r),X(e,s,c),S(),null==n||n({[V]:r},e),z()}})},switch:(e,t)=>{const{dataIndex:a}=t,{type:r,extra:l={},onChange:n}=N,{trueValue:i=DEFAULT_TRUE_VALUE,falseValue:o=DEFAULT_FALSE_VALUE,disabled:d}=l,u=getCellValue(e,a);return React__default.createElement(Switch,{checked:u===i,disabled:d,onChange:t=>{const r=t?i:o;setCellValue(e,a,r),X(e,s,c),S(),null==n||n({[V]:r},e),z()}})},"search-helper":(e,a)=>{var r;const{dataIndex:l,precision:n}=a,{type:i,extra:o={},rules:d=[],helper:u={},onInput:p,onChange:_,onEnter:v}=N,b=getCellValue(e,l),E=u.fieldAliasMap;E||warn("Table","helper 需要配置 `fieldAliasMap` 选项");const C="function"==typeof E?E():E||{};Object.keys(C).includes(l)||warn("Table","fieldAliasMap 选项必须包含自身 `dataIndex` 值");const w=e=>{const{filterAliasMap:t}=u,a=""!==e?e:void 0,r="function"==typeof t?t():null!=t?t:[],n={[l]:a};return r.forEach((e=>n[e]=a)),n},P=e=>{T.current=w(e),A(!0)},$=(t,r)=>{const{beforeOpen:l}=u,n=(null!=l?l:trueNoop)({[V]:b},e,a);(null==n?void 0:n.then)?n.then((()=>{P(t),null==r||r()})).catch((()=>{})):!1!==n&&(P(t),null==r||r())},O=e=>{const t={};for(const a in C){const r=C[a];a!==l&&(t[a]=getSplitValue(e,r))}const a=C[l]?getSplitValue(e,C[l]):"";D(a,t);const{closed:r}=u;W(!1,(()=>Y(y.current))),Q(),null==r||r(e)},F=()=>{const{onlySelect:e=!0}=u;x.current&&D(e?"":b),x.current=!1,W(!1,(()=>Y(y.current)))},D=function(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"",a=arguments.length>1?arguments[1]:void 0;var r;if(isPlainObject(a)&&Object.keys(a).length){for(const t in a){const l=a[t],n=h.find((e=>e.dataIndex===t));if(n){setCellValue(e,t,l,n.precision);const a=null===(r=n.editRender)||void 0===r?void 0:r.call(n,e,n);a&&Array.isArray(a.rules)&&g(a.rules,l,s,t)}else setCellValue(e,t,l)}f.current.forceUpdate()}setCellValue(e,l,t,n),g(d,t,s,c),X(e,s,c),null==_||_({[V]:t},e),z(),T.current={},x.current=!1},k={visible:I,title:t("qm.searchHelper.text"),width:null!==(r=u.width)&&void 0!==r?r:"60%",loading:!1,stopMouseDownEvent:!0,bodyStyle:{paddingBottom:`${SizeHeight[m]+20}px`},onClose:()=>{F()}},H=Object.assign(Object.assign({},u),{size:m,initialValue:merge({},u.initialValue,T.current),onClose:e=>{e?O(e):F()}});return React__default.createElement(React__default.Fragment,null,React__default.createElement(Search,{ref:R,value:b,placeholder:o.placeholder||t("qm.table.editable.selectPlaceholder"),allowClear:o.allowClear,readOnly:o.readOnly,disabled:o.disabled,onBlur:e=>{var t;const{value:a}=e.target,{onlySelect:r=!0,table:n}=u;if(x.current&&!I)return a&&r&&(null===(t=null==n?void 0:n.fetch)||void 0===t?void 0:t.api)?(e=>{const{table:t,initialValue:a={}}=u,{beforeFetch:r=trueNoop}=t.fetch;return L(!0),new Promise(((l,n)=>__awaiter(void 0,void 0,void 0,(function*(){var i;const o=merge({},t.fetch.params,Object.assign(Object.assign({},a),w(e)),{currentPage:1,pageSize:500});try{if(r(o)){const e=yield t.fetch.api(o);if(200===e.code){const a=Array.isArray(e.data)?e.data:null!==(i=get(e.data,t.fetch.dataKey))&&void 0!==i?i:[];l(a)}else n()}else n()}catch(e){n()}L(!1)}))))})(a).then((e=>function(){let e=arguments.length>1?arguments[1]:void 0;const t=(arguments.length>0&&void 0!==arguments[0]?arguments[0]:[]).filter((t=>getSplitValue(t,C[l]).toString().includes(e)));if(1===t.length)return O(t[0]);$(e)}(e,a))).catch((()=>D(""))):void D(a)},onChange:t=>{const{value:a}=t.target;setCellValue(e,l,a),null==p||p({[V]:a}),x.current=!0,S()},onKeyUp:t=>{var a;if(13===t.keyCode){const r=null!==(a=t.target.value)&&void 0!==a?a:"";null==v||v({[V]:r},e)}},onDoubleClick:e=>{const{value:t}=e.target;$(t)},onSearch:(e,t)=>{"click"===(null==t?void 0:t.type)&&("INPUT"!==t.target.tagName?$(e):D(""))}}),React__default.createElement(QmModal,k,React__default.createElement(SearchHelper,H)))},"search-helper-multiple":(e,a)=>{var r;const{dataIndex:l}=a,{type:n,items:i=[],extra:o={},rules:d=[],helper:u={},onInput:p,onChange:f,onEnter:h}=N,_=getCellValue(e,l),v=u.fieldAliasMap;v||warn("Table","helper 需要配置 `fieldAliasMap` 选项");const b="function"==typeof v?v():v||{};Object.keys(b).includes("valueKey")&&Object.keys(b).includes("textKey")||warn("Table","fieldAliasMap 选项必须包含自身 `valueKey` 和 `textKey`");const R=t=>{const{beforeOpen:r}=u,l=(null!=r?r:trueNoop)({[V]:_},e,a);(null==l?void 0:l.then)?l.then((()=>{A(!0),null==t||t()})).catch((()=>{})):!1!==l&&(A(!0),null==t||t())},E=()=>{W(!1,(()=>Y(y.current)))},x=t=>{setCellValue(e,l,t),g(d,t,s,c),X(e,s,c),null==f||f({[V]:t},e,C.current),z()},T={visible:I,title:t("qm.searchHelper.text"),width:null!==(r=u.width)&&void 0!==r?r:"60%",loading:!1,stopMouseDownEvent:!0,bodyStyle:{paddingBottom:`${SizeHeight[m]+20}px`},onClose:()=>{E()}},w=Object.assign(Object.assign({},u),{size:m,multiple:!0,initialValue:merge({},u.initialValue),defaultSelectedKeys:_,onClose:(e,t)=>{e?((e,t)=>{const{textKey:a,valueKey:r}=b;G(uniqBy([...C.current.filter((e=>t.includes(e[r]))),...e],r));const l=C.current.map((e=>({text:e[a],value:e[r]}))),n=uniqBy([...l,...i],"value").filter((e=>t.includes(e.value)));k(n),x(n.map((e=>e.value)));const{closed:o}=u;W(!1,(()=>Y(y.current))),null==o||o(C.current)})(e,t):E()}});return React__default.createElement(React__default.Fragment,null,React__default.createElement("span",{className:"ant-input-group-wrapper ant-input-search search-helper-multiple"},React__default.createElement("span",{className:"ant-input-wrapper ant-input-group"},React__default.createElement(Select,{mode:"multiple",open:!1,value:_,placeholder:o.placeholder||t("qm.table.editable.selectPlaceholder"),allowClear:o.allowClear,maxTagCount:o.collapseTags?"responsive":void 0,maxTagTextLength:o.maxTagTextLength,disabled:o.disabled,style:{width:"100%"},onKeyUp:t=>{13===t.keyCode&&(null==h||h({[V]:_},e))},onDoubleClick:()=>{R()},onChange:e=>{const{valueKey:t}=b;G(C.current.filter((a=>e.includes(a[t])))),x(e),S()}},D.map((e=>React__default.createElement(Select.Option,{key:e.value,value:e.value},e.text)))),React__default.createElement("span",{className:"ant-input-group-addon"},React__default.createElement(Button,{className:"ant-input-search-button",disabled:o.disabled,icon:React__default.createElement(SearchOutlined,null),onClick:()=>{R()}})))),React__default.createElement(QmModal,T,React__default.createElement(SearchHelper,w)))},"tree-helper":(e,a)=>{var r,l;const{dataIndex:n,precision:i}=a,{type:o,extra:d={},rules:u=[],helper:p={},onChange:_,onEnter:v}=N,b=getCellValue(e,n),R=p.fieldAliasMap;R||warn("Table","helper 需要配置 `fieldAliasMap` 选项");const x="function"==typeof R?R():R||{};Object.keys(x).includes(n)||warn("Table","fieldAliasMap 选项必须包含自身 `dataIndex` 值");const C=t=>{const{beforeOpen:r}=p,l=(null!=r?r:trueNoop)({[V]:b},e,a);(null==l?void 0:l.then)?l.then((()=>{A(!0),null==t||t()})).catch((()=>{})):!1!==l&&(A(!0),null==t||t())},T=()=>{W(!1,(()=>Y(y.current)))},w=function(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"",a=arguments.length>1?arguments[1]:void 0;var r;if(isPlainObject(a)&&Object.keys(a).length){for(const t in a){const l=a[t],n=h.find((e=>e.dataIndex===t));if(n){setCellValue(e,t,l,n.precision);const a=null===(r=n.editRender)||void 0===r?void 0:r.call(n,e,n);a&&Array.isArray(a.rules)&&g(a.rules,l,s,t)}else setCellValue(e,t,l)}f.current.forceUpdate()}setCellValue(e,n,t,i),g(u,t,s,c),X(e,s,c),null==_||_({[V]:t},e),z()},P={visible:I,title:t("qm.searchHelper.text"),width:null!==(r=p.width)&&void 0!==r?r:"30%",loading:!1,stopMouseDownEvent:!0,bodyStyle:{paddingBottom:`${SizeHeight[m]+20}px`},onClose:()=>{T()}},$=Object.assign(Object.assign({},p),{defaultSelectedKeys:[b],size:m,onClose:e=>{e?(e=>{const t={};for(const a in x){const r=x[a];a!==n&&(t[a]=getSplitValue(e,r))}const a=x[n]?getSplitValue(e,x[n]):"";w(a,t);const{closed:r}=p;W(!1,(()=>Y(y.current))),Q(),null==r||r(e)})(e):T()}});return React__default.createElement(React__default.Fragment,null,React__default.createElement(Search,{ref:E,value:b,allowClear:null===(l=d.allowClear)||void 0===l||l,readOnly:d.readOnly,disabled:d.disabled,placeholder:d.placeholder||t("qm.table.editable.selectPlaceholder"),onChange:e=>{const{value:t}=e.target;t||S()},onKeyUp:t=>{var a;if(13===t.keyCode){const r=null!==(a=t.target.value)&&void 0!==a?a:"";null==v||v({[V]:r},e)}},onDoubleClick:()=>{C()},onSearch:(e,t)=>{"click"===(null==t?void 0:t.type)&&("INPUT"!==t.target.tagName?C():w(""))}}),React__default.createElement(QmModal,P,React__default.createElement(TreeHelper,$)))},"tree-helper-multiple":(e,a)=>{var r;const{dataIndex:l}=a,{type:n,extra:i={},items:o=[],rules:d=[],helper:u={},onInput:p,onChange:f,onEnter:h}=N,_=getCellValue(e,l),v=u.fieldAliasMap;v||warn("Table","helper 需要配置 `fieldAliasMap` 选项");const b="function"==typeof v?v():v||{};Object.keys(b).includes("valueKey")&&Object.keys(b).includes("textKey")||warn("Table","fieldAliasMap 选项必须包含自身 `valueKey` 和 `textKey`");const R=t=>{const{beforeOpen:r}=u,l=(null!=r?r:trueNoop)({[V]:_},e,a);(null==l?void 0:l.then)?l.then((()=>{A(!0),null==t||t()})).catch((()=>{})):!1!==l&&(A(!0),null==t||t())},E=()=>{W(!1,(()=>Y(y.current)))},x=t=>{setCellValue(e,l,t),g(d,t,s,c),X(e,s,c),null==f||f({[V]:t},e,C.current),z()},T={visible:I,title:t("qm.searchHelper.text"),width:null!==(r=u.width)&&void 0!==r?r:"60%",loading:!1,stopMouseDownEvent:!0,bodyStyle:{paddingBottom:`${SizeHeight[m]+20}px`},onClose:()=>{E()}},w=Object.assign(Object.assign({},u),{size:m,multiple:!0,initialValue:merge({},u.initialValue),defaultSelectedKeys:_,onClose:e=>{e?(e=>{const{textKey:t,valueKey:a}=b;G(e);const r=C.current.map((e=>({text:e[t],value:e[a]})));k(r),x(r.map((e=>e.value)));const{closed:l}=u;W(!1,(()=>Y(y.current))),null==l||l(C.current)})(e):E()}});return React__default.createElement(React__default.Fragment,null,React__default.createElement("span",{className:"ant-input-group-wrapper ant-input-search search-helper-multiple"},React__default.createElement("span",{className:"ant-input-wrapper ant-input-group"},React__default.createElement(Select,{mode:"multiple",open:!1,value:_,placeholder:i.placeholder||t("qm.table.editable.selectPlaceholder"),allowClear:i.allowClear,maxTagCount:i.collapseTags?"responsive":void 0,maxTagTextLength:i.maxTagTextLength,disabled:i.disabled,style:{width:"100%"},onKeyUp:t=>{13===t.keyCode&&(null==h||h({[V]:_},e))},onDoubleClick:()=>{R()},onChange:e=>{const{valueKey:t}=b;G(C.current.filter((a=>e.includes(a[t])))),x(e),S()}},D.map((e=>React__default.createElement(Select.Option,{key:e.value,value:e.value},e.text)))),React__default.createElement("span",{className:"ant-input-group-addon"},React__default.createElement(Button,{className:"ant-input-search-button",disabled:i.disabled,icon:React__default.createElement(SearchOutlined,null),onClick:()=>{R()}})))),React__default.createElement(QmModal,T,React__default.createElement(TreeHelper,w)))}};return React__default.createElement(React__default.Fragment,null,B?(()=>{const{type:e}=N,t=J[e];if(!t)return warn("Table","单元格编辑的类型 `type` 配置不正确"),null;const a=["cell--edit",{"is-error":!j}];return React__default.createElement("div",{ref:y,className:classNames(a)},t(o,i),!j&&React__default.createElement("div",{className:"cell-error"},q||U))})():(()=>{const{extra:e={}}=N;return e.disabledColor?React__default.createElement("span",{style:{color:e.disabledColor}},u):React__default.createElement(React__default.Fragment,null,u)})(),K&&React__default.createElement("i",{className:"cell--sign"}))},cloneElement=function(e){if(!React__default.isValidElement(e))return null;for(var t=arguments.length,a=new Array(t>1?t-1:0),r=1;r<t;r++)a[r-1]=arguments[r];return React__default.cloneElement(e,...a)},CopyToClipboard=e=>{const{text:a,options:r,showMessage:l=!0,onCopy:n}=e;return cloneElement(e.children,{onClick:i=>{const o=React__default.Children.only(e.children),s=copy(a,r);null==n||n(a,s),s&&l&&message.success(t("qm.clipboard.success")),o&&o.props&&"function"==typeof o.props.onClick&&o.props.onClick(i)}})};CopyToClipboard.displayName="CopyToClipboard";const TableBody=React__default.forwardRef(((e,a)=>{const{tableData:r,flattenColumns:l}=e,{getRowKey:n,tableProps:i,tableRef:o,editableColumns:s,leftFixedColumns:c,rightFixedColumns:d,firstDataIndex:u,sorter:p,layout:f,showFooter:m,scrollX:h,scrollY:g,selectionKeys:_,rowExpandedKeys:y,highlightKey:v,isPingLeft:b,isPingRight:R,isTableEmpty:E,isTreeTable:x,isGroupSubtotal:C,isWebPagination:T,isDragMergeCell:S,setElementStore:w,createTableFullData:P,setSelectionKeys:N,setHighlightKey:I,getStickyLeft:A,getStickyRight:$,scrollXToColumn:O,scrollYToRecord:F,rowInViewport:L,dataChange:D,setPingLeft:k,setPingRight:H,setFullScreen:V,setOverlay:M,findParentRowKeys:j,getAllChildRowKeys:q,triggerScrollYEvent:U,scrollBottomDebouncer:K}=React__default.useContext(TableContext),{height:B,minHeight:z,maxHeight:W,rowSelection:G,rowHighlight:Q,treeConfig:Y,expandable:X,stripe:Z,summation:J,rowStyle:ee,cellStyle:te,spanMethod:ae,ellipsis:re,showHeader:le,rowDraggable:ne,onRowClick:ie,onRowDblclick:oe,onRowContextmenu:se,onRowEnter:ce}=i,de=React__default.useRef(null),ue=React__default.useRef(null),pe=React__default.useRef({prevST:0,prevSL:0}),{dragStart:fe,renderDragPanel:me,closeDragPanel:he}=useMergeCell(),ge=useValueFormat(),_e=React__default.useMemo((()=>{const{headerHeight:e,viewportHeight:t,footerHeight:a,tableFullHeight:r,tableAutoHeight:l}=f,n={};return E&&Object.assign(n,{minHeight:`${EMPTY_MIN_HEIGHT}px`}),z&&Object.assign(n,{minHeight:parseHeight(z)-e-a+"px"}),W&&Object.assign(n,{maxHeight:parseHeight(W)-e-a+"px"}),B||r||l?Object.assign(Object.assign({},n),{maxHeight:"",minHeight:"",height:`${t}px`}):n}),[B,W,z,E,f]),ye=React__default.useMemo((()=>{const{tableBodyWidth:e,gutterWidth:t}=f;return e&&g?e-t:e}),[f,g]),ve=React__default.useMemo((()=>{const{scrollYStore:e}=o.current,{viewportHeight:t,gutterWidth:a}=f;return Math.floor((h?t-a:t)/e.rowHeight)}),[f,h]),[be,Re]=React__default.useState([]),Ee=useForceUpdate(),xe=useOutsideClick(de,[".table-editable__popper"]);React__default.useImperativeHandle(a,(()=>({renderCellTitle:De,setClickedValues:Pe,forceUpdate:Ee}))),useUpdateEffect((()=>{xe&&(Pe([]),S&&he())}),[xe]),useUpdateEffect((()=>{be.length&&TableManager.focus(o.current.uid)}),[be]),React__default.useEffect((()=>{Te(),Se()}),[]);const Ce=React__default.useCallback((e=>{var t,a,l,i,c,d,u;const{keyCode:p}=e;if(o.current.uid===(null===(t=TableManager.getFocusInstance())||void 0===t?void 0:t.id)&&(27===p&&(Pe([]),I(""),V(!1)),be.length&&(contains$1(document.activeElement,de.current)||"INPUT"!==(null===(a=document.activeElement)||void 0===a?void 0:a.tagName)))){if(13===p&&(prevent(e),"radio"===(null==G?void 0:G.type)||Q)){const t=null!==(i=null!==(l=_[0])&&void 0!==l?l:v)&&void 0!==i?i:null,a=null!==(c=r.find((e=>n(e,e.index)===t)))&&void 0!==c?c:null;a&&(null==ce||ce(a,e))}if(38===p||40===p){prevent(e);const{allTableData:t}=o.current,a=T?getAllTableData(r):t,l=a.length;let i=a.findIndex((e=>n(e,e.index)===be[0]));const s=38===p?(--i+l)%l:++i%l,c=a[s],f=n(c,c.index);"radio"!==(null==G?void 0:G.type)||(null===(d=G.disabled)||void 0===d?void 0:d.call(G,c))||N([f]),Q&&!(null===(u=Q.disabled)||void 0===u?void 0:u.call(Q,c))&&I(f),L(s)||(38===p&&F(f,s),40===p&&F(f,ve>s+1?0:s+1-ve)),Pe([f,be[1]])}if(9===p){if(prevent(e),!s.length)return Pe([]);const t=s.length;let a=s.findIndex((e=>e.dataIndex===be[1]));const r=++a%t,l=s[r].dataIndex;Pe([be[0],l]),O(l)}}}),[be,r,_,s,ve]);React__default.useEffect((()=>{const e=addEventListener(document,"keydown",Ce);return()=>e.remove()}),[Ce]);const Te=()=>{w("$tableBody",de.current),w("$tableYspace",ue.current)},Se=()=>{M("overlay"===getStyle(de.current.parentNode,"overflowY"))},we=(e,t,a)=>{var r,l;const{dataIndex:i}=a;if([config$1.expandableColumn,config$1.operationColumn].includes(i))return;const o=n(t,t.index);Pe([o,i]);const s=null===(r=a.editRender)||void 0===r?void 0:r.call(a,t,a),c=s&&!s.disabled,{type:d,selectByClickRow:u=!0,disabled:p=noop$1}=G||{};!d||p(t)||c||(u||i===config$1.selectionColumn)&&((e,t)=>{const{type:a,checkStrictly:r=!0,onSelect:l}=G||{};if("radio"===a&&N([e]),"checkbox"===a){const a=!_.includes(e),n=x&&!r?Ie(e,_,a):Ne(e,_,a);N(n),null==l||l(a,t,n)}})(o,t),[config$1.selectionColumn].includes(i)||(!Q||(null===(l=Q.disabled)||void 0===l?void 0:l.call(Q,t))||c||I(o),null==ie||ie(t,a,e))},Pe=e=>{isEqual$1(e,be)||Re(e)},Ne=(e,t,a)=>a?[...t,e]:t.filter((t=>t!==e)),Ie=(e,t,a)=>{var r;const{deriveRowKeys:l}=o.current,n=deepFindRowKey(l,e);let i=[];const s=q((null==n?void 0:n.children)||[]),c=(null===(r=deepGetRowkey(l,e))||void 0===r?void 0:r.slice(0,-1).reverse())||[];return i=a?[...new Set([...t,e,...s])]:t.filter((t=>![e,...s].includes(t))),c.forEach((e=>{var t;const a=deepFindRowKey(l,e),r=isArrayContain(i,(null===(t=null==a?void 0:a.children)||void 0===t?void 0:t.map((e=>e.rowKey)))||[]);i=r?[...i,e]:i.filter((t=>t!==e))})),i},Ae=e=>Array.isArray(e.children)&&e.children.length>0,$e=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;const a=[];return e.forEach((e=>{const r=e.index,i=n(e,e.index);if(a.push(Oe(e,r,i,t)),null==X?void 0:X.expandedRowRender){const{expandedRowClassName:t,rowExpandable:n=trueNoop}=X;y.includes(i)&&n(e)&&a.push(React__default.createElement("tr",{key:`expand_${i}`,className:"body--row-expanded"},React__default.createElement("td",{colSpan:l.length,className:"body--column",style:{paddingLeft:G?"100px":"50px"}},React__default.createElement("div",{className:classNames("cell",t)},X.expandedRowRender(e,r)))))}if(!(null==Y?void 0:Y.virtual)&&Ae(e)){const r="function"!=typeof(null==X?void 0:X.rowExpandable)||X.rowExpandable(e);y.includes(i)&&r&&a.push(...$e(e.children,t+1))}})),a},Oe=function(e,t,a){let r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:0;const n=["body--row",Object.assign({"body--row-striped":Z&&t%2!=0,"body--row-selected":_.includes(a),"body--row-current":v===a},C?je(e._group):null)];return React__default.createElement("tr",{key:a,className:classNames(n)},l.map(((l,n)=>Fe(l,n,e,t,a,r))))},Fe=(e,t,a,r,l,n)=>{var i;const{isIE:s,isOverlay:u}=o.current,{dataIndex:m,fixed:h,align:_,className:y=""}=e,{rowSpan:v,colSpan:b}=He(a,e,r,t),{gutterWidth:R}=f;if(!v||!b)return null;const E=null!==(i=e.ellipsis)&&void 0!==i?i:re,x=!s&&"left"===h,T=!s&&"right"===h,S=["body--column",{"col--ellipsis":E,"col--center":"center"===_,"col--right":"right"===_,"column--sort":!!p[m],"cell-fix-left":x,"cell-fix-right":T,"cell-fix-left-last":x&&c[c.length-1].dataIndex===m,"cell-fix-right-first":T&&d[0].dataIndex===m,[y]:!!y}],w=s?null:{left:x?`${A(m)}px`:"",right:T?`${$(m)+(u&&g?R:0)}px`:""},P=ee?"function"==typeof ee?ee(a,r):ee:null,N=te?"function"==typeof te?te(a,e,r,t):te:null,I=C?Me(a._group):null,O=De(e,a,r,t);return React__default.createElement("td",{key:m,title:E?O:void 0,rowSpan:v>1?v:void 0,colSpan:b>1?b:void 0,"data-index":t,className:classNames(S),style:Object.assign(Object.assign(Object.assign(Object.assign({},w),I),P),N),onClick:t=>we(t,a,e),onDoubleClick:t=>((e,t,a)=>{const{dataIndex:r}=a;[config$1.expandableColumn,config$1.selectionColumn,config$1.operationColumn].includes(r)||null==oe||oe(t,a,e)})(t,a,e),onContextMenu:t=>((e,t,a)=>{const{dataIndex:r}=a;[config$1.expandableColumn,config$1.selectionColumn,config$1.operationColumn].includes(r)||null==se||se(t,a,e)})(t,a,e)},React__default.createElement("div",{className:"cell"},Le(e,a,r,t,O,l,n)),T&&u&&g&&d[d.length-1].dataIndex===m?React__default.createElement("i",{className:"gutter-overlay",style:{width:R,right:-1*(R+1)}}):null)},Le=(e,a,r,l,n,i,o)=>{const{dataIndex:s,canCopy:c,editRender:d,render:p}=e,f=getCellValue(a,s);if(s===config$1.expandableColumn)return React__default.createElement(Expandable,{record:a,rowKey:i});if(s===config$1.selectionColumn)return React__default.createElement(Selection,{selectionKeys:_,column:e,record:a,rowKey:i});const m=ke(f,e,a);if(d)return React__default.createElement(CellEdit,{column:e,record:a,rowKey:i,columnKey:s,clicked:be,text:m});const h=p?p(f,a,e,r,l):m;return x&&s===u?[Ve((null==Y?void 0:Y.virtual)?a._level:o),React__default.createElement(Expandable,{key:"expand",record:a,rowKey:i,style:Ae(a)?{}:{visibility:"hidden"}}),h]:c?React__default.createElement("div",{className:"cell--copy"},React__default.createElement("span",{className:"text"},h),n&&React__default.createElement(CopyToClipboard,{text:n},React__default.createElement(CopyOutlined,{className:"icon",title:t("qm.table.config.copyText"),onClick:e=>e.stopPropagation()}))):h},De=(e,t,a,r)=>{const{dataIndex:l,render:n}=e;if([config$1.expandableColumn,config$1.selectionColumn,config$1.operationColumn].includes(l))return"";let i="";const o=getCellValue(t,l);if("function"==typeof n){const l=n(o,t,e,a,r);i=isValidElement(l)?getVNodeText(l).join(""):l}else i=ke(o,e,t).toString();return i},ke=(e,t,a)=>{var r,l,n;const{dictItems:i,precision:o,formatType:s,editRender:c}=t,d=i||(null===(r=null==c?void 0:c(a,t))||void 0===r?void 0:r.items)||[],u=d.find((t=>t.value==e));let p=null!==(n=null!==(l=null==u?void 0:u.text)&&void 0!==l?l:e)&&void 0!==n?n:"";if(Array.isArray(e)&&(p=e.map((e=>{var t;const a=d.find((t=>t.value==e));return null!==(t=null==a?void 0:a.text)&&void 0!==t?t:e})).join(",")),o>=0&&""!==p&&(p=Number(p).toFixed(o)),"string"==typeof p&&(p=p.replace(/[\r\n]/g,"")),s){const e=ge[`${camelize(s)}Format`];e?p=e(p):warn("Table","字段的格式化类型 `formatType` 配置不正确")}return p},He=(e,t,a,l)=>{let n=1,i=1;if("function"==typeof ae){const o=ae({row:e,column:t,rowIndex:a,columnIndex:l,tableData:r});if(Array.isArray(o)?(n=o[0],i=o[1]):isPlainObject(o)&&(n=o.rowSpan,i=o.colSpan),e===r[0]&&0===n){n=1;for(let e=1;e<r.length;e++){const{rowSpan:a}=He(r[e],t,r[e].index,l);if(a>0)break;n++}}}const{mergeCells:s}=o.current;if(s.length>0){const e=s.find((e=>e.row===a&&e.col===l));e&&(n=e.rowSpan,i=e.colSpan)}return{rowSpan:n,colSpan:i}},Ve=e=>e?React__default.createElement("span",{key:e,className:`cell--indent indent-level-${e}`,style:{paddingLeft:e*config$1.treeTable.textIndent+"px"}}):null,Me=e=>{var t;const{backgroundColor:a,color:r}=null!==(t=J.groupItems.find((t=>t.dataIndex===e)))&&void 0!==t?t:{};return{backgroundColor:a,color:r}},je=e=>{const t=J.groupItems.findIndex((t=>t.dataIndex===e));return{[`body--row-group_${t+1}`]:t>=0}},qe=getPrefixCls("table"),Ue=S?{onMouseDown:fe}:null;return React__default.createElement("div",{className:`${qe}--body-wrapper`,style:Object.assign({},_e),onScroll:e=>{const{elementStore:t,scrollYLoad:a}=o.current,{prevST:r,prevSL:l}=pe.current,n=g?f.gutterWidth:0,{scrollTop:i,scrollLeft:s}=e.target;if(s!==l){le&&(t.$header.scrollLeft=s),m&&(t.$footer.scrollLeft=s);const e=s>0,a=Math.ceil(s)+f.tableWidth<f.tableBodyWidth+n;b!==e&&k(e),R!==a&&H(a)}if(a&&i!==r&&U(i),g&&i!==r){const a=t.$tableYspace.offsetHeight||t.$tableBody.offsetHeight;Math.ceil(i)+f.viewportHeight-n>=a&&K(e)}pe.current.prevST=i,pe.current.prevSL=s}},React__default.createElement("div",{ref:ue,className:"body--y-space"}),React__default.createElement("div",{className:"body--x-space",style:{width:ye?`${ye}px`:""}}),React__default.createElement("table",_extends$1({ref:de,className:`${qe}--body`,tabIndex:-1,cellSpacing:"0",cellPadding:"0"},Ue,{style:{width:ye?`${ye}px`:""}}),React__default.createElement("colgroup",null,l.map((e=>{const{dataIndex:t,width:a,renderWidth:r}=e;return React__default.createElement("col",{key:t,style:{width:`${a||r}px`,minWidth:`${a||r}px`}})}))),ne?React__default.createElement(ReactSortable,{itemKey:e=>n(e,e.index),tag:"tbody",animation:200,list:r,setList:e=>{const t=e.map((e=>n(e,e.index))),a=r.map((e=>n(e,e.index)));if(isEqual$1(t,a))return;const l=[];o.current.tableFullData.forEach((t=>{r.includes(t)?l.push(e.shift()):l.push(t)})),P(l),D()}},r.map((e=>Oe(e,e.index,n(e,e.index))))):React__default.createElement("tbody",null,$e(r))),S&&me())}));TableBody.displayName="TableBody";const TableFooter=e=>{const{summationRows:a,flattenColumns:r}=e,{getRowKey:l,tableProps:n,tableRef:i,sorter:o,layout:s,scrollY:c,leftFixedColumns:d,rightFixedColumns:u,setElementStore:p,getStickyLeft:f,getStickyRight:m}=React__default.useContext(TableContext),{footRender:h}=n,g=React__default.useRef(null);React__default.useEffect((()=>{_()}),[]);const _=()=>{p("$footer",g.current)},y=(e,a,r)=>{const{isIE:l}=i.current,{gutterWidth:n}=s,{dataIndex:p,fixed:h,align:g,summation:_}=e,y=["footer--column","col--ellipsis",{"col--center":"center"===g,"col--right":"right"===g,"column--sort":!!o[p],"cell-fix-left":!l&&"left"===h,"cell-fix-right":!l&&"right"===h,"cell-fix-left-last":!l&&"left"===h&&d[d.length-1].dataIndex===p,"cell-fix-right-first":!l&&"right"===h&&u[0].dataIndex===p}],v=l?null:{left:"left"===h?`${f(p)}px`:"",right:"right"===h?`${m(p)+(c?n:0)}px`:""},b=(null==_?void 0:_.render)?_.render(i.current.tableFullData):getCellValue(a,`${p}_text`),R=0===r&&""===b?t("qm.table.config.summaryText"):b;return React__default.createElement("td",{key:p,title:R,className:classNames(y),style:Object.assign({},v)},React__default.createElement("div",{className:"cell"},R))},v=getPrefixCls("table"),{tableBodyWidth:b}=s;return React__default.createElement("div",{ref:g,className:`${v}--footer-wrapper`},h?h(r,i.current.tableFullData):React__default.createElement("table",{className:`${v}--footer`,cellSpacing:"0",cellPadding:"0",style:{width:b?`${b}px`:""}},(()=>{const{gutterWidth:e}=s;return React__default.createElement("colgroup",null,r.map((e=>{const{dataIndex:t,width:a,renderWidth:r}=e;return React__default.createElement("col",{key:t,style:{width:`${a||r}px`,minWidth:`${a||r}px`}})})),c&&React__default.createElement("col",{style:{width:`${e}px`,minWidth:`${e}px`}}))})(),React__default.createElement("tfoot",null,(()=>{const{isIE:e}=i.current,t=["gutter",{"cell-fix-right":!!u.length}],l=e?null:{right:u.length?0:""};return a.map(((e,a)=>React__default.createElement("tr",{key:a,className:"footer--row"},r.map(((t,a)=>y(t,e,a))),c&&React__default.createElement("td",{className:classNames(t),style:Object.assign({},l)}))))})())))};var EPageSize;!function(e){e.small="small",e.middle="default",e.large="default"}(EPageSize||(EPageSize={}));const TablePager=e=>{var t,a,r,l;const{current:n,pageSize:i,total:o,config:s,onChange:c}=e,{global:d}=React__default.useContext(ConfigContext),{tableProps:u,$size:p,setElementStore:f}=React__default.useContext(TableContext),{infoBarConfig:m}=u,h=React__default.useRef(null);React__default.useEffect((()=>{g()}),[]);const g=()=>{f("$pager",h.current)},_=(e,t)=>{c(e,t)},y=null!==(t=null==s?void 0:s.showSizeChanger)&&void 0!==t?t:config$1.pagination.showSizeChanger,v=null!==(a=null==s?void 0:s.showQuickJumper)&&void 0!==a?a:config$1.pagination.showQuickJumper,b=(null==s?void 0:s.pageSizeOptions)||(null===(l=null===(r=null==d?void 0:d.table)||void 0===r?void 0:r.pagination)||void 0===l?void 0:l.pageSizeOptions)||config$1.pagination.pageSizeOptions,R={[`${getPrefixCls("table")}-pager`]:!0};return React__default.createElement("div",{ref:h,className:classNames(R)},React__default.createElement("div",{className:"pager-alert"},"bottom"===(null==m?void 0:m.position)&&React__default.createElement(Alert,{total:o})),React__default.createElement(Pagination,{size:EPageSize[p],showSizeChanger:y,showQuickJumper:v,pageSizeOptions:b,current:n,pageSize:i,total:o,onChange:_,onShowSizeChange:_}))},TableEmpty=()=>{const{layout:e}=React__default.useContext(TableContext),t=React__default.useMemo((()=>{const{headerHeight:t,viewportHeight:a}=e;return{top:`${t}px`,height:`${a}px`}}),[e]),a=getPrefixCls("table");return React__default.createElement("div",{className:`${a}--empty`,style:t},React__default.createElement(QmEmpty,null))},Table=React__default.forwardRef(((e,t)=>{const{rowKey:a,columns:r,loading:l,stripe:n,resizable:i,customClass:o,paginationConfig:s,tablePrint:c,exportExcel:d,infoBarConfig:u,topSpaceAlign:p,showTableInfo:f,showFullScreen:m,showRefresh:h,showToolBox:g,showColumnDefine:_,showHeader:y}=e,{size:v}=React__default.useContext(ConfigContext),b=React__default.useMemo((()=>{var t,a;return null!==(a=null!==(t=e.size)&&void 0!==t?t:v)&&void 0!==a?a:""}),[e.size,v]),R=React__default.useRef(null),E=React__default.useRef(null),x=React__default.useRef(null),C=React__default.useRef(null),T=React__default.useRef(null),S=useForceUpdate(),w=React__default.useCallback(((e,t)=>{const r="function"==typeof a?a(e,t):e[a];return void 0===r?(warn("Table","Each record in table should have a unique `key` prop, or set `rowKey` to an unique primary key."),t):r}),[a]),{tableRef:P,tableFullData:N,setElementStore:I,setOriginColumns:A,setTableFullData:$,setTableOriginData:O,setAllTableData:F,setDeriveRowKeys:L,setFieldAuth:D,setMergeCells:k,setScrollYStore:H,setScrollYLoad:V,setResizeState:M,setHandleState:j,setSummaries:q,setSelectionRows:U,setShouldToTop:K,setRecordsMap:B,setOverlay:z,clearElementStore:W,clearRecordsMap:G}=useTableRef(e,{getRowKey:w,$size:b}),{tableData:Q,setTableData:Y,filters:X,setFilters:Z,sorter:J,setSorter:ee,superFilters:te,setSuperFilters:ae,pagination:re,setPagination:le,selectionKeys:ne,setSelectionKeys:ie,rowExpandedKeys:oe,setRowExpandedKeys:se,highlightKey:ce,setHighlightKey:de,layout:ue,setLayout:pe,permission:fe,setPermission:me,spinning:he,setSpinning:ge,scrollX:_e,setScrollX:ye,scrollY:ve,setScrollY:be,isPingLeft:Re,setPingLeft:Ee,isPingRight:xe,setPingRight:Ce,isFullScreen:Te,setFullScreen:Se}=useTableState(e),{isFetch:we,isWebPagination:Pe,isScrollPagination:Ne,showPagination:Ie,shouldUpdateHeight:Ae,tableColumns:$e,flattenColumns:Oe,editableColumns:Fe,summationColumns:Le,leftFixedColumns:De,rightFixedColumns:ke,firstDataIndex:He,showSummary:Ve,showFooter:Me,isHeadGroup:je,bordered:qe,isHeadSorter:Ue,isHeadFilter:Ke,isServiceSummation:Be,isSelectCollection:ze,isTableImport:We,isTableClipboard:Ge,isSuperSearch:Qe,isFastSearch:Ye,isGroupSummary:Xe,isGroupSubtotal:Ze,isDragMergeCell:Je,isTreeTable:et,isTableEmpty:tt,summationRows:at,fetchParams:rt}=useTableMemo(e,{getRowKey:w,tableRef:P,tableFullData:N,tableData:Q,sorter:J,filters:X,superFilters:te,pagination:re}),{createElementStore:lt,tableStyles:nt,getSpan:it,getStickyLeft:ot,getStickyRight:st,scrollXToColumn:ct,scrollYToRecord:dt,rowInViewport:ut,calcTableHeight:pt,resetTableScroll:ft,doLayout:mt}=useTableLayout(e,{getRowKey:w,tableRef:P,$size:b,tableColumns:$e,flattenColumns:Oe,leftFixedColumns:De,layout:ue,scrollY:ve,tableData:Q,showFooter:Me,showPagination:Ie,isWebPagination:Pe,isFullScreen:Te,setLayout:pe,setScrollX:ye,setScrollY:be,setElementStore:I,setScrollYStore:H,setShouldToTop:K}),{initialTable:ht,createTableFullData:gt,getTableData:_t,handleTableData:yt,createTableData:vt,createGroupData:bt,createSelectionKeys:Rt,createSelectionRows:Et,createRowExpandedKeys:xt,findParentRowKeys:Ct,getAllChildRowKeys:Tt,doFieldValidate:St,getTableLog:wt,dataChange:Pt,tableChange:Nt,toLastPage:It,toFirstPage:At,getPageCount:$t,pagerChangeHandle:Ot,triggerScrollYEvent:Ft,scrollBottomDebouncer:Lt,clearTableSorter:Dt,clearTableFilter:kt,clearSuperFilters:Ht,clearRowSelection:Vt,clearRowHighlight:Mt,clearTableLog:jt,destroy:qt}=useTableCore(e,{getRowKey:w,tableRef:P,tableElementRef:E,tableBodyRef:x,$size:b,tableColumns:$e,tableFullData:N,pagination:re,layout:ue,filters:X,sorter:J,superFilters:te,fetchParams:rt,selectionKeys:ne,rowExpandedKeys:oe,highlightKey:ce,summationColumns:Le,shouldUpdateHeight:Ae,isFetch:we,isTreeTable:et,isWebPagination:Pe,isScrollPagination:Ne,isServiceSummation:Be,isGroupSubtotal:Ze,doLayout:mt,setTableData:Y,setTableFullData:$,setTableOriginData:O,setAllTableData:F,setDeriveRowKeys:L,setPagination:le,setSpinning:ge,setSorter:ee,setFilters:Z,setSuperFilters:ae,setSelectionKeys:ie,setRowExpandedKeys:se,setHighlightKey:de,setSelectionRows:U,setScrollYLoad:V,setScrollYStore:H,setFieldAuth:D,setResizeState:M,setSummaries:q,setPermission:me,setRecordsMap:B,resetTableScroll:ft,clearElementStore:W,clearRecordsMap:G});useTableEffect(e,{tableRef:P,topElementRef:R,tableElementRef:E,tableBodyRef:x,resizableBarRef:T,$size:b,scrollX:_e,pagination:re,selectionKeys:ne,rowExpandedKeys:oe,highlightKey:ce,showSummary:Ve,summationRows:at,isWebPagination:Pe,isScrollPagination:Ne,isTreeTable:et,toLastPage:It,toFirstPage:At,getPageCount:$t,setHandleState:j,scrollYToRecord:dt,setOriginColumns:A,setSelectionKeys:ie,setSelectionRows:U,setRowExpandedKeys:se,setHighlightKey:de,setResizeState:M,setMergeCells:k,setPingRight:Ce,calcTableHeight:pt,createSelectionKeys:Rt,createSelectionRows:Et,createRowExpandedKeys:xt,createElementStore:lt,triggerScrollYEvent:Ft,forceUpdate:S,initialTable:ht,destroy:qt});const Ut=React__default.useMemo((()=>({getRowKey:w,tableProps:e,tableRef:P,tableBodyRef:x,$size:b,flattenColumns:Oe,editableColumns:Fe,leftFixedColumns:De,rightFixedColumns:ke,firstDataIndex:He,sorter:J,filters:X,superFilters:te,layout:ue,bordered:qe,showFooter:Me,showSummary:Ve,summationRows:at,scrollX:_e,scrollY:ve,pagination:re,fetchParams:rt,selectionKeys:ne,rowExpandedKeys:oe,highlightKey:ce,isFetch:we,isPingLeft:Re,isPingRight:xe,isHeadSorter:Ue,isHeadFilter:Ke,isFullScreen:Te,isTableEmpty:tt,isHeadGroup:je,isTreeTable:et,isGroupSubtotal:Ze,isWebPagination:Pe,isDragMergeCell:Je,dataChange:Pt,tableChange:Nt,getTableData:_t,setElementStore:I,createTableFullData:gt,setSorter:ee,setFilters:Z,setSuperFilters:ae,setSelectionKeys:ie,setHighlightKey:de,setRowExpandedKeys:se,setSelectionRows:U,getSpan:it,getStickyLeft:ot,getStickyRight:st,scrollXToColumn:ct,scrollYToRecord:dt,rowInViewport:ut,setPagination:le,setPingLeft:Ee,setPingRight:Ce,setSpinning:ge,setFullScreen:Se,setShouldToTop:K,setOverlay:z,doFieldValidate:St,createTableData:vt,createGroupData:bt,findParentRowKeys:Ct,getAllChildRowKeys:Tt,triggerScrollYEvent:Ft,scrollBottomDebouncer:Lt,resetTableScroll:ft,clearTableSorter:Dt,clearTableFilter:kt,clearSuperFilters:Ht,clearRowSelection:Vt,clearRowHighlight:Mt})),[e,b,Oe,Fe,De,ke,He,J,X,te,ue,qe,Me,Ve,at,_e,ve,re,rt,ne,oe,ce,we,Re,xe,Ue,Ke,Te,tt,je,et,Ze,Pe,Je]);useImperativeMethod(t,{getRowKey:w,tableProps:e,tableRef:P,toolBoxRef:C,flattenColumns:Oe,editableColumns:Fe,pagination:re,fetchParams:rt,selectionKeys:ne,rowExpandedKeys:oe,highlightKey:ce,isFetch:we,dataChange:Pt,getTableData:_t,handleTableData:yt,createTableData:vt,calcTableHeight:pt,scrollXToColumn:ct,scrollYToRecord:dt,doFieldValidate:St,setHandleState:j,setSelectionKeys:ie,setRowExpandedKeys:se,setHighlightKey:de,setSelectionRows:U,forceUpdate:S,getTableLog:wt,clearRowSelection:Vt,clearRowHighlight:Mt,clearTableSorter:Dt,clearTableFilter:kt,clearSuperFilters:Ht,clearTableLog:jt}),React__default.useEffect((()=>{TableManager.register(P.current.uid,null!=t?t:{current:null})}),[]);const Kt=getPrefixCls("table"),Bt={[`${Kt}--wrapper`]:!0,[`${Kt}--lg`]:"large"===b,[`${Kt}--sm`]:"small"===b,[`${Kt}--maximize`]:Te,[o]:!!o},zt={[Kt]:!0,"is--border":qe,"is--striped":n,"is--fixed":De.length||ke.length,"is--sortable":Ue,"is--filterable":Ke,"is--head-group":je,"is--merge-cell":Je,"is--empty":tt,"show--head":y,"show--foot":Me,"ping--left":Re,"ping--right":xe,"scroll--x":_e,"scroll--y":ve};return React__default.createElement(TableContext.Provider,{value:Ut},React__default.createElement("div",{className:classNames(Bt)},f&&React__default.createElement("div",{ref:R,className:`${Kt}-top`},React__default.createElement("div",{className:`${Kt}-top__space`},"bottom"!==(null==u?void 0:u.position)&&React__default.createElement(Alert,{total:re.total}),React__default.createElement("div",{className:`${Kt}-top__space-slot`,style:{justifyContent:EAlign[p]}},e.children)),React__default.createElement("div",{className:`${Kt}-top__actions`},React__default.createElement(ToolBox,{ref:C,showFullScreen:m,showReload:h&&we,showPrint:fe.print&&!!c,showImport:fe.import&&We,showExport:fe.export&&!!d,showClipboard:Ge,showCollection:ze,showFastSearch:Ye,showSuperSearch:Qe,showGroupSummary:Xe,showToolBox:g,tableColumns:$e}),_&&React__default.createElement(ColumnFilter,{columns:r}))),React__default.createElement(QmSpin,{spinning:null!=l?l:he},React__default.createElement("div",{ref:E,className:classNames(zt),style:nt},React__default.createElement("div",{className:`${Kt}--main-wrapper`},y&&React__default.createElement(TableHeader,{tableColumns:$e,flattenColumns:Oe,sorter:J,filters:X}),React__default.createElement(TableBody,{ref:x,tableData:Q,flattenColumns:Oe}),Me&&React__default.createElement(TableFooter,{summationRows:at,flattenColumns:Oe})),qe&&React__default.createElement("div",{className:`${Kt}--border-line`}),tt&&React__default.createElement(TableEmpty,null),i&&React__default.createElement("div",{ref:T,className:`${Kt}--resizable-bar`}))),Ie&&React__default.createElement(TablePager,_extends$1({},re,{config:s,onChange:(e,t)=>Ot({current:e,pageSize:t})}))))}));Table.defaultProps=defaultProps,Table.displayName="Table";const SearchHelper=e=>{var a;const{uniqueKey:r,multiple:l,initialValue:n,selectionRows:i,defaultSelectedKeys:o=[],filters:s=[],table:c={},onClose:d}=e,{size:u}=React__default.useContext(ConfigContext),p=React__default.useMemo((()=>{var t,a;return null!==(a=null!==(t=e.size)&&void 0!==t?t:u)&&void 0!==a?a:""}),[e.size,u]),f=React__default.useRef(null),m=React__default.useRef(null),h=React__default.useRef(null),g=useResizeObserve(f),[_,y]=React__default.useState(c),[v,b]=React__default.useState(),[R,E]=React__default.useState(o),[x,C]=React__default.useState(!1),[T,S]=React__default.useState(300),[w,P]=React__default.useState(s),[N,I]=React__default.useState((e=>[{title:t("qm.searchHelper.orderIndex"),dataIndex:"pageIndex",width:80,render:e=>React__default.createElement("span",null,e+1)},...e||(c.columns||[])])()),[A,$]=React__default.useState(merge({},null===(a=c.fetch)||void 0===a?void 0:a.params,n)),[O,F]=React__default.useState([]),L=()=>{const e=f.current,t=e.querySelector(".form-wrap");S(e.offsetHeight-t.offsetHeight-2*SizeHeight[p]-30)},D=debounce(L,5);useUpdateEffect((()=>{D()}),[g.width]),useUpdateEffect((()=>{isEqual$1(s,w)||P(s)}),[s]),React__default.useEffect((()=>{k()}),[A]),React__default.useEffect((()=>{i&&h.current.SET_SELECTION_ROWS(i)}),[i]),React__default.useEffect((()=>{var e;n&&(null===(e=m.current)||void 0===e||e.SET_FIELDS_VALUE(n))}),[]);const k=()=>__awaiter(void 0,void 0,void 0,(function*(){var e;const{webPagination:t,fetch:a}=_;if(!t||!(null==a?void 0:a.api))return;const{api:r,dataKey:l,beforeFetch:n=trueNoop}=a;if(n(A)){C(!0);try{const t=yield r(A);if(200===t.code){const a=Array.isArray(t.data)?t.data:null!==(e=get(t.data,l))&&void 0!==e?e:[];E([]),yield sleep(0),F(a)}}catch(e){}C(!1)}})),H=e=>{l||(b(e),d(e))},V=e=>{$(Object.assign({},A,e))},M=getPrefixCls("search-helper"),j=_.webPagination?{dataSource:O,loading:x,webPagination:!0}:{fetch:Object.assign(Object.assign({},_.fetch),{params:A})};return React__default.createElement("div",{ref:f,className:`${M}--wrapper`},React__default.createElement("div",{className:"form-wrap"},w.length?React__default.createElement(QmForm,{ref:m,items:w,uniqueKey:r?`helper_${r}`:r,formType:"search",isAutoFocus:!1,fieldsChange:e=>P(e),onCollapse:()=>L(),onFinish:e=>V(e),onReset:()=>__awaiter(void 0,void 0,void 0,(function*(){const[e,t]=yield m.current.GET_FORM_DATA();e||V(t)}))}):null),React__default.createElement("div",null,React__default.createElement(Table,_extends$1({ref:h,height:T,columns:N,rowKey:_.rowKey||"pageIndex"},j,{rowSelection:{type:l?"checkbox":"radio",clearableAfterFetched:!l,selectFirstRowOnChange:!0,selectedRowKeys:R,onChange:(e,t)=>{E(e),b(l?t:t[0])}},columnsChange:e=>I(e),onRowDblclick:H,onRowEnter:H}))),React__default.createElement("div",{style:{position:"absolute",left:0,bottom:0,right:0,zIndex:9,height:`${SizeHeight[p]+20}px`,borderTop:"1px solid #d9d9d9",padding:"10px 15px",background:"#fff",textAlign:"right",boxSizing:"border-box"}},React__default.createElement(QmButton,{onClick:()=>d(null),style:{marginRight:8}},t("qm.dialog.cancel")),React__default.createElement(QmButton,{type:"primary",disabled:!v,onClick:()=>d(v,l?R:void 0)},t("qm.dialog.confirm"))))};SearchHelper.displayName="SearchHelper";const getAllParentKey=e=>{const t=[];return e.forEach((e=>{e.children&&t.push(...getAllParentKey(e.children)),e.children&&t.push(e.value)})),t},deepFind=(e,t)=>{let a=null;for(let r=0;r<e.length;r++){if(Array.isArray(e[r].children)&&(a=deepFind(e[r].children,t)),a)return a;if(t(e[r]))return e[r]}return a},treeFilter=(e,t)=>e.map((e=>Object.assign({},e))).filter((e=>(e.children=e.children&&treeFilter(e.children,t),t(e)||e.children&&e.children.length))),TreeTableHelper=e=>{var a;const{uniqueKey:r,multiple:l,initialValue:n,selectionRows:i,defaultSelectedKeys:o=[],filters:s=[],table:c={},tree:d={},onClose:u}=e,{size:p}=React__default.useContext(ConfigContext),f=React__default.useMemo((()=>{var t,a;return null!==(a=null!==(t=e.size)&&void 0!==t?t:p)&&void 0!==a?a:""}),[e.size,p]),m=React__default.useRef(null),h=React__default.useRef(null),g=React__default.useRef(null),_=useResizeObserve(m),[y,v]=React__default.useState(c),[b,R]=React__default.useState(),[E,x]=React__default.useState(o),[C,T]=React__default.useState(!1),[S,w]=React__default.useState(300),[P,N]=React__default.useState(300),[I,A]=React__default.useState(s),[$,O]=React__default.useState((e=>[{title:t("qm.searchHelper.orderIndex"),dataIndex:"pageIndex",width:80,render:e=>React__default.createElement("span",null,e+1)},...e||(c.columns||[])])()),[F,L]=React__default.useState(merge({},null===(a=c.fetch)||void 0===a?void 0:a.params,n)),[D,k]=React__default.useState([]),H=()=>{const e=m.current,t=e.querySelector(".form-wrap"),a=e.querySelector(".input-wrap");w(e.offsetHeight-a.offsetHeight-10),N(e.offsetHeight-t.offsetHeight-2*SizeHeight[f]-30)},V=debounce(H,5);useUpdateEffect((()=>{V()}),[_.width]),useUpdateEffect((()=>{isEqual$1(s,I)||A(s)}),[s]),React__default.useEffect((()=>{M()}),[F]),React__default.useEffect((()=>{i&&g.current.SET_SELECTION_ROWS(i)}),[i]),React__default.useEffect((()=>{var e;n&&(null===(e=h.current)||void 0===e||e.SET_FIELDS_VALUE(n)),X()}),[]);const M=()=>__awaiter(void 0,void 0,void 0,(function*(){var e;const{webPagination:t,fetch:a}=y;if(!t||!(null==a?void 0:a.api))return;const{api:r,dataKey:l,beforeFetch:n=trueNoop}=a;if(n(F)){T(!0);try{const t=yield r(F);if(200===t.code){const a=Array.isArray(t.data)?t.data:null!==(e=get(t.data,l))&&void 0!==e?e:[];x([]),yield sleep(0),k(a)}}catch(e){}T(!1)}})),j=e=>{l||(R(e),u(e))},q=e=>{L(Object.assign({},F,e))},[U,K]=React__default.useState([]),[B,z]=React__default.useState([]),[W,G]=React__default.useState(""),Q=React__default.useRef(U),Y=React__default.useRef([]);useUpdateEffect((()=>{z(getAllParentKey(U))}),[U]);const X=()=>__awaiter(void 0,void 0,void 0,(function*(){var e;if(!d.fetch)return;const{api:t,params:a,dataKey:r,valueKey:l="value",textKey:n="text"}=d.fetch;try{const i=yield t(a);if(200===i.code){const t=Array.isArray(i.data)?i.data:null!==(e=get(i.data,r))&&void 0!==e?e:[],a=deepMapList(t,l,n);K(a),Q.current=a,Y.current=t}}catch(e){}})),Z=e=>`${e}|${pinyin.parse(e).map((e=>2===e.type?e.target.toLowerCase().slice(0,1):e.target)).join("")}`,J=getPrefixCls("tree-table-helper"),ee=y.webPagination?{dataSource:D,loading:C,webPagination:!0}:{fetch:Object.assign(Object.assign({},y.fetch),{params:F})};return React__default.createElement("div",{ref:m,className:`${J}--wrapper`},React__default.createElement(QmSplit,{defaultValue:200,style:{height:"100%"}},React__default.createElement(QmSplit.Pane,{min:100,style:{overflowY:"auto"}},React__default.createElement(Input.Search,{className:"input-wrap",value:W,style:{marginBottom:8},placeholder:t("qm.form.inputPlaceholder"),allowClear:!0,onChange:e=>(e=>{const t=treeFilter(Q.current,(t=>{if(!e)return!0;const a=t.text||"";return-1!==Z(a).indexOf(e)}));G(e),K(t)})(e.target.value)}),React__default.createElement(Tree,{fieldNames:{title:"text",key:"value",children:"children"},height:S,defaultExpandAll:!0,expandedKeys:B,treeData:U,filterTreeNode:e=>{if(!W)return!1;const t=e.text||"";return-1!==Z(t).indexOf(W)},onExpand:e=>{z(e)},onSelect:e=>{const{valueKey:t="value"}=d.fetch;(e=>{if(!d.tableParamsMap)return warn("TreeTableHelper","需要配置 `tree.tableParamsMap` 选项");const t="function"==typeof d.tableParamsMap?d.tableParamsMap():d.tableParamsMap,a={};for(const r in t)a[r]=get(e,t[r]);q(a)})(deepFind(Y.current,(a=>get(a,t)===e[0]))||{})}})),React__default.createElement(QmSplit.Pane,{className:"split-pane"},React__default.createElement("div",{className:"form-wrap"},I.length?React__default.createElement(QmForm,{ref:h,items:I,uniqueKey:r?`helper_${r}`:r,formType:"search",isAutoFocus:!1,fieldsChange:e=>A(e),onCollapse:()=>H(),onFinish:e=>q(e),onReset:()=>__awaiter(void 0,void 0,void 0,(function*(){const[e,t]=yield h.current.GET_FORM_DATA();e||q(t)}))}):null),React__default.createElement("div",null,React__default.createElement(Table,_extends$1({ref:g,height:P,columns:$,rowKey:y.rowKey||"pageIndex"},ee,{rowSelection:{type:l?"checkbox":"radio",clearableAfterFetched:!l,selectFirstRowOnChange:!0,selectedRowKeys:E,onChange:(e,t)=>{x(e),R(l?t:t[0])}},columnsChange:e=>O(e),onRowDblclick:j,onRowEnter:j}))))),React__default.createElement("div",{style:{position:"absolute",left:0,bottom:0,right:0,zIndex:9,height:`${SizeHeight[f]+20}px`,borderTop:"1px solid #d9d9d9",padding:"10px 15px",background:"#fff",textAlign:"right",boxSizing:"border-box"}},React__default.createElement(QmButton,{onClick:()=>u(null),style:{marginRight:8}},t("qm.dialog.cancel")),React__default.createElement(QmButton,{type:"primary",disabled:!b,onClick:()=>u(b,l?E:void 0)},t("qm.dialog.confirm"))))};TreeTableHelper.displayName="TreeTableHelper";const TreeHelper=e=>{var a,r,l;const{multiple:n,tree:i={},defaultSelectedKeys:o,onClose:s}=e,{size:c}=React__default.useContext(ConfigContext),d=React__default.useMemo((()=>{var t,a;return null!==(a=null!==(t=e.size)&&void 0!==t?t:c)&&void 0!==a?a:""}),[e.size,c]),[u,p]=React__default.useState(),[f]=React__default.useState(null===(a=i.fetch)||void 0===a?void 0:a.params),m=getPrefixCls("tree-helper"),h=i.fetch?Object.assign(Object.assign({},omit(i.fetch,["params","valueKey","textKey"])),{params:f}):void 0;return React__default.createElement("div",{className:`${m}--wrapper`},React__default.createElement(SearchTree,{multiple:n,fetch:h,fieldsDefine:{valueKey:null===(r=i.fetch)||void 0===r?void 0:r.valueKey,textKey:null===(l=i.fetch)||void 0===l?void 0:l.textKey},asyncLoad:i.asyncLoad,checkStrictly:i.checkStrictly,checkStrategy:i.checkStrategy,defaultSelectedKeys:o,defaultExpandAll:i.defaultExpandAll,onSelectChange:e=>p(e),onCheckChange:e=>p(e)}),React__default.createElement("div",{style:{position:"absolute",left:0,bottom:0,right:0,zIndex:9,height:`${SizeHeight[d]+20}px`,borderTop:"1px solid #d9d9d9",padding:"10px 15px",background:"#fff",textAlign:"right",boxSizing:"border-box"}},React__default.createElement(QmButton,{onClick:()=>s(null),style:{marginRight:8}},t("qm.dialog.cancel")),React__default.createElement(QmButton,{type:"primary",disabled:!u,onClick:()=>s(u)},t("qm.dialog.confirm"))))};TreeHelper.displayName="TreeHelper";const START_SIGN="_startSign",END_SIGN="_endSign",RangeTableHelper=e=>{var a;const{uniqueKey:r,initialValue:l,filters:n=[],table:i={},onClose:o}=e,{size:s}=React__default.useContext(ConfigContext),c=React__default.useMemo((()=>{var t,a;return null!==(a=null!==(t=e.size)&&void 0!==t?t:s)&&void 0!==a?a:""}),[e.size,s]),d=React__default.useRef(null),u=React__default.useRef(null),p=React__default.useRef(null),f=useResizeObserve(d),[m,h]=React__default.useState(i),[g,_]=React__default.useState(!1),[y,v]=React__default.useState([]),[b,R]=React__default.useState(300),[E,x]=React__default.useState(n),[C,T]=React__default.useState((e=>[{title:t("qm.searchHelper.orderIndex"),dataIndex:"pageIndex",width:80,render:e=>React__default.createElement("span",null,e+1)},{title:t("qm.form.rangeSearchHelper")[0],dataIndex:START_SIGN,width:80,align:"right",render:(e,t)=>React__default.createElement("span",{className:"icon-sign"},e)},...e||(i.columns||[]),{title:t("qm.form.rangeSearchHelper")[1],dataIndex:END_SIGN,fixed:"right",width:80,render:(e,t)=>React__default.createElement("span",{className:"icon-sign"},e)}])()),[S,w]=React__default.useState(merge({},null===(a=i.fetch)||void 0===a?void 0:a.params,l)),[P,N]=React__default.useState([]),I=React__default.useMemo((()=>y.map((e=>null==e?void 0:e.pageIndex))),[y]),A=React__default.useMemo((()=>2===I.length&&I.every((e=>void 0!==e))),[I]),$=()=>{const e=d.current.parentNode.children[0],t=e.querySelector(".form-wrap");R(e.offsetHeight-t.offsetHeight-2*SizeHeight[c]-30)},O=debounce($,5);useUpdateEffect((()=>{O()}),[f.width]),useUpdateEffect((()=>{isEqual$1(n,E)||x(n)}),[n]),React__default.useEffect((()=>{F()}),[S]);const F=()=>__awaiter(void 0,void 0,void 0,(function*(){var e;const{webPagination:t,fetch:a}=m;if(!t||!(null==a?void 0:a.api))return;const{api:r,dataKey:l,beforeFetch:n=trueNoop}=a;if(n(S)){_(!0);try{const t=yield r(S);if(200===t.code){const a=Array.isArray(t.data)?t.data:null!==(e=get(t.data,l))&&void 0!==e?e:[];N(a)}}catch(e){}_(!1)}})),L=(e,t)=>{delete e[t]},D=()=>{y.forEach((e=>{e&&(L(e,START_SIGN),L(e,END_SIGN))})),v([])},k=e=>{D(),w(Object.assign({},S,e))},H=getPrefixCls("range-helper"),V=m.webPagination?{dataSource:P,loading:g,webPagination:!0}:{fetch:Object.assign(Object.assign({},m.fetch),{params:S})};return React__default.createElement("div",{ref:d,className:`${H}--wrapper`},React__default.createElement("div",{className:"form-wrap"},E.length?React__default.createElement(QmForm,{ref:u,items:E,initialValues:l,uniqueKey:r?`helper_${r}`:r,formType:"search",isAutoFocus:!1,fieldsChange:e=>x(e),onCollapse:()=>$(),onFinish:e=>k(e),onReset:()=>__awaiter(void 0,void 0,void 0,(function*(){const[e,t]=yield u.current.GET_FORM_DATA();e||k(t)}))}):null),React__default.createElement("div",null,React__default.createElement(Table,_extends$1({ref:p,height:b,columns:C,rowKey:m.rowKey||"pageIndex",rowStyle:e=>e.pageIndex>=I[0]&&e.pageIndex<=I[1]?{backgroundColor:"#f5f5f5"}:{}},V,{columnsChange:e=>T(e),onRowClick:(e,a)=>{const{dataIndex:r}=a;[START_SIGN,END_SIGN].includes(r)&&(r===START_SIGN&&(e[r]?(L(e,r),v([void 0,y[1]])):e.pageIndex>I[1]?message.warning(t("qm.searchHelper.rangeStartTip")):(y[0]&&L(y[0],r),e[r]="[",v([e,y[1]]))),r===END_SIGN&&(e[r]?(L(e,r),v([y[0],void 0])):e.pageIndex<I[0]?message.warning(t("qm.searchHelper.rangeEndTip")):(y[1]&&L(y[1],r),e[r]="]",v([y[0],e]))),p.current.FORCE_UPDATE())},onDataLoad:e=>{e.forEach((e=>{e.pageIndex===I[0]&&(e[START_SIGN]="["),e.pageIndex===I[1]&&(e[END_SIGN]="]")}))}}),React__default.createElement(QmButton,{type:"primary",icon:React__default.createElement(ClearOutlined,null),title:t("qm.table.alert.clear"),onClick:()=>D()}))),React__default.createElement("div",{style:{position:"absolute",left:0,bottom:0,right:0,zIndex:9,height:`${SizeHeight[c]+20}px`,borderTop:"1px solid #d9d9d9",padding:"10px 15px",background:"#fff",textAlign:"right",boxSizing:"border-box"}},React__default.createElement(QmButton,{onClick:()=>o(null),style:{marginRight:8}},t("qm.dialog.cancel")),React__default.createElement(QmButton,{type:"primary",disabled:!A,onClick:()=>o(y.map((e=>(e=>{const t={};for(const a in e)[START_SIGN,END_SIGN].includes(a)||(t[a]=e[a]);return t})(e))))},t("qm.dialog.confirm"))))};RangeTableHelper.displayName="RangeTableHelper";var config={previewWidth:1100,defaultDistance:.45,logoHeight:60};const PreviewContext=createContext(void 0);var CreatedOKLodop7766=null,CLodopIsLocal;function needCLodop(){try{var e=navigator.userAgent;if(e.match(/Windows\sPhone/i))return!0;if(e.match(/iPhone|iPod|iPad/i))return!0;if(e.match(/Android/i))return!0;if(e.match(/Edge\D?\d+/i))return!0;var t=e.match(/Trident\D?\d+/i),a=e.match(/MSIE\D?\d+/i),r=e.match(/OPR\D?\d+/i),l=e.match(/Firefox\D?\d+/i),n=e.match(/x64/i);if(!t&&!a&&n)return!0;if(l){if((l=l[0].match(/\d+/))[0]>=41||n)return!0}else if(r){if((r=r[0].match(/\d+/))[0]>=32)return!0}else if(!t&&!a){var i=e.match(/Chrome\D?\d+/i);if(i&&(i=i[0].match(/\d+/))[0]>=41)return!0}return!1}catch(e){return!0}}function getLodop(e,t){let a=arguments.length>2&&void 0!==arguments[2]?arguments[2]:[];var r,l="打印控件未安装!点击这里<a href='/static/cLodop/install_lodop32.exe' target='_self'>执行安装</a>,安装后请刷新页面或重新进入。",n="打印控件需要升级!点击这里<a href='/static/cLodop/install_lodop32.exe' target='_self'>执行升级</a>,升级后请重新进入。",i="打印控件未安装!点击这里<a href='/static/cLodop/install_lodop64.exe' target='_self'>执行安装</a>,安装后请刷新页面或重新进入。",o="打印控件需要升级!点击这里<a href='/static/cLodop/install_lodop64.exe' target='_self'>执行升级</a>,升级后请重新进入。",s="(注意:如曾安装过Lodop旧版附件npActiveXPLugin,请在【工具】->【附加组件】->【扩展】中先卸它)",c="(如果此前正常,仅因浏览器升级或重安装而出问题,需重新执行以上安装)",d="Web打印服务CLodop未安装启动,点击这里<a href='/static/cLodop/CLodop_Setup_for_Win32NT.exe' target='_self'>下载执行安装</a>,",u="(若此前已安装过,可<a href='CLodop.protocol:setup' target='_self'>点这里直接再次启动</a>),",p='成功后请 <a href="javascript:;" onclick="javascript:window.history.go(0)">刷新本页面</a> 。',f="Web打印服务CLodop需升级!点击这里<a href='/static/cLodop/CLodop_Setup_for_Win32NT.exe' target='_self'>执行升级</a>,升级后请刷新页面。";try{var m=navigator.userAgent,h=!!m.match(/MSIE/i)||!!m.match(/Trident/i);if(needCLodop()){try{r=getCLodop()}catch(e){}if(!r&&"complete"!==document.readyState)return void message.warning("打印组件还没有加载完毕,请稍等一下再操作");if(!r)return void notification.warning({message:"CLodop 信息",duration:null,description:d+(CLodopIsLocal?u:"")+p});CLODOP.CVERSION<"3.0.8.3"&&notification.warning({message:"CLodop 信息",description:f}),t&&t.parentNode&&t.parentNode.removeChild(t),e&&e.parentNode&&e.parentNode.removeChild(e)}else{var g=h&&!!m.match(/x64/i);if(e||t?r=h?e:t:CreatedOKLodop7766?r=CreatedOKLodop7766:((r=document.createElement("object")).setAttribute("width",0),r.setAttribute("height",0),r.setAttribute("style","position:absolute;left:0px;top:-100px;width:0px;height:0px;"),h?r.setAttribute("classid","clsid:2105C259-1E0C-4534-8141-A753534CB4CA"):r.setAttribute("type","application/x-print-lodop"),document.documentElement.appendChild(r),CreatedOKLodop7766=r),!r||!r.VERSION)return m.indexOf("Chrome")>=0&&notification.warning({message:"CLodop 信息",duration:null,description:c}),m.indexOf("Firefox")>=0&&notification.warning({message:"CLodop 信息",duration:null,description:s}),notification.warning({message:"CLodop 信息",duration:null,description:g?i:l}),r}return r.VERSION<"6.2.2.6"&&(needCLodop()||notification.warning({message:"CLodop 信息",description:g?o:n})),(null==a?void 0:a.length)>=2&&a.every((e=>Array.isArray(e)))&&(r.SET_LICENSES(...a[0]),r.SET_LICENSES(...a[1])),r}catch(e){message.error("getLodop 出错:"+e)}}needCLodop();const getDPI=()=>{var e;const t=[],{deviceXDPI:a,deviceYDPI:r}=window.screen;if(a&&r)t[0]=a,t[1]=r;else{let a=document.createElement("DIV");a.style.cssText="width: 1in; height: 1in; position: absolute; left: 0px; top: 0px; z-index: -1; visibility: hidden;",document.body.appendChild(a),t[0]=parseInt(a.offsetWidth.toString()),t[1]=parseInt(a.offsetHeight.toString()),null===(e=a.parentNode)||void 0===e||e.removeChild(a),a=null}return t},mmToPx=e=>{const t=e/25.4*getDPI()[0];return Math.ceil(t)},insertBefore=(e,t)=>{t.children[0]?t.insertBefore(e,t.children[0]):t.appendChild(e)},isPageBreak=e=>/^<tr[^>]+type="page-break"[^>]+><\/tr>$/.test(e),Container=React__default.forwardRef(((e,t)=>{const{templateRender:a,directPrint:r}=e,{global:l}=React__default.useContext(ConfigContext),{$$preview:n}=React__default.useContext(PreviewContext),{state:i,isWindowsPrinter:o,pageSize:s}=n,c=React__default.useRef(null),d=React__default.useRef({}),u=React__default.useRef([]),p=React__default.useRef([]),f=React__default.useRef([]),[m,h]=React__default.useState(!0);React__default.useImperativeHandle(t,(()=>({createPreviewDom:P,createExportHtml:I,createPrintHtml:N,SHOW_PREVIEW:A,DIRECT_PRINT:$}))),useUpdateEffect((()=>{w()}),[i.form.printerType,i.form.setting.direction,i.form.setting.distance,i.form.setting.fixedLogo]),React__default.useEffect((()=>{d.current.templateEl=c.current.querySelector(".origin-template").children[0],d.current.previewEl=c.current.querySelector(".workspace")}),[]);const g=React__default.useMemo((()=>{const{form:{setting:{direction:e}}}=i,t=o?10*config.defaultDistance+10*config.defaultDistance:0;return("vertical"===e?s[0]:s[1])-t}),[i,o,s]),_=React__default.useMemo((()=>{const{form:{setting:{direction:e}}}=i,t=o?10*config.defaultDistance+10*config.defaultDistance:0;return("vertical"===e?s[1]:s[0])-t}),[i,o,s]),y=React__default.useMemo((()=>{const{form:{setting:{distance:e}}}=i;return mmToPx(g-10*(e.left-config.defaultDistance)-10*(e.right-config.defaultDistance))}),[i,g]),v=React__default.useMemo((()=>{const{form:{setting:{distance:e}}}=i;return mmToPx(_-10*(e.top-config.defaultDistance)-10*(e.bottom-config.defaultDistance))}),[i,_]),b=i.form.scale,R=React__default.useMemo((()=>{const{form:{setting:{distance:e}}}=i;return{left:mmToPx(10*e.left),right:mmToPx(10*e.right),top:mmToPx(10*e.top),bottom:mmToPx(10*e.bottom)}}),[i]),E=React__default.useMemo((()=>{const{form:{printerType:e}}=i,{left:t,right:a,top:r,bottom:l}=R,n=y+t+a,o=config.previewWidth-n<=0?0:(config.previewWidth-n)/2,s=Math.abs((1-b)*n/2);let c=0;return b>1&&(c=s>o?-1*o:-1*s),b<1&&(c=n-2*s>config.previewWidth?0:o>0?s:(config.previewWidth-(n-2*s))/2),{width:`${y}px`,height:""+("stylus"===e?"auto":v+"px"),paddingLeft:`${t}px`,paddingRight:`${a}px`,paddingTop:`${r}px`,paddingBottom:`${l}px`,transform:`translateX(${c}px) scale(${b})`,opacity:m?0:1}}),[i,m,R,b,v,y]);u.current.some((e=>isPageBreak(e)));const x=()=>{var e,t,a,r;const n=null!==(t=null===(e=null==l?void 0:l.print)||void 0===e?void 0:e.leftLogo)&&void 0!==t?t:"",i=null!==(r=null===(a=null==l?void 0:l.print)||void 0===a?void 0:a.rightLogo)&&void 0!==r?r:"";return[`<tr style="height: ${config.logoHeight}px;">`,'<td colspan="8" align="left" style="vertical-align: top;">',n?`<img src="${n}" border="0" height="46" />`:"","</td>",'<td colspan="16" align="right" style="vertical-align: top;">',i?`<img src="${i}" border="0" height="46" />`:"","</td>","</tr>"].join("")},C=()=>{let e='<tr style="height: 0;">';for(let t=0;t<24;t++)e+=`<td width="${100/24}%" style="width: ${100/24}%; padding: 0;"></td>`;return e+="</tr>",e},T=()=>{let e=document.createElement("tr");e.setAttribute("type","template-cols"),e.style.height="0",e.innerHTML=C().replace(/<tr[^>]+>/,"").replace(/<\/tr>/,""),insertBefore(e,d.current.templateEl),e=null},S=()=>{const e=d.current.templateEl.children,t=[],a=[];for(let r=0;r<e.length;r++){if("template-cols"===e[r].getAttribute("type"))continue;const l=e[r].clientHeight;e[r].style.height=l+"px",a.push(l),t.push(e[r].outerHTML)}p.current=a,u.current=t},w=()=>{var e;if(!u.current.length)return;const{form:{setting:t,printerType:a}}=i;if(r)return f.current.push([C(),x(),...u.current]);const l=t.fixedLogo?v-config.logoHeight:v;let o=[];if(f.current=[],"stylus"===a)f.current.push([C(),...t.fixedLogo?[x()]:[],...u.current]);else{let e=0;for(let a=0,r=p.current.length;a<r;a++){const n=u.current[a],i=p.current[a];t.fixedLogo||0!==a||(e+=config.logoHeight),e+=i,e<=l?o.push(n):(f.current.push([C(),...t.fixedLogo?[x()]:[],...o]),o=[],e=0,a-=1),a===r-1&&o.length&&f.current.push([C(),...t.fixedLogo?[x()]:[],...o])}}t.fixedLogo||null===(e=f.current[0])||void 0===e||e.splice(1,0,x());for(let e=0,t=f.current.length;e<t&&e!==t-1;e++)f.current[e].push('<tr type="page-break" style="page-break-after: always;"></tr>');n.setState({currentPage:1,totalPage:f.current.length}),P()},P=()=>{var e,t;const{currentPage:a}=i;let r=`<table cellspacing="0" cellpadding="0" border="0" class="${d.current.templateEl.className}">`;r+=null!==(t=null===(e=f.current[a-1])||void 0===e?void 0:e.join(""))&&void 0!==t?t:"",r+="</table>",d.current.previewEl.innerHTML=r,d.current.previewEl.parentNode.scrollTop=0},N=e=>{let t=`<table cellspacing="0" cellpadding="0" border="0" class="${d.current.templateEl.className}">`;if(void 0!==e){t+=[...f.current[e-1]].join("")}else for(let e=0;e<f.current.length;e++)t+=f.current[e].join("");return t+="</table>",t},I=()=>{const e=[];for(let t=0;t<u.current.length;t++)e[t]=u.current[t].replace(/[\r\n]/g,"").replace(/\s+/g," ").replace(/(<td[^>]+>)\s+/,"$1").replace(/\s+(<\/td>)/,"$1");return"<table>"+x()+C()+e.join("")+"</table>"},A=()=>__awaiter(void 0,void 0,void 0,(function*(){var e;if("TABLE"!==(null===(e=d.current.templateEl)||void 0===e?void 0:e.tagName))return O();d.current.previewEl.innerHTML||(T(),yield sleep(0),S(),w(),h(!1))})),$=()=>__awaiter(void 0,void 0,void 0,(function*(){var e;if("TABLE"!==(null===(e=d.current.templateEl)||void 0===e?void 0:e.tagName))return O();T(),yield sleep(0),S(),w(),h(!1),n.doPrint(N()),yield sleep(0),n.doClose()})),O=()=>{warn("Print","[PrintTemplate] 打印模板组件的根元素必须是 `table` 节点")},F={[getPrefixCls("print-container")]:!0,"no-visible":r};return React__default.createElement("div",{ref:c,className:classNames(F)},React__default.createElement(QmSpin,{wrapperClassName:"spin",spinning:m,tip:"Loading..."},React__default.createElement("div",{className:"preview"},React__default.createElement("div",{className:"origin-template",style:{width:`${y}px`,marginLeft:`-${Math.floor(y/2)}px`}},null==a?void 0:a()),React__default.createElement("div",{className:"workspace",style:E}))))}));Container.displayName="Container";class Setting extends Component{constructor(){super(...arguments),this.formRef=React__default.createRef(),this.createFormList=()=>[{type:"DIVIDER",fieldName:"_1",label:t("qm.print.setPanel.printParameter")},{type:"SELECT",label:t("qm.print.setPanel.pagerType"),fieldName:"pageSize",options:{itemList:[{text:"A2",value:"420*594"},{text:"A3",value:"420*297"},{text:"A4",value:"210*297"},{text:"A5",value:"210*148"},{text:t("qm.print.setPanel.carbonPaper"),value:"241*280"}]}},{type:"RADIO",label:t("qm.print.setPanel.printDirection"),fieldName:"direction",options:{itemList:[{text:t("qm.print.setPanel.vertical"),value:"vertical"},{text:t("qm.print.setPanel.horizontal"),value:"horizontal"}]}},{type:"CHECKBOX",fieldName:"doubleSide",label:{type:"SELECT",fieldName:"doubleSideType",options:{itemList:[{text:t("qm.print.setPanel.autoDoublePrint"),value:"auto"},{text:t("qm.print.setPanel.manualDoublePrint"),value:"manual"}]},disabled:!this.props.setting.doubleSide},options:{trueValue:1,falseValue:0},onChange:e=>{const{formList:t}=this.state;t.find((e=>"doubleSide"===e.fieldName)).label.disabled=!e,this.setState({formList:t})}},{type:"CHECKBOX",label:t("qm.print.setPanel.fixedLogo"),fieldName:"fixedLogo",options:{trueValue:1,falseValue:0}},{type:"DIVIDER",fieldName:"_2",label:t("qm.print.setPanel.printMargin")},{type:"INPUT_NUMBER",label:t("qm.print.setPanel.leftMargin"),fieldName:"disleft",options:{min:config.defaultDistance,step:.05,precision:2},extra:{labelWidth:80},rules:[{required:!0,message:t("qm.print.setPanel.noEmpty")}]},{type:"INPUT_NUMBER",label:t("qm.print.setPanel.rightMargin"),fieldName:"disright",options:{min:config.defaultDistance,step:.05,precision:2},extra:{labelWidth:80},rules:[{required:!0,message:t("qm.print.setPanel.noEmpty")}]},{type:"INPUT_NUMBER",label:t("qm.print.setPanel.topMargin"),fieldName:"distop",options:{min:config.defaultDistance,step:.05,precision:2},extra:{labelWidth:80},rules:[{required:!0,message:t("qm.print.setPanel.noEmpty")}]},{type:"INPUT_NUMBER",label:t("qm.print.setPanel.bottomMargin"),fieldName:"disbottom",options:{min:config.defaultDistance,step:.05,precision:2},extra:{labelWidth:80},rules:[{required:!0,message:t("qm.print.setPanel.noEmpty")}]}],this.getInitialvalue=()=>{const{setting:e}=this.props,{distance:t}=e;return Object.assign({},{disleft:t.left,disright:t.right,distop:t.top,disbottom:t.bottom,pageSize:e.pageSize,direction:e.direction,doubleSide:e.doubleSide,doubleSideType:e.doubleSideType,fixedLogo:e.fixedLogo})},this.getInitialExtra=()=>({disleft:t("qm.print.setPanel.sizeUnit"),disright:t("qm.print.setPanel.sizeUnit"),distop:t("qm.print.setPanel.sizeUnit"),disbottom:t("qm.print.setPanel.sizeUnit")}),this.state={formList:this.createFormList()},this.confirmHandle=()=>__awaiter(this,void 0,void 0,(function*(){const[e,t]=yield this.formRef.current.GET_FORM_DATA();e||(this.props.onChange({distance:{left:t.disleft,right:t.disright,top:t.distop,bottom:t.disbottom},pageSize:t.pageSize,direction:t.direction,doubleSide:t.doubleSide,doubleSideType:t.doubleSideType,fixedLogo:t.fixedLogo}),this.cancelHandle())})),this.cancelHandle=()=>{this.props.onClose()}}render(){const{formList:e}=this.state;return React__default.createElement(React__default.Fragment,null,React__default.createElement(QmForm,{ref:this.formRef,items:e,initialValues:this.getInitialvalue(),initialExtras:this.getInitialExtra(),labelWidth:120,cols:2}),React__default.createElement("div",{style:{position:"absolute",left:0,bottom:0,right:0,zIndex:9,borderTop:"1px solid #d9d9d9",padding:"10px 15px",background:"#fff",textAlign:"right"}},React__default.createElement(QmButton,{onClick:()=>this.cancelHandle(),style:{marginRight:8}},t("qm.dialog.close")),React__default.createElement(QmButton,{type:"primary",onClick:()=>this.confirmHandle()},t("qm.dialog.confirm"))))}}Setting.contextType=ConfigContext;class Preview extends Component{constructor(){var e,a,r;super(...arguments),this.provide={$$preview:this},this.containRef=React__default.createRef(),this.state={visible:!1,form:{printerName:-1,printerType:(null===(e=this.props.defaultConfig)||void 0===e?void 0:e.printerType)||"laser",copies:(null===(a=this.props.defaultConfig)||void 0===a?void 0:a.copies)||1,scale:1,setting:{distance:{left:config.defaultDistance,right:config.defaultDistance,top:config.defaultDistance,bottom:config.defaultDistance},pageSize:"210*297",direction:(null===(r=this.props.defaultConfig)||void 0===r?void 0:r.direction)||"vertical",doubleSide:0,doubleSideType:"auto",fixedLogo:0}},printPage:void 0,currentPage:1,totalPage:0},this.pageChangeHandle=e=>{this.setState({currentPage:e},(()=>{this.containRef.current.createPreviewDom()}))},this.exportClickHandle=()=>{this.doExport(this.containRef.current.createExportHtml())},this.printClickHandle=()=>__awaiter(this,void 0,void 0,(function*(){if(this.doPrint(this.containRef.current.createPrintHtml(this.state.printPage)),this.props.uniqueKey)try{const e=Object.assign(Object.assign({},this.state.form),{printerName:this.printerItems.find((e=>e.value===this.state.form.printerName)).text});yield localforage.setItem(this.printerKey,e),yield this.savePrintConfig(this.printerKey,e)}catch(e){}})),this.doClose=()=>{var e,t;null===(t=(e=this.props).onClose)||void 0===t||t.call(e)},this.getPrintConfig=e=>__awaiter(this,void 0,void 0,(function*(){const t=this.context.global,a=null==t?void 0:t.getComponentConfigApi;if(a)try{const t=yield a({key:e});if(200===t.code)return t.data}catch(e){}})),this.savePrintConfig=(e,t)=>__awaiter(this,void 0,void 0,(function*(){const a=this.context.global,r=null==a?void 0:a.saveComponentConfigApi;if(r)try{yield r({[e]:t})}catch(e){}})),this.createStyle=()=>'\n <style type="text/css">\n table {\n width: 100%;\n border-spacing: 0;\n border-collapse: collapse;\n table-layout: fixed;\n }\n table tr td {\n padding: 2px;\n line-height: 1.2;\n word-wrap: break-word;\n }\n .fs12 {\n font-size: 12px;\n }\n .fs13 {\n font-size: 13px;\n }\n .fs14 {\n font-size: 14px;\n }\n .fw500 {\n font-weight: 500;\n }\n .fw700 {\n font-weight: 700;\n }\n .fl {\n float: left;\n }\n .fr {\n float: right;\n }\n .tc {\n text-align: center;\n }\n .tr {\n text-align: right;\n }\n .bor {\n border: 1px solid #000;\n }\n .bor-t {\n border-top: 1px solid #000;\n }\n .bor-b {\n border-bottom: 1px solid #000;\n }\n .bor-l {\n border-left: 1px solid #000;\n }\n .bor-r {\n border-right: 1px solid #000;\n }\n .no-bor {\n border: none !important;\n }\n </style>\n ',this.doPrint=e=>{const a=getLodop();if(!a)return;const{uniqueKey:r,closeAfterPrint:l}=this.props,{form:{setting:n,printerName:i,printerType:o,copies:s}}=this.state,{pageSize:c}=this,{defaultDistance:d}=config,{left:u,right:p,top:f,bottom:m}=n.distance;a.PRINT_INIT(null!=r?r:Math.random().toString().slice(2)),a.SET_PRINTER_INDEX(i),a.SET_PRINT_COPIES(s),n.doubleSide&&("auto"===n.doubleSideType?(a.SET_PRINT_MODE("PRINT_DUPLEX",2),a.SET_PRINT_MODE("PRINT_DEFAULTSOURCE",1)):a.SET_PRINT_MODE("DOUBLE_SIDED_PRINT",1)),a.SET_PRINT_MODE("AUTO_CLOSE_PREWINDOW",1),"laser"===o&&("vertical"===n.direction&&a.SET_PRINT_PAGESIZE(1),"horizontal"===n.direction&&(a.SET_PRINT_PAGESIZE(2),a.SET_SHOW_MODE("LANDSCAPE_DEFROTATED",1))),"stylus"===o&&a.SET_PRINT_PAGESIZE(3,10*c[0],100*m*2,""),a.ADD_PRINT_TABLE(10*(f-d)+"mm",10*(u-d)+"mm",`RightMargin: ${10*(p-d)}mm`,`BottomMargin: ${"stylus"!==o?10*(m-d):0}mm`,this.createStyle()+e),a.On_Return=(e,a)=>{a?l&&this.doClose():message.error(t("qm.print.printError"))},a.PRINT()},this.doExport=e=>{const a=getLodop();if(!a)return;const{uniqueKey:r,closeAfterPrint:l}=this.props,{form:{setting:n}}=this.state;a.PRINT_INIT(null!=r?r:Math.random().toString().slice(2)),a.On_Return=(e,a)=>{a?l&&this.doClose():message.error(t("qm.print.exportError"))},a.ADD_PRINT_TABLE(0,0,"RightMargin: 0","BottomMargin: 0",this.createStyle()+e),a.SET_SAVE_MODE("Orientation","vertical"===n.direction?1:2),a.SAVE_TO_FILE(`${dayjs().format("YYYYMMDDHHmmss")}.xlsx`)}}get printerTypeItems(){return[{text:t("qm.print.laserPrinter"),value:"laser"},{text:t("qm.print.stylusPrinter"),value:"stylus"}]}get printerItems(){const e=getLodop(),a=[{text:t("qm.print.defaultPrinter"),value:-1}];try{const t=e.GET_PRINTER_COUNT();for(let r=0;r<t;r++)a.push({text:e.GET_PRINTER_NAME(r),value:r})}catch(e){warn("Print","[ClientPrint]: 请安装 LODOP 打印插件")}return a}get isWindowsPrinter(){const{form:{printerName:e}}=this.state;return!/OneNote|Microsoft|Fax/.test(this.printerItems.find((t=>t.value===e)).text)}get pageSize(){return this.state.form.setting.pageSize.split("*").map((e=>Number(e)))}get printerKey(){return this.props.uniqueKey?`print_${this.props.uniqueKey}`:""}componentDidMount(){var e,t;return __awaiter(this,void 0,void 0,(function*(){if(this.props.uniqueKey)try{let a=yield localforage.getItem(this.printerKey);a||(a=yield this.getPrintConfig(this.printerKey),isPlainObject(a)&&(yield localforage.setItem(this.printerKey,a))),isPlainObject(a)&&Object.keys(a).length&&merge(this.state.form,Object.assign(Object.assign({},a),{printerName:null!==(t=null===(e=this.printerItems.find((e=>e.text===a.printerName)))||void 0===e?void 0:e.value)&&void 0!==t?t:-1}))}catch(e){}}))}render(){const{preview:e,templateRender:a}=this.props,{visible:r,form:l,currentPage:n,totalPage:i,printPage:o}=this.state,s=getPrefixCls("print-preview"),c={visible:r,title:t("qm.print.pageSetting"),width:"50%",loading:!1,containerStyle:{paddingBottom:"52px"},onClose:()=>{this.setState({visible:!1})}},d={[s]:!0};return e?React__default.createElement(React__default.Fragment,null,React__default.createElement("div",{className:classNames(d)},React__default.createElement("div",{className:"outer"},React__default.createElement("div",{className:"header"},React__default.createElement("span",null,t("qm.print.printer"),":",React__default.createElement(Select,{value:l.printerName,onChange:e=>{this.setState((t=>merge({},t,{form:{printerName:e}})))},style:{width:"120px"}},this.printerItems.map((e=>React__default.createElement(Select.Option,{key:e.value,value:e.value},e.text))))),React__default.createElement("span",null,t("qm.print.type"),":",React__default.createElement(Select,{value:l.printerType,onChange:e=>{this.setState((t=>merge({},t,{form:{printerType:e,setting:{pageSize:"stylus"===e?"241*280":"210*297"}}})))},style:{width:"120px"}},this.printerTypeItems.map((e=>React__default.createElement(Select.Option,{key:e.value,value:e.value},e.text))))),React__default.createElement("span",null,t("qm.print.copies"),":",React__default.createElement(InputNumber$1,{value:l.copies,min:1,precision:0,onChange:e=>{this.setState((t=>merge({},t,{form:{copies:null!=e?e:1}})))},style:{width:"50px"}})),React__default.createElement("span",null,t("qm.print.printPage.0"),React__default.createElement(InputNumber$1,{value:o,min:1,max:i,precision:0,onChange:e=>{this.setState({printPage:null!=e?e:void 0})},style:{width:"50px",marginLeft:"4px",marginRight:"4px"}}),t("qm.print.printPage.1")),React__default.createElement("span",null,React__default.createElement(Pagination,{size:"small",current:n,pageSize:1,total:i,onChange:this.pageChangeHandle})),React__default.createElement("span",null,React__default.createElement(QmButton,{type:"text",icon:React__default.createElement(SettingOutlined,null),className:"text-btn",onClick:()=>this.setState({visible:!0})},t("qm.print.setting"))),React__default.createElement("span",null,React__default.createElement(QmButton,{type:"text",icon:React__default.createElement(DownloadOutlined,null),className:"text-btn",onClick:()=>this.exportClickHandle()},t("qm.print.export"))),React__default.createElement("span",null,React__default.createElement(QmButton,{icon:React__default.createElement(PrinterOutlined,null),type:"primary",onClick:this.printClickHandle},t("qm.print.print")))),React__default.createElement("div",{className:"main"},React__default.createElement(PreviewContext.Provider,{value:this.provide},React__default.createElement(Container,{ref:this.containRef,templateRender:a,directPrint:!1}))),React__default.createElement("div",{className:"footer"},React__default.createElement("span",null,t("qm.print.scale"),":",React__default.createElement(Slider,{value:l.scale,step:.1,min:.5,max:1.5,onChange:e=>{this.setState((t=>merge({},t,{form:{scale:e}})))}}),React__default.createElement("em",{className:"scale-text"},`${Math.floor(100*l.scale)}%`)),React__default.createElement("span",null,t("qm.print.paper"),":",this.pageSize[0],"mm * ",this.pageSize[1],"mm"),React__default.createElement("span",null,t("qm.print.pageNumber"),":",t("qm.print.pagination",{currentPage:n,totalPage:i}))))),React__default.createElement(QmModal,c,React__default.createElement(Setting,{setting:l.setting,onChange:e=>{this.setState((t=>merge({},t,{form:{setting:e}})))},onClose:()=>{this.setState({visible:!1})}}))):React__default.createElement(PreviewContext.Provider,{value:this.provide},React__default.createElement(Container,{ref:this.containRef,templateRender:a,directPrint:!0}))}}Preview.contextType=ConfigContext;class QmPrint extends Component{constructor(){super(...arguments),this.previewRef=React__default.createRef(),this.state={visible:!1,loading:!1},this.clickHandle=()=>__awaiter(this,void 0,void 0,(function*(){var e,t;this.setState({loading:!0});try{const a=yield null===(t=(e=this.props).click)||void 0===t?void 0:t.call(e);if(this.setState({loading:!1}),"boolean"==typeof a&&!a)return;yield this.DO_PRINT()}catch(e){}this.setState({loading:!1})})),this.createRender=()=>{const{visible:e}=this.state,{templateRender:a,uniqueKey:r,defaultConfig:l,preview:n,closeAfterPrint:i}=this.props,o={visible:e,title:t("qm.print.preview"),width:`${config.previewWidth}px`,loading:!1,onClose:()=>{this.setState({visible:!1})}},s={ref:this.previewRef,templateRender:a,uniqueKey:r,defaultConfig:l,preview:n,closeAfterPrint:i,onClose:()=>{this.setState({visible:!1})}};return n?React__default.createElement(QmModal,o,React__default.createElement(Preview,s)):e?React__default.createElement(Preview,s):null},this.DO_PRINT=()=>__awaiter(this,void 0,void 0,(function*(){const{preview:e}=this.props;yield sleep(0),this.setState({visible:!0}),yield sleep(e?500:0);const t=this.previewRef.current.containRef.current;e?t.SHOW_PREVIEW():t.DIRECT_PRINT()}))}render(){const{loading:e}=this.state,{size:t,icon:a,type:r,disabled:l,shape:n}=this.props,i={size:t||this.context.size||"",type:r,shape:n,icon:a,loading:e,disabled:l,click:this.clickHandle};return React__default.createElement(React__default.Fragment,null,this.props.children&&React__default.createElement(QmButton,i,this.props.children),this.createRender())}}QmPrint.propTypes={size:(e,t,a)=>{if(!isValidComponentSize(e[t]||""))return throwError("Anchor","Invalid prop `"+t+"` supplied to `"+a+"`. Validation failed.")},templateRender:PropTypes__default.elementType},QmPrint.defaultProps={preview:!0,type:"primary",icon:React__default.createElement(PrinterOutlined,null)},QmPrint.contextType=ConfigContext;var name="@jiaozhiye/qm-design-react",version="1.5.6",description="A Component Library for React",keywords=["React","components","typescript"],author="jiaozhiye",license="MIT",scripts={dev:"cross-env NODE_ENV=development BABEL_ENV=web webpack serve --progress --config build/webpack.src.conf.js","build:lib":"yarn clean:lib && yarn build:umd && yarn build:esm && yarn build:type && yarn build:locale && yarn build:theme","build:umd":"cross-env NODE_ENV=production BABEL_ENV=lib webpack --config ./build/webpack.build.conf.js","build:esm":"cross-env BABEL_ENV=lib rollup --config ./build/build-esm.rollup.js","build:type":"gulp build --gulpfile ./build/build-type.gulp.js && cp-cli lib/packages lib && rimraf lib/packages","build:locale":"cross-env BABEL_ENV=lib babel packages/locale --extensions .ts --out-dir lib/locale","build:theme":"gulp build --gulpfile ./build/build-style.gulp.js","clean:lib":"rimraf lib",lint:"eslint ./packages --ext .js,.ts,.jsx,.tsx","lint-fix":"eslint --fix ./packages --ext .js,.ts,.jsx,.tsx",format:'prettier --write "./packages/**/*.{js,ts,jsx,tsx}"',"website-dev":"cross-env NODE_ENV=development BABEL_ENV=web webpack serve --progress --config ./website/webpack.config.js","website-build":"rimraf website-dist && cross-env NODE_ENV=production BABEL_ENV=web webpack --config ./website/webpack.config.js"},husky={hooks:{"pre-commit":"lint-staged"}},publishConfig={registry:"https://registry.npmjs.org/"},files=["lib"],main="lib/index.js",module="lib/index.esm.js",unpkg="lib/index.full.js",typings="lib/index.d.ts",style="lib/style/index.css",peerDependencies={react:">=16.14.0"},dependencies={"add-dom-event-listener":"^1.1.0",antd:"4.22.8",axios:"^0.27.2","big.js":"^6.2.1","china-area-data":"^5.0.1",classnames:"^2.3.2","copy-to-clipboard":"^3.3.2",cropperjs:"^1.5.12",dayjs:"1.x",exceljs:"^4.3.0",localforage:"^1.10.0","lodash-es":"^4.17.21","memoize-one":"^6.0.0","omit.js":"^2.0.2","prop-types":"^15.8.0","react-countup":"^6.4.0","react-draggable":"^4.4.5","react-sortablejs":"^6.1.4","resize-observer-polyfill":"^1.5.1","scroll-into-view-if-needed":"^2.2.28",sortablejs:"^1.15.0"},devDependencies={"@babel/cli":"^7.18.6","@babel/core":"^7.18.6","@babel/plugin-proposal-class-properties":"^7.18.6","@babel/plugin-proposal-decorators":"^7.18.6","@babel/plugin-syntax-dynamic-import":"^7.8.3","@babel/plugin-transform-runtime":"^7.18.6","@babel/preset-env":"^7.18.6","@babel/preset-react":"^7.18.6","@babel/preset-typescript":"^7.18.6","@rollup/plugin-babel":"^5.3.0","@rollup/plugin-commonjs":"^22.0.2","@rollup/plugin-json":"^4.1.0","@rollup/plugin-node-resolve":"^14.1.0","@rollup/plugin-replace":"^4.0.0","@rollup/plugin-typescript":"^8.5.0","@types/lodash-es":"^4.17.6","@types/react":"^17.0.46","@types/react-dom":"^17.0.16","@typescript-eslint/eslint-plugin":"^5.30.0","@typescript-eslint/parser":"^5.30.0",autoprefixer:"^10.4.10","babel-loader":"^9.1.0","core-js":"^3.26.0","cp-cli":"^2.0.0","cross-env":"^7.0.3","css-loader":"^5.2.7",eslint:"^8.24.0","eslint-plugin-prettier":"^4.2.0","eslint-plugin-react":"^7.30.0","eslint-plugin-react-hooks":"^4.6.0","eslint-webpack-plugin":"^3.2.0",gulp:"^4.0.2","gulp-autoprefixer":"^8.0.0","gulp-clean-css":"^4.3.0","gulp-ignore":"^3.0.0","gulp-less":"^5.0.0","gulp-rename":"^2.0.0","gulp-typescript":"^6.0.0-alpha.1","html-webpack-plugin":"^5.5.0",husky:"^4.3.8",less:"^4.1.2","less-loader":"^11.0.0","lint-staged":"^10.5.4",mockjs:"^1.1.0",prettier:"^2.7.0",react:"17.0.2","react-dom":"17.0.2",rimraf:"^3.0.2",rollup:"^2.79.0","rollup-plugin-terser":"^7.0.2","style-loader":"^3.3.0","ts-loader":"^9.3.0",typescript:"^4.7.4",webpack:"^5.75.0","webpack-cli":"^5.0.0","webpack-dev-server":"^4.11.0","webpack-node-externals":"^3.0.0"},engines={node:">= 14"},packageInfo={name:name,version:version,description:description,keywords:keywords,author:author,license:license,scripts:scripts,husky:husky,"lint-staged":{"packages/**/*.{js,ts,jsx,tsx,vue}":["npm run lint-fix","git add"],"packages/**/*.{less}":"prettier --write"},publishConfig:publishConfig,files:files,main:main,module:module,unpkg:unpkg,typings:typings,style:style,peerDependencies:peerDependencies,dependencies:dependencies,devDependencies:devDependencies,engines:engines},index=packageInfo.version;export{Calendar,DatePicker,QmAnchor,QmButton,Collapse as QmCollapse,QmConfigProvider,CopyToClipboard as QmCopyToClipboard,QmCountup,QmCropper,QmDivider,QmDownload,QmDrawer,QmEmpty,QmForm,QmModal,QmPrint,RangeTableHelper as QmRangeTableHelper,SearchHelper as QmSearchHelper,SearchTree as QmSearchTree,QmSpace,QmSpin,QmSplit,Table as QmTable,QmTabs,QmTinymce,TreeHelper as QmTreeHelper,TreeTableHelper as QmTreeTableHelper,QmUploadFile,QmUploadImg,TimePicker,pinyin,index as version};
3
+ _regeneratorRuntime=function(){return e};var e={},t=Object.prototype,a=t.hasOwnProperty,r="function"==typeof Symbol?Symbol:{},l=r.iterator||"@@iterator",n=r.asyncIterator||"@@asyncIterator",i=r.toStringTag||"@@toStringTag";function o(e,t,a){return Object.defineProperty(e,t,{value:a,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{o({},"")}catch(e){o=function(e,t,a){return e[t]=a}}function s(e,t,a,r){var l=t&&t.prototype instanceof u?t:u,n=Object.create(l.prototype),i=new x(r||[]);return n._invoke=function(e,t,a){var r="suspendedStart";return function(l,n){if("executing"===r)throw new Error("Generator is already running");if("completed"===r){if("throw"===l)throw n;return T()}for(a.method=l,a.arg=n;;){var i=a.delegate;if(i){var o=b(i,a);if(o){if(o===d)continue;return o}}if("next"===a.method)a.sent=a._sent=a.arg;else if("throw"===a.method){if("suspendedStart"===r)throw r="completed",a.arg;a.dispatchException(a.arg)}else"return"===a.method&&a.abrupt("return",a.arg);r="executing";var s=c(e,t,a);if("normal"===s.type){if(r=a.done?"completed":"suspendedYield",s.arg===d)continue;return{value:s.arg,done:a.done}}"throw"===s.type&&(r="completed",a.method="throw",a.arg=s.arg)}}}(e,a,i),n}function c(e,t,a){try{return{type:"normal",arg:e.call(t,a)}}catch(e){return{type:"throw",arg:e}}}e.wrap=s;var d={};function u(){}function p(){}function f(){}var m={};o(m,l,(function(){return this}));var h=Object.getPrototypeOf,g=h&&h(h(C([])));g&&g!==t&&a.call(g,l)&&(m=g);var _=f.prototype=u.prototype=Object.create(m);function y(e){["next","throw","return"].forEach((function(t){o(e,t,(function(e){return this._invoke(t,e)}))}))}function v(e,t){function r(l,n,i,o){var s=c(e[l],e,n);if("throw"!==s.type){var d=s.arg,u=d.value;return u&&"object"==_typeof$1(u)&&a.call(u,"__await")?t.resolve(u.__await).then((function(e){r("next",e,i,o)}),(function(e){r("throw",e,i,o)})):t.resolve(u).then((function(e){d.value=e,i(d)}),(function(e){return r("throw",e,i,o)}))}o(s.arg)}var l;this._invoke=function(e,a){function n(){return new t((function(t,l){r(e,a,t,l)}))}return l=l?l.then(n,n):n()}}function b(e,t){var a=e.iterator[t.method];if(void 0===a){if(t.delegate=null,"throw"===t.method){if(e.iterator.return&&(t.method="return",t.arg=void 0,b(e,t),"throw"===t.method))return d;t.method="throw",t.arg=new TypeError("The iterator does not provide a 'throw' method")}return d}var r=c(a,e.iterator,t.arg);if("throw"===r.type)return t.method="throw",t.arg=r.arg,t.delegate=null,d;var l=r.arg;return l?l.done?(t[e.resultName]=l.value,t.next=e.nextLoc,"return"!==t.method&&(t.method="next",t.arg=void 0),t.delegate=null,d):l:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,d)}function R(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function E(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function x(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(R,this),this.reset(!0)}function C(e){if(e){var t=e[l];if(t)return t.call(e);if("function"==typeof e.next)return e;if(!isNaN(e.length)){var r=-1,n=function t(){for(;++r<e.length;)if(a.call(e,r))return t.value=e[r],t.done=!1,t;return t.value=void 0,t.done=!0,t};return n.next=n}}return{next:T}}function T(){return{value:void 0,done:!0}}return p.prototype=f,o(_,"constructor",f),o(f,"constructor",p),p.displayName=o(f,i,"GeneratorFunction"),e.isGeneratorFunction=function(e){var t="function"==typeof e&&e.constructor;return!!t&&(t===p||"GeneratorFunction"===(t.displayName||t.name))},e.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,f):(e.__proto__=f,o(e,i,"GeneratorFunction")),e.prototype=Object.create(_),e},e.awrap=function(e){return{__await:e}},y(v.prototype),o(v.prototype,n,(function(){return this})),e.AsyncIterator=v,e.async=function(t,a,r,l,n){void 0===n&&(n=Promise);var i=new v(s(t,a,r,l),n);return e.isGeneratorFunction(a)?i:i.next().then((function(e){return e.done?e.value:i.next()}))},y(_),o(_,i,"Generator"),o(_,l,(function(){return this})),o(_,"toString",(function(){return"[object Generator]"})),e.keys=function(e){var t=[];for(var a in e)t.push(a);return t.reverse(),function a(){for(;t.length;){var r=t.pop();if(r in e)return a.value=r,a.done=!1,a}return a.done=!0,a}},e.values=C,x.prototype={constructor:x,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(E),!e)for(var t in this)"t"===t.charAt(0)&&a.call(this,t)&&!isNaN(+t.slice(1))&&(this[t]=void 0)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(e){if(this.done)throw e;var t=this;function r(a,r){return i.type="throw",i.arg=e,t.next=a,r&&(t.method="next",t.arg=void 0),!!r}for(var l=this.tryEntries.length-1;l>=0;--l){var n=this.tryEntries[l],i=n.completion;if("root"===n.tryLoc)return r("end");if(n.tryLoc<=this.prev){var o=a.call(n,"catchLoc"),s=a.call(n,"finallyLoc");if(o&&s){if(this.prev<n.catchLoc)return r(n.catchLoc,!0);if(this.prev<n.finallyLoc)return r(n.finallyLoc)}else if(o){if(this.prev<n.catchLoc)return r(n.catchLoc,!0)}else{if(!s)throw new Error("try statement without catch or finally");if(this.prev<n.finallyLoc)return r(n.finallyLoc)}}}},abrupt:function(e,t){for(var r=this.tryEntries.length-1;r>=0;--r){var l=this.tryEntries[r];if(l.tryLoc<=this.prev&&a.call(l,"finallyLoc")&&this.prev<l.finallyLoc){var n=l;break}}n&&("break"===e||"continue"===e)&&n.tryLoc<=t&&t<=n.finallyLoc&&(n=null);var i=n?n.completion:{};return i.type=e,i.arg=t,n?(this.method="next",this.next=n.finallyLoc,d):this.complete(i)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&&t&&(this.next=t),d},finish:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var a=this.tryEntries[t];if(a.finallyLoc===e)return this.complete(a.completion,a.afterLoc),E(a),d}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var a=this.tryEntries[t];if(a.tryLoc===e){var r=a.completion;if("throw"===r.type){var l=r.arg;E(a)}return l}}throw new Error("illegal catch attempt")},delegateYield:function(e,t,a){return this.delegate={iterator:C(e),resultName:t,nextLoc:a},"next"===this.method&&(this.arg=void 0),d}},e}function asyncGeneratorStep(e,t,a,r,l,n,i){try{var o=e[n](i),s=o.value}catch(e){return void a(e)}o.done?t(s):Promise.resolve(s).then(r,l)}function _asyncToGenerator(e){return function(){var t=this,a=arguments;return new Promise((function(r,l){var n=e.apply(t,a);function i(e){asyncGeneratorStep(n,r,l,i,o,"next",e)}function o(e){asyncGeneratorStep(n,r,l,i,o,"throw",e)}i(void 0)}))}}var StatusQueue=["measure","alignPre","align",null,"motion"],useVisibleStatus=function(e,t){var a=_slicedToArray(useSafeState(null),2),r=a[0],l=a[1],n=useRef();function i(e){l(e,!0)}function o(){wrapperRaf.cancel(n.current)}return useEffect((function(){i("measure")}),[e]),useEffect((function(){if("measure"===r)t();r&&(n.current=wrapperRaf(_asyncToGenerator(_regeneratorRuntime().mark((function e(){var t,a;return _regeneratorRuntime().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:t=StatusQueue.indexOf(r),(a=StatusQueue[t+1])&&-1!==t&&i(a);case 3:case"end":return e.stop()}}),e)})))))}),[r]),useEffect((function(){return function(){o()}}),[]),[r,function(e){o(),n.current=wrapperRaf((function(){i((function(e){switch(r){case"align":return"motion";case"motion":return"stable"}return e})),null==e||e()}))}]},useStretchStyle=function(e){var t=_slicedToArray(React.useState({width:0,height:0}),2),a=t[0],r=t[1];return[React.useMemo((function(){var t={};if(e){var r=a.width,l=a.height;-1!==e.indexOf("height")&&l?t.height=l:-1!==e.indexOf("minHeight")&&l&&(t.minHeight=l),-1!==e.indexOf("width")&&r?t.width=r:-1!==e.indexOf("minWidth")&&r&&(t.minWidth=r)}return t}),[e,a]),function(e){r({width:e.offsetWidth,height:e.offsetHeight})}]},PopupInner=React.forwardRef((function(e,t){var a=e.visible,r=e.prefixCls,l=e.className,n=e.style,i=e.children,o=e.zIndex,s=e.stretch,c=e.destroyPopupOnHide,d=e.forceRender,u=e.align,p=e.point,f=e.getRootDomNode,m=e.getClassNameFromAlign,h=e.onAlign,g=e.onMouseEnter,_=e.onMouseLeave,y=e.onMouseDown,v=e.onTouchStart,b=e.onClick,R=useRef(),E=useRef(),x=_slicedToArray(useState(),2),C=x[0],T=x[1],S=_slicedToArray(useStretchStyle(s),2),w=S[0],P=S[1];var N=_slicedToArray(useVisibleStatus(a,(function(){s&&P(f())})),2),I=N[0],A=N[1],$=_slicedToArray(useState(0),2),O=$[0],F=$[1],L=useRef();function D(){var e;null===(e=R.current)||void 0===e||e.forceAlign()}function k(e,t){var a=m(t);C!==a&&T(a),F((function(e){return e+1})),"align"===I&&(null==h||h(e,t))}useLayoutEffect((function(){"alignPre"===I&&F(0)}),[I]),useLayoutEffect((function(){"align"===I&&(O<2?D():A((function(){var e;null===(e=L.current)||void 0===e||e.call(L)})))}),[O]);var H=_objectSpread2$1({},getMotion(e));function V(){return new Promise((function(e){L.current=e}))}["onAppearEnd","onEnterEnd","onLeaveEnd"].forEach((function(e){var t=H[e];H[e]=function(e,a){return A(),null==t?void 0:t(e,a)}})),React.useEffect((function(){H.motionName||"motion"!==I||A()}),[H.motionName,I]),React.useImperativeHandle(t,(function(){return{forceAlign:D,getElement:function(){return E.current}}}));var M=_objectSpread2$1(_objectSpread2$1({},w),{},{zIndex:o,opacity:"motion"!==I&&"stable"!==I&&a?0:void 0,pointerEvents:a||"stable"===I?void 0:"none"},n),j=!0;!(null==u?void 0:u.points)||"align"!==I&&"stable"!==I||(j=!1);var q=i;return React.Children.count(i)>1&&(q=React.createElement("div",{className:"".concat(r,"-content")},i)),React.createElement(CSSMotion,_extends({visible:a,ref:E,leavedClassName:"".concat(r,"-hidden")},H,{onAppearPrepare:V,onEnterPrepare:V,removeOnLeave:c,forceRender:d}),(function(e,t){var a=e.className,n=e.style,i=classNames(r,l,C,a);return React.createElement(RcAlign,{target:p||f,key:"popup",ref:R,monitorWindowResize:!0,disabled:j,align:u,onAlign:k},React.createElement("div",{ref:t,className:i,onMouseEnter:g,onMouseLeave:_,onMouseDownCapture:y,onTouchStartCapture:v,onClick:b,style:_objectSpread2$1(_objectSpread2$1({},n),M)},q))}))}));PopupInner.displayName="PopupInner";var MobilePopupInner=React.forwardRef((function(e,t){var a=e.prefixCls,r=e.visible,l=e.zIndex,n=e.children,i=e.mobile,o=(i=void 0===i?{}:i).popupClassName,s=i.popupStyle,c=i.popupMotion,d=void 0===c?{}:c,u=i.popupRender,p=e.onClick,f=React.useRef();React.useImperativeHandle(t,(function(){return{forceAlign:function(){},getElement:function(){return f.current}}}));var m=_objectSpread2$1({zIndex:l},s),h=n;return React.Children.count(n)>1&&(h=React.createElement("div",{className:"".concat(a,"-content")},n)),u&&(h=u(h)),React.createElement(CSSMotion,_extends({visible:r,ref:f,removeOnLeave:!0},d),(function(e,t){var r=e.className,l=e.style,n=classNames(a,o,r);return React.createElement("div",{ref:t,className:n,onClick:p,style:_objectSpread2$1(_objectSpread2$1({},l),m)},h)}))}));MobilePopupInner.displayName="MobilePopupInner";var _excluded=["visible","mobile"],Popup=React.forwardRef((function(e,t){var a=e.visible,r=e.mobile,l=_objectWithoutProperties(e,_excluded),n=_slicedToArray(useState(a),2),i=n[0],o=n[1],s=_slicedToArray(useState(!1),2),c=s[0],d=s[1],u=_objectSpread2$1(_objectSpread2$1({},l),{},{visible:i});useEffect((function(){o(a),a&&r&&d(isMobile())}),[a,r]);var p=c?React.createElement(MobilePopupInner,_extends({},u,{mobile:r,ref:t})):React.createElement(PopupInner,_extends({},u,{ref:t}));return React.createElement("div",null,React.createElement(Mask,u),p)}));Popup.displayName="Popup";var TriggerContext=React.createContext(null);function noop(){}function returnEmptyString(){return""}function returnDocument(e){return e?e.ownerDocument:window.document}var ALL_HANDLERS=["onClick","onMouseDown","onTouchStart","onMouseEnter","onMouseLeave","onFocus","onBlur","onContextMenu"];function generateTrigger(e){var t=function(t){_inherits(r,React.Component);var a=_createSuper(r);function r(e){var t,l;return _classCallCheck(this,r),(t=a.call(this,e)).popupRef=React.createRef(),t.triggerRef=React.createRef(),t.portalContainer=void 0,t.attachId=void 0,t.clickOutsideHandler=void 0,t.touchOutsideHandler=void 0,t.contextMenuOutsideHandler1=void 0,t.contextMenuOutsideHandler2=void 0,t.mouseDownTimeout=void 0,t.focusTime=void 0,t.preClickTime=void 0,t.preTouchTime=void 0,t.delayTimer=void 0,t.hasPopupMouseDown=void 0,t.onMouseEnter=function(e){var a=t.props.mouseEnterDelay;t.fireEvents("onMouseEnter",e),t.delaySetPopupVisible(!0,a,a?null:e)},t.onMouseMove=function(e){t.fireEvents("onMouseMove",e),t.setPoint(e)},t.onMouseLeave=function(e){t.fireEvents("onMouseLeave",e),t.delaySetPopupVisible(!1,t.props.mouseLeaveDelay)},t.onPopupMouseEnter=function(){t.clearDelayTimer()},t.onPopupMouseLeave=function(e){var a;e.relatedTarget&&!e.relatedTarget.setTimeout&&contains(null===(a=t.popupRef.current)||void 0===a?void 0:a.getElement(),e.relatedTarget)||t.delaySetPopupVisible(!1,t.props.mouseLeaveDelay)},t.onFocus=function(e){t.fireEvents("onFocus",e),t.clearDelayTimer(),t.isFocusToShow()&&(t.focusTime=Date.now(),t.delaySetPopupVisible(!0,t.props.focusDelay))},t.onMouseDown=function(e){t.fireEvents("onMouseDown",e),t.preClickTime=Date.now()},t.onTouchStart=function(e){t.fireEvents("onTouchStart",e),t.preTouchTime=Date.now()},t.onBlur=function(e){t.fireEvents("onBlur",e),t.clearDelayTimer(),t.isBlurToHide()&&t.delaySetPopupVisible(!1,t.props.blurDelay)},t.onContextMenu=function(e){e.preventDefault(),t.fireEvents("onContextMenu",e),t.setPopupVisible(!0,e)},t.onContextMenuClose=function(){t.isContextMenuToShow()&&t.close()},t.onClick=function(e){if(t.fireEvents("onClick",e),t.focusTime){var a;if(t.preClickTime&&t.preTouchTime?a=Math.min(t.preClickTime,t.preTouchTime):t.preClickTime?a=t.preClickTime:t.preTouchTime&&(a=t.preTouchTime),Math.abs(a-t.focusTime)<20)return;t.focusTime=0}t.preClickTime=0,t.preTouchTime=0,t.isClickToShow()&&(t.isClickToHide()||t.isBlurToHide())&&e&&e.preventDefault&&e.preventDefault();var r=!t.state.popupVisible;(t.isClickToHide()&&!r||r&&t.isClickToShow())&&t.setPopupVisible(!t.state.popupVisible,e)},t.onPopupMouseDown=function(){var e;(t.hasPopupMouseDown=!0,clearTimeout(t.mouseDownTimeout),t.mouseDownTimeout=window.setTimeout((function(){t.hasPopupMouseDown=!1}),0),t.context)&&(e=t.context).onPopupMouseDown.apply(e,arguments)},t.onDocumentClick=function(e){if(!t.props.mask||t.props.maskClosable){var a=e.target,r=t.getRootDomNode(),l=t.getPopupDomNode();contains(r,a)&&!t.isContextMenuOnly()||contains(l,a)||t.hasPopupMouseDown||t.close()}},t.getRootDomNode=function(){var e=t.props.getTriggerDOMNode;if(e)return e(t.triggerRef.current);try{var a=findDOMNode(t.triggerRef.current);if(a)return a}catch(e){}return ReactDOM.findDOMNode(_assertThisInitialized(t))},t.getPopupClassNameFromAlign=function(e){var a=[],r=t.props,l=r.popupPlacement,n=r.builtinPlacements,i=r.prefixCls,o=r.alignPoint,s=r.getPopupClassNameFromAlign;return l&&n&&a.push(getAlignPopupClassName(n,i,e,o)),s&&a.push(s(e)),a.join(" ")},t.getComponent=function(){var e=t.props,a=e.prefixCls,r=e.destroyPopupOnHide,l=e.popupClassName,n=e.onPopupAlign,i=e.popupMotion,o=e.popupAnimation,s=e.popupTransitionName,c=e.popupStyle,d=e.mask,u=e.maskAnimation,p=e.maskTransitionName,f=e.maskMotion,m=e.zIndex,h=e.popup,g=e.stretch,_=e.alignPoint,y=e.mobile,v=e.forceRender,b=e.onPopupClick,R=t.state,E=R.popupVisible,x=R.point,C=t.getPopupAlign(),T={};return t.isMouseEnterToShow()&&(T.onMouseEnter=t.onPopupMouseEnter),t.isMouseLeaveToHide()&&(T.onMouseLeave=t.onPopupMouseLeave),T.onMouseDown=t.onPopupMouseDown,T.onTouchStart=t.onPopupMouseDown,React.createElement(Popup,_extends({prefixCls:a,destroyPopupOnHide:r,visible:E,point:_&&x,className:l,align:C,onAlign:n,animation:o,getClassNameFromAlign:t.getPopupClassNameFromAlign},T,{stretch:g,getRootDomNode:t.getRootDomNode,style:c,mask:d,zIndex:m,transitionName:s,maskAnimation:u,maskTransitionName:p,maskMotion:f,ref:t.popupRef,motion:i,mobile:y,forceRender:v,onClick:b}),"function"==typeof h?h():h)},t.attachParent=function(e){wrapperRaf.cancel(t.attachId);var a,r=t.props,l=r.getPopupContainer,n=r.getDocument,i=t.getRootDomNode();l?(i||0===l.length)&&(a=l(i)):a=n(t.getRootDomNode()).body,a?a.appendChild(e):t.attachId=wrapperRaf((function(){t.attachParent(e)}))},t.getContainer=function(){if(!t.portalContainer){var e=(0,t.props.getDocument)(t.getRootDomNode()).createElement("div");e.style.position="absolute",e.style.top="0",e.style.left="0",e.style.width="100%",t.portalContainer=e}return t.attachParent(t.portalContainer),t.portalContainer},t.setPoint=function(e){t.props.alignPoint&&e&&t.setState({point:{pageX:e.pageX,pageY:e.pageY}})},t.handlePortalUpdate=function(){t.state.prevPopupVisible!==t.state.popupVisible&&t.props.afterPopupVisibleChange(t.state.popupVisible)},t.triggerContextValue={onPopupMouseDown:t.onPopupMouseDown},l="popupVisible"in e?!!e.popupVisible:!!e.defaultPopupVisible,t.state={prevPopupVisible:l,popupVisible:l},ALL_HANDLERS.forEach((function(e){t["fire".concat(e)]=function(a){t.fireEvents(e,a)}})),t}return _createClass(r,[{key:"componentDidMount",value:function(){this.componentDidUpdate()}},{key:"componentDidUpdate",value:function(){var e,t=this.props;if(this.state.popupVisible)return this.clickOutsideHandler||!this.isClickToHide()&&!this.isContextMenuToShow()||(e=t.getDocument(this.getRootDomNode()),this.clickOutsideHandler=addEventListenerWrap(e,"mousedown",this.onDocumentClick)),this.touchOutsideHandler||(e=e||t.getDocument(this.getRootDomNode()),this.touchOutsideHandler=addEventListenerWrap(e,"touchstart",this.onDocumentClick)),!this.contextMenuOutsideHandler1&&this.isContextMenuToShow()&&(e=e||t.getDocument(this.getRootDomNode()),this.contextMenuOutsideHandler1=addEventListenerWrap(e,"scroll",this.onContextMenuClose)),void(!this.contextMenuOutsideHandler2&&this.isContextMenuToShow()&&(this.contextMenuOutsideHandler2=addEventListenerWrap(window,"blur",this.onContextMenuClose)));this.clearOutsideHandler()}},{key:"componentWillUnmount",value:function(){this.clearDelayTimer(),this.clearOutsideHandler(),clearTimeout(this.mouseDownTimeout),wrapperRaf.cancel(this.attachId)}},{key:"getPopupDomNode",value:function(){var e;return(null===(e=this.popupRef.current)||void 0===e?void 0:e.getElement())||null}},{key:"getPopupAlign",value:function(){var e=this.props,t=e.popupPlacement,a=e.popupAlign,r=e.builtinPlacements;return t&&r?getAlignFromPlacement(r,t,a):a}},{key:"setPopupVisible",value:function(e,t){var a=this.props.alignPoint,r=this.state.popupVisible;this.clearDelayTimer(),r!==e&&("popupVisible"in this.props||this.setState({popupVisible:e,prevPopupVisible:r}),this.props.onPopupVisibleChange(e)),a&&t&&e&&this.setPoint(t)}},{key:"delaySetPopupVisible",value:function(e,t,a){var r=this,l=1e3*t;if(this.clearDelayTimer(),l){var n=a?{pageX:a.pageX,pageY:a.pageY}:null;this.delayTimer=window.setTimeout((function(){r.setPopupVisible(e,n),r.clearDelayTimer()}),l)}else this.setPopupVisible(e,a)}},{key:"clearDelayTimer",value:function(){this.delayTimer&&(clearTimeout(this.delayTimer),this.delayTimer=null)}},{key:"clearOutsideHandler",value:function(){this.clickOutsideHandler&&(this.clickOutsideHandler.remove(),this.clickOutsideHandler=null),this.contextMenuOutsideHandler1&&(this.contextMenuOutsideHandler1.remove(),this.contextMenuOutsideHandler1=null),this.contextMenuOutsideHandler2&&(this.contextMenuOutsideHandler2.remove(),this.contextMenuOutsideHandler2=null),this.touchOutsideHandler&&(this.touchOutsideHandler.remove(),this.touchOutsideHandler=null)}},{key:"createTwoChains",value:function(e){var t=this.props.children.props,a=this.props;return t[e]&&a[e]?this["fire".concat(e)]:t[e]||a[e]}},{key:"isClickToShow",value:function(){var e=this.props,t=e.action,a=e.showAction;return-1!==t.indexOf("click")||-1!==a.indexOf("click")}},{key:"isContextMenuOnly",value:function(){var e=this.props.action;return"contextMenu"===e||1===e.length&&"contextMenu"===e[0]}},{key:"isContextMenuToShow",value:function(){var e=this.props,t=e.action,a=e.showAction;return-1!==t.indexOf("contextMenu")||-1!==a.indexOf("contextMenu")}},{key:"isClickToHide",value:function(){var e=this.props,t=e.action,a=e.hideAction;return-1!==t.indexOf("click")||-1!==a.indexOf("click")}},{key:"isMouseEnterToShow",value:function(){var e=this.props,t=e.action,a=e.showAction;return-1!==t.indexOf("hover")||-1!==a.indexOf("mouseEnter")}},{key:"isMouseLeaveToHide",value:function(){var e=this.props,t=e.action,a=e.hideAction;return-1!==t.indexOf("hover")||-1!==a.indexOf("mouseLeave")}},{key:"isFocusToShow",value:function(){var e=this.props,t=e.action,a=e.showAction;return-1!==t.indexOf("focus")||-1!==a.indexOf("focus")}},{key:"isBlurToHide",value:function(){var e=this.props,t=e.action,a=e.hideAction;return-1!==t.indexOf("focus")||-1!==a.indexOf("blur")}},{key:"forcePopupAlign",value:function(){var e;this.state.popupVisible&&(null===(e=this.popupRef.current)||void 0===e||e.forceAlign())}},{key:"fireEvents",value:function(e,t){var a=this.props.children.props[e];a&&a(t);var r=this.props[e];r&&r(t)}},{key:"close",value:function(){this.setPopupVisible(!1)}},{key:"render",value:function(){var t=this.state.popupVisible,a=this.props,r=a.children,l=a.forceRender,n=a.alignPoint,i=a.className,o=a.autoDestroy,s=React.Children.only(r),c={key:"trigger"};this.isContextMenuToShow()?c.onContextMenu=this.onContextMenu:c.onContextMenu=this.createTwoChains("onContextMenu"),this.isClickToHide()||this.isClickToShow()?(c.onClick=this.onClick,c.onMouseDown=this.onMouseDown,c.onTouchStart=this.onTouchStart):(c.onClick=this.createTwoChains("onClick"),c.onMouseDown=this.createTwoChains("onMouseDown"),c.onTouchStart=this.createTwoChains("onTouchStart")),this.isMouseEnterToShow()?(c.onMouseEnter=this.onMouseEnter,n&&(c.onMouseMove=this.onMouseMove)):c.onMouseEnter=this.createTwoChains("onMouseEnter"),this.isMouseLeaveToHide()?c.onMouseLeave=this.onMouseLeave:c.onMouseLeave=this.createTwoChains("onMouseLeave"),this.isFocusToShow()||this.isBlurToHide()?(c.onFocus=this.onFocus,c.onBlur=this.onBlur):(c.onFocus=this.createTwoChains("onFocus"),c.onBlur=this.createTwoChains("onBlur"));var d=classNames(s&&s.props&&s.props.className,i);d&&(c.className=d);var u=_objectSpread2$1({},c);supportRef(s)&&(u.ref=composeRef(this.triggerRef,s.ref));var p,f=React.cloneElement(s,u);return(t||this.popupRef.current||l)&&(p=React.createElement(e,{key:"portal",getContainer:this.getContainer,didUpdate:this.handlePortalUpdate},this.getComponent())),!t&&o&&(p=null),React.createElement(TriggerContext.Provider,{value:this.triggerContextValue},f,p)}}],[{key:"getDerivedStateFromProps",value:function(e,t){var a=e.popupVisible,r={};return void 0!==a&&t.popupVisible!==a&&(r.popupVisible=a,r.prevPopupVisible=t.popupVisible),r}}]),r}();return t.contextType=TriggerContext,t.defaultProps={prefixCls:"rc-trigger-popup",getPopupClassNameFromAlign:returnEmptyString,getDocument:returnDocument,onPopupVisibleChange:noop,afterPopupVisibleChange:noop,onPopupAlign:noop,popupClassName:"",mouseEnterDelay:0,mouseLeaveDelay:.1,focusDelay:0,blurDelay:.15,popupStyle:{},destroyPopupOnHide:!1,popupAlign:{},defaultPopupVisible:!1,mask:!1,maskClosable:!0,action:[],showAction:[],hideAction:[],autoDestroy:!1},t}var Trigger=generateTrigger(Portal);let VMultipleSearch=class extends Component{constructor(e){var t;super(e),t=this,this._records=[],this.searchRef=React__default.createRef(),this.state={visible:!1,visible2:!1,loading:!1,itemList:[]},this.initialHandle=()=>__awaiter(this,void 0,void 0,(function*(){yield this.props.waiting();const{helperConfig:e}=this.props;this.searchHelper=Object.assign({},e,this.props.option.searchHelper);const t=this.searchHelper.fieldAliasMap;t||warn("Form","MULTIPLE_SEARCH_HELPER 需要配置 `fieldAliasMap` 选项"),this.alias="function"==typeof t?t():t||{},Object.keys(this.alias).includes("valueKey")&&Object.keys(this.alias).includes("textKey")||warn("Form","MULTIPLE_SEARCH_HELPER 的 fieldAliasMap 选项必须包含自身 `valueKey` 和 `textKey`")})),this.getLastedSearchHelper=()=>{var e;const t=Object.assign({},this.searchHelper,this.props.option.searchHelper);return t.table&&!t.table.rowKey&&(t.table.rowKey=null===(e=this.alias)||void 0===e?void 0:e.valueKey),t},this.setVisible=(e,t)=>{this.setState({visible:e},t)},this.setItemList=e=>{this.setState({itemList:e})},this.setRecords=e=>{this._records=e},this.recordsToDict=()=>this._records.map((e=>({text:e[this.alias.textKey],value:e[this.alias.valueKey]}))),this.setViewValue=e=>{const{$$form:t}=this.context,{fieldName:a}=this.props.option;t.setViewValue(a,this.createViewText(e))},this.openSearchHelper=e=>__awaiter(this,void 0,void 0,(function*(){yield this.props.waiting();const{$$form:t}=this.context,{beforeOpen:a}=this.searchHelper,r=(null!=a?a:trueNoop)(t.state.formData);(null==r?void 0:r.then)?r.then((()=>{this.setVisible(!0),null==e||e()})).catch((()=>{})):!1!==r&&(this.setVisible(!0),null==e||e())})),this.closeSearchHelper=function(e){let a=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[];const{valueKey:r}=t.alias;t.setRecords(uniqBy([...t._records.filter((e=>a.includes(e[r]))),...e],r));const l=t.recordsToDict();t.setItemList(l),t.triggerChange(l.map((e=>e.value)));const{closed:n}=t.searchHelper;t.setVisible(!1,(()=>{setTimeout((()=>null==n?void 0:n(t._records)),200)}))},this.triggerChange=e=>{const{onChange:t,onValuesChange:a}=this.props,{valueKey:r}=this.alias||{};this.setRecords(this._records.filter((t=>e.includes(t[r])))),null==t||t(e),a(e,this.createViewText(e),this._records)},this.initialHandle()}componentDidMount(){this.getItemList()}componentDidUpdate(e,t){const{value:a=[]}=e,{value:r=[],clickOutside:l}=this.props;isEqual$1(intersection(a,r),r)||isEqual$1(r,this._records.map((e=>e[this.alias.valueKey])))||this.getItemList(),l&&t.visible2&&this.setState({visible2:!1})}getItemList(){var e,t;return __awaiter(this,void 0,void 0,(function*(){if(yield this.props.waiting(),!this.searchHelper)return;const{textKey:a,valueKey:r}=this.alias,{fetchApi:l,params:n={},formatter:i=(e=>e),dataKey:o,callback:s,fieldAliasMap:c}=this.searchHelper.echoRequest||(null===(e=this.props.option.searchHelper)||void 0===e?void 0:e.request)||{},d="function"==typeof c?c():c||{},{value:u}=this.props;if(l&&!isEmpty(u)){this.setState({loading:!0});try{const e=yield l(i(Object.assign(Object.assign({},n),{keys:u})));if(200===e.code){let l=Array.isArray(e.data)?e.data:null!==(t=get(e.data,o))&&void 0!==t?t:[];l.forEach((e=>{(null==d?void 0:d.valueKey)&&d.valueKey!==r&&(e[r]=e[d.valueKey]),(null==d?void 0:d.textKey)&&d.textKey!==a&&(e[a]=e[d.textKey])})),l=l.filter((e=>u.includes(e[r])));const n=l.map((e=>({value:e[r],text:e[a]})));this.setRecords(l),this.setItemList(n),this.setViewValue(u),null==s||s(l)}}catch(e){}this.setState({loading:!1})}}))}createViewText(e){return this.recordsToDict().filter((t=>e.includes(t.value))).map((e=>e.text)).join(",")}render(){var e,a,r;const{$$form:l}=this.context,{visible:n,visible2:i,loading:o,itemList:s}=this.state,{value:c}=this.props,{fieldName:d,options:u={},searchHelper:p={},style:f={},placeholder:m=t("qm.form.selectPlaceholder"),bordered:h=!0,allowClear:g=!0,readOnly:_,disabled:y}=this.props.option,{collapseTags:v,maxTagTextLength:b}=u,R={visible:n,title:t("qm.searchHelper.text"),width:null!==(e=p.width)&&void 0!==e?e:"60%",loading:!1,bodyStyle:{paddingBottom:`${SizeHeight[l.$size]+20}px`},onClose:()=>{this.setVisible(!1)}},E=Object.assign(Object.assign({},this.getLastedSearchHelper()),{size:l.$size,multiple:!0,initialValue:merge({},p.initialValue),defaultSelectedKeys:c,selectionRows:this._records,onClose:(e,t)=>{e?this.closeSearchHelper(e,t):this.setVisible(!1)}}),x=s.filter((e=>null==c?void 0:c.includes(e.value))),C=React__default.createElement("ul",{className:"ant-dropdown-menu"},x.length?x.map((e=>React__default.createElement("li",{key:e.value,className:"ant-dropdown-menu-item"},e.text))):React__default.createElement("li",{className:"ant-dropdown-menu-item"},t("qm.table.config.emptyText"))),T=this.searchRef.current?this.searchRef.current.offsetWidth:300,S=getPrefixCls("form-multiple-search-helper"),{size:w}=l.context,P={[S]:!0,[`${S}--lg`]:"large"===w,[`${S}--sm`]:"small"===w};null===(r=(a=this.props).setOmitClassNames)||void 0===r||r.call(a,[`.${S}`]);const N=s.filter((e=>null==c?void 0:c.includes(e.value))).map((e=>e.text)).join(",");return l.isOnlyShow?React__default.createElement(FormItemView,{value:N,bordered:h}):React__default.createElement(React__default.Fragment,null,React__default.createElement("span",{className:"ant-input-group-wrapper ant-input-search search-helper-multiple"},React__default.createElement("span",{ref:this.searchRef,className:"ant-input-wrapper ant-input-group"},React__default.createElement(Trigger,{popupVisible:!y&&i,popup:C,popupClassName:classNames(P),popupStyle:{minWidth:T},onPopupVisibleChange:e=>this.setState({visible2:e}),builtinPlacements:BUILT_IN_PLACEMENTS$1,prefixCls:"ant-dropdown",popupPlacement:"bottomLeft",popupTransitionName:"ant-slide-up"},React__default.createElement(Select,{mode:"multiple",maxTagCount:v?"responsive":void 0,maxTagTextLength:b,open:!1,value:c,placeholder:m,loading:o,bordered:h,allowClear:g,disabled:y,style:Object.assign({width:"100%"},f),title:N,onKeyUp:e=>{13===e.keyCode&&(e.preventDefault(),this.openSearchHelper())},onClick:e=>{var t,a;const r=e.target;r.classList.contains("ant-select-selection-overflow-item-rest")&&(null===(a=(t=this.props).setCurrentElement)||void 0===a||a.call(t,r),this.setState({visible2:!0}))},onDoubleClick:()=>{this.openSearchHelper()},onChange:e=>{this.triggerChange(e)}},s.map((e=>React__default.createElement(Select.Option,{key:e.value,value:e.value},e.text))))),React__default.createElement("span",{className:"ant-input-group-addon"},React__default.createElement(Button,{className:"ant-input-search-button",disabled:y,icon:React__default.createElement(SearchOutlined,null),onClick:()=>{this.openSearchHelper()}})))),React__default.createElement(QmModal,R,React__default.createElement(SearchHelper,E)))}};VMultipleSearch.contextType=FormContext,VMultipleSearch=__decorate([OutsideClick],VMultipleSearch);class FormMultipleSearchHelper extends Component{constructor(e,t){let{$$form:a}=t;super(e),this.state={searchHelper:{}},this.waiting=()=>__awaiter(this,void 0,void 0,(function*(){try{yield this.promiseRef}catch(e){throwError("Form","搜索帮助获取定义信息的接口出错")}})),this.getHelperConfig=e=>{var t,a;const{global:r}=e,{name:l,fieldsDefine:n}=this.props.option.searchHelper||{};if(!l)return;if(!(null===(t=null==r?void 0:r.searchHelper)||void 0===t?void 0:t.getServerConfig)||!(null===(a=null==r?void 0:r.searchHelper)||void 0===a?void 0:a.createFetchApi))return warn("searchHelper","从服务端获取定义信息的时候,ConfigProvider 组件 `getServerConfig` 和 `createFetchApi` 为必选参数");const{fieldName:i}=this.props.option;this.promiseRef=new Promise(((e,t)=>__awaiter(this,void 0,void 0,(function*(){try{const a=yield r.searchHelper.getServerConfig({searchHelperId:l});if(200===a.code){const t=createShConfig(Object.assign({},a.data,n),i,r.searchHelper.createFetchApi,!0);this.setState({searchHelper:t},(()=>e()))}else t()}catch(e){t()}}))))},this.getHelperConfig(a.context)}render(){const{$$form:e}=this.context,{searchHelper:t}=this.state,{type:a,label:r,tooltip:l,fieldName:n,invisible:i,options:o={},labelWidth:s=e.props.labelWidth,className:c,extra:d,buttonAfter:u,validateTrigger:p,rules:f=[],onChange:m=noop$1}=this.props.option;return React__default.createElement(Form.Item,{label:e.renderFormLabel(r),className:classNames(n,c),tooltip:l,hidden:i,labelCol:{flex:e.verticalLayout?"initial":getParserWidth(s)},required:e.getFormItemRequired(f)},React__default.createElement(Row,{wrap:!1,gutter:4},React__default.createElement(Col,{flex:"auto"},React__default.createElement(Form.Item,{name:n,noStyle:!0,rules:f,validateTrigger:p,messageVariables:{label:e.getFormItemLabel(r)}},React__default.createElement(VMultipleSearch,{option:this.props.option,helperConfig:t,waiting:this.waiting,onValuesChange:(t,a,r)=>{m(t,r),e.setViewValue(n,a)}}))),u&&React__default.createElement(Col,null,e.renderFormItemButton(n,u)),d&&React__default.createElement(Col,{flex:getParserWidth(d.labelWidth||DEFAULT_LABEL_WIDTH)},e.renderFormItemExtra(Object.assign({fieldName:n},d)))))}}FormMultipleSearchHelper.contextType=FormContext;const{Search:Search$1}=Input;class VTreeTableHelper extends Component{constructor(e){super(e),this.state={visible:!1,loading:!1},this.setVisible=(e,t)=>{this.setState({visible:e},t)},this.initialHandle=()=>__awaiter(this,void 0,void 0,(function*(){yield this.props.waiting();const{helperConfig:e}=this.props,{fieldName:t}=this.props.option;this.searchHelper=Object.assign({},e,this.props.option.searchHelper);const{fieldAliasMap:a,extraAliasMap:r,fieldsDefine:l}=this.searchHelper;if(a||warn("Form","TREE_TABLE_HELPER 需要配置 `fieldAliasMap` 选项"),this.alias="function"==typeof a?a():a||{},this.extras="function"==typeof r?r():r||{},l){const e=["valueKey","displayKey","extraKey"];for(const t in l)e.includes(t)&&(this[t]=l[t])}Object.keys(this.alias).includes(t)||warn("Form","TREE_TABLE_HELPER 的 fieldAliasMap 选项必须包含自身 `fieldName` 值"),this.searchHelper.echoRequest&&!this.valueKey&&warn("Form","TREE_TABLE_HELPER 的 echoRequest 选项必须组合 `fieldsDefine` 中的 `valueKey` 一起使用")})),this.getItemValue=()=>{const{$$form:e}=this.context;return e.state.other[this.valueKey]},this.getLastedSearchHelper=()=>Object.assign({},this.searchHelper,this.props.option.searchHelper),this.getItemText=()=>__awaiter(this,void 0,void 0,(function*(){var e;yield this.props.waiting();const t=this.getItemValue();if(t===this._prevValue)return;this._prevValue=t;const{fetchApi:a,params:r={},formatter:l=(e=>e),dataKey:n,fieldAliasMap:i,extraAliasMap:o}=this.searchHelper.echoRequest||{},s="function"==typeof i?i():i||{},c="function"==typeof o?o():o||{},{value:d}=this.props;if(a&&!d&&t){this.setState({loading:!0});try{const i=yield a(l(Object.assign(Object.assign({},r),{key:t})));if(200===i.code){const t=Array.isArray(i.data)?i.data:null!==(e=get(i.data,n))&&void 0!==e?e:[];if(t[0]){const e=t[0];s&&setEchoRecord(e,this.alias,s),c&&setEchoExtras(e,this.extras,c),this._record=e,this.setFieldsValue(e)}}}catch(e){}this.setState({loading:!1})}})),this.setFieldsValue=e=>{const{$$form:t}=this.context,{fieldName:a}=this.props.option;for(const r in this.alias){const l=getSplitValue$1(e,this.alias[r]);t.SET_FIELDS_VALUE({[r]:l}),r===a&&t.setViewValue(a,l)}for(const a in this.extras)t.SET_FIELDS_EXTRA({[a]:getSplitValue$1(e,this.extras[a])})},this.openSearchHelper=e=>__awaiter(this,void 0,void 0,(function*(){yield this.props.waiting();const{$$form:t}=this.context,{beforeOpen:a}=this.searchHelper,r=(null!=a?a:trueNoop)(t.state.formData);(null==r?void 0:r.then)?r.then((()=>{this.setVisible(!0),null==e||e()})).catch((()=>{})):!1!==r&&(this.setVisible(!0),null==e||e())})),this.closeSearchHelper=e=>{const{$$form:t}=this.context,{fieldName:a}=this.props.option;for(const r in this.alias)r!==a&&t.SET_FIELDS_VALUE({[r]:getSplitValue$1(e,this.alias[r])});for(const a in this.extras)t.SET_FIELDS_EXTRA({[a]:getSplitValue$1(e,this.extras[a])});this._record=e;const r=getSplitValue$1(e,this.alias[a]);this.triggerChange(r);const{closed:l}=this.searchHelper;this.setVisible(!1,(()=>{setTimeout((()=>null==l?void 0:l(e)),200)}))},this.clearSearchHelperValue=()=>{const{$$form:e}=this.context,{fieldName:t}=this.props.option;for(const a in this.alias)a!==t&&e.SET_FIELDS_VALUE({[a]:void 0});for(const t in this.extras)e.SET_FIELDS_EXTRA({[t]:""});this._record=null,this.triggerChange("")},this.triggerChange=e=>{const{onChange:t,onValuesChange:a}=this.props;null==t||t(e),a(e,this._record)},this.triggerBlur=e=>{const{onBlur:t}=this.props;null==t||t(e)},this.initialHandle()}componentDidMount(){this.getItemText()}componentDidUpdate(){this.getItemText()}render(){var e;const{$$form:a}=this.context,{visible:r,loading:l}=this.state,{value:n=""}=this.props,{type:i,options:o={},searchHelper:s={},style:c={},placeholder:d=t("qm.form.selectPlaceholder"),bordered:u=!0,allowClear:p=!0,readOnly:f,disabled:m}=this.props.option,{prefix:h,suffix:g,maxLength:_}=o,y={visible:r,title:t("qm.searchHelper.text"),width:null!==(e=s.width)&&void 0!==e?e:"65%",loading:!1,bodyStyle:{paddingBottom:`${SizeHeight[a.$size]+20}px`},onClose:()=>{this.setVisible(!1)}},v=Object.assign(Object.assign({},this.getLastedSearchHelper()),{size:a.$size,initialValue:merge({},s.initialValue),onClose:e=>{e?this.closeSearchHelper(e):this.setVisible(!1)}});return a.isOnlyShow?React__default.createElement(FormItemView,{value:n,bordered:u}):React__default.createElement(React__default.Fragment,null,React__default.createElement(Search$1,{ref:e=>this[`${i}_Ref`]=e,value:n,title:n,loading:l,placeholder:d,style:c,prefix:h,suffix:g,maxLength:_,bordered:u,allowClear:p,readOnly:f,disabled:m,onBlur:e=>{const{value:t}=e.target;this.triggerBlur(t)},onKeyUp:e=>{13===e.keyCode&&(e.preventDefault(),this.openSearchHelper())},onDoubleClick:e=>{this.openSearchHelper()},onSearch:(e,t)=>{"click"===(null==t?void 0:t.type)&&("INPUT"!==t.target.tagName?this.openSearchHelper():this.clearSearchHelperValue())}}),React__default.createElement(QmModal,y,React__default.createElement(TreeTableHelper,v)))}}VTreeTableHelper.contextType=FormContext;class FormTreeTableHelper extends Component{constructor(e,t){let{$$form:a}=t;super(e),this.state={searchHelper:{}},this.waiting=()=>__awaiter(this,void 0,void 0,(function*(){try{yield this.promiseRef}catch(e){throwError("Form","搜索帮助获取定义信息的接口出错")}})),this.getHelperConfig=e=>{var t,a;const{global:r}=e,{name:l,fieldsDefine:n}=this.props.option.searchHelper||{};if(!l)return;if(!(null===(t=null==r?void 0:r.searchHelper)||void 0===t?void 0:t.getServerConfig)||!(null===(a=null==r?void 0:r.searchHelper)||void 0===a?void 0:a.createFetchApi))return warn("searchHelper","从服务端获取定义信息的时候,ConfigProvider 组件 `getServerConfig` 和 `createFetchApi` 为必选参数");const{fieldName:i}=this.props.option;this.promiseRef=new Promise(((e,t)=>__awaiter(this,void 0,void 0,(function*(){try{const a=yield r.searchHelper.getServerConfig({searchHelperId:l});if(200===a.code){const t=createShConfig(Object.assign({},a.data,n),i,r.searchHelper.createFetchApi);this.setState({searchHelper:t},(()=>e()))}else t()}catch(e){t()}}))))},this.getHelperConfig(a.context)}render(){const{$$form:e}=this.context,{searchHelper:t}=this.state,{type:a,label:r,tooltip:l,fieldName:n,invisible:i,options:o={},labelWidth:s=e.props.labelWidth,className:c,extra:d,buttonAfter:u,validateTrigger:p,rules:f=[],onChange:m=noop$1}=this.props.option;return React__default.createElement(Form.Item,{label:e.renderFormLabel(r),className:classNames(n,c),tooltip:l,hidden:i,labelCol:{flex:e.verticalLayout?"initial":getParserWidth(s)},required:e.getFormItemRequired(f)},React__default.createElement(Row,{wrap:!1,gutter:4},React__default.createElement(Col,{flex:"auto"},React__default.createElement(Form.Item,{name:n,noStyle:!0,rules:f,validateTrigger:p,messageVariables:{label:e.getFormItemLabel(r)}},React__default.createElement(VTreeTableHelper,{option:this.props.option,helperConfig:t,waiting:this.waiting,onValuesChange:(t,a)=>{m(t,a),e.setViewValue(n,t)}}))),u&&React__default.createElement(Col,null,e.renderFormItemButton(n,u)),d&&React__default.createElement(Col,{flex:getParserWidth(d.labelWidth||DEFAULT_LABEL_WIDTH)},e.renderFormItemExtra(Object.assign({fieldName:n},d)))))}}FormTreeTableHelper.contextType=FormContext;let VMultipleTreeTableHelper=class extends Component{constructor(e){var t;super(e),t=this,this._records=[],this.searchRef=React__default.createRef(),this.state={visible:!1,visible2:!1,loading:!1,itemList:[]},this.initialHandle=()=>__awaiter(this,void 0,void 0,(function*(){yield this.props.waiting();const{helperConfig:e}=this.props;this.searchHelper=Object.assign({},e,this.props.option.searchHelper);const t=this.searchHelper.fieldAliasMap;t||warn("Form","MULTIPLE_TREE_TABLE_HELPER 需要配置 `fieldAliasMap` 选项"),this.alias="function"==typeof t?t():t||{},Object.keys(this.alias).includes("valueKey")&&Object.keys(this.alias).includes("textKey")||warn("Form","MULTIPLE_TREE_TABLE_HELPER 的 fieldAliasMap 选项必须包含自身 `valueKey` 和 `textKey`")})),this.getLastedSearchHelper=()=>{var e;const t=Object.assign({},this.searchHelper,this.props.option.searchHelper);return t.table&&!t.table.rowKey&&(t.table.rowKey=null===(e=this.alias)||void 0===e?void 0:e.valueKey),t},this.setVisible=(e,t)=>{this.setState({visible:e},t)},this.setItemList=e=>{this.setState({itemList:e})},this.setRecords=e=>{this._records=e},this.recordsToDict=()=>this._records.map((e=>({text:e[this.alias.textKey],value:e[this.alias.valueKey]}))),this.setViewValue=e=>{const{$$form:t}=this.context,{fieldName:a}=this.props.option;t.setViewValue(a,this.createViewText(e))},this.openSearchHelper=e=>__awaiter(this,void 0,void 0,(function*(){yield this.props.waiting();const{$$form:t}=this.context,{beforeOpen:a}=this.searchHelper,r=(null!=a?a:trueNoop)(t.state.formData);(null==r?void 0:r.then)?r.then((()=>{this.setVisible(!0),null==e||e()})).catch((()=>{})):!1!==r&&(this.setVisible(!0),null==e||e())})),this.closeSearchHelper=function(e){let a=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[];const{valueKey:r}=t.alias;t.setRecords(uniqBy([...t._records.filter((e=>a.includes(e[r]))),...e],r));const l=t.recordsToDict();t.setItemList(l),t.triggerChange(l.map((e=>e.value)));const{closed:n}=t.searchHelper;t.setVisible(!1,(()=>{setTimeout((()=>null==n?void 0:n(t._records)),200)}))},this.triggerChange=e=>{const{onChange:t,onValuesChange:a}=this.props,{valueKey:r}=this.alias||{};this.setRecords(this._records.filter((t=>e.includes(t[r])))),null==t||t(e),a(e,this.createViewText(e),this._records)},this.initialHandle()}componentDidMount(){this.getItemList()}componentDidUpdate(e,t){const{value:a=[]}=e,{value:r=[],clickOutside:l}=this.props;isEqual$1(intersection(a,r),r)||isEqual$1(r,this._records.map((e=>e[this.alias.valueKey])))||this.getItemList(),l&&t.visible2&&this.setState({visible2:!1})}getItemList(){var e,t;return __awaiter(this,void 0,void 0,(function*(){if(yield this.props.waiting(),!this.searchHelper)return;const{textKey:a,valueKey:r}=this.alias,{fetchApi:l,params:n={},formatter:i=(e=>e),dataKey:o,fieldAliasMap:s}=this.searchHelper.echoRequest||(null===(e=this.props.option.searchHelper)||void 0===e?void 0:e.request)||{},c="function"==typeof s?s():s||{},{value:d}=this.props;if(l&&!isEmpty(d)){this.setState({loading:!0});try{const e=yield l(i(Object.assign(Object.assign({},n),{keys:d})));if(200===e.code){let l=Array.isArray(e.data)?e.data:null!==(t=get(e.data,o))&&void 0!==t?t:[];l.forEach((e=>{(null==c?void 0:c.valueKey)&&c.valueKey!==r&&(e[r]=e[c.valueKey]),(null==c?void 0:c.textKey)&&c.textKey!==a&&(e[a]=e[c.textKey])})),l=l.filter((e=>d.includes(e[r])));const n=l.map((e=>({value:e[r],text:e[a]})));this.setRecords(l),this.setItemList(n),this.setViewValue(d)}}catch(e){}this.setState({loading:!1})}}))}createViewText(e){return this.recordsToDict().filter((t=>e.includes(t.value))).map((e=>e.text)).join(",")}render(){var e,a,r;const{$$form:l}=this.context,{visible:n,visible2:i,loading:o,itemList:s}=this.state,{value:c}=this.props,{fieldName:d,options:u={},searchHelper:p={},style:f={},placeholder:m=t("qm.form.selectPlaceholder"),bordered:h=!0,allowClear:g=!0,readOnly:_,disabled:y}=this.props.option,{collapseTags:v,maxTagTextLength:b}=u,R={visible:n,title:t("qm.searchHelper.text"),width:null!==(e=p.width)&&void 0!==e?e:"65%",loading:!1,bodyStyle:{paddingBottom:`${SizeHeight[l.$size]+20}px`},onClose:()=>{this.setVisible(!1)}},E=Object.assign(Object.assign({},this.getLastedSearchHelper()),{size:l.$size,multiple:!0,initialValue:merge({},p.initialValue),defaultSelectedKeys:c,selectionRows:this._records,onClose:(e,t)=>{e?this.closeSearchHelper(e,t):this.setVisible(!1)}}),x=s.filter((e=>null==c?void 0:c.includes(e.value))),C=React__default.createElement("ul",{className:"ant-dropdown-menu"},x.length?x.map((e=>React__default.createElement("li",{key:e.value,className:"ant-dropdown-menu-item"},e.text))):React__default.createElement("li",{className:"ant-dropdown-menu-item"},t("qm.table.config.emptyText"))),T=this.searchRef.current?this.searchRef.current.offsetWidth:300,S=getPrefixCls("form-multiple-tree-table-helper"),{size:w}=l.context,P={[S]:!0,[`${S}--lg`]:"large"===w,[`${S}--sm`]:"small"===w};null===(r=(a=this.props).setOmitClassNames)||void 0===r||r.call(a,[`.${S}`]);const N=s.filter((e=>null==c?void 0:c.includes(e.value))).map((e=>e.text)).join(",");return l.isOnlyShow?React__default.createElement(FormItemView,{value:N,bordered:h}):React__default.createElement(React__default.Fragment,null,React__default.createElement("span",{className:"ant-input-group-wrapper ant-input-search search-helper-multiple"},React__default.createElement("span",{ref:this.searchRef,className:"ant-input-wrapper ant-input-group"},React__default.createElement(Trigger,{popupVisible:!y&&i,popup:C,popupClassName:classNames(P),popupStyle:{minWidth:T},onPopupVisibleChange:e=>this.setState({visible2:e}),builtinPlacements:BUILT_IN_PLACEMENTS$1,prefixCls:"ant-dropdown",popupPlacement:"bottomLeft",popupTransitionName:"ant-slide-up"},React__default.createElement(Select,{mode:"multiple",maxTagCount:v?"responsive":void 0,maxTagTextLength:b,open:!1,value:c,placeholder:m,loading:o,bordered:h,allowClear:g,disabled:y,style:Object.assign({width:"100%"},f),title:N,onKeyUp:e=>{13===e.keyCode&&(e.preventDefault(),this.openSearchHelper())},onClick:e=>{var t,a;const r=e.target;r.classList.contains("ant-select-selection-overflow-item-rest")&&(null===(a=(t=this.props).setCurrentElement)||void 0===a||a.call(t,r),this.setState({visible2:!0}))},onDoubleClick:()=>{this.openSearchHelper()},onChange:e=>{this.triggerChange(e)}},s.map((e=>React__default.createElement(Select.Option,{key:e.value,value:e.value},e.text))))),React__default.createElement("span",{className:"ant-input-group-addon"},React__default.createElement(Button,{className:"ant-input-search-button",disabled:y,icon:React__default.createElement(SearchOutlined,null),onClick:()=>{this.openSearchHelper()}})))),React__default.createElement(QmModal,R,React__default.createElement(TreeTableHelper,E)))}};VMultipleTreeTableHelper.contextType=FormContext,VMultipleTreeTableHelper=__decorate([OutsideClick],VMultipleTreeTableHelper);class FormMultipleTreeTableHelper extends Component{constructor(e,t){let{$$form:a}=t;super(e),this.state={searchHelper:{}},this.waiting=()=>__awaiter(this,void 0,void 0,(function*(){try{yield this.promiseRef}catch(e){throwError("Form","搜索帮助获取定义信息的接口出错")}})),this.getHelperConfig=e=>{var t,a;const{global:r}=e,{name:l,fieldsDefine:n}=this.props.option.searchHelper||{};if(!l)return;if(!(null===(t=null==r?void 0:r.searchHelper)||void 0===t?void 0:t.getServerConfig)||!(null===(a=null==r?void 0:r.searchHelper)||void 0===a?void 0:a.createFetchApi))return warn("searchHelper","从服务端获取定义信息的时候,ConfigProvider 组件 `getServerConfig` 和 `createFetchApi` 为必选参数");const{fieldName:i}=this.props.option;this.promiseRef=new Promise(((e,t)=>__awaiter(this,void 0,void 0,(function*(){try{const a=yield r.searchHelper.getServerConfig({searchHelperId:l});if(200===a.code){const t=createShConfig(Object.assign({},a.data,n),i,r.searchHelper.createFetchApi,!0);this.setState({searchHelper:t},(()=>e()))}else t()}catch(e){t()}}))))},this.getHelperConfig(a.context)}render(){const{$$form:e}=this.context,{searchHelper:t}=this.state,{type:a,label:r,tooltip:l,fieldName:n,invisible:i,options:o={},labelWidth:s=e.props.labelWidth,className:c,extra:d,buttonAfter:u,validateTrigger:p,rules:f=[],onChange:m=noop$1}=this.props.option;return React__default.createElement(Form.Item,{label:e.renderFormLabel(r),className:classNames(n,c),tooltip:l,hidden:i,labelCol:{flex:e.verticalLayout?"initial":getParserWidth(s)},required:e.getFormItemRequired(f)},React__default.createElement(Row,{wrap:!1,gutter:4},React__default.createElement(Col,{flex:"auto"},React__default.createElement(Form.Item,{name:n,noStyle:!0,rules:f,validateTrigger:p,messageVariables:{label:e.getFormItemLabel(r)}},React__default.createElement(VMultipleTreeTableHelper,{option:this.props.option,helperConfig:t,waiting:this.waiting,onValuesChange:(t,a,r)=>{m(t,r),e.setViewValue(n,a)}}))),u&&React__default.createElement(Col,null,e.renderFormItemButton(n,u)),d&&React__default.createElement(Col,{flex:getParserWidth(d.labelWidth||DEFAULT_LABEL_WIDTH)},e.renderFormItemExtra(Object.assign({fieldName:n},d)))))}}FormMultipleTreeTableHelper.contextType=FormContext;const TEXT_VALUE=new Array(2).fill("");class RangeHelper extends Component{constructor(e){var t;super(e),t=this,this._is_change=!1,this._records=[],this._is_clear=!1,this.state={visible:!1,loading:!1,itemList:[],textValue:TEXT_VALUE},this.initialHandle=()=>__awaiter(this,void 0,void 0,(function*(){yield this.props.waiting();const{helperConfig:e}=this.props;this.searchHelper=Object.assign({},e,this.props.option.searchHelper);const t=this.searchHelper.fieldAliasMap;t||warn("Form","RANGE_SEARCH_HELPER 需要配置 `fieldAliasMap` 选项"),this.alias="function"==typeof t?t():t||{},Object.keys(this.alias).includes("valueKey")&&Object.keys(this.alias).includes("textKey")||warn("Form","RANGE_SEARCH_HELPER 的 fieldAliasMap 选项必须包含自身 `valueKey` 和 `textKey`")})),this.getLastedSearchHelper=()=>Object.assign({},this.searchHelper,this.props.option.searchHelper),this.setItemList=e=>{this.setState({itemList:e})},this.setVisible=(e,t)=>{this.setState({visible:e},t)},this.setTextValue=e=>{this.setState({textValue:e})},this.setRecords=e=>{this._records=e},this.setViewValue=()=>{const{$$form:e}=this.context,{fieldName:t}=this.props.option;e.setViewValue(t,this.createViewText())},this.triggerChange=e=>{const{onChange:t,onValuesChange:a}=this.props;this._is_change=!1,null==t||t(e),a(e,this.createViewText(),this._records)},this.clearSearchHelperValue=()=>{this.setRecords([]),this.setTextValue(TEXT_VALUE),this.triggerChange([])},this.closeSearchHelper=e=>{const{valueKey:t,textKey:a}=this.alias,r=e.map((e=>({value:e[t],text:e[a]})));this.setRecords(e),this.setItemList(r),this.setTextValue(r.map((e=>{var t;return null!==(t=e.text)&&void 0!==t?t:""}))),this.triggerChange(e.map((e=>e[t])));const{closed:l}=this.searchHelper;this.setVisible(!1,(()=>{setTimeout((()=>null==l?void 0:l(this._records)),200)}))},this.openSearchHelper=e=>__awaiter(this,void 0,void 0,(function*(){yield this.props.waiting();const{$$form:t}=this.context,{beforeOpen:a}=this.searchHelper,r=(null!=a?a:trueNoop)(t.state.formData);(null==r?void 0:r.then)?r.then((()=>{this.setVisible(!0),null==e||e()})).catch((()=>{})):!1!==r&&(this.setVisible(!0),null==e||e())})),this.createFilters=e=>{const{fieldName:t}=this.props.option;return{[t]:isEmpty(e)?void 0:e}},this.getSearchHelperTableData=e=>{const{table:t,initialValue:a={}}=this.searchHelper,{beforeFetch:r=trueNoop,formatter:l=(e=>e)}=t.fetch;return new Promise(((n,i)=>__awaiter(this,void 0,void 0,(function*(){var o;const s=merge({},this.getLastedSearchHelper().table.fetch.params,Object.assign(Object.assign({},a),l(this.createFilters(e))),{currentPage:1,pageSize:500});try{if(!r(s))return i();this.setState({loading:!0});const e=yield t.fetch.api(s);if(nextTick((()=>this.setState({loading:!1}))),200===e.code){const a=Array.isArray(e.data)?e.data:null!==(o=get(e.data,t.fetch.dataKey))&&void 0!==o?o:[];return n(a)}}catch(e){this.setState({loading:!1})}i()}))))},this.resetSearchHelperValue=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];return __awaiter(t,void 0,void 0,(function*(){const{textValue:t}=this.state,{textKey:a}=this.alias,r=e.filter((e=>{var r;const l=null===(r=e[a])||void 0===r?void 0:r.toString().toLowerCase();return t.some((e=>null==l?void 0:l.includes(e.toLowerCase())))}));if(2===r.length)return this.closeSearchHelper(r);this.openSearchHelper()}))},this.closeButNotSelect=()=>{this._is_change&&this.clearSearchHelperValue(),this.setVisible(!1)},this.initialHandle()}componentDidMount(){this.getItemList()}componentDidUpdate(e){const{value:t=[]}=e,{value:a=[]}=this.props;isEqual$1(intersection(t,a),a)||isEqual$1(a,this._records.map((e=>e[this.alias.valueKey])))||this.getItemList();const{echo_data:r}=this.context,{fieldName:l}=this.props.option;if(!isEqual$1(r[l],this._ceho_data)&&(this._ceho_data=r[l],this.setItemList(r[l]),a.length)){const e=TEXT_VALUE.map(((e,t)=>{var n,i;return null!==(i=null===(n=r[l].find((e=>e.value===a[t])))||void 0===n?void 0:n.text)&&void 0!==i?i:""}));this.setTextValue(e)}}getItemList(){var e;return __awaiter(this,void 0,void 0,(function*(){if(yield this.props.waiting(),!this.searchHelper)return;const{textKey:t,valueKey:a}=this.alias,{fetchApi:r,params:l={},formatter:n=(e=>e),dataKey:i,fieldAliasMap:o}=this.searchHelper.echoRequest||{},s="function"==typeof o?o():o||{},{value:c}=this.props;if(r&&!isEmpty(c)){this.setState({loading:!0});try{const o=yield r(n(Object.assign(Object.assign({},l),{keys:c})));if(200===o.code){let r=Array.isArray(o.data)?o.data:null!==(e=get(o.data,i))&&void 0!==e?e:[];r.forEach((e=>{(null==s?void 0:s.valueKey)&&s.valueKey!==a&&(e[a]=e[s.valueKey]),(null==s?void 0:s.textKey)&&s.textKey!==t&&(e[t]=e[s.textKey])})),r=r.filter((e=>c.includes(e[a]))).slice(0,2);const l=r.map((e=>({value:e[a],text:e[t]})));this.setRecords(r),this.setItemList(l),this.setTextValue(l.map((e=>{var t;return null!==(t=e.text)&&void 0!==t?t:""}))),this.setViewValue()}}catch(e){}this.setState({loading:!1})}}))}createViewText(){const{textKey:e}=this.alias;return this._records.map((t=>t[e])).join(" - ")}render(){var e;const{$$form:a}=this.context;this.props;const{visible:r,loading:l,textValue:n}=this.state,{options:i={},searchHelper:o={},placeholder:s=t("qm.form.rangeInputNumberPlaceholder"),bordered:c=!0,readOnly:d,disabled:u}=this.props.option,{onlySelect:p=!0}=this.searchHelper||o,f={visible:r,title:t("qm.searchHelper.text"),width:null!==(e=o.width)&&void 0!==e?e:"65%",loading:!1,bodyStyle:{paddingBottom:`${SizeHeight[a.$size]+20}px`},onClose:()=>{this.closeButNotSelect()}},m=Object.assign(Object.assign({},this.getLastedSearchHelper()),{size:a.$size,initialValue:merge({},o.initialValue),onClose:e=>{e?this.closeSearchHelper(e):this.closeButNotSelect()}});return a.isOnlyShow?React__default.createElement(FormItemView,{value:n.join(" - "),bordered:c}):React__default.createElement(React__default.Fragment,null,React__default.createElement(Input.Group,null,React__default.createElement(Input,{value:n[0],className:"site-input-left",style:{width:"calc(50% - 5px)"},placeholder:s[0],allowClear:!1,bordered:c,readOnly:d,disabled:u,onBlur:e=>{var t,a;const{value:l}=e.target;this._is_change&&!r&&(l?n.every((e=>!!e))&&(null===(a=null===(t=this.searchHelper.table)||void 0===t?void 0:t.fetch)||void 0===a?void 0:a.api)&&this.getSearchHelperTableData(n).then((e=>this.resetSearchHelperValue(e))).catch((()=>this.clearSearchHelperValue())):n.every((e=>!e))&&this.clearSearchHelperValue())},onDoubleClick:()=>{this.openSearchHelper()},onChange:e=>{const{value:t}=e.target;p||(this._is_change=!0,this.setTextValue([t,n[1]]))}}),React__default.createElement(Input,{className:"site-input-split",style:{width:10,paddingLeft:0,paddingRight:0,borderLeft:0,borderRight:0,textAlign:"center",pointerEvents:"none"},placeholder:"~",bordered:c,disabled:u,readOnly:!0}),React__default.createElement(Input.Search,{value:n[1],className:"site-input-right",style:{width:"calc(50% - 5px)"},placeholder:s[1],loading:l,bordered:c,allowClear:!0,readOnly:d,disabled:u,onBlur:e=>{var t,a;const{value:l}=e.target;this._is_change&&!r&&(l?n.every((e=>!!e))&&(null===(a=null===(t=this.searchHelper.table)||void 0===t?void 0:t.fetch)||void 0===a?void 0:a.api)&&this.getSearchHelperTableData(n).then((e=>this.resetSearchHelperValue(e))).catch((()=>this.clearSearchHelperValue())):n.every((e=>!e))&&this.clearSearchHelperValue())},onDoubleClick:()=>{this.openSearchHelper()},onChange:e=>{const{value:t}=e.target;this._is_clear?this._is_clear=!1:p||(this._is_change=!0,this.setTextValue([n[0],t]))},onSearch:(e,t)=>{"click"===(null==t?void 0:t.type)&&("INPUT"!==t.target.tagName?this.openSearchHelper():(this._is_clear=!0,this.clearSearchHelperValue()))}})),React__default.createElement(QmModal,f,React__default.createElement(RangeTableHelper,m)))}}RangeHelper.contextType=FormContext;class FormRangeSearchHelper extends Component{constructor(e,t){let{$$form:a}=t;super(e),this.state={searchHelper:{}},this.waiting=()=>__awaiter(this,void 0,void 0,(function*(){try{yield this.promiseRef}catch(e){throwError("Form","搜索帮助获取定义信息的接口出错")}})),this.getHelperConfig=e=>{var t,a;const{global:r}=e,{name:l,fieldsDefine:n}=this.props.option.searchHelper||{};if(!l)return;if(!(null===(t=null==r?void 0:r.searchHelper)||void 0===t?void 0:t.getServerConfig)||!(null===(a=null==r?void 0:r.searchHelper)||void 0===a?void 0:a.createFetchApi))return warn("searchHelper","从服务端获取定义信息的时候,ConfigProvider 组件 `getServerConfig` 和 `createFetchApi` 为必选参数");const{fieldName:i}=this.props.option;this.promiseRef=new Promise(((e,t)=>__awaiter(this,void 0,void 0,(function*(){try{const a=yield r.searchHelper.getServerConfig({searchHelperId:l});if(200===a.code){const t=createShConfig(Object.assign({},a.data,n),i,r.searchHelper.createFetchApi,!0);this.setState({searchHelper:t},(()=>e()))}else t()}catch(e){t()}}))))},this.getHelperConfig(a.context)}render(){const{$$form:e}=this.context,{searchHelper:t}=this.state,{type:a,label:r,tooltip:l,fieldName:n,invisible:i,labelWidth:o=e.props.labelWidth,className:s,extra:c,buttonAfter:d,validateTrigger:u,rules:p=[],onChange:f=noop$1}=this.props.option;return React__default.createElement(Form.Item,{label:e.renderFormLabel(r),className:classNames(n,s),tooltip:l,hidden:i,labelCol:{flex:e.verticalLayout?"initial":getParserWidth(o)},required:e.getFormItemRequired(p)},React__default.createElement(Row,{wrap:!1,gutter:4},React__default.createElement(Col,{flex:"auto"},React__default.createElement(Form.Item,{name:n,noStyle:!0,rules:p,validateTrigger:u,messageVariables:{label:e.getFormItemLabel(r)}},React__default.createElement(RangeHelper,{option:this.props.option,helperConfig:t,waiting:this.waiting,onValuesChange:(t,a,r)=>{f(t,r),e.setViewValue(n,a)}}))),d&&React__default.createElement(Col,null,e.renderFormItemButton(n,d)),c&&React__default.createElement(Col,{flex:getParserWidth(c.labelWidth||DEFAULT_LABEL_WIDTH)},e.renderFormItemExtra(Object.assign({fieldName:n},c)))))}}FormRangeSearchHelper.contextType=FormContext;const VCheckbox=e=>{const{$$form:a}=React__default.useContext(FormContext),{value:r,onChange:l,onValuesChange:n}=e,{options:i={},style:o={},disabled:s}=e.option,{falseValue:c=DEFAULT_FALSE_VALUE$1,trueValue:d=DEFAULT_TRUE_VALUE$1}=i,u=e=>t(e===d?"am.form.trueText":"am.form.falseText");return React__default.createElement(Checkbox,{checked:r===d,style:o,disabled:s||a.isOnlyShow,onChange:e=>{const{checked:t}=e.target;(e=>{null==l||l(e),n(e,u(e))})(t?d:c)}})};class FormCheckbox extends Component{render(){const{$$form:e}=this.context,{type:t,label:a,tooltip:r,fieldName:l,invisible:n,options:i={},labelWidth:o=e.props.labelWidth,className:s,extra:c,validateTrigger:d,rules:u=[],onChange:p=noop$1}=this.props.option;return React__default.createElement(Form.Item,{label:e.renderFormLabel(a),className:classNames(l,s),tooltip:r,hidden:n,labelCol:{flex:e.verticalLayout?"initial":getParserWidth(o)},required:e.getFormItemRequired(u)},React__default.createElement(Row,{wrap:!1,gutter:4},React__default.createElement(Col,{flex:"auto"},React__default.createElement(Form.Item,{name:l,noStyle:!0,rules:u,validateTrigger:d,messageVariables:{label:e.getFormItemLabel(a)}},React__default.createElement(VCheckbox,{option:this.props.option,onValuesChange:(t,a)=>{p(t),e.setViewValue(l,a)}}))),c&&React__default.createElement(Col,{flex:getParserWidth(c.labelWidth||DEFAULT_LABEL_WIDTH)},e.renderFormItemExtra(Object.assign({fieldName:l},c)))))}}FormCheckbox.contextType=FormContext;const VGroupCheckbox=e=>{const{$$form:t}=React__default.useContext(FormContext),{value:a,items:r,onChange:l,onValuesChange:n}=e,{options:i={},style:o={},bordered:s=!1,readOnly:c,disabled:d}=e.option,{itemList:u=[]}=i,p=isEmpty(u)?r:u,f=e=>p.filter((t=>e.includes(t.value))).map((e=>e.text)).join(",");return t.isOnlyShow?React__default.createElement(FormItemView,{value:f(a),bordered:s}):React__default.createElement(Checkbox.Group,{value:a,style:Object.assign({width:"100%"},o),disabled:d,onChange:e=>{(e=>{null==l||l(e),n(e,f(e))})(e)}},p.map((e=>React__default.createElement(Checkbox,{key:e.value,value:e.value,disabled:e.disabled},e.text))))};class FormCheckboxGroup extends Component{constructor(){super(...arguments),this.state={itemList:[]}}componentDidMount(){this.getItemList()}componentWillUnmount(){this.setState=()=>!1}componentDidUpdate(e){var t,a;const r=null===(t=e.option.request)||void 0===t?void 0:t.params,l=null===(a=this.props.option.request)||void 0===a?void 0:a.params;isEqual$1(r,l)||this.getItemList()}getItemList(){var e;return __awaiter(this,void 0,void 0,(function*(){const{request:t={}}=this.props.option,{fetchApi:a,params:r={},dataKey:l,valueKey:n="value",textKey:i="text",callback:o}=t;if(a)try{const t=yield a(r);if(200===t.code){const a=Array.isArray(t.data)?t.data:null!==(e=get(t.data,l))&&void 0!==e?e:[],r=a.map((e=>({value:e[n],text:e[i]})));this.setState({itemList:r},(()=>null==o?void 0:o(a)))}}catch(e){}}))}render(){const{$$form:e}=this.context,{itemList:t}=this.state,{type:a,label:r,tooltip:l,fieldName:n,invisible:i,options:o={},labelWidth:s=e.props.labelWidth,className:c,extra:d,validateTrigger:u,rules:p=[],onChange:f=noop$1}=this.props.option;return React__default.createElement(Form.Item,{label:e.renderFormLabel(r),className:classNames(n,c),tooltip:l,hidden:i,labelCol:{flex:e.verticalLayout?"initial":getParserWidth(s)},required:e.getFormItemRequired(p)},React__default.createElement(Row,{wrap:!1,gutter:4},React__default.createElement(Col,{flex:"auto"},React__default.createElement(Form.Item,{name:n,noStyle:!0,rules:p,validateTrigger:u,messageVariables:{label:e.getFormItemLabel(r)}},React__default.createElement(VGroupCheckbox,{option:this.props.option,items:t,onValuesChange:(t,a)=>{f(t),e.setViewValue(n,a)}}))),d&&React__default.createElement(Col,{flex:getParserWidth(d.labelWidth||DEFAULT_LABEL_WIDTH)},e.renderFormItemExtra(Object.assign({fieldName:n},d)))))}}FormCheckboxGroup.contextType=FormContext;const VRate=e=>{const{$$form:t}=React__default.useContext(FormContext),{value:a,onChange:r,onValuesChange:l}=e,{options:n={},style:i={},allowClear:o=!0,readOnly:s,disabled:c}=e.option,{allowHalf:d,count:u=5,tooltips:p}=n,f=e=>p?p[Math.ceil(e)-1]:e.toString();return React__default.createElement(Rate,{value:a,count:u,style:i,allowHalf:d,allowClear:o,tooltips:p,disabled:c||t.isOnlyShow,onChange:e=>{(e=>{null==r||r(e),l(e,f(e))})(e)}})};class FormRate extends Component{render(){const{$$form:e}=this.context,{type:t,label:a,tooltip:r,fieldName:l,invisible:n,options:i={},labelWidth:o=e.props.labelWidth,className:s,extra:c,validateTrigger:d,rules:u=[],onChange:p=noop$1}=this.props.option;return React__default.createElement(Form.Item,{label:e.renderFormLabel(a),className:classNames(l,s),tooltip:r,hidden:n,labelCol:{flex:e.verticalLayout?"initial":getParserWidth(o)},required:e.getFormItemRequired(u)},React__default.createElement(Row,{wrap:!1,gutter:4},React__default.createElement(Col,{flex:"auto"},React__default.createElement(Form.Item,{name:l,noStyle:!0,rules:u,validateTrigger:d,messageVariables:{label:e.getFormItemLabel(a)}},React__default.createElement(VRate,{option:this.props.option,onValuesChange:(t,a)=>{p(t),e.setViewValue(l,a)}}))),c&&React__default.createElement(Col,{flex:getParserWidth(c.labelWidth||DEFAULT_LABEL_WIDTH)},e.renderFormItemExtra(Object.assign({fieldName:l},c)))))}}FormRate.contextType=FormContext;const VRadio=e=>{const{$$form:t}=React__default.useContext(FormContext),{value:a,items:r,onChange:l,onValuesChange:n}=e,{options:i={},style:o={},bordered:s=!1,readOnly:c,disabled:d}=e.option,{itemList:u=[]}=i,p=isEmpty(u)?r:u,f=e=>{var t,a;return null!==(a=null===(t=p.find((t=>t.value===e)))||void 0===t?void 0:t.text)&&void 0!==a?a:""};return t.isOnlyShow?React__default.createElement(FormItemView,{value:f(a),bordered:s}):React__default.createElement(Radio.Group,{value:a,style:Object.assign({width:"100%"},o),disabled:d||t.isOnlyShow,onChange:e=>{const{value:t}=e.target;(e=>{null==l||l(e),n(e,f(e))})(t)}},p.map((e=>React__default.createElement(Radio,{key:e.value,value:e.value,disabled:e.disabled},e.text))))};class FormRadio extends Component{constructor(){super(...arguments),this.state={itemList:[]},this.getItemList=()=>__awaiter(this,void 0,void 0,(function*(){var e;const{request:t={}}=this.props.option,{fetchApi:a,params:r={},dataKey:l,valueKey:n="value",textKey:i="text",callback:o}=t;if(a)try{const t=yield a(r);if(200===t.code){const a=Array.isArray(t.data)?t.data:null!==(e=get(t.data,l))&&void 0!==e?e:[],r=a.map((e=>({value:e[n],text:e[i]})));this.setState({itemList:r},(()=>null==o?void 0:o(a)))}}catch(e){}}))}componentDidMount(){this.getItemList()}componentWillUnmount(){this.setState=()=>!1}componentDidUpdate(e){var t,a;const r=null===(t=e.option.request)||void 0===t?void 0:t.params,l=null===(a=this.props.option.request)||void 0===a?void 0:a.params;isEqual$1(r,l)||this.getItemList()}render(){const{$$form:e}=this.context,{itemList:t}=this.state,{type:a,label:r,tooltip:l,fieldName:n,invisible:i,options:o={},labelWidth:s=e.props.labelWidth,className:c,extra:d,validateTrigger:u,rules:p=[],onChange:f=noop$1}=this.props.option;return React__default.createElement(Form.Item,{label:e.renderFormLabel(r),className:classNames(n,c),tooltip:l,hidden:i,labelCol:{flex:e.verticalLayout?"initial":getParserWidth(s)},required:e.getFormItemRequired(p)},React__default.createElement(Row,{wrap:!1,gutter:4},React__default.createElement(Col,{flex:"auto"},React__default.createElement(Form.Item,{name:n,noStyle:!0,rules:p,validateTrigger:u,messageVariables:{label:e.getFormItemLabel(r)}},React__default.createElement(VRadio,{option:this.props.option,items:t,onValuesChange:(t,a)=>{f(t),e.setViewValue(n,a)}}))),d&&React__default.createElement(Col,{flex:getParserWidth(d.labelWidth||DEFAULT_LABEL_WIDTH)},e.renderFormItemExtra(Object.assign({fieldName:n},d)))))}}FormRadio.contextType=FormContext;const VSwitch=e=>{const{$$form:a}=React__default.useContext(FormContext),{value:r,onChange:l,onValuesChange:n}=e,{options:i={},style:o={},disabled:s}=e.option,{falseValue:c=DEFAULT_FALSE_VALUE$1,trueValue:d=DEFAULT_TRUE_VALUE$1}=i;return React__default.createElement(Switch,{checked:r===d,style:o,disabled:s||a.isOnlyShow,checkedChildren:React__default.createElement(CheckOutlined,null),unCheckedChildren:React__default.createElement(CloseOutlined,null),onChange:e=>{(e=>{null==l||l(e),n(e,t(e===d?"am.form.trueText":"am.form.falseText"))})(e?d:c)}})};class FormSwitch extends Component{render(){const{$$form:e}=this.context,{type:t,label:a,tooltip:r,fieldName:l,invisible:n,options:i={},labelWidth:o=e.props.labelWidth,className:s,extra:c,validateTrigger:d,rules:u=[],onChange:p=noop$1}=this.props.option;return React__default.createElement(Form.Item,{label:e.renderFormLabel(a),className:classNames(l,s),tooltip:r,hidden:n,labelCol:{flex:e.verticalLayout?"initial":getParserWidth(o)},required:e.getFormItemRequired(u)},React__default.createElement(Row,{wrap:!1,gutter:4},React__default.createElement(Col,{flex:"auto"},React__default.createElement(Form.Item,{name:l,noStyle:!0,rules:u,validateTrigger:d,messageVariables:{label:e.getFormItemLabel(a)}},React__default.createElement(VSwitch,{option:this.props.option,onValuesChange:(t,a)=>{p(t),e.setViewValue(l,a)}}))),c&&React__default.createElement(Col,{flex:getParserWidth(c.labelWidth||DEFAULT_LABEL_WIDTH)},e.renderFormItemExtra(Object.assign({fieldName:l},c)))))}}FormSwitch.contextType=FormContext;const VTextArea=e=>{const{$$form:a}=React__default.useContext(FormContext),{value:r,onChange:l,onValuesChange:n}=e,{options:i={},style:o={},placeholder:s=t("qm.form.inputPlaceholder"),bordered:c=!0,allowClear:d,readOnly:u,disabled:p,onBlur:f=noop$1,onEnter:m=noop$1}=e.option,{showCount:h,maxLength:g,autoSize:_}=i,y=Object.assign({},{minRows:1,maxRows:3},_);return React__default.createElement(Input.TextArea,{value:r,placeholder:s,style:o,maxLength:g,showCount:h,autoSize:y,bordered:c,allowClear:d,readOnly:u||a.isOnlyShow,disabled:p,onBlur:t=>{const{value:a}=t.target;(t=>{const{onBlur:a}=e;null==a||a(t)})(a),f(a)},onKeyUp:e=>{if(13===e.keyCode){const{value:t}=e.target;m(t)}},onChange:e=>{const{value:t}=e.target;(e=>{null==l||l(e),n(e)})(t)}})};class FormTextArea extends Component{render(){const{$$form:e}=this.context,{type:t,label:a,tooltip:r,fieldName:l,invisible:n,options:i={},labelWidth:o=e.props.labelWidth,className:s,extra:c,validateTrigger:d,rules:u=[],onChange:p=noop$1}=this.props.option;return React__default.createElement(Form.Item,{label:e.renderFormLabel(a),className:classNames(l,s),tooltip:r,hidden:n,labelCol:{flex:e.verticalLayout?"initial":getParserWidth(o)},required:e.getFormItemRequired(u)},React__default.createElement(Row,{wrap:!1,gutter:4},React__default.createElement(Col,{flex:"auto"},React__default.createElement(Form.Item,{name:l,noStyle:!0,rules:u,validateTrigger:d,messageVariables:{label:e.getFormItemLabel(a)}},React__default.createElement(VTextArea,{option:this.props.option,onValuesChange:t=>{p(t),e.setViewValue(l,t)}}))),c&&React__default.createElement(Col,{flex:getParserWidth(c.labelWidth||DEFAULT_LABEL_WIDTH)},e.renderFormItemExtra(Object.assign({fieldName:l},c)))))}}FormTextArea.contextType=FormContext;const disabledDate$1=(e,t)=>{let[a,r]=t;return a&&r?e.isBefore(a,"day")||e.isAfter(r,"day"):a?e.isBefore(a,"day"):!!r&&e.isAfter(r,"day")},VDatePicker=e=>{const{$$form:a}=React__default.useContext(FormContext),{value:r,onChange:l,onValuesChange:n}=e,{options:i={},style:o={},placeholder:s=t("qm.form.datePlaceholder"),bordered:c=!0,allowClear:d=!0,readOnly:u,disabled:p}=e.option,{dateType:f="date",minDateTime:m,maxDateTime:h,shortCuts:g=!0}=i,_=React__default.createRef(),y=e=>{e&&"date"===f&&(e+=" 00:00:00"),null==l||l(e),n(e,v(e))},v=e=>isEmptyValue(e)?"":["date","exactdate"].includes(f)?e.slice(0,10):e,b=e=>{let t=formatDate$1(dayjs().subtract(e,"day"),EDateFormat[f]);"date"===f&&(t=t.slice(0,10)),y(t),_.current.blur(),_.current.focus()};return a.isOnlyShow?React__default.createElement(FormItemView,{value:v(r),bordered:c}):React__default.createElement(DatePicker,{ref:_,style:Object.assign({width:"100%"},o),picker:EDateType[f],bordered:c,showToday:!1,showTime:"datetime"===f,allowClear:d,disabled:p,inputReadOnly:u,disabledDate:e=>disabledDate$1(e,[m,h]),renderExtraFooter:g?()=>React__default.createElement(React__default.Fragment,null,React__default.createElement(Tag,{color:"processing",onClick:()=>b(0)},t("qm.form.datePickers")[0]),React__default.createElement(Tag,{color:"processing",onClick:()=>b(1)},t("qm.form.datePickers")[1]),React__default.createElement(Tag,{color:"processing",onClick:()=>b(7)},t("qm.form.datePickers")[2]),React__default.createElement(Tag,{color:"processing",onClick:()=>b(30)},t("qm.form.datePickers")[3])):void 0,value:getDate$1(r,EDateFormat[f]),onChange:(e,t)=>{y(t)}})};class FormDate extends Component{render(){const{$$form:e}=this.context,{type:t,label:a,tooltip:r,fieldName:l,invisible:n,options:i={},labelWidth:o=e.props.labelWidth,className:s,extra:c,validateTrigger:d,rules:u=[],onChange:p=noop$1}=this.props.option;return React__default.createElement(Form.Item,{label:e.renderFormLabel(a),className:classNames(l,s),tooltip:r,hidden:n,labelCol:{flex:e.verticalLayout?"initial":getParserWidth(o)},required:e.getFormItemRequired(u)},React__default.createElement(Row,{wrap:!1,gutter:4},React__default.createElement(Col,{flex:"auto"},React__default.createElement(Form.Item,{name:l,noStyle:!0,rules:u,validateTrigger:d,messageVariables:{label:e.getFormItemLabel(a)}},React__default.createElement(VDatePicker,{option:this.props.option,onValuesChange:(t,a)=>{p(t),e.setViewValue(l,a)}}))),c&&React__default.createElement(Col,{flex:getParserWidth(c.labelWidth||DEFAULT_LABEL_WIDTH)},e.renderFormItemExtra(Object.assign({fieldName:l},c)))))}}FormDate.contextType=FormContext;const disabledDate=(e,t)=>{let[a,r]=t;return a&&r?e.isBefore(a,"day")||e.isAfter(r,"day"):a?e.isBefore(a,"day"):!!r&&e.isAfter(r,"day")},createRange=e=>[dayjs().subtract(e,"day"),dayjs()],ranges={[t("qm.form.dateRangePickers")[0]]:createRange(7),[t("qm.form.dateRangePickers")[1]]:createRange(30),[t("qm.form.dateRangePickers")[2]]:createRange(90),[t("qm.form.dateRangePickers")[3]]:createRange(180)},VRangePicker$1=e=>{const{$$form:a}=React__default.useContext(FormContext),{value:r,onChange:l,onValuesChange:n}=e,{options:i={},style:o={},placeholder:s=t("qm.form.daterangePlaceholder"),bordered:c=!0,allowClear:d=!0,readOnly:u,disabled:p}=e.option,{dateType:f="date",disableds:m=[!1,!1],minDateTime:h,maxDateTime:g,shortCuts:_=!0}=i,y=e=>isEmptyValue(e)?"":e.map((e=>["date","exactdate"].includes(f)?null==e?void 0:e.slice(0,10):e)).join(" - ");return a.isOnlyShow?React__default.createElement(FormItemView,{value:y(r),bordered:c}):React__default.createElement(DatePicker.RangePicker,{style:Object.assign({width:"100%"},o),picker:EDateType[f],bordered:c,showTime:"datetime"===f,allowClear:d,disabled:p?[!0,!0]:m,inputReadOnly:u,disabledDate:e=>disabledDate(e,[h,g]),ranges:_?ranges:void 0,value:isEmpty(r)?null:[getDate$1(null==r?void 0:r[0],EDateFormat[f]),getDate$1(null==r?void 0:r[1],EDateFormat[f])],onChange:(e,t)=>{(e=>{"date"===f&&(e=e.map(((e,t)=>e?0===t?e+" 00:00:00":e+" 23:59:59":e))),e.every((e=>!e))&&(e=[]),null==l||l(e),n(e,y(e))})(t)}})};class FormRangeDate extends Component{render(){const{$$form:e}=this.context,{type:t,label:a,tooltip:r,fieldName:l,invisible:n,options:i={},labelWidth:o=e.props.labelWidth,className:s,extra:c,validateTrigger:d,rules:u=[],onChange:p=noop$1}=this.props.option;return React__default.createElement(Form.Item,{label:e.renderFormLabel(a),className:classNames(l,s),tooltip:r,hidden:n,labelCol:{flex:e.verticalLayout?"initial":getParserWidth(o)},required:e.getFormItemRequired(u)},React__default.createElement(Row,{wrap:!1,gutter:4},React__default.createElement(Col,{flex:"auto"},React__default.createElement(Form.Item,{name:l,noStyle:!0,rules:u,validateTrigger:d,messageVariables:{label:e.getFormItemLabel(a)}},React__default.createElement(VRangePicker$1,{option:this.props.option,onValuesChange:(t,a)=>{p(t),e.setViewValue(l,a)}}))),c&&React__default.createElement(Col,{flex:getParserWidth(c.labelWidth||DEFAULT_LABEL_WIDTH)},e.renderFormItemExtra(Object.assign({fieldName:l},c)))))}}FormRangeDate.contextType=FormContext;const VTimePicker=e=>{const{$$form:a}=React__default.useContext(FormContext),{value:r,onChange:l,onValuesChange:n}=e,{options:i={},style:o={},placeholder:s=t("qm.form.timePlaceholder"),bordered:c=!0,allowClear:d=!0,readOnly:u,disabled:p}=e.option,{timeType:f="hour-minute-second",hourStep:m=1,minuteStep:h=1,secondStep:g=1}=i;return a.isOnlyShow?React__default.createElement(FormItemView,{value:r,bordered:c}):React__default.createElement(TimePicker,{style:Object.assign({width:"100%"},o),bordered:c,showNow:!0,hourStep:m,minuteStep:h,secondStep:g,allowClear:d,disabled:p,inputReadOnly:u,format:ETimeFormat[f],value:getDate$1(r,ETimeFormat[f]),onChange:(e,t)=>{(e=>{const t=formatDate$1(e,ETimeFormat[f]);null==l||l(t),n(t)})(e)}})};class FormTime extends Component{render(){const{$$form:e}=this.context,{type:t,label:a,tooltip:r,fieldName:l,invisible:n,options:i={},labelWidth:o=e.props.labelWidth,className:s,extra:c,validateTrigger:d,rules:u=[],onChange:p=noop$1}=this.props.option;return React__default.createElement(Form.Item,{label:e.renderFormLabel(a),className:classNames(l,s),tooltip:r,hidden:n,labelCol:{flex:e.verticalLayout?"initial":getParserWidth(o)},required:e.getFormItemRequired(u)},React__default.createElement(Row,{wrap:!1,gutter:4},React__default.createElement(Col,{flex:"auto"},React__default.createElement(Form.Item,{name:l,noStyle:!0,rules:u,validateTrigger:d,messageVariables:{label:e.getFormItemLabel(a)}},React__default.createElement(VTimePicker,{option:this.props.option,onValuesChange:t=>{p(t),e.setViewValue(l,t)}}))),c&&React__default.createElement(Col,{flex:getParserWidth(c.labelWidth||DEFAULT_LABEL_WIDTH)},e.renderFormItemExtra(Object.assign({fieldName:l},c)))))}}FormTime.contextType=FormContext;const VRangePicker=e=>{const{$$form:a}=React__default.useContext(FormContext),{value:r,onChange:l,onValuesChange:n}=e,{options:i={},style:o={},placeholder:s=t("qm.form.timerangePlaceholder"),bordered:c=!0,allowClear:d=!0,readOnly:u,disabled:p}=e.option,{timeType:f="hour-minute-second",disableds:m=[!1,!1],hourStep:h=1,minuteStep:g=1,secondStep:_=1}=i,y=e=>isEmptyValue(e)?"":e.join(" - ");return a.isOnlyShow?React__default.createElement(FormItemView,{value:y(r),bordered:c}):React__default.createElement(TimePicker.RangePicker,{style:Object.assign({width:"100%"},o),bordered:c,showNow:!1,hourStep:h,minuteStep:g,secondStep:_,allowClear:d,disabled:p?[!0,!0]:m,inputReadOnly:u,format:ETimeFormat[f],value:isEmpty(r)?null:[getDate$1(null==r?void 0:r[0],ETimeFormat[f]),getDate$1(null==r?void 0:r[1],ETimeFormat[f])],onChange:(e,t)=>{(e=>{const t=[formatDate$1(null==e?void 0:e[0],ETimeFormat[f]),formatDate$1(null==e?void 0:e[1],ETimeFormat[f])];null==l||l(t),n(t,y(t))})(e)}})};class FormRangeTime extends Component{render(){const{$$form:e}=this.context,{type:t,label:a,tooltip:r,fieldName:l,invisible:n,options:i={},labelWidth:o=e.props.labelWidth,className:s,extra:c,validateTrigger:d,rules:u=[],onChange:p=noop$1}=this.props.option;return React__default.createElement(Form.Item,{label:e.renderFormLabel(a),className:classNames(l,s),tooltip:r,hidden:n,labelCol:{flex:e.verticalLayout?"initial":getParserWidth(o)},required:e.getFormItemRequired(u)},React__default.createElement(Row,{wrap:!1,gutter:4},React__default.createElement(Col,{flex:"auto"},React__default.createElement(Form.Item,{name:l,noStyle:!0,rules:u,validateTrigger:d,messageVariables:{label:e.getFormItemLabel(a)}},React__default.createElement(VRangePicker,{option:this.props.option,onValuesChange:(t,a)=>{p(t),e.setViewValue(l,a)}}))),c&&React__default.createElement(Col,{flex:getParserWidth(c.labelWidth||DEFAULT_LABEL_WIDTH)},e.renderFormItemExtra(Object.assign({fieldName:l},c)))))}}FormRangeTime.contextType=FormContext;const UNIHANS=["阿","哎","安","肮","凹","八","挀","扳","邦","勹","陂","奔","伻","屄","边","灬","憋","汃","冫","癶","峬","嚓","偲","参","仓","撡","冊","嵾","曽","叉","芆","辿","伥","抄","车","抻","阷","吃","充","抽","出","欻","揣","巛","刅","吹","旾","逴","呲","匆","凑","粗","汆","崔","邨","搓","咑","呆","丹","当","刀","嘚","扥","灯","氐","甸","刁","爹","丁","丟","东","吺","厾","耑","垖","吨","多","妸","诶","奀","鞥","儿","发","帆","匚","飞","分","丰","覅","仏","紑","夫","旮","侅","甘","冈","皋","戈","给","根","刯","工","勾","估","瓜","乖","关","光","归","丨","呙","哈","咍","佄","夯","茠","诃","黒","拫","亨","噷","叿","齁","乎","花","怀","欢","巟","灰","昏","吙","丌","加","戋","江","艽","阶","巾","坕","冂","丩","凥","姢","噘","军","咔","开","刊","忼","尻","匼","肎","劥","空","抠","扝","夸","蒯","宽","匡","亏","坤","扩","垃","来","兰","啷","捞","肋","勒","崚","哩","俩","奁","良","撩","毟","拎","伶","溜","囖","龙","瞜","噜","驴","娈","掠","抡","罗","呣","妈","埋","嫚","牤","猫","么","呅","门","甿","咪","宀","喵","乜","民","名","谬","摸","哞","毪","嗯","拏","腉","囡","囔","孬","疒","娞","恁","能","妮","拈","娘","鸟","捏","囜","宁","妞","农","羺","奴","女","奻","疟","黁","挪","喔","讴","妑","拍","眅","乓","抛","呸","喷","匉","丕","囨","剽","氕","姘","乒","钋","剖","仆","七","掐","千","呛","悄","癿","亲","靑","卭","丘","区","峑","缺","夋","呥","穣","娆","惹","人","扔","日","茸","厹","邚","挼","堧","婑","瞤","捼","仨","毢","三","桒","掻","閪","森","僧","杀","筛","山","伤","弰","奢","申","升","尸","収","书","刷","衰","闩","双","脽","吮","说","厶","忪","捜","苏","狻","夊","孙","唆","他","囼","坍","汤","夲","忑","熥","剔","天","旫","帖","厅","囲","偷","凸","湍","推","吞","乇","穵","歪","弯","尣","危","昷","翁","挝","乌","夕","虲","仙","乡","灱","些","心","星","凶","休","吁","吅","削","坃","丫","恹","央","幺","倻","一","囙","应","哟","佣","优","扜","囦","曰","晕","帀","災","兂","匨","傮","则","贼","怎","増","扎","捚","沾","张","佋","蜇","贞","争","之","中","州","朱","抓","拽","专","妆","隹","宒","卓","乲","宗","邹","租","钻","厜","尊","昨","兙"],PINYINS=["A","AI","AN","ANG","AO","BA","BAI","BAN","BANG","BAO","BEI","BEN","BENG","BI","BIAN","BIAO","BIE","BIN","BING","BO","BU","CA","CAI","CAN","CANG","CAO","CE","CEN","CENG","CHA","CHAI","CHAN","CHANG","CHAO","CHE","CHEN","CHENG","CHI","CHONG","CHOU","CHU","CHUA","CHUAI","CHUAN","CHUANG","CHUI","CHUN","CHUO","CI","CONG","COU","CU","CUAN","CUI","CUN","CUO","DA","DAI","DAN","DANG","DAO","DE","DEN","DENG","DI","DIAN","DIAO","DIE","DING","DIU","DONG","DOU","DU","DUAN","DUI","DUN","DUO","E","EI","EN","ENG","ER","FA","FAN","FANG","FEI","FEN","FENG","FIAO","FO","FOU","FU","GA","GAI","GAN","GANG","GAO","GE","GEI","GEN","GENG","GONG","GOU","GU","GUA","GUAI","GUAN","GUANG","GUI","GUN","GUO","HA","HAI","HAN","HANG","HAO","HE","HEI","HEN","HENG","HM","HONG","HOU","HU","HUA","HUAI","HUAN","HUANG","HUI","HUN","HUO","JI","JIA","JIAN","JIANG","JIAO","JIE","JIN","JING","JIONG","JIU","JU","JUAN","JUE","JUN","KA","KAI","KAN","KANG","KAO","KE","KEN","KENG","KONG","KOU","KU","KUA","KUAI","KUAN","KUANG","KUI","KUN","KUO","LA","LAI","LAN","LANG","LAO","LE","LEI","LENG","LI","LIA","LIAN","LIANG","LIAO","LIE","LIN","LING","LIU","LO","LONG","LOU","LU","LV","LUAN","LVE","LUN","LUO","M","MA","MAI","MAN","MANG","MAO","ME","MEI","MEN","MENG","MI","MIAN","MIAO","MIE","MIN","MING","MIU","MO","MOU","MU","N","NA","NAI","NAN","NANG","NAO","NE","NEI","NEN","NENG","NI","NIAN","NIANG","NIAO","NIE","NIN","NING","NIU","NONG","NOU","NU","NV","NUAN","NVE","NUN","NUO","O","OU","PA","PAI","PAN","PANG","PAO","PEI","PEN","PENG","PI","PIAN","PIAO","PIE","PIN","PING","PO","POU","PU","QI","QIA","QIAN","QIANG","QIAO","QIE","QIN","QING","QIONG","QIU","QU","QUAN","QUE","QUN","RAN","RANG","RAO","RE","REN","RENG","RI","RONG","ROU","RU","RUA","RUAN","RUI","RUN","RUO","SA","SAI","SAN","SANG","SAO","SE","SEN","SENG","SHA","SHAI","SHAN","SHANG","SHAO","SHE","SHEN","SHENG","SHI","SHOU","SHU","SHUA","SHUAI","SHUAN","SHUANG","SHUI","SHUN","SHUO","SI","SONG","SOU","SU","SUAN","SUI","SUN","SUO","TA","TAI","TAN","TANG","TAO","TE","TENG","TI","TIAN","TIAO","TIE","TING","TONG","TOU","TU","TUAN","TUI","TUN","TUO","WA","WAI","WAN","WANG","WEI","WEN","WENG","WO","WU","XI","XIA","XIAN","XIANG","XIAO","XIE","XIN","XING","XIONG","XIU","XU","XUAN","XUE","XUN","YA","YAN","YANG","YAO","YE","YI","YIN","YING","YO","YONG","YOU","YU","YUAN","YUE","YUN","ZA","ZAI","ZAN","ZANG","ZAO","ZE","ZEI","ZEN","ZENG","ZHA","ZHAI","ZHAN","ZHANG","ZHAO","ZHE","ZHEN","ZHENG","ZHI","ZHONG","ZHOU","ZHU","ZHUA","ZHUAI","ZHUAN","ZHUANG","ZHUI","ZHUN","ZHUO","ZI","ZONG","ZOU","ZU","ZUAN","ZUI","ZUN","ZUO",""],EXCEPTIONS={"曾":"ZENG","沈":"SHEN","嗲":"DIA","碡":"ZHOU","聒":"GUO","炔":"QUE","蚵":"KE","砉":"HUA","嬤":"MO","嬷":"MO","蹒":"PAN","蹊":"XI","丬":"PAN","霰":"XIAN","莘":"XIN","豉":"CHI","饧":"XING","筠":"JUN","长":"CHANG","帧":"ZHEN","峙":"SHI","郍":"NA","芎":"XIONG","谁":"SHUI"};var DICT={PINYINS:PINYINS,UNIHANS:UNIHANS,EXCEPTIONS:EXCEPTIONS};const FIRST_PINYIN_UNIHAN="阿",LAST_PINYIN_UNIHAN="鿿",LATIN=1,PINYIN=2,UNKNOWN=3;let supported=null,COLLATOR;function patchDict(e){e&&("function"==typeof e&&(e=[e]),e.forEach&&e.forEach((e=>{"function"==typeof e&&e(DICT)})))}function isSupported(e){return e||null===supported?("object"==typeof Intl&&Intl.Collator?(COLLATOR=new Intl.Collator(["zh-Hans-CN","zh-CN"]),supported=1===Intl.Collator.supportedLocalesOf(["zh-CN"]).length):supported=!1,supported):supported}function genToken(e){const t=DICT.UNIHANS,a=DICT.PINYINS,r=DICT.EXCEPTIONS,l={source:e};if(e in r)return l.type=PINYIN,l.target=r[e],l;let n,i=-1;if(e.charCodeAt(0)<256)return l.type=LATIN,l.target=e,l;if(n=COLLATOR.compare(e,FIRST_PINYIN_UNIHAN),n<0)return l.type=UNKNOWN,l.target=e,l;if(0===n)l.type=PINYIN,i=0;else{if(n=COLLATOR.compare(e,LAST_PINYIN_UNIHAN),n>0)return l.type=UNKNOWN,l.target=e,l;0===n&&(l.type=PINYIN,i=t.length-1)}if(l.type=PINYIN,i<0){let a=0,r=t.length-1;for(;a<=r;){i=~~((a+r)/2);const l=t[i];if(n=COLLATOR.compare(e,l),0===n)break;n>0?a=i+1:r=i-1}}return n<0&&i--,l.target=a[i],l.target||(l.type=UNKNOWN,l.target=l.source),l}function parse(e){return"string"==typeof e&&isSupported()?e.split("").map((e=>genToken(e))):e}var pinyin={isSupported:isSupported,parse:parse,patchDict:patchDict,genToken:genToken,convertToPinyin:(e,t,a)=>parse(e).map((e=>t&&e.type===PINYIN?e.target.toLowerCase():e.target)).join(a||"")};function patcher(e){e.EXCEPTIONS={"嗲":"DIA","碡":"ZHOU","聒":"GUO","炔":"QUE","蚵":"KE","砉":"HUA","嬷":"MO","蹊":"XI","丬":"PAN","霰":"XIAN","豉":"CHI","饧":"XING","帧":"ZHEN","芎":"XIONG","谁":"SHUI","钶":"KE"},e.UNIHANS[91]="伕",e.UNIHANS[347]="仚",e.UNIHANS[393]="诌",e.UNIHANS[39]="婤",e.UNIHANS[50]="腠",e.UNIHANS[369]="攸",e.UNIHANS[123]="乯",e.UNIHANS[171]="刕",e.UNIHANS[102]="佝",e.UNIHANS[126]="犿",e.UNIHANS[176]="列",e.UNIHANS[178]="刢",e.UNIHANS[252]="娝",e.UNIHANS[330]="偸"}function shouldPatch(e){return"function"==typeof e&&("FOU"===e("伕").target&&"XIA"===e("仚").target&&"ZHONG"===e("诌").target&&"CHONG"===e("婤").target&&"CONG"===e("腠").target&&"YONG"===e("攸").target&&"HOU"===e("乯").target&&"LENG"===e("刕").target&&"GONG"===e("佝").target&&"HUAI"===e("犿").target&&"LIAO"===e("列").target&&"LIN"===e("刢").target&&"E"===e("钶").target)}var patcher56L={patcher:patcher,shouldPatch:shouldPatch};pinyin.isSupported()&&patcher56L.shouldPatch(pinyin.genToken)&&pinyin.patchDict(patcher56L);const{Option:Option}=Select,VSelect=e=>{const{$$form:a}=React__default.useContext(FormContext),{value:r,items:l,multiple:n,loading:i,onChange:o,onValuesChange:s}=e,{options:c={},style:d={},placeholder:u=t("qm.form.selectPlaceholder"),bordered:p=!0,allowClear:f=!0,readOnly:m,disabled:h}=e.option,{itemList:g=[],filterable:_=!0,listHeight:y=DEFAULT_LIST_HEIGHT,collapseTags:v,maxTagTextLength:b,openPyt:R=!0}=c,E=isEmpty(g)?l:g,x=e=>{var t;return n?E.filter((t=>null==e?void 0:e.includes(t.value))).map((e=>e.text)).join(","):(null===(t=E.find((t=>t.value===e)))||void 0===t?void 0:t.text)||""};return a.isOnlyShow?React__default.createElement(FormItemView,{value:x(r),bordered:p}):React__default.createElement(Select,_extends$1({value:r,mode:n?"multiple":void 0,placeholder:u,style:d,loading:i,bordered:p,allowClear:f,disabled:h,showSearch:_,listHeight:y,maxTagCount:v?"responsive":void 0,maxTagTextLength:b},n?{title:x(r)}:null,{filterOption:(e,t)=>{var a;const r=(null===(a=null==t?void 0:t.children)||void 0===a?void 0:a.toString())||"",l=pinyin.parse(r).map((e=>2===e.type?e.target.toLowerCase().slice(0,1):e.target)).join("");return(R?`${r}|${l}`:r).toLowerCase().indexOf(e.toLowerCase())>=0},onChange:e=>{(e=>{null==o||o(e),s(e,x(e),E)})(e)}}),E.map((e=>React__default.createElement(Option,{key:e.value,value:e.value,disabled:e.disabled},e.text))))};class FormSelect extends Component{constructor(){super(...arguments),this.state={itemList:[],loading:!1},this.getItemList=()=>__awaiter(this,void 0,void 0,(function*(){var e;const{request:t={}}=this.props.option,{fetchApi:a,params:r={},dataKey:l,valueKey:n="value",textKey:i="text",callback:o}=t;if(a){this.setState({loading:!0});try{const t=yield a(r);if(200===t.code){const a=Array.isArray(t.data)?t.data:null!==(e=get(t.data,l))&&void 0!==e?e:[],r=a.map((e=>({value:e[n],text:e[i]})));this.setState({itemList:r},(()=>null==o?void 0:o(a)))}}catch(e){}this.setState({loading:!1})}}))}componentDidMount(){this.getItemList()}componentWillUnmount(){this.setState=()=>!1}componentDidUpdate(e){var t,a;const r=null===(t=e.option.request)||void 0===t?void 0:t.params,l=null===(a=this.props.option.request)||void 0===a?void 0:a.params;isEqual$1(r,l)||this.getItemList()}render(){const{$$form:e}=this.context,{itemList:t,loading:a}=this.state,{type:r,label:l,tooltip:n,fieldName:i,invisible:o,options:s={},labelWidth:c=e.props.labelWidth,className:d,extra:u,buttonAfter:p,validateTrigger:f,rules:m=[],onChange:h=noop$1}=this.props.option;return React__default.createElement(Form.Item,{label:e.renderFormLabel(l),className:classNames(i,d),tooltip:n,hidden:o,labelCol:{flex:e.verticalLayout?"initial":getParserWidth(c)},required:e.getFormItemRequired(m)},React__default.createElement(Row,{wrap:!1,gutter:4},React__default.createElement(Col,{flex:"auto"},React__default.createElement(Form.Item,{name:i,noStyle:!0,rules:m,validateTrigger:f,messageVariables:{label:e.getFormItemLabel(l)}},React__default.createElement(VSelect,{option:this.props.option,items:t,loading:a,multiple:this.props.multiple,onValuesChange:(t,a,r)=>{h(t,a,r),e.setViewValue(i,a)}}))),p&&React__default.createElement(Col,null,e.renderFormItemButton(i,p)),u&&React__default.createElement(Col,{flex:getParserWidth(u.labelWidth||DEFAULT_LABEL_WIDTH)},e.renderFormItemExtra(Object.assign({fieldName:i},u)))))}}FormSelect.contextType=FormContext;class VImmediate extends Component{constructor(e){super(e),this.prevValue="",this.searchRef=React__default.createRef(),this.state={itemList:[],visible:!1,loading:!1,activeIndex:0},this.initialHandle=()=>__awaiter(this,void 0,void 0,(function*(){yield this.props.waiting();const{helperConfig:e}=this.props,{fieldName:t,options:a,searchHelper:r}=this.props.option;this.searchHelper=Object.assign({},e,a,r);const{fieldAliasMap:l,extraAliasMap:n,fieldsDefine:i}=this.searchHelper;if(l||warn("Form","IMMEDIATE 需要配置 `fieldAliasMap` 选项"),this.alias="function"==typeof l?l():l||{},this.extras="function"==typeof n?n():n||{},i){const e=["valueKey","displayKey","extraKey"];for(const t in i)e.includes(t)&&(this[t]=i[t])}Object.keys(this.alias).includes(t)||warn("Form","IMMEDIATE 的 fieldAliasMap 选项必须包含自身 `fieldName` 值"),this.searchHelper.echoRequest&&!this.valueKey&&warn("Form","IMMEDIATE 的 echoRequest 选项必须组合 `fieldsDefine` 中的 `valueKey` 一起使用")})),this.getItemValue=()=>{const{$$form:e}=this.context;return e.state.other[this.valueKey]},this.getLatestRequest=()=>{var e;const{request:t,searchHelper:a}=this.props.option;return Object.assign({},null===(e=this.searchHelper)||void 0===e?void 0:e.request,t,null==a?void 0:a.request)},this.getItemText=()=>__awaiter(this,void 0,void 0,(function*(){var e;yield this.props.waiting();const t=this.getItemValue();if(t===this._prevValue)return;this._prevValue=t;const{fetchApi:a,params:r={},formatter:l=(e=>e),dataKey:n,fieldAliasMap:i,extraAliasMap:o}=this.searchHelper.echoRequest||{},s="function"==typeof i?i():i||{},c="function"==typeof o?o():o||{},{value:d}=this.props;if(a&&!d&&t)try{const i=yield a(l(Object.assign(Object.assign({},r),{key:t})));if(200===i.code){const t=Array.isArray(i.data)?i.data:null!==(e=get(i.data,n))&&void 0!==e?e:[];if(t[0]){const e=t[0];s&&setEchoRecord(e,this.alias,s),c&&setEchoExtras(e,this.extras,c),this._record=e,this.setFieldsValue(e)}}}catch(e){}})),this.setFieldsValue=e=>{var t;const{$$form:a}=this.context,{fieldName:r}=this.props.option;for(const t in this.alias){const l=getSplitValue$1(e,this.alias[t]);a.SET_FIELDS_VALUE({[t]:l}),t===r&&a.setViewValue(r,l)}for(const t in this.extras)a.SET_FIELDS_EXTRA({[t]:getSplitValue$1(e,this.extras[t])});this._record=e,this.prevValue=null!==(t=getSplitValue$1(e,this.alias[r]))&&void 0!==t?t:""},this.fetchHandle=debounce(this.getItemList,200),this.handleVisibleChange=e=>{this.setState({visible:e})},this.triggerChange=(e,t)=>{const{onChange:a,onValuesChange:r}=this.props;null==a||a(e),t&&r(e,this._record)},this.triggerBlur=e=>{const{onBlur:t}=this.props;null==t||t(e)},this.clickHandle=(e,t)=>{const{$$form:a}=this.context,{fieldName:r}=this.props.option;for(const t in this.alias)t!==r&&a.SET_FIELDS_VALUE({[t]:getSplitValue$1(e,this.alias[t])});for(const t in this.extras)a.SET_FIELDS_EXTRA({[t]:getSplitValue$1(e,this.extras[t])});this.searchRef.current.focus({cursor:"end"}),this._record=e;const l=getSplitValue$1(e,this.alias[r]);this.prevValue=null!=l?l:"",this.triggerChange(l,!0),t&&t()},this.initialHandle()}componentDidMount(){this.getItemText()}componentDidUpdate(e){var t,a,r,l,n,i;const o=(null===(a=null===(t=e.option.searchHelper)||void 0===t?void 0:t.request)||void 0===a?void 0:a.params)||(null===(r=e.option.request)||void 0===r?void 0:r.params),s=(null===(n=null===(l=this.props.option.searchHelper)||void 0===l?void 0:l.request)||void 0===n?void 0:n.params)||(null===(i=this.props.option.request)||void 0===i?void 0:i.params);isEqual$1(o,s)||this.getItemList(),this.getItemText()}getItemList(e){var t;return __awaiter(this,void 0,void 0,(function*(){const{fieldName:a}=this.props.option,{fetchApi:r,params:l={},formatter:n=(e=>e),dataKey:i}=this.getLatestRequest();if(r){this.setState({loading:!0});try{const o=yield r(n(Object.assign(Object.assign({},l),{[a]:e})));if(200===o.code){const e=Array.isArray(o.data)?o.data:null!==(t=get(o.data,i))&&void 0!==t?t:[];this.setState({itemList:e,activeIndex:0})}}catch(e){}this.setState({loading:!1})}}))}render(){var e;const{$$form:a}=this.context,{visible:r,loading:l,itemList:n}=this.state,{value:i}=this.props,{options:o={},style:s={},placeholder:c=t("qm.form.inputPlaceholder"),bordered:d=!0,allowClear:u=!0,readOnly:p,disabled:f}=this.props.option,{hideHeader:m,onlySelect:h=!0,listHeight:g=DEFAULT_LIST_HEIGHT}=o,_=(null===(e=this.searchHelper)||void 0===e?void 0:e.columns)||[],y=getPrefixCls("form-immediate"),v=this.searchRef.current?this.searchRef.current.input.parentNode.offsetWidth:300,b=React__default.createElement(Spin,{spinning:l},n.length?React__default.createElement("table",{cellSpacing:0,cellPadding:0,className:classNames("table")},!m&&React__default.createElement("thead",null,React__default.createElement("tr",null,_.filter((e=>!e.hidden)).map((e=>React__default.createElement("th",{key:e.dataIndex,style:{width:`${e.width}px`,backgroundColor:"#f0f0f0"}},e.title))))),React__default.createElement("tbody",null,n.map(((e,t)=>React__default.createElement("tr",{key:t,className:this.state.activeIndex===t?"active":"",onMouseEnter:()=>{this.setState({activeIndex:t})},onClick:()=>{this.clickHandle(e,(()=>this.handleVisibleChange(!1)))}},_.filter((e=>!e.hidden)).map((t=>React__default.createElement("td",{key:t.dataIndex},get(e,t.dataIndex))))))))):React__default.createElement(QmEmpty,null));return React__default.createElement(ConfigContext.Consumer,null,(e=>{const t={[y]:!0,[`${y}--lg`]:"large"===(null==e?void 0:e.size),[`${y}--sm`]:"small"===(null==e?void 0:e.size)};return a.isOnlyShow?React__default.createElement(FormItemView,{value:i,bordered:d}):React__default.createElement(Trigger,{action:f?[]:["click"],popupVisible:!f&&r,popup:b,popupClassName:classNames(t),popupStyle:{minWidth:v,maxHeight:g},onPopupVisibleChange:this.handleVisibleChange,builtinPlacements:BUILT_IN_PLACEMENTS$1,prefixCls:"ant-select-dropdown",popupPlacement:"bottomLeft",popupTransitionName:"ant-slide-up"},React__default.createElement(Input,{ref:this.searchRef,placeholder:c,allowClear:u,bordered:d,readOnly:p,disabled:f,style:Object.assign({width:"100%"},s),value:i,title:i,onFocus:()=>{!n.length&&this.fetchHandle(i)},onBlur:e=>{const{value:t}=e.target;h&&t!==this.prevValue&&this.triggerChange(this.prevValue,!1),this.triggerBlur(t)},onKeyUp:e=>{if(27===e.keyCode&&this.handleVisibleChange(!1),13===e.keyCode&&this.clickHandle(n[this.state.activeIndex],(()=>this.handleVisibleChange(!1))),38===e.keyCode||40===e.keyCode){if(!this.state.visible)return this.handleVisibleChange(!0);let t=this.state.activeIndex;const a=40===e.keyCode?++t%n.length:(--t+n.length)%n.length;this.setState({activeIndex:a})}},onChange:e=>{const{value:t}=e.target;this.fetchHandle(t),t?(this.handleVisibleChange(!0),this.triggerChange(t,!h)):this.clickHandle(null)}}))}))}}VImmediate.contextType=FormContext;class FormImmediate extends Component{constructor(e,t){let{$$form:a}=t;super(e),this.state={searchHelper:{}},this.waiting=()=>__awaiter(this,void 0,void 0,(function*(){try{yield this.promiseRef}catch(e){throwError("Form","搜索帮助获取定义信息的接口出错")}})),this.getHelperConfig=e=>{var t,a;const{global:r}=e,{name:l,fieldsDefine:n}=this.props.option.searchHelper||{};if(!l)return;if(!(null===(t=null==r?void 0:r.searchHelper)||void 0===t?void 0:t.getServerConfig)||!(null===(a=null==r?void 0:r.searchHelper)||void 0===a?void 0:a.createFetchApi))return warn("immediate","从服务端获取定义信息的时候,ConfigProvider 组件 `getServerConfig` 和 `createFetchApi` 为必选参数");const{fieldName:i}=this.props.option;this.promiseRef=new Promise(((e,t)=>__awaiter(this,void 0,void 0,(function*(){try{const a=yield r.searchHelper.getServerConfig({searchHelperId:l});if(200===a.code){const t=createShConfig(Object.assign({},a.data,n),i,r.searchHelper.createFetchApi);this.setState({searchHelper:t},(()=>e()))}else t()}catch(e){t()}}))))},this.getHelperConfig(a.context)}render(){const{$$form:e}=this.context,{searchHelper:t}=this.state,{type:a,label:r,tooltip:l,fieldName:n,invisible:i,options:o={},labelWidth:s=e.props.labelWidth,className:c,extra:d,buttonAfter:u,validateTrigger:p,rules:f=[],onChange:m=noop$1}=this.props.option;return React__default.createElement(Form.Item,{label:e.renderFormLabel(r),className:classNames(n,c),tooltip:l,hidden:i,labelCol:{flex:e.verticalLayout?"initial":getParserWidth(s)},required:e.getFormItemRequired(f)},React__default.createElement(Row,{wrap:!1,gutter:4},React__default.createElement(Col,{flex:"auto"},React__default.createElement(Form.Item,{name:n,noStyle:!0,rules:f,validateTrigger:p,messageVariables:{label:e.getFormItemLabel(r)}},React__default.createElement(VImmediate,{option:this.props.option,helperConfig:t,waiting:this.waiting,onValuesChange:function(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"",a=arguments.length>1?arguments[1]:void 0;m(t,a),e.setViewValue(n,t)}}))),u&&React__default.createElement(Col,null,e.renderFormItemButton(n,u)),d&&React__default.createElement(Col,{flex:getParserWidth(d.labelWidth||DEFAULT_LABEL_WIDTH)},e.renderFormItemExtra(Object.assign({fieldName:n},d)))))}}FormImmediate.contextType=FormContext;class FormDivider extends Component{render(){var e;const{$$form:t}=this.context,{type:a,label:r,fieldName:l,className:n,style:i={},collapse:o={}}=this.props.option,{expand:s}=t.state,{showLimit:c,remarkItems:d=[],onCollapse:u=noop$1}=o,p=[];if(d.length){const a=null!==(e=t.getBlockDerivedItems().find((e=>e[0].fieldName===l)))&&void 0!==e?e:[],r=null!=c?c:a.length-1;a.slice(r+1).forEach((e=>{var a;const r=d.find((t=>t.fieldName===e.fieldName));if(!r)return;const l=r.showLabel?`${e.label}:`:"",n=null!==(a=t.getViewValue(e.fieldName))&&void 0!==a?a:"";""!==n&&p.push(Object.assign(Object.assign({},e),{text:`${l}${n}`}))}))}return React__default.createElement(Form.Item,{labelCol:{span:0},wrapperCol:{span:24}},React__default.createElement(QmDivider,{id:l,label:r,className:n,extra:p.map((e=>e.text)).join(" | "),style:Object.assign({},i),collapse:s[l],onCollapseChange:e=>{t.setState((t=>({expand:Object.assign({},t.expand,{[l]:e})}))),u(e)}}))}}FormDivider.contextType=FormContext;const updateTreeData$1=(e,t,a,r)=>e.map((e=>e[a]===t?Object.assign(Object.assign({},e),{children:r}):e.children?Object.assign(Object.assign({},e),{children:updateTreeData$1(e.children,t,a,r)}):e)),VTreeSelect=e=>{const{$$form:a}=React__default.useContext(FormContext),{value:r,items:l,multiple:n,loading:i,onChange:o,onValuesChange:s}=e,{options:c={},style:d={},placeholder:u=t("qm.form.selectPlaceholder"),bordered:p=!0,allowClear:f=!0,asyncLoad:m,readOnly:h,disabled:g}=e.option,{itemList:_,filterable:y=!0,listHeight:v=DEFAULT_LIST_HEIGHT,checkStrictly:b,checkStrategy:R="SHOW_CHILD",collapseTags:E,openPyt:x=!0}=c,[C,T]=React__default.useState(isEmpty(_)?l:_);useUpdateEffect((()=>{T(isEmpty(_)?l:_)}),[_,l]);const S=e=>{var t;return(null===(t=deepFind$1(C,e))||void 0===t?void 0:t.text)||""},w=e=>n?e.map((e=>S(e))).filter((e=>!!e)).join(","):S(e);return a.isOnlyShow?React__default.createElement(FormItemView,{value:w(r),bordered:p}):React__default.createElement(TreeSelect,_extends$1({fieldNames:{label:"text",value:"value",children:"children"},value:r,multiple:n,treeCheckable:n,treeCheckStrictly:b,showCheckedStrategy:TreeSelect[R],placeholder:u,listHeight:v,style:d,loading:i,bordered:p,allowClear:f,disabled:g,treeDefaultExpandAll:!m,showSearch:y,maxTagCount:E?"responsive":void 0,loadData:m?e=>{let{key:t,children:a}=e;return __awaiter(void 0,void 0,void 0,(function*(){var e;if(!m||a)return;const{fetchApi:r,params:l,dataKey:n,textKey:i="text",valueKey:o="value",callback:s,formatter:c=(e=>e)}=m;if(r)try{const a=yield r(c(Object.assign(Object.assign({},l),{[o]:t})));if(200===a.code){const r=Array.isArray(a.data)?a.data:null!==(e=get(a.data,n))&&void 0!==e?e:[],l=updateTreeData$1(C,t,o,deepMapList(r,o,i));T(l),null==s||s(r)}}catch(e){}}))}:void 0,treeData:C},n?{title:w(r)}:null,{filterTreeNode:(e,t)=>{var a;const r=(null===(a=null==t?void 0:t.text)||void 0===a?void 0:a.toString())||"",l=pinyin.parse(r).map((e=>2===e.type?e.target.toLowerCase().slice(0,1):e.target)).join("");return(x?`${r}|${l}`:r).toLowerCase().indexOf(e.toLowerCase())>=0},onChange:e=>{(e=>{null==o||o(e),s(e,w(e),C)})(e)}}))};class FormTreeSelect extends Component{constructor(){super(...arguments),this.state={itemList:[],loading:!1},this.getItemList=()=>__awaiter(this,void 0,void 0,(function*(){var e;const{request:t={}}=this.props.option,{fetchApi:a,params:r={},dataKey:l,valueKey:n="value",textKey:i="text",callback:o}=t;if(a){this.setState({loading:!0});try{const t=yield a(r);if(200===t.code){const a=Array.isArray(t.data)?t.data:null!==(e=get(t.data,l))&&void 0!==e?e:[],r=deepMapList(a,n,i);this.setState({itemList:r},(()=>null==o?void 0:o(a)))}}catch(e){}this.setState({loading:!1})}}))}componentDidMount(){this.getItemList()}componentWillUnmount(){this.setState=()=>!1}componentDidUpdate(e){var t,a;const r=null===(t=e.option.request)||void 0===t?void 0:t.params,l=null===(a=this.props.option.request)||void 0===a?void 0:a.params;isEqual$1(r,l)||this.getItemList()}render(){const{$$form:e}=this.context,{itemList:t,loading:a}=this.state,{type:r,label:l,tooltip:n,fieldName:i,invisible:o,options:s={},labelWidth:c=e.props.labelWidth,className:d,extra:u,validateTrigger:p,rules:f=[],onChange:m=noop$1}=this.props.option;return React__default.createElement(Form.Item,{label:e.renderFormLabel(l),className:classNames(i,d),tooltip:n,hidden:o,labelCol:{flex:e.verticalLayout?"initial":getParserWidth(c)},required:e.getFormItemRequired(f)},React__default.createElement(Row,{wrap:!1,gutter:4},React__default.createElement(Col,{flex:"auto"},React__default.createElement(Form.Item,{name:i,noStyle:!0,rules:f,validateTrigger:p,messageVariables:{label:e.getFormItemLabel(l)}},React__default.createElement(VTreeSelect,{option:this.props.option,items:t,loading:a,multiple:this.props.multiple,onValuesChange:(t,a,r)=>{m(t,a,r),e.setViewValue(i,a)}}))),u&&React__default.createElement(Col,{flex:getParserWidth(u.labelWidth||DEFAULT_LABEL_WIDTH)},e.renderFormItemExtra(Object.assign({fieldName:i},u)))))}}FormTreeSelect.contextType=FormContext;const VCascader=e=>{const{$$form:a}=React__default.useContext(FormContext),{value:r,multiple:l,items:n}=e,{options:i={},style:o={},placeholder:s=t("qm.form.selectPlaceholder"),bordered:c=!0,allowClear:d=!0,readOnly:u,disabled:p}=e.option,{changeOnSelect:f,checkStrictly:m,checkStrategy:h="SHOW_PARENT",filterable:g=!0,openPyt:_=!0}=i,{itemList:y=[]}=i,v=isEmpty(y)?n:y,b=e=>isEmpty(e)?"":l?e.map((e=>deepFindValues(v,e).map((e=>e.text)).join("/"))).join(","):deepFindValues(v,e).map((e=>e.text)).join("/");return a.isOnlyShow?React__default.createElement(FormItemView,{value:b(r),bordered:c}):React__default.createElement(Cascader,_extends$1({value:(e=>isEmpty(e)?[]:l?e.map((e=>e.split(","))):e.split(","))(r),fieldNames:{label:"text",value:"value",children:"children"},options:v,multiple:l,maxTagCount:"responsive",changeOnSelect:f||m,showCheckedStrategy:Cascader[h],placeholder:s,style:o,bordered:c,allowClear:d,disabled:p,showSearch:g&&{filter:(e,t)=>t.some((t=>{var a;const r=(null===(a=null==t?void 0:t.text)||void 0===a?void 0:a.toString())||"",l=pinyin.parse(r).map((e=>2===e.type?e.target.toLowerCase().slice(0,1):e.target)).join("");return(_?`${r}|${l}`:r).toLowerCase().indexOf(e.toLowerCase())>=0}))}},l?{title:b(r)}:null,{onChange:t=>{(t=>{const{onChange:a,onValuesChange:r}=e;null==a||a(t),r(t,b(t),v)})(function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];return l?e.map((e=>e.join(","))):e.join(",")}(t))}}))};class FormCascader extends Component{constructor(){super(...arguments),this.state={itemList:[],loading:!1},this.getItemList=()=>__awaiter(this,void 0,void 0,(function*(){var e;const{request:t={}}=this.props.option,{fetchApi:a,params:r={},dataKey:l,valueKey:n="value",textKey:i="text",callback:o}=t;if(a){this.setState({loading:!0});try{const t=yield a(r);if(200===t.code){const a=Array.isArray(t.data)?t.data:null!==(e=get(t.data,l))&&void 0!==e?e:[],r=deepMapList(a,n,i);this.setState({itemList:r},(()=>null==o?void 0:o(a)))}}catch(e){}this.setState({loading:!1})}}))}componentDidMount(){this.getItemList()}componentWillUnmount(){this.setState=()=>!1}componentDidUpdate(e){var t,a;const r=null===(t=e.option.request)||void 0===t?void 0:t.params,l=null===(a=this.props.option.request)||void 0===a?void 0:a.params;isEqual$1(r,l)||this.getItemList()}render(){const{$$form:e}=this.context,{multiple:t}=this.props,{itemList:a}=this.state,{type:r,label:l,tooltip:n,fieldName:i,invisible:o,options:s={},labelWidth:c=e.props.labelWidth,className:d,extra:u,validateTrigger:p,rules:f=[],onChange:m=noop$1}=this.props.option;return React__default.createElement(Form.Item,{label:e.renderFormLabel(l),className:classNames(i,d),tooltip:n,hidden:o,labelCol:{flex:e.verticalLayout?"initial":getParserWidth(c)},required:e.getFormItemRequired(f)},React__default.createElement(Row,{wrap:!1,gutter:4},React__default.createElement(Col,{flex:"auto"},React__default.createElement(Form.Item,{name:i,noStyle:!0,rules:f,validateTrigger:p,messageVariables:{label:e.getFormItemLabel(l)}},React__default.createElement(VCascader,{option:this.props.option,multiple:t,items:a,onValuesChange:(t,a,r)=>{m(t,a,r),e.setViewValue(i,a)}}))),u&&React__default.createElement(Col,{flex:getParserWidth(u.labelWidth||DEFAULT_LABEL_WIDTH)},e.renderFormItemExtra(Object.assign({fieldName:i},u)))))}}FormCascader.contextType=FormContext;const zxsCodes=["110000","120000","310000","500000"],gaCodes=["810000","820000"],provinceLetter=[{text:"A",value:"A"},{text:"F",value:"F"},{text:"G",value:"G"},{text:"H",value:"H"},{text:"J",value:"J"},{text:"L",value:"L"},{text:"N",value:"N"},{text:"Q",value:"Q"},{text:"S",value:"S"},{text:"T",value:"T"},{text:"X",value:"X"},{text:"Y",value:"Y"},{text:"Z",value:"Z"},{text:"直辖市",value:"Z1"},{text:"港澳",value:"Z2"}],cityLetter=[{text:"A",value:"A"},{text:"B",value:"B"},{text:"C",value:"C"},{text:"D",value:"D"},{text:"E",value:"E"},{text:"F",value:"F"},{text:"G",value:"G"},{text:"H",value:"H"},{text:"J",value:"J"},{text:"K",value:"K"},{text:"L",value:"L"},{text:"M",value:"M"},{text:"N",value:"N"},{text:"P",value:"P"},{text:"Q",value:"Q"},{text:"R",value:"R"},{text:"S",value:"S"},{text:"T",value:"T"},{text:"W",value:"W"},{text:"X",value:"X"},{text:"Y",value:"Y"},{text:"Z",value:"Z"},{text:"直辖市",value:"Z1"},{text:"港澳",value:"Z2"}],createPyt=e=>pinyin.parse(e).map((e=>2===e.type?e.target.toLowerCase().slice(0,1):e.target)).join(""),formatChinaData$1=function(e,t){let a=arguments.length>2&&void 0!==arguments[2]?arguments[2]:1;if(a>2||!e[t])return;const r="86"===t?Object.keys(e[t]).filter((e=>![...zxsCodes,...gaCodes].includes(e))):Object.keys(e[t]);return r.map((r=>({l:createPyt(e[t][r].slice(0,1)).toUpperCase(),n:e[t][r],c:r,p:t,children:formatChinaData$1(e,r,a+1)})))},createOtherData=(e,t)=>t.map((t=>({l:createPyt(e[86][t].slice(0,1)).toUpperCase(),n:e[86][t],c:t,p:"86",children:void 0})));class VCitySelect extends Component{constructor(e){super(e),this.searchRef=React__default.createRef(),this.scrollRef=React__default.createRef(),this.state={visible:!1,select_type:"0",active_key:""},this.handleVisibleChange=e=>{this.setState({visible:e})},this.triggerChange=e=>{const{onChange:t,onValuesChange:a}=this.props;null==t||t(e),a(e,this.createTextValue(e)),this.handleVisibleChange(!1)},this.zxsAndGa=this.createZxsAndGa(),this.provinces=this.createProvince(),this.allCities=this.createAllCity(),this.letterCities=this.createCity()}componentDidMount(){this.setInputReadonly()}setInputReadonly(){var e;null===(e=this.searchRef.current)||void 0===e||e.input.setAttribute("readonly","readonly")}scrollHandle(e){this.setState({active_key:e}),scrollIntoView(this[`${e}Ref`],{block:"start",behavior:"smooth",boundary:this.scrollRef.current})}clickHadnle(e){this.triggerChange(e)}createTextValue(e){var t;return(null===(t=this.allCities.find((t=>t.c===e)))||void 0===t?void 0:t.n)||""}createZxsAndGa(){return[{l:"Z1",n:"直辖市",c:"",p:"",children:createOtherData(chinaData,zxsCodes)},{l:"Z2",n:"港澳",c:"",p:"",children:createOtherData(chinaData,gaCodes)}]}createProvince(){var e;return(null!==(e=formatChinaData$1(chinaData,"86"))&&void 0!==e?e:[]).concat(this.zxsAndGa)}createAllCity(){const e=[];return this.provinces.forEach((t=>e.push(...t.children))),e}createCity(){return cityLetter.filter((e=>"Z1"!==e.value&&"Z2"!==e.value)).map((e=>({l:e.value,n:e.text,c:"",p:"",children:this.allCities.filter((e=>![...zxsCodes,...gaCodes].includes(e.c))).filter((t=>t.l===e.value))}))).concat(this.zxsAndGa)}renderType(){const{select_type:e}=this.state;return React__default.createElement(Radio.Group,{size:"small",buttonStyle:"solid",value:e,onChange:e=>{const{value:t}=e.target;this.setState({select_type:t,active_key:""},(()=>{this.scrollRef.current.scrollTop=0}))}},React__default.createElement(Radio.Button,{value:"0"},t("qm.form.citySelectType.0")),React__default.createElement(Radio.Button,{value:"1"},t("qm.form.citySelectType.1")))}renderLetter(){const{active_key:e,select_type:t}=this.state;return("0"===t?provinceLetter:cityLetter).map((t=>React__default.createElement("li",{key:t.value,className:classNames({tag:!0,actived:t.value===e}),onClick:()=>this.scrollHandle(t.value.toString())},t.text)))}renderSelect(){const{value:e}=this.props;return React__default.createElement(Select,{size:"small",placeholder:t("qm.form.selectPlaceholder"),style:{width:"200px"},showSearch:!0,filterOption:(e,t)=>{var a;return((null===(a=null==t?void 0:t.children)||void 0===a?void 0:a.toString())||"").toLowerCase().indexOf(e.toLowerCase())>=0},value:e||void 0,onChange:e=>{this.triggerChange(e)}},this.allCities.map((e=>React__default.createElement(Select.Option,{key:e.c,value:e.c},e.n))))}renderCity(e){const{select_type:t}=this.state;return("0"===t?this.provinces:this.letterCities).map(((t,a)=>{var r;return React__default.createElement("div",{key:a},React__default.createElement("dt",{ref:e=>this[`${t.l}Ref`]=e},t.n,":"),React__default.createElement("dd",null,null===(r=t.children)||void 0===r?void 0:r.map((t=>React__default.createElement("li",{key:t.c,className:classNames({actived:t.c===e}),onClick:()=>this.clickHadnle(t.c)},t.n)))))}))}render(){const{$$form:e}=this.context,{visible:a}=this.state,{value:r}=this.props,{options:l={},style:n={},placeholder:i=t("qm.form.selectPlaceholder"),bordered:o=!0,allowClear:s=!0,readOnly:c,disabled:d}=this.props.option,u=getPrefixCls("form-city-select"),p=this.searchRef.current?this.searchRef.current.input.parentNode.offsetWidth:300,f=this.createTextValue(r),m=React__default.createElement("div",{className:"container",style:Object.assign({},n)},React__default.createElement("div",{className:"city-drop"},React__default.createElement("div",{className:"city-drop-toper"},React__default.createElement("div",{className:"city-drop-toper__type"},this.renderType()),React__default.createElement("div",{className:"city-drop-toper__search"},this.renderSelect())),React__default.createElement("div",{className:"city-drop-letter"},this.renderLetter()),React__default.createElement("div",{ref:this.scrollRef,className:"city-drop-list"},React__default.createElement("dl",null,this.renderCity(r)))));return React__default.createElement(ConfigContext.Consumer,null,(t=>{const r={[u]:!0,[`${u}--lg`]:"large"===(null==t?void 0:t.size),[`${u}--sm`]:"small"===(null==t?void 0:t.size)};return e.isOnlyShow?React__default.createElement(FormItemView,{value:f,bordered:o}):React__default.createElement(Trigger,{action:d?[]:["click"],popupVisible:!d&&a,popup:m,popupClassName:classNames(r),popupStyle:{minWidth:p},onPopupVisibleChange:this.handleVisibleChange,builtinPlacements:BUILT_IN_PLACEMENTS$1,prefixCls:"ant-select-dropdown",popupPlacement:"bottomLeft",popupTransitionName:"ant-slide-up"},React__default.createElement(Input,{ref:this.searchRef,placeholder:i,allowClear:s,bordered:o,readOnly:c,disabled:d,style:Object.assign({width:"100%"},n),value:f,title:f,onChange:e=>{const{value:t}=e.target;this.triggerChange(t)}}))}))}}VCitySelect.contextType=FormContext;class FormCitySelect extends Component{render(){const{$$form:e}=this.context,{type:t,label:a,tooltip:r,fieldName:l,invisible:n,options:i={},labelWidth:o=e.props.labelWidth,className:s,extra:c,validateTrigger:d,rules:u=[],onChange:p=noop$1}=this.props.option;return React__default.createElement(Form.Item,{label:e.renderFormLabel(a),className:classNames(l,s),tooltip:r,hidden:n,labelCol:{flex:e.verticalLayout?"initial":getParserWidth(o)},required:e.getFormItemRequired(u)},React__default.createElement(Row,{wrap:!1,gutter:4},React__default.createElement(Col,{flex:"auto"},React__default.createElement(Form.Item,{name:l,noStyle:!0,rules:u,validateTrigger:d,messageVariables:{label:e.getFormItemLabel(a)}},React__default.createElement(VCitySelect,{option:this.props.option,onValuesChange:(t,a)=>{p(t),e.setViewValue(l,a)}}))),c&&React__default.createElement(Col,{flex:getParserWidth(c.labelWidth||DEFAULT_LABEL_WIDTH)},e.renderFormItemExtra(Object.assign({fieldName:l},c)))))}}FormCitySelect.contextType=FormContext;const formatChinaData=(e,t)=>{if(e[t])return Object.keys(e[t]).map((a=>({text:e[t][a],value:a,children:formatChinaData(e,a)})))},isGA=e=>["810000","820000"].includes(e[0]),LEAVE_THREE=3,LEAVE_FOUR=4;class VRegionSelect extends Component{constructor(e){super(e),this.searchRef=React__default.createRef(),this.handleVisibleChange=e=>{this.setState({visible:e})},this.triggerChange=e=>{const{onChange:t,onValuesChange:a}=this.props;null==t||t(e),a(e,this.createTextValue(e)),this.handleVisibleChange(!1)};const t=formatChinaData(chinaData,"86")||[];this.state={results:t,visible:!1,values:[],tabs:[t.map((e=>({text:e.text,value:e.value})))],activeName:"0"}}componentDidMount(){this.initial(),this.setInputReadonly()}componentDidUpdate(e){const{value:t}=e,{value:a}=this.props;t!==a&&this.state.values.join(",")!==(null!=a?a:"")&&this.initial()}get isFetch(){var e;return!!(null===(e=this.props.option.request)||void 0===e?void 0:e.fetchApi)}get leave(){return this.isFetch?LEAVE_FOUR:LEAVE_THREE}setInputReadonly(){var e;null===(e=this.searchRef.current)||void 0===e||e.input.setAttribute("readonly","readonly")}createTextValue(e){return(e?e.split(","):[]).map(((e,t)=>{var a,r;return null===(r=null===(a=this.state.tabs[t])||void 0===a?void 0:a.find((t=>t.value===e)))||void 0===r?void 0:r.text})).join("/")}initial(){const{value:e}=this.props,t=e?e.split(","):[];this.setState({values:t},(()=>{this.createTabs(),this.createActiveName(t.length?t.length-1:0)}))}createActiveName(e){this.setState({activeName:e.toString()})}createTabs(){const{results:e,values:t}=this.state;if(!e.length)return;const a=this.state.tabs.slice(0,1);for(let r=0;r<t.length;r++){const l=deepFind$1(e,t[r]);if(l&&isEmpty(l.children)){this.isFetch&&this.getStreetList(t[r]);break}Array.isArray(null==l?void 0:l.children)&&(a[r+1]=null==l?void 0:l.children.map((e=>({text:e.text,value:e.value}))))}this.setState({tabs:a})}getStreetList(e){var t;return __awaiter(this,void 0,void 0,(function*(){const{request:a={}}=this.props.option,{fetchApi:r,formatter:l=(e=>e),dataKey:n,valueKey:i="value",textKey:o="text"}=a;if(r)try{const a=yield r(l({code:e}));if(200===a.code){const e=Array.isArray(a.data)?a.data:null!==(t=get(a.data,n))&&void 0!==t?t:[];this.setState((t=>({tabs:[...t.tabs,e.map((e=>({text:e[o],value:e[i]})))]})))}}catch(e){}}))}renderTabs(){const{values:e}=this.state,a=this.state.tabs.map(((a,r)=>{var l;const n=(null===(l=a.find((t=>t.value===e[r])))||void 0===l?void 0:l.text)||`${t("qm.form.selectPlaceholder").replace("...","")}(${t("qm.form.regionSelectLabel")[r]})`;return React__default.createElement(Tabs.TabPane,{key:r.toString(),tab:n},React__default.createElement("div",{className:"region-box"},a.map((t=>React__default.createElement("span",{key:t.value,className:classNames({"region-box__item":!0,actived:e.includes(t.value.toString())}),title:t.text,onClick:()=>{let{values:e}=this.state;e[r]=t.value.toString(),e=e.slice(0,r+1),this.setState({values:e},(()=>{const t=isGA(e)?this.leave-1:this.leave;if(r+1>=t)return this.triggerChange(e.join(","));this.createTabs(),this.createActiveName(r+1)}))}},t.text)))))}));return a.length?React__default.createElement(Tabs,{size:"small",activeKey:this.state.activeName,onChange:e=>{this.createActiveName(e)}},a):React__default.createElement(QmEmpty,null)}render(){const{$$form:e}=this.context,{visible:a}=this.state,{value:r}=this.props,{options:l={},style:n={},placeholder:i=t("qm.form.selectPlaceholder"),bordered:o=!0,allowClear:s=!0,readOnly:c,disabled:d}=this.props.option,u=getPrefixCls("form-region-select"),p=this.searchRef.current?this.searchRef.current.input.parentNode.offsetWidth:300,f=React__default.createElement("div",{className:"container"},this.renderTabs());let m=this.prevText;if(!a){const e=this.createTextValue(r);(""===e||e.split("/").every((e=>""!==e)))&&(m=e,this.prevText=m)}return React__default.createElement(ConfigContext.Consumer,null,(t=>{const r={[u]:!0,[`${u}--lg`]:"large"===(null==t?void 0:t.size),[`${u}--sm`]:"small"===(null==t?void 0:t.size)};return e.isOnlyShow?React__default.createElement(FormItemView,{value:m,bordered:o}):React__default.createElement(Trigger,{action:d?[]:["click"],popupVisible:!d&&a,popup:f,popupClassName:classNames(r),popupStyle:{minWidth:p},onPopupVisibleChange:this.handleVisibleChange,builtinPlacements:BUILT_IN_PLACEMENTS$1,prefixCls:"ant-select-dropdown",popupPlacement:"bottomLeft",popupTransitionName:"ant-slide-up"},React__default.createElement(Input,{ref:this.searchRef,placeholder:i,allowClear:s,bordered:o,style:Object.assign({width:"100%"},n),readOnly:c,disabled:d,value:m,title:m,onChange:e=>{const{value:t}=e.target;this.triggerChange(t),!t&&nextTick((()=>this.initial()))}}))}))}}VRegionSelect.contextType=FormContext;class FormRegionSelect extends Component{render(){const{$$form:e}=this.context,{type:t,label:a,tooltip:r,fieldName:l,invisible:n,options:i={},labelWidth:o=e.props.labelWidth,className:s,extra:c,validateTrigger:d,rules:u=[],onChange:p=noop$1}=this.props.option;return React__default.createElement(Form.Item,{label:e.renderFormLabel(a),className:classNames(l,s),tooltip:r,hidden:n,labelCol:{flex:e.verticalLayout?"initial":getParserWidth(o)},required:e.getFormItemRequired(u)},React__default.createElement(Row,{wrap:!1,gutter:4},React__default.createElement(Col,{flex:"auto"},React__default.createElement(Form.Item,{name:l,noStyle:!0,rules:u,validateTrigger:d,messageVariables:{label:e.getFormItemLabel(a)}},React__default.createElement(VRegionSelect,{option:this.props.option,onValuesChange:(t,a)=>{p(t),e.setViewValue(l,a)}}))),c&&React__default.createElement(Col,{flex:getParserWidth(c.labelWidth||DEFAULT_LABEL_WIDTH)},e.renderFormItemExtra(Object.assign({fieldName:l},c)))))}}FormRegionSelect.contextType=FormContext;const VUploadFile=e=>{const{$$form:t}=React__default.useContext(FormContext),{value:a,onChange:r,onValuesChange:l}=e,{options:n={},upload:i={},style:o={},disabled:s}=e.option,{multiple:c=!0,maxCount:d=1,fileTypes:u,fileSize:p,onRemove:f}=n,{action:m,headers:h,params:g,withCredentials:_=!1,dataKey:y="",fieldAliasMap:v,button:b}=i,R="function"==typeof v?v():v||{};return React__default.createElement(QmUploadFile,{name:"file",action:m,multiple:c,headers:h,data:g,withCredentials:_,maxCount:d,fileTypes:u,fileSize:p,disabled:s||t.isOnlyShow,button:b,showUploadList:{showDownloadIcon:!0,downloadIcon:React__default.createElement(DownloadOutlined,null)},fileList:a,onChange:e=>{let{file:t,fileList:a}=e;(e=>{const t=e.map((e=>{var t,a,r,l;const n={};for(const r in R)n[r]=e[r]||(null===(a=null===(t=e.response)||void 0===t?void 0:t.data)||void 0===a?void 0:a[R[r]])||"";return Object.assign(Object.assign({uid:e.uid,name:e.name},n),{url:e.url||(y?get(null===(l=e.response)||void 0===l?void 0:l.data,y):null===(r=e.response)||void 0===r?void 0:r.data)||"",status:e.status})}));null==r||r(t),t.every((e=>"done"===e.status&&e.url))&&l(t)})(a)},onRemove:f})};class FormUploadFile extends Component{render(){const{$$form:e}=this.context,{type:t,label:a,tooltip:r,fieldName:l,invisible:n,options:i={},labelWidth:o=e.props.labelWidth,className:s,extra:c,validateTrigger:d,rules:u=[],onChange:p=noop$1}=this.props.option;return React__default.createElement(Form.Item,{label:e.renderFormLabel(a),className:classNames(l,s),tooltip:r,hidden:n,labelCol:{flex:e.verticalLayout?"initial":getParserWidth(o)},required:e.getFormItemRequired(u)},React__default.createElement(Row,{wrap:!1,gutter:4},React__default.createElement(Col,{flex:"auto"},React__default.createElement(Form.Item,{name:l,noStyle:!0,rules:u,validateTrigger:d,messageVariables:{label:e.getFormItemLabel(a)}},React__default.createElement(VUploadFile,{option:this.props.option,onValuesChange:t=>{p(t),e.setViewValue(l,"")}}))),c&&React__default.createElement(Col,{flex:getParserWidth(c.labelWidth||DEFAULT_LABEL_WIDTH)},e.renderFormItemExtra(Object.assign({fieldName:l},c)))))}}FormUploadFile.contextType=FormContext;const VUploadImg=e=>{const{$$form:t}=React__default.useContext(FormContext),{value:a,onChange:r,onValuesChange:l}=e,{options:n={},upload:i={},style:o={},disabled:s}=e.option,{multiple:c=!0,maxCount:d=1,fixedSize:u,quality:p,openCropper:f,fileTypes:m,fileSize:h,onRemove:g}=n,{action:_,headers:y,params:v,withCredentials:b=!1,dataKey:R="",fieldAliasMap:E}=i,x="function"==typeof E?E():E||{};return React__default.createElement(QmUploadImg,{name:"file",action:_,multiple:c,headers:y,data:v,withCredentials:b,maxCount:d,fixedSize:u,quality:p,openCropper:f,fileTypes:m,fileSize:h,disabled:s||t.isOnlyShow,fileList:a,onChange:e=>{let{file:t,fileList:a}=e;(e=>{const t=e.map((e=>{var t,a,r,l;const n={};for(const r in x)n[r]=e[r]||(null===(a=null===(t=e.response)||void 0===t?void 0:t.data)||void 0===a?void 0:a[x[r]])||"";return Object.assign(Object.assign({uid:e.uid,name:e.name},n),{url:e.url||(R?get(null===(l=e.response)||void 0===l?void 0:l.data,R):null===(r=e.response)||void 0===r?void 0:r.data)||"",status:e.status})}));null==r||r(t),t.every((e=>"done"===e.status&&e.url))&&l(t)})(a)},onRemove:g})};class FormUploadImg extends Component{render(){const{$$form:e}=this.context,{type:t,label:a,tooltip:r,fieldName:l,invisible:n,options:i={},labelWidth:o=e.props.labelWidth,className:s,extra:c,validateTrigger:d,rules:u=[],onChange:p=noop$1}=this.props.option;return React__default.createElement(Form.Item,{label:e.renderFormLabel(a),className:classNames(l,s),tooltip:r,hidden:n,labelCol:{flex:e.verticalLayout?"initial":getParserWidth(o)},required:e.getFormItemRequired(u)},React__default.createElement(Row,{wrap:!1,gutter:4},React__default.createElement(Col,{flex:"auto"},React__default.createElement(Form.Item,{name:l,noStyle:!0,rules:u,validateTrigger:d,messageVariables:{label:e.getFormItemLabel(a)}},React__default.createElement(VUploadImg,{option:this.props.option,onValuesChange:t=>{p(t),e.setViewValue(l,"")}}))),c&&React__default.createElement(Col,{flex:getParserWidth(c.labelWidth||DEFAULT_LABEL_WIDTH)},e.renderFormItemExtra(Object.assign({fieldName:l},c)))))}}FormUploadImg.contextType=FormContext;const VTinymce=e=>{const{$$form:a}=React__default.useContext(FormContext),{value:r,onChange:l,onValuesChange:n}=e,{options:i={},upload:o,style:s={},placeholder:c=t("qm.form.inputPlaceholder"),readOnly:d,disabled:u}=e.option,{tinymce:p,thresholdSize:f}=i;return React__default.createElement(QmTinymce,{value:r,tinymce:p,upload:o,thresholdSize:f,style:Object.assign({width:"100%"},s),disabled:d||u||a.isOnlyShow,onChange:e=>{(e=>{null==l||l(e),n(e)})(e)}})};class FormTinymce extends Component{render(){const{$$form:e}=this.context,{type:t,label:a,tooltip:r,fieldName:l,invisible:n,options:i={},labelWidth:o=e.props.labelWidth,className:s,extra:c,validateTrigger:d,rules:u=[],onChange:p=noop$1}=this.props.option;return React__default.createElement(Form.Item,{label:e.renderFormLabel(a),className:classNames(l,s),tooltip:r,hidden:n,labelCol:{flex:e.verticalLayout?"initial":getParserWidth(o)},required:e.getFormItemRequired(u)},React__default.createElement(Row,{wrap:!1,gutter:4},React__default.createElement(Col,{flex:"auto"},React__default.createElement(Form.Item,{name:l,noStyle:!0,rules:u,validateTrigger:d,messageVariables:{label:e.getFormItemLabel(a)}},React__default.createElement(VTinymce,{option:this.props.option,onValuesChange:t=>{p(t),e.setViewValue(l,t)}}))),c&&React__default.createElement(Col,{flex:getParserWidth(c.labelWidth||DEFAULT_LABEL_WIDTH)},e.renderFormItemExtra(Object.assign({fieldName:l},c)))))}}FormTinymce.contextType=FormContext;class QmForm extends Component{constructor(e){var a;super(e),this.provide={$$form:this,echo_data:{}},this.wrapperRef=React__default.createRef(),this.formRef=React__default.createRef(),this.state={formData:{},viewData:{},other:{},extra:{},expand:{},flexCols:null!==(a=this.props.cols)&&void 0!==a?a:DEFAULT_COL,collapse:!1},this.resizeObserveHandler=()=>{var e;const t=null===(e=this.wrapperRef.current)||void 0===e?void 0:e.offsetWidth;if(void 0===t||0===t||this.props.cols>0)return;let a=Math.floor(t/DEFAULT_COL_WIDTH);a=24%a==0?a:a-1,a=a<1?1:a,a=a>8?8:a,a!==this.state.flexCols&&this.setState({flexCols:a})},this.resizeListenerHandle=debounce(this.resizeObserveHandler,10),this.getFormItems=memoize((e=>e.filter((e=>!e.noAuth&&!e.hidden)))),this.getFlattenItems=memoize((e=>{const t=[];return e.filter((e=>e.fieldName&&"DIVIDER"!==e.type)).forEach((e=>{isPlainObject(e.label)&&e.label.fieldName&&t.push(e.label),t.push(e)})),t})),this.valuesChangeHandle=(e,t)=>{var a,r;null===(r=(a=this.props).onValuesChange)||void 0===r||r.call(a,e,this._initialValues)},this.fieldsChangeHandle=(e,t)=>{var a,r;null===(r=(a=this.props).onFieldsChange)||void 0===r||r.call(a,e,t)},this.finishHandle=e=>{var t,a;null===(a=(t=this.props).onFinish)||void 0===a||a.call(t,Object.assign({},this.get_fields_other(),this.formatFormValue(e)))},this.finishFailedHandle=e=>{let{values:t,errorFields:a}=e;var r,l;null===(l=(r=this.props).onFinishFailed)||void 0===l||l.call(r,a)},this.openValidateInfo=e=>{const a=React__default.createElement("ul",null,e.map((e=>{const{label:t}=this.formItems.find((t=>t.fieldName===e.name[0]));return React__default.createElement("li",{key:e.name[0],style:{color:"#f5222d"}},"[",("string"==typeof t?`${t}: `:"")+e.errors.join(","),"]")})));notification.error({message:t("qm.form.validatePrompt"),description:a,duration:10})},this.scrollToField=e=>{if(!e)return;const t=this.wrapperRef.current.querySelector(`.${e}`);t&&scrollIntoView(t,{scrollMode:"if-needed",block:"nearest",behavior:"smooth"})},this.createInitialValues(),this.createInitialOthers(),this.createInitialExtras(),this.createFormAuth()}get $size(){var e,t;return null!==(t=null!==(e=this.props.size)&&void 0!==e?e:this.context.size)&&void 0!==t?t:""}get verticalLayout(){return"vertical"===this.props.layout}get formItems(){return this.getFormItems(this.props.items)}get flattenItems(){return this.getFlattenItems(this.formItems)}get dividers(){return this.formItems.filter((e=>"DIVIDER"===e.type))}get isFilterType(){return"search"===this.props.formType}get isOnlyShow(){return"onlyShow"===this.props.formType}get isCompactMode(){var e;const t=this.context.global;return null!==(e=this.props.compactMode)&&void 0!==e?e:"small"===this.$size&&!!(null==t?void 0:t.compactModeInSmallSize)}get showDividerCollapse(){return this.dividers.some((e=>!!e.collapse))}get showFilterCollapse(){return this.props.isCollapse&&this.formItems.length>=this.state.flexCols}componentDidMount(){this.checkFieldNames(),this.initialHandle(),this.createInputFocus(),this.bindResizeEvent(),this.resizeObserveHandler()}componentDidUpdate(e,t){this.props.items!==e.items&&this.checkFieldNames()}componentWillUnmount(){this.removeResizeEvent()}bindResizeEvent(){addResizeListener(this.wrapperRef.current,this.resizeListenerHandle)}removeResizeEvent(){removeResizeListener(this.wrapperRef.current,this.resizeListenerHandle)}initialHandle(){this.setState({formData:this.createFormValue(this.props.initialValues),other:this.createOtherValue(this.props.initialValues),extra:this.createExtraValue(this.props.initialExtras),expand:this.createDividerExpand()})}checkFieldNames(){const e=this.flattenItems.map((e=>e.fieldName));[...new Set(e)].length!==e.length&&warn("Form","配置项 fieldName 属性是唯一的,不能重复")}getFormItemRequired(){return(arguments.length>0&&void 0!==arguments[0]?arguments[0]:[]).some((e=>e.required))}createOtherValue(e){const t=this.flattenItems.map((e=>e.fieldName)),a={};for(const r in e)t.includes(r)||(a[r]=e[r]);return Object.assign({},a)}createExtraValue(e){const t={};return this.flattenItems.filter((e=>isPlainObject(e.extra))).forEach((a=>{var r;t[a.fieldName]=null!==(r=e[a.fieldName])&&void 0!==r?r:""})),Object.assign({},t)}createDividerExpand(){const e={};return this.dividers.filter((e=>isPlainObject(e.collapse))).forEach((t=>{var a;e[t.fieldName]=null!==(a=t.collapse.defaultExpand)&&void 0!==a&&a})),Object.assign({},e)}getInitialValue(e,t){var a;const{type:r,options:l}=e;return t=null!=t?t:void 0,ARRAY_TYPE.includes(r)&&(t=null!=t?t:[]),"CHECKBOX"!==r&&"SWITCH"!==r||(t=null!==(a=null!=t?t:null==l?void 0:l.falseValue)&&void 0!==a?a:DEFAULT_FALSE_VALUE$1),t}createFormValue(e){const t={};return this.flattenItems.forEach((a=>{t[a.fieldName]=this.getInitialValue(a,e[a.fieldName])})),Object.assign({},e,t)}createInitialValues(){this._initialValues=this.createFormValue(this.props.initialValues)}createInitialOthers(){this._initialOthers=this.createOtherValue(this.props.initialValues)}createInitialExtras(){this._initialExtras=this.createExtraValue(this.props.initialExtras)}setViewValue(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"";t!==this.getViewValue(e)&&this.setState((a=>({viewData:Object.assign({},a.viewData,{[e]:t})})))}getViewValue(e){var t;return null!==(t=this.state.viewData[e])&&void 0!==t?t:""}setExpandHandle(e){this.setState({collapse:e},(()=>{var e,t;null===(t=(e=this.props).onCollapse)||void 0===t||t.call(e,this.state.collapse)}))}createInputFocus(){const{isAutoFocus:e}=this.props;if(!e||this.isOnlyShow)return;const{type:t,fieldName:a}=this.formItems.filter((e=>e.fieldName))[0]||{};"INPUT"!==t&&"INPUT_NUMBER"!==t||!a||setTimeout((()=>this.CREATE_FOCUS(a)))}getFormItemLabel(e){var t,a,r,l;if("string"==typeof e)return e;const{fieldName:n,options:i={}}=e,{itemList:o=[]}=i;if(!o.length)return warn("Form",`fieldName 为 ${n} 的表单项的 \`itemList\` 配置有误`),"";const s=null!==(r=null!==(a=null===(t=this.formRef.current)||void 0===t?void 0:t.getFieldsValue([n])[n])&&void 0!==a?a:this._initialValues[n])&&void 0!==r?r:o[0].value;return(null===(l=o.find((e=>e.value===s)))||void 0===l?void 0:l.text)||""}getBlockDerivedItems(){const e=[];for(let t=0,a=this.dividers.length;t<a;t++){const a=this.formItems.findIndex((e=>e===this.dividers[t]));let r=this.formItems.findIndex((e=>e===this.dividers[t+1]));r=r>-1?r:void 0,e.push(this.formItems.slice(a,r).map((e=>({label:e.label,fieldName:e.fieldName}))))}return e}getFormItemDisplay(e){let{type:t,fieldName:a}=e;var r,l;if("DIVIDER"===t)return!0;const n=this.getBlockDerivedItems();for(let e=0,t=n.length;e<t;e++){const t=n[e],i=this.dividers.find((e=>e.fieldName===t[0].fieldName)),o=null!==(l=null===(r=null==i?void 0:i.collapse)||void 0===r?void 0:r.showLimit)&&void 0!==l?l:t.length-1;for(let e=1;e<t.length;e++){if(t[e].fieldName===a&&e>o)return this.state.expand[t[0].fieldName]}}return!0}formatFormValue(e){var t,a;for(const r in e){const l=e[r];if(isEmptyValue(l)&&(e[r]=""),Array.isArray(l)&&l.forEach(((t,a)=>{isEmptyValue(t)&&(e[r][a]="")})),r.includes("|")&&Array.isArray(l)){const[n,i]=r.split("|");e[n]=null!==(t=l[0])&&void 0!==t?t:"",e[i]=null!==(a=l[1])&&void 0!==a?a:""}}if(this.isFilterType)for(const t in e)isEmpty(e[t])&&(e[t]=void 0);return e}createFormAuth(){var e,t,a;return __awaiter(this,void 0,void 0,(function*(){const{authConfig:r}=this.props;if(!r)return;let l=omit(r,["fetch"]);if(r.fetch){const{api:t,params:a,dataKey:n}=r.fetch;try{const r=yield t(a);200===r.code&&(l=null!==(e=n?get(r.data,n):r.data)&&void 0!==e?e:{})}catch(e){}}if(Array.isArray(l.fieldList)){const e=this.props.items.map((e=>{const{fieldName:t}=e,a=l.fieldList.find((e=>e.dataIndex===t));if(a){const{visible:t=1,disabled:r,secretName:l}=a;t||(e.noAuth=!0),r&&(e.disabled=!0),l&&(e.options?e.options.secretType=l:e.options={secretType:l})}return e}));null===(a=(t=this.props).fieldsChange)||void 0===a||a.call(t,e)}}))}INPUT(e){return React__default.createElement(FormInput,{ref:t=>this[`${e.fieldName}_Ref`]=t,option:e})}RANGE_INPUT(e){return React__default.createElement(FormRangeInput,{option:e})}INPUT_NUMBER(e){return React__default.createElement(FormInputNumber,{ref:t=>this[`${e.fieldName}_Ref`]=t,option:e})}RANGE_INPUT_NUMBER(e){return React__default.createElement(FormRangeInputNumber,{option:e})}SEARCH_HELPER(e){return React__default.createElement(FormSearchHelper,{ref:t=>this[`${e.fieldName}_Ref`]=t,option:e})}MULTIPLE_SEARCH_HELPER(e){return React__default.createElement(FormMultipleSearchHelper,{option:e})}TREE_TABLE_HELPER(e){return React__default.createElement(FormTreeTableHelper,{option:e})}MULTIPLE_TREE_TABLE_HELPER(e){return React__default.createElement(FormMultipleTreeTableHelper,{option:e})}RANGE_SEARCH_HELPER(e){return React__default.createElement(FormRangeSearchHelper,{option:e})}CHECKBOX(e){return React__default.createElement(FormCheckbox,{option:e})}MULTIPLE_CHECKBOX(e){return React__default.createElement(FormCheckboxGroup,{option:e})}RATE(e){return React__default.createElement(FormRate,{option:e})}RADIO(e){return React__default.createElement(FormRadio,{option:e})}SWITCH(e){return React__default.createElement(FormSwitch,{option:e})}TEXT_AREA(e){return React__default.createElement(FormTextArea,{option:e})}DATE(e){return React__default.createElement(FormDate,{option:e})}RANGE_DATE(e){return React__default.createElement(FormRangeDate,{option:e})}TIME(e){return React__default.createElement(FormTime,{option:e})}RANGE_TIME(e){return React__default.createElement(FormRangeTime,{option:e})}SELECT(e){return React__default.createElement(FormSelect,{option:e})}MULTIPLE_SELECT(e){return React__default.createElement(FormSelect,{option:e,multiple:!0})}IMMEDIATE(e){return React__default.createElement(FormImmediate,{option:e})}DIVIDER(e){return React__default.createElement(FormDivider,{option:e})}TREE_SELECT(e){return React__default.createElement(FormTreeSelect,{option:e})}MULTIPLE_TREE_SELECT(e){return React__default.createElement(FormTreeSelect,{option:e,multiple:!0})}CASCADER(e){return React__default.createElement(FormCascader,{option:e})}MULTIPLE_CASCADER(e){return React__default.createElement(FormCascader,{option:e,multiple:!0})}CITY_SELECT(e){return React__default.createElement(FormCitySelect,{option:e})}REGION_SELECT(e){return React__default.createElement(FormRegionSelect,{option:e})}UPLOAD_FILE(e){return React__default.createElement(FormUploadFile,{option:e})}UPLOAD_IMG(e){return React__default.createElement(FormUploadImg,{option:e})}TINYMCE(e){return React__default.createElement(FormTinymce,{option:e})}renderFormLabel(e){if(!isPlainObject(e))return e;const{type:t,fieldName:a,options:r={},placeholder:l,disabled:n,onChange:i=noop$1}=e,{itemList:o=[]}=r;return React__default.createElement(Form.Item,{name:a,noStyle:!0},"SELECT"===t&&React__default.createElement(Select,{placeholder:l,disabled:n,style:{width:"calc(100% - 10px)"},onChange:e=>i(e,o.find((t=>t.value===e)).text)},o.map((e=>React__default.createElement(Select.Option,{key:e.value,value:e.value,disabled:e.disabled},e.text)))))}renderFormItemExtra(e){const{fieldName:t,isTooltip:a,style:r={},render:l}=e,{extra:n}=this.state;if(a)return React__default.createElement(Tooltip,{className:"extra-tooltip",title:n[t]},React__default.createElement(ExclamationCircleOutlined,{style:{marginLeft:4}}));const i=this.formItems.find((e=>e.fieldName===t));return React__default.createElement("div",{className:"extra-text",title:l?"":n[t],style:r},React__default.createElement("span",{className:"extra-overflow-cut"},l?l(i,this):n[t]))}renderFormItemButton(e,t){const a=this.formItems.find((t=>t.fieldName===e)),r="function"==typeof t?t(a):t;return this.isOnlyShow?null:r}renderFormItem(e){const{label:t,fieldName:a,className:r,labelWidth:l=this.props.labelWidth,rules:n=[],style:i={},render:o}=e;return isEmpty(this.state.formData)?null:React__default.createElement(Form.Item,{label:t,name:a,rules:n,className:classNames(a,r),style:Object.assign({width:"100%"},i),labelCol:{flex:getParserWidth(l)}},null==o?void 0:o(e,this))}createFormItem(e){return isFunction$4(this[e.type])?e.render?this.renderFormItem(e):this[e.type](e):(warn("Form",`配置项 ${e.fieldName} 的 type 类型错误`),null)}createFormLayout(){const{flexCols:e}=this.state,{formType:t,defaultRows:a,isFieldsDefine:r}=this.props,l=[];this.formItems.forEach((e=>{const{offsetLeft:t=0,offsetRight:a=0}=e;for(let e=0;e<t;e++)l.push({});l.push(e);for(let e=0;e<a;e++)l.push({})}));const n=24/e,i=[],o=l.reduce(((e,t)=>{const{selfCol:a=1}=t,r=e+a;return i.push(r),r}),0),s=a>Math.ceil(o/e)?Math.ceil(o/e):a,c=[],d=l.map(((t,a)=>{let{selfCol:r=1}=t;const{type:l,fieldName:o}=t;r=r>=24||"DIVIDER"===l||"TINYMCE"===l?e:r;const d=!(!this.state.collapse&&this.showFilterCollapse)||i[a]<s*e,u=!this.showDividerCollapse||this.getFormItemDisplay(t);return d&&c.push(i[a]),React__default.createElement(Col,{key:null!=o?o:a,span:r*n,style:this.isFilterType?{display:!this.showFilterCollapse||d?"block":"none"}:{display:u?"block":"none"}},l?this.createFormItem(deepClone(t)):null)}));return r&&"default"===t&&d.push(React__default.createElement("div",{className:"form-fields__define"},this.createFieldsDefine())),[...d,this.createSearchButtonLayout(c[c.length-1])]}createSearchButtonLayout(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;const{flexCols:a,collapse:r}=this.state,{searchButtonCols:l,isSearchBtn:n,isFieldsDefine:i=!0}=this.props;if(!this.isFilterType)return null;const o=24/a,s=l||1,c=a-e%a-s;return n?React__default.createElement(Col,{key:"-",span:s*o,offset:c*o,style:{textAlign:"right"}},React__default.createElement(Space,{style:{marginBottom:12}},React__default.createElement(QmButton,{type:"primary",size:this.$size,icon:React__default.createElement(SearchOutlined,null),onClick:()=>this.SUBMIT_FORM()},t("qm.form.search")),React__default.createElement(QmButton,{size:this.$size,icon:React__default.createElement(ReloadOutlined,null),onClick:()=>this.RESET_FORM()},t("qm.form.reset")),i?this.createFieldsDefine():null,this.showFilterCollapse&&React__default.createElement("a",{onClick:()=>this.setExpandHandle(!r)},r?React__default.createElement(UpOutlined,null):React__default.createElement(DownOutlined,null)," ",t(r?"qm.form.collect":"qm.form.spread")))):null}createFormButtonLayout(){const{flexCols:e}=this.state,{formType:a,isSubmitBtn:r}=this.props;if(this.isFilterType)return null;const l=24/e;return r&&"default"===a?React__default.createElement(Row,{gutter:0},React__default.createElement(Col,{key:"-",span:l},React__default.createElement(Form.Item,null,React__default.createElement(Space,{style:{marginBottom:12}},React__default.createElement(QmButton,{type:"primary",size:this.$size,onClick:()=>this.SUBMIT_FORM()},t("qm.form.save")),React__default.createElement(QmButton,{size:this.$size,onClick:()=>this.RESET_FORM()},t("qm.form.reset")))))):null}createFieldsDefine(){const{uniqueKey:e,items:t,fieldsChange:a}=this.props;return React__default.createElement(FieldsFilter,{uniqueKey:e,items:t,fieldsChange:a})}set_fields_other(e){this.setState((t=>({other:Object.assign({},t.other,this.createOtherValue(e))})))}get_fields_other(e){if(!e)return this.state.other;const t={};return e.forEach((e=>{t[e]=this.state.other[e]})),t}formValidate(){return new Promise(((e,a)=>__awaiter(this,void 0,void 0,(function*(){const[r,l]=yield this.VALIDATE_FIELDS(),n=this.formItems.filter((e=>"SEARCH_HELPER"===e.type)).filter((e=>{var t;return null===(t=this[`${e.fieldName}_Ref`])||void 0===t?void 0:t.searchRef._is_change})).map((e=>({name:[e.fieldName],errors:[t("qm.form.searchHelperTips")],warnings:[]})));r||n.length?a((r||[]).concat(n)):e(l)}))))}SET_FIELDS_VALUE(e){this.formRef.current.setFieldsValue(e),this.set_fields_other(e)}GET_FIELDS_VALUE(e){return e?Object.assign({},this.get_fields_other(e),this.formRef.current.getFieldsValue(e)):Object.assign({},this.state.other,this.formRef.current.getFieldsValue(!0))}GET_FORM_DATA(){return __awaiter(this,void 0,void 0,(function*(){try{const e=yield this.formValidate();return[null,Object.assign({},this.get_fields_other(),this.formatFormValue(e))]}catch(e){return this.props.scrollToFirstError&&this.scrollToField(e[0].name[0]),[e,null]}}))}VALIDATE_FIELDS(e){return __awaiter(this,void 0,void 0,(function*(){try{return[null,yield this.formRef.current.validateFields(e)]}catch({errorFields:e}){return this.isCompactMode&&this.openValidateInfo(e),[e,null]}}))}SET_FIELDS_EXTRA(e){this.setState((t=>({extra:Object.assign({},t.extra,e)})))}SET_FIELDS_ECHO(e){Object.keys(e).length&&(Object.assign(this.provide,{echo_data:Object.assign({},this.provide.echo_data,e)}),this.forceUpdate())}GET_FIELDS_EXTRA(e){if(!e)return this.state.extra;const t={};return e.forEach((e=>{t[e]=this.state.extra[e]})),t}GET_FIELDS_TOUCHED(e){return this.formRef.current.isFieldsTouched(e)}SUBMIT_FORM(){return __awaiter(this,void 0,void 0,(function*(){try{yield this.formValidate(),this.formRef.current.submit()}catch(e){this.isFilterType&&this.setExpandHandle(!0)}}))}RESET_FORM(){var e,t;let a=[];const r=this.flattenItems.filter((e=>e.noReset)).map((e=>e.fieldName));r.length&&(a=this.flattenItems.map((e=>e.fieldName)).filter((e=>!r.includes(e)))),this.formRef.current.resetFields(a.length?a:void 0),this.setState((e=>{const t=Object.keys(e.other),a=Object.keys(this._initialOthers),r=t.filter((e=>!a.includes(e))),l={};return r.forEach((e=>l[e]=void 0)),{other:Object.assign({},this._initialOthers,l)}})),this.setState({extra:Object.assign({},this._initialExtras)}),null===(t=(e=this.props).onReset)||void 0===t||t.call(e)}CREATE_FOCUS(e){try{this[`${e}_Ref`].focus()}catch(e){warn("Form","参数 `fieldName` 的值不正确或者该表单项不支持获得焦点")}}SET_FORM_ITEM(e,t,a){const{items:r,fieldsChange:l}=this.props,n=r.filter((e=>!e.noAuth)),i=n.find((t=>t.fieldName===e));if(!i)return warn("Form","SET_FORM_ITEM 方法参数 `fieldName` 的值不正确");if(!isPlainObject(t))return warn("Form","SET_FORM_ITEM 方法参数 `option` 的值不正确");for(const e in t)e&&set(i,e,t[e]);a&&(l?l(n):warn("Form","需要设置 `fieldsChange` 参数"))}render(){const{className:e,style:a,layout:r,labelWidth:l,labelAlign:n,labelWrap:i,customClass:o}=this.props,s=getPrefixCls("form"),c={required:"${label}"+t("qm.form.requiredTips")},d={[s]:!0,[`${s}--lg`]:"large"===this.$size,[`${s}--sm`]:"small"===this.$size,[`${s}__only-show`]:this.isOnlyShow,[`${s}__compact`]:this.isCompactMode,[o]:!!o};return React__default.createElement("div",{ref:this.wrapperRef,className:classNames(d,e),style:a},React__default.createElement(Form,{ref:this.formRef,size:this.$size,initialValues:this._initialValues,layout:r,labelAlign:n,labelWrap:i,colon:!1,labelCol:{flex:this.verticalLayout?"initial":getParserWidth(l)},validateMessages:c,onValuesChange:this.valuesChangeHandle,onFieldsChange:this.fieldsChangeHandle,onFinish:this.finishHandle,onFinishFailed:this.finishFailedHandle},React__default.createElement(FormContext.Provider,{value:this.provide},React__default.createElement(Row,{gutter:this.verticalLayout?20:0},this.createFormLayout()),this.createFormButtonLayout())))}}QmForm.contextType=ConfigContext,QmForm.propTypes=propTypes,QmForm.defaultProps=defaultProps$1;const eventPropTypes={onActivate:PropTypes.func,onAddUndo:PropTypes.func,onBeforeAddUndo:PropTypes.func,onBeforeExecCommand:PropTypes.func,onBeforeGetContent:PropTypes.func,onBeforeRenderUI:PropTypes.func,onBeforeSetContent:PropTypes.func,onBeforePaste:PropTypes.func,onBlur:PropTypes.func,onChange:PropTypes.func,onClearUndos:PropTypes.func,onClick:PropTypes.func,onContextMenu:PropTypes.func,onCommentChange:PropTypes.func,onCopy:PropTypes.func,onCut:PropTypes.func,onDblclick:PropTypes.func,onDeactivate:PropTypes.func,onDirty:PropTypes.func,onDrag:PropTypes.func,onDragDrop:PropTypes.func,onDragEnd:PropTypes.func,onDragGesture:PropTypes.func,onDragOver:PropTypes.func,onDrop:PropTypes.func,onExecCommand:PropTypes.func,onFocus:PropTypes.func,onFocusIn:PropTypes.func,onFocusOut:PropTypes.func,onGetContent:PropTypes.func,onHide:PropTypes.func,onInit:PropTypes.func,onKeyDown:PropTypes.func,onKeyPress:PropTypes.func,onKeyUp:PropTypes.func,onLoadContent:PropTypes.func,onMouseDown:PropTypes.func,onMouseEnter:PropTypes.func,onMouseLeave:PropTypes.func,onMouseMove:PropTypes.func,onMouseOut:PropTypes.func,onMouseOver:PropTypes.func,onMouseUp:PropTypes.func,onNodeChange:PropTypes.func,onObjectResizeStart:PropTypes.func,onObjectResized:PropTypes.func,onObjectSelected:PropTypes.func,onPaste:PropTypes.func,onPostProcess:PropTypes.func,onPostRender:PropTypes.func,onPreProcess:PropTypes.func,onProgressState:PropTypes.func,onRedo:PropTypes.func,onRemove:PropTypes.func,onReset:PropTypes.func,onSaveContent:PropTypes.func,onSelectionChange:PropTypes.func,onSetAttrib:PropTypes.func,onSetContent:PropTypes.func,onShow:PropTypes.func,onSubmit:PropTypes.func,onUndo:PropTypes.func,onVisualAid:PropTypes.func,onSkinLoadError:PropTypes.func,onThemeLoadError:PropTypes.func,onModelLoadError:PropTypes.func,onPluginLoadError:PropTypes.func,onIconsLoadError:PropTypes.func,onLanguageLoadError:PropTypes.func},EditorPropTypes=Object.assign({apiKey:PropTypes.string,id:PropTypes.string,inline:PropTypes.bool,init:PropTypes.object,initialValue:PropTypes.string,onEditorChange:PropTypes.func,value:PropTypes.string,tagName:PropTypes.string,cloudChannel:PropTypes.string,plugins:PropTypes.oneOfType([PropTypes.string,PropTypes.array]),toolbar:PropTypes.oneOfType([PropTypes.string,PropTypes.array]),disabled:PropTypes.bool,textareaName:PropTypes.string,tinymceScriptSrc:PropTypes.string,rollback:PropTypes.oneOfType([PropTypes.number,PropTypes.oneOf([!1])]),scriptLoading:PropTypes.shape({async:PropTypes.bool,defer:PropTypes.bool,delay:PropTypes.number})},eventPropTypes),isFunction=e=>"function"==typeof e,isEventProp=e=>e in eventPropTypes,eventAttrToEventName=e=>e.substr(2),configHandlers2=(e,t,a,r,l,n,i)=>{const o=Object.keys(l).filter(isEventProp),s=Object.keys(n).filter(isEventProp),c=o.filter((e=>void 0===n[e])),d=s.filter((e=>void 0===l[e]));c.forEach((e=>{const t=eventAttrToEventName(e),r=i[t];a(t,r),delete i[t]})),d.forEach((a=>{const l=r(e,a),n=eventAttrToEventName(a);i[n]=l,t(n,l)}))},configHandlers=(e,t,a,r,l)=>configHandlers2(l,e.on.bind(e),e.off.bind(e),((t,a)=>r=>{var l;return null===(l=t(a))||void 0===l?void 0:l(r,e)}),t,a,r);let unique=0;const uuid=e=>{const t=Date.now(),a=Math.floor(1e9*Math.random());return unique++,e+"_"+a+unique+String(t)},isTextareaOrInput=e=>null!==e&&("textarea"===e.tagName.toLowerCase()||"input"===e.tagName.toLowerCase()),normalizePluginArray=e=>void 0===e||""===e?[]:Array.isArray(e)?e:e.split(" "),mergePlugins=(e,t)=>normalizePluginArray(e).concat(normalizePluginArray(t)),isBeforeInputEventAvailable=()=>window.InputEvent&&"function"==typeof InputEvent.prototype.getTargetRanges,isInDoc=e=>{if(!("isConnected"in Node.prototype)){let t=e,a=e.parentNode;for(;null!=a;)t=a,a=t.parentNode;return t===e.ownerDocument}return e.isConnected},setMode=(e,t)=>{void 0!==e&&(null!=e.mode&&"object"==typeof e.mode&&"function"==typeof e.mode.set?e.mode.set(t):e.setMode(t))},createState=()=>({listeners:[],scriptId:uuid("tiny-script"),scriptLoading:!1,scriptLoaded:!1}),CreateScriptLoader=()=>{let e=createState();return{load:(t,a,r,l,n,i)=>{const o=()=>((e,t,a,r,l,n)=>{const i=t.createElement("script");i.referrerPolicy="origin",i.type="application/javascript",i.id=e,i.src=a,i.async=r,i.defer=l;const o=()=>{i.removeEventListener("load",o),n()};i.addEventListener("load",o),t.head&&t.head.appendChild(i)})(e.scriptId,t,a,r,l,(()=>{e.listeners.forEach((e=>e())),e.scriptLoaded=!0}));e.scriptLoaded?i():(e.listeners.push(i),e.scriptLoading||(e.scriptLoading=!0,n>0?setTimeout(o,n):o()))},reinitialize:()=>{e=createState()}}},ScriptLoader=CreateScriptLoader(),getTinymce=e=>{const t=e;return t&&t.tinymce?t.tinymce:null};class Editor extends React.Component{constructor(e){var t,a,r,l;super(e),t=this,this.rollbackTimer=void 0,this.valueCursor=void 0,this.rollbackChange=()=>{const e=this.editor,t=this.props.value;e&&t&&t!==this.currentContent&&e.undoManager.ignore((()=>{if(e.setContent(t),this.valueCursor&&(!this.inline||e.hasFocus()))try{e.selection.moveToBookmark(this.valueCursor)}catch(e){}})),this.rollbackTimer=void 0},this.handleBeforeInput=e=>{if(void 0!==this.props.value&&this.props.value===this.currentContent&&this.editor&&(!this.inline||this.editor.hasFocus()))try{this.valueCursor=this.editor.selection.getBookmark(3)}catch(e){}},this.handleBeforeInputSpecial=e=>{"Enter"!==e.key&&"Backspace"!==e.key&&"Delete"!==e.key||this.handleBeforeInput(e)},this.handleEditorChange=e=>{const t=this.editor;if(t&&t.initialized){const e=t.getContent();void 0!==this.props.value&&this.props.value!==e&&!1!==this.props.rollback&&(this.rollbackTimer||(this.rollbackTimer=window.setTimeout(this.rollbackChange,"number"==typeof this.props.rollback?this.props.rollback:200))),e!==this.currentContent&&(this.currentContent=e,"function"==typeof this.props.onEditorChange&&this.props.onEditorChange(e,t))}},this.handleEditorChangeSpecial=e=>{"Backspace"!==e.key&&"Delete"!==e.key||this.handleEditorChange(e)},this.initialise=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;var a,r,l;const n=t.elementRef.current;if(!n)return;if(!isInDoc(n)){if(0===e)setTimeout((()=>t.initialise(1)),1);else{if(!(e<100))throw new Error("tinymce can only be initialised when in a document");setTimeout((()=>t.initialise(e+1)),100)}return}const i=getTinymce(t.view);if(!i)throw new Error("tinymce should have been loaded into global scope");const o=Object.assign(Object.assign({},t.props.init),{selector:void 0,target:n,readonly:t.props.disabled,inline:t.inline,plugins:mergePlugins(null===(a=t.props.init)||void 0===a?void 0:a.plugins,t.props.plugins),toolbar:null!==(r=t.props.toolbar)&&void 0!==r?r:null===(l=t.props.init)||void 0===l?void 0:l.toolbar,setup:e=>{t.editor=e,t.bindHandlers({}),t.inline&&!isTextareaOrInput(n)&&e.once("PostRender",(a=>{e.setContent(t.getInitialValue(),{no_events:!0})})),t.props.init&&isFunction(t.props.init.setup)&&t.props.init.setup(e)},init_instance_callback:e=>{var a,r;const l=t.getInitialValue();t.currentContent=null!==(a=t.currentContent)&&void 0!==a?a:e.getContent(),t.currentContent!==l&&(t.currentContent=l,e.setContent(l),e.undoManager.clear(),e.undoManager.add(),e.setDirty(!1));const n=null!==(r=t.props.disabled)&&void 0!==r&&r;setMode(t.editor,n?"readonly":"design"),t.props.init&&isFunction(t.props.init.init_instance_callback)&&t.props.init.init_instance_callback(e)}});t.inline||(n.style.visibility=""),isTextareaOrInput(n)&&(n.value=t.getInitialValue()),i.init(o)},this.id=this.props.id||uuid("tiny-react"),this.elementRef=React.createRef(),this.inline=null!==(l=null!==(a=this.props.inline)&&void 0!==a?a:null===(r=this.props.init)||void 0===r?void 0:r.inline)&&void 0!==l&&l,this.boundHandlers={}}get view(){var e,t;return null!==(t=null===(e=this.elementRef.current)||void 0===e?void 0:e.ownerDocument.defaultView)&&void 0!==t?t:window}componentDidUpdate(e){var t,a;if(this.rollbackTimer&&(clearTimeout(this.rollbackTimer),this.rollbackTimer=void 0),this.editor&&(this.bindHandlers(e),this.editor.initialized)){if(this.currentContent=null!==(t=this.currentContent)&&void 0!==t?t:this.editor.getContent(),"string"==typeof this.props.initialValue&&this.props.initialValue!==e.initialValue)this.editor.setContent(this.props.initialValue),this.editor.undoManager.clear(),this.editor.undoManager.add(),this.editor.setDirty(!1);else if("string"==typeof this.props.value&&this.props.value!==this.currentContent){const e=this.editor;e.undoManager.transact((()=>{let t;if(!this.inline||e.hasFocus())try{t=e.selection.getBookmark(3)}catch(e){}const a=this.valueCursor;if(e.setContent(this.props.value),!this.inline||e.hasFocus())for(const r of[t,a])if(r)try{e.selection.moveToBookmark(r),this.valueCursor=r;break}catch(e){}}))}if(this.props.disabled!==e.disabled){const e=null!==(a=this.props.disabled)&&void 0!==a&&a;setMode(this.editor,e?"readonly":"design")}}}componentDidMount(){var e,t,a,r,l,n;null!==getTinymce(this.view)?this.initialise():this.elementRef.current&&this.elementRef.current.ownerDocument&&ScriptLoader.load(this.elementRef.current.ownerDocument,this.getScriptSrc(),null!==(t=null===(e=this.props.scriptLoading)||void 0===e?void 0:e.async)&&void 0!==t&&t,null!==(r=null===(a=this.props.scriptLoading)||void 0===a?void 0:a.defer)&&void 0!==r&&r,null!==(n=null===(l=this.props.scriptLoading)||void 0===l?void 0:l.delay)&&void 0!==n?n:0,this.initialise)}componentWillUnmount(){const e=this.editor;e&&(e.off(this.changeEvents(),this.handleEditorChange),e.off(this.beforeInputEvent(),this.handleBeforeInput),e.off("keypress",this.handleEditorChangeSpecial),e.off("keydown",this.handleBeforeInputSpecial),e.off("NewBlock",this.handleEditorChange),Object.keys(this.boundHandlers).forEach((t=>{e.off(t,this.boundHandlers[t])})),this.boundHandlers={},e.remove(),this.editor=void 0)}render(){return this.inline?this.renderInline():this.renderIframe()}changeEvents(){var e,t,a;return(null===(a=null===(t=null===(e=getTinymce(this.view))||void 0===e?void 0:e.Env)||void 0===t?void 0:t.browser)||void 0===a?void 0:a.isIE())?"change keyup compositionend setcontent CommentChange":"change input compositionend setcontent CommentChange"}beforeInputEvent(){return isBeforeInputEventAvailable()?"beforeinput SelectionChange":"SelectionChange"}renderInline(){const{tagName:e="div"}=this.props;return React.createElement(e,{ref:this.elementRef,id:this.id})}renderIframe(){return React.createElement("textarea",{ref:this.elementRef,style:{visibility:"hidden"},name:this.props.textareaName,id:this.id})}getScriptSrc(){if("string"==typeof this.props.tinymceScriptSrc)return this.props.tinymceScriptSrc;{const e=this.props.cloudChannel;return`https://cdn.tiny.cloud/1/${this.props.apiKey?this.props.apiKey:"no-api-key"}/tinymce/${e}/tinymce.min.js`}}getInitialValue(){return"string"==typeof this.props.initialValue?this.props.initialValue:"string"==typeof this.props.value?this.props.value:""}bindHandlers(e){if(void 0!==this.editor){configHandlers(this.editor,e,this.props,this.boundHandlers,(e=>this.props[e]));const t=e=>void 0!==e.onEditorChange||void 0!==e.value,a=t(e),r=t(this.props);!a&&r?(this.editor.on(this.changeEvents(),this.handleEditorChange),this.editor.on(this.beforeInputEvent(),this.handleBeforeInput),this.editor.on("keydown",this.handleBeforeInputSpecial),this.editor.on("keyup",this.handleEditorChangeSpecial),this.editor.on("NewBlock",this.handleEditorChange)):a&&!r&&(this.editor.off(this.changeEvents(),this.handleEditorChange),this.editor.off(this.beforeInputEvent(),this.handleBeforeInput),this.editor.off("keydown",this.handleBeforeInputSpecial),this.editor.off("keyup",this.handleEditorChangeSpecial),this.editor.off("NewBlock",this.handleEditorChange))}}}var ELocale;Editor.propTypes=EditorPropTypes,Editor.defaultProps={cloudChannel:"6"},function(e){e["zh-cn"]="zh_CN",e.en="en"}(ELocale||(ELocale={}));class QmTinymce extends Component{constructor(){super(...arguments),this.defaultOption={height:400,plugins:"preview importcss searchreplace autolink autosave save directionality code visualblocks visualchars fullscreen image link media template codesample table charmap pagebreak nonbreaking anchor insertdatetime advlist lists wordcount help charmap emoticons",menubar:"file edit view insert format tools table help",toolbar:"undo redo | bold italic underline strikethrough | fontfamily fontsize blocks | alignleft aligncenter alignright alignjustify | outdent indent | numlist bullist | forecolor backcolor removeformat | pagebreak | charmap emoticons | fullscreen preview save print | insertfile image media template link anchor codesample | ltr rtl"}}render(){var e;const{size:a,className:r,style:l,tinymce:n={},upload:i={},thresholdSize:o=.5,tinymceScriptSrc:s,disabled:c,value:d,onChange:u=noop$1}=this.props,p=this.context.global,f=this.context.locale,m=a||this.context.size||"",h=getPrefixCls("tinymce"),g={[h]:!0,[`${h}--lg`]:"large"===m,[`${h}--sm`]:"small"===m},_={init:Object.assign(Object.assign({height:n.height||this.defaultOption.height,plugins:n.plugins||this.defaultOption.plugins,toolbar:n.toolbar||this.defaultOption.toolbar,menubar:n.menubar||this.defaultOption.menubar,language:ELocale[f],skin:"tinymce-5"},omit(n,["height","plugins","toolbar","menubar"])),{images_upload_handler:e=>new Promise(((a,r)=>__awaiter(this,void 0,void 0,(function*(){const{action:r,headers:l,withCredentials:n,dataKey:s}=i,c=`data:image/jpeg;base64,${e.base64()}`,d=new FormData;d.append("file",e.blob(),e.filename());const u=e.blob().size;if(r&&u/1024/1024>o)try{const{data:e}=yield axios.post(r,d,{headers:l,withCredentials:n});if(200===e.code){const t=s?get(e.data,s):e.data;a(t)}}catch(e){message.error(t("qm.uploadCropper.uploadError"))}else a(c)}))))}),value:d,disabled:c,tinymceScriptSrc:s||(null===(e=null==p?void 0:p.tinymce)||void 0===e?void 0:e.scriptSrc)||void 0,onEditorChange:(e,t)=>{u(t.getContent())}};return React__default.createElement("div",{className:classNames(g,r),style:l},React__default.createElement(Editor,_))}}QmTinymce.contextType=ConfigContext,QmTinymce.propTypes={size:(e,t,a)=>{if(!isValidComponentSize(e[t]||""))return throwError("Tinymce","Invalid prop `"+t+"` supplied to `"+a+"`. Validation failed.")}};class QmCropper extends Component{constructor(){super(...arguments),this.imgRef=React__default.createRef()}componentDidMount(){const e=__rest(this.props,["className","style","src","alt","imgStyle"]),t={};for(const a in e)void 0!==this.props[a]&&(t[a]=this.props[a]);this.cropper=new Cropper(this.imgRef.current,t)}componentWillUnmount(){this.destroy(),this.cropper=null}reset(){return this.cropper.reset()}clear(){return this.cropper.clear()}initCrop(){return this.cropper.crop()}replace(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];return this.cropper.replace(e,t)}enable(){return this.cropper.enable()}disable(){return this.cropper.disable()}destroy(){return this.cropper.destroy()}move(e,t){return this.cropper.move(e,t)}moveTo(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:e;return this.cropper.moveTo(e,t)}relativeZoom(e,t){return this.cropper.zoom(e,t)}zoomTo(e,t){return this.cropper.zoomTo(e,t)}rotate(e){return this.cropper.rotate(e)}rotateTo(e){return this.cropper.rotateTo(e)}scaleX(e){return this.cropper.scaleX(e)}scaleY(e){return this.cropper.scaleY(e)}scale(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:e;return this.cropper.scale(e,t)}getData(){let e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];return this.cropper.getData(e)}setData(e){return this.cropper.setData(e)}getContainerData(){return this.cropper.getContainerData()}getImageData(){return this.cropper.getImageData()}getCanvasData(){return this.cropper.getCanvasData()}setCanvasData(e){return this.cropper.setCanvasData(e)}getCropBoxData(){return this.cropper.getCropBoxData()}setCropBoxData(e){return this.cropper.setCropBoxData(e)}getCroppedCanvas(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return this.cropper.getCroppedCanvas(e)}setAspectRatio(e){return this.cropper.setAspectRatio(e)}setDragMode(e){return this.cropper.setDragMode(e)}render(){const{className:e,style:t,src:a,alt:r,imgStyle:l}=this.props,n={[getPrefixCls("cropper")]:!0};return React__default.createElement("div",{className:classNames(n,e),style:t},React__default.createElement("img",{ref:this.imgRef,src:a,alt:r,style:Object.assign({maxWidth:"100%"},l)}))}}QmCropper.defaultProps={src:"",responsive:!0,restore:!0,checkCrossOrigin:!0,checkOrientation:!0,modal:!0,guides:!0,center:!0,highlight:!0,background:!0,autoCrop:!0,movable:!0,rotatable:!0,scalable:!0,zoomable:!0,zoomOnTouch:!0,zoomOnWheel:!0,cropBoxMovable:!0,cropBoxResizable:!0,toggleDragModeOnDblclick:!0};class QmUploadFile extends Component{constructor(){super(...arguments),this.beforeUpload=(e,a)=>new Promise(((r,l)=>__awaiter(this,void 0,void 0,(function*(){const{fileTypes:n=[],fileSize:i,beforeUpload:o}=this.props,s=!n.length||n.includes(e.name.slice(e.name.lastIndexOf(".")+1).toLowerCase()),c=!i||e.size/1024/1024<i,d=s&&c;if(s||message.warning(t("qm.upload.tooltip",{type:n.join(",")})),c||message.warning(t("qm.upload.sizeLimit",{size:i})),!d)return d||Upload.LIST_IGNORE;if(o){const t=o(e,a);if(!0===t)return r(e);if(!1===t)return l("not upload");if(t&&"function"==typeof t.then)try{const e=yield t;r(e)}catch(e){l(e)}}r(e)}))))}downloadFile(e,t){return __awaiter(this,void 0,void 0,(function*(){const a=yield axios({url:e,responseType:"blob"}),r=a.data,l=a.headers["content-disposition"],n=t||(l?l.split(";")[1].split("filename=")[1]:e.slice(e.lastIndexOf("/")+1));download(r,n)}))}render(){const{button:e,disabled:a,onChange:r}=this.props,l=getPrefixCls("upload-file");return React__default.createElement(Upload,_extends$1({className:l},omit(this.props,["fileTypes","fileSize","button"]),{beforeUpload:this.beforeUpload,onChange:e=>{null==r||r(e)},onPreview:e=>__awaiter(this,void 0,void 0,(function*(){try{e.url&&(yield this.downloadFile(e.url,e.name))}catch(e){message.error(t("qm.download.error"))}})),onDownload:e=>__awaiter(this,void 0,void 0,(function*(){try{e.url&&(yield this.downloadFile(e.url,e.name))}catch(e){message.error(t("qm.download.error"))}}))}),this.props.children?this.props.children:React__default.createElement(Button,{icon:(null==e?void 0:e.icon)||React__default.createElement(UploadOutlined,null),disabled:a},(null==e?void 0:e.text)||t("qm.upload.text")))}}QmUploadFile.defaultProps={name:"file",multiple:!0,showUploadList:{showDownloadIcon:!0,downloadIcon:React__default.createElement(DownloadOutlined,null)}};const MODAL_WIDTH=790,PREVIEW_WIDTH=380,IMG_MAX_WIDTH=1920;class CropperPreview extends Component{constructor(){super(...arguments),this.cropperRef=React__default.createRef(),this.state={src:""},this.confirmHandle=()=>__awaiter(this,void 0,void 0,(function*(){const{quality:e}=this.props,{type:a,name:r,uid:l}=this.fileRef;this.cropperRef.current.getCroppedCanvas({maxWidth:IMG_MAX_WIDTH,fillColor:"image/png"===a?"transparent":"#fff",imageSmoothingEnabled:!1,imageSmoothingQuality:"high"}).toBlob((e=>__awaiter(this,void 0,void 0,(function*(){let n=new File([e],r,{type:a});n.uid=l;const{fileTypes:i=[],fileSize:o}=this.props;if(!(!i.length||i.includes(n.name.slice(n.name.lastIndexOf(".")+1).toLowerCase())))return message.warning(t("qm.upload.tooltip",{type:i.join(",")})),this.rejectRef("file type is error");if("function"!=typeof this.beforeUploadRef)return this.resolveRef(n);const s=this.beforeUploadRef(n,[n]);if("boolean"==typeof s||s){if(!0===s)return this.resolveRef(n);if(!1===s)return this.rejectRef("not upload");if(s&&"function"==typeof s.then)try{const e=yield s,t=Object.prototype.toString.call(e);"[object File]"!==t&&"[object Blob]"!==t||(n=e),this.resolveRef(n)}catch(e){this.rejectRef(e)}}else warn("CropperPreview","`beforeUpload` 必须返回 `boolean` 或 `Promise` 类型")}))),a,e),yield sleep(100),this.onClose()})),this.onOk=()=>{this.confirmHandle()},this.onClose=()=>{this.rejectRef(),this.setSrc("")}}get previewSize(){const{fixedSize:e}=this.props;return{width:`${PREVIEW_WIDTH}px`,height:e?`calc(${PREVIEW_WIDTH}px * ${e[1]/e[0]})`:"auto"}}setSrc(e){this.setState({src:e})}renderUpload(){const{children:e,beforeCrop:t}=this.props,a=Array.isArray(e)?e[0]:e;if(!a)return null;const r=a.props,{beforeUpload:l}=r,n=__rest(r,["beforeUpload"]);return this.beforeUploadRef=l,React__default.createElement(a.type,Object.assign(Object.assign({},n),{beforeUpload:(e,a)=>new Promise(((r,l)=>__awaiter(this,void 0,void 0,(function*(){if(t&&!(yield t(e,a)))return void l();this.fileRef=e,this.resolveRef=r,this.rejectRef=l;const n=new FileReader;n.onload=()=>{this.setSrc(n.result),n.onload=null},n.readAsDataURL(e)}))))}))}scaleHandle(e){this.cropperRef.current.relativeZoom(e,void 0)}rotateHandle(e){this.cropperRef.current.rotate(e)}renderCropper(){const{fixedSize:e}=this.props;return React__default.createElement("div",{className:"cropper-preview"},React__default.createElement("div",{className:"cropper-area"},React__default.createElement("div",{className:"img-cropper"},React__default.createElement(QmCropper,{ref:this.cropperRef,aspectRatio:e?e[0]/e[1]:e,src:this.state.src,dragMode:"move",preview:".preview"})),React__default.createElement("div",{className:"actions"},React__default.createElement(Space,{size:"small"},React__default.createElement(Button,{type:"primary",size:"middle",icon:React__default.createElement(ZoomInOutlined,null),onClick:()=>this.scaleHandle(.2)},t("qm.uploadCropper.zoomIn")),React__default.createElement(Button,{type:"primary",size:"middle",icon:React__default.createElement(ZoomOutOutlined,null),onClick:()=>this.scaleHandle(-.2)},t("qm.uploadCropper.zoomOut")),React__default.createElement(Button,{type:"primary",size:"middle",icon:React__default.createElement(RotateRightOutlined,null),onClick:()=>this.rotateHandle(90)},t("qm.uploadCropper.rotatePlus")),React__default.createElement(Button,{type:"primary",size:"middle",icon:React__default.createElement(RotateLeftOutlined,null),onClick:()=>this.rotateHandle(-90)},t("qm.uploadCropper.rotateSubtract"))))),React__default.createElement("div",{className:"preview-area"},React__default.createElement("div",{className:"preview",style:this.previewSize})))}render(){const{src:e}=this.state,a=getPrefixCls("cropper-preview");return React__default.createElement(React__default.Fragment,null,this.renderUpload(),e&&React__default.createElement(Modal,{visible:!0,wrapClassName:classNames(a),title:t("qm.uploadCropper.cropper"),width:MODAL_WIDTH,bodyStyle:{padding:10},onOk:this.onOk,onCancel:this.onClose,maskClosable:!1,destroyOnClose:!0},this.renderCropper()))}}CropperPreview.contextType=ConfigContext;const getBase64=e=>new Promise(((t,a)=>{const r=new FileReader;r.readAsDataURL(e),r.onload=()=>t(r.result),r.onerror=e=>a(e)}));class QmUploadImg extends Component{constructor(){super(...arguments),this.state={previewVisible:!1,previewImage:"",previewTitle:""},this.beforeUpload=(e,a)=>new Promise(((a,r)=>__awaiter(this,void 0,void 0,(function*(){const{fileTypes:r=[],fileSize:l}=this.props,n=!r.length||r.includes(e.name.slice(e.name.lastIndexOf(".")+1).toLowerCase()),i=!l||e.size/1024/1024<l,o=n&&i;if(n||message.warning(t("qm.upload.tooltip",{type:r.join(",")})),i||message.warning(t("qm.upload.sizeLimit",{size:l})),!o)return o||Upload.LIST_IGNORE;a(e)})))),this.handlePreview=e=>__awaiter(this,void 0,void 0,(function*(){e.url||e.preview||(e.preview=yield getBase64(e.originFileObj)),this.setState({previewImage:e.url||e.preview,previewVisible:!0,previewTitle:e.name||e.url.substring(e.url.lastIndexOf("/")+1)})}))}get showUploadButton(){var e,t;const a=null!==(t=null===(e=this.props.fileList)||void 0===e?void 0:e.length)&&void 0!==t?t:0;return!this.props.maxCount||a<this.props.maxCount}render(){const{previewVisible:e,previewImage:a,previewTitle:r}=this.state,{fixedSize:l,quality:n,fileTypes:i,fileSize:o,openCropper:s,beforeCrop:c}=this.props,d=getPrefixCls("upload-img"),u=React__default.createElement("div",null,React__default.createElement(PlusOutlined,null),React__default.createElement("div",{style:{marginTop:8}},t("qm.uploadCropper.dragableText"))),p=React__default.createElement(Upload,_extends$1({className:d},omit(this.props,["fileTypes","fileSize","fixedSize","quality"]),{beforeUpload:this.beforeUpload,onPreview:this.handlePreview}),this.showUploadButton?u:null);return React__default.createElement(React__default.Fragment,null,s?React__default.createElement(CropperPreview,{fixedSize:l,quality:n,fileTypes:i,fileSize:o,beforeCrop:c},p):p,React__default.createElement(Modal,{visible:e,title:r,bodyStyle:{padding:10},footer:null,onCancel:()=>{this.setState({previewVisible:!1})}},React__default.createElement("img",{alt:"",style:{width:"100%"},src:a})))}}function useResizeObserve(e){const[t,a]=React.useState({width:0,height:0});return React.useEffect((()=>{const t=e.current,r=e=>{const{inlineSize:t,blockSize:r}=e.contentBoxSize[0];a({width:t,height:r})};return t&&addResizeListener(t,r),()=>{t&&removeResizeListener(t,r)}}),[e]),t}QmUploadImg.defaultProps={name:"file",multiple:!0,accept:"image/*",listType:"picture-card",quality:1,openCropper:!0};const getParentKey=(e,t,a)=>{let r;for(let l=0;l<e.length;l++){const n=e[l];if(n.children)if(n.children.some((e=>e[a]===t)))r=n[a];else{const e=getParentKey(n.children,t,a);e&&(r=e)}}return r},treeFilter$1=(e,t)=>e.map((e=>Object.assign({},e))).filter((e=>(e.children=e.children&&treeFilter$1(e.children,t),t(e)||e.children&&e.children.length))),deepFindList=(e,t)=>{const a=[];return e.forEach((e=>{e.children&&a.push(...deepFindList(e.children,t)),t(e)&&a.push(e)})),a},deepFindNode=(e,t)=>{let a=null;for(let r=0;r<e.length;r++){if(Array.isArray(e[r].children)&&(a=deepFindNode(e[r].children,t)),a)return a;if(t(e[r]))return e[r]}return a},updateTreeData=(e,t,a,r)=>e.map((e=>e[a]===t?Object.assign(Object.assign({},e),{children:r}):e.children?Object.assign(Object.assign({},e),{children:updateTreeData(e.children,t,a,r)}):e)),getAllParentKey$1=(e,t)=>{const a=[];return e.forEach((e=>{e.children&&a.push(...getAllParentKey$1(e.children,t)),Array.isArray(e.children)&&e.children.length&&a.push(e[t])})),a},getParentKeys=(e,t,a)=>{for(let r=0;r<e.length;r++){if(e[r][a]===t)return[t];if(Array.isArray(e[r].children)){const l=getParentKeys(e[r].children,t,a);if(l)return[e[r][a],l].flat()}}},getChildKeys=(e,t)=>{var a;const r=(null===(a=e.children)||void 0===a?void 0:a.map((e=>e[t])))||[];return Array.isArray(e.children)&&e.children.forEach((e=>r.push(...getChildKeys(e,t)))),r},SearchTree=React__default.forwardRef(((e,a)=>{const{filterable:r=!0,multiple:l,draggable:n,dataSource:i,fetch:o,asyncLoad:s,checkStrictly:c,checkStrategy:d="SHOW_CHILD",placeholder:u=t("qm.form.inputPlaceholder"),fieldsDefine:p,value:f,height:m,defaultSelectedKeys:h=[],defaultExpandAll:g=!0,showSearchBar:_=!0,showCollapse:y=!0,onSelectChange:v,onCheckChange:b,onDragChange:R}=e,{size:E}=React__default.useContext(ConfigContext),x=React__default.useMemo((()=>{var t,a;return null!==(a=null!==(t=e.size)&&void 0!==t?t:E)&&void 0!==a?a:""}),[e.size,E]),C=(null==p?void 0:p.valueKey)||"value",T=(null==p?void 0:p.textKey)||"text";null==p||p.children;const S=React__default.useRef(null),w=useResizeObserve(S),[P,N]=React__default.useState(m),[I,A]=React__default.useState(!1),$=debounce((()=>{N(S.current.offsetHeight-B.current.offsetHeight-10)}),5);useUpdateEffect((()=>{m||$()}),[w.height]);const[O,F]=React__default.useState([]),[L,D]=React__default.useState({}),[k,H]=React__default.useState([]),[V,M]=React__default.useState([]),[j,q]=React__default.useState(""),[U,K]=React__default.useState(g),B=React__default.useRef(null),z=React__default.useRef([]),W=React__default.useRef([]);React__default.useEffect((()=>{Array.isArray(i)&&(G(i),H(Q(i)),D({}))}),[i]),React__default.useEffect((()=>{Z()}),[]),useUpdateEffect((()=>{Z()}),[null==o?void 0:o.params]),useUpdateEffect((()=>{M(X())}),[L]),React__default.useImperativeHandle(a,(()=>({INSERT_RECORD:(e,t)=>{const a=deepFindNode(O,(t=>e===t[C]));a&&(Array.isArray(a.children)?a.children.push(t):a.children=[t],G([...O]))},REMOVE_RECORD:e=>{var t;const a=getParentKey(O,e,C);if(void 0===a&&O.find((t=>t[C]===e)))G(O.filter((t=>t[C]!==e)));else{const r=deepFindNode(O,(e=>a===e[C]));if(!r)return;const l=null===(t=r.children)||void 0===t?void 0:t.findIndex((t=>e===t[C]));l>=0&&(r.children.splice(l,1),G([...O]))}},UPDATE_RECORD:(e,t)=>{const a=deepFindNode(O,(t=>e===t[C]));a&&(merge(a,t),G([...O]))}})));const G=e=>{F(e),z.current=e,W.current=getAllParentKey$1(e,C)},Q=e=>{if(l)return h;const t=deepFindList(e,(e=>h.includes(e[T])));return 1===t.length?[t[0][C]]:[]},Y=e=>{var t;return(null===(t=getParentKeys(O,e,C))||void 0===t?void 0:t.slice(0,-1))||[]},X=()=>{if(g)return W.current;const e=[];return k.forEach((t=>{if(l){if("SHOW_ALL"===d&&!W.current.includes(t)&&e.push(...Y(t)),"SHOW_CHILD"===d&&e.push(...Y(t)),"SHOW_PARENT"===d){const a=deepFind$1(O,t);if(a){const r=Y(t),l=getChildKeys(a,C);e.push(...r,...[t,...l].filter((e=>W.current.includes(e))))}}}else e.push(...Y(t))})),[...new Set(e)]},Z=()=>__awaiter(void 0,void 0,void 0,(function*(){var e;if(!o)return;const{api:t,params:a,dataKey:r,callback:l}=o;try{A(!0);const n=yield t(a);if(200===n.code){const t=Array.isArray(n.data)?n.data:null!==(e=get(n.data,r))&&void 0!==e?e:[];G(t),H(Q(t)),D({}),null==l||l(t)}}catch(e){}A(!1)})),J=e=>`${e}|${pinyin.parse(e).map((e=>2===e.type?e.target.toLowerCase().slice(0,1):e.target)).join("")}`,ee=getPrefixCls("search-tree"),te={[ee]:!0,[`${ee}--lg`]:"large"===x,[`${ee}--sm`]:"small"===x};return React__default.createElement("div",{ref:S,className:classNames(te)},React__default.createElement("div",{ref:B,className:"topper"},_&&React__default.createElement(Input.Search,{value:j,size:x,placeholder:u,allowClear:!0,onChange:e=>(e=>{if(!r)return;const t=treeFilter$1(z.current,(t=>{if(!e)return!0;const a=t[T]||"";return-1!==J(a).indexOf(e)}));q(e),F(t),g||e?M(getAllParentKey$1(t,C)):D({})})(e.target.value)}),y&&React__default.createElement("a",{className:"trigger",onClick:()=>{K(!U),M(U?[]:W.current)}},U?React__default.createElement(UpOutlined,null):React__default.createElement(DownOutlined,null)," ",t(U?"qm.form.collect":"qm.form.spread"))),React__default.createElement(QmSpin,{spinning:I},React__default.createElement(Tree,{fieldNames:{title:T,key:C,children:"children"},multiple:l,draggable:n,blockNode:n,checkable:l,selectable:!l,height:P,disabled:e.disabled,checkStrictly:c,selectedKeys:null!=f?f:k,checkedKeys:null!=f?f:k,expandedKeys:V,treeData:O,loadData:s?e=>{let{key:t,children:a}=e;return __awaiter(void 0,void 0,void 0,(function*(){var e;if(!o||a)return;const{api:r,params:l,dataKey:n,formatter:i=(e=>e)}=o;try{const a=yield r(i(Object.assign(Object.assign({},l),{[C]:t})));if(200===a.code){const r=Array.isArray(a.data)?a.data:null!==(e=get(a.data,n))&&void 0!==e?e:[],l=updateTreeData(z.current,t,C,r);G(l)}}catch(e){}}))}:void 0,titleRender:e.titleRender,filterTreeNode:e=>{if(!j)return!1;const t=e[T]||"";return-1!==J(t).indexOf(j)},onDragEnter:e=>{M(e.expandedKeys)},onDrop:e=>{const t=e.node.key,a=e.dragNode.key,r=e.node.pos.split("-"),l=e.dropPosition-Number(r[r.length-1]),n=(e,t,a)=>{for(let r=0;r<e.length;r++){if(e[r][C]===t)return a(e[r],r,e);e[r].children&&n(e[r].children,t,a)}},i=[...O];let o;if(n(i,a,((e,t,a)=>{a.splice(t,1),o=e})),e.dropToGap)if((e.node.children||[]).length>0&&e.node.expanded&&1===l)n(i,t,(e=>{e.children=e.children||[],e.children.unshift(o)}));else{let e,a=[];n(i,t,((t,r,l)=>{a=l,e=r})),-1===l?a.splice(e,0,o):a.splice(e+1,0,o)}else n(i,t,(e=>{e.children=e.children||[],e.children.unshift(o)}));G(i)},onDragEnd:e=>{null==R||R(e,O)},onExpand:e=>{M(e)},onSelect:e=>{H(e);const t=deepFindList(z.current,(t=>e.includes(get(t,C))));null==v||v(l?t:t[0])},onCheck:e=>{c&&(e=e.checked),H(e),"SHOW_CHILD"===d&&(e=e.filter((e=>!W.current.includes(e)))),"SHOW_PARENT"===d&&(e=e.filter(((e,t,a)=>!a.includes(getParentKey(O,e,C)))));const t=deepFindList(z.current,(t=>e.includes(get(t,C))));null==b||b(l?t:t[0])}})))}));SearchTree.displayName="SearchTree";const TableContext=createContext(void 0),columnItem={dataIndex:PropTypes__default.string.isRequired,title:PropTypes__default.string.isRequired,description:PropTypes__default.string,colSpan:PropTypes__default.number,width:PropTypes__default.number,minWidth:PropTypes__default.number,fixed:PropTypes__default.oneOf(["left","right"]),align:PropTypes__default.oneOf(["left","center","right"]),theadAlign:PropTypes__default.oneOf(["left","center","right"]),printFixed:PropTypes__default.bool,hidden:PropTypes__default.bool,noAuth:PropTypes__default.bool,noFixed:PropTypes__default.bool,ellipsis:PropTypes__default.bool,className:PropTypes__default.string,theadClassName:PropTypes__default.string,children:PropTypes__default.array,sorter:PropTypes__default.oneOfType([PropTypes__default.bool,PropTypes__default.func]),filter:PropTypes__default.shape({type:PropTypes__default.oneOf(["text","textarea","checkbox","radio","number","date","tree"]).isRequired,items:PropTypes__default.arrayOf(PropTypes__default.shape({text:PropTypes__default.string,value:PropTypes__default.oneOfType([PropTypes__default.string,PropTypes__default.number])})),style:PropTypes__default.object}),precision:PropTypes__default.number,formatType:PropTypes__default.oneOf(["date","datetime","dateShortTime","finance","percent","secret-name","secret-phone","secret-IDnumber","secret-bankNumber"]),required:PropTypes__default.bool,canCopy:PropTypes__default.bool,editRender:PropTypes__default.func,dictItems:PropTypes__default.arrayOf(PropTypes__default.shape({text:PropTypes__default.string,value:PropTypes__default.oneOfType([PropTypes__default.string,PropTypes__default.number])})),summation:PropTypes__default.shape({sumBySelection:PropTypes__default.bool,displayWhenNotSelect:PropTypes__default.bool,dataKey:PropTypes__default.string,unit:PropTypes__default.string,render:PropTypes__default.func}),groupSummary:PropTypes__default.shape({dataKey:PropTypes__default.string,unit:PropTypes__default.string,render:PropTypes__default.func}),headRender:PropTypes__default.func,render:PropTypes__default.func};PropTypes__default.arrayOf(PropTypes__default.shape(columnItem)).isRequired,PropTypes__default.func,PropTypes__default.array,PropTypes__default.oneOfType([PropTypes__default.string,PropTypes__default.func]).isRequired,PropTypes__default.bool,PropTypes__default.bool,PropTypes__default.shape({api:PropTypes__default.func.isRequired,params:PropTypes__default.object.isRequired,formatter:PropTypes__default.func,beforeFetch:PropTypes__default.func,afterFetch:PropTypes__default.func,stopToFirst:PropTypes__default.bool,dataKey:PropTypes__default.string,callback:PropTypes__default.func}),PropTypes__default.bool,PropTypes__default.bool,PropTypes__default.string,PropTypes__default.string,PropTypes__default.bool,PropTypes__default.bool,PropTypes__default.oneOfType([PropTypes__default.object,PropTypes__default.func]),PropTypes__default.oneOfType([PropTypes__default.object,PropTypes__default.func]),PropTypes__default.array,PropTypes__default.func,PropTypes__default.bool,PropTypes__default.bool,PropTypes__default.shape({type:PropTypes__default.oneOf(["checkbox","radio"]).isRequired,defaultSelectedRowKeys:PropTypes__default.array,selectedRowKeys:PropTypes__default.array,hideSelectAll:PropTypes__default.bool,checkStrictly:PropTypes__default.bool,filterable:PropTypes__default.bool,selectByClickRow:PropTypes__default.bool,selectFirstRowOnChange:PropTypes__default.bool,clearableAfterFetched:PropTypes__default.bool,selectAllOnCurrentPage:PropTypes__default.bool,fetchSelectedRows:PropTypes__default.shape({api:PropTypes__default.func.isRequired,params:PropTypes__default.object,dataKey:PropTypes__default.string}),fetchAllRowKeys:PropTypes__default.shape({api:PropTypes__default.func.isRequired,params:PropTypes__default.object,dataKey:PropTypes__default.string}),disabled:PropTypes__default.func,onChange:PropTypes__default.func,onSelect:PropTypes__default.func,onSelectAll:PropTypes__default.func}),PropTypes__default.shape({currentRowKey:PropTypes__default.oneOfType([PropTypes__default.number,PropTypes__default.string]),disabled:PropTypes__default.func,onChange:PropTypes__default.func}),PropTypes__default.shape({virtual:PropTypes__default.bool}),PropTypes__default.shape({defaultExpandAllRows:PropTypes__default.bool,defaultExpandedRowKeys:PropTypes__default.array,expandedRowKeys:PropTypes__default.array,hideExpandAll:PropTypes__default.bool,rowExpandable:PropTypes__default.func,expandedRowClassName:PropTypes__default.string,expandedRowRender:PropTypes__default.func,onExpand:PropTypes__default.func,onChange:PropTypes__default.func}),PropTypes__default.shape({groupItems:PropTypes__default.arrayOf(PropTypes__default.shape({dataIndex:PropTypes__default.string.isRequired,titleIndex:PropTypes__default.string,color:PropTypes__default.string,backgroundColor:PropTypes__default.string})),fetch:PropTypes__default.shape({api:PropTypes__default.func.isRequired,params:PropTypes__default.object,dataKey:PropTypes__default.string}),onChange:PropTypes__default.func}),PropTypes__default.func,PropTypes__default.bool,PropTypes__default.bool,PropTypes__default.bool,PropTypes__default.bool,PropTypes__default.shape({current:PropTypes__default.number,pageSize:PropTypes__default.number,pageSizeOptions:PropTypes__default.array,showSizeChanger:PropTypes__default.bool,showQuickJumper:PropTypes__default.bool}),PropTypes__default.shape({fileName:PropTypes__default.string,fetch:PropTypes__default.shape({api:PropTypes__default.func.isRequired,params:PropTypes__default.object}),cellStyle:PropTypes__default.bool,hideIcon:PropTypes__default.bool}),PropTypes__default.shape({showLogo:PropTypes__default.bool}),PropTypes__default.shape({fetch:PropTypes__default.shape({api:PropTypes__default.func.isRequired,params:PropTypes__default.object,dataKey:PropTypes__default.string}),fieldList:PropTypes__default.arrayOf(PropTypes__default.object)}),PropTypes__default.shape({position:PropTypes__default.oneOf(["top","bottom"]),hideAlert:PropTypes__default.bool,hideClearButton:PropTypes__default.bool}),PropTypes__default.oneOf(["left","right"]),PropTypes__default.func,PropTypes__default.func,PropTypes__default.bool,PropTypes__default.bool,PropTypes__default.bool,PropTypes__default.bool,PropTypes__default.bool,PropTypes__default.bool,PropTypes__default.bool,PropTypes__default.bool,PropTypes__default.bool,PropTypes__default.bool,PropTypes__default.bool,PropTypes__default.bool,PropTypes__default.func,PropTypes__default.func,PropTypes__default.func,PropTypes__default.func,PropTypes__default.func,PropTypes__default.func,PropTypes__default.func,PropTypes__default.func,PropTypes__default.func;const defaultProps={columns:[],dataSource:[],rowKey:"id",border:!0,resizable:!0,showHeader:!0,ellipsis:!0,multipleSort:!0,topSpaceAlign:"right",showFullScreen:!0,showRefresh:!0,showClipboard:!0,showSelectCollection:!0,showSuperSearch:!0,showFastSearch:!0,showGroupSummary:!0,showColumnDefine:!0,showTableInfo:!0},DEFAULT_DISTANCE=10,DEFAULT_TRUE_VALUE="1",DEFAULT_FALSE_VALUE="0",EMPTY_MIN_HEIGHT=100,MIN_POPPER_WIDTH=150,DATE_FORMAT="YYYY-MM-DD",DATE_TIME_FORMAT="YYYY-MM-DD HH:mm:ss",TIME_FORMAT="HH:mm:ss",DEFAULT_FILENAME_FORMAT="YYYYMMDDHHmmss",BUILT_IN_PLACEMENTS={bottomRight:{points:["tr","br"],offset:[0,4],overflow:{adjustX:1,adjustY:1}},bottomLeft:{points:["tl","bl"],offset:[0,4],overflow:{adjustX:1,adjustY:1}}};var EAlign;!function(e){e.left="flex-start",e.right="flex-end"}(EAlign||(EAlign={}));let instances=[];const TableManager={getFocusInstance:function(){var e;return null!==(e=instances[0])&&void 0!==e?e:null},getInstance:function(e){var t;return null!==(t=instances.find((t=>t.id===e)))&&void 0!==t?t:null},focus:function(e){const t=this.getInstance(e);t&&0!==instances.findIndex((e=>e===t))&&(this.deregister(e),instances=[t,...instances])},register:function(e,t){e&&t&&(null!==this.getInstance(e)&&this.deregister(e),instances=[{id:e,vm:t},...instances])},deregister:function(e){e&&(instances=instances.filter((t=>t.id!==e)))}},conjuctions=["&&","||","AND","OR","and","or","like","likes","in","nin","LIKE","LIKES","IN","NIN"];var sf={operations:function(e){const t=e.split(" "),a=[];let r=0;a[r]=[];for(let e=0;e<t.length;e++)conjuctions.includes(t[e])?(a[r]=a[r].join(" "),r++,a[r]=[]):a[r].push(t[e]);return a[r]=a[r].join(" "),a},number_operations:function(e){return this.operations(e).length},string_format:function(e){return"string"!=typeof e?e:e.split(/[\s'\s"]/).join("")},stringify:function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:" ";return"string"==typeof e?"'"+e.trim().replace(/(')/g,"\\$1").replace(/\(/g,"├").replace(/\)/g,"┤").replace(/\s/g,t)+"'":e},array_format:function(e){let t="[";for(let a=0,r=(e=Array.isArray(e)?e:[e]).length;a<r;a++)t+="number"==typeof e[a]?e[a]:"'"+e[a]+"'",a<r-1&&(t+=",");return t+="]",t},operation_format:function(e){const t=e.split(" ");for(let e=0;e<t.length;e++)""==t[e]&&(t.splice(e,1),e--);if("("==t[0]?t.splice(0,1):"("==t[0][0]&&(t[0]=t[0].split(""),t[0].splice(0,1),t[0]=t[0].join("")),")"==t[t.length-1])t.splice(t.length-1,1);else if(")"==t[t.length-1][t[t.length-1].length-1]){const e=t.length-1;t[e]=t[e].split(""),t[e].splice(t[e].length-1,1).join(""),t[e]=t[e].join("")}return t},find_replace:function(e,t,a){return e.split(t).join(a)},replace_symbols:function(e){return e=this.find_replace(e," AND "," && "),e=this.find_replace(e," and "," && "),e=this.find_replace(e," OR "," || "),e=this.find_replace(e," or "," || "),e=this.find_replace(e," <> "," != "),e=this.find_replace(e," LIKE "," like "),e=this.find_replace(e," LIKES "," likes "),e=this.find_replace(e," IN "," in "),e=this.find_replace(e," NIN "," nin ")}};const operations=["==","<",">","<=",">=","!=","like","likes","in","nin"];var vr={isBracketBalance:function(e){let t=0;const a=e.length;for(let r=0;r<a;r++){const a=e.charAt(r);"("===a&&t++,")"===a&&t--}return 0===t},replace_variables:function(e,t){let a="";for(let t=0;t<e.length;t++)"("==e[t]||")"==e[t]?a+=" "+e[t]+" ":a+=e[t];const r=a.split(" ").filter((e=>""!==e));for(let e=0;e<r.length;e++)operations.includes(r[e])&&("this"!=r[e-1]?r[e-1]=t+"."+r[e-1]:r[e-1]=t),operations.includes(r[e])&&(r.splice(e-1,3,`__query__(${r[e-1]}, '${r[e]}', ${r[e+1]})`),e-=2);return e=r.join(" ")}};const SPAN_CHAR_REG=/(\^|\.|\[|\]|\$|\(|\)|\||\*|\+|\?|\{|\}|\\)/g,PRIMITIVE_VALUES=["string","number","boolean","symbol"],escapeKeyword=e=>e.toString().replace(SPAN_CHAR_REG,"\\$1"),isPrimitive=e=>PRIMITIVE_VALUES.includes(typeof e),isDate$1=e=>"string"==typeof e&&/^\d{4}-\d{2}-\d{2}(\s+\d{2}:\d{2}:\d{2})?$/.test(e),createRegExp=e=>new RegExp(escapeKeyword(e.replace(/├/g,"(").replace(/┤/g,")").replace(/\^/g," ")),"i"),matchWhere=(e,t,a)=>{e=null!=e?e:"";let r=!0;switch(t){case"like":r=null!==e.toString().match(createRegExp(a));break;case"likes":r=a.split(/,|,/).some((t=>null!==e.toString().match(createRegExp(t))));break;case"in":isPrimitive(a)&&(a=[a]),Array.isArray(a)&&(r=Array.isArray(e)?a.every((t=>e.includes(t))):a.includes(e));break;case"nin":isPrimitive(a)&&(a=[a]),Array.isArray(a)&&(r=!(Array.isArray(e)?a.some((t=>e.includes(t))):a.includes(e)));break;case"!=":case"<>":r=(isDate$1(e)?e.slice(0,10):e)!=a;break;case"<":r=(isDate$1(e)?e.slice(0,10):e)<a;break;case"<=":r=(isDate$1(e)?e.slice(0,10):e)<=a;break;case">":r=(isDate$1(e)?e.slice(0,10):e)>a;break;case">=":r=(isDate$1(e)?e.slice(0,10):e)>=a;break;default:r=(isDate$1(e)?e.slice(0,10):e)==a}return r};window.__query__=function(){return matchWhere(arguments.length<=0?void 0:arguments[0],arguments.length<=1?void 0:arguments[1],arguments.length<=2?void 0:arguments[2])};const stringify=sf.stringify,array_format=sf.array_format,isBracketBalance=vr.isBracketBalance,where=(array,query,isTree)=>{let result=[];if(query=sf.replace_symbols(query),isTree)query=vr.replace_variables(query,"record"),result=deepTreeFilter(array,(record=>eval(query)));else{query=vr.replace_variables(query,"array[i]");for(let i=0,len=array.length;i<len;i++)eval(query)&&result.push(array[i])}return result},columnsFlatMap=e=>{const t=[];return e.forEach((e=>{e.children?t.push(...columnsFlatMap(e.children)):t.push(e)})),t},createFilterColumns=e=>e.filter((e=>(e.children&&(e.children=createFilterColumns(e.children)),!e.hidden&&!e.noAuth))),getAllColumns=e=>{const t=[];return e.forEach((e=>{t.push(e),e.children&&t.push(...getAllColumns(e.children))})),t},mapTableColumns=(e,t)=>e.map((e=>(e.children&&(e.children=mapTableColumns(e.children,t)),null==t||t(e),e))),deepFindColumn=(e,t)=>{let a=null;for(let r=0;r<e.length;r++){if(e[r].children&&(a=deepFindColumn(e[r].children,t)),a)return a;if(e[r].dataIndex===t)return e[r]}return a},findFirstColumn=e=>{const t=e.children;return t?t[0].children?findFirstColumn(t[0]):t[0]:e},findLastColumn=e=>{const t=e.children;return t?t[t.length-1].children?findLastColumn(t[t.length-1]):t[t.length-1]:e},filterTableColumns=(e,t)=>e.filter((e=>!t.includes(e.dataIndex))),deepFindRowKey=(e,t)=>{let a=null;for(let r=0;r<e.length;r++){if(e[r].children&&(a=deepFindRowKey(e[r].children,t)),a)return a;if(e[r].rowKey===t)return e[r]}return a},getAllTableData=e=>{const t=[];return e.forEach((e=>{t.push(e),e.children&&t.push(...getAllTableData(e.children))})),t},convertToRows=e=>{let t=1;const a=(e,r)=>{var l;if(r&&(e.level=r.level+1,t<e.level&&(t=e.level)),e.children){let t=0;e.children.forEach((r=>{e.fixed?r.fixed=e.fixed:delete r.fixed,a(r,e),t+=r.colSpan})),e.colSpan=t}else e.colSpan=null!==(l=e.colSpan)&&void 0!==l?l:1};e.forEach((e=>{e.level=1,a(e,null)}));const r=[];for(let e=0;e<t;e++)r.push([]);return getAllColumns(e).forEach((e=>{e.children?e.rowSpan=1:e.rowSpan=t-e.level+1,r[e.level-1].push(e)})),r},getNodeOffset=function(e,t){let a=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{left:0,top:0};if(e){const r=e.parentNode;if(a.top+=e.offsetTop,a.left+=e.offsetLeft,r&&r!==document.documentElement&&r!==document.body&&(a.top-=r.scrollTop,a.left-=r.scrollLeft),(!t||e!==t&&e.offsetParent!==t)&&e.offsetParent)return getNodeOffset(e.offsetParent,t,a)}return a},parseHeight=e=>"number"==typeof e?e:"string"==typeof e?/^\d+(?:px)?$/.test(e)?Number.parseInt(e,10):e:null,difference=(e,t)=>transform(e,((e,a,r)=>{isEqual$1(a,t[r])||(e[r]=isPlainObject(a)&&isPlainObject(t[r])?difference(a,t[r]):a)})),isArrayContain=(e,t)=>intersection(e,t).length===t.length,getCellValue=(e,t)=>{var a;return null!==(a=get(e,t))&&void 0!==a?a:""},setCellValue=(e,t,a,r)=>{r>=0&&null!=a&&(a=Number(a).toFixed(r)),set(e,t,null!=a?a:"")},getSplitValue=(e,t)=>{if(!t.includes("|"))return getCellValue(e,t);const a=[];return t.split("|").forEach((t=>{t&&a.push(getCellValue(e,t))})),a.join(" | ")},formatNumber=e=>{const t=(e=e.toString()).split("."),a="-"===t[0].charAt(0)?"-":"";let r=a?t[0].slice(1):t[0],l="";for(;r.length>3;)l=`,${r.slice(-3)}${l}`,r=r.slice(0,r.length-3);return r&&(l=r+l),`${a}${l}${t[1]?`.${t[1]}`:""}`},getDate=(e,t)=>e?dayjs(e,t):null,formatDate=(e,t)=>e?dayjs(e).format(t):"",createUidKey=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"";const t="xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,(e=>{const t=16*Math.random()|0;return("x"==e?t:3&t|8).toString(16)}));return e+t},getVNodeText=e=>{const t=[];if(isValidElement(e)){const{children:a}=e.props;Array.isArray(a)?a.forEach((e=>t.push(...getVNodeText(e)))):a&&t.push(...getVNodeText(a))}else t.push(e);return t},getGroupValidData=e=>e.filter((e=>!e._group)),createOrderBy=e=>{const t=[];return Object.keys(e).forEach((a=>{null!==e[a]&&t.push(`${a}|${e[a]}`)})),t.join(",")},createWhereSQL=function(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1],a="";if(Array.isArray(e)){let r=0;for(let l=0,n=e.length;l<n;l++){const n=e[l];if(!n.fieldName)continue;const i=Array.isArray(n.condition)?array_format(n.condition):stringify(n.condition,"^");a+=`${n.bracketLeft} ${t?`${n.fieldName}|${n.fieldType}`:n.fieldName} ${n.expression} ${i} ${n.bracketRight} ${n.logic} `,r=n.logic.length}a=a.slice(0,-1*r-2)}else{const r=5;for(const r in e){const[l,n]=r.includes("|")?r.split("|"):[r,""],i=e[r];for(const e in i){const r=Array.isArray(i[e])?array_format(i[e]):stringify(i[e],"^");"''"!==r&&"[]"!==r&&(a+=`${t?`${l}|${n}`:l} ${e} ${r} and `)}}a=a.slice(0,-1*r)}return a.replace(/\s+/g," ").trim()},groupByProps=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[];const a=e=>{const a=[];return t.forEach((t=>a.push(getCellValue(e,t)))),a},r={};return e.forEach((e=>{const t=JSON.stringify(a(e));r[t]=r[t]||[],r[t].push(e)})),Object.keys(r).map((e=>r[e]))},deepGetRowkey=(e,t)=>{for(let a=0;a<e.length;a++){if(e[a].rowKey===t)return[t];if(Array.isArray(e[a].children)){const r=deepGetRowkey(e[a].children,t);if(r)return[e[a].rowKey,r].flat()}}},deepFindRecord=(e,t)=>{let a=null;for(let r=0;r<e.length;r++){if(Array.isArray(e[r].children)&&(a=deepFindRecord(e[r].children,t)),a)return a;if(t(e[r]))return e[r]}return a},deepTreeFilter=(e,t)=>e.map((e=>Object.assign({},e))).filter((e=>(e.children=e.children&&deepTreeFilter(e.children,t),t(e)||e.children&&e.children.length)));class Store{constructor(){this.state={required:[],validate:[],edited:[],inserted:[],updated:[],removed:[]},this.addToRequired=e=>{-1===this.state.required.findIndex((t=>t.x===e.x&&t.y===e.y))&&this.state.required.push(e)},this.removeFromRequired=e=>{const t=this.state.required.findIndex((t=>t.x===e.x&&t.y===e.y));t<0||this.state.required.splice(t,1)},this.addToValidate=e=>{-1===this.state.validate.findIndex((t=>t.x===e.x&&t.y===e.y))&&this.state.validate.push(e)},this.removeFromValidate=e=>{const t=this.state.validate.findIndex((t=>t.x===e.x&&t.y===e.y));t<0||this.state.validate.splice(t,1)},this.addToEdited=e=>{-1===this.state.edited.findIndex((t=>t.x===e.x&&t.y===e.y))&&this.state.edited.push(e)},this.removeFromEdited=e=>{const t=this.state.edited.findIndex((t=>t.x===e.x&&t.y===e.y));t<0||this.state.edited.splice(t,1)},this.addToInserted=e=>{-1===this.state.inserted.findIndex((t=>t===e))&&this.state.inserted.push(e)},this.removeFromInserted=e=>{const t=this.state.inserted.findIndex((t=>t===e));t<0||this.state.inserted.splice(t,1)},this.addToUpdated=e=>{-1===this.state.updated.findIndex((t=>t===e))&&this.state.updated.push(e)},this.removeFromUpdated=e=>{const t=this.state.updated.findIndex((t=>t===e));t<0||this.state.updated.splice(t,1)},this.addToRemoved=e=>{-1===this.state.removed.findIndex((t=>t===e))&&this.state.removed.push(e)},this.removeFromRemoved=e=>{const t=this.state.removed.findIndex((t=>t===e));t<0||this.state.removed.splice(t,1)},this.clearAllLog=()=>{this.state.required=[],this.state.validate=[],this.state.edited=[],this.state.inserted=[],this.state.updated=[],this.state.removed=[]},this.destroy=()=>{for(const e in this)this[e]=null}}}const config$1={defaultColumnWidth:80,selectionColumnWidth:50,rowHeightMaps:{large:42,middle:34,small:26},sortDirections:["ascend","descend"],pagination:{current:1,pageSize:20,pageSizeOptions:[10,20,30,40,50],showSizeChanger:!0,showQuickJumper:!0},groupSummary:{total:{text:"记录数",value:"*"},recordTotalIndex:"nRecordsCount",summaryFieldName:"tsummary",groupbyFieldName:"tgroupby"},highSearch:{showSQL:!1},treeTable:{textIndent:17},dataKey:"records",summationKey:"summation",totalKey:"total",virtualScrollY:150,sorterFieldName:"tsortby",filterFieldName:"twhere",currentPageName:"currentPage",pageSizeName:"pageSize",showFilterType:!0,printWidth:1040,operationColumn:"__action__",selectionColumn:"__selection__",expandableColumn:"__expandable__",summaryIgnore:"sumIgnored"},useTableRef=(e,t)=>{let{getRowKey:a,$size:r}=t;const l=React__default.useRef({uid:createUidKey(),elementStore:{},originColumns:[],tableFullData:[],tableOriginData:[],allTableData:[],allRowKeys:[],deriveRowKeys:[],flattenRowKeys:[],fieldAuth:{},mergeCells:[],scrollYStore:{startIndex:0,endIndex:0,offsetSize:0,visibleSize:0,rowHeight:config$1.rowHeightMaps[r]},store:new Store,resizeState:{width:0,height:0,winHeight:window.innerHeight},handleState:{insert:null,remove:!1},summaries:{},treeTable:!1,scrollYLoad:!1,shouldToTop:!0,selectionRows:[],recordsMap:new Map,isOverlay:!1,isIE:isIE()}),n=function(e,t,r){let l=arguments.length>3&&void 0!==arguments[3]?arguments[3]:0;return e.map((e=>{const i=a(e,e.index),o=r?`${r}#${i}`:`${i}`,s={level:l,rowKey:i,rowKeyPath:o};return e.children&&(s.children=n(e.children,i,o,l+1)),t?Object.assign({},s,{parentRowKey:t}):s}))},i=e=>{const t=[];return e.forEach((e=>{var a;(null===(a=e.children)||void 0===a?void 0:a.length)?t.push(...i(e.children)):t.push(e.rowKey)})),t};return Object.assign(Object.assign({tableRef:l},l.current),{setElementStore:(e,t)=>{l.current.elementStore[e]=t},setOriginColumns:e=>{l.current.originColumns=e},setTableFullData:e=>{l.current.tableFullData=e},setTableOriginData:e=>{l.current.tableOriginData=e},setAllTableData:e=>{const t=getAllTableData(e);l.current.allTableData=t,l.current.allRowKeys=t.map((e=>a(e,e.index)))},setDeriveRowKeys:e=>{l.current.deriveRowKeys=n(e,"",""),l.current.flattenRowKeys=i(l.current.deriveRowKeys),l.current.treeTable=l.current.deriveRowKeys.some((e=>Array.isArray(e.children)&&e.children.length))},setFieldAuth:(e,t)=>{l.current.fieldAuth[e]=t},setMergeCells:e=>{const t=[];e.forEach((e=>{t.push(e);for(let a=1;a<e.colSpan;a++)for(let r=0;r<e.rowSpan;r++)t.push({row:e.row+r,col:e.col+a,rowSpan:0,colSpan:0});for(let a=1;a<e.rowSpan;a++)for(let r=0;r<e.colSpan;r++)t.push({row:e.row+a,col:e.col+r,rowSpan:0,colSpan:0})})),l.current.mergeCells=t},setScrollYStore:e=>{l.current.scrollYStore=e},setResizeState:e=>{l.current.resizeState=e},setHandleState:e=>{l.current.handleState=e},setSummaries:e=>{l.current.summaries=e},setScrollYLoad:e=>{l.current.scrollYLoad=e},setShouldToTop:e=>{l.current.shouldToTop=e},setSelectionRows:e=>{l.current.selectionRows=e},setRecordsMap:(e,t)=>{l.current.recordsMap.set(e,t)},setOverlay:e=>{l.current.isOverlay=e},clearElementStore:()=>{for(const e in l.current.elementStore)l.current.elementStore[e]=null},clearRecordsMap:()=>{l.current.recordsMap.clear()}})};let scrollBarWidth;const getScrollBarWidth=()=>{var e;if(isServer)return 0;if(void 0!==scrollBarWidth)return scrollBarWidth;const t=document.createElement("div");t.className="qm-scrollbar__wrap",t.style.visibility="hidden",t.style.width="100px",t.style.position="absolute",t.style.top="-9999px",document.body.appendChild(t);const a=t.offsetWidth;t.style.overflow="scroll";const r=document.createElement("div");r.style.width="100%",t.appendChild(r);const l=r.offsetWidth;return null===(e=t.parentNode)||void 0===e||e.removeChild(t),scrollBarWidth=a-l,scrollBarWidth},useTableState=e=>{var t,a,r,l,n,i,o,s,c;const{paginationConfig:d,rowSelection:u,expandable:p,rowHighlight:f}=e,{global:m}=React__default.useContext(ConfigContext),h={current:config$1.pagination.current,pageSize:null!==(l=null!==(t=null==d?void 0:d.pageSize)&&void 0!==t?t:null===(r=null===(a=null==m?void 0:m.table)||void 0===a?void 0:a.pagination)||void 0===r?void 0:r.pageSize)&&void 0!==l?l:config$1.pagination.pageSize,total:0},g=null!==(i=null!==(n=null==u?void 0:u.selectedRowKeys)&&void 0!==n?n:null==u?void 0:u.defaultSelectedRowKeys)&&void 0!==i?i:[],_=null!==(s=null!==(o=null==p?void 0:p.expandedRowKeys)&&void 0!==o?o:null==p?void 0:p.defaultExpandedRowKeys)&&void 0!==s?s:[],[y,v]=React__default.useState([]),[b,R]=React__default.useReducer(((e,t)=>isEqual$1(e,t)?e:t),{}),[E,x]=React__default.useReducer(((e,t)=>isEqual$1(e,t)?e:t),{}),[C,T]=React__default.useReducer(((e,t)=>isEqual$1(e,t)?e:t),[]),[S,w]=React__default.useState(h),[P,N]=React__default.useReducer(((e,t)=>isEqual$1(e,t)?e:t),g),[I,A]=React__default.useReducer(((e,t)=>isEqual$1(e,t)?e:t),_),[$,O]=React__default.useState(null!==(c=null==f?void 0:f.currentRowKey)&&void 0!==c?c:""),[F,L]=React__default.useState({gutterWidth:getScrollBarWidth(),tableWidth:0,tableBodyWidth:0,tableBodyHeight:0,viewportHeight:0,headerHeight:0,footerHeight:0,tableAutoHeight:0,tableFullHeight:0}),[D,k]=React__default.useState({export:!0,import:!0,print:!0}),[H,V]=React__default.useState(!1),[M,j]=React__default.useState(!1),[q,U]=React__default.useState(!1),[K,B]=React__default.useState(!1),[z,W]=React__default.useState(!1),[G,Q]=React__default.useState(!1);return{tableData:y,setTableData:v,filters:b,setFilters:R,sorter:E,setSorter:x,superFilters:C,setSuperFilters:T,pagination:S,setPagination:w,selectionKeys:P,setSelectionKeys:N,rowExpandedKeys:I,setRowExpandedKeys:A,highlightKey:$,setHighlightKey:O,layout:F,permission:D,setPermission:k,setLayout:L,spinning:H,setSpinning:V,scrollX:M,setScrollX:j,scrollY:q,setScrollY:U,isPingLeft:K,setPingLeft:B,isPingRight:z,setPingRight:W,isFullScreen:G,setFullScreen:Q}},deepMapColumns=e=>e.map((e=>(e.children&&(e.children.forEach((t=>{t.parentDataIndex=e.dataIndex,e.fixed?t.fixed=e.fixed:delete t.fixed})),e.children=deepMapColumns(e.children)),e))),formatFiltersParams=(e,t)=>{const a=[];if(Object.keys(e).length)for(const t in e){const[r,l]=t.split("|"),n=e[t];Object.keys(n).forEach((e=>{a.push({type:l,bracketLeft:"",fieldName:r,expression:e,value:n[e],bracketRight:"",logic:"and"})}))}return t.length&&t.forEach((e=>{a.push({type:e.fieldType,bracketLeft:e.bracketLeft,fieldName:e.fieldName,expression:e.expression,value:e.condition,bracketRight:e.bracketRight,logic:e.logic})})),a.length&&(a[a.length-1].logic=""),a},useTableMemo=(e,a)=>{const{fetch:r,columns:l,height:n,minHeight:i,maxHeight:o,border:s=!0,rowSelection:c,summation:d,expandable:u,webPagination:p,scrollPagination:f,dragMergeCell:m,showSuperSearch:h,showFastSearch:g,showGroupSummary:_,showTableImport:y,showClipboard:v,showSelectCollection:b,footRender:R}=e,{tableRef:E,tableFullData:x,tableData:C,sorter:T,filters:S,superFilters:w,pagination:P}=a,{selectionRows:N,summaries:I}=E.current,A=e=>{const a=deepMapColumns(e),r=(e=>{if(!e)return null;const{type:a}=e;return{dataIndex:config$1.selectionColumn,title:"radio"===a?t("qm.table.config.selectionText"):"",width:config$1.selectionColumnWidth,fixed:"left",type:a}})(c),l=(null==(n=u)?void 0:n.expandedRowRender)?{dataIndex:config$1.expandableColumn,title:"",width:config$1.selectionColumnWidth,fixed:"left",type:"expand"}:null;var n;return r&&a.unshift(r),l&&a.unshift(l),createFilterColumns(a)},$=React__default.useMemo((()=>!!(null==r?void 0:r.api)),[null==r?void 0:r.api]),O=React__default.useMemo((()=>!$&&!!p),[$,p]),F=React__default.useMemo((()=>$&&!!f),[$,f]),L=React__default.useMemo((()=>($||O)&&!F),[$,O,F]),D=React__default.useMemo((()=>!!(n||i||o)),[n,i,o]),k=React__default.useMemo((()=>A(l)),[l]),H=React__default.useMemo((()=>columnsFlatMap(k)),[k]),V=React__default.useMemo((()=>H.filter((e=>"function"==typeof e.editRender))),[H]),M=React__default.useMemo((()=>H.filter((e=>!!e.summation))),[H]),j=React__default.useMemo((()=>H.filter((e=>"left"===e.fixed))),[H]),q=React__default.useMemo((()=>H.filter((e=>"right"===e.fixed))),[H]),U=React__default.useMemo((()=>{const e=H.filter((e=>![config$1.expandableColumn,config$1.selectionColumn,config$1.operationColumn].includes(e.dataIndex)));return e.length?e[0].dataIndex:""}),[H]),K=React__default.useMemo((()=>M.length>0),[M]),B=React__default.useMemo((()=>!!R||K),[R,K]),z=React__default.useMemo((()=>convertToRows(k).length>1),[k]),W=React__default.useMemo((()=>s||z),[s,z]),G=React__default.useMemo((()=>H.some((e=>e.sorter))),[H]),Q=React__default.useMemo((()=>H.some((e=>e.filter))),[H]),Y=React__default.useMemo((()=>M.some((e=>!!e.summation.dataKey))),[M]),X=React__default.useMemo((()=>!$&&!!y),[$,y]),Z=React__default.useMemo((()=>!!v&&V.length>0),[v,V]),J=React__default.useMemo((()=>!!b&&"checkbox"===(null==c?void 0:c.type)),[b,c]),ee=React__default.useMemo((()=>!!h&&Q),[h,Q]),te=React__default.useMemo((()=>!$&&!!g&&Q),[$,g,Q]),ae=React__default.useMemo((()=>!!_&&H.some((e=>!!e.groupSummary))),[H]),re=React__default.useMemo((()=>{var e;return!!(null===(e=null==d?void 0:d.groupItems)||void 0===e?void 0:e.length)}),[d]),le=React__default.useMemo((()=>!!m&&!$&&!p),[m,$,p]),ne=React__default.useMemo((()=>x.some((e=>Array.isArray(e.children)&&e.children.length))),[x]),ie=React__default.useMemo((()=>!C.length),[C]),oe=React__default.useMemo((()=>(()=>{const e={};return M.forEach((t=>{const{dataIndex:a,precision:r,summation:l}=t,{sumBySelection:n,displayWhenNotSelect:i,unit:o}=l,s=re?getGroupValidData(E.current.tableFullData):E.current.tableFullData,c=!N.length&&!!i;let d=(!n||c?s:N).reduce(((e,t)=>{if(null==t?void 0:t[config$1.summaryIgnore])return e;const r=Number(getCellValue(t,a));return Number.isNaN(r)?e:new Big(e).plus(r).toNumber()}),0);!Object.keys(I).includes(a)||n&&!c||(d=Number(getCellValue(I,a))),setCellValue(e,a,d);let u=r>=0?d.toFixed(r):d;u=formatNumber(u),setCellValue(e,`${a}_text`,o?`${u} ${o}`:u)})),[e]})()),[x,N,I]),se=React__default.useMemo((()=>(e=>e.filter((e=>e.summation.dataKey)).map((e=>`sum|${e.dataIndex}`)).join(","))(M)),[M]),ce=React__default.useMemo((()=>{var e;const t=createOrderBy(T),a=formatFiltersParams(S,w),l=t?{[config$1.sorterFieldName]:t}:null,n=a.length?{[config$1.filterFieldName]:a}:null,i=se?{[config$1.groupSummary.summaryFieldName]:se,usedJH:1}:null,o=null!==(e=null==r?void 0:r.params)&&void 0!==e?e:null,s={[config$1.currentPageName]:P.current,[config$1.pageSizeName]:P.pageSize};return Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({},l),n),i),o),s)}),[null==r?void 0:r.params,P.current,P.pageSize,T,S,w,se]);return{isFetch:$,isWebPagination:O,isScrollPagination:F,showPagination:L,shouldUpdateHeight:D,tableColumns:k,flattenColumns:H,editableColumns:V,summationColumns:M,leftFixedColumns:j,rightFixedColumns:q,firstDataIndex:U,showSummary:K,showFooter:B,isHeadGroup:z,bordered:W,isHeadSorter:G,isHeadFilter:Q,isServiceSummation:Y,isSelectCollection:J,isTableImport:X,isTableClipboard:Z,isSuperSearch:ee,isFastSearch:te,isGroupSummary:ae,isGroupSubtotal:re,isDragMergeCell:le,isTreeTable:ne,isTableEmpty:ie,summationRows:oe,fetchParams:ce}};function useDebounce(e,t){const a=React.useRef();return React.useEffect((()=>()=>clearTimeout(a.current)),[]),()=>{clearTimeout(a.current),a.current=setTimeout(e,t)}}const useTableCore=(e,t)=>{const{rowKey:a,dataSource:r,summation:l,fetch:n,rowSelection:i,expandable:o,treeConfig:s,authConfig:c,ignorePageIndex:d,columnsChange:u,onScrollEnd:p,onDataChange:f,onDataLoad:m,onChange:h}=e,{getRowKey:g,tableRef:_,tableElementRef:y,tableBodyRef:v,$size:b,tableColumns:R,tableFullData:E,pagination:x,layout:C,filters:T,sorter:S,superFilters:w,fetchParams:P,selectionKeys:N,rowExpandedKeys:I,highlightKey:A,summationColumns:$,shouldUpdateHeight:O,isFetch:F,isTreeTable:L,isWebPagination:D,isScrollPagination:k,isServiceSummation:H,isGroupSubtotal:V,doLayout:M,setTableData:j,setTableFullData:q,setTableOriginData:U,setAllTableData:K,setDeriveRowKeys:B,setPagination:z,setSpinning:W,setSorter:G,setFilters:Q,setSuperFilters:Y,setSelectionKeys:X,setRowExpandedKeys:Z,setHighlightKey:J,setSelectionRows:ee,setScrollYLoad:te,setScrollYStore:ae,setFieldAuth:re,setResizeState:le,setSummaries:ne,setPermission:ie,setRecordsMap:oe,resetTableScroll:se,clearElementStore:ce,clearRecordsMap:de}=t,{store:ue}=_.current,pe=useResizeObserve(y),fe=React__default.useRef(Object.assign({},P)),me=React__default.useRef({list:[],maps:new Map});useUpdateEffect((()=>{M()}),[R,b,C.tableAutoHeight]),useUpdateEffect((()=>{he()}),[pe]),useUpdateEffect((()=>{Ye(),Xe(),Ze(),F||(D&&je(),Le(r))}),[r,null==n?void 0:n.params]),useUpdateEffect((()=>{const e=Ae(P,fe.current);e||F&&(null==i?void 0:i.clearableAfterFetched)&&Je(),!e&&P[config$1.currentPageName]>1&&!(null==n?void 0:n.stopToFirst)?je():F&&Fe(),fe.current=P}),[P]),useUpdateEffect((()=>{D&&ze(),k||se(),Pe()}),[x.current,x.pageSize]),useUpdateEffect((()=>{F||_e(E.length),M()}),[E]),useUpdateEffect((()=>{L&&(null==s?void 0:s.virtual)&&(qe(),ze())}),[I]);const he=()=>{const{scrollYLoad:e,resizeState:t}=_.current,{height:a}=t,{width:r,height:l}=pe,n=l!==a;M(),n&&O&&e&&ze(),le(Object.assign({},t,{width:r,height:l}))},ge=()=>{A&&v.current.setClickedValues([A,""]),"radio"===(null==i?void 0:i.type)&&N.length&&v.current.setClickedValues([N[0],""])},_e=e=>{e!==x.total&&z((t=>Object.assign({},t,{total:e})))},ye=debounce((e=>{He(),null==p||p(e)})),ve=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;const{scrollYStore:t}=_.current,{startIndex:a,endIndex:r,offsetSize:l,visibleSize:n,rowHeight:i}=t,o=Math.floor(e/i),s=Math.max(0,o-1-l),c=o+n+l;(o<=a||o>=r-n-1)&&(a===s&&r===c||(ae(Object.assign({},t,{startIndex:s,endIndex:c})),ze()))},be=e=>V?Re(Ee(e,0)):e,Re=e=>{const t=[];return e.forEach((e=>{e.children&&t.push(...Re(e.children)),delete e.children,t.push(e)})),t},Ee=(e,t)=>{var r;const n=null===(r=l.groupItems)||void 0===r?void 0:r[t];if(!n)return e.forEach(((t,a)=>{t._rowSpan=0===a?e.length:0,t._colSpan=1})),e;return groupByProps(e,[n.dataIndex]).map((e=>{const r={children:Ee(e,t+1),_group:n.dataIndex};return"function"!=typeof a&&setCellValue(r,a.toString(),createUidKey()),n.titleIndex&&setCellValue(r,n.titleIndex,getCellValue(e[0],n.titleIndex)),setCellValue(r,n.dataIndex,getCellValue(e[0],n.dataIndex)),$.forEach((e=>{var t;const{dataIndex:a}=e,l=null===(t=r.children)||void 0===t?void 0:t.reduce(((e,t)=>{if(t[config$1.summaryIgnore])return e;const r=Number(getCellValue(t,a));return Number.isNaN(r)?e:e+r}),0);setCellValue(r,a,l)})),r}))},xe=e=>{const{selectionRows:t,allTableData:a,recordsMap:r}=_.current;if(F)return[...t.filter((t=>e.includes(g(t,t.index)))),...a.filter((a=>{const r=g(a,a.index);return e.includes(r)&&-1===t.findIndex((e=>g(e,e.index)===r))}))];const l=[];for(let t=0,a=e.length;t<a;t++){const a=e[t];r.has(a)&&l.push(r.get(a))}return l},Ce=e=>{const{type:t,checkStrictly:a=!0}=i||{},r=Array.isArray(e)?e:N;let l=[];return _.current.treeTable&&!a&&r.forEach((e=>{l.push(...((e,t)=>{var a;const{deriveRowKeys:r}=_.current,l=deepFindRowKey(r,e);let n=[];if(!l)return n;const i=Se((null==l?void 0:l.children)||[]),o=(null===(a=deepGetRowkey(r,e))||void 0===a?void 0:a.slice(0,-1).reverse())||[];return n=[...new Set([...t,...i])],o.forEach((e=>{var t;const a=deepFindRowKey(r,e),l=isArrayContain(n,(null===(t=null==a?void 0:a.children)||void 0===t?void 0:t.map((e=>e.rowKey)))||[]);n=l?[...n,e]:n.filter((t=>t!==e))})),n})(e,r))})),l="radio"===t?r.slice(0,1):[...new Set([...r,...l])],l},Te=e=>{const{allRowKeys:t,deriveRowKeys:a,flattenRowKeys:r}=_.current,{defaultExpandAllRows:l,expandedRowRender:n}=o||{},i=Array.isArray(e)?e:I;if(_.current.treeTable){n&&warn("Table","树结构表格不能再设置展开行的 `expandedRowRender` 参数");const e=[...N];A&&e.unshift(A);let o=[];return e.forEach((e=>{const t=deepGetRowkey(a,e)||[];o.push(...t.length>1?t.slice(0,-1).reverse():t)})),o=l?t:[...new Set([...i,...o])],o.filter((e=>!r.includes(e)))}return o?l?t.slice(0):[...i]:[]},Se=e=>{const t=[];for(let a=0;a<e.length;a++)Array.isArray(e[a].children)&&t.push(...Se(e[a].children)),t.push(e[a].rowKey);return t},we=(e,t)=>{const a=[];return e.forEach((e=>{e.children&&a.push(...we(e.children,t)),e.rowKey===t&&e.parentRowKey&&a.push(e.parentRowKey)})),a.length&&a.push(...we(e,a[a.length-1])),a},Pe=debounce((()=>{ke(),null==h||h(x,Ie(T),Ne(S),w,{currentDataSource:Ke()})})),Ne=e=>{const t={};for(const a in e)null!==e[a]&&(t[a]=e[a]);return t},Ie=e=>{const t={};for(const a in e){if(!a.includes("|"))continue;const[r,l]=a.split("|");t[`${r}|${l}`]=e[a]}return t},Ae=(e,t)=>{const a=Object.keys(difference(e,t));return 1===a.length&&(a.includes(config$1.currentPageName)||a.includes(config$1.pageSizeName))},$e=()=>__awaiter(void 0,void 0,void 0,(function*(){var t;if(!c)return;let a=omit(c,["fetch"]);if(c.fetch){const{api:e,params:r,dataKey:l}=c.fetch;try{const n=yield e(r);200===n.code&&(a=null!==(t=l?get(n.data,l):n.data)&&void 0!==t?t:{})}catch(e){}}if(Object.keys(a).length){const{isExport:e=1,isImport:t=1,isPrint:r=1}=a;ie((a=>Object.assign({},a,{export:!!e,import:!!t,print:!!r})))}if(Array.isArray(a.fieldList)){const{originColumns:t}=_.current,r=mapTableColumns(e.columns,(e=>{const{dataIndex:r}=e,l=a.fieldList.find((e=>e.dataIndex===r));if(l){const{visible:a=1,disabled:n,secretName:i}=l,o=deepFindColumn(t,r);re(r,{visible:a,disabled:n,secretName:i}),a||(e.noAuth=!0,o.noAuth=!0),i&&(e.formatType=`secret-${i}`,o.formatType=`secret-${i}`)}}));null==u||u(r)}})),Oe=()=>__awaiter(void 0,void 0,void 0,(function*(){var e,t,a;if(!n)return;const{formatter:r=(e=>e),beforeFetch:i=trueNoop,afterFetch:o,callback:s}=n;if(!i(P))return;const c=k&&P[config$1.currentPageName]>fe.current[config$1.currentPageName]&&Ae(P,fe.current),d=!!(null===(e=null==l?void 0:l.fetch)||void 0===e?void 0:e.api);W(!0);try{const[e,i]=d?yield Promise.all([n.api(r(P)),l.fetch.api(r(P))]):[yield n.api(r(P))];if(d?200===e.code&&200===i.code:200===e.code){const r=null!==(t=n.dataKey)&&void 0!==t?t:config$1.dataKey;let l=null!==(a=get(e.data,r))&&void 0!==a?a:[];l="function"==typeof o?o(l):l;const d=get(e.data,r.replace(/[^.]+$/,config$1.totalKey))||l.length||0;Le(c?_.current.tableFullData.concat(l):l),_e(d),De((null==i?void 0:i.data)||e.data),null==s||s(e.data)}}catch(e){}hasOwn(n,"stopToFirst")&&(n.stopToFirst=!1),W(!1)})),Fe=useDebounce(Oe),Le=e=>{const t=e=>e.map(((e,a)=>(Array.isArray(e.children)&&e.children.length&&(e.children=t(e.children)),e.index=a,d||(e.pageIndex=(e=>{const{current:t,pageSize:a}=x;return!F||k?e:(t-1)*a+e})(a)),e))),a=be(t(e));We(a),Ge(a),Qe(),X(Ce()),Z(Te()),ee(xe(N)),ke(),null==m||m(a)},De=e=>{var t,a,r;if(!H)return;const n=null!==(a=null===(t=null==l?void 0:l.fetch)||void 0===t?void 0:t.dataKey)&&void 0!==a?a:config$1.summationKey,i=null!==(r=n?get(e,n):e)&&void 0!==r?r:{},o={};$.filter((e=>!!e.summation.dataKey)).forEach((e=>{setCellValue(o,e.dataIndex,Number(getCellValue(i,e.summation.dataKey)))})),ne(o)},ke=()=>{const{type:e,selectFirstRowOnChange:t}=i||{};if("radio"===e&&t){const e=Ke();if(e.length){const t=g(e[0],e[0].index);X([t])}else X([])}},He=()=>{if(!k)return;const e=Me();x.current>=e||Ve(Object.assign(Object.assign({},x),{current:x.current+1}))},Ve=e=>{let{current:t,pageSize:a}=e;z((e=>Object.assign({},e,{current:t,pageSize:a})))},Me=()=>{const{pageSize:e,total:t}=x;return Math.ceil(t/e)},je=()=>{Ve(Object.assign({},x,{current:1}))},qe=()=>{if(!_.current.treeTable||!(null==s?void 0:s.virtual))return;const e=Ue(_.current.deriveRowKeys,(()=>{const{allTableData:e,allRowKeys:t}=_.current,{rowExpandable:a}=o||{},r=[];return"function"==typeof a&&e.forEach(((e,l)=>!a(e)&&r.push(t[l]))),r.length?I.filter((e=>!r.includes(e))):I})());me.current.list=e,me.current.maps.clear(),e.forEach(((e,t)=>me.current.maps.set(e.rowKey,t)))},Ue=(e,t)=>{const a=[];return e.forEach((e=>{if(e.children&&a.push(...Ue(e.children,t)),void 0===e.parentRowKey)a.push({rowKey:e.rowKey,level:e.level});else if(t.includes(e.parentRowKey)){e.rowKeyPath.split("#").slice(0,-1).every((e=>t.findIndex((t=>t==e))>-1))&&a.push({rowKey:e.rowKey,level:e.level})}})),a},Ke=()=>D?(()=>{const{current:e,pageSize:t}=x;return _.current.tableFullData.slice((e-1)*t,e*t)})():_.current.tableFullData,Be=e=>{const{scrollYLoad:t,scrollYStore:a}=_.current;j(t?e.slice(a.startIndex,a.endIndex):e)},ze=()=>{let e=Ke();_.current.treeTable&&(null==s?void 0:s.virtual)&&(e=(e=>{const{allTableData:t,allRowKeys:a}=_.current,{list:r,maps:l}=me.current,n=[];for(let e=0,i=a.length;e<i;e++){const i=a[e];l.has(i)&&(t[e]._level=r[l.get(i)].level,n.push(t[e]))}return n})()),te(e.length>config$1.virtualScrollY),(e=>{const{elementStore:t,scrollYStore:a,scrollYLoad:r}=_.current,{startIndex:l,rowHeight:n}=a;let i="",o="";r&&(i=`translateY(${Math.max(0,l*n)+"px"})`,o=e.length*n+"px"),t.$tableBody.style.transform=i,t.$tableYspace.style.height=o})(e),Be(e)},We=e=>{q(e),K(e),B(e),qe(),ze()},Ge=e=>{U(e)},Qe=()=>{const{allTableData:e}=_.current;de(),e.forEach((e=>oe(g(e,e.index),e)))},Ye=()=>{G({})},Xe=()=>{Q({})},Ze=()=>{Y([])},Je=()=>{X([])};return{initialTable:()=>{$e(),ge(),F?Oe():Le(r)},createTableFullData:We,getTableData:Oe,handleTableData:Be,createTableData:Le,createGroupData:be,createSelectionKeys:Ce,createSelectionRows:xe,createRowExpandedKeys:Te,findParentRowKeys:we,getAllChildRowKeys:Se,doFieldValidate:(e,t,a,r)=>{if(!Array.isArray(e))return warn("Table","可编辑单元格的校验规则 `rules` 配置不正确");e.length&&(ue.removeFromRequired({x:a,y:r}),ue.removeFromValidate({x:a,y:r}),e.forEach((e=>{var l;e.required&&isEmpty(t)&&ue.addToRequired({x:a,y:r,text:e.message}),"function"!=typeof e.validator||(null===(l=e.validator)||void 0===l?void 0:l.call(e,t))||ue.addToValidate({x:a,y:r,text:e.message})})))},getTableLog:()=>{const{required:e,validate:t,inserted:a,updated:r,removed:l}=ue.state,n=intersection(a,l),i=e=>e.map((e=>({rowKey:e.x,dataIndex:e.y,text:e.text})));return{required:i(e),validate:i(t),inserted:a.filter((e=>!n.includes(e))),updated:r.filter((e=>![...intersection(r,a),...intersection(r,l)].includes(e))),removed:l.filter((e=>!n.includes(e)))}},dataChange:()=>{null==f||f(_.current.tableFullData)},tableChange:Pe,toLastPage:()=>{const e=Me();x.current!==e&&Ve(Object.assign({},x,{current:e}))},toFirstPage:je,getPageCount:Me,pagerChangeHandle:Ve,triggerScrollYEvent:e=>{ve(e)},scrollBottomDebouncer:ye,clearTableSorter:Ye,clearTableFilter:Xe,clearSuperFilters:Ze,clearRowSelection:Je,clearRowHighlight:()=>{J("")},clearTableLog:()=>{ue.clearAllLog()},destroy:()=>{ce(),ue.destroy(),TableManager.deregister(_.current.uid)}}},useTableLayout=(e,t)=>{const{height:a,minHeight:r,maxHeight:l,resizable:n,showHeader:i,spanMethod:o}=e,{getRowKey:s,tableRef:c,$size:d,tableColumns:u,flattenColumns:p,leftFixedColumns:f,layout:m,scrollY:h,tableData:g,showFooter:_,showPagination:y,isWebPagination:v,isFullScreen:b,setLayout:R,setScrollX:E,setScrollY:x,setElementStore:C,setScrollYStore:T,setShouldToTop:S}=t,w=React__default.useRef(h),P=React__default.useMemo((()=>{const{tableFullHeight:e,tableAutoHeight:t}=m,n={};return r&&Object.assign(n,{minHeight:`${parseHeight(r)}px`}),l&&Object.assign(n,{maxHeight:`${parseHeight(l)}px`}),b?Object.assign(Object.assign({},n),{maxHeight:"",minHeight:"",height:`${e}px`}):a?Object.assign(Object.assign({},n),{height:"auto"!==a?`${parseHeight(a)}px`:`${t}px`}):n}),[a,l,r,b,m]),N=e=>{const{scrollYStore:t,isIE:a}=c.current,{startIndex:r,endIndex:l}=t,n=config$1.rowHeightMaps[d],i=Math.max(8,Math.ceil(e/n)+2),o=a?5:0;T(Object.assign({},t,{visibleSize:i,offsetSize:o,endIndex:Math.max(r+i+o,l),rowHeight:n}))},I=(e,t)=>{const{elementStore:a,scrollYStore:r,allTableData:l}=c.current,n=a.$tableBody.parentNode;if(void 0!==t&&t>=0)n.scrollTop=t*r.rowHeight;else{const t=(v?getAllTableData(g):l).findIndex((t=>e===s(t,t.index)));n.scrollTop=(t<0?0:t)*r.rowHeight}};return{createElementStore:e=>{Object.keys(e).forEach((t=>{C(t,e[t])}))},tableStyles:P,getSpan:(e,t,a,r,l)=>{let n=1,i=1;if("function"==typeof o){const s=o({row:e,column:t,rowIndex:a,columnIndex:r,tableData:l});Array.isArray(s)?(n=s[0],i=s[1]):isPlainObject(s)&&(n=s.rowSpan,i=s.colSpan)}const{mergeCells:s}=c.current;if(s.length>0){const e=s.find((e=>e.row===a&&e.col===r));e&&(n=e.rowSpan,i=e.colSpan)}return{rowSpan:n,colSpan:i}},getStickyLeft:e=>{p.findIndex((t=>t.dataIndex===e))<0&&(e=findFirstColumn(deepFindColumn(u,e)).dataIndex);let t=0;for(let a=0;a<p.length;a++){const r=p[a];if(r.dataIndex===e)break;t+=parseHeight(r.width||r.renderWidth||0)}return t},getStickyRight:e=>{p.findIndex((t=>t.dataIndex===e))<0&&(e=findLastColumn(deepFindColumn(u,e)).dataIndex);let t=0;for(let a=p.length-1;a>=0;a--){const r=p[a];if(r.dataIndex===e)break;t+=parseHeight(r.width||r.renderWidth||0)}return t},scrollXToColumn:(e,t)=>{const{elementStore:a}=c.current,r=void 0===t?p.findIndex((t=>t.dataIndex===e)):t;if(r<0)return;const l=f.map((e=>e.width||e.renderWidth||config$1.defaultColumnWidth)).reduce(((e,t)=>e+t),0);a.$tableBody.parentNode.scrollLeft=a.$tableBody.querySelectorAll("tbody > tr > td")[r].offsetLeft-l},scrollYToRecord:I,rowInViewport:e=>{const{elementStore:t,scrollYStore:a}=c.current,{viewportHeight:r,gutterWidth:l}=m,n=e*a.rowHeight,i=t.$tableBody.parentNode;return!(n<i.scrollTop||n+a.rowHeight>i.scrollTop+(scrollX?r-l:r))},calcTableHeight:()=>{if("auto"!==a)return;const{elementStore:e,resizeState:t}=c.current,r=t.winHeight-e.$table.getBoundingClientRect().top-(y?SizeHeight["small"!==d?"middle":d]+DEFAULT_DISTANCE:0)-DEFAULT_DISTANCE;R((e=>Object.assign({},e,{tableAutoHeight:r})))},resetTableScroll:()=>{const{shouldToTop:e}=c.current;e&&I("",0),S(!0)},doLayout:()=>{(()=>{const{elementStore:e,scrollYLoad:t,resizeState:a}=c.current;if(!e.$table.offsetParent)return;const r=e.$table.offsetHeight,l=i?e.$header.offsetHeight:m.headerHeight,n=_?e.$footer.offsetHeight:m.footerHeight,o=r-l-n,s=e.$tableBody.offsetHeight,d=t||s>o;let u=0;if(b){const t=e.$toper?e.$toper.offsetHeight+DEFAULT_DISTANCE:0,r=e.$pager?e.$pager.offsetHeight+DEFAULT_DISTANCE:0;u=a.winHeight-t-r-2*DEFAULT_DISTANCE}o!==m.viewportHeight&&N(o),w.current=d,x(d),R((e=>Object.assign({},e,{headerHeight:l,footerHeight:n,viewportHeight:o,tableBodyHeight:s,tableFullHeight:u})))})(),(()=>{const{elementStore:e}=c.current,t=e.$table.clientWidth,a=w.current?m.gutterWidth:0,{defaultColumnWidth:r}=config$1,l=p.filter((e=>"number"!=typeof e.width));let i=0;if(p.forEach((e=>{"number"==typeof e.width&&(e.renderWidth=void 0)})),l.length>0){if(p.forEach((e=>{i+=e.width||e.minWidth||r})),i<=t-a){E(!1);const e=t-a-i;if(1===l.length&&n)l[0].renderWidth=(l[0].minWidth||r)+e;else{const t=e/l.reduce(((e,t)=>e+(t.minWidth||r)),0);let a=0;l.forEach(((e,l)=>{if(0===l)return;const n=Math.floor((e.minWidth||r)*t);a+=n,e.renderWidth=(e.minWidth||r)+n})),n&&(l[0].renderWidth=(l[0].minWidth||r)+e-a)}}else E(!0),l.forEach((e=>{e.renderWidth=e.minWidth||r}));R((e=>Object.assign({},e,{tableBodyWidth:Math.max(i,t)})))}else p.forEach((e=>{e.renderWidth=e.width||e.minWidth||r,i+=e.renderWidth})),E(i>t),R((e=>Object.assign({},e,{tableBodyWidth:i})));R((e=>Object.assign({},e,{tableWidth:t})))})()}}},useTableEffect=(e,t)=>{const{columns:a,summation:r,rowSelection:l,expandable:n,rowHighlight:i,mergeCells:o=[]}=e,{tableRef:s,topElementRef:c,tableElementRef:d,tableBodyRef:u,resizableBarRef:p,$size:f,scrollX:m,pagination:h,selectionKeys:g,rowExpandedKeys:_,highlightKey:y,summationRows:v,summationColumns:b,showSummary:R,isWebPagination:E,isScrollPagination:x,isTreeTable:C,toLastPage:T,toFirstPage:S,getPageCount:w,setHandleState:P,scrollYToRecord:N,setSelectionKeys:I,setOriginColumns:A,setSelectionRows:$,setRowExpandedKeys:O,setHighlightKey:F,setResizeState:L,setMergeCells:D,setPingRight:k,calcTableHeight:H,createSelectionKeys:V,createSelectionRows:M,createRowExpandedKeys:j,createElementStore:q,triggerScrollYEvent:U,forceUpdate:K,initialTable:B,destroy:z}=t,{elementStore:W,handleState:G,scrollYLoad:Q}=s.current,Y=React__default.useRef(v);useUpdateEffect((()=>{if(!l)return;const{onChange:e}=l;"radio"===l.type&&u.current.setClickedValues(g.length?[g[0],""]:[]),$(M(g)),null==e||e(g,s.current.selectionRows),R&&b.some((e=>e.summation.sumBySelection))&&K()}),[g]),useUpdateEffect((()=>{if(!n)return;const{allTableData:e,allRowKeys:t}=s.current,{onChange:a}=n;null==a||a(_,_.map((a=>e[t.findIndex((e=>e===a))])))}),[_]),useUpdateEffect((()=>{var e,t;const{allTableData:a,allRowKeys:r}=s.current;C&&O(j()),i&&(u.current.setClickedValues(y?[y,""]:[]),null===(e=i.onChange)||void 0===e||e.call(i,y,null!==(t=a[r.findIndex((e=>e===y))])&&void 0!==t?t:null))}),[y]),useUpdateEffect((()=>{var e;isEqual$1(v,Y.current)||(Y.current=v,R&&r&&(null===(e=r.onChange)||void 0===e||e.call(r,v)))}),[v]),useUpdateEffect((()=>{const e=V(l.selectedRowKeys);isEqual$1(e,g)||(I(e),C&&O(j()))}),[null==l?void 0:l.selectedRowKeys]),useUpdateEffect((()=>{const e=j(n.expandedRowKeys);isEqual$1(e,_)||O(e)}),[null==n?void 0:n.expandedRowKeys]),useUpdateEffect((()=>{const{currentRowKey:e}=i;e!==y&&F(null!=e?e:"")}),[null==i?void 0:i.currentRowKey]),useUpdateEffect((()=>{const{insert:e,remove:t}=G;e&&(E&&("after"===e?T():S()),N("","after"===e?1e5:0)),t&&h.current>w()&&T(),(e||t)&&P({insert:null,remove:!1})}),[h.total]),useUpdateEffect((()=>{Q&&U(W.$tableBody.parentNode.scrollTop)}),[Q]),useUpdateEffect((()=>{k(m)}),[m]),useUpdateEffect((()=>{H()}),[f]),useUpdateEffect((()=>{D(o),u.current.forceUpdate()}),[o]),useUpdateEffect((()=>{Q&&(e.height||e.maxHeight||warn("Table","必须设置组件参数 `height` 或 `maxHeight`"),e.ellipsis||warn("Table","必须设置组件参数 `ellipsis`")),x&&(e.height||e.maxHeight||warn("Table","必须设置组件参数 `height` 或 `maxHeight`"))}),[Q,x]);const X=()=>{const{resizeState:e}=s.current,{winHeight:t}=e,a=window.innerHeight;a!==t&&(L(Object.assign({},e,{winHeight:a})),H())};React__default.useEffect((()=>(q({$toper:c.current,$table:d.current,$resizableBar:p.current}),A(deepClone(a)),B(),D(o),window.addEventListener("resize",X,!1),H(),()=>{z(),window.removeEventListener("resize",X)})),[])};function useForceUpdate(){const[,e]=React.useReducer((e=>e+1),0);return e}const useImperativeMethod=(e,t)=>{const{getRowKey:a,tableProps:r,tableRef:l,toolBoxRef:n,flattenColumns:i,editableColumns:o,pagination:s,fetchParams:c,selectionKeys:d,rowExpandedKeys:u,highlightKey:p,isFetch:f,dataChange:m,getTableData:h,handleTableData:g,createTableData:_,calcTableHeight:y,scrollXToColumn:v,scrollYToRecord:b,doFieldValidate:R,setHandleState:E,setSelectionKeys:x,setRowExpandedKeys:C,setHighlightKey:T,setSelectionRows:S,forceUpdate:w,getTableLog:P,clearRowSelection:N,clearRowHighlight:I,clearTableSorter:A,clearTableFilter:$,clearSuperFilters:O,clearTableLog:F}=t,{columns:L,columnsChange:D}=r,k=(e,t,r)=>{for(let l=0;l<e.length;l++){const n=e[l],i=a(n,n.index);Array.isArray(n.children)&&k(n.children,t,r),t.includes(i)&&(null==r||r(n,i),e.splice(l,1),l-=1)}};React__default.useImperativeHandle(e,(()=>({CALCULATE_HEIGHT:()=>{y()},DO_REFRESH:e=>__awaiter(void 0,void 0,void 0,(function*(){f&&(yield h(),null==e||e())})),GET_LOG:()=>P(),GET_FETCH_PARAMS:()=>{const e={};for(const t in c)Object.keys(s).includes(t)||(e[t]=c[t]);return e},CLEAR_TABLE_DATA:()=>{f||(N(),I(),A(),$(),O(),F(),_([]))},CLEAR_LOG:()=>{F()},FORCE_UPDATE:()=>{w()},DO_EXPORT:()=>{n.current.exportHandle()},SCROLL_TO_RECORD:e=>{b(e)},SCROLL_TO_COLUMN:e=>{v(e)},SET_SELECTION:e=>{x(e)},SET_HIGHLIGHT:e=>{T(e)},SET_EXPANDABLE:e=>{C(e)},SET_SELECTION_ROWS:e=>{S(e)},SET_TABLE_DATA:e=>{g(e)},SET_TABLE_COLUMN:(e,t,a)=>{const r=L.filter((e=>!e.noAuth)),l=r.find((t=>t.dataIndex===e));if(!l)return warn("Table","SET_TABLE_COLUMN 方法参数 `dataIndex` 的值不正确");if(!isPlainObject(t))return warn("Table","SET_TABLE_COLUMN 方法参数 `option` 的值不正确");for(const e in t)e&&set(l,e,t[e]);a&&(D?D(r):warn("Table","需要设置 `columnsChange` 参数"))},INSERT_RECORDS:(e,t)=>{const{store:r,tableFullData:n}=l.current,o=(Array.isArray(e)?e:[e]).filter((e=>isPlainObject(e)));if(!o.length)return;o.forEach((e=>{i.forEach((t=>{const{dataIndex:a}=t;[config$1.expandableColumn,config$1.selectionColumn,config$1.operationColumn].includes(a)||setCellValue(e,a,getCellValue(e,a))})),r.addToInserted(e)}));const s="before"===(null==t?void 0:t.mode),c=void 0===(null==t?void 0:t.parentRowKey);let d=n;if(c)d=s?[...o,...d]:d.concat(o);else{const e=deepFindRecord(n,(e=>t.parentRowKey===a(e,e.index)));e&&(Array.isArray(e.children)?s?e.children.unshift(...o):e.children.push(...o):e.children=o)}_(d),c&&E(Object.assign({},l.current.handleState,{insert:s?"before":"after"})),m()},REMOVE_RECORDS:e=>{const{store:t,tableFullData:r}=l.current,n=(Array.isArray(e)?e:[e]).map((e=>isPlainObject(e)?a(e,e.index):e));if(!n.length)return;let i=!1;k(r,n,((e,a)=>{t.addToRemoved(e),o.forEach((r=>{const{dataIndex:l,editRender:n}=r,i=null==n?void 0:n(e,r);if(!i)return;const{rules:o=[],disabled:s}=i;!s&&o.length&&(t.removeFromRequired({x:a,y:l}),t.removeFromValidate({x:a,y:l}),t.removeFromEdited({x:a,y:l}))})),i=!0})),i&&(_(r),x(d.filter((e=>!n.includes(e)))),n.includes(p)&&I(),C(u.filter((e=>!n.includes(e)))),E(Object.assign({},l.current.handleState,{remove:!0})),m())},VALIDATE_FIELDS:e=>{l.current.allTableData.forEach((t=>{o.forEach((r=>{const{dataIndex:l,editRender:n}=r,i=null==n?void 0:n(t,r);if(!i)return;const o=a(t,t.index);if(e&&!e.includes(o))return;const{rules:s=[],disabled:c}=i;!c&&s.length&&R(s,getCellValue(t,l),o,l)}))}));const{required:t,validate:r}=P(),n=[...t,...r];return n.length&&b(n[0].rowKey),w(),{required:t,validate:r}}})))},Alert=e=>{const{total:a}=e,{tableRef:r,tableProps:l,selectionKeys:n,isHeadSorter:i,isHeadFilter:o,isTreeTable:s,clearTableSorter:c,clearTableFilter:d,clearSuperFilters:u,clearRowSelection:p,clearRowHighlight:f}=React__default.useContext(TableContext),{infoBarConfig:m,rowSelection:h,rowHighlight:g}=l,{allTableData:_}=r.current,{hideAlert:y,hideClearButton:v}=m||{},b=React__default.useMemo((()=>!y),[y]),R=React__default.useMemo((()=>!v&&!!(i||o||h||g)),[v,i,o,h,g]),E={[`${getPrefixCls("table")}__alert`]:!0};return b?React__default.createElement("div",{className:classNames(E)},React__default.createElement("i",{className:"svgicon icon"},React__default.createElement(InfoCircleFilled,null)),React__default.createElement("span",null,t("qm.table.alert.total",{total:s?_.length:a}),h?`,${t("qm.table.alert.selected",{total:n.length})}`:""),R&&React__default.createElement("em",{onClick:()=>{c(),d(),u(),p(),f()}},t("qm.table.alert.clear"))):null},FullScreen=React__default.forwardRef(((e,a)=>{const{isFullScreen:r,open:l=!0}=e,{setFullScreen:n}=React__default.useContext(TableContext),i=()=>{n(!r)};React__default.useImperativeHandle(a,(()=>({clickHandle:i})));const o=getPrefixCls("table");return l?React__default.createElement("span",{className:`${o}-full-screen`,title:t(r?"qm.table.screen.cancelFull":"qm.table.screen.full"),onClick:()=>i()},React__default.createElement("i",{className:"svgicon icon"},r?React__default.createElement(FullscreenExitOutlined,null):React__default.createElement(FullscreenOutlined,null))):null}));FullScreen.displayName="FullScreen";const Reload=React__default.forwardRef(((e,a)=>{const{open:r=!0}=e,{getTableData:l}=React__default.useContext(TableContext),n=()=>{l()};React__default.useImperativeHandle(a,(()=>({clickHandle:n})));const i=getPrefixCls("table");return r?React__default.createElement("span",{className:`${i}-reload`,title:t("qm.table.refresh.text"),onClick:()=>n()},React__default.createElement("i",{className:"svgicon icon"},React__default.createElement(ReloadOutlined,null))):null}));Reload.displayName="Reload";const defaultHtmlStyle="\n * {\n margin: 0;\n padding: 0;\n }\n body * {\n -webkit-box-sizing: border-box;\n box-sizing: border-box;\n }\n table {\n table-layout: fixed;\n border-spacing: 0;\n border-collapse: collapse;\n }\n table--print {\n font-size: 14px;\n text-align: left;\n }\n .table--print th,\n .table--print td {\n padding: 5px;\n border: 1px solid #000;\n }\n .no-border th,\n .no-border td {\n border: 0!important;\n }\n .table--print th[colspan]:not([colspan='1']) {\n text-align: center;\n }\n .page-break {\n page-break-after: always;\n }\n",TablePrint=React__default.forwardRef(((e,a)=>{var r,l,n,i;const{tableColumns:o,open:s=!0}=e,{global:c}=React__default.useContext(ConfigContext),{tableRef:d,tableBodyRef:u,tableProps:p,flattenColumns:f,summationRows:m,showSummary:h,getSpan:g}=React__default.useContext(TableContext),{tablePrint:_,showHeader:y}=p,v=null!==(l=null===(r=null==c?void 0:c.print)||void 0===r?void 0:r.leftLogo)&&void 0!==l?l:"",b=null!==(i=null===(n=null==c?void 0:c.print)||void 0===n?void 0:n.rightLogo)&&void 0!==i?i:"",R=!(!v&&!b),E=React__default.useMemo((()=>deepClone(filterTableColumns(o,[config$1.expandableColumn,config$1.selectionColumn,config$1.operationColumn]))),[o]),x=React__default.useMemo((()=>deepClone(filterTableColumns(f,[config$1.expandableColumn,config$1.selectionColumn,config$1.operationColumn]))),[f]),C=React__default.useMemo((()=>deepClone(o.filter((e=>e.printFixed)))),[o]),T=(e,t)=>{const a=Object.assign({},deepFindColumn(t,e.parentDataIndex));return a.children=[e],a.level&&a.level>1?T(a,t):a},S=(e,t)=>map(groupBy(flatten(e),t),spread((function(){for(var e=arguments.length,a=new Array(e),r=0;r<e;r++)a[r]=arguments[r];return mergeWith(...a,((e,a)=>{if(Array.isArray(e))return S(e.concat(a),t)}))}))),w=(e,t)=>{const a=[];return e.forEach((e=>{let r=[];e.forEach((e=>{1===e.level?r.push(e):r.push(T(e,t))})),r=(e=>[...new Set(e.map((e=>e.dataIndex)))].map((t=>{const a=e.filter((e=>e.dataIndex===t));return a.length<=1?a[0]:S(a,"dataIndex")[0]})))(r),a.push(convertToRows(r))})),a},P=()=>{const{allTableData:e}=d.current,t=(e=>{const t=[];let a=[],r=0,l=0;for(;l<e.length;){const n=e[l];r+=n.width||n.renderWidth||n.minWidth||config$1.defaultColumnWidth,r<=config$1.printWidth?(a.push(n),l===e.length-1&&t.push(a),l++):l>0?(e.splice(0,l),C.length&&e.unshift(...C),t.push(a),a=[],r=0,l=0):(n.width=config$1.printWidth,a.push(n),t.push(a),l++)}return t})([...x]),a=w(t,E);let r=["<!DOCTYPE html>","<html>","<head>",'<meta charset="utf-8">','<meta name="viewport" content="width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,user-scalable=no,minimal-ui">',`<style>${defaultHtmlStyle}</style>`,"</head>","<body>"].join("");for(let l=0;l<t.length;l++)r+=N(a[l],t[l],e),r+='<div class="page-break"></div>';return r+"</body></html>"},N=(e,a,r)=>{const{showLogo:l=!0}=_;let n='<table class="table--print" width="100%" border="0" cellspacing="0" cellpadding="0">';return n+=`<colgroup>${a.map((e=>{let{width:t,minWidth:a,renderWidth:r}=e;return`<col style="width:${t||r||a||config$1.defaultColumnWidth}px">`})).join("")}</colgroup>`,y&&(n+=["<thead>",l&&R?`<tr><th colspan="${a.length}" style="border: 0">${['<table class="no-border" width="100%" border="0" cellspacing="0" cellpadding="0">',"<tr>",'<td width="50%" align="left">',v?`<img src="${v}" border="0" height="26" />`:"","</td>",'<td width="50%" align="right">',b?`<img src="${b}" border="0" height="38" />`:"","</td>","</tr>","</table>"].join("")}</th></tr>`:"",e.map((e=>`<tr>${e.map((e=>{const{rowSpan:t,colSpan:a}=e;return 0===a?null:`<th colspan="${a}" rowspan="${t}">${e.title}</th>`})).join("")}</tr>`)).join(""),"</thead>"].join("")),r.length&&(n+=`<tbody>${r.map((e=>`<tr>${a.map(((t,a)=>{const{rowSpan:l,colSpan:n}=g(e,t,e.index,a,r);return l&&n?`<td rowspan="${l}" colspan="${n}">${((e,t,a,r)=>u.current.renderCellTitle(a,e,t,r))(e,e.index,t,a)}</td>`:null})).join("")}</tr>`)).join("")}</tbody>`),h&&m.length&&(n+=["<tfoot>",m.map((e=>`<tr>${a.map(((a,l)=>{const{dataIndex:n,summation:i}=a,o=(null==i?void 0:i.render)?i.render(r):getCellValue(e,`${n}_text`);return`<td>${0===l&&""===o?t("qm.table.config.summaryText"):o}</td>`})).join("")}</tr>`)).join(""),"</tfoot>"].join("")),n+="</table>",n},I=()=>{var e;null===(e=((e,t)=>{const{filename:a,type:r,isDownload:l}=e,n=`${a}.${r}`;if(window.Blob){const e=new Blob([t],{type:`text/${r}`});if(!l)return Promise.resolve({type:r,content:t,blob:e});download(e,n)}})({filename:"print",type:"html",isDownload:!1},P()))||void 0===e||e.then((e=>{let{content:t,blob:a}=e,r=document.createElement("iframe");r.setAttribute("frameborder","0"),r.setAttribute("width","100%"),r.setAttribute("height","0"),r.style.display="none",document.body.appendChild(r),d.current.isIE?(r.contentDocument.write(t),r.contentDocument.execCommand("print"),r.parentNode.removeChild(r),r=null):(r.onload=e=>{e.target.src&&e.target.contentWindow.print(),setTimeout((()=>{r.parentNode.removeChild(r),r=null}))},r.src=URL.createObjectURL(a))}))};React__default.useImperativeHandle(a,(()=>({clickHandle:I})));const A=getPrefixCls("table");return s?React__default.createElement("span",{className:`${A}-print`,title:t("qm.table.print.text"),onClick:()=>I()},React__default.createElement("i",{className:"svgicon icon"},React__default.createElement(PrinterOutlined,null))):null}));TablePrint.displayName="TablePrint";const defaultHeaderBackgroundColor="f5f5f5",defaultCellFontColor="606060",defaultCellBorderStyle="thin",defaultCellBorderColor="d4d4d4",setExcelRowHeight=(e,t)=>{t&&(e.height=Math.floor(.75*t))},setExcelCellStyle=(e,t)=>{e.protection={locked:!1},e.alignment={vertical:"middle",horizontal:t||"left"}},getDefaultBorderStyle=()=>({top:{style:defaultCellBorderStyle,color:{argb:defaultCellBorderColor}},left:{style:defaultCellBorderStyle,color:{argb:defaultCellBorderColor}},bottom:{style:defaultCellBorderStyle,color:{argb:defaultCellBorderColor}},right:{style:defaultCellBorderStyle,color:{argb:defaultCellBorderColor}}}),getValidColumn=e=>{const{children:t}=e;return t&&t.length?getValidColumn(t[0]):e},formatCellValue=e=>{const{precision:t,formatType:a}=e,r=t>=0?t?`0.${new Array(t).fill("0").join("")}`:"0":"";return r?{numFmt:r}:"percent"===a?{numFmt:t>=0?`${r}%`:"0%"}:"finance"===a?{numFmt:t>=0?`#,##${r}`:"#,##0"}:null},useExport=()=>{const{tableRef:e,tableProps:a,getSpan:r,showSummary:l,isHeadGroup:n}=React__default.useContext(TableContext),{spanMethod:i,showHeader:o}=a,s=(e,t)=>{var a,r;return null!==(r=null===(a=e.find((e=>e.text==t)))||void 0===a?void 0:a.value)&&void 0!==r?r:""};return{exportXLSX:(a,s,c,d)=>__awaiter(void 0,void 0,void 0,(function*(){const{columns:u,footSummation:p}=a,{scrollYStore:{rowHeight:f}}=e.current,m=columnsFlatMap(u),h=convertToRows(u),g=[],_=[],y=[],v=[];let b=0;const R={};m.forEach((e=>{const{dataIndex:t,title:a,width:r,minWidth:l,renderWidth:n}=e;R[t]=a,y.push({key:t,width:(r||n||l||config$1.defaultColumnWidth)/8})})),o&&(n?h.forEach(((e,t)=>{const a={};e.forEach((e=>{const{colSpan:r,rowSpan:l}=e,n=getValidColumn(e),i=m.findIndex((e=>{let{dataIndex:t}=e;return t===n.dataIndex}));a[n.dataIndex]=e.title,0!==r&&(r>1||l>1)&&v.push({s:{r:t,c:i},e:{r:t+l-1,c:i+r-1}})})),g.push(a)})):(m.forEach(((e,t)=>{const{colSpan:a,rowSpan:r}=e;(a>1||r>1)&&v.push({s:{r:b,c:t},e:{r:b+r-1,c:t+a-1}})})),g.push(R)),b+=g.length);const E=s.map(((e,t)=>{const a={};return m.forEach(((l,n)=>{if("function"==typeof i){const{rowSpan:a,colSpan:i}=r(e,l,t,n,s);(i>1||a>1)&&v.push({s:{r:t+b,c:n},e:{r:t+b+a-1,c:n+i-1}})}const o=["percent","finance"].includes(l.formatType);a[l.dataIndex]=o?getCellValue(e,l.dataIndex):d(e,t,l,n)})),a}));b+=E.length,l&&p&&c(m,s).forEach(((e,a)=>{const r={};m.forEach(((a,l)=>{const{dataIndex:n,summation:i}=a,o=(null==i?void 0:i.render)?i.render(s):getCellValue(e,n);r[n]=0===l&&""===o?t("qm.table.config.summaryText"):isValidElement(o)?getVNodeText(o).join(""):o})),_.push(r)}));const{sheetName:x,useStyle:C}=a,T=new ExcelJS.Workbook,S=T.addWorksheet(x);S.columns=y,o&&S.addRows(g).forEach((e=>{C&&setExcelRowHeight(e,f),e.eachCell((e=>{const t=S.getColumn(e.col),a=deepFindColumn(u,t.key),{align:r}=a;setExcelCellStyle(e,r),C&&Object.assign(e,{font:{bold:!0,color:{argb:defaultCellFontColor}},fill:{type:"pattern",pattern:"solid",fgColor:{argb:defaultHeaderBackgroundColor}},border:getDefaultBorderStyle()})}))})),S.addRows(E).forEach((e=>{C&&setExcelRowHeight(e,f),e.eachCell((e=>{const t=S.getColumn(e.col),a=deepFindColumn(u,t.key),{align:r}=a;setExcelCellStyle(e,r),Object.assign(e,formatCellValue(a)),C&&Object.assign(e,{font:{color:{argb:defaultCellFontColor}},border:getDefaultBorderStyle()})}))})),l&&p&&S.addRows(_).forEach((e=>{C&&setExcelRowHeight(e,f),e.eachCell((e=>{const t=S.getColumn(e.col),a=deepFindColumn(u,t.key),{align:r}=a;setExcelCellStyle(e,r),Object.assign(e,formatCellValue(a)),C&&Object.assign(e,{font:{color:{argb:defaultCellFontColor}},border:getDefaultBorderStyle()})}))})),v.forEach((e=>{let{s:t,e:a}=e;S.mergeCells(t.r+1,t.c+1,a.r+1,a.c+1)}));const w=yield T.xlsx.writeBuffer();return new Blob([w],{type:"application/octet-stream"})})),exportCSV:(e,t)=>{const a=e=>{let t=e;const a=-1!==e.indexOf(",")||-1!==e.indexOf("\r")||-1!==e.indexOf("\n"),r=-1!==e.indexOf('"');return r&&(t=t.replace(/"/g,'""')),(a||r)&&(t='"'+t+'"'),t},r="\ufeff"+(e=>{let t,r,l,n,i="";for(t=0;t<e.rows.length;t+=1){for(l=e.rows[t],r=0;r<l.cells.length;r+=1)n=l.cells[r],i=i+(r?",":"")+a(n.textContent.trim());i+="\r\n"}return i})((e=>{const t=document.createElement("div");return t.innerHTML=e,t.firstChild})(t));var l;return((e,t,a)=>{t=t||"",a=a||512;const r=window.atob(e),l=[];let n;for(n=0;n<r.length;n+=a){const e=r.slice(n,n+a),t=new Array(e.length);let i;for(i=0;i<e.length;i+=1)t[i]=e.charCodeAt(i);const o=new window.Uint8Array(t);l.push(o)}return new window.Blob(l,{type:t})})((l=r,window.btoa(unescape(encodeURIComponent(l)))),"application/csv")},importXLSX:(e,a)=>{const{columns:r,file:l}=e,n=columnsFlatMap(r),i=new FileReader;i.onerror=()=>{message.error(t("qm.table.import.error"))},i.onload=e=>{const r=n.map((e=>e.title)),l=new ExcelJS.Workbook,i=e.target;i?l.xlsx.load(i.result).then((e=>{const l=e.worksheets[0];if(l){const e=l.getSheetValues(),i=e.findIndex((e=>e&&e.length>0)),o=e[i],c=((e,t)=>t.some((t=>e.indexOf(t)>-1)))(r,o);if(c){const t=e.slice(i+1).map((e=>{const t={};e.forEach(((e,a)=>{let r=e;isPlainObject(r)&&(r=e.text),isDate$2(r)&&(r=formatDate(e,DATE_TIME_FORMAT)),t[o[a]]=r}));const a={};return r.forEach(((e,r)=>{var l;const{dataIndex:i,dictItems:o}=n[r];Array.isArray(o)&&((null===(l=t[e])||void 0===l?void 0:l.includes(","))?t[e]=t[e].split(",").map((e=>s(o,e))).filter((e=>""!==e)):t[e]=s(o,t[e])),setCellValue(a,i,t[e])})),a}));null==a||a(t)}else message.error(t("qm.table.import.error"))}else message.error(t("qm.table.import.error"))})):message.error(t("qm.table.import.error"))},i.readAsArrayBuffer(l)}}},SelectFile=e=>{const{fileType:a,onChange:r}=e;let l,n;const i=getPrefixCls("table"),o=e=>{const t=e.name,a=t.lastIndexOf("."),r=t.substring(a+1,t.length);return{filename:t.substring(0,a),type:r}},s=()=>__awaiter(void 0,void 0,void 0,(function*(){try{const e=yield(e=>{const a=Object.assign({},e);return l||(l=document.createElement("form"),n=document.createElement("input"),l.className=`${i}--file-form`,n.name="file",n.type="file",l.appendChild(n),document.body.appendChild(l)),new Promise(((e,r)=>{const i=!a.type;n.multiple=!!a.multiple,n.accept=i?"":`.${a.type}`,n.onchange=s=>{const{files:c}=s.target,d=c[0];let u="";if(!i)for(let e=0;e<c.length;e++){const{type:t}=o(c[e]);if(a.type!==t){u=t;break}}u?(message.warning(t("qm.upload.notType",{type:u})),r()):e(d),document.body.removeChild(l),l=null,n=null},l.reset(),n.click()}))})({type:a});null==r||r(e.name,e)}catch(e){}}));return React__default.createElement(QmButton,{onClick:()=>s()},t("qm.upload.text"))},Setting$5=e=>{const{columns:a,onClose:r}=e,{tableRef:l,tableProps:n,createTableData:i,dataChange:o}=React__default.useContext(TableContext),{beforeTableImport:s}=n,{importXLSX:c}=useExport(),d=React__default.useRef(null),[u,p]=React__default.useState(!1),[f,m]=React__default.useState(!0),h=e=>e.filter((e=>![config$1.expandableColumn,config$1.selectionColumn,"index","pageIndex",config$1.operationColumn].includes(e.dataIndex))),[g,_]=React__default.useState([{type:"INPUT",label:t("qm.table.export.fileName"),fieldName:"fileName",render:(e,t)=>{const{fileName:a}=t.GET_FIELDS_VALUE(["fileName"]);return React__default.createElement(React__default.Fragment,null,a?React__default.createElement("span",null,a):React__default.createElement(SelectFile,{fileType:t.state.formData.fileType,onChange:(e,a)=>{t.SET_FIELDS_VALUE({fileName:e,file:a}),a&&m(!1)}}))}},{type:"SELECT",label:t("qm.table.export.fileType"),fieldName:"fileType",allowClear:!1,options:{itemList:[{text:"xlsx",value:"xlsx"}]}},{type:"SELECT",label:t("qm.table.import.importType"),fieldName:"importType",allowClear:!1,options:{itemList:[{text:t("qm.table.import.fillText"),value:"fill"},{text:t("qm.table.import.addText"),value:"add"},{text:t("qm.table.import.insertText"),value:"insert"}]},onChange:e=>{g.find((e=>"posIndex"===e.fieldName)).hidden="insert"!==e,_([...g])}},{type:"INPUT_NUMBER",label:t("qm.table.import.insertPos"),fieldName:"posIndex",hidden:!0,rules:[{required:!0}],options:{min:1,max:l.current.tableFullData.length,formatter:e=>`第 ${e}`.replace(/\B(?=(\d{3})+(?!\d))/g,","),parser:e=>e.replace(/第\s?|(,*)/g,"")},extra:{labelWidth:50}}]),y=getPrefixCls("table");return React__default.createElement("div",{className:`${y}-import__setting`},React__default.createElement(QmForm,{ref:d,initialValues:{fileType:"xlsx",importType:"fill"},initialExtras:{posIndex:"条"},items:g,cols:1,labelWidth:100}),React__default.createElement("div",{style:{position:"absolute",left:0,bottom:0,right:0,zIndex:9,borderTop:"1px solid #d9d9d9",padding:"10px 15px",background:"#fff",textAlign:"right"}},React__default.createElement(QmButton,{onClick:()=>r(),style:{marginRight:8}},t("qm.table.export.closeButton")),React__default.createElement(QmButton,{type:"primary",loading:u,disabled:f,onClick:()=>__awaiter(void 0,void 0,void 0,(function*(){const[e,n]=yield d.current.GET_FORM_DATA();e||(p(!0),c({columns:h(a),file:n.file},(e=>__awaiter(void 0,void 0,void 0,(function*(){const{tableFullData:a,store:c}=l.current;if(e=Array.from(e).map((e=>e||{})),"function"==typeof s)try{e=yield s(e)}catch(e){}if("fill"===n.importType&&i(e),"add"===n.importType&&i([...a,...e]),"insert"===n.importType){const{tableFullData:t}=l.current,a=n.posIndex,r=t.slice(0,a).concat(e).concat(t.slice(a));i(r)}e.forEach((e=>{c.addToInserted(e)})),o(),message.success(t("qm.table.import.success",{total:e.length})),p(!1),r()})))))}))},t("qm.table.import.text"))))},TableImport=React__default.forwardRef(((e,a)=>{const{tableColumns:r,open:l=!0}=e,[n,i]=React__default.useState(!1),o=()=>{i(!0)};React__default.useImperativeHandle(a,(()=>({clickHandle:o})));const s={[`${getPrefixCls("table")}-import`]:!0},c={visible:n,title:t("qm.table.import.settingTitle"),width:600,height:"auto",loading:!1,bodyStyle:{paddingBottom:"52px"},onClose:()=>i(!1)};return React__default.createElement(React__default.Fragment,null,l&&React__default.createElement("span",{className:classNames(s),title:t("qm.table.import.textNoSpace"),onClick:()=>o()},React__default.createElement("i",{className:"svgicon icon"},React__default.createElement(ImportOutlined,null))),React__default.createElement(QmModal,c,React__default.createElement(Setting$5,{columns:r,onClose:()=>i(!1)})))}));TableImport.displayName="TableImport";const Define=e=>{const{columns:a,onChange:r}=e,{$size:l}=React__default.useContext(TableContext),n=React__default.useRef([]),[i,o]=React__default.useState(!1),[s,c]=React__default.useState(a);useUpdateEffect((()=>{u()}),[s]),React__default.useEffect((()=>{d()}),[a]);const d=()=>{const e=[];a.forEach(((t,r)=>{const l=t.colSpan;l>1&&a.slice(r+1,r+l).every((e=>{let{colSpan:t}=e;return 0===t}))&&e.push(a.slice(r,r+l))})),n.current=e},u=()=>{const e=[];s.forEach((t=>{const{colSpan:a,dataIndex:r}=t;if(0===a)return;if(1===a)return e.push(t);const l=n.current.findIndex((e=>e.map((e=>e.dataIndex)).includes(r)));if(-1===l)return e.push(t);e.push(...n[l].map(((e,a)=>{let{dataIndex:r}=e;const l=s.find((e=>e.dataIndex===r));return a>0&&void 0!==t.hidden&&(l.hidden=t.hidden),l})))})),null==r||r(e)},p=getPrefixCls("table"),f={[`${p}__popper`]:!0,"column-filter__popper":!0,[`${p}--lg`]:"large"===l,[`${p}--sm`]:"small"===l},m=[`${p}-column-filter`,{selected:i}];return React__default.createElement(Trigger,{action:["click"],popupVisible:i,popup:React__default.createElement("div",{className:"column-filter--wrap",style:{overflowY:"auto",maxHeight:"calc(100vh - 10px)"}},React__default.createElement("div",{className:"main"},React__default.createElement(ReactSortable,{itemKey:"dataIndex",handle:".main-handle",tag:"ul",animation:200,list:s,setList:e=>{const t=e.map((e=>e.dataIndex)),a=s.map((e=>e.dataIndex));isEqual$1(t,a)||c(e)}},s.map((e=>((e,a)=>{const{colSpan:r}=e;if(0===r)return React__default.createElement("li",{key:e.dataIndex,style:{display:"none"}});const l=["svgicon","handle",`${a}-handle`];return React__default.createElement("li",{key:e.dataIndex,className:"item"},React__default.createElement(Checkbox,{disabled:e.required,checked:!e.hidden,onChange:t=>{const{checked:a}=t.target;e.hidden=!a,c([...s])}}),React__default.createElement("i",{className:classNames(l),title:t("qm.table.columnFilter.draggable")},React__default.createElement(HolderOutlined,null)),React__default.createElement("span",{className:"text",title:e.title},e.title))})(e,"main")))))),popupClassName:classNames(f),popupStyle:{minWidth:MIN_POPPER_WIDTH},onPopupVisibleChange:e=>{o(e)},builtinPlacements:BUILT_IN_PLACEMENTS,prefixCls:"ant-select-dropdown",popupPlacement:"bottomLeft",popupTransitionName:"ant-slide-up"},React__default.createElement("span",{className:classNames(m),title:t("qm.table.columnFilter.text")},React__default.createElement("i",{className:"svgicon icon"},React__default.createElement(SettingOutlined,null)),React__default.createElement("span",null,t("qm.table.columnFilter.text"))))},Setting$4=e=>{const{defaultValue:a,onClose:r,onOk:l}=e,{tableProps:n,pagination:i,showSummary:o}=React__default.useContext(TableContext),{rowSelection:s}=n,c=React__default.useRef(null),[d,u]=React__default.useState(!1),p=React__default.useMemo((()=>Object.assign({},{fileName:`${dayjs().format(DEFAULT_FILENAME_FORMAT)}.xlsx`,fileType:"xlsx",sheetName:"sheet1",exportType:"all","startIndex|endIndex":[1,i.total],footSummation:o?1:0,useStyle:0},a,{columns:deepClone(a.columns||[])})),[]),[f,m]=React__default.useState([{type:"INPUT",label:t("qm.table.export.fileName"),fieldName:"fileName"},{type:"SELECT",label:t("qm.table.export.fileType"),fieldName:"fileType",options:{itemList:[{text:"xlsx",value:"xlsx"},{text:"csv",value:"csv"}]}},{type:"INPUT",label:t("qm.table.export.sheetName"),fieldName:"sheetName"},{type:"RANGE_INPUT_NUMBER",fieldName:"startIndex|endIndex",label:{type:"SELECT",fieldName:"exportType",options:{itemList:[{text:t("qm.table.export.all"),value:"all"},{text:t("qm.table.export.selected"),value:"selected",disabled:"checkbox"!==(null==s?void 0:s.type)},{text:t("qm.table.export.custom"),value:"custom"}]},onChange:e=>{f.find((e=>"startIndex|endIndex"===e.fieldName)).disabled="custom"!==e,m([...f])}},options:{min:1},disabled:!0},{type:"INPUT",label:t("qm.table.columnFilter.text"),fieldName:"columns",render:(e,t)=>React__default.createElement(Define,{columns:t.state.formData.columns,onChange:e=>{t.SET_FIELDS_VALUE({columns:e})}})},{type:"CHECKBOX",label:t("qm.table.export.footSummation"),fieldName:"footSummation",disabled:!o,options:{trueValue:1,falseValue:0}},{type:"CHECKBOX",label:t("qm.table.export.useStyle"),fieldName:"useStyle",options:{trueValue:1,falseValue:0}}]),h=getPrefixCls("table");return React__default.createElement("div",{className:`${h}-export__setting`},React__default.createElement(QmForm,{ref:c,initialValues:p,items:f,cols:1,labelWidth:100}),React__default.createElement("div",{style:{position:"absolute",left:0,bottom:0,right:0,zIndex:9,borderTop:"1px solid #d9d9d9",padding:"10px 15px",background:"#fff",textAlign:"right"}},React__default.createElement(QmButton,{onClick:()=>r(),style:{marginRight:8}},t("qm.table.export.closeButton")),React__default.createElement(QmButton,{type:"primary",loading:d,onClick:()=>__awaiter(void 0,void 0,void 0,(function*(){const[e,t]=yield c.current.GET_FORM_DATA();if(!e){u(!0);for(const e in t)"footSummation"!==e&&"useStyle"!==e||(t[e]=!!t[e]);l(t),yield sleep(1e3),u(!1),r()}}))},t("qm.table.export.text"))))},TableExport=React__default.forwardRef(((e,a)=>{var r;const{tableColumns:l,open:n=!0}=e,{global:i}=React__default.useContext(ConfigContext),{tableRef:o,tableBodyRef:s,tableProps:c,flattenColumns:d,pagination:u,fetchParams:p,isFetch:f,isGroupSubtotal:m,showSummary:h,getSpan:g}=React__default.useContext(TableContext),{exportExcel:_,fetch:y,showHeader:v}=c,[b,R]=React__default.useState(!1),[E,x]=React__default.useState(!1),C=React__default.useMemo((()=>{var e;return!!(null===(e=null==_?void 0:_.fetch)||void 0===e?void 0:e.api)}),[_]),T=React__default.useMemo((()=>!u.total||E),[u.total,E]),S=React__default.useMemo((()=>filterTableColumns(l,[config$1.expandableColumn,config$1.selectionColumn,config$1.operationColumn])),[l]),w=React__default.useMemo((()=>filterTableColumns(d,[config$1.expandableColumn,config$1.selectionColumn,config$1.operationColumn])),[d]),P=(e,t)=>{const a={};return e.filter((e=>!!e.summation)).forEach((e=>{const{dataIndex:r}=e,l=(m?getGroupValidData(t):t).reduce(((e,t)=>{if(null==t?void 0:t[config$1.summaryIgnore])return e;const a=Number(getCellValue(t,r));return Number.isNaN(a)?e:e+a}),0);setCellValue(a,r,l)})),[a]},N=(e,t,a,r)=>{const{precision:l,formatType:n}=a;let i=s.current.renderCellTitle(a,e,t,r);return l>=0&&!n&&""!==i&&(i=Number(i)),i},{exportXLSX:I,exportCSV:A}=useExport(),$=e=>__awaiter(void 0,void 0,void 0,(function*(){var t;const{api:a,dataKey:r}=y;let l=[];try{x(!0);const n=yield a(Object.assign(Object.assign({},p),{[config$1.currentPageName]:1,[config$1.pageSizeName]:null!=e?e:u.total}));200===n.code&&(l=(Array.isArray(n.data)?n.data:null!==(t=get(n.data,r))&&void 0!==t?t:[]).map(((e,t)=>{const a=Object.assign(Object.assign({},e),{index:t,pageIndex:t});return w.forEach(((e,t)=>{const{dataIndex:r}=e;"index"!==r&&"pageIndex"!==r&&setCellValue(a,r,getCellValue(a,r))})),a})))}catch(e){}return x(!1),l})),O=e=>{var t;const a=null===(t=null==i?void 0:i.table)||void 0===t?void 0:t.recordExportLog;try{null==a||a({fileName:e})}catch(e){}},F=(e,a)=>{const{columns:r,footSummation:l}=e,n=convertToRows(r),i=columnsFlatMap(r);let o='<table width="100%" border="0" cellspacing="0" cellpadding="0">';return o+=`<colgroup>${i.map((e=>{let{width:t,minWidth:a,renderWidth:r}=e;return`<col style="width:${t||r||a||config$1.defaultColumnWidth}px">`})).join("")}</colgroup>`,v&&(o+=["<thead>",n.map((e=>`<tr>${e.map((e=>{const{rowSpan:t,colSpan:a}=e;return 0===a?null:`<th colspan="${a}" rowspan="${t}">${e.title}</th>`})).join("")}</tr>`)).join(""),"</thead>"].join("")),a.length&&(o+=`<tbody>${a.map((e=>`<tr>${i.map(((t,r)=>{const{rowSpan:l,colSpan:n}=g(e,t,e.index,r,a);return l&&n?`<td rowspan="${l}" colspan="${n}">${N(e,e.index,t,r)}</td>`:null})).join("")}</tr>`)).join("")}</tbody>`),h&&l&&(o+=["<tfoot>",P(i,a).map((e=>`<tr>${i.map(((r,l)=>{const{dataIndex:n,summation:i}=r,o=(null==i?void 0:i.render)?i.render(a):getCellValue(e,n);return`<td>${0===l&&""===o?t("qm.table.config.summaryText"):isValidElement(o)?getVNodeText(o).join(""):o}</td>`})).join("")}</tr>`)).join(""),"</tfoot>"].join("")),o+="</table>",o},L=null!==(r=null==_?void 0:_.fileName)&&void 0!==r?r:`${dayjs().format(DEFAULT_FILENAME_FORMAT)}.xlsx`,D=L.slice(L.lastIndexOf(".")+1).toLowerCase(),k=()=>{if(T)return message.warning(t("qm.table.export.warnText"));var e;C?(e=L,__awaiter(void 0,void 0,void 0,(function*(){x(!0);try{const{api:t,params:a}=_.fetch,r=yield t(Object.assign(Object.assign(Object.assign({columns:w.map((e=>{const{title:t,dataIndex:a,hidden:r}=e,{type:l}=e.filter||{};return{title:t,dataIndex:a,type:l,hidden:r}}))},p),a),{tsortby:void 0,tsummary:void 0,tgroupby:void 0,[config$1.currentPageName]:void 0,[config$1.pageSizeName]:void 0}));r.data&&(download(r.data,e),O(e))}catch(e){}x(!1)}))):R(!0)};React__default.useImperativeHandle(a,(()=>({clickHandle:k})));const H={[`${getPrefixCls("table")}-export`]:!0},V={visible:b,title:t("qm.table.export.settingTitle"),width:600,loading:!1,bodyStyle:{paddingBottom:"52px"},onClose:()=>R(!1)},M={fileName:L.slice(0,L.lastIndexOf(".")),fileType:D,columns:S,useStyle:(null==_?void 0:_.cellStyle)?1:0};return React__default.createElement(React__default.Fragment,null,n&&React__default.createElement("span",{className:classNames(H),title:t("qm.table.export.textNoSpace"),onClick:()=>k()},React__default.createElement("i",{className:"svgicon icon"},React__default.createElement(DownloadOutlined,null))),React__default.createElement(QmModal,V,React__default.createElement(Setting$4,{defaultValue:M,onClose:()=>R(!1),onOk:e=>{var t;t=Object.assign({},e,{columns:createFilterColumns(e.columns)}),__awaiter(void 0,void 0,void 0,(function*(){const{fileName:e,fileType:a,exportType:r,startIndex:l=1,endIndex:n}=t,{allTableData:i,selectionRows:s}=o.current;let c=[];if(f?("all"===r&&(c=yield $()),"custom"===r&&(c=yield $(n),c=c.slice(l-1))):("all"===r&&(c=i.slice(0)),"custom"===r&&(c=i.slice(l-1,n||void 0))),"selected"===r&&(c=s.slice(0)),"xlsx"===a){const a=yield I(t,c,P,N);download(a,`${e}.xlsx`),O(`${e}.xlsx`)}if("csv"===a){const a=A(t,F(t,c));download(a,`${e}.csv`),O(`${e}.csv`)}}))}})))}));TableExport.displayName="TableExport";const Setting$3=e=>{const{columns:a,onClose:r}=e,{tableRef:l,tableBodyRef:n,tableProps:i,dataChange:o}=React__default.useContext(TableContext),{beforeClipboard:s}=i,c=React__default.useRef(null),[d,u]=React__default.useState([{type:"INPUT_NUMBER",label:t("qm.table.clipboard.rowIndex"),fieldName:"rowIndex",options:{min:1},extra:{labelWidth:50},rules:[{required:!0}]},{type:"SELECT",label:t("qm.table.clipboard.colIndex"),fieldName:"dataIndex",options:{itemList:a.map(((e,t)=>({value:t,text:e.title})))},rules:[{required:!0}],extra:{labelWidth:50}},{type:"TEXT_AREA",label:t("qm.table.clipboard.content"),fieldName:"content",placeholder:t("qm.table.clipboard.placeholder"),options:{autoSize:{minRows:4}},rules:[{required:!0}]}]),[p,f]=React__default.useState(!1),m=getPrefixCls("table");return React__default.createElement("div",{className:`${m}-clipboard__setting`},React__default.createElement("h3",{className:"info"},t("qm.table.clipboard.supportText")),React__default.createElement(QmForm,{ref:c,initialValues:{},initialExtras:{rowIndex:"行",dataIndex:"列"},items:d,cols:1,labelWidth:100}),React__default.createElement("div",{style:{position:"absolute",left:0,bottom:0,right:0,zIndex:9,borderTop:"1px solid #d9d9d9",padding:"10px 15px",background:"#fff",textAlign:"right"}},React__default.createElement(QmButton,{onClick:()=>r(),style:{marginRight:8}},t("qm.table.export.closeButton")),React__default.createElement(QmButton,{type:"primary",loading:p,onClick:()=>__awaiter(void 0,void 0,void 0,(function*(){var e;const[i,d]=yield c.current.GET_FORM_DATA();if(i)return;const{tableFullData:u,store:p}=l.current;f(!0);const m=d.content.trim().replace(/(\r|\n)$/,"");let h=m.replace(/"[^"]+"/g,"^");((null===(e=m.match(/"[^"]+"/g))||void 0===e?void 0:e.map((e=>e.replace(/"/g,"").replace(/\r|\n/g," "))))||[]).forEach((e=>{h=h.replace(/\^/,e)}));let g=h.split(/\r|\n/).map((e=>e.split(/\t/)));if("function"==typeof s)try{g=yield s(g,g[0].map(((e,t)=>a[d.dataIndex+t].dataIndex)))}catch(i){}g.forEach(((e,t)=>{e.forEach(((e,r)=>{var n,i;const o=u[d.rowIndex-1+t],s=a[d.dataIndex+r];if(o&&s){let t=!1;if(s.editRender){const e=s.editRender(o,s);t=!(e.disabled||(null===(n=e.extra)||void 0===n?void 0:n.disabled)||(null===(i=l.current.fieldAuth[s.dataIndex])||void 0===i?void 0:i.disabled))}t&&s.dictItems&&(t=s.dictItems.some((t=>t.value==e))),t&&(setCellValue(o,s.dataIndex,e),p.addToUpdated(o))}}))})),n.current.forceUpdate(),o(),message.success(t("qm.table.clipboard.success",{total:g.length})),f(!1),r()}))},t("qm.table.clipboard.text"))))},TableClipboard=React__default.forwardRef(((e,a)=>{const{flattenColumns:r,open:l=!0}=e,[n,i]=React__default.useState(!1),o=React__default.useMemo((()=>(e=>e.filter((e=>![config$1.expandableColumn,config$1.selectionColumn,"index","pageIndex",config$1.operationColumn].includes(e.dataIndex))))(r)),[r]),s=()=>{i(!0)};React__default.useImperativeHandle(a,(()=>({clickHandle:s})));const c={[`${getPrefixCls("table")}-clipboard`]:!0},d={visible:n,title:t("qm.table.clipboard.settingTitle"),width:600,height:"auto",loading:!1,bodyStyle:{paddingBottom:"52px"},onClose:()=>i(!1)};return React__default.createElement(React__default.Fragment,null,l&&React__default.createElement("span",{className:classNames(c),title:t("qm.table.clipboard.textNoSpace"),onClick:()=>s()},React__default.createElement("i",{className:"svgicon icon"},React__default.createElement(CopyOutlined,null))),React__default.createElement(QmModal,d,React__default.createElement(Setting$3,{columns:o,onClose:()=>i(!1)})))}));TableClipboard.displayName="TableClipboard";const Result$2=e=>{const{columns:a,onClose:r}=e,{tableProps:l,tableRef:n,$size:i,selectionKeys:o,setSelectionKeys:s}=React__default.useContext(TableContext),{rowKey:c}=l,d=e=>e.map((e=>{var t;const a={dataIndex:e.dataIndex,title:e.title,width:e.width,minWidth:e.minWidth,precision:e.precision,dictItems:null!==(t=e.dictItems)&&void 0!==t?t:[],render:e.render};return Array.isArray(e.children)&&(a.children=d(e.children)),a})),[u,p]=React__default.useState([{title:t("qm.table.groupSummary.index"),dataIndex:"index",width:80,render:e=>e+1},...d(a.filter((e=>![config$1.expandableColumn,config$1.selectionColumn,"index","pageIndex",config$1.operationColumn].includes(e.dataIndex))))]),[f]=React__default.useState(n.current.selectionRows.map((e=>Object.assign(Object.assign({},e),{children:void 0}))));return React__default.createElement(React__default.Fragment,null,React__default.createElement(Table,{size:i,columns:u,dataSource:f,rowKey:c,minHeight:338,rowSelection:{type:"checkbox",selectedRowKeys:o,onChange:e=>s(e)},webPagination:!0,ignorePageIndex:!0,showFastSearch:!1,showTableImport:!1,showSelectCollection:!1,showClipboard:!1,showFullScreen:!1,showColumnDefine:!1,columnsChange:e=>p(e)}),React__default.createElement("div",{style:{height:10}}),React__default.createElement("div",{style:{position:"absolute",left:0,bottom:0,right:0,zIndex:9,borderTop:"1px solid #d9d9d9",padding:"10px 15px",background:"#fff",textAlign:"right"}},React__default.createElement(QmButton,{onClick:()=>r()},t("qm.table.selectCollection.closeButton"))))},SelectCollection=React__default.forwardRef(((e,a)=>{const{columns:r,open:l=!0}=e,{tableProps:n,getRowKey:i,isFetch:o,isTableEmpty:s,setSelectionKeys:c,setSelectionRows:d}=React__default.useContext(TableContext),{rowSelection:u}=n,[p,f]=React__default.useState(!1),m=React__default.useRef(!1);useUpdateEffect((()=>{!m.current&&h()}),[s]);const h=()=>__awaiter(void 0,void 0,void 0,(function*(){var e;const{fetchSelectedRows:t,disabled:a=(e=>!1)}=u;if(o&&t)try{const r=yield t.api(t.params);if(200===r.code){let l=Array.isArray(r.data)?r.data:null!==(e=get(r.data,t.dataKey))&&void 0!==e?e:[];l=l.filter((e=>!a(e))),d(l),c(l.map(((e,t)=>i(e,t)))),m.current=!0}}catch(e){}})),g=()=>{f(!0)};React__default.useImperativeHandle(a,(()=>({clickHandle:g})));const _=getPrefixCls("table"),y={visible:p,title:t("qm.table.selectCollection.settingTitle"),loading:!1,bodyStyle:{paddingBottom:"52px"},onClose:()=>f(!1)};return React__default.createElement(React__default.Fragment,null,l&&React__default.createElement("span",{className:`${_}-select-collection`,title:t("qm.table.selectCollection.text"),onClick:()=>g()},React__default.createElement("i",{className:"svgicon icon"},React__default.createElement(CheckSquareOutlined,null))),React__default.createElement(QmModal,y,React__default.createElement(Result$2,{columns:r,onClose:()=>f(!1)})))}));SelectCollection.displayName="SelectCollection";const isDate=e=>"string"==typeof e&&/^\d{4}-\d{2}-\d{2}(\s\d{2}:\d{2}:\d{2})?$/.test(e),Setting$2=e=>{const{onClose:a}=e,{global:r}=React__default.useContext(ConfigContext),{tableProps:l,tableRef:n,getRowKey:i,$size:o,flattenColumns:s,pagination:c,setPagination:d,scrollYToRecord:u,setHighlightKey:p,setShouldToTop:f,isTreeTable:m,isWebPagination:h}=React__default.useContext(TableContext),{uniqueKey:g}=l,_=React__default.useRef(null),y=React__default.useRef(null),v=React__default.useRef([]),b=React__default.useRef(""),R=React__default.useRef(-1),E=React__default.useRef("stop");useUpdateEffect((()=>{const{current:e,pageSize:t}=c,a=n.current.tableFullData.slice((e-1)*t,e*t),r=getAllTableData(a).findIndex((e=>i(e,e.index)===b.current));u("",r)}),[c.current]);const x=e=>{let t;switch(e){case"text":case"textarea":default:t="INPUT";break;case"number":t="INPUT_NUMBER";break;case"date":t="DATE";break;case"checkbox":case"radio":t="SELECT"}return t},C=e=>e.filter((e=>null==e?void 0:e.dataIndex)).map((e=>{var t;return{type:x(e.filter.type),fieldName:e.dataIndex,label:e.title,tooltip:e.description,options:{dateType:"exactdate",itemList:null!==(t=e.dictItems)&&void 0!==t?t:[]},onChange:()=>__awaiter(void 0,void 0,void 0,(function*(){const[e,t]=yield _.current.GET_FORM_DATA(),[a,r]=yield y.current.GET_FORM_DATA(),l=omitBy(Object.assign({},t,r),isEmpty);P(l)}))}})),T={case:0,fullchar:0},S=React__default.useMemo((()=>s.filter((e=>![config$1.expandableColumn,config$1.selectionColumn,"index","pageIndex",config$1.operationColumn].includes(e.dataIndex))).filter((e=>e.filter))),[s]),[w,P]=React__default.useState({}),[N,I]=React__default.useState(T),[A]=React__default.useState(C([S[0]])),[$]=React__default.useState(C(S.slice(1))),[O,F]=React__default.useState(0),L=React__default.useMemo((()=>!Object.keys(w).length),[w]);useUpdateEffect((()=>{E.current="ready"}),[w,N]);const D=e=>{I(Object.assign({},N,e))},k=(e,a,r)=>new Promise(((l,n)=>{Modal.confirm({title:t("qm.button.confirmPrompt"),content:e,onOk:()=>{a(),l()},onCancel:()=>{r(),l()}})})),H=e=>__awaiter(void 0,void 0,void 0,(function*(){if(!Object.keys(w).length)return Modal.warning({title:t("qm.button.confirmPrompt"),content:t("qm.table.fastSearch.queryCondition")});if("ready"===E.current&&(E.current="stop",v.current=(e=>{const{allTableData:t}=n.current,a=[];for(let r=0,l=t.length;r<l;r++){const l=t[r];let n=!0;for(const t in e){const{type:a}=S.find((e=>e.dataIndex===t)).filter;let r=getCellValue(l,t),i=!0;if("text"===a||"textarea"===a?i=new RegExp(N.fullchar?`^${e[t]}$`:e[t],N.case?"":"i").test(r):(r=isDate(r)?r.slice(0,10):r,i=r==e[t]),!i){n=!1;break}}n&&a.push(l)}return a})(w),F(v.current.length)),!v.current.length)return p(""),Modal.warning({title:t("qm.button.confirmPrompt"),content:t("qm.table.fastSearch.notMatch")});"next"===e&&(R.current=R.current<0?0:R.current+1,R.current>v.current.length-1&&(yield k(t("qm.table.fastSearch.toTheEnd"),(()=>R.current=0),(()=>R.current=v.current.length-1)))),"prev"===e&&(R.current=R.current<0?v.current.length-1:R.current-1,R.current<0&&(yield k(t("qm.table.fastSearch.toStart"),(()=>R.current=v.current.length-1),(()=>R.current=0))));const a=v.current[R.current],r=i(a,a.index);let l=a.index;if(m&&h){const e=deepGetRowkey(n.current.deriveRowKeys,r)[0];l=n.current.tableFullData.findIndex((t=>i(t,t.index)===e))}((e,t)=>{if(b.current=e,h){const{pageSize:e}=c,a=Math.ceil((t+1)/e);f(!1),d(Object.assign({},c,{current:a}))}else u(e)})(r,l),p(r)})),V=()=>{_.current.RESET_FORM(),y.current.RESET_FORM()},M=React__default.useMemo((()=>g?`fastSearch_${g}`:""),[g]),[j,q]=React__default.useState([]),[U,K]=React__default.useState(""),[B,z]=React__default.useState("");useUpdateEffect((()=>{if(B){const{filters:e,config:t}=j.find((e=>e.value===B)).list;_.current.SET_FIELDS_VALUE(omit(e,$.map((e=>e.fieldName)))),y.current.SET_FIELDS_VALUE(omit(e,A.map((e=>e.fieldName)))),P(e),I(t)}else V(),P({}),I(T)}),[B]),React__default.useEffect((()=>{W()}),[]);const W=()=>__awaiter(void 0,void 0,void 0,(function*(){if(!M)return;let e=yield localforage.getItem(M);e||(e=yield G(M),Array.isArray(e)&&(yield localforage.setItem(M,e))),Array.isArray(e)&&e.length&&(q(e),z(e[0].value))})),G=e=>__awaiter(void 0,void 0,void 0,(function*(){const t=null==r?void 0:r.getComponentConfigApi;if(t)try{const a=yield t({key:e});if(200===a.code)return a.data}catch(e){}})),Q=(e,t)=>__awaiter(void 0,void 0,void 0,(function*(){const a=null==r?void 0:r.saveComponentConfigApi;if(a)try{yield a({[e]:t})}catch(e){}})),Y=getPrefixCls("table");return React__default.createElement("div",{className:`${Y}-fast-search__setting`},React__default.createElement("div",{className:"main"},React__default.createElement("div",{className:"top"},React__default.createElement("div",{className:"container"},React__default.createElement(QmTabs,{defaultActiveKey:"1",size:"small",tabBarExtraContent:React__default.createElement("span",null,t("qm.table.alert.total",{total:O}))},React__default.createElement(QmTabs.TabPane,{tab:t("qm.table.fastSearch.tabPanes.0"),key:"1",forceRender:!0},React__default.createElement(QmForm,{ref:_,items:A,cols:1,labelWidth:110})),React__default.createElement(QmTabs.TabPane,{tab:t("qm.table.fastSearch.tabPanes.1"),key:"2",forceRender:!0},React__default.createElement(QmForm,{ref:y,items:$,cols:1,labelWidth:110})))),React__default.createElement("div",{className:"saved line"},React__default.createElement("div",{className:"form-wrap"},React__default.createElement(Input,{size:o,value:U,placeholder:t("qm.table.highSearch.configText"),disabled:L,onChange:e=>{const{value:t}=e.target;K(t)}}),React__default.createElement(QmButton,{type:"primary",disabled:!U||L,style:{marginLeft:"10px"},onClick:()=>__awaiter(void 0,void 0,void 0,(function*(){if(!M)return warn("Table","必须设置组件参数 `uniqueKey` 才能保存");const e=createUidKey(),t=[...j,{text:U,value:e,list:{filters:w,config:N}}];q(t),z(e),K(""),yield localforage.setItem(M,t),yield Q(M,t)}))},t("qm.table.highSearch.saveButton"))),React__default.createElement("div",{className:"card-wrap"},React__default.createElement("h5",{style:{height:`${config$1.rowHeightMaps[o]}px`}},React__default.createElement("span",null,t("qm.table.fastSearch.savedSetting"))),React__default.createElement("ul",null,j.map((e=>React__default.createElement("li",{key:e.value,className:classNames({selected:e.value===B}),title:e.text,onClick:()=>{return t=e.value,void z(t!==B?t:"");var t}},React__default.createElement("span",{className:"title"},e.text),React__default.createElement("i",{className:"svgicon close",title:t("qm.table.highSearch.removeText"),onClick:t=>{var a;t.stopPropagation(),a=e.value,__awaiter(void 0,void 0,void 0,(function*(){if(!a)return;const e=j.filter((e=>e.value!==a));q(e),a===B&&z(""),yield localforage.setItem(M,e),yield Q(M,e)}))}},React__default.createElement(CloseCircleOutlined,null))))),!j.length&&React__default.createElement("div",{style:{padding:DEFAULT_DISTANCE}},React__default.createElement(QmEmpty,null)))))),React__default.createElement("div",{className:"bottom"},React__default.createElement("div",null,React__default.createElement(Checkbox,{checked:!!N.case,onChange:e=>D({case:e.target.checked})},t("qm.table.fastSearch.matchCase")),React__default.createElement(Checkbox,{checked:!!N.fullchar,onChange:e=>D({fullchar:e.target.checked})},t("qm.table.fastSearch.matchFullchar"))),React__default.createElement("div",null,React__default.createElement(QmButton,{onClick:()=>V()},t("qm.table.fastSearch.clear"))))),React__default.createElement("div",{style:{position:"absolute",left:0,bottom:0,right:0,height:`${SizeHeight[o]+20}px`,zIndex:9,borderTop:"1px solid #d9d9d9",padding:"10px 15px",background:"#fff",textAlign:"right",boxSizing:"border-box"}},React__default.createElement(QmButton,{onClick:()=>a(),style:{marginRight:8}},t("qm.table.fastSearch.closeButton")),React__default.createElement(QmButton,{type:"primary",style:{marginRight:8},onClick:()=>H("prev")},t("qm.table.fastSearch.queryPrev")),React__default.createElement(QmButton,{type:"primary",onClick:()=>H("next")},t("qm.table.fastSearch.queryNext"))))},FastSearch=React__default.forwardRef(((e,a)=>{const{open:r=!0}=e,{$size:l}=React__default.useContext(TableContext),[n,i]=React__default.useState(!1),o=()=>{i(!0)};React__default.useImperativeHandle(a,(()=>({clickHandle:o})));const s=getPrefixCls("table"),c={visible:n,title:t("qm.table.fastSearch.settingTitle"),width:600,loading:!1,bodyStyle:{paddingBottom:`${SizeHeight[l]+20}px`},onClose:()=>i(!1)};return React__default.createElement(React__default.Fragment,null,r&&React__default.createElement("span",{className:`${s}-super-search`,title:t("qm.table.fastSearch.text"),onClick:()=>o()},React__default.createElement("i",{className:"svgicon icon"},React__default.createElement(MonitorOutlined,null))),React__default.createElement(QmModal,c,React__default.createElement(Setting$2,{onClose:()=>i(!1)})))}));FastSearch.displayName="FastSearch";const Result$1=e=>{const{columns:a,group:r,summary:l}=e,{tableRef:n,tableProps:i,$size:o,pagination:s,fetchParams:c,isFetch:d}=React__default.useContext(TableContext),{fetch:u}=i,p=e=>{var t;const r=a.find((t=>t.dataIndex===e));return{title:r.title,precision:r.precision,dictItems:null!==(t=r.dictItems)&&void 0!==t?t:[]}},f=r.map((e=>Object.assign({dataIndex:e.group},p(e.group)))),m=l.map((e=>e.summary===config$1.groupSummary.total.value?{dataIndex:e.summary,title:config$1.groupSummary.total.text,formula:e.formula}:Object.assign(Object.assign({dataIndex:e.summary},p(e.summary)),{formula:e.formula}))),h=React__default.useMemo((()=>Object.assign({},c,{[config$1.sorterFieldName]:void 0,[config$1.groupSummary.summaryFieldName]:l.map((e=>`${e.formula}|${e.summary}`)).join(","),[config$1.groupSummary.groupbyFieldName]:r.map((e=>e.group)).join(","),usedJH:2,[config$1.currentPageName]:1})),[c,r,l]),[g,_]=React__default.useState(((e,r)=>[{title:t("qm.table.groupSummary.index"),dataIndex:"pageIndex",width:80,render:e=>e+1},...e.map((e=>({title:e.title,dataIndex:e.dataIndex,dictItems:e.dictItems}))),...r.map((e=>{var t;const r=null===(t=a.find((t=>t.dataIndex===e.dataIndex)))||void 0===t?void 0:t.groupSummary;let l=r?{summation:r}:null;return e.dataIndex===config$1.groupSummary.total.value&&(l={dataIndex:config$1.groupSummary.recordTotalIndex,summation:{render:()=>s.total}}),Object.assign(Object.assign({},e),"count"===e.formula||"sum"===e.formula?l:null)}))])(f,m)),[y]=React__default.useState(d?[]:(e=>{const t=groupByProps(e,r.map((e=>e.group))),a=[];return t.forEach((e=>{const t={};g.forEach((a=>{const{dataIndex:r}=a;"index"!==r&&setCellValue(t,r,getCellValue(e[0],r))})),l.forEach((a=>{const r=a.summary!==config$1.groupSummary.total.value?a.summary:config$1.groupSummary.recordTotalIndex,l=a.formula;"count"===l&&setCellValue(t,r,e.length),"sum"===l&&setCellValue(t,r,sumBy(e,r)),"max"===l&&setCellValue(t,r,maxBy(e,r)[r]),"min"===l&&setCellValue(t,r,minBy(e,r)[r]),"avg"===l&&setCellValue(t,r,(sumBy(e,r)/e.length).toFixed(2))})),a.push(t)})),a})(n.current.tableFullData)),v=Object.assign(Object.assign({size:o,height:400},d?{fetch:{api:u.api,params:h,dataKey:null==u?void 0:u.dataKey}}:{dataSource:y}),{columns:g,rowKey:e=>e.index,showFastSearch:!1,showTableImport:!1,exportExcel:{fileName:`${dayjs().format("YYYYMMDDHHmmss")}.xlsx`},tablePrint:{showLogo:!0},columnsChange:e=>_(e)});return React__default.createElement(Table,v)},Setting$1=e=>{const{onClose:a}=e,{global:r}=React__default.useContext(ConfigContext),{tableProps:l,$size:n,flattenColumns:i}=React__default.useContext(TableContext),{uniqueKey:o}=l,s=React__default.useRef(null),c=React__default.useRef(null),[d,u]=React__default.useState(!1),[p,f]=React__default.useState([]),[m,h]=React__default.useState(""),[g,_]=React__default.useState("");useUpdateEffect((()=>{if(g){const{group:e,summary:t}=p.find((e=>e.value===g)).list;C(e),P(t)}else{const e=O();C((null==e?void 0:e.group)||[]),P((null==e?void 0:e.summary)||[])}}),[g]),React__default.useEffect((()=>{F()}),[]);const y=React__default.useMemo((()=>o?`summary_${o}`:""),[o]),v=React__default.useMemo((()=>i.filter((e=>![config$1.expandableColumn,config$1.selectionColumn,"index","pageIndex",config$1.operationColumn].includes(e.dataIndex)))),[i]),b=v.filter((e=>!e.groupSummary)).map((e=>({text:e.title,value:e.dataIndex}))),R=[config$1.groupSummary.total,...v.filter((e=>!!e.groupSummary)).map((e=>({text:e.title,value:e.dataIndex})))],E=[{text:t("qm.table.groupSummary.sumText"),value:"sum"},{text:t("qm.table.groupSummary.maxText"),value:"max"},{text:t("qm.table.groupSummary.minText"),value:"min"},{text:t("qm.table.groupSummary.avgText"),value:"avg"},{text:t("qm.table.groupSummary.countText"),value:"count"}],[x,C]=React__default.useState([]),[T,S]=React__default.useState([{title:t("qm.table.groupSummary.operation"),dataIndex:"__action__",fixed:"left",width:80,render:(e,a)=>React__default.createElement("div",null,React__default.createElement(QmButton,{type:"text",onClick:()=>{s.current.REMOVE_RECORDS(a)}},t("qm.table.groupSummary.removeText")))},{dataIndex:"group",title:t("qm.table.groupSummary.groupItem"),minWidth:200,editRender:e=>({type:"select",editable:!0,extra:{cornerSign:!1},items:b.map((e=>Object.assign(Object.assign({},e),{disabled:x.findIndex((t=>t.group===e.value))>-1})))})}]),[w,P]=React__default.useState([]),[N,I]=React__default.useState([{title:t("qm.table.groupSummary.operation"),dataIndex:"__action__",fixed:"left",width:80,render:(e,a)=>React__default.createElement("div",null,React__default.createElement(QmButton,{type:"text",onClick:()=>{c.current.REMOVE_RECORDS(a)}},t("qm.table.groupSummary.removeText")))},{dataIndex:"summary",title:t("qm.table.groupSummary.summaryColumn"),minWidth:200,editRender:e=>({type:"select",editable:!0,items:R.map((e=>Object.assign(Object.assign({},e),{disabled:w.findIndex((t=>t.summary===e.value))>-1}))),extra:{cornerSign:!1},onChange:t=>{e.formula=""}})},{dataIndex:"formula",title:t("qm.table.groupSummary.calcFormula"),width:140,editRender:e=>({type:"select",editable:!0,extra:{cornerSign:!1},items:e.summary===config$1.groupSummary.total.value?E.slice(E.length-1):E})}]),A=React__default.useMemo((()=>{const e=x.length&&x.every((e=>Object.values(e).every((e=>""!==e)))),t=w.length&&w.every((e=>Object.values(e).every((e=>""!==e))));return!(e&&t)}),[x,w]),$=()=>{y&&sessionStorage.setItem(y,JSON.stringify({group:x.filter((e=>!!e.group)),summary:w.filter((e=>!!e.summary))}))},O=()=>{if(!y)return;const e=sessionStorage.getItem(y);return e?JSON.parse(e):null},F=()=>__awaiter(void 0,void 0,void 0,(function*(){if(!y)return;const e=O();if(e){const{group:t,summary:a}=e;C(t),P(a)}let t=yield localforage.getItem(y);t||(t=yield L(y),Array.isArray(t)&&(yield localforage.setItem(y,t))),Array.isArray(t)&&t.length&&(f(t),!e&&_(t[0].value))})),L=e=>__awaiter(void 0,void 0,void 0,(function*(){const t=null==r?void 0:r.getComponentConfigApi;if(t)try{const a=yield t({key:e});if(200===a.code)return a.data}catch(e){}})),D=(e,t)=>__awaiter(void 0,void 0,void 0,(function*(){const a=null==r?void 0:r.saveComponentConfigApi;if(a)try{yield a({[e]:t})}catch(e){}})),k=getPrefixCls("table"),H={visible:d,title:t("qm.table.groupSummary.resultText"),loading:!1,onClose:()=>u(!1)};return React__default.createElement("div",{className:`${k}-group-summary__setting`},React__default.createElement("div",{className:"main"},React__default.createElement("div",{style:{width:"30%"}},React__default.createElement(Table,{ref:s,size:n,columns:T,dataSource:x,rowKey:"index",height:350,showFastSearch:!1,showTableImport:!1,showFullScreen:!1,showClipboard:!1,showColumnDefine:!1,columnsChange:e=>S(e),onDataChange:e=>{C(e)}},React__default.createElement(QmButton,{type:"primary",icon:React__default.createElement(PlusOutlined,null),onClick:()=>{s.current.INSERT_RECORDS({})},style:{marginRight:0}}))),React__default.createElement("div",{className:"container line"},React__default.createElement(Table,{ref:c,size:n,columns:N,dataSource:w,rowKey:"index",height:350,showFastSearch:!1,showTableImport:!1,showFullScreen:!1,showClipboard:!1,showColumnDefine:!1,columnsChange:e=>I(e),onDataChange:e=>{P(e)}},React__default.createElement(QmButton,{type:"primary",icon:React__default.createElement(PlusOutlined,null),onClick:()=>{c.current.INSERT_RECORDS({})},style:{marginRight:0}}))),React__default.createElement("div",{className:"saved line"},React__default.createElement("div",{className:"form-wrap"},React__default.createElement(Input,{size:n,value:m,placeholder:t("qm.table.groupSummary.configText"),disabled:A,onChange:e=>{const{value:t}=e.target;h(t)}}),React__default.createElement(QmButton,{type:"primary",disabled:!m||A,style:{marginLeft:"10px"},onClick:()=>__awaiter(void 0,void 0,void 0,(function*(){if(!y)return warn("Table","必须设置组件参数 `uniqueKey` 才能保存");const e=createUidKey(),t=[...p,{text:m,value:e,list:{group:x.filter((e=>!!e.group)),summary:w.filter((e=>!!e.summary))}}];f(t),_(e),h(""),yield localforage.setItem(y,t),yield D(y,t)}))},t("qm.table.groupSummary.saveButton"))),React__default.createElement("div",{className:"card-wrap"},React__default.createElement("h5",{style:{height:`${config$1.rowHeightMaps[n]}px`}},React__default.createElement("span",null,t("qm.table.groupSummary.savedSetting"))),React__default.createElement("ul",null,p.map((e=>React__default.createElement("li",{key:e.value,className:classNames({selected:e.value===g}),title:e.text,onClick:()=>{return t=e.value,void _(t!==g?t:"");var t}},React__default.createElement("span",{className:"title"},e.text),React__default.createElement("i",{className:"svgicon close",title:t("qm.table.groupSummary.removeText"),onClick:t=>{var a;t.stopPropagation(),a=e.value,__awaiter(void 0,void 0,void 0,(function*(){if(!a)return;const e=p.filter((e=>e.value!==a));f(e),a===g&&_(""),yield localforage.setItem(y,e),yield D(y,e)}))}},React__default.createElement(CloseCircleOutlined,null))))),!p.length&&React__default.createElement("div",{style:{padding:DEFAULT_DISTANCE}},React__default.createElement(QmEmpty,null)))))),React__default.createElement(QmModal,H,React__default.createElement(Result$1,{columns:v,group:x,summary:w})),React__default.createElement("div",{style:{position:"absolute",left:0,bottom:0,right:0,zIndex:9,borderTop:"1px solid #d9d9d9",padding:"10px 15px",background:"#fff",textAlign:"right"}},React__default.createElement(QmButton,{onClick:()=>a(),style:{marginRight:8}},t("qm.table.groupSummary.closeButton")),React__default.createElement(QmButton,{type:"primary",disabled:A,onClick:()=>($(),void u(!0))},t("qm.table.groupSummary.confirmButton"))))},GroupSummary=React__default.forwardRef(((e,a)=>{const{open:r=!0}=e,[l,n]=React__default.useState(!1),i=()=>{n(!0)};React__default.useImperativeHandle(a,(()=>({clickHandle:i})));const o=getPrefixCls("table"),s={visible:l,title:t("qm.table.groupSummary.settingTitle"),loading:!1,width:"65%",bodyStyle:{paddingBottom:"52px"},onClose:()=>n(!1)};return React__default.createElement(React__default.Fragment,null,r&&React__default.createElement("span",{className:`${o}-group-summary`,title:t("qm.table.groupSummary.text"),onClick:()=>i()},React__default.createElement("i",{className:"svgicon icon"},React__default.createElement(PieChartOutlined,null))),React__default.createElement(QmModal,s,React__default.createElement(Setting$1,{onClose:()=>n(!1)})))}));GroupSummary.displayName="GroupSummary";const Result=e=>{const{onClose:a}=e,{global:r}=React__default.useContext(ConfigContext),{tableProps:l,$size:n,flattenColumns:i,setSuperFilters:o,clearTableFilter:s}=React__default.useContext(TableContext),{uniqueKey:c}=l,d=React__default.useRef(null),[u,p]=React__default.useState([]),[f,m]=React__default.useState([]),[h,g]=React__default.useState(""),[_,y]=React__default.useState("");useUpdateEffect((()=>{p(_?f.find((e=>e.value===_)).list:O()||[])}),[_]),React__default.useEffect((()=>{F()}),[]);const v=React__default.useMemo((()=>c?`superSearch_${c}`:""),[c]),b=React__default.useMemo((()=>i.filter((e=>!!e.filter))),[i]),R=createWhereSQL(u),E=React__default.useMemo((()=>!(R&&isBracketBalance(R))),[R]),x=React__default.useMemo((()=>!!u.length&&E),[u,E]),C=[{value:"and",text:t("qm.table.highSearch.andText")},{value:"or",text:t("qm.table.highSearch.orText")}],T=i.filter((e=>!!e.filter)).map((e=>({value:e.dataIndex,text:e.title}))),S=e=>["in","nin"].includes(e),w=(e,t)=>{let a;switch(e){case"number":a="number";break;case"date":a="date";break;case"checkbox":case"radio":a=t?"select-multiple":"select";break;default:a="text"}return a},P=e=>{let a=[];switch(e){case"date":case"number":a=[{value:">",text:t("qm.table.highSearch.gtText")},{value:"<",text:t("qm.table.highSearch.ltText")},{value:">=",text:t("qm.table.highSearch.gteText")},{value:"<=",text:t("qm.table.highSearch.lteText")},{value:"==",text:t("qm.table.highSearch.eqText")},{value:"!=",text:t("qm.table.highSearch.neqText")}];break;case"checkbox":case"radio":a=[{value:"in",text:t("qm.table.highSearch.inText")},{value:"nin",text:t("qm.table.highSearch.ninText")},{value:"==",text:t("qm.table.highSearch.eqText")},{value:"!=",text:t("qm.table.highSearch.neqText")}];break;default:a=[{value:"like",text:t("qm.table.highSearch.likeText")},{value:"==",text:t("qm.table.highSearch.eqText")},{value:"!=",text:t("qm.table.highSearch.neqText")}]}return a},[N,I]=React__default.useState([{title:t("qm.table.highSearch.operation"),dataIndex:"__action__",fixed:"left",width:80,render:(e,a)=>React__default.createElement("div",null,React__default.createElement(QmButton,{type:"text",onClick:()=>{d.current.REMOVE_RECORDS(a)}},t("qm.table.highSearch.removeText")))},{title:t("qm.table.highSearch.bracket"),dataIndex:"bracketLeft",align:"right",width:80,render:(e,t)=>React__default.createElement("span",{style:{fontSize:"20px"}},e)},{title:t("qm.table.highSearch.fieldName"),dataIndex:"fieldName",width:160,required:!0,editRender:e=>({type:"select",editable:!0,items:T,rules:[{required:!0,message:t("qm.table.highSearch.noEmpty")}],extra:{cornerSign:!1},onChange:t=>{var a,r;const l=Object.values(t)[0],n=null===(a=b.find((e=>e.dataIndex===l)))||void 0===a?void 0:a.filter.type,i=P(n);e.fieldType=n,e.expression=l?null===(r=i[0])||void 0===r?void 0:r.value:"",e.condition=S(e.expression)?[]:"",l||(e.bracketLeft=e.bracketRight="")}})},{title:t("qm.table.highSearch.fieldType"),dataIndex:"fieldType",width:100,hidden:!0},{title:t("qm.table.highSearch.expression"),dataIndex:"expression",width:120,required:!0,editRender:e=>{var t;const a=null===(t=b.find((t=>t.dataIndex===e.fieldName)))||void 0===t?void 0:t.filter.type;return{type:"select",editable:!0,items:P(a),extra:{disabled:!e.fieldName,cornerSign:!1},onChange:()=>{e.condition=S(e.expression)?[]:""}}}},{title:t("qm.table.highSearch.condition"),dataIndex:"condition",minWidth:200,editRender:e=>{var t,a,r;const l=b.find((t=>t.dataIndex===e.fieldName)),n=null==l?void 0:l.filter.type,i=null!==(r=null!==(a=null===(t=null==l?void 0:l.filter)||void 0===t?void 0:t.items)&&void 0!==a?a:null==l?void 0:l.dictItems)&&void 0!==r?r:[];return{type:w(n,S(e.expression)),editable:!0,items:i,extra:{disabled:!e.fieldName,cornerSign:!1}}}},{title:t("qm.table.highSearch.bracket"),dataIndex:"bracketRight",width:80,render:(e,t)=>React__default.createElement("span",{style:{fontSize:"20px"}},e)},{title:t("qm.table.highSearch.logic"),dataIndex:"logic",width:100,required:!0,editRender:e=>({type:"select",editable:!0,items:C,extra:{disabled:!e.fieldName,cornerSign:!1}})}]),A=()=>{s(),o(u.map((e=>omit(e,["index","pageIndex"])))),$(),a()},$=()=>{v&&sessionStorage.setItem(v,JSON.stringify(u.filter((e=>!!e.fieldName))))},O=()=>{if(!v)return;const e=sessionStorage.getItem(v);return e?JSON.parse(e):null},F=()=>__awaiter(void 0,void 0,void 0,(function*(){if(!v)return;const e=O();e&&p(e);let t=yield localforage.getItem(v);t||(t=yield L(v),Array.isArray(t)&&(yield localforage.setItem(v,t))),Array.isArray(t)&&t.length&&(m(t),!e&&y(t[0].value))})),L=e=>__awaiter(void 0,void 0,void 0,(function*(){const t=null==r?void 0:r.getComponentConfigApi;if(t)try{const a=yield t({key:e});if(200===a.code)return a.data}catch(e){}})),D=(e,t)=>__awaiter(void 0,void 0,void 0,(function*(){const a=null==r?void 0:r.saveComponentConfigApi;if(a)try{yield a({[e]:t})}catch(e){}})),k=getPrefixCls("table");return React__default.createElement("div",{className:`${k}-super-search__setting`},React__default.createElement("div",{className:"main"},React__default.createElement("div",{className:"container"},React__default.createElement(Table,{ref:d,size:n,columns:N,dataSource:u,rowKey:"index",height:350,showFastSearch:!1,showTableImport:!1,showFullScreen:!1,showClipboard:!1,showColumnDefine:!1,columnsChange:e=>I(e),onRowClick:(e,t)=>{const{dataIndex:a}=t;e.fieldName&&["bracketLeft","bracketRight"].includes(a)&&("bracketLeft"===a&&(e[a]=e[a]?"":"("),"bracketRight"===a&&(e[a]=e[a]?"":")"),p([...u]))},onDataChange:e=>{p(e)}},React__default.createElement(QmButton,{type:"primary",icon:React__default.createElement(PlusOutlined,null),onClick:()=>{d.current.INSERT_RECORDS({bracketLeft:"",bracketRight:"",logic:"and"})},style:{marginRight:0}})),config$1.highSearch.showSQL&&R&&React__default.createElement("code",{className:"lang-js"},R)),React__default.createElement("div",{className:"saved line"},React__default.createElement("div",{className:"form-wrap"},React__default.createElement(Input,{size:n,value:h,placeholder:t("qm.table.highSearch.configText"),disabled:E,onChange:e=>{const{value:t}=e.target;g(t)}}),React__default.createElement(QmButton,{type:"primary",disabled:!h||E,style:{marginLeft:"10px"},onClick:()=>__awaiter(void 0,void 0,void 0,(function*(){if(!v)return warn("Table","必须设置组件参数 `uniqueKey` 才能保存");const e=createUidKey(),t=[...f,{text:h,value:e,list:u.filter((e=>!!e.fieldName))}];m(t),y(e),g(""),yield localforage.setItem(v,t),yield D(v,t)}))},t("qm.table.highSearch.saveButton"))),React__default.createElement("div",{className:"card-wrap"},React__default.createElement("h5",{style:{height:`${config$1.rowHeightMaps[n]}px`}},React__default.createElement("span",null,t("qm.table.highSearch.savedSetting"))),React__default.createElement("ul",null,f.map((e=>React__default.createElement("li",{key:e.value,className:classNames({selected:e.value===_}),title:e.text,onClick:()=>{return t=e.value,void y(t!==_?t:"");var t}},React__default.createElement("span",{className:"title"},e.text),React__default.createElement("i",{className:"svgicon close",title:t("qm.table.highSearch.removeText"),onClick:t=>{var a;t.stopPropagation(),a=e.value,__awaiter(void 0,void 0,void 0,(function*(){if(!a)return;const e=f.filter((e=>e.value!==a));m(e),a===_&&y(""),yield localforage.setItem(v,e),yield D(v,e)}))}},React__default.createElement(CloseCircleOutlined,null))))),!f.length&&React__default.createElement("div",{style:{padding:DEFAULT_DISTANCE}},React__default.createElement(QmEmpty,null)))))),React__default.createElement("div",{style:{position:"absolute",left:0,bottom:0,right:0,zIndex:9,borderTop:"1px solid #d9d9d9",padding:"10px 15px",background:"#fff",textAlign:"right"}},React__default.createElement(QmButton,{onClick:()=>a(),style:{marginRight:8}},t("qm.table.highSearch.closeButton")),React__default.createElement(QmButton,{type:"primary",disabled:x,onClick:()=>A()},t("qm.table.highSearch.searchButton"))))},SuperSearch=React__default.forwardRef(((e,a)=>{const{open:r=!0}=e,[l,n]=React__default.useState(!1),i=()=>{n(!0)};React__default.useImperativeHandle(a,(()=>({clickHandle:i})));const o=getPrefixCls("table"),s={visible:l,title:t("qm.table.highSearch.settingTitle"),loading:!1,width:"70%",bodyStyle:{paddingBottom:"52px"},onClose:()=>n(!1)};return React__default.createElement(React__default.Fragment,null,r&&React__default.createElement("span",{className:`${o}-super-search`,title:t("qm.table.highSearch.text"),onClick:()=>i()},React__default.createElement("i",{className:"svgicon icon"},React__default.createElement(FunnelPlotOutlined,null))),React__default.createElement(QmModal,s,React__default.createElement(Result,{onClose:()=>n(!1)})))}));SuperSearch.displayName="SuperSearch";const ToolBox=React__default.forwardRef(((e,a)=>{const{tableColumns:r,showFullScreen:l,showReload:n,showPrint:i,showImport:o,showExport:s,showClipboard:c,showCollection:d,showFastSearch:u,showSuperSearch:p,showGroupSummary:f,showToolBox:m}=e,{global:h}=React__default.useContext(ConfigContext),{tableProps:g,flattenColumns:_,isFullScreen:y,$size:v}=React__default.useContext(TableContext),{uniqueKey:b,exportExcel:R}=g,E=React__default.useRef(null),x=React__default.useRef(null),C=React__default.useRef(null),T=React__default.useRef(null),S=React__default.useRef(null),w=React__default.useRef(null),P=React__default.useRef(null),N=React__default.useRef(null),I=React__default.useRef(null),A=React__default.useRef(null),$=React__default.useMemo((()=>b?`toolBox_${b}`:""),[b]),[O,F]=React__default.useState({fullScreen:!1,reload:!1,print:!1,import:!1,export:!1,clipboard:!1,collection:!1,fastSearch:!1,superSearch:!1,groupSummary:!1}),L={fullScreen:l,reload:n,print:i,import:o,export:s&&!(null==R?void 0:R.hideIcon),clipboard:c,collection:d,fastSearch:u,superSearch:p,groupSummary:f},[D,k]=React__default.useState(!1);useUpdateEffect((()=>{V()}),[O]),React__default.useEffect((()=>{H()}),[]),React__default.useImperativeHandle(a,(()=>({exportHandle:()=>{if(!S.current)return warn("Table","执行导出需要配置 `exportExcel` 参数");S.current.clickHandle()}})));const H=()=>{if(!$||!m)return;const e=JSON.parse(localStorage.getItem($));e||M($).then((e=>{e&&(F(Object.assign({},O,e)),localStorage.setItem($,JSON.stringify(e)))})).catch((()=>{})),e&&F(Object.assign({},O,e))},V=()=>{if(!$||!m)return;const e={};for(const t in O)O[t]&&(e[t]=O[t]);localStorage.setItem($,JSON.stringify(e)),j($,e)},M=e=>__awaiter(void 0,void 0,void 0,(function*(){const t=null==h?void 0:h.getComponentConfigApi;if(t)try{const a=yield t({key:e});if(200===a.code)return a.data}catch(e){}})),j=(e,t)=>__awaiter(void 0,void 0,void 0,(function*(){const a=null==h?void 0:h.saveComponentConfigApi;if(a)try{yield a({[e]:t})}catch(e){}})),q=e=>__awaiter(void 0,void 0,void 0,(function*(){k(!1),yield sleep(100),e.current.clickHandle()})),U=(e,t)=>{F(Object.assign({},O,{[t]:e}))},K=getPrefixCls("table"),B={"top-toolbox__popper":!0,[`${K}--lg`]:"large"===v,[`${K}--sm`]:"small"===v};return React__default.createElement(React__default.Fragment,null,l&&React__default.createElement(FullScreen,{ref:E,isFullScreen:y,open:!m||O.fullScreen}),n&&React__default.createElement(Reload,{ref:x,open:!m||O.reload}),i&&React__default.createElement(TablePrint,{ref:C,tableColumns:r,open:!m||O.print}),o&&React__default.createElement(TableImport,{ref:T,tableColumns:r,open:!m||O.import}),s&&React__default.createElement(TableExport,{ref:S,tableColumns:r,open:(!m||O.export)&&!(null==R?void 0:R.hideIcon)}),c&&React__default.createElement(TableClipboard,{ref:w,flattenColumns:_,open:!m||O.clipboard}),d&&React__default.createElement(SelectCollection,{ref:P,columns:r,open:!m||O.collection}),u&&React__default.createElement(FastSearch,{ref:N,open:!m||O.fastSearch}),f&&React__default.createElement(GroupSummary,{ref:I,open:!m||O.groupSummary}),p&&React__default.createElement(SuperSearch,{ref:A,open:!m||O.superSearch}),m&&React__default.createElement(Dropdown,{overlay:(()=>{const e=[{key:"fullScreen",label:React__default.createElement(React__default.Fragment,null,React__default.createElement(Checkbox,{checked:O.fullScreen,style:{marginRight:6},onChange:e=>U(e.target.checked,"fullScreen"),onClick:e=>e.stopPropagation()}),React__default.createElement("span",null,t("qm.table.screen.full"))),onClick:()=>q(E)},{key:"reload",label:React__default.createElement(React__default.Fragment,null,React__default.createElement(Checkbox,{checked:O.reload,style:{marginRight:6},onChange:e=>U(e.target.checked,"reload"),onClick:e=>e.stopPropagation()}),React__default.createElement("span",null,t("qm.table.refresh.text"))),onClick:()=>q(x)},{key:"print",label:React__default.createElement(React__default.Fragment,null,React__default.createElement(Checkbox,{checked:O.print,style:{marginRight:6},onChange:e=>U(e.target.checked,"print"),onClick:e=>e.stopPropagation()}),React__default.createElement("span",null,t("qm.table.print.text"))),onClick:()=>q(C)},{key:"import",label:React__default.createElement(React__default.Fragment,null,React__default.createElement(Checkbox,{checked:O.import,style:{marginRight:6},onChange:e=>U(e.target.checked,"import"),onClick:e=>e.stopPropagation()}),React__default.createElement("span",null,t("qm.table.import.textNoSpace"))),onClick:()=>q(T)},{key:"export",label:React__default.createElement(React__default.Fragment,null,React__default.createElement(Checkbox,{checked:O.export,style:{marginRight:6},onChange:e=>U(e.target.checked,"export"),onClick:e=>e.stopPropagation()}),React__default.createElement("span",null,t("qm.table.export.textNoSpace"))),onClick:()=>q(S)},{key:"clipboard",label:React__default.createElement(React__default.Fragment,null,React__default.createElement(Checkbox,{checked:O.clipboard,style:{marginRight:6},onChange:e=>U(e.target.checked,"clipboard"),onClick:e=>e.stopPropagation()}),React__default.createElement("span",null,t("qm.table.clipboard.textNoSpace"))),onClick:()=>q(w)},{key:"collection",label:React__default.createElement(React__default.Fragment,null,React__default.createElement(Checkbox,{checked:O.collection,style:{marginRight:6},onChange:e=>U(e.target.checked,"collection"),onClick:e=>e.stopPropagation()}),React__default.createElement("span",null,t("qm.table.selectCollection.text"))),onClick:()=>q(P)},{key:"fastSearch",label:React__default.createElement(React__default.Fragment,null,React__default.createElement(Checkbox,{checked:O.fastSearch,style:{marginRight:6},onChange:e=>U(e.target.checked,"fastSearch"),onClick:e=>e.stopPropagation()}),React__default.createElement("span",null,t("qm.table.fastSearch.text"))),onClick:()=>q(N)},{key:"groupSummary",label:React__default.createElement(React__default.Fragment,null,React__default.createElement(Checkbox,{checked:O.groupSummary,style:{marginRight:6},onChange:e=>U(e.target.checked,"groupSummary"),onClick:e=>e.stopPropagation()}),React__default.createElement("span",null,t("qm.table.groupSummary.text"))),onClick:()=>q(I)},{key:"superSearch",label:React__default.createElement(React__default.Fragment,null,React__default.createElement(Checkbox,{checked:O.superSearch,style:{marginRight:6},onChange:e=>U(e.target.checked,"superSearch"),onClick:e=>e.stopPropagation()}),React__default.createElement("span",null,t("qm.table.highSearch.text"))),onClick:()=>q(A)}];return React__default.createElement(Menu,{items:e.filter((e=>L[e.key]))})})(),trigger:["click"],placement:"bottomRight",overlayClassName:classNames(B),overlayStyle:{minWidth:120},visible:D,onVisibleChange:e=>{k(e)}},React__default.createElement("span",{className:`${K}-toolbox`,title:t("qm.table.toolbox.text")},React__default.createElement("i",{className:"svgicon icon"},React__default.createElement(AppstoreAddOutlined,null)))))}));ToolBox.displayName="ToolBox";const ColumnFilter=e=>{const{columns:a}=e,{global:r}=React__default.useContext(ConfigContext),{tableProps:l,tableRef:n,$size:i}=React__default.useContext(TableContext),{uniqueKey:o,onlyShowIcon:s,columnsChange:c}=l,d=React__default.useRef([]),u=e=>e.filter((e=>!e.noAuth&&"left"===e.fixed)),p=e=>e.filter((e=>!e.noAuth&&"right"===e.fixed)),f=e=>e.filter((e=>!e.noAuth&&!e.fixed)),[m,h]=React__default.useState(!1),[g,_]=React__default.useState(u(a)),[y,v]=React__default.useState(p(a)),[b,R]=React__default.useState(f(a)),E=React__default.useMemo((()=>o?`table_${o}`:""),[o]),x=React__default.useMemo((()=>[...g,...b,...y]),[g,b,y]);useUpdateEffect((()=>{P(a),w(a),T(a)}),[a]),React__default.useEffect((()=>{S()}),[]);const C=()=>{if(!E)return;const e=JSON.parse(localStorage.getItem(E));var t;if(e||(t=E,__awaiter(void 0,void 0,void 0,(function*(){const e=null==r?void 0:r.getComponentConfigApi;if(e)try{const a=yield e({key:t});if(200===a.code)return a.data}catch(e){}}))).then((e=>{if(!e)return T(a);localStorage.setItem(E,JSON.stringify(e)),S()})).catch((()=>{})),!e)return;return xor(e.map((e=>e.dataIndex)),a.map((e=>e.dataIndex))).length>0?a.map((t=>{const{dataIndex:a}=t,r=e.find((e=>e.dataIndex===a));return r?(void 0!==r.hidden&&(t.hidden=r.hidden),void 0!==r.fixed&&(t.fixed=r.fixed),void 0!==r.width&&(t.width=r.width),void 0!==r.renderWidth&&(t.renderWidth=r.renderWidth),t):t})):e.map((e=>{const t=a.find((t=>t.dataIndex===e.dataIndex));return void 0===e.fixed&&delete t.fixed,Object.assign(Object.assign({},t),e)}))},T=e=>{if(!E)return;const t=e.map((e=>{const t={};return void 0!==e.hidden&&(t.hidden=e.hidden),void 0!==e.fixed&&(t.fixed=e.fixed),void 0!==e.width&&(t.width=e.width),void 0!==e.renderWidth&&(t.renderWidth=e.renderWidth),Object.assign({dataIndex:e.dataIndex},t)})),a=JSON.parse(localStorage.getItem(E));var l,n;isEqual$1(t,a)||(localStorage.setItem(E,JSON.stringify(t)),l=E,n=t,__awaiter(void 0,void 0,void 0,(function*(){const e=null==r?void 0:r.saveComponentConfigApi;if(e)try{yield e({[l]:n})}catch(e){}})))},S=()=>{const e=C();e&&(w(e),null==c||c(e))},w=e=>{const t=u(e),a=p(e),r=f(e);return _(t),v(a),R(r),[...t,...r,...a]},P=e=>{const t=[];e.filter((e=>!e.noAuth)).forEach(((a,r)=>{const l=a.colSpan;l>1&&e.slice(r+1,r+l).every((e=>{let{colSpan:t}=e;return 0===t}))&&t.push(e.slice(r,r+l))})),d.current=t},N=()=>{const e=deepClone(n.current.originColumns);w(e),null==c||c(e)},I=()=>{const e=[];x.forEach((t=>{const{colSpan:a,dataIndex:r}=t;if(0===a)return;if(1===a)return e.push(t);const l=d.current.findIndex((e=>e.map((e=>e.dataIndex)).includes(r)));if(-1===l)return e.push(t);e.push(...d.current[l].map(((e,a)=>{let{dataIndex:r}=e;const l=x.find((e=>e.dataIndex===r));return a>0&&(void 0!==t.hidden&&(l.hidden=t.hidden),void 0!==t.fixed?l.fixed=t.fixed:l.fixed&&delete l.fixed),l})))})),a.forEach(((t,a)=>{t.noAuth&&e.findIndex((e=>e.dataIndex===t.dataIndex))<0&&e.splice(a,0,t)})),null==c||c(e)},A=(e,t)=>{if(e.noFixed)return;t?e.fixed=t:delete e.fixed;const r=w(a);null==c||c(r)},$=(e,r)=>{const{colSpan:l,noFixed:n}=e;if(0===l)return React__default.createElement("li",{key:e.dataIndex,style:{display:"none"}});const i=["svgicon","handle",`${r}-handle`];return React__default.createElement("li",{key:e.dataIndex,className:"item"},React__default.createElement(Checkbox,{disabled:e.required,checked:!e.hidden,onChange:t=>{const{checked:r}=t.target;e.hidden=!r,w(a),I()}}),React__default.createElement("i",{className:classNames(i),title:t("qm.table.columnFilter.draggable")},React__default.createElement(HolderOutlined,null)),React__default.createElement("span",{className:"text",title:e.title},e.title),"main"===r?React__default.createElement("span",{className:classNames("fixed",n?"disabled":"")},React__default.createElement("i",{className:"svgicon",title:t("qm.table.columnFilter.fixedLeft"),onClick:()=>A(e,"left")},React__default.createElement(StepBackwardOutlined,null)),React__default.createElement("i",{className:"svgicon",title:t("qm.table.columnFilter.fixedRight"),onClick:()=>A(e,"right")},React__default.createElement(StepForwardOutlined,null))):React__default.createElement("span",{className:classNames("fixed",n?"disabled":"")},React__default.createElement("i",{className:"svgicon",title:t("qm.table.columnFilter.cancelFixed"),onClick:()=>A(e)},React__default.createElement(CloseCircleOutlined,null))))},O=getPrefixCls("table"),F={[`${O}__popper`]:!0,"column-filter__popper":!0,[`${O}--lg`]:"large"===i,[`${O}--sm`]:"small"===i},L=[`${O}-column-filter`,{selected:m}];return React__default.createElement(Trigger,{action:["click"],popupVisible:m,popup:React__default.createElement("div",{className:"column-filter--wrap",style:{maxHeight:"calc(100vh - 10px)"}},React__default.createElement("div",{className:"reset"},React__default.createElement(QmButton,{type:"text",size:"small",onClick:N},t("qm.table.columnFilter.reset"))),React__default.createElement("div",{className:"left"},React__default.createElement(ReactSortable,{itemKey:"dataIndex",handle:".left-handle",tag:"ul",animation:200,list:g,setList:e=>{const t=e.map((e=>e.dataIndex)),a=g.map((e=>e.dataIndex));isEqual$1(t,a)||_(e)},onEnd:()=>I()},g.map((e=>$(e,"left"))))),React__default.createElement("div",{className:"divider"}),React__default.createElement("div",{className:"main"},React__default.createElement(ReactSortable,{itemKey:"dataIndex",handle:".main-handle",tag:"ul",animation:200,list:b,setList:e=>{const t=e.map((e=>e.dataIndex)),a=b.map((e=>e.dataIndex));isEqual$1(t,a)||R(e)},onEnd:()=>I()},b.map((e=>$(e,"main"))))),React__default.createElement("div",{className:"divider"}),React__default.createElement("div",{className:"right"},React__default.createElement(ReactSortable,{itemKey:"dataIndex",handle:".right-handle",tag:"ul",animation:200,list:y,setList:e=>{const t=e.map((e=>e.dataIndex)),a=y.map((e=>e.dataIndex));isEqual$1(t,a)||v(e)},onEnd:()=>I()},y.map((e=>$(e,"right")))))),popupClassName:classNames(F),popupStyle:{minWidth:MIN_POPPER_WIDTH},onPopupVisibleChange:e=>{h(e)},builtinPlacements:BUILT_IN_PLACEMENTS,prefixCls:"ant-select-dropdown",popupPlacement:"bottomRight",popupTransitionName:"ant-slide-up"},React__default.createElement("span",{className:classNames(L),title:s?t("qm.table.columnFilter.text"):void 0},React__default.createElement("i",{className:"svgicon icon"},React__default.createElement(SettingOutlined,null)),!s&&React__default.createElement("span",null,t("qm.table.columnFilter.text"))))},FilterIcon=()=>React__default.createElement("svg",{viewBox:"64 64 896 896",focusable:"false","data-icon":"filter",width:"1em",height:"1em",fill:"currentColor","aria-hidden":"true"},React__default.createElement("path",{d:"M349 838c0 17.7 14.2 32 31.8 32h262.4c17.6 0 31.8-14.3 31.8-32V642H349v196zm531.1-684H143.9c-24.5 0-39.8 26.7-27.5 48l221.3 376h348.8l221.3-376c12.1-21.3-3.2-48-27.7-48z"})),HeadFilter=e=>{const{column:a,filters:r}=e,{$size:l,setFilters:n,clearSuperFilters:i}=React__default.useContext(TableContext),o=React__default.useRef(null),s=React__default.useRef(null),c=React__default.useRef(null),[d,u]=React__default.useState(!1),[p,f]=React__default.useState({}),m=React__default.useMemo((()=>{const{dataIndex:e,filter:t}=a;return`${e}|${t.type}`}),[a]),h=React__default.useMemo((()=>{let e=!1;for(const t in r[m])if(!isEmpty(r[m][t])){e=!0;break}return e}),[m,r]);React__default.useEffect((()=>{d&&(isEmpty(r[m])&&g(),setTimeout((()=>_()),50))}),[d]);const g=()=>{f({})},_=()=>{switch(a.filter.type){case"text":o.current.focus();break;case"number":s.current.focus();break;case"textarea":c.current.focus()}},y=e=>{e&&f(e),i(),n((e=>{for(const t in e){for(const a in e[t])isEmpty(e[t][a])&&delete e[t][a];Object.keys(e[t]).length||delete e[t]}return e})(Object.assign(Object.assign(Object.assign({},r),p),e))),u(!1)},v={text:e=>{var a,r;const{title:n}=e;return React__default.createElement(Input,{ref:o,size:l,placeholder:t("qm.table.filter.searchText",{text:n}),style:{width:"180px"},value:null!==(r=null===(a=p[m])||void 0===a?void 0:a.like)&&void 0!==r?r:"",onChange:e=>{const{value:t}=e.target;f((e=>Object.assign({},e,{[m]:{like:t}})))},onKeyDown:e=>{13===e.keyCode&&y()}})},textarea:e=>{var a,r;const{title:n}=e;return React__default.createElement(Input.TextArea,{ref:c,size:l,placeholder:t("qm.table.filter.searchAreaText",{text:n}),style:{width:"220px"},value:null!==(r=null===(a=p[m])||void 0===a?void 0:a.likes)&&void 0!==r?r:"",onChange:e=>{const{value:t}=e.target;f((e=>Object.assign({},e,{[m]:{likes:t}})))},onKeyDown:e=>{13===e.keyCode&&y()}})},number:e=>{const a=e=>{var t,a;return{value:null!==(a=null===(t=p[m])||void 0===t?void 0:t[e])&&void 0!==a?a:"",size:l,onChange:t=>{f((a=>Object.assign({},a,{[m]:Object.assign({},a[m],{[e]:t})})))},onKeyDown:e=>{13===e.keyCode&&y()}}};return React__default.createElement("ul",null,React__default.createElement("li",null,React__default.createElement("span",null,"> "),React__default.createElement(InputNumber$1,_extends$1({ref:s},a(">"),{placeholder:t("qm.table.filter.gtPlaceholder"),style:{width:"150px"}}))),React__default.createElement("li",null,React__default.createElement("span",null,"< "),React__default.createElement(InputNumber$1,_extends$1({},a("<"),{placeholder:t("qm.table.filter.ltPlaceholder"),style:{width:"150px"}}))),React__default.createElement("li",null,React__default.createElement("span",null,"= "),React__default.createElement(InputNumber$1,_extends$1({},a("=="),{placeholder:t("qm.table.filter.eqPlaceholder"),style:{width:"150px"}}))),React__default.createElement("li",null,React__default.createElement("span",null,"!="),React__default.createElement(InputNumber$1,_extends$1({},a("!="),{placeholder:t("qm.table.filter.neqPlaceholder"),style:{width:"150px"}}))))},date:e=>{const a=e=>{var t;return{value:getDate(null===(t=p[m])||void 0===t?void 0:t[e],DATE_FORMAT),format:DATE_FORMAT,size:l,onChange:t=>{f((a=>Object.assign({},a,{[m]:Object.assign({},a[m],{[e]:formatDate(t,DATE_FORMAT)})})))},onKeyDown:e=>{13===e.keyCode&&y()}}};return React__default.createElement("ul",null,React__default.createElement("li",null,React__default.createElement("span",null,"> "),React__default.createElement(DatePicker,_extends$1({},a(">"),{placeholder:t("qm.table.filter.gtPlaceholder"),style:{width:"150px"}}))),React__default.createElement("li",null,React__default.createElement("span",null,"< "),React__default.createElement(DatePicker,_extends$1({},a("<"),{placeholder:t("qm.table.filter.ltPlaceholder"),style:{width:"150px"}}))),React__default.createElement("li",null,React__default.createElement("span",null,"= "),React__default.createElement(DatePicker,_extends$1({},a("=="),{placeholder:t("qm.table.filter.eqPlaceholder"),style:{width:"150px"}}))),React__default.createElement("li",null,React__default.createElement("span",null,"!="),React__default.createElement(DatePicker,_extends$1({},a("!="),{placeholder:t("qm.table.filter.neqPlaceholder"),style:{width:"150px"}}))))},radio:e=>{var t;const{filter:a,dictItems:r=[]}=e,l=a.items||r;return React__default.createElement("ul",null,React__default.createElement(Radio.Group,{style:{width:"100%"},value:null===(t=p[m])||void 0===t?void 0:t["=="],onChange:e=>{const{value:t}=e.target;f((e=>Object.assign({},e,{[m]:{"==":t}})))}},l.map((e=>React__default.createElement("li",{key:e.value},React__default.createElement(Radio,{value:e.value,disabled:e.disabled},e.text))))))},checkbox:e=>{var t;const{filter:a,dictItems:r=[]}=e,l=a.items||r;return React__default.createElement("ul",null,React__default.createElement(Checkbox.Group,{style:{width:"100%"},value:null===(t=p[m])||void 0===t?void 0:t.in,onChange:e=>{f((t=>Object.assign({},t,{[m]:{in:e}})))}},l.map((e=>React__default.createElement("li",{key:e.value},React__default.createElement(Checkbox,{value:e.value,disabled:e.disabled},e.text))))))},tree:e=>{var t;const{filter:a,dictItems:r=[]}=e,l=a.items||r;return React__default.createElement("div",{style:Object.assign({height:200},a.style)},React__default.createElement(SearchTree,{multiple:!0,value:(null===(t=p[m])||void 0===t?void 0:t.in)||[],dataSource:l,onCheckChange:e=>{const t=e.map((e=>e.value));f((e=>Object.assign({},e,{[m]:{in:t}})))}}))}},b=()=>React__default.createElement(Space,{style:{width:"100%",marginTop:8,justifyContent:"flex-end"}},React__default.createElement(QmButton,{size:l,onClick:()=>{y({[m]:{}})}},t("qm.table.filter.reset")),React__default.createElement(QmButton,{type:"primary",size:l,onClick:()=>y()},t("qm.table.filter.search"))),R=getPrefixCls("table"),E={"head-filter__popper":!0,[`${R}--lg`]:"large"===l,[`${R}--sm`]:"small"===l},x=["cell--filter",{selected:d,actived:h}];return React__default.createElement(Trigger,{action:["click"],popupVisible:d,popup:(()=>{const e=a.filter.type,t=v[e];return t?React__default.createElement("div",{className:"head-filter--wrap",onClick:e=>e.stopPropagation()},React__default.createElement("div",null,t(a)),b()):(warn("Table","表头筛选的类型 `type` 配置不正确"),null)})(),popupClassName:classNames(E),popupStyle:{minWidth:MIN_POPPER_WIDTH},onPopupVisibleChange:e=>{u(e)},builtinPlacements:BUILT_IN_PLACEMENTS,prefixCls:"ant-select-dropdown",popupPlacement:"bottomRight",popupTransitionName:"ant-slide-up"},React__default.createElement("div",{className:classNames(x),title:t("qm.table.filter.text"),onClick:e=>e.stopPropagation()},React__default.createElement("span",{className:"svgicon icon"},React__default.createElement(FilterIcon,null))))},Resizable=e=>{const{column:t}=e,{tableProps:a,tableRef:r,bordered:l}=React__default.useContext(TableContext),{columns:n,resizable:i,columnsChange:o=noop$1}=a,s={resizable:!0,"is--line":i&&!l};return React__default.createElement("div",{className:classNames(s),onMouseDown:e=>{e.preventDefault();const a=e.target,{elementStore:l}=r.current,i=l.$resizableBar,s=a.offsetWidth/2,c=e.clientX,d=getNodeOffset(a,l.$table).left-l.$tableBody.parentNode.scrollLeft+s;l.$table.classList.add("c--resize"),i.style.left=`${d}px`,i.style.display="block";const u=t.width||t.renderWidth;let p=u;return document.onmousemove=function(e){if("number"!=typeof u)return;const a=e.clientX-c,r=u+a;r<(t.minWidth||config$1.defaultColumnWidth)||(p=Math.floor(r),i.style.left=`${a+d}px`)},document.onmouseup=function(){l.$table.classList.remove("c--resize"),i.style.display="none",this.onmousemove=null,this.onmouseup=null,"number"==typeof p&&(t.renderWidth=p,t.width=p,o([...n]))},!1}})},AllSelection=e=>{const{selectionKeys:a}=e,{tableRef:r,tableProps:l,getRowKey:n,pagination:i,fetchParams:o,setSelectionKeys:s,setSpinning:c,isWebPagination:d}=React__default.useContext(TableContext),{rowSelection:u}=l,{fetchAllRowKeys:p,onSelectAll:f}=u,m=React__default.useRef([]),h=(()=>{const{allTableData:e,allRowKeys:t}=r.current,{selectAllOnCurrentPage:a,disabled:l=(e=>!1)}=u;return a?(()=>{const{tableFullData:e}=r.current,{current:t,pageSize:a}=i;return d?e.slice((t-1)*a,t*a):e})().filter((e=>!l(e))).map((e=>n(e,e.index))):t.filter(((t,a)=>!l(e[a])))})(),g=a.length>0&&a.length<(p?i.total:r.current.allRowKeys.length),_=!!a.length&&a.length===(m.current.length||h.length),y=React__default.useMemo((()=>{var e;return null!==(e=u.selectAllOnCurrentPage)&&void 0!==e&&e}),[u]),v=React__default.useMemo((()=>{var e;return(null===(e=u.filterable)||void 0===e||e)&&!y}),[u,y]),b=()=>__awaiter(void 0,void 0,void 0,(function*(){var e;const t=p;let a=[];c(!0);try{const r=yield t.api(o);200===r.code&&(a=Array.isArray(r.data)?r.data:null!==(e=get(r.data,t.dataKey))&&void 0!==e?e:[],m.current=a)}catch(e){}return c(!1),a})),R=e=>__awaiter(void 0,void 0,void 0,(function*(){let t=[];t=p?e?yield b():[]:e?h.slice(0):[],s(t),null==f||f(e,t)}));return React__default.createElement("div",{className:"cell--selection"},React__default.createElement(Checkbox,{checked:_,indeterminate:g,disabled:!h.length,onChange:e=>R(e.target.checked)}),v&&React__default.createElement(Dropdown,{overlayClassName:"all-selection__popper",overlay:(()=>{const e=[{key:1,label:t("qm.table.selection.all"),onClick:()=>{R(!0)}},{key:2,label:t("qm.table.selection.invert"),onClick:()=>__awaiter(void 0,void 0,void 0,(function*(){let e=[];e=xor(a,p?yield b():h),s(e)}))},{key:3,label:t("qm.table.selection.clear"),onClick:()=>{R(!1)}}];return React__default.createElement(Menu,{items:e})})()},React__default.createElement(DownOutlined,{className:"svgicon icon"})),y&&React__default.createElement(Tooltip,{placement:"top",title:t("qm.table.selection.currentPage")},React__default.createElement(InfoCircleOutlined,{className:"info"})))},AllExpandable=e=>{const{style:t}=e,{tableProps:a,tableRef:r,isTreeTable:l,setRowExpandedKeys:n}=React__default.useContext(TableContext),{expandable:i}=a,[o,s]=React__default.useState((null==i?void 0:i.defaultExpandAllRows)||!1);useUpdateEffect((()=>{const{allRowKeys:e,flattenRowKeys:t}=r.current;n(o?e.filter((e=>!(l&&t.includes(e)))):[])}),[o]);const c={[`${getPrefixCls("expand")}--icon`]:!0,expanded:o,collapsed:!o};return React__default.createElement("span",{className:classNames(c),title:"",onClick:e=>{e.stopPropagation(),s(!o)},style:t})},CaretUpIcon=()=>React__default.createElement("svg",{viewBox:"0 0 1024 1024",focusable:"false","data-icon":"caret-up",width:"1em",height:"1em",fill:"currentColor","aria-hidden":"true"},React__default.createElement("path",{d:"M858.9 689L530.5 308.2c-9.4-10.9-27.5-10.9-37 0L165.1 689c-12.2 14.2-1.2 35 18.5 35h656.8c19.7 0 30.7-20.8 18.5-35z"})),CaretDownIcon=()=>React__default.createElement("svg",{viewBox:"0 0 1024 1024",focusable:"false","data-icon":"caret-down",width:"1em",height:"1em",fill:"currentColor","aria-hidden":"true"},React__default.createElement("path",{d:"M840.4 300H183.6c-19.7 0-30.7 20.8-18.5 35l328.4 380.8c9.4 10.9 27.5 10.9 37 0L858.9 335c12.2-14.2 1.2-35-18.5-35z"})),TableHeader=e=>{const{tableColumns:a,flattenColumns:r,sorter:l,filters:n}=e,{getRowKey:i,tableProps:o,tableRef:s,layout:c,scrollY:d,superFilters:u,selectionKeys:p,rightFixedColumns:f,firstDataIndex:m,isFetch:h,isTreeTable:g,isGroupSubtotal:_,tableChange:y,setSorter:v,setElementStore:b,resetTableScroll:R,getStickyLeft:E,getStickyRight:x,createGroupData:C,createTableFullData:T}=React__default.useContext(TableContext),{ellipsis:S,resizable:w,multipleSort:P,rowSelection:N,expandable:I}=o,[A,$]=config$1.sortDirections,O=React__default.useRef(null),F=React__default.useMemo((()=>!h),[h]),L=React__default.useMemo((()=>!h),[h]),D=React__default.useMemo((()=>!(null==I?void 0:I.hideExpandAll)),[I]),k=React__default.useMemo((()=>h?!(!(null==N?void 0:N.selectAllOnCurrentPage)&&!(null==N?void 0:N.fetchAllRowKeys)):!(null==N?void 0:N.hideSelectAll)),[h,N]);useUpdateEffect((()=>{K(),y(),R()}),[l]),useUpdateEffect((()=>{W(),y(),R()}),[n]),useUpdateEffect((()=>{W(),y(),R()}),[u]),React__default.useEffect((()=>{H()}),[]);const H=()=>{b("$header",O.current)},V=(e,t,a)=>{var r,n,i;const{isIE:o}=s.current,{gutterWidth:u}=c,{dataIndex:p,colSpan:f,rowSpan:m,fixed:h,align:g,theadAlign:_,theadClassName:y="",sorter:v,filter:b,required:R,headRender:C}=e;if(0===f)return null;const T=_||g,P=["header--column",{"col--ellipsis":null!==(r=e.ellipsis)&&void 0!==r?r:S,"col--center":"center"===T,"col--right":"right"===T,"column--required":!!R,"column-has-sorter":v,"column-has-filter":b,"column--sort":!!l[p],"cell-fix-left":!o&&"left"===h,"cell-fix-right":!o&&"right"===h,"cell-fix-left-last":!o&&"left"===h&&!(null===(n=a[t+1])||void 0===n?void 0:n.fixed),"cell-fix-right-first":!o&&"right"===h&&!(null===(i=a[t-1])||void 0===i?void 0:i.fixed),[y]:!!y}],N=o?null:{left:"left"===h?`${E(p)}px`:"",right:"right"===h?`${x(p)+(d?u:0)}px`:""},I=w&&![config$1.expandableColumn,config$1.selectionColumn].includes(p);return React__default.createElement("th",{key:p,className:classNames(P),colSpan:f,rowSpan:m,style:Object.assign({},N),onClick:t=>U(t,e)},React__default.createElement("div",{className:"cell--wrapper"},C?React__default.createElement("div",{className:"cell--text cell"},C(e,s.current.tableFullData)):React__default.createElement(React__default.Fragment,null,React__default.createElement("div",{className:"cell--text"},M(e)),b?q(e):null)),I&&React__default.createElement(Resizable,{column:e}))},M=e=>{const{dataIndex:a,type:r,sorter:n,title:i,description:o}=e;if(a===config$1.selectionColumn&&"checkbox"===r){if("checkbox"===r)return React__default.createElement("div",{className:"cell"},k?React__default.createElement(AllSelection,{selectionKeys:p}):t("qm.table.config.selectionText"));if("radio"===r)return React__default.createElement("div",{className:"cell"},i)}const s=[];return s.push(React__default.createElement("div",{key:0,className:"cell",title:i},g&&a===m&&D?React__default.createElement(AllExpandable,null):null,a===config$1.expandableColumn&&D?React__default.createElement(AllExpandable,null):i)),o&&s.push(React__default.createElement(Tooltip,{key:1,placement:"top",title:o},React__default.createElement(InfoCircleOutlined,{className:"tip"}))),n&&s.push(j(l[a])),s},j=e=>{const a=["svgicon cell--sorter__asc",{actived:e===A}],r=["svgicon cell--sorter__desc",{actived:e===$}];return React__default.createElement("div",{key:2,className:"cell--sorter",title:t("qm.table.sorter.text")},React__default.createElement("span",{className:classNames(a)},React__default.createElement(CaretUpIcon,null)),React__default.createElement("span",{className:classNames(r)},React__default.createElement(CaretDownIcon,null)))},q=e=>React__default.createElement(HeadFilter,{column:e,filters:n}),U=(e,t)=>{const{sorter:a,dataIndex:r}=t;if(a){const e=l[r],t=e?e===$?null:$:A;P?(delete l[r],v(Object.assign({},l,{[r]:t}))):v(Object.assign({},{[r]:t}))}},K=()=>{F&&B()},B=e=>{const t=pickBy(l,(e=>null!==e));for(const e in t){const a=r.find((t=>t.dataIndex===e));a?z(a,t[e]):delete t[e]}e||Object.keys(t).length||z({dataIndex:"index"},A)},z=(e,t)=>{const{tableFullData:a}=s.current,{dataIndex:r,sorter:l}=e,n=(e,a)=>{const l=getCellValue(e,r),n=getCellValue(a,r);return Number.isNaN(l-n)?t===A?l.toString().localeCompare(n.toString()):n.toString().localeCompare(l.toString()):t===A?l-n:n-l},i=_?C(getGroupValidData(a).sort("function"==typeof l?l:n)):a.sort("function"==typeof l?l:n).slice(0);T(i)},W=()=>{L&&G()},G=()=>{const{tableOriginData:e}=s.current,t=u.length?createWhereSQL(u):createWhereSQL(n),a=""!==t?_?C(where(getGroupValidData(e),t,g)):where(e,t,g):e;T(a),B(!0)},Q=convertToRows(a),Y=getPrefixCls("table"),{tableBodyWidth:X}=c;return React__default.createElement("div",{ref:O,className:`${Y}--header-wrapper`},React__default.createElement("table",{className:`${Y}--header`,cellSpacing:"0",cellPadding:"0",style:{width:X?`${X}px`:""}},(()=>{const{gutterWidth:e}=c;return React__default.createElement("colgroup",null,r.map((e=>{const{dataIndex:t,width:a,renderWidth:r}=e;return React__default.createElement("col",{key:t,style:{width:`${a||r}px`,minWidth:`${a||r}px`}})})),d&&React__default.createElement("col",{style:{width:`${e}px`,minWidth:`${e}px`}}))})(),React__default.createElement("thead",null,(e=>{const{isIE:t}=s.current,a=["gutter",{"cell-fix-right":!!f.length}],r=t?null:{right:f.length?0:""};return e.map(((e,t)=>React__default.createElement("tr",{key:t,className:"header--row"},e.map(((t,a)=>V(t,a,e))),d&&React__default.createElement("th",{className:classNames(a),style:Object.assign({},r)}))))})(Q))))},useMergeCell=()=>{const{tableProps:e,tableRef:a,layout:r,flattenColumns:l,isDragMergeCell:n}=React__default.useContext(TableContext),{mergeCells:i=[],onMergeChange:o}=e,[s,c]=React__default.useState(!1),d=React__default.useRef(null),u=React__default.useRef(null),p=React__default.useRef({x:0,y:0,disX:0,disY:0});useUpdateEffect((()=>{n||y()}),[n]);const f=()=>{y(),setStyle(d.current,{display:"none"})},m=e=>{const t=[];for(let a=0;a<e.rowSpan;a++)for(let r=0;r<e.colSpan;r++)t.push([e.row+a,e.col+r]);return t},h=()=>{p.current={x:0,y:0,disX:0,disY:0},u.current&&!v(u.current)||(u.current=null,f()),c(!0),document.removeEventListener("mousemove",g)},g=e=>{const{pageX:t,pageY:a}=e,{x:l,y:n,disX:i,disY:o}=p.current;let s=i,c=o,u=t-l,f=a-n;return u<0&&(u=Math.abs(u),s=i-u,setStyle(d.current,{left:`${s}px`})),f<0&&(f=Math.abs(f),c=o-f,setStyle(d.current,{top:`${c+r.headerHeight}px`})),setStyle(d.current,{width:`${u}px`,height:`${f}px`}),R(s,c,u,f),!1},_=(e,t,r,l)=>{const{elementStore:n,scrollYStore:i}=a.current,o=n.$tableBody.querySelectorAll("tbody > tr");for(let a=0;a<o.length;a++){const n=o[a].children;for(let o=0;o<n.length;o++)if(n[o].classList.remove("selected"),(e!==t||r!==l)&&a+i.startIndex>=e&&a+i.startIndex<=t){const e=Number(n[o].getAttribute("colspan")),t=Number(n[o].getAttribute("data-index")),a=e>1?t+e-1:t;a>=r&&a<=l&&n[o].classList.add("selected")}}},y=()=>{const{elementStore:e}=a.current,t=e.$tableBody.querySelectorAll("tbody > tr");for(let e=0;e<t.length;e++){const a=t[e].children;for(let e=0;e<a.length;e++)a[e].classList.remove("selected")}},v=e=>1===e.rowSpan&&1===e.colSpan,b=e=>e.width||e.renderWidth||e.minWidth||config$1.defaultColumnWidth,R=debounce(((e,t,r,n)=>{const{allTableData:i,scrollYStore:o}=a.current;let s=-1,c=-1,d=-1,p=-1;for(let e=0;e<i.length;e++)t>o.rowHeight*e&&t<o.rowHeight*(e+1)&&(s=e),t+n>o.rowHeight*e&&t+n<o.rowHeight*(e+1)&&(c=e);let f=0;for(let t=0;t<l.length;t++)e>f&&e<f+b(l[t])&&(d=t),e+r>f&&e+r<f+b(l[t])&&(p=t),f+=b(l[t]);const m={row:s,col:d,rowSpan:c-s+1,colSpan:p-d+1};isEqual$1(u,m)||(u.current=m,_(s,c,d,p))}),10);return{dragStart:e=>{const{pageX:t,pageY:l}=e,{elementStore:n}=a.current,{x:i,y:o}=getPosition(n.$table),{scrollLeft:s,scrollTop:f}=n.$tableBody.parentNode;u.current=null,p.current={x:t,y:l,disX:t+s-i,disY:l+f-(o+r.headerHeight)},setStyle(d.current,{width:0,height:0,left:t-i+"px",top:l-o+"px",display:"block"}),y(),c(!1),document.addEventListener("mousemove",g,{passive:!0}),document.addEventListener("mouseup",h,{passive:!0,once:!0})},renderDragPanel:()=>React__default.createElement("div",{ref:d,className:"merge-cell-bar",onMouseDown:e=>e.stopPropagation()},s&&React__default.createElement(React__default.Fragment,null,React__default.createElement(QmButton,{size:"small",className:"btn cancel",onClick:()=>{if(u.current&&!v(u.current)){const e=m(u.current),t=i.findIndex((t=>{const a=m(t);return intersectionWith(a,e,isEqual$1).length===a.length}));-1!==t&&(null==o||o(i.filter(((e,a)=>a!==t))))}f()}},t("qm.table.mergeCell.cancel")),React__default.createElement(QmButton,{size:"small",type:"primary",className:"btn confirm",onClick:()=>{if(u.current&&!v(u.current)){const e=m(u.current);let t=!1;for(let a=0;a<i.length;a++){intersectionWith(m(i[a]),e,isEqual$1).length&&(t=!0)}t||null==o||o([...i,u.current])}f()}},t("qm.table.mergeCell.confirm")))),closeDragPanel:f}},useValueFormat=()=>({dateFormat:e=>{const t=e?dayjs(e).format(DATE_FORMAT):"";return t.startsWith("1900-01-01")?"":t},datetimeFormat:e=>{const t=e?dayjs(e).format(DATE_TIME_FORMAT):"";return t.startsWith("1900-01-01")?"":t},dateShortTimeFormat:e=>{const t=e?dayjs(e).format(DATE_TIME_FORMAT.slice(0,-3)):"";return t.startsWith("1900-01-01")?"":t},percentFormat:e=>Number.isNaN(Number(e))?e:(100*Number(e)).toFixed(2)+"%",financeFormat:e=>formatNumber(e.toString()),secretNameFormat:e=>e.replace(/^([\u4e00-\u9fa5]{1}).+$/,"$1**"),secretPhoneFormat:e=>e.replace(/^(\d{3}).+(\d{4})$/,"$1****$2"),secretIDnumberFormat:e=>e.replace(/^(\d{3}).+(\w{4})$/,"$1***********$2"),secretBankNumberFormat:e=>e.replace(/^(\d{4}).+(\w{3})$/,"$1************$2")});function useOutsideClick(e,t){const[a,r]=React.useState(!1);return React.useEffect((()=>{let a;const l=e.current,n=e=>{a=e},i=e=>{((e,a)=>{const n=e.target,i=null==a?void 0:a.target,o=!n||!i,s=(null==l?void 0:l.contains(n))||(null==l?void 0:l.contains(i)),c=l===n,d=null==t?void 0:t.map((e=>document.querySelector(e))),u=(null==d?void 0:d.some((e=>null==e?void 0:e.contains(n))))||(null==d?void 0:d.includes(i));r(!(o||s||c||u))})(e,a)};return l&&(on(document,"mousedown",n),on(document,"mouseup",i)),()=>{l&&(off(document,"mousedown",n),off(document,"mouseup",i))}}),[e]),a}const Selection=e=>{const{selectionKeys:t,column:a,record:r,rowKey:l}=e,{tableProps:n,tableRef:i,isTreeTable:o,getAllChildRowKeys:s}=React__default.useContext(TableContext),{rowSelection:c}=n,d=React__default.useMemo((()=>a.type||""),[a.type]),u=e=>{var a,r;const l=null===(a=c.checkStrictly)||void 0===a||a;if(!o||l)return!1;const n=deepFindRowKey(i.current.deriveRowKeys,e),d=s(null!==(r=null==n?void 0:n.children)&&void 0!==r?r:[]);return!(!Array.isArray(null==n?void 0:n.children)||isArrayContain(t,(null==n?void 0:n.children.map((e=>e.rowKey)))||[]))&&d.some((e=>t.includes(e)))};return"radio"===d?(()=>{const e=c.disabled,a=null==e?void 0:e(r),n=!a&&t[0]===l;return React__default.createElement(Radio,{checked:n,disabled:a})})():(()=>{const e=c.disabled,a=null==e?void 0:e(r),n=!!t.includes(l);return React__default.createElement(Checkbox,{checked:n,indeterminate:u(l),disabled:a})})()},Expandable=e=>{const{record:t,rowKey:a,style:r}=e,{tableProps:l,rowExpandedKeys:n,setRowExpandedKeys:i}=React__default.useContext(TableContext),{expandable:o={}}=l,[s]=React__default.useState("function"==typeof o.rowExpandable&&!o.rowExpandable(t)),c=React__default.useMemo((()=>n.includes(a)),[n,a]);useUpdateEffect((()=>{var e;null===(e=o.onExpand)||void 0===e||e.call(o,c,t)}),[c]);const d={[`${getPrefixCls("expand")}--icon`]:!0,expanded:c,collapsed:!c,disabled:s};return React__default.createElement("span",{className:classNames(d),title:"",onClick:e=>{if(e.stopPropagation(),s)return;const t=c?n.filter((e=>e!==a)):[...n,a];i(t)},style:r})},InputNumber=React__default.forwardRef(((e,t)=>{const{size:a,defaultValue:r,value:l,min:n,max:i,prefix:o,suffix:s,placeholder:c,maxLength:d,precision:u,allowClear:p,readOnly:f,disabled:m,formatter:h=(e=>e.toString()),parser:g=(e=>e),onFocus:_}=e,y=e=>{let t=e.toString();return"."!==t.charAt(t.length-1)&&"-"!==t||(t=t.slice(0,-1)),t&&Number(t)>i&&(t=i.toString()),t&&Number(t)<n&&(t=n.toString()),u>=0&&""!==t&&(t=Number(t).toFixed(u)),t},v=void 0!==l,[b,R]=React__default.useState(null!=r?r:""),E=h(v?l:b),x=g(E),C=t=>{var a;v?null===(a=e.onChange)||void 0===a||a.call(e,t):R(t)};useUpdateEffect((()=>{var t;null===(t=e.onChange)||void 0===t||t.call(e,x)}),[b]);return React__default.createElement(Input,{ref:t,size:a,value:E,maxLength:d,prefix:o,suffix:s,placeholder:c,allowClear:p,readOnly:f,disabled:m,onChange:e=>{const t=g(e.target.value);let a=/^-?\d*(\.\d*)?$/.test(t)||""===t||"-"===t;0===u&&t.includes(".")&&(a=!1),n>=0&&t.startsWith("-")&&(a=!1),a&&C(t)},onFocus:_,onBlur:()=>{var t;const a=y(x);Number(a)!==Number(x)&&C(a),null===(t=e.onBlur)||void 0===t||t.call(e,a,x)},onKeyUp:t=>{var a;13===t.keyCode&&(null===(a=e.onEnter)||void 0===a||a.call(e,y(x),x))}})}));InputNumber.displayName="InputNumber";const{Search:Search}=Input,CellEdit=e=>{var a,r,l,n;const{column:i,record:o,rowKey:s,columnKey:c,clicked:d,text:u}=e,{tableRef:p,tableBodyRef:f,$size:m,flattenColumns:h,doFieldValidate:g,dataChange:_}=React__default.useContext(TableContext),y=React__default.useRef(null),v=React__default.useRef(null),b=React__default.useRef(null),R=React__default.useRef(null),E=React__default.useRef(null),x=React__default.useRef(!1),C=React__default.useRef([]),T=React__default.useRef({}),S=useForceUpdate(),{store:w,fieldAuth:P}=p.current,N=(null===(a=i.editRender)||void 0===a?void 0:a.call(i,o,i))||{},[I,A]=React__default.useState(!1),[$,O]=React__default.useState(!1),[F,L]=React__default.useState(!1),[D,k]=React__default.useState(N.items||[]),H=(N.editable||isEqual$1(d,[s,c]))&&!N.disabled&&!(null===(r=P[c])||void 0===r?void 0:r.disabled),V=`${s}|${c}`,M=2===d.length?`${d[0]}|${d[1]}`:"",j=![...w.state.required,...w.state.validate].some((e=>{let{x:t,y:a}=e;return t===s&&a===c})),q=(null===(l=w.state.required.find((e=>{let{x:t,y:a}=e;return t===s&&a===c})))||void 0===l?void 0:l.text)||"",U=(null===(n=w.state.validate.find((e=>{let{x:t,y:a}=e;return t===s&&a===c})))||void 0===n?void 0:n.text)||"",K=w.state.edited.some((e=>{let{x:t,y:a}=e;return t===s&&a===c})),B=H||!j||I||F||$,z=()=>{_()};React__default.useEffect((()=>{B&&M===V&&Q()}),[d]);const W=(e,t)=>{A(e),null==t||t()},G=e=>{C.current=e},Q=()=>{var e,t,a,r;const{type:l}=N;switch(l){case"text":null===(e=v.current)||void 0===e||e.focus();break;case"number":null===(t=b.current)||void 0===t||t.select();break;case"search-helper":null===(a=R.current)||void 0===a||a.focus();break;case"tree-helper":null===(r=E.current)||void 0===r||r.focus()}},Y=e=>{e.dispatchEvent(new MouseEvent("mousedown",{bubbles:!0})),e.dispatchEvent(new MouseEvent("mouseup",{bubbles:!0}))},X=(e,t,a)=>{const{cornerSign:r=!0}=N.extra||{};w.addToUpdated(e),r&&w.addToEdited({x:t,y:a})},Z=e=>""!==e?Number(e):"",J={text:(e,a)=>{const{dataIndex:r}=a,{type:l,extra:n={},rules:i=[],onInput:o,onChange:d,onEnter:u,onBlur:p}=N,f=getCellValue(e,r),h=n.password?Input.Password:Input;return React__default.createElement(h,{ref:v,size:m,value:f,maxLength:n.maxLength,showCount:n.showCount,placeholder:n.placeholder||t("qm.table.editable.inputPlaceholder"),allowClear:n.allowClear,readOnly:n.readOnly,disabled:n.disabled,suffix:n.suffix,onChange:t=>{var a;const l=null!==(a=t.target.value)&&void 0!==a?a:"";setCellValue(e,r,l),g(i,l,s,c),S(),null==o||o({[V]:l}),x.current=!0},onFocus:()=>O(!0),onBlur:t=>{var a;O(!1);const r=null!==(a=t.target.value)&&void 0!==a?a:"";x.current&&(x.current=!1,X(e,s,c),null==d||d({[V]:r},e),null==p||p({[V]:r},e),z())},onKeyUp:t=>{var a;if(13===t.keyCode){const r=null!==(a=t.target.value)&&void 0!==a?a:"";null==u||u({[V]:r},e)}}})},number:(e,a)=>{var r;const{dataIndex:l,precision:n,formatType:i}=a,{type:o,extra:d={},rules:u=[],onInput:p,onChange:f,onEnter:h,onBlur:_}=N,y=getCellValue(e,l);let v,R;return"finance"===i&&(v=e=>{const t=e.toString().split(".");return`${t[0].replace(/\B(?=(\d{3})+(?!\d))/g,",")}${void 0!==t[1]?`.${t[1]}`:""}`},R=e=>e.replace(/\$\s?|(,*)/g,"")),"percent"===i&&(v=e=>"."===(e+="").charAt(e.length-1)||"-"===e||""===e?e:`${new Big(e).times(100).toNumber()}`,R=e=>"."===e.charAt(e.length-1)||"-"===e||""===e?e:(Number(e)/100).toString()),React__default.createElement(InputNumber,{ref:b,size:m,value:y,min:d.min,max:d.max,precision:n,prefix:d.prefix,suffix:null!==(r=d.suffix)&&void 0!==r?r:"percent"===i?"%":void 0,placeholder:d.placeholder||t("qm.table.editable.inputPlaceholder"),maxLength:d.maxLength,allowClear:d.allowClear,readOnly:d.readOnly,disabled:d.disabled,formatter:v,parser:R,onChange:t=>{setCellValue(e,l,t),g(u,t,s,c),S(),null==p||p({[V]:t}),x.current=!0},onFocus:()=>O(!0),onBlur:(t,a)=>{if(O(!1),!x.current)return;x.current=!1;let r=Z(t);"percent"===i&&"."===a.charAt(a.length-1)&&(r=Number(t)/100),setCellValue(e,l,r),X(e,s,c),null==f||f({[V]:r},e),null==_||_({[V]:t},e),z()},onEnter:(t,a)=>{let r=Z(t);"percent"===i&&"."===a.charAt(a.length-1)&&(r=Number(t)/100),null==h||h({[V]:r},e)}})},select:(e,a,r)=>{var l;const{dataIndex:n,dictItems:i=[]}=a,{type:o,extra:d={},rules:u=[],items:f,onChange:h,onEnter:_}=N;p.current;const y=f||i,v=getCellValue(e,n);let b=v;return React__default.createElement(Select,{mode:r?"multiple":void 0,size:m,dropdownClassName:"table-editable__popper",value:v||void 0,placeholder:d.placeholder||t("qm.table.editable.selectPlaceholder"),allowClear:d.allowClear,listHeight:d.listHeight,maxTagCount:d.collapseTags?"responsive":void 0,maxTagTextLength:d.maxTagTextLength,disabled:d.disabled,style:{width:"100%"},showSearch:null===(l=d.filterable)||void 0===l||l,filterOption:(e,t)=>{var a;const r=(null===(a=null==t?void 0:t.children)||void 0===a?void 0:a.toString())||"";return`${r}|${pinyin.parse(r).map((e=>2===e.type?e.target.toLowerCase().slice(0,1):e.target)).join("")}`.toLowerCase().indexOf(e.toLowerCase())>=0},onChange:t=>{setCellValue(e,n,t),g(u,t,s,c),X(e,s,c),S(),null==h||h({[V]:t},e),z()},onSelect:e=>{b=e},onInputKeyDown:t=>{13===t.keyCode&&nextTick((()=>null==_?void 0:_({[V]:b},e)))}},y.map((e=>React__default.createElement(Select.Option,{key:e.value,value:e.value,disabled:e.disabled},e.text))))},"select-multiple":(e,t)=>J.select(e,t,!0),date:(e,a,r)=>{var l;const{dataIndex:n}=a,{type:i,extra:o={},rules:d=[],onChange:u}=N,p=r?DATE_TIME_FORMAT:DATE_FORMAT,f=getCellValue(e,n);return React__default.createElement(DatePicker,{showTime:r,size:m,dropdownClassName:"table-editable__popper",value:null!==(l=getDate(f,p))&&void 0!==l?l:void 0,format:p,disabledDate:e=>(e=>{const{minDateTime:t,maxDateTime:a}=o;return t&&a?e.isBefore(t,"day")||e.isAfter(a,"day"):t?e.isBefore(t,"day"):!!a&&e.isAfter(a,"day")})(e),placeholder:t(r?"qm.table.editable.datetimePlaceholder":"qm.table.editable.datePlaceholder"),allowClear:o.allowClear,disabled:o.disabled,style:{width:"100%"},onChange:t=>{const a=formatDate(t,p);setCellValue(e,n,a),g(d,a,s,c),X(e,s,c),S(),null==u||u({[V]:a},e),z()}})},datetime:(e,t)=>J.date(e,t,!0),time:(e,a)=>{var r;const{dataIndex:l}=a,{type:n,extra:i={},rules:o=[],onChange:d}=N,u=getCellValue(e,l);return React__default.createElement(TimePicker,{size:m,dropdownClassName:"table-editable__popper",value:null!==(r=getDate(u,TIME_FORMAT))&&void 0!==r?r:void 0,format:TIME_FORMAT,placeholder:t("qm.table.editable.datetimePlaceholder"),allowClear:i.allowClear,disabled:i.disabled,style:{width:"100%"},onChange:t=>{const a=formatDate(t,TIME_FORMAT);setCellValue(e,l,a),g(o,a,s,c),X(e,s,c),S(),null==d||d({[V]:a},e),z()}})},checkbox:(e,t)=>{const{dataIndex:a}=t,{type:r,extra:l={},onChange:n}=N,{trueValue:i=DEFAULT_TRUE_VALUE,falseValue:o=DEFAULT_FALSE_VALUE,disabled:d}=l,u=getCellValue(e,a);return React__default.createElement(Checkbox,{checked:u===i,disabled:d,onChange:t=>{const r=t.target.checked?i:o;setCellValue(e,a,r),X(e,s,c),S(),null==n||n({[V]:r},e),z()}})},switch:(e,t)=>{const{dataIndex:a}=t,{type:r,extra:l={},onChange:n}=N,{trueValue:i=DEFAULT_TRUE_VALUE,falseValue:o=DEFAULT_FALSE_VALUE,disabled:d}=l,u=getCellValue(e,a);return React__default.createElement(Switch,{checked:u===i,disabled:d,onChange:t=>{const r=t?i:o;setCellValue(e,a,r),X(e,s,c),S(),null==n||n({[V]:r},e),z()}})},"search-helper":(e,a)=>{var r;const{dataIndex:l,precision:n}=a,{type:i,extra:o={},rules:d=[],helper:u={},onInput:p,onChange:_,onEnter:v}=N,b=getCellValue(e,l),E=u.fieldAliasMap;E||warn("Table","helper 需要配置 `fieldAliasMap` 选项");const C="function"==typeof E?E():E||{};Object.keys(C).includes(l)||warn("Table","fieldAliasMap 选项必须包含自身 `dataIndex` 值");const w=e=>{const{filterAliasMap:t}=u,a=""!==e?e:void 0,r="function"==typeof t?t():null!=t?t:[],n={[l]:a};return r.forEach((e=>n[e]=a)),n},P=e=>{T.current=w(e),A(!0)},$=(t,r)=>{const{beforeOpen:l}=u,n=(null!=l?l:trueNoop)({[V]:b},e,a);(null==n?void 0:n.then)?n.then((()=>{P(t),null==r||r()})).catch((()=>{})):!1!==n&&(P(t),null==r||r())},O=e=>{const t={};for(const a in C){const r=C[a];a!==l&&(t[a]=getSplitValue(e,r))}const a=C[l]?getSplitValue(e,C[l]):"";D(a,t);const{closed:r}=u;W(!1,(()=>Y(y.current))),Q(),null==r||r(e)},F=()=>{const{onlySelect:e=!0}=u;x.current&&D(e?"":b),x.current=!1,W(!1,(()=>Y(y.current)))},D=function(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"",a=arguments.length>1?arguments[1]:void 0;var r;if(isPlainObject(a)&&Object.keys(a).length){for(const t in a){const l=a[t],n=h.find((e=>e.dataIndex===t));if(n){setCellValue(e,t,l,n.precision);const a=null===(r=n.editRender)||void 0===r?void 0:r.call(n,e,n);a&&Array.isArray(a.rules)&&g(a.rules,l,s,t)}else setCellValue(e,t,l)}f.current.forceUpdate()}setCellValue(e,l,t,n),g(d,t,s,c),X(e,s,c),null==_||_({[V]:t},e),z(),T.current={},x.current=!1},k={visible:I,title:t("qm.searchHelper.text"),width:null!==(r=u.width)&&void 0!==r?r:"60%",loading:!1,stopMouseDownEvent:!0,bodyStyle:{paddingBottom:`${SizeHeight[m]+20}px`},onClose:()=>{F()}},H=Object.assign(Object.assign({},u),{size:m,initialValue:merge({},u.initialValue,T.current),onClose:e=>{e?O(e):F()}});return React__default.createElement(React__default.Fragment,null,React__default.createElement(Search,{ref:R,value:b,placeholder:o.placeholder||t("qm.table.editable.selectPlaceholder"),allowClear:o.allowClear,readOnly:o.readOnly,disabled:o.disabled,onBlur:e=>{var t;const{value:a}=e.target,{onlySelect:r=!0,table:n}=u;if(x.current&&!I)return a&&r&&(null===(t=null==n?void 0:n.fetch)||void 0===t?void 0:t.api)?(e=>{const{table:t,initialValue:a={}}=u,{beforeFetch:r=trueNoop}=t.fetch;return L(!0),new Promise(((l,n)=>__awaiter(void 0,void 0,void 0,(function*(){var i;const o=merge({},t.fetch.params,Object.assign(Object.assign({},a),w(e)),{currentPage:1,pageSize:500});try{if(r(o)){const e=yield t.fetch.api(o);if(200===e.code){const a=Array.isArray(e.data)?e.data:null!==(i=get(e.data,t.fetch.dataKey))&&void 0!==i?i:[];l(a)}else n()}else n()}catch(e){n()}L(!1)}))))})(a).then((e=>function(){let e=arguments.length>1?arguments[1]:void 0;const t=(arguments.length>0&&void 0!==arguments[0]?arguments[0]:[]).filter((t=>getSplitValue(t,C[l]).toString().includes(e)));if(1===t.length)return O(t[0]);$(e)}(e,a))).catch((()=>D(""))):void D(a)},onChange:t=>{const{value:a}=t.target;setCellValue(e,l,a),null==p||p({[V]:a}),x.current=!0,S()},onKeyUp:t=>{var a;if(13===t.keyCode){const r=null!==(a=t.target.value)&&void 0!==a?a:"";null==v||v({[V]:r},e)}},onDoubleClick:e=>{const{value:t}=e.target;$(t)},onSearch:(e,t)=>{"click"===(null==t?void 0:t.type)&&("INPUT"!==t.target.tagName?$(e):D(""))}}),React__default.createElement(QmModal,k,React__default.createElement(SearchHelper,H)))},"search-helper-multiple":(e,a)=>{var r;const{dataIndex:l}=a,{type:n,items:i=[],extra:o={},rules:d=[],helper:u={},onInput:p,onChange:f,onEnter:h}=N,_=getCellValue(e,l),v=u.fieldAliasMap;v||warn("Table","helper 需要配置 `fieldAliasMap` 选项");const b="function"==typeof v?v():v||{};Object.keys(b).includes("valueKey")&&Object.keys(b).includes("textKey")||warn("Table","fieldAliasMap 选项必须包含自身 `valueKey` 和 `textKey`");const R=t=>{const{beforeOpen:r}=u,l=(null!=r?r:trueNoop)({[V]:_},e,a);(null==l?void 0:l.then)?l.then((()=>{A(!0),null==t||t()})).catch((()=>{})):!1!==l&&(A(!0),null==t||t())},E=()=>{W(!1,(()=>Y(y.current)))},x=t=>{setCellValue(e,l,t),g(d,t,s,c),X(e,s,c),null==f||f({[V]:t},e,C.current),z()},T={visible:I,title:t("qm.searchHelper.text"),width:null!==(r=u.width)&&void 0!==r?r:"60%",loading:!1,stopMouseDownEvent:!0,bodyStyle:{paddingBottom:`${SizeHeight[m]+20}px`},onClose:()=>{E()}},w=Object.assign(Object.assign({},u),{size:m,multiple:!0,initialValue:merge({},u.initialValue),defaultSelectedKeys:_,onClose:(e,t)=>{e?((e,t)=>{const{textKey:a,valueKey:r}=b;G(uniqBy([...C.current.filter((e=>t.includes(e[r]))),...e],r));const l=C.current.map((e=>({text:e[a],value:e[r]}))),n=uniqBy([...l,...i],"value").filter((e=>t.includes(e.value)));k(n),x(n.map((e=>e.value)));const{closed:o}=u;W(!1,(()=>Y(y.current))),null==o||o(C.current)})(e,t):E()}});return React__default.createElement(React__default.Fragment,null,React__default.createElement("span",{className:"ant-input-group-wrapper ant-input-search search-helper-multiple"},React__default.createElement("span",{className:"ant-input-wrapper ant-input-group"},React__default.createElement(Select,{mode:"multiple",open:!1,value:_,placeholder:o.placeholder||t("qm.table.editable.selectPlaceholder"),allowClear:o.allowClear,maxTagCount:o.collapseTags?"responsive":void 0,maxTagTextLength:o.maxTagTextLength,disabled:o.disabled,style:{width:"100%"},onKeyUp:t=>{13===t.keyCode&&(null==h||h({[V]:_},e))},onDoubleClick:()=>{R()},onChange:e=>{const{valueKey:t}=b;G(C.current.filter((a=>e.includes(a[t])))),x(e),S()}},D.map((e=>React__default.createElement(Select.Option,{key:e.value,value:e.value},e.text)))),React__default.createElement("span",{className:"ant-input-group-addon"},React__default.createElement(Button,{className:"ant-input-search-button",disabled:o.disabled,icon:React__default.createElement(SearchOutlined,null),onClick:()=>{R()}})))),React__default.createElement(QmModal,T,React__default.createElement(SearchHelper,w)))},"tree-helper":(e,a)=>{var r,l;const{dataIndex:n,precision:i}=a,{type:o,extra:d={},rules:u=[],helper:p={},onChange:_,onEnter:v}=N,b=getCellValue(e,n),R=p.fieldAliasMap;R||warn("Table","helper 需要配置 `fieldAliasMap` 选项");const x="function"==typeof R?R():R||{};Object.keys(x).includes(n)||warn("Table","fieldAliasMap 选项必须包含自身 `dataIndex` 值");const C=t=>{const{beforeOpen:r}=p,l=(null!=r?r:trueNoop)({[V]:b},e,a);(null==l?void 0:l.then)?l.then((()=>{A(!0),null==t||t()})).catch((()=>{})):!1!==l&&(A(!0),null==t||t())},T=()=>{W(!1,(()=>Y(y.current)))},w=function(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"",a=arguments.length>1?arguments[1]:void 0;var r;if(isPlainObject(a)&&Object.keys(a).length){for(const t in a){const l=a[t],n=h.find((e=>e.dataIndex===t));if(n){setCellValue(e,t,l,n.precision);const a=null===(r=n.editRender)||void 0===r?void 0:r.call(n,e,n);a&&Array.isArray(a.rules)&&g(a.rules,l,s,t)}else setCellValue(e,t,l)}f.current.forceUpdate()}setCellValue(e,n,t,i),g(u,t,s,c),X(e,s,c),null==_||_({[V]:t},e),z()},P={visible:I,title:t("qm.searchHelper.text"),width:null!==(r=p.width)&&void 0!==r?r:"30%",loading:!1,stopMouseDownEvent:!0,bodyStyle:{paddingBottom:`${SizeHeight[m]+20}px`},onClose:()=>{T()}},$=Object.assign(Object.assign({},p),{defaultSelectedKeys:[b],size:m,onClose:e=>{e?(e=>{const t={};for(const a in x){const r=x[a];a!==n&&(t[a]=getSplitValue(e,r))}const a=x[n]?getSplitValue(e,x[n]):"";w(a,t);const{closed:r}=p;W(!1,(()=>Y(y.current))),Q(),null==r||r(e)})(e):T()}});return React__default.createElement(React__default.Fragment,null,React__default.createElement(Search,{ref:E,value:b,allowClear:null===(l=d.allowClear)||void 0===l||l,readOnly:d.readOnly,disabled:d.disabled,placeholder:d.placeholder||t("qm.table.editable.selectPlaceholder"),onChange:e=>{const{value:t}=e.target;t||S()},onKeyUp:t=>{var a;if(13===t.keyCode){const r=null!==(a=t.target.value)&&void 0!==a?a:"";null==v||v({[V]:r},e)}},onDoubleClick:()=>{C()},onSearch:(e,t)=>{"click"===(null==t?void 0:t.type)&&("INPUT"!==t.target.tagName?C():w(""))}}),React__default.createElement(QmModal,P,React__default.createElement(TreeHelper,$)))},"tree-helper-multiple":(e,a)=>{var r;const{dataIndex:l}=a,{type:n,extra:i={},items:o=[],rules:d=[],helper:u={},onInput:p,onChange:f,onEnter:h}=N,_=getCellValue(e,l),v=u.fieldAliasMap;v||warn("Table","helper 需要配置 `fieldAliasMap` 选项");const b="function"==typeof v?v():v||{};Object.keys(b).includes("valueKey")&&Object.keys(b).includes("textKey")||warn("Table","fieldAliasMap 选项必须包含自身 `valueKey` 和 `textKey`");const R=t=>{const{beforeOpen:r}=u,l=(null!=r?r:trueNoop)({[V]:_},e,a);(null==l?void 0:l.then)?l.then((()=>{A(!0),null==t||t()})).catch((()=>{})):!1!==l&&(A(!0),null==t||t())},E=()=>{W(!1,(()=>Y(y.current)))},x=t=>{setCellValue(e,l,t),g(d,t,s,c),X(e,s,c),null==f||f({[V]:t},e,C.current),z()},T={visible:I,title:t("qm.searchHelper.text"),width:null!==(r=u.width)&&void 0!==r?r:"60%",loading:!1,stopMouseDownEvent:!0,bodyStyle:{paddingBottom:`${SizeHeight[m]+20}px`},onClose:()=>{E()}},w=Object.assign(Object.assign({},u),{size:m,multiple:!0,initialValue:merge({},u.initialValue),defaultSelectedKeys:_,onClose:e=>{e?(e=>{const{textKey:t,valueKey:a}=b;G(e);const r=C.current.map((e=>({text:e[t],value:e[a]})));k(r),x(r.map((e=>e.value)));const{closed:l}=u;W(!1,(()=>Y(y.current))),null==l||l(C.current)})(e):E()}});return React__default.createElement(React__default.Fragment,null,React__default.createElement("span",{className:"ant-input-group-wrapper ant-input-search search-helper-multiple"},React__default.createElement("span",{className:"ant-input-wrapper ant-input-group"},React__default.createElement(Select,{mode:"multiple",open:!1,value:_,placeholder:i.placeholder||t("qm.table.editable.selectPlaceholder"),allowClear:i.allowClear,maxTagCount:i.collapseTags?"responsive":void 0,maxTagTextLength:i.maxTagTextLength,disabled:i.disabled,style:{width:"100%"},onKeyUp:t=>{13===t.keyCode&&(null==h||h({[V]:_},e))},onDoubleClick:()=>{R()},onChange:e=>{const{valueKey:t}=b;G(C.current.filter((a=>e.includes(a[t])))),x(e),S()}},D.map((e=>React__default.createElement(Select.Option,{key:e.value,value:e.value},e.text)))),React__default.createElement("span",{className:"ant-input-group-addon"},React__default.createElement(Button,{className:"ant-input-search-button",disabled:i.disabled,icon:React__default.createElement(SearchOutlined,null),onClick:()=>{R()}})))),React__default.createElement(QmModal,T,React__default.createElement(TreeHelper,w)))}};return React__default.createElement(React__default.Fragment,null,B?(()=>{const{type:e}=N,t=J[e];if(!t)return warn("Table","单元格编辑的类型 `type` 配置不正确"),null;const a=["cell--edit",{"is-error":!j}];return React__default.createElement("div",{ref:y,className:classNames(a)},t(o,i),!j&&React__default.createElement("div",{className:"cell-error"},q||U))})():(()=>{const{extra:e={}}=N;return e.disabledColor?React__default.createElement("span",{style:{color:e.disabledColor}},u):React__default.createElement(React__default.Fragment,null,u)})(),K&&React__default.createElement("i",{className:"cell--sign"}))},cloneElement=function(e){if(!React__default.isValidElement(e))return null;for(var t=arguments.length,a=new Array(t>1?t-1:0),r=1;r<t;r++)a[r-1]=arguments[r];return React__default.cloneElement(e,...a)},CopyToClipboard=e=>{const{text:a,options:r,showMessage:l=!0,onCopy:n}=e;return cloneElement(e.children,{onClick:i=>{const o=React__default.Children.only(e.children),s=copy(a,r);null==n||n(a,s),s&&l&&message.success(t("qm.clipboard.success")),o&&o.props&&"function"==typeof o.props.onClick&&o.props.onClick(i)}})};CopyToClipboard.displayName="CopyToClipboard";const TableBody=React__default.forwardRef(((e,a)=>{const{tableData:r,flattenColumns:l}=e,{getRowKey:n,tableProps:i,tableRef:o,editableColumns:s,leftFixedColumns:c,rightFixedColumns:d,firstDataIndex:u,sorter:p,layout:f,showFooter:m,scrollX:h,scrollY:g,selectionKeys:_,rowExpandedKeys:y,highlightKey:v,isPingLeft:b,isPingRight:R,isTableEmpty:E,isTreeTable:x,isGroupSubtotal:C,isWebPagination:T,isDragMergeCell:S,setElementStore:w,createTableFullData:P,setSelectionKeys:N,setHighlightKey:I,getStickyLeft:A,getStickyRight:$,scrollXToColumn:O,scrollYToRecord:F,rowInViewport:L,dataChange:D,setPingLeft:k,setPingRight:H,setFullScreen:V,setOverlay:M,findParentRowKeys:j,getAllChildRowKeys:q,triggerScrollYEvent:U,scrollBottomDebouncer:K}=React__default.useContext(TableContext),{height:B,minHeight:z,maxHeight:W,rowSelection:G,rowHighlight:Q,treeConfig:Y,expandable:X,stripe:Z,summation:J,rowStyle:ee,cellStyle:te,spanMethod:ae,ellipsis:re,showHeader:le,rowDraggable:ne,onRowClick:ie,onRowDblclick:oe,onRowContextmenu:se,onRowEnter:ce}=i,de=React__default.useRef(null),ue=React__default.useRef(null),pe=React__default.useRef({prevST:0,prevSL:0}),{dragStart:fe,renderDragPanel:me,closeDragPanel:he}=useMergeCell(),ge=useValueFormat(),_e=React__default.useMemo((()=>{const{headerHeight:e,viewportHeight:t,footerHeight:a,tableFullHeight:r,tableAutoHeight:l}=f,n={};return E&&Object.assign(n,{minHeight:`${EMPTY_MIN_HEIGHT}px`}),z&&Object.assign(n,{minHeight:parseHeight(z)-e-a+"px"}),W&&Object.assign(n,{maxHeight:parseHeight(W)-e-a+"px"}),B||r||l?Object.assign(Object.assign({},n),{maxHeight:"",minHeight:"",height:`${t}px`}):n}),[B,W,z,E,f]),ye=React__default.useMemo((()=>{const{tableBodyWidth:e,gutterWidth:t}=f;return e&&g?e-t:e}),[f,g]),ve=React__default.useMemo((()=>{const{scrollYStore:e}=o.current,{viewportHeight:t,gutterWidth:a}=f;return Math.floor((h?t-a:t)/e.rowHeight)}),[f,h]),[be,Re]=React__default.useState([]),Ee=useForceUpdate(),xe=useOutsideClick(de,[".table-editable__popper"]);React__default.useImperativeHandle(a,(()=>({renderCellTitle:De,setClickedValues:Pe,forceUpdate:Ee}))),useUpdateEffect((()=>{xe&&(Pe([]),S&&he())}),[xe]),useUpdateEffect((()=>{be.length&&TableManager.focus(o.current.uid)}),[be]),React__default.useEffect((()=>{Te(),Se()}),[]);const Ce=React__default.useCallback((e=>{var t,a,l,i,c,d,u;const{keyCode:p}=e;if(o.current.uid===(null===(t=TableManager.getFocusInstance())||void 0===t?void 0:t.id)&&(27===p&&(Pe([]),I(""),V(!1)),be.length&&(contains$1(document.activeElement,de.current)||"INPUT"!==(null===(a=document.activeElement)||void 0===a?void 0:a.tagName)))){if(13===p&&(prevent(e),"radio"===(null==G?void 0:G.type)||Q)){const t=null!==(i=null!==(l=_[0])&&void 0!==l?l:v)&&void 0!==i?i:null,a=null!==(c=r.find((e=>n(e,e.index)===t)))&&void 0!==c?c:null;a&&(null==ce||ce(a,e))}if(38===p||40===p){prevent(e);const{allTableData:t}=o.current,a=T?getAllTableData(r):t,l=a.length;let i=a.findIndex((e=>n(e,e.index)===be[0]));const s=38===p?(--i+l)%l:++i%l,c=a[s],f=n(c,c.index);"radio"!==(null==G?void 0:G.type)||(null===(d=G.disabled)||void 0===d?void 0:d.call(G,c))||N([f]),Q&&!(null===(u=Q.disabled)||void 0===u?void 0:u.call(Q,c))&&I(f),L(s)||(38===p&&F(f,s),40===p&&F(f,ve>s+1?0:s+1-ve)),Pe([f,be[1]])}if(9===p){if(prevent(e),!s.length)return Pe([]);const t=s.length;let a=s.findIndex((e=>e.dataIndex===be[1]));const r=++a%t,l=s[r].dataIndex;Pe([be[0],l]),O(l)}}}),[be,r,_,s,ve]);React__default.useEffect((()=>{const e=addEventListener(document,"keydown",Ce);return()=>e.remove()}),[Ce]);const Te=()=>{w("$tableBody",de.current),w("$tableYspace",ue.current)},Se=()=>{M("overlay"===getStyle(de.current.parentNode,"overflowY"))},we=(e,t,a)=>{var r,l;const{dataIndex:i}=a;if([config$1.expandableColumn,config$1.operationColumn].includes(i))return;const o=n(t,t.index);Pe([o,i]);const s=null===(r=a.editRender)||void 0===r?void 0:r.call(a,t,a),c=s&&!s.disabled,{type:d,selectByClickRow:u=!0,disabled:p=noop$1}=G||{};!d||p(t)||c||(u||i===config$1.selectionColumn)&&((e,t)=>{const{type:a,checkStrictly:r=!0,onSelect:l}=G||{};if("radio"===a&&N([e]),"checkbox"===a){const a=!_.includes(e),n=x&&!r?Ie(e,_,a):Ne(e,_,a);N(n),null==l||l(a,t,n)}})(o,t),[config$1.selectionColumn].includes(i)||(!Q||(null===(l=Q.disabled)||void 0===l?void 0:l.call(Q,t))||c||I(o),null==ie||ie(t,a,e))},Pe=e=>{isEqual$1(e,be)||Re(e)},Ne=(e,t,a)=>a?[...t,e]:t.filter((t=>t!==e)),Ie=(e,t,a)=>{var r;const{deriveRowKeys:l}=o.current,n=deepFindRowKey(l,e);let i=[];const s=q((null==n?void 0:n.children)||[]),c=(null===(r=deepGetRowkey(l,e))||void 0===r?void 0:r.slice(0,-1).reverse())||[];return i=a?[...new Set([...t,e,...s])]:t.filter((t=>![e,...s].includes(t))),c.forEach((e=>{var t;const a=deepFindRowKey(l,e),r=isArrayContain(i,(null===(t=null==a?void 0:a.children)||void 0===t?void 0:t.map((e=>e.rowKey)))||[]);i=r?[...i,e]:i.filter((t=>t!==e))})),i},Ae=e=>Array.isArray(e.children)&&e.children.length>0,$e=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;const a=[];return e.forEach((e=>{const r=e.index,i=n(e,e.index);if(a.push(Oe(e,r,i,t)),null==X?void 0:X.expandedRowRender){const{expandedRowClassName:t,rowExpandable:n=trueNoop}=X;y.includes(i)&&n(e)&&a.push(React__default.createElement("tr",{key:`expand_${i}`,className:"body--row-expanded"},React__default.createElement("td",{colSpan:l.length,className:"body--column",style:{paddingLeft:G?"100px":"50px"}},React__default.createElement("div",{className:classNames("cell",t)},X.expandedRowRender(e,r)))))}if(!(null==Y?void 0:Y.virtual)&&Ae(e)){const r="function"!=typeof(null==X?void 0:X.rowExpandable)||X.rowExpandable(e);y.includes(i)&&r&&a.push(...$e(e.children,t+1))}})),a},Oe=function(e,t,a){let r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:0;const n=["body--row",Object.assign({"body--row-striped":Z&&t%2!=0,"body--row-selected":_.includes(a),"body--row-current":v===a},C?je(e._group):null)];return React__default.createElement("tr",{key:a,className:classNames(n)},l.map(((l,n)=>Fe(l,n,e,t,a,r))))},Fe=(e,t,a,r,l,n)=>{var i;const{isIE:s,isOverlay:u}=o.current,{dataIndex:m,fixed:h,align:_,className:y=""}=e,{rowSpan:v,colSpan:b}=He(a,e,r,t),{gutterWidth:R}=f;if(!v||!b)return null;const E=null!==(i=e.ellipsis)&&void 0!==i?i:re,x=!s&&"left"===h,T=!s&&"right"===h,S=["body--column",{"col--ellipsis":E,"col--center":"center"===_,"col--right":"right"===_,"column--sort":!!p[m],"cell-fix-left":x,"cell-fix-right":T,"cell-fix-left-last":x&&c[c.length-1].dataIndex===m,"cell-fix-right-first":T&&d[0].dataIndex===m,[y]:!!y}],w=s?null:{left:x?`${A(m)}px`:"",right:T?`${$(m)+(u&&g?R:0)}px`:""},P=ee?"function"==typeof ee?ee(a,r):ee:null,N=te?"function"==typeof te?te(a,e,r,t):te:null,I=C?Me(a._group):null,O=De(e,a,r,t);return React__default.createElement("td",{key:m,title:E?O:void 0,rowSpan:v>1?v:void 0,colSpan:b>1?b:void 0,"data-index":t,className:classNames(S),style:Object.assign(Object.assign(Object.assign(Object.assign({},w),I),P),N),onClick:t=>we(t,a,e),onDoubleClick:t=>((e,t,a)=>{const{dataIndex:r}=a;[config$1.expandableColumn,config$1.selectionColumn,config$1.operationColumn].includes(r)||null==oe||oe(t,a,e)})(t,a,e),onContextMenu:t=>((e,t,a)=>{const{dataIndex:r}=a;[config$1.expandableColumn,config$1.selectionColumn,config$1.operationColumn].includes(r)||null==se||se(t,a,e)})(t,a,e)},React__default.createElement("div",{className:"cell"},Le(e,a,r,t,O,l,n)),T&&u&&g&&d[d.length-1].dataIndex===m?React__default.createElement("i",{className:"gutter-overlay",style:{width:R,right:-1*(R+1)}}):null)},Le=(e,a,r,l,n,i,o)=>{const{dataIndex:s,canCopy:c,editRender:d,render:p}=e,f=getCellValue(a,s);if(s===config$1.expandableColumn)return React__default.createElement(Expandable,{record:a,rowKey:i});if(s===config$1.selectionColumn)return React__default.createElement(Selection,{selectionKeys:_,column:e,record:a,rowKey:i});const m=ke(f,e,a);if(d)return React__default.createElement(CellEdit,{column:e,record:a,rowKey:i,columnKey:s,clicked:be,text:m});const h=p?p(f,a,e,r,l):m;return x&&s===u?[Ve((null==Y?void 0:Y.virtual)?a._level:o),React__default.createElement(Expandable,{key:"expand",record:a,rowKey:i,style:Ae(a)?{}:{visibility:"hidden"}}),h]:c?React__default.createElement("div",{className:"cell--copy"},React__default.createElement("span",{className:"text"},h),n&&React__default.createElement(CopyToClipboard,{text:n},React__default.createElement(CopyOutlined,{className:"icon",title:t("qm.table.config.copyText"),onClick:e=>e.stopPropagation()}))):h},De=(e,t,a,r)=>{const{dataIndex:l,render:n}=e;if([config$1.expandableColumn,config$1.selectionColumn,config$1.operationColumn].includes(l))return"";let i="";const o=getCellValue(t,l);if("function"==typeof n){const l=n(o,t,e,a,r);i=isValidElement(l)?getVNodeText(l).join(""):l}else i=ke(o,e,t).toString();return i},ke=(e,t,a)=>{var r,l,n;const{dictItems:i,precision:o,formatType:s,editRender:c}=t,d=i||(null===(r=null==c?void 0:c(a,t))||void 0===r?void 0:r.items)||[],u=d.find((t=>t.value==e));let p=null!==(n=null!==(l=null==u?void 0:u.text)&&void 0!==l?l:e)&&void 0!==n?n:"";if(Array.isArray(e)&&(p=e.map((e=>{var t;const a=d.find((t=>t.value==e));return null!==(t=null==a?void 0:a.text)&&void 0!==t?t:e})).join(",")),o>=0&&""!==p&&(p=Number(p).toFixed(o)),"string"==typeof p&&(p=p.replace(/[\r\n]/g,"")),s){const e=ge[`${camelize(s)}Format`];e?p=e(p):warn("Table","字段的格式化类型 `formatType` 配置不正确")}return p},He=(e,t,a,l)=>{let n=1,i=1;if("function"==typeof ae){const o=ae({row:e,column:t,rowIndex:a,columnIndex:l,tableData:r});if(Array.isArray(o)?(n=o[0],i=o[1]):isPlainObject(o)&&(n=o.rowSpan,i=o.colSpan),e===r[0]&&0===n){n=1;for(let e=1;e<r.length;e++){const{rowSpan:a}=He(r[e],t,r[e].index,l);if(a>0)break;n++}}}const{mergeCells:s}=o.current;if(s.length>0){const e=s.find((e=>e.row===a&&e.col===l));e&&(n=e.rowSpan,i=e.colSpan)}return{rowSpan:n,colSpan:i}},Ve=e=>e?React__default.createElement("span",{key:e,className:`cell--indent indent-level-${e}`,style:{paddingLeft:e*config$1.treeTable.textIndent+"px"}}):null,Me=e=>{var t;const{backgroundColor:a,color:r}=null!==(t=J.groupItems.find((t=>t.dataIndex===e)))&&void 0!==t?t:{};return{backgroundColor:a,color:r}},je=e=>{const t=J.groupItems.findIndex((t=>t.dataIndex===e));return{[`body--row-group_${t+1}`]:t>=0}},qe=getPrefixCls("table"),Ue=S?{onMouseDown:fe}:null;return React__default.createElement("div",{className:`${qe}--body-wrapper`,style:Object.assign({},_e),onScroll:e=>{const{elementStore:t,scrollYLoad:a}=o.current,{prevST:r,prevSL:l}=pe.current,n=g?f.gutterWidth:0,{scrollTop:i,scrollLeft:s}=e.target;if(s!==l){le&&(t.$header.scrollLeft=s),m&&(t.$footer.scrollLeft=s);const e=s>0,a=Math.ceil(s)+f.tableWidth<f.tableBodyWidth+n;b!==e&&k(e),R!==a&&H(a)}if(a&&i!==r&&U(i),g&&i!==r){const a=t.$tableYspace.offsetHeight||t.$tableBody.offsetHeight;Math.ceil(i)+f.viewportHeight-n>=a&&K(e)}pe.current.prevST=i,pe.current.prevSL=s}},React__default.createElement("div",{ref:ue,className:"body--y-space"}),React__default.createElement("div",{className:"body--x-space",style:{width:ye?`${ye}px`:""}}),React__default.createElement("table",_extends$1({ref:de,className:`${qe}--body`,tabIndex:-1,cellSpacing:"0",cellPadding:"0"},Ue,{style:{width:ye?`${ye}px`:""}}),React__default.createElement("colgroup",null,l.map((e=>{const{dataIndex:t,width:a,renderWidth:r}=e;return React__default.createElement("col",{key:t,style:{width:`${a||r}px`,minWidth:`${a||r}px`}})}))),ne?React__default.createElement(ReactSortable,{itemKey:e=>n(e,e.index),tag:"tbody",animation:200,list:r,setList:e=>{const t=e.map((e=>n(e,e.index))),a=r.map((e=>n(e,e.index)));if(isEqual$1(t,a))return;const l=[];o.current.tableFullData.forEach((t=>{r.includes(t)?l.push(e.shift()):l.push(t)})),P(l),D()}},r.map((e=>Oe(e,e.index,n(e,e.index))))):React__default.createElement("tbody",null,$e(r))),S&&me())}));TableBody.displayName="TableBody";const TableFooter=e=>{const{summationRows:a,flattenColumns:r}=e,{getRowKey:l,tableProps:n,tableRef:i,sorter:o,layout:s,scrollY:c,leftFixedColumns:d,rightFixedColumns:u,setElementStore:p,getStickyLeft:f,getStickyRight:m}=React__default.useContext(TableContext),{footRender:h}=n,g=React__default.useRef(null);React__default.useEffect((()=>{_()}),[]);const _=()=>{p("$footer",g.current)},y=(e,a,r)=>{const{isIE:l}=i.current,{gutterWidth:n}=s,{dataIndex:p,fixed:h,align:g,summation:_}=e,y=["footer--column","col--ellipsis",{"col--center":"center"===g,"col--right":"right"===g,"column--sort":!!o[p],"cell-fix-left":!l&&"left"===h,"cell-fix-right":!l&&"right"===h,"cell-fix-left-last":!l&&"left"===h&&d[d.length-1].dataIndex===p,"cell-fix-right-first":!l&&"right"===h&&u[0].dataIndex===p}],v=l?null:{left:"left"===h?`${f(p)}px`:"",right:"right"===h?`${m(p)+(c?n:0)}px`:""},b=(null==_?void 0:_.render)?_.render(i.current.tableFullData):getCellValue(a,`${p}_text`),R=0===r&&""===b?t("qm.table.config.summaryText"):b;return React__default.createElement("td",{key:p,title:R,className:classNames(y),style:Object.assign({},v)},React__default.createElement("div",{className:"cell"},R))},v=getPrefixCls("table"),{tableBodyWidth:b}=s;return React__default.createElement("div",{ref:g,className:`${v}--footer-wrapper`},h?h(r,i.current.tableFullData):React__default.createElement("table",{className:`${v}--footer`,cellSpacing:"0",cellPadding:"0",style:{width:b?`${b}px`:""}},(()=>{const{gutterWidth:e}=s;return React__default.createElement("colgroup",null,r.map((e=>{const{dataIndex:t,width:a,renderWidth:r}=e;return React__default.createElement("col",{key:t,style:{width:`${a||r}px`,minWidth:`${a||r}px`}})})),c&&React__default.createElement("col",{style:{width:`${e}px`,minWidth:`${e}px`}}))})(),React__default.createElement("tfoot",null,(()=>{const{isIE:e}=i.current,t=["gutter",{"cell-fix-right":!!u.length}],l=e?null:{right:u.length?0:""};return a.map(((e,a)=>React__default.createElement("tr",{key:a,className:"footer--row"},r.map(((t,a)=>y(t,e,a))),c&&React__default.createElement("td",{className:classNames(t),style:Object.assign({},l)}))))})())))};var EPageSize;!function(e){e.small="small",e.middle="default",e.large="default"}(EPageSize||(EPageSize={}));const TablePager=e=>{var t,a,r,l;const{current:n,pageSize:i,total:o,config:s,onChange:c}=e,{global:d}=React__default.useContext(ConfigContext),{tableProps:u,$size:p,setElementStore:f}=React__default.useContext(TableContext),{infoBarConfig:m}=u,h=React__default.useRef(null);React__default.useEffect((()=>{g()}),[]);const g=()=>{f("$pager",h.current)},_=(e,t)=>{c(e,t)},y=null!==(t=null==s?void 0:s.showSizeChanger)&&void 0!==t?t:config$1.pagination.showSizeChanger,v=null!==(a=null==s?void 0:s.showQuickJumper)&&void 0!==a?a:config$1.pagination.showQuickJumper,b=(null==s?void 0:s.pageSizeOptions)||(null===(l=null===(r=null==d?void 0:d.table)||void 0===r?void 0:r.pagination)||void 0===l?void 0:l.pageSizeOptions)||config$1.pagination.pageSizeOptions,R={[`${getPrefixCls("table")}-pager`]:!0};return React__default.createElement("div",{ref:h,className:classNames(R)},React__default.createElement("div",{className:"pager-alert"},"bottom"===(null==m?void 0:m.position)&&React__default.createElement(Alert,{total:o})),React__default.createElement(Pagination,{size:EPageSize[p],showSizeChanger:y,showQuickJumper:v,pageSizeOptions:b,current:n,pageSize:i,total:o,onChange:_,onShowSizeChange:_}))},TableEmpty=()=>{const{layout:e}=React__default.useContext(TableContext),t=React__default.useMemo((()=>{const{headerHeight:t,viewportHeight:a}=e;return{top:`${t}px`,height:`${a}px`}}),[e]),a=getPrefixCls("table");return React__default.createElement("div",{className:`${a}--empty`,style:t},React__default.createElement(QmEmpty,null))},Table=React__default.forwardRef(((e,t)=>{const{rowKey:a,columns:r,loading:l,stripe:n,resizable:i,customClass:o,paginationConfig:s,tablePrint:c,exportExcel:d,infoBarConfig:u,topSpaceAlign:p,showTableInfo:f,showFullScreen:m,showRefresh:h,showToolBox:g,showColumnDefine:_,showHeader:y}=e,{size:v}=React__default.useContext(ConfigContext),b=React__default.useMemo((()=>{var t,a;return null!==(a=null!==(t=e.size)&&void 0!==t?t:v)&&void 0!==a?a:""}),[e.size,v]),R=React__default.useRef(null),E=React__default.useRef(null),x=React__default.useRef(null),C=React__default.useRef(null),T=React__default.useRef(null),S=useForceUpdate(),w=React__default.useCallback(((e,t)=>{const r="function"==typeof a?a(e,t):e[a];return void 0===r?(warn("Table","Each record in table should have a unique `key` prop, or set `rowKey` to an unique primary key."),t):r}),[a]),{tableRef:P,tableFullData:N,setElementStore:I,setOriginColumns:A,setTableFullData:$,setTableOriginData:O,setAllTableData:F,setDeriveRowKeys:L,setFieldAuth:D,setMergeCells:k,setScrollYStore:H,setScrollYLoad:V,setResizeState:M,setHandleState:j,setSummaries:q,setSelectionRows:U,setShouldToTop:K,setRecordsMap:B,setOverlay:z,clearElementStore:W,clearRecordsMap:G}=useTableRef(e,{getRowKey:w,$size:b}),{tableData:Q,setTableData:Y,filters:X,setFilters:Z,sorter:J,setSorter:ee,superFilters:te,setSuperFilters:ae,pagination:re,setPagination:le,selectionKeys:ne,setSelectionKeys:ie,rowExpandedKeys:oe,setRowExpandedKeys:se,highlightKey:ce,setHighlightKey:de,layout:ue,setLayout:pe,permission:fe,setPermission:me,spinning:he,setSpinning:ge,scrollX:_e,setScrollX:ye,scrollY:ve,setScrollY:be,isPingLeft:Re,setPingLeft:Ee,isPingRight:xe,setPingRight:Ce,isFullScreen:Te,setFullScreen:Se}=useTableState(e),{isFetch:we,isWebPagination:Pe,isScrollPagination:Ne,showPagination:Ie,shouldUpdateHeight:Ae,tableColumns:$e,flattenColumns:Oe,editableColumns:Fe,summationColumns:Le,leftFixedColumns:De,rightFixedColumns:ke,firstDataIndex:He,showSummary:Ve,showFooter:Me,isHeadGroup:je,bordered:qe,isHeadSorter:Ue,isHeadFilter:Ke,isServiceSummation:Be,isSelectCollection:ze,isTableImport:We,isTableClipboard:Ge,isSuperSearch:Qe,isFastSearch:Ye,isGroupSummary:Xe,isGroupSubtotal:Ze,isDragMergeCell:Je,isTreeTable:et,isTableEmpty:tt,summationRows:at,fetchParams:rt}=useTableMemo(e,{getRowKey:w,tableRef:P,tableFullData:N,tableData:Q,sorter:J,filters:X,superFilters:te,pagination:re}),{createElementStore:lt,tableStyles:nt,getSpan:it,getStickyLeft:ot,getStickyRight:st,scrollXToColumn:ct,scrollYToRecord:dt,rowInViewport:ut,calcTableHeight:pt,resetTableScroll:ft,doLayout:mt}=useTableLayout(e,{getRowKey:w,tableRef:P,$size:b,tableColumns:$e,flattenColumns:Oe,leftFixedColumns:De,layout:ue,scrollY:ve,tableData:Q,showFooter:Me,showPagination:Ie,isWebPagination:Pe,isFullScreen:Te,setLayout:pe,setScrollX:ye,setScrollY:be,setElementStore:I,setScrollYStore:H,setShouldToTop:K}),{initialTable:ht,createTableFullData:gt,getTableData:_t,handleTableData:yt,createTableData:vt,createGroupData:bt,createSelectionKeys:Rt,createSelectionRows:Et,createRowExpandedKeys:xt,findParentRowKeys:Ct,getAllChildRowKeys:Tt,doFieldValidate:St,getTableLog:wt,dataChange:Pt,tableChange:Nt,toLastPage:It,toFirstPage:At,getPageCount:$t,pagerChangeHandle:Ot,triggerScrollYEvent:Ft,scrollBottomDebouncer:Lt,clearTableSorter:Dt,clearTableFilter:kt,clearSuperFilters:Ht,clearRowSelection:Vt,clearRowHighlight:Mt,clearTableLog:jt,destroy:qt}=useTableCore(e,{getRowKey:w,tableRef:P,tableElementRef:E,tableBodyRef:x,$size:b,tableColumns:$e,tableFullData:N,pagination:re,layout:ue,filters:X,sorter:J,superFilters:te,fetchParams:rt,selectionKeys:ne,rowExpandedKeys:oe,highlightKey:ce,summationColumns:Le,shouldUpdateHeight:Ae,isFetch:we,isTreeTable:et,isWebPagination:Pe,isScrollPagination:Ne,isServiceSummation:Be,isGroupSubtotal:Ze,doLayout:mt,setTableData:Y,setTableFullData:$,setTableOriginData:O,setAllTableData:F,setDeriveRowKeys:L,setPagination:le,setSpinning:ge,setSorter:ee,setFilters:Z,setSuperFilters:ae,setSelectionKeys:ie,setRowExpandedKeys:se,setHighlightKey:de,setSelectionRows:U,setScrollYLoad:V,setScrollYStore:H,setFieldAuth:D,setResizeState:M,setSummaries:q,setPermission:me,setRecordsMap:B,resetTableScroll:ft,clearElementStore:W,clearRecordsMap:G});useTableEffect(e,{tableRef:P,topElementRef:R,tableElementRef:E,tableBodyRef:x,resizableBarRef:T,$size:b,scrollX:_e,pagination:re,selectionKeys:ne,rowExpandedKeys:oe,highlightKey:ce,showSummary:Ve,summationRows:at,summationColumns:Le,isWebPagination:Pe,isScrollPagination:Ne,isTreeTable:et,toLastPage:It,toFirstPage:At,getPageCount:$t,setHandleState:j,scrollYToRecord:dt,setOriginColumns:A,setSelectionKeys:ie,setSelectionRows:U,setRowExpandedKeys:se,setHighlightKey:de,setResizeState:M,setMergeCells:k,setPingRight:Ce,calcTableHeight:pt,createSelectionKeys:Rt,createSelectionRows:Et,createRowExpandedKeys:xt,createElementStore:lt,triggerScrollYEvent:Ft,forceUpdate:S,initialTable:ht,destroy:qt});const Ut=React__default.useMemo((()=>({getRowKey:w,tableProps:e,tableRef:P,tableBodyRef:x,$size:b,flattenColumns:Oe,editableColumns:Fe,leftFixedColumns:De,rightFixedColumns:ke,firstDataIndex:He,sorter:J,filters:X,superFilters:te,layout:ue,bordered:qe,showFooter:Me,showSummary:Ve,summationRows:at,scrollX:_e,scrollY:ve,pagination:re,fetchParams:rt,selectionKeys:ne,rowExpandedKeys:oe,highlightKey:ce,isFetch:we,isPingLeft:Re,isPingRight:xe,isHeadSorter:Ue,isHeadFilter:Ke,isFullScreen:Te,isTableEmpty:tt,isHeadGroup:je,isTreeTable:et,isGroupSubtotal:Ze,isWebPagination:Pe,isDragMergeCell:Je,dataChange:Pt,tableChange:Nt,getTableData:_t,setElementStore:I,createTableFullData:gt,setSorter:ee,setFilters:Z,setSuperFilters:ae,setSelectionKeys:ie,setHighlightKey:de,setRowExpandedKeys:se,setSelectionRows:U,getSpan:it,getStickyLeft:ot,getStickyRight:st,scrollXToColumn:ct,scrollYToRecord:dt,rowInViewport:ut,setPagination:le,setPingLeft:Ee,setPingRight:Ce,setSpinning:ge,setFullScreen:Se,setShouldToTop:K,setOverlay:z,doFieldValidate:St,createTableData:vt,createGroupData:bt,findParentRowKeys:Ct,getAllChildRowKeys:Tt,triggerScrollYEvent:Ft,scrollBottomDebouncer:Lt,resetTableScroll:ft,clearTableSorter:Dt,clearTableFilter:kt,clearSuperFilters:Ht,clearRowSelection:Vt,clearRowHighlight:Mt})),[e,b,Oe,Fe,De,ke,He,J,X,te,ue,qe,Me,Ve,at,_e,ve,re,rt,ne,oe,ce,we,Re,xe,Ue,Ke,Te,tt,je,et,Ze,Pe,Je]);useImperativeMethod(t,{getRowKey:w,tableProps:e,tableRef:P,toolBoxRef:C,flattenColumns:Oe,editableColumns:Fe,pagination:re,fetchParams:rt,selectionKeys:ne,rowExpandedKeys:oe,highlightKey:ce,isFetch:we,dataChange:Pt,getTableData:_t,handleTableData:yt,createTableData:vt,calcTableHeight:pt,scrollXToColumn:ct,scrollYToRecord:dt,doFieldValidate:St,setHandleState:j,setSelectionKeys:ie,setRowExpandedKeys:se,setHighlightKey:de,setSelectionRows:U,forceUpdate:S,getTableLog:wt,clearRowSelection:Vt,clearRowHighlight:Mt,clearTableSorter:Dt,clearTableFilter:kt,clearSuperFilters:Ht,clearTableLog:jt}),React__default.useEffect((()=>{TableManager.register(P.current.uid,null!=t?t:{current:null})}),[]);const Kt=getPrefixCls("table"),Bt={[`${Kt}--wrapper`]:!0,[`${Kt}--lg`]:"large"===b,[`${Kt}--sm`]:"small"===b,[`${Kt}--maximize`]:Te,[o]:!!o},zt={[Kt]:!0,"is--border":qe,"is--striped":n,"is--fixed":De.length||ke.length,"is--sortable":Ue,"is--filterable":Ke,"is--head-group":je,"is--merge-cell":Je,"is--empty":tt,"show--head":y,"show--foot":Me,"ping--left":Re,"ping--right":xe,"scroll--x":_e,"scroll--y":ve};return React__default.createElement(TableContext.Provider,{value:Ut},React__default.createElement("div",{className:classNames(Bt)},f&&React__default.createElement("div",{ref:R,className:`${Kt}-top`},React__default.createElement("div",{className:`${Kt}-top__space`},"bottom"!==(null==u?void 0:u.position)&&React__default.createElement(Alert,{total:re.total}),React__default.createElement("div",{className:`${Kt}-top__space-slot`,style:{justifyContent:EAlign[p]}},e.children)),React__default.createElement("div",{className:`${Kt}-top__actions`},React__default.createElement(ToolBox,{ref:C,showFullScreen:m,showReload:h&&we,showPrint:fe.print&&!!c,showImport:fe.import&&We,showExport:fe.export&&!!d,showClipboard:Ge,showCollection:ze,showFastSearch:Ye,showSuperSearch:Qe,showGroupSummary:Xe,showToolBox:g,tableColumns:$e}),_&&React__default.createElement(ColumnFilter,{columns:r}))),React__default.createElement(QmSpin,{spinning:null!=l?l:he},React__default.createElement("div",{ref:E,className:classNames(zt),style:nt},React__default.createElement("div",{className:`${Kt}--main-wrapper`},y&&React__default.createElement(TableHeader,{tableColumns:$e,flattenColumns:Oe,sorter:J,filters:X}),React__default.createElement(TableBody,{ref:x,tableData:Q,flattenColumns:Oe}),Me&&React__default.createElement(TableFooter,{summationRows:at,flattenColumns:Oe})),qe&&React__default.createElement("div",{className:`${Kt}--border-line`}),tt&&React__default.createElement(TableEmpty,null),i&&React__default.createElement("div",{ref:T,className:`${Kt}--resizable-bar`}))),Ie&&React__default.createElement(TablePager,_extends$1({},re,{config:s,onChange:(e,t)=>Ot({current:e,pageSize:t})}))))}));Table.defaultProps=defaultProps,Table.displayName="Table";const SearchHelper=e=>{var a;const{uniqueKey:r,multiple:l,initialValue:n,selectionRows:i,defaultSelectedKeys:o=[],filters:s=[],table:c={},onClose:d}=e,{size:u}=React__default.useContext(ConfigContext),p=React__default.useMemo((()=>{var t,a;return null!==(a=null!==(t=e.size)&&void 0!==t?t:u)&&void 0!==a?a:""}),[e.size,u]),f=React__default.useRef(null),m=React__default.useRef(null),h=React__default.useRef(null),g=useResizeObserve(f),[_,y]=React__default.useState(c),[v,b]=React__default.useState(),[R,E]=React__default.useState(o),[x,C]=React__default.useState(!1),[T,S]=React__default.useState(300),[w,P]=React__default.useState(s),[N,I]=React__default.useState((e=>[{title:t("qm.searchHelper.orderIndex"),dataIndex:"pageIndex",width:80,render:e=>React__default.createElement("span",null,e+1)},...e||(c.columns||[])])()),[A,$]=React__default.useState(merge({},null===(a=c.fetch)||void 0===a?void 0:a.params,n)),[O,F]=React__default.useState([]),L=()=>{const e=f.current,t=e.querySelector(".form-wrap");S(e.offsetHeight-t.offsetHeight-2*SizeHeight[p]-30)},D=debounce(L,5);useUpdateEffect((()=>{D()}),[g.width]),useUpdateEffect((()=>{isEqual$1(s,w)||P(s)}),[s]),React__default.useEffect((()=>{k()}),[A]),React__default.useEffect((()=>{i&&h.current.SET_SELECTION_ROWS(i)}),[i]),React__default.useEffect((()=>{var e;n&&(null===(e=m.current)||void 0===e||e.SET_FIELDS_VALUE(n))}),[]);const k=()=>__awaiter(void 0,void 0,void 0,(function*(){var e;const{webPagination:t,fetch:a}=_;if(!t||!(null==a?void 0:a.api))return;const{api:r,dataKey:l,beforeFetch:n=trueNoop}=a;if(n(A)){C(!0);try{const t=yield r(A);if(200===t.code){const a=Array.isArray(t.data)?t.data:null!==(e=get(t.data,l))&&void 0!==e?e:[];E([]),yield sleep(0),F(a)}}catch(e){}C(!1)}})),H=e=>{l||(b(e),d(e))},V=e=>{$(Object.assign({},A,e))},M=getPrefixCls("search-helper"),j=_.webPagination?{dataSource:O,loading:x,webPagination:!0}:{fetch:Object.assign(Object.assign({},_.fetch),{params:A})};return React__default.createElement("div",{ref:f,className:`${M}--wrapper`},React__default.createElement("div",{className:"form-wrap"},w.length?React__default.createElement(QmForm,{ref:m,items:w,uniqueKey:r?`helper_${r}`:r,formType:"search",isAutoFocus:!1,fieldsChange:e=>P(e),onCollapse:()=>L(),onFinish:e=>V(e),onReset:()=>__awaiter(void 0,void 0,void 0,(function*(){const[e,t]=yield m.current.GET_FORM_DATA();e||V(t)}))}):null),React__default.createElement("div",null,React__default.createElement(Table,_extends$1({ref:h,height:T,columns:N,rowKey:_.rowKey||"pageIndex"},j,{rowSelection:{type:l?"checkbox":"radio",clearableAfterFetched:!l,selectFirstRowOnChange:!0,selectedRowKeys:R,onChange:(e,t)=>{E(e),b(l?t:t[0])}},columnsChange:e=>I(e),onRowDblclick:H,onRowEnter:H}))),React__default.createElement("div",{style:{position:"absolute",left:0,bottom:0,right:0,zIndex:9,height:`${SizeHeight[p]+20}px`,borderTop:"1px solid #d9d9d9",padding:"10px 15px",background:"#fff",textAlign:"right",boxSizing:"border-box"}},React__default.createElement(QmButton,{onClick:()=>d(null),style:{marginRight:8}},t("qm.dialog.cancel")),React__default.createElement(QmButton,{type:"primary",disabled:!v,onClick:()=>d(v,l?R:void 0)},t("qm.dialog.confirm"))))};SearchHelper.displayName="SearchHelper";const getAllParentKey=e=>{const t=[];return e.forEach((e=>{e.children&&t.push(...getAllParentKey(e.children)),e.children&&t.push(e.value)})),t},deepFind=(e,t)=>{let a=null;for(let r=0;r<e.length;r++){if(Array.isArray(e[r].children)&&(a=deepFind(e[r].children,t)),a)return a;if(t(e[r]))return e[r]}return a},treeFilter=(e,t)=>e.map((e=>Object.assign({},e))).filter((e=>(e.children=e.children&&treeFilter(e.children,t),t(e)||e.children&&e.children.length))),TreeTableHelper=e=>{var a;const{uniqueKey:r,multiple:l,initialValue:n,selectionRows:i,defaultSelectedKeys:o=[],filters:s=[],table:c={},tree:d={},onClose:u}=e,{size:p}=React__default.useContext(ConfigContext),f=React__default.useMemo((()=>{var t,a;return null!==(a=null!==(t=e.size)&&void 0!==t?t:p)&&void 0!==a?a:""}),[e.size,p]),m=React__default.useRef(null),h=React__default.useRef(null),g=React__default.useRef(null),_=useResizeObserve(m),[y,v]=React__default.useState(c),[b,R]=React__default.useState(),[E,x]=React__default.useState(o),[C,T]=React__default.useState(!1),[S,w]=React__default.useState(300),[P,N]=React__default.useState(300),[I,A]=React__default.useState(s),[$,O]=React__default.useState((e=>[{title:t("qm.searchHelper.orderIndex"),dataIndex:"pageIndex",width:80,render:e=>React__default.createElement("span",null,e+1)},...e||(c.columns||[])])()),[F,L]=React__default.useState(merge({},null===(a=c.fetch)||void 0===a?void 0:a.params,n)),[D,k]=React__default.useState([]),H=()=>{const e=m.current,t=e.querySelector(".form-wrap"),a=e.querySelector(".input-wrap");w(e.offsetHeight-a.offsetHeight-10),N(e.offsetHeight-t.offsetHeight-2*SizeHeight[f]-30)},V=debounce(H,5);useUpdateEffect((()=>{V()}),[_.width]),useUpdateEffect((()=>{isEqual$1(s,I)||A(s)}),[s]),React__default.useEffect((()=>{M()}),[F]),React__default.useEffect((()=>{i&&g.current.SET_SELECTION_ROWS(i)}),[i]),React__default.useEffect((()=>{var e;n&&(null===(e=h.current)||void 0===e||e.SET_FIELDS_VALUE(n)),X()}),[]);const M=()=>__awaiter(void 0,void 0,void 0,(function*(){var e;const{webPagination:t,fetch:a}=y;if(!t||!(null==a?void 0:a.api))return;const{api:r,dataKey:l,beforeFetch:n=trueNoop}=a;if(n(F)){T(!0);try{const t=yield r(F);if(200===t.code){const a=Array.isArray(t.data)?t.data:null!==(e=get(t.data,l))&&void 0!==e?e:[];x([]),yield sleep(0),k(a)}}catch(e){}T(!1)}})),j=e=>{l||(R(e),u(e))},q=e=>{L(Object.assign({},F,e))},[U,K]=React__default.useState([]),[B,z]=React__default.useState([]),[W,G]=React__default.useState(""),Q=React__default.useRef(U),Y=React__default.useRef([]);useUpdateEffect((()=>{z(getAllParentKey(U))}),[U]);const X=()=>__awaiter(void 0,void 0,void 0,(function*(){var e;if(!d.fetch)return;const{api:t,params:a,dataKey:r,valueKey:l="value",textKey:n="text"}=d.fetch;try{const i=yield t(a);if(200===i.code){const t=Array.isArray(i.data)?i.data:null!==(e=get(i.data,r))&&void 0!==e?e:[],a=deepMapList(t,l,n);K(a),Q.current=a,Y.current=t}}catch(e){}})),Z=e=>`${e}|${pinyin.parse(e).map((e=>2===e.type?e.target.toLowerCase().slice(0,1):e.target)).join("")}`,J=getPrefixCls("tree-table-helper"),ee=y.webPagination?{dataSource:D,loading:C,webPagination:!0}:{fetch:Object.assign(Object.assign({},y.fetch),{params:F})};return React__default.createElement("div",{ref:m,className:`${J}--wrapper`},React__default.createElement(QmSplit,{defaultValue:200,style:{height:"100%"}},React__default.createElement(QmSplit.Pane,{min:100,style:{overflowY:"auto"}},React__default.createElement(Input.Search,{className:"input-wrap",value:W,style:{marginBottom:8},placeholder:t("qm.form.inputPlaceholder"),allowClear:!0,onChange:e=>(e=>{const t=treeFilter(Q.current,(t=>{if(!e)return!0;const a=t.text||"";return-1!==Z(a).indexOf(e)}));G(e),K(t)})(e.target.value)}),React__default.createElement(Tree,{fieldNames:{title:"text",key:"value",children:"children"},height:S,defaultExpandAll:!0,expandedKeys:B,treeData:U,filterTreeNode:e=>{if(!W)return!1;const t=e.text||"";return-1!==Z(t).indexOf(W)},onExpand:e=>{z(e)},onSelect:e=>{const{valueKey:t="value"}=d.fetch;(e=>{if(!d.tableParamsMap)return warn("TreeTableHelper","需要配置 `tree.tableParamsMap` 选项");const t="function"==typeof d.tableParamsMap?d.tableParamsMap():d.tableParamsMap,a={};for(const r in t)a[r]=get(e,t[r]);q(a)})(deepFind(Y.current,(a=>get(a,t)===e[0]))||{})}})),React__default.createElement(QmSplit.Pane,{className:"split-pane"},React__default.createElement("div",{className:"form-wrap"},I.length?React__default.createElement(QmForm,{ref:h,items:I,uniqueKey:r?`helper_${r}`:r,formType:"search",isAutoFocus:!1,fieldsChange:e=>A(e),onCollapse:()=>H(),onFinish:e=>q(e),onReset:()=>__awaiter(void 0,void 0,void 0,(function*(){const[e,t]=yield h.current.GET_FORM_DATA();e||q(t)}))}):null),React__default.createElement("div",null,React__default.createElement(Table,_extends$1({ref:g,height:P,columns:$,rowKey:y.rowKey||"pageIndex"},ee,{rowSelection:{type:l?"checkbox":"radio",clearableAfterFetched:!l,selectFirstRowOnChange:!0,selectedRowKeys:E,onChange:(e,t)=>{x(e),R(l?t:t[0])}},columnsChange:e=>O(e),onRowDblclick:j,onRowEnter:j}))))),React__default.createElement("div",{style:{position:"absolute",left:0,bottom:0,right:0,zIndex:9,height:`${SizeHeight[f]+20}px`,borderTop:"1px solid #d9d9d9",padding:"10px 15px",background:"#fff",textAlign:"right",boxSizing:"border-box"}},React__default.createElement(QmButton,{onClick:()=>u(null),style:{marginRight:8}},t("qm.dialog.cancel")),React__default.createElement(QmButton,{type:"primary",disabled:!b,onClick:()=>u(b,l?E:void 0)},t("qm.dialog.confirm"))))};TreeTableHelper.displayName="TreeTableHelper";const TreeHelper=e=>{var a,r,l;const{multiple:n,tree:i={},defaultSelectedKeys:o,onClose:s}=e,{size:c}=React__default.useContext(ConfigContext),d=React__default.useMemo((()=>{var t,a;return null!==(a=null!==(t=e.size)&&void 0!==t?t:c)&&void 0!==a?a:""}),[e.size,c]),[u,p]=React__default.useState(),[f]=React__default.useState(null===(a=i.fetch)||void 0===a?void 0:a.params),m=getPrefixCls("tree-helper"),h=i.fetch?Object.assign(Object.assign({},omit(i.fetch,["params","valueKey","textKey"])),{params:f}):void 0;return React__default.createElement("div",{className:`${m}--wrapper`},React__default.createElement(SearchTree,{multiple:n,fetch:h,fieldsDefine:{valueKey:null===(r=i.fetch)||void 0===r?void 0:r.valueKey,textKey:null===(l=i.fetch)||void 0===l?void 0:l.textKey},asyncLoad:i.asyncLoad,checkStrictly:i.checkStrictly,checkStrategy:i.checkStrategy,defaultSelectedKeys:o,defaultExpandAll:i.defaultExpandAll,onSelectChange:e=>p(e),onCheckChange:e=>p(e)}),React__default.createElement("div",{style:{position:"absolute",left:0,bottom:0,right:0,zIndex:9,height:`${SizeHeight[d]+20}px`,borderTop:"1px solid #d9d9d9",padding:"10px 15px",background:"#fff",textAlign:"right",boxSizing:"border-box"}},React__default.createElement(QmButton,{onClick:()=>s(null),style:{marginRight:8}},t("qm.dialog.cancel")),React__default.createElement(QmButton,{type:"primary",disabled:!u,onClick:()=>s(u)},t("qm.dialog.confirm"))))};TreeHelper.displayName="TreeHelper";const START_SIGN="_startSign",END_SIGN="_endSign",RangeTableHelper=e=>{var a;const{uniqueKey:r,initialValue:l,filters:n=[],table:i={},onClose:o}=e,{size:s}=React__default.useContext(ConfigContext),c=React__default.useMemo((()=>{var t,a;return null!==(a=null!==(t=e.size)&&void 0!==t?t:s)&&void 0!==a?a:""}),[e.size,s]),d=React__default.useRef(null),u=React__default.useRef(null),p=React__default.useRef(null),f=useResizeObserve(d),[m,h]=React__default.useState(i),[g,_]=React__default.useState(!1),[y,v]=React__default.useState([]),[b,R]=React__default.useState(300),[E,x]=React__default.useState(n),[C,T]=React__default.useState((e=>[{title:t("qm.searchHelper.orderIndex"),dataIndex:"pageIndex",width:80,render:e=>React__default.createElement("span",null,e+1)},{title:t("qm.form.rangeSearchHelper")[0],dataIndex:START_SIGN,width:80,align:"right",render:(e,t)=>React__default.createElement("span",{className:"icon-sign"},e)},...e||(i.columns||[]),{title:t("qm.form.rangeSearchHelper")[1],dataIndex:END_SIGN,fixed:"right",width:80,render:(e,t)=>React__default.createElement("span",{className:"icon-sign"},e)}])()),[S,w]=React__default.useState(merge({},null===(a=i.fetch)||void 0===a?void 0:a.params,l)),[P,N]=React__default.useState([]),I=React__default.useMemo((()=>y.map((e=>null==e?void 0:e.pageIndex))),[y]),A=React__default.useMemo((()=>2===I.length&&I.every((e=>void 0!==e))),[I]),$=()=>{const e=d.current.parentNode.children[0],t=e.querySelector(".form-wrap");R(e.offsetHeight-t.offsetHeight-2*SizeHeight[c]-30)},O=debounce($,5);useUpdateEffect((()=>{O()}),[f.width]),useUpdateEffect((()=>{isEqual$1(n,E)||x(n)}),[n]),React__default.useEffect((()=>{F()}),[S]);const F=()=>__awaiter(void 0,void 0,void 0,(function*(){var e;const{webPagination:t,fetch:a}=m;if(!t||!(null==a?void 0:a.api))return;const{api:r,dataKey:l,beforeFetch:n=trueNoop}=a;if(n(S)){_(!0);try{const t=yield r(S);if(200===t.code){const a=Array.isArray(t.data)?t.data:null!==(e=get(t.data,l))&&void 0!==e?e:[];N(a)}}catch(e){}_(!1)}})),L=(e,t)=>{delete e[t]},D=()=>{y.forEach((e=>{e&&(L(e,START_SIGN),L(e,END_SIGN))})),v([])},k=e=>{D(),w(Object.assign({},S,e))},H=getPrefixCls("range-helper"),V=m.webPagination?{dataSource:P,loading:g,webPagination:!0}:{fetch:Object.assign(Object.assign({},m.fetch),{params:S})};return React__default.createElement("div",{ref:d,className:`${H}--wrapper`},React__default.createElement("div",{className:"form-wrap"},E.length?React__default.createElement(QmForm,{ref:u,items:E,initialValues:l,uniqueKey:r?`helper_${r}`:r,formType:"search",isAutoFocus:!1,fieldsChange:e=>x(e),onCollapse:()=>$(),onFinish:e=>k(e),onReset:()=>__awaiter(void 0,void 0,void 0,(function*(){const[e,t]=yield u.current.GET_FORM_DATA();e||k(t)}))}):null),React__default.createElement("div",null,React__default.createElement(Table,_extends$1({ref:p,height:b,columns:C,rowKey:m.rowKey||"pageIndex",rowStyle:e=>e.pageIndex>=I[0]&&e.pageIndex<=I[1]?{backgroundColor:"#f5f5f5"}:{}},V,{columnsChange:e=>T(e),onRowClick:(e,a)=>{const{dataIndex:r}=a;[START_SIGN,END_SIGN].includes(r)&&(r===START_SIGN&&(e[r]?(L(e,r),v([void 0,y[1]])):e.pageIndex>I[1]?message.warning(t("qm.searchHelper.rangeStartTip")):(y[0]&&L(y[0],r),e[r]="[",v([e,y[1]]))),r===END_SIGN&&(e[r]?(L(e,r),v([y[0],void 0])):e.pageIndex<I[0]?message.warning(t("qm.searchHelper.rangeEndTip")):(y[1]&&L(y[1],r),e[r]="]",v([y[0],e]))),p.current.FORCE_UPDATE())},onDataLoad:e=>{e.forEach((e=>{e.pageIndex===I[0]&&(e[START_SIGN]="["),e.pageIndex===I[1]&&(e[END_SIGN]="]")}))}}),React__default.createElement(QmButton,{type:"primary",icon:React__default.createElement(ClearOutlined,null),title:t("qm.table.alert.clear"),onClick:()=>D()}))),React__default.createElement("div",{style:{position:"absolute",left:0,bottom:0,right:0,zIndex:9,height:`${SizeHeight[c]+20}px`,borderTop:"1px solid #d9d9d9",padding:"10px 15px",background:"#fff",textAlign:"right",boxSizing:"border-box"}},React__default.createElement(QmButton,{onClick:()=>o(null),style:{marginRight:8}},t("qm.dialog.cancel")),React__default.createElement(QmButton,{type:"primary",disabled:!A,onClick:()=>o(y.map((e=>(e=>{const t={};for(const a in e)[START_SIGN,END_SIGN].includes(a)||(t[a]=e[a]);return t})(e))))},t("qm.dialog.confirm"))))};RangeTableHelper.displayName="RangeTableHelper";var config={previewWidth:1100,defaultDistance:.45,logoHeight:60};const PreviewContext=createContext(void 0);var CreatedOKLodop7766=null,CLodopIsLocal;function needCLodop(){try{var e=navigator.userAgent;if(e.match(/Windows\sPhone/i))return!0;if(e.match(/iPhone|iPod|iPad/i))return!0;if(e.match(/Android/i))return!0;if(e.match(/Edge\D?\d+/i))return!0;var t=e.match(/Trident\D?\d+/i),a=e.match(/MSIE\D?\d+/i),r=e.match(/OPR\D?\d+/i),l=e.match(/Firefox\D?\d+/i),n=e.match(/x64/i);if(!t&&!a&&n)return!0;if(l){if((l=l[0].match(/\d+/))[0]>=41||n)return!0}else if(r){if((r=r[0].match(/\d+/))[0]>=32)return!0}else if(!t&&!a){var i=e.match(/Chrome\D?\d+/i);if(i&&(i=i[0].match(/\d+/))[0]>=41)return!0}return!1}catch(e){return!0}}function getLodop(e,t){let a=arguments.length>2&&void 0!==arguments[2]?arguments[2]:[];var r,l="打印控件未安装!点击这里<a href='/static/cLodop/install_lodop32.exe' target='_self'>执行安装</a>,安装后请刷新页面或重新进入。",n="打印控件需要升级!点击这里<a href='/static/cLodop/install_lodop32.exe' target='_self'>执行升级</a>,升级后请重新进入。",i="打印控件未安装!点击这里<a href='/static/cLodop/install_lodop64.exe' target='_self'>执行安装</a>,安装后请刷新页面或重新进入。",o="打印控件需要升级!点击这里<a href='/static/cLodop/install_lodop64.exe' target='_self'>执行升级</a>,升级后请重新进入。",s="(注意:如曾安装过Lodop旧版附件npActiveXPLugin,请在【工具】->【附加组件】->【扩展】中先卸它)",c="(如果此前正常,仅因浏览器升级或重安装而出问题,需重新执行以上安装)",d="Web打印服务CLodop未安装启动,点击这里<a href='/static/cLodop/CLodop_Setup_for_Win32NT.exe' target='_self'>下载执行安装</a>,",u="(若此前已安装过,可<a href='CLodop.protocol:setup' target='_self'>点这里直接再次启动</a>),",p='成功后请 <a href="javascript:;" onclick="javascript:window.history.go(0)">刷新本页面</a> 。',f="Web打印服务CLodop需升级!点击这里<a href='/static/cLodop/CLodop_Setup_for_Win32NT.exe' target='_self'>执行升级</a>,升级后请刷新页面。";try{var m=navigator.userAgent,h=!!m.match(/MSIE/i)||!!m.match(/Trident/i);if(needCLodop()){try{r=getCLodop()}catch(e){}if(!r&&"complete"!==document.readyState)return void message.warning("打印组件还没有加载完毕,请稍等一下再操作");if(!r)return void notification.warning({message:"CLodop 信息",duration:null,description:d+(CLodopIsLocal?u:"")+p});CLODOP.CVERSION<"3.0.8.3"&&notification.warning({message:"CLodop 信息",description:f}),t&&t.parentNode&&t.parentNode.removeChild(t),e&&e.parentNode&&e.parentNode.removeChild(e)}else{var g=h&&!!m.match(/x64/i);if(e||t?r=h?e:t:CreatedOKLodop7766?r=CreatedOKLodop7766:((r=document.createElement("object")).setAttribute("width",0),r.setAttribute("height",0),r.setAttribute("style","position:absolute;left:0px;top:-100px;width:0px;height:0px;"),h?r.setAttribute("classid","clsid:2105C259-1E0C-4534-8141-A753534CB4CA"):r.setAttribute("type","application/x-print-lodop"),document.documentElement.appendChild(r),CreatedOKLodop7766=r),!r||!r.VERSION)return m.indexOf("Chrome")>=0&&notification.warning({message:"CLodop 信息",duration:null,description:c}),m.indexOf("Firefox")>=0&&notification.warning({message:"CLodop 信息",duration:null,description:s}),notification.warning({message:"CLodop 信息",duration:null,description:g?i:l}),r}return r.VERSION<"6.2.2.6"&&(needCLodop()||notification.warning({message:"CLodop 信息",description:g?o:n})),(null==a?void 0:a.length)>=2&&a.every((e=>Array.isArray(e)))&&(r.SET_LICENSES(...a[0]),r.SET_LICENSES(...a[1])),r}catch(e){message.error("getLodop 出错:"+e)}}needCLodop();const getDPI=()=>{var e;const t=[],{deviceXDPI:a,deviceYDPI:r}=window.screen;if(a&&r)t[0]=a,t[1]=r;else{let a=document.createElement("DIV");a.style.cssText="width: 1in; height: 1in; position: absolute; left: 0px; top: 0px; z-index: -1; visibility: hidden;",document.body.appendChild(a),t[0]=parseInt(a.offsetWidth.toString()),t[1]=parseInt(a.offsetHeight.toString()),null===(e=a.parentNode)||void 0===e||e.removeChild(a),a=null}return t},mmToPx=e=>{const t=e/25.4*getDPI()[0];return Math.ceil(t)},insertBefore=(e,t)=>{t.children[0]?t.insertBefore(e,t.children[0]):t.appendChild(e)},isPageBreak=e=>/^<tr[^>]+type="page-break"[^>]+><\/tr>$/.test(e),Container=React__default.forwardRef(((e,t)=>{const{templateRender:a,directPrint:r}=e,{global:l}=React__default.useContext(ConfigContext),{$$preview:n}=React__default.useContext(PreviewContext),{state:i,isWindowsPrinter:o,pageSize:s}=n,c=React__default.useRef(null),d=React__default.useRef({}),u=React__default.useRef([]),p=React__default.useRef([]),f=React__default.useRef([]),[m,h]=React__default.useState(!0);React__default.useImperativeHandle(t,(()=>({createPreviewDom:P,createExportHtml:I,createPrintHtml:N,SHOW_PREVIEW:A,DIRECT_PRINT:$}))),useUpdateEffect((()=>{w()}),[i.form.printerType,i.form.setting.direction,i.form.setting.distance,i.form.setting.fixedLogo]),React__default.useEffect((()=>{d.current.templateEl=c.current.querySelector(".origin-template").children[0],d.current.previewEl=c.current.querySelector(".workspace")}),[]);const g=React__default.useMemo((()=>{const{form:{setting:{direction:e}}}=i,t=o?10*config.defaultDistance+10*config.defaultDistance:0;return("vertical"===e?s[0]:s[1])-t}),[i,o,s]),_=React__default.useMemo((()=>{const{form:{setting:{direction:e}}}=i,t=o?10*config.defaultDistance+10*config.defaultDistance:0;return("vertical"===e?s[1]:s[0])-t}),[i,o,s]),y=React__default.useMemo((()=>{const{form:{setting:{distance:e}}}=i;return mmToPx(g-10*(e.left-config.defaultDistance)-10*(e.right-config.defaultDistance))}),[i,g]),v=React__default.useMemo((()=>{const{form:{setting:{distance:e}}}=i;return mmToPx(_-10*(e.top-config.defaultDistance)-10*(e.bottom-config.defaultDistance))}),[i,_]),b=i.form.scale,R=React__default.useMemo((()=>{const{form:{setting:{distance:e}}}=i;return{left:mmToPx(10*e.left),right:mmToPx(10*e.right),top:mmToPx(10*e.top),bottom:mmToPx(10*e.bottom)}}),[i]),E=React__default.useMemo((()=>{const{form:{printerType:e}}=i,{left:t,right:a,top:r,bottom:l}=R,n=y+t+a,o=config.previewWidth-n<=0?0:(config.previewWidth-n)/2,s=Math.abs((1-b)*n/2);let c=0;return b>1&&(c=s>o?-1*o:-1*s),b<1&&(c=n-2*s>config.previewWidth?0:o>0?s:(config.previewWidth-(n-2*s))/2),{width:`${y}px`,height:""+("stylus"===e?"auto":v+"px"),paddingLeft:`${t}px`,paddingRight:`${a}px`,paddingTop:`${r}px`,paddingBottom:`${l}px`,transform:`translateX(${c}px) scale(${b})`,opacity:m?0:1}}),[i,m,R,b,v,y]);u.current.some((e=>isPageBreak(e)));const x=()=>{var e,t,a,r;const n=null!==(t=null===(e=null==l?void 0:l.print)||void 0===e?void 0:e.leftLogo)&&void 0!==t?t:"",i=null!==(r=null===(a=null==l?void 0:l.print)||void 0===a?void 0:a.rightLogo)&&void 0!==r?r:"";return[`<tr style="height: ${config.logoHeight}px;">`,'<td colspan="8" align="left" style="vertical-align: top;">',n?`<img src="${n}" border="0" height="46" />`:"","</td>",'<td colspan="16" align="right" style="vertical-align: top;">',i?`<img src="${i}" border="0" height="46" />`:"","</td>","</tr>"].join("")},C=()=>{let e='<tr style="height: 0;">';for(let t=0;t<24;t++)e+=`<td width="${100/24}%" style="width: ${100/24}%; padding: 0;"></td>`;return e+="</tr>",e},T=()=>{let e=document.createElement("tr");e.setAttribute("type","template-cols"),e.style.height="0",e.innerHTML=C().replace(/<tr[^>]+>/,"").replace(/<\/tr>/,""),insertBefore(e,d.current.templateEl),e=null},S=()=>{const e=d.current.templateEl.children,t=[],a=[];for(let r=0;r<e.length;r++){if("template-cols"===e[r].getAttribute("type"))continue;const l=e[r].clientHeight;e[r].style.height=l+"px",a.push(l),t.push(e[r].outerHTML)}p.current=a,u.current=t},w=()=>{var e;if(!u.current.length)return;const{form:{setting:t,printerType:a}}=i;if(r)return f.current.push([C(),x(),...u.current]);const l=t.fixedLogo?v-config.logoHeight:v;let o=[];if(f.current=[],"stylus"===a)f.current.push([C(),...t.fixedLogo?[x()]:[],...u.current]);else{let e=0;for(let a=0,r=p.current.length;a<r;a++){const n=u.current[a],i=p.current[a];t.fixedLogo||0!==a||(e+=config.logoHeight),e+=i,e<=l?o.push(n):(f.current.push([C(),...t.fixedLogo?[x()]:[],...o]),o=[],e=0,a-=1),a===r-1&&o.length&&f.current.push([C(),...t.fixedLogo?[x()]:[],...o])}}t.fixedLogo||null===(e=f.current[0])||void 0===e||e.splice(1,0,x());for(let e=0,t=f.current.length;e<t&&e!==t-1;e++)f.current[e].push('<tr type="page-break" style="page-break-after: always;"></tr>');n.setState({currentPage:1,totalPage:f.current.length}),P()},P=()=>{var e,t;const{currentPage:a}=i;let r=`<table cellspacing="0" cellpadding="0" border="0" class="${d.current.templateEl.className}">`;r+=null!==(t=null===(e=f.current[a-1])||void 0===e?void 0:e.join(""))&&void 0!==t?t:"",r+="</table>",d.current.previewEl.innerHTML=r,d.current.previewEl.parentNode.scrollTop=0},N=e=>{let t=`<table cellspacing="0" cellpadding="0" border="0" class="${d.current.templateEl.className}">`;if(void 0!==e){t+=[...f.current[e-1]].join("")}else for(let e=0;e<f.current.length;e++)t+=f.current[e].join("");return t+="</table>",t},I=()=>{const e=[];for(let t=0;t<u.current.length;t++)e[t]=u.current[t].replace(/[\r\n]/g,"").replace(/\s+/g," ").replace(/(<td[^>]+>)\s+/,"$1").replace(/\s+(<\/td>)/,"$1");return"<table>"+x()+C()+e.join("")+"</table>"},A=()=>__awaiter(void 0,void 0,void 0,(function*(){var e;if("TABLE"!==(null===(e=d.current.templateEl)||void 0===e?void 0:e.tagName))return O();d.current.previewEl.innerHTML||(T(),yield sleep(0),S(),w(),h(!1))})),$=()=>__awaiter(void 0,void 0,void 0,(function*(){var e;if("TABLE"!==(null===(e=d.current.templateEl)||void 0===e?void 0:e.tagName))return O();T(),yield sleep(0),S(),w(),h(!1),n.doPrint(N()),yield sleep(0),n.doClose()})),O=()=>{warn("Print","[PrintTemplate] 打印模板组件的根元素必须是 `table` 节点")},F={[getPrefixCls("print-container")]:!0,"no-visible":r};return React__default.createElement("div",{ref:c,className:classNames(F)},React__default.createElement(QmSpin,{wrapperClassName:"spin",spinning:m,tip:"Loading..."},React__default.createElement("div",{className:"preview"},React__default.createElement("div",{className:"origin-template",style:{width:`${y}px`,marginLeft:`-${Math.floor(y/2)}px`}},null==a?void 0:a()),React__default.createElement("div",{className:"workspace",style:E}))))}));Container.displayName="Container";class Setting extends Component{constructor(){super(...arguments),this.formRef=React__default.createRef(),this.createFormList=()=>[{type:"DIVIDER",fieldName:"_1",label:t("qm.print.setPanel.printParameter")},{type:"SELECT",label:t("qm.print.setPanel.pagerType"),fieldName:"pageSize",options:{itemList:[{text:"A2",value:"420*594"},{text:"A3",value:"420*297"},{text:"A4",value:"210*297"},{text:"A5",value:"210*148"},{text:t("qm.print.setPanel.carbonPaper"),value:"241*280"}]}},{type:"RADIO",label:t("qm.print.setPanel.printDirection"),fieldName:"direction",options:{itemList:[{text:t("qm.print.setPanel.vertical"),value:"vertical"},{text:t("qm.print.setPanel.horizontal"),value:"horizontal"}]}},{type:"CHECKBOX",fieldName:"doubleSide",label:{type:"SELECT",fieldName:"doubleSideType",options:{itemList:[{text:t("qm.print.setPanel.autoDoublePrint"),value:"auto"},{text:t("qm.print.setPanel.manualDoublePrint"),value:"manual"}]},disabled:!this.props.setting.doubleSide},options:{trueValue:1,falseValue:0},onChange:e=>{const{formList:t}=this.state;t.find((e=>"doubleSide"===e.fieldName)).label.disabled=!e,this.setState({formList:t})}},{type:"CHECKBOX",label:t("qm.print.setPanel.fixedLogo"),fieldName:"fixedLogo",options:{trueValue:1,falseValue:0}},{type:"DIVIDER",fieldName:"_2",label:t("qm.print.setPanel.printMargin")},{type:"INPUT_NUMBER",label:t("qm.print.setPanel.leftMargin"),fieldName:"disleft",options:{min:config.defaultDistance,step:.05,precision:2},extra:{labelWidth:80},rules:[{required:!0,message:t("qm.print.setPanel.noEmpty")}]},{type:"INPUT_NUMBER",label:t("qm.print.setPanel.rightMargin"),fieldName:"disright",options:{min:config.defaultDistance,step:.05,precision:2},extra:{labelWidth:80},rules:[{required:!0,message:t("qm.print.setPanel.noEmpty")}]},{type:"INPUT_NUMBER",label:t("qm.print.setPanel.topMargin"),fieldName:"distop",options:{min:config.defaultDistance,step:.05,precision:2},extra:{labelWidth:80},rules:[{required:!0,message:t("qm.print.setPanel.noEmpty")}]},{type:"INPUT_NUMBER",label:t("qm.print.setPanel.bottomMargin"),fieldName:"disbottom",options:{min:config.defaultDistance,step:.05,precision:2},extra:{labelWidth:80},rules:[{required:!0,message:t("qm.print.setPanel.noEmpty")}]}],this.getInitialvalue=()=>{const{setting:e}=this.props,{distance:t}=e;return Object.assign({},{disleft:t.left,disright:t.right,distop:t.top,disbottom:t.bottom,pageSize:e.pageSize,direction:e.direction,doubleSide:e.doubleSide,doubleSideType:e.doubleSideType,fixedLogo:e.fixedLogo})},this.getInitialExtra=()=>({disleft:t("qm.print.setPanel.sizeUnit"),disright:t("qm.print.setPanel.sizeUnit"),distop:t("qm.print.setPanel.sizeUnit"),disbottom:t("qm.print.setPanel.sizeUnit")}),this.state={formList:this.createFormList()},this.confirmHandle=()=>__awaiter(this,void 0,void 0,(function*(){const[e,t]=yield this.formRef.current.GET_FORM_DATA();e||(this.props.onChange({distance:{left:t.disleft,right:t.disright,top:t.distop,bottom:t.disbottom},pageSize:t.pageSize,direction:t.direction,doubleSide:t.doubleSide,doubleSideType:t.doubleSideType,fixedLogo:t.fixedLogo}),this.cancelHandle())})),this.cancelHandle=()=>{this.props.onClose()}}render(){const{formList:e}=this.state;return React__default.createElement(React__default.Fragment,null,React__default.createElement(QmForm,{ref:this.formRef,items:e,initialValues:this.getInitialvalue(),initialExtras:this.getInitialExtra(),labelWidth:120,cols:2}),React__default.createElement("div",{style:{position:"absolute",left:0,bottom:0,right:0,zIndex:9,borderTop:"1px solid #d9d9d9",padding:"10px 15px",background:"#fff",textAlign:"right"}},React__default.createElement(QmButton,{onClick:()=>this.cancelHandle(),style:{marginRight:8}},t("qm.dialog.close")),React__default.createElement(QmButton,{type:"primary",onClick:()=>this.confirmHandle()},t("qm.dialog.confirm"))))}}Setting.contextType=ConfigContext;class Preview extends Component{constructor(){var e,a,r;super(...arguments),this.provide={$$preview:this},this.containRef=React__default.createRef(),this.state={visible:!1,form:{printerName:-1,printerType:(null===(e=this.props.defaultConfig)||void 0===e?void 0:e.printerType)||"laser",copies:(null===(a=this.props.defaultConfig)||void 0===a?void 0:a.copies)||1,scale:1,setting:{distance:{left:config.defaultDistance,right:config.defaultDistance,top:config.defaultDistance,bottom:config.defaultDistance},pageSize:"210*297",direction:(null===(r=this.props.defaultConfig)||void 0===r?void 0:r.direction)||"vertical",doubleSide:0,doubleSideType:"auto",fixedLogo:0}},printPage:void 0,currentPage:1,totalPage:0},this.pageChangeHandle=e=>{this.setState({currentPage:e},(()=>{this.containRef.current.createPreviewDom()}))},this.exportClickHandle=()=>{this.doExport(this.containRef.current.createExportHtml())},this.printClickHandle=()=>__awaiter(this,void 0,void 0,(function*(){if(this.doPrint(this.containRef.current.createPrintHtml(this.state.printPage)),this.props.uniqueKey)try{const e=Object.assign(Object.assign({},this.state.form),{printerName:this.printerItems.find((e=>e.value===this.state.form.printerName)).text});yield localforage.setItem(this.printerKey,e),yield this.savePrintConfig(this.printerKey,e)}catch(e){}})),this.doClose=()=>{var e,t;null===(t=(e=this.props).onClose)||void 0===t||t.call(e)},this.getPrintConfig=e=>__awaiter(this,void 0,void 0,(function*(){const t=this.context.global,a=null==t?void 0:t.getComponentConfigApi;if(a)try{const t=yield a({key:e});if(200===t.code)return t.data}catch(e){}})),this.savePrintConfig=(e,t)=>__awaiter(this,void 0,void 0,(function*(){const a=this.context.global,r=null==a?void 0:a.saveComponentConfigApi;if(r)try{yield r({[e]:t})}catch(e){}})),this.createStyle=()=>'\n <style type="text/css">\n table {\n width: 100%;\n border-spacing: 0;\n border-collapse: collapse;\n table-layout: fixed;\n }\n table tr td {\n padding: 2px;\n line-height: 1.2;\n word-wrap: break-word;\n }\n .fs12 {\n font-size: 12px;\n }\n .fs13 {\n font-size: 13px;\n }\n .fs14 {\n font-size: 14px;\n }\n .fw500 {\n font-weight: 500;\n }\n .fw700 {\n font-weight: 700;\n }\n .fl {\n float: left;\n }\n .fr {\n float: right;\n }\n .tc {\n text-align: center;\n }\n .tr {\n text-align: right;\n }\n .bor {\n border: 1px solid #000;\n }\n .bor-t {\n border-top: 1px solid #000;\n }\n .bor-b {\n border-bottom: 1px solid #000;\n }\n .bor-l {\n border-left: 1px solid #000;\n }\n .bor-r {\n border-right: 1px solid #000;\n }\n .no-bor {\n border: none !important;\n }\n </style>\n ',this.doPrint=e=>{const a=getLodop();if(!a)return;const{uniqueKey:r,closeAfterPrint:l}=this.props,{form:{setting:n,printerName:i,printerType:o,copies:s}}=this.state,{pageSize:c}=this,{defaultDistance:d}=config,{left:u,right:p,top:f,bottom:m}=n.distance;a.PRINT_INIT(null!=r?r:Math.random().toString().slice(2)),a.SET_PRINTER_INDEX(i),a.SET_PRINT_COPIES(s),n.doubleSide&&("auto"===n.doubleSideType?(a.SET_PRINT_MODE("PRINT_DUPLEX",2),a.SET_PRINT_MODE("PRINT_DEFAULTSOURCE",1)):a.SET_PRINT_MODE("DOUBLE_SIDED_PRINT",1)),a.SET_PRINT_MODE("AUTO_CLOSE_PREWINDOW",1),"laser"===o&&("vertical"===n.direction&&a.SET_PRINT_PAGESIZE(1),"horizontal"===n.direction&&(a.SET_PRINT_PAGESIZE(2),a.SET_SHOW_MODE("LANDSCAPE_DEFROTATED",1))),"stylus"===o&&a.SET_PRINT_PAGESIZE(3,10*c[0],100*m*2,""),a.ADD_PRINT_TABLE(10*(f-d)+"mm",10*(u-d)+"mm",`RightMargin: ${10*(p-d)}mm`,`BottomMargin: ${"stylus"!==o?10*(m-d):0}mm`,this.createStyle()+e),a.On_Return=(e,a)=>{a?l&&this.doClose():message.error(t("qm.print.printError"))},a.PRINT()},this.doExport=e=>{const a=getLodop();if(!a)return;const{uniqueKey:r,closeAfterPrint:l}=this.props,{form:{setting:n}}=this.state;a.PRINT_INIT(null!=r?r:Math.random().toString().slice(2)),a.On_Return=(e,a)=>{a?l&&this.doClose():message.error(t("qm.print.exportError"))},a.ADD_PRINT_TABLE(0,0,"RightMargin: 0","BottomMargin: 0",this.createStyle()+e),a.SET_SAVE_MODE("Orientation","vertical"===n.direction?1:2),a.SAVE_TO_FILE(`${dayjs().format("YYYYMMDDHHmmss")}.xlsx`)}}get printerTypeItems(){return[{text:t("qm.print.laserPrinter"),value:"laser"},{text:t("qm.print.stylusPrinter"),value:"stylus"}]}get printerItems(){const e=getLodop(),a=[{text:t("qm.print.defaultPrinter"),value:-1}];try{const t=e.GET_PRINTER_COUNT();for(let r=0;r<t;r++)a.push({text:e.GET_PRINTER_NAME(r),value:r})}catch(e){warn("Print","[ClientPrint]: 请安装 LODOP 打印插件")}return a}get isWindowsPrinter(){const{form:{printerName:e}}=this.state;return!/OneNote|Microsoft|Fax/.test(this.printerItems.find((t=>t.value===e)).text)}get pageSize(){return this.state.form.setting.pageSize.split("*").map((e=>Number(e)))}get printerKey(){return this.props.uniqueKey?`print_${this.props.uniqueKey}`:""}componentDidMount(){var e,t;return __awaiter(this,void 0,void 0,(function*(){if(this.props.uniqueKey)try{let a=yield localforage.getItem(this.printerKey);a||(a=yield this.getPrintConfig(this.printerKey),isPlainObject(a)&&(yield localforage.setItem(this.printerKey,a))),isPlainObject(a)&&Object.keys(a).length&&merge(this.state.form,Object.assign(Object.assign({},a),{printerName:null!==(t=null===(e=this.printerItems.find((e=>e.text===a.printerName)))||void 0===e?void 0:e.value)&&void 0!==t?t:-1}))}catch(e){}}))}render(){const{preview:e,templateRender:a}=this.props,{visible:r,form:l,currentPage:n,totalPage:i,printPage:o}=this.state,s=getPrefixCls("print-preview"),c={visible:r,title:t("qm.print.pageSetting"),width:"50%",loading:!1,containerStyle:{paddingBottom:"52px"},onClose:()=>{this.setState({visible:!1})}},d={[s]:!0};return e?React__default.createElement(React__default.Fragment,null,React__default.createElement("div",{className:classNames(d)},React__default.createElement("div",{className:"outer"},React__default.createElement("div",{className:"header"},React__default.createElement("span",null,t("qm.print.printer"),":",React__default.createElement(Select,{value:l.printerName,onChange:e=>{this.setState((t=>merge({},t,{form:{printerName:e}})))},style:{width:"120px"}},this.printerItems.map((e=>React__default.createElement(Select.Option,{key:e.value,value:e.value},e.text))))),React__default.createElement("span",null,t("qm.print.type"),":",React__default.createElement(Select,{value:l.printerType,onChange:e=>{this.setState((t=>merge({},t,{form:{printerType:e,setting:{pageSize:"stylus"===e?"241*280":"210*297"}}})))},style:{width:"120px"}},this.printerTypeItems.map((e=>React__default.createElement(Select.Option,{key:e.value,value:e.value},e.text))))),React__default.createElement("span",null,t("qm.print.copies"),":",React__default.createElement(InputNumber$1,{value:l.copies,min:1,precision:0,onChange:e=>{this.setState((t=>merge({},t,{form:{copies:null!=e?e:1}})))},style:{width:"50px"}})),React__default.createElement("span",null,t("qm.print.printPage.0"),React__default.createElement(InputNumber$1,{value:o,min:1,max:i,precision:0,onChange:e=>{this.setState({printPage:null!=e?e:void 0})},style:{width:"50px",marginLeft:"4px",marginRight:"4px"}}),t("qm.print.printPage.1")),React__default.createElement("span",null,React__default.createElement(Pagination,{size:"small",current:n,pageSize:1,total:i,onChange:this.pageChangeHandle})),React__default.createElement("span",null,React__default.createElement(QmButton,{type:"text",icon:React__default.createElement(SettingOutlined,null),className:"text-btn",onClick:()=>this.setState({visible:!0})},t("qm.print.setting"))),React__default.createElement("span",null,React__default.createElement(QmButton,{type:"text",icon:React__default.createElement(DownloadOutlined,null),className:"text-btn",onClick:()=>this.exportClickHandle()},t("qm.print.export"))),React__default.createElement("span",null,React__default.createElement(QmButton,{icon:React__default.createElement(PrinterOutlined,null),type:"primary",onClick:this.printClickHandle},t("qm.print.print")))),React__default.createElement("div",{className:"main"},React__default.createElement(PreviewContext.Provider,{value:this.provide},React__default.createElement(Container,{ref:this.containRef,templateRender:a,directPrint:!1}))),React__default.createElement("div",{className:"footer"},React__default.createElement("span",null,t("qm.print.scale"),":",React__default.createElement(Slider,{value:l.scale,step:.1,min:.5,max:1.5,onChange:e=>{this.setState((t=>merge({},t,{form:{scale:e}})))}}),React__default.createElement("em",{className:"scale-text"},`${Math.floor(100*l.scale)}%`)),React__default.createElement("span",null,t("qm.print.paper"),":",this.pageSize[0],"mm * ",this.pageSize[1],"mm"),React__default.createElement("span",null,t("qm.print.pageNumber"),":",t("qm.print.pagination",{currentPage:n,totalPage:i}))))),React__default.createElement(QmModal,c,React__default.createElement(Setting,{setting:l.setting,onChange:e=>{this.setState((t=>merge({},t,{form:{setting:e}})))},onClose:()=>{this.setState({visible:!1})}}))):React__default.createElement(PreviewContext.Provider,{value:this.provide},React__default.createElement(Container,{ref:this.containRef,templateRender:a,directPrint:!0}))}}Preview.contextType=ConfigContext;class QmPrint extends Component{constructor(){super(...arguments),this.previewRef=React__default.createRef(),this.state={visible:!1,loading:!1},this.clickHandle=()=>__awaiter(this,void 0,void 0,(function*(){var e,t;this.setState({loading:!0});try{const a=yield null===(t=(e=this.props).click)||void 0===t?void 0:t.call(e);if(this.setState({loading:!1}),"boolean"==typeof a&&!a)return;yield this.DO_PRINT()}catch(e){}this.setState({loading:!1})})),this.createRender=()=>{const{visible:e}=this.state,{templateRender:a,uniqueKey:r,defaultConfig:l,preview:n,closeAfterPrint:i}=this.props,o={visible:e,title:t("qm.print.preview"),width:`${config.previewWidth}px`,loading:!1,onClose:()=>{this.setState({visible:!1})}},s={ref:this.previewRef,templateRender:a,uniqueKey:r,defaultConfig:l,preview:n,closeAfterPrint:i,onClose:()=>{this.setState({visible:!1})}};return n?React__default.createElement(QmModal,o,React__default.createElement(Preview,s)):e?React__default.createElement(Preview,s):null},this.DO_PRINT=()=>__awaiter(this,void 0,void 0,(function*(){const{preview:e}=this.props;yield sleep(0),this.setState({visible:!0}),yield sleep(e?500:0);const t=this.previewRef.current.containRef.current;e?t.SHOW_PREVIEW():t.DIRECT_PRINT()}))}render(){const{loading:e}=this.state,{size:t,icon:a,type:r,disabled:l,shape:n}=this.props,i={size:t||this.context.size||"",type:r,shape:n,icon:a,loading:e,disabled:l,click:this.clickHandle};return React__default.createElement(React__default.Fragment,null,this.props.children&&React__default.createElement(QmButton,i,this.props.children),this.createRender())}}QmPrint.propTypes={size:(e,t,a)=>{if(!isValidComponentSize(e[t]||""))return throwError("Anchor","Invalid prop `"+t+"` supplied to `"+a+"`. Validation failed.")},templateRender:PropTypes__default.elementType},QmPrint.defaultProps={preview:!0,type:"primary",icon:React__default.createElement(PrinterOutlined,null)},QmPrint.contextType=ConfigContext;var name="@jiaozhiye/qm-design-react",version="1.5.9",description="A Component Library for React",keywords=["React","components","typescript"],author="jiaozhiye",license="MIT",scripts={dev:"cross-env NODE_ENV=development BABEL_ENV=web webpack serve --progress --config build/webpack.src.conf.js","build:lib":"yarn clean:lib && yarn build:umd && yarn build:esm && yarn build:type && yarn build:locale && yarn build:theme","build:umd":"cross-env NODE_ENV=production BABEL_ENV=lib webpack --config ./build/webpack.build.conf.js","build:esm":"cross-env BABEL_ENV=lib rollup --config ./build/build-esm.rollup.js","build:type":"gulp build --gulpfile ./build/build-type.gulp.js && cp-cli lib/packages lib && rimraf lib/packages","build:locale":"cross-env BABEL_ENV=lib babel packages/locale --extensions .ts --out-dir lib/locale","build:theme":"gulp build --gulpfile ./build/build-style.gulp.js","clean:lib":"rimraf lib",lint:"eslint ./packages --ext .js,.ts,.jsx,.tsx","lint-fix":"eslint --fix ./packages --ext .js,.ts,.jsx,.tsx",format:'prettier --write "./packages/**/*.{js,ts,jsx,tsx}"',"website-dev":"cross-env NODE_ENV=development BABEL_ENV=web webpack serve --progress --config ./website/webpack.config.js","website-build":"rimraf website-dist && cross-env NODE_ENV=production BABEL_ENV=web webpack --config ./website/webpack.config.js"},husky={hooks:{"pre-commit":"lint-staged"}},publishConfig={registry:"https://registry.npmjs.org/"},files=["lib"],main="lib/index.js",module="lib/index.esm.js",unpkg="lib/index.full.js",typings="lib/index.d.ts",style="lib/style/index.css",peerDependencies={react:">=16.14.0"},dependencies={"add-dom-event-listener":"^1.1.0",antd:"4.22.8",axios:"^0.27.2","big.js":"^6.2.1","china-area-data":"^5.0.1",classnames:"^2.3.2","copy-to-clipboard":"^3.3.2",cropperjs:"^1.5.12",dayjs:"1.x",exceljs:"^4.3.0",localforage:"^1.10.0","lodash-es":"^4.17.21","memoize-one":"^6.0.0","omit.js":"^2.0.2","prop-types":"^15.8.0","react-countup":"^6.4.0","react-draggable":"^4.4.5","react-sortablejs":"^6.1.4","resize-observer-polyfill":"^1.5.1","scroll-into-view-if-needed":"^2.2.28",sortablejs:"^1.15.0"},devDependencies={"@babel/cli":"^7.18.6","@babel/core":"^7.18.6","@babel/plugin-proposal-class-properties":"^7.18.6","@babel/plugin-proposal-decorators":"^7.18.6","@babel/plugin-syntax-dynamic-import":"^7.8.3","@babel/plugin-transform-runtime":"^7.18.6","@babel/preset-env":"^7.18.6","@babel/preset-react":"^7.18.6","@babel/preset-typescript":"^7.18.6","@rollup/plugin-babel":"^5.3.0","@rollup/plugin-commonjs":"^22.0.2","@rollup/plugin-json":"^4.1.0","@rollup/plugin-node-resolve":"^14.1.0","@rollup/plugin-replace":"^4.0.0","@rollup/plugin-typescript":"^8.5.0","@types/lodash-es":"^4.17.6","@types/react":"^17.0.46","@types/react-dom":"^17.0.16","@typescript-eslint/eslint-plugin":"^5.30.0","@typescript-eslint/parser":"^5.30.0",autoprefixer:"^10.4.10","babel-loader":"^9.1.0","core-js":"^3.26.0","cp-cli":"^2.0.0","cross-env":"^7.0.3","css-loader":"^5.2.7",eslint:"^8.24.0","eslint-plugin-prettier":"^4.2.0","eslint-plugin-react":"^7.30.0","eslint-plugin-react-hooks":"^4.6.0","eslint-webpack-plugin":"^3.2.0",gulp:"^4.0.2","gulp-autoprefixer":"^8.0.0","gulp-clean-css":"^4.3.0","gulp-ignore":"^3.0.0","gulp-less":"^5.0.0","gulp-rename":"^2.0.0","gulp-typescript":"^6.0.0-alpha.1","html-webpack-plugin":"^5.5.0",husky:"^4.3.8",less:"^4.1.2","less-loader":"^11.0.0","lint-staged":"^10.5.4",mockjs:"^1.1.0",prettier:"^2.7.0",react:"17.0.2","react-dom":"17.0.2",rimraf:"^3.0.2",rollup:"^2.79.0","rollup-plugin-terser":"^7.0.2","style-loader":"^3.3.0","ts-loader":"^9.3.0",typescript:"^4.7.4",webpack:"^5.75.0","webpack-cli":"^5.0.0","webpack-dev-server":"^4.11.0","webpack-node-externals":"^3.0.0"},engines={node:">= 14"},packageInfo={name:name,version:version,description:description,keywords:keywords,author:author,license:license,scripts:scripts,husky:husky,"lint-staged":{"packages/**/*.{js,ts,jsx,tsx,vue}":["npm run lint-fix","git add"],"packages/**/*.{less}":"prettier --write"},publishConfig:publishConfig,files:files,main:main,module:module,unpkg:unpkg,typings:typings,style:style,peerDependencies:peerDependencies,dependencies:dependencies,devDependencies:devDependencies,engines:engines},index=packageInfo.version;export{Calendar,DatePicker,QmAnchor,QmButton,Collapse as QmCollapse,QmConfigProvider,CopyToClipboard as QmCopyToClipboard,QmCountup,QmCropper,QmDivider,QmDownload,QmDrawer,QmEmpty,QmForm,QmModal,QmPrint,RangeTableHelper as QmRangeTableHelper,SearchHelper as QmSearchHelper,SearchTree as QmSearchTree,QmSpace,QmSpin,QmSplit,Table as QmTable,QmTabs,QmTinymce,TreeHelper as QmTreeHelper,TreeTableHelper as QmTreeTableHelper,QmUploadFile,QmUploadImg,TimePicker,pinyin,index as version};